Live data from Hacker News

Windows 11 will happily execute a binary compiled 30 years ago

twitter.com

151–160 of 424 posts

Re: Windows 11 will happily execute a binary compiled 30 years ago

#151
post #66

Earlier quoted context omitted.

That depends on if they are using 64 bit or not. The 16bit VDM was deprecated on that move from 32 to 64. Which is the majority of most installs these days. What is kind of neat is every windows application/dll is a valid DOS application. The first part of all of them is a valid MZ DOS 16 EXEcutable. Windows just treats it as a skippable header and reads the real header that is about 100 bytes in and then decides whi…

OTVDM will allow running 16-bit windows programs on modern 64-bit windows.

OTVDM is great, but it's just using Wine. Windows really ripped out the whole 16-bit compatibility layer, which is a little sad.

Re: Windows 11 will happily execute a binary compiled 30 years ago

#152
post #148
post #120

Someone’s gonna come and say that linux has that too, and while technically true it’s quite hard in practice. The kernel abi is stable, everything else is pure chaos, and this is mostly due to how applications are usually packaged in linux: your app could load (as long as it’s not in a.out format) but then would fail at loading most libraries. So effectively you need a whole chroot with the reference linux distro (or…

It works in Linux the same way it works on Windows: If you don't have the dynamic libraries and configuration you need, it won't work. Why this is a mark against Linux and not Windows is beyond me.

Eh, kinda. On linux you can only assume kernel abi compatibility whereas pn windoes you can assume the basic runtime (win32 or whatever) to be present and available.

Re: Windows 11 will happily execute a binary compiled 30 years ago

#153
post #99

Earlier quoted context omitted.

And unlike Linux, has a stable ABI.

Linux has a stable userland ABI OpenBSD doesn't even have that: if you don't reboot quickly after installing a major upgrade you're going to have a bad time whereas you can run ancient userland on more modern Linux kernels (as evidenced by the container ecosystem)

The Linux kernel has a stable userland ABI.

Other core components that makes up most Linux distros (e.g. libc, gtk, libc, curl, ssl etc) however do not.

Re: Windows 11 will happily execute a binary compiled 30 years ago

#154
I'm ashamed to admit I really like windows 11.

Telometry and other questionable things aside, I've loathed and detested every UI change that Microsoft has done since Windows 7.

I unequivocally believe that windows 7 was peak windows UX. Every subsequent version, I've limped by using classicshell and then openshell.

Windows 11 is the first windows release where I didn't feel the need to install something to bring me back to the late 2000s.

My only pet peeve is not allowing me to create accounts that don't tie into outlook. Yes I know there are tricks to bypass this but I shouldnt have to do that.

Re: Windows 11 will happily execute a binary compiled 30 years ago

#155
post #86

All the people on that Twitter thread getting butthurt about it and complaining that Windows' backwards compatibility is a bad thing... WTF koolaid have they been drinking? I don't often sing Microsoft's praises but backwards compatibility is something they get absolutely right: something they've always got right. Everything doesn't have to be changing and breaking all the time and, to me, it's a mark of maturity whe…

The Linux world would benefit strongly from having a much bigger commitment to backwards compatibility in foundational libraries. Obviously there is nobody who can force e.g. OpenSSL to keep supporting old versions or to provide them as wrappers over the latest version, or to force GTK to keep around working versions of libraries exposing all interfaces dating from GTK 1.0 onwards. But if we could have a project to d…

> The Linux world would benefit strongly from having a much bigger commitment to backwards compatibility in foundational libraries

No point when this problem has been solved with containers (docker, flatpak etc).

Re: Windows 11 will happily execute a binary compiled 30 years ago

#156

See also https://www.joelonsoftware.com/2004/06/13/how-microsoft-lost... one of the developers of the hit game SimCity, who told me that there was a critical bug in his application: it used memory right after freeing it, a major no-no that happened to work OK on DOS but would not work under Windows where memory that is freed is likely to be snatched up by another running application right away. The testers on the Win…

From where I'm sitting this looks like an excellent argument for breaking backwards compatibility. All those bullshit hacks are a maintenance and debugging burden for someone and a tax on the whole rest of the operating system -- and I'd argue that it really shows.

You're sitting on the point of view of a software developer.

Microsoft's point of view is that the underlying software doesn't matter. The user's software _has_ to run. The Application Compatibility Database (https://learn.microsoft.com/en-us/windows/win32/devnotes/app...) is, overall, a relatively small component, and all it does is apply some shims if your executable is in that list. Performance issues in Windows do not stem from anywhere near the kernel. The kernel team is absolutely top tier. The kernel itself is of much higher quality than what you'd find on Linux, or MacOS.

Now, the upper layers however...

Re: Windows 11 will happily execute a binary compiled 30 years ago

#157

Earlier quoted context omitted.

From where I'm sitting this looks like an excellent argument for breaking backwards compatibility. All those bullshit hacks are a maintenance and debugging burden for someone and a tax on the whole rest of the operating system -- and I'd argue that it really shows.

You're sitting on the point of view of a software developer. Microsoft's point of view is that the underlying software doesn't matter. The user's software _has_ to run. The Application Compatibility Database ( https://learn.microsoft.com/en-us/windows/win32/devnotes/app... ) is, overall, a relatively small component, and all it does is apply some shims if your executable is in that list. Performance issues in Windows…

> The user's software _has_ to run.

My concern is that a lot of security issues may have come from this. A clever attacker could grab recently freed memory from one of these programs and inject malicious code to enjoy whatever other weird privileges the original program has, because marketing said it can’t crash.

Re: Windows 11 will happily execute a binary compiled 30 years ago

#158

See also https://www.joelonsoftware.com/2004/06/13/how-microsoft-lost... one of the developers of the hit game SimCity, who told me that there was a critical bug in his application: it used memory right after freeing it, a major no-no that happened to work OK on DOS but would not work under Windows where memory that is freed is likely to be snatched up by another running application right away. The testers on the Win…

From where I'm sitting this looks like an excellent argument for breaking backwards compatibility. All those bullshit hacks are a maintenance and debugging burden for someone and a tax on the whole rest of the operating system -- and I'd argue that it really shows.

> All those bullshit hacks are a maintenance and debugging burden for someone

That’s why that someone is getting paid -it’s their job.

If you want software to power important things in society, like transport and energy, you need to have a certain level of responsibility for reliability.

As this post demonstrates, Right now we have immature children who are used to breaking things for the sake of a new fad, in charge of critical systems.

Re: Windows 11 will happily execute a binary compiled 30 years ago

#159
post #36

Earlier quoted context omitted.

Nice. OpenBSD does something similar, with the difference being that there are no exemptions for specific software—they expect developers to fix their broken programs.

Clearly missing the point. The OP mentions DOS, so this was the mid-90s. OpenBSD didn't exist (Theo hadn't burned all his bridges with NetBSD yet). There were NO updates. You bought software, games especially, in a shrink wrapped box at a brick and mortar store. Most people outside universities did not have internet access. If you were an extremely privileged few, you could download small patches from a BBS or online…

> There were NO updates

I distinctly remember patching DOOM from 1.1 through 1.2, 1.4, 1.666 to 1.9

Re: Windows 11 will happily execute a binary compiled 30 years ago

#160

Earlier quoted context omitted.

> They have been using similar toolset to break competitors applications Source(s) ?

This, for example. And they got caught. How many times they did not? https://www.theregister.com/1999/11/05/how_ms_played_the_inc...

Your evidence is an article from 24 years ago about behavior that happened 32 year ago? And it's not even about them breaking competitors applications, it's about them refusing to run on a competing OS (in a bit of a sleezy way).

Do you have more evidence of your claimed behavior?

I dislike MSFT, a lot, but that's a _very_ big claim and needs to be backed up with evidence.

Post reply on HN