TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Windows 11 will happily execute a binary compiled 30 years ago

318 pointsby mikkohypponenalmost 2 years ago

46 comments

knallfroschalmost 2 years ago
See also<p><a href="https:&#x2F;&#x2F;www.joelonsoftware.com&#x2F;2004&#x2F;06&#x2F;13&#x2F;how-microsoft-lost-the-api-war&#x2F;" rel="nofollow noreferrer">https:&#x2F;&#x2F;www.joelonsoftware.com&#x2F;2004&#x2F;06&#x2F;13&#x2F;how-microsoft-lost...</a><p>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 Windows team were going through various popular applications, testing them to make sure they worked OK, but SimCity kept crashing. They reported this to the Windows developers, who disassembled SimCity, stepped through it in a debugger, found the bug, and added special code that checked if SimCity was running, and if it did, ran the memory allocator in a special mode in which you could still use memory after freeing it.
评论 #37178528 未加载
评论 #37184524 未加载
评论 #37182268 未加载
评论 #37178850 未加载
评论 #37184373 未加载
评论 #37177164 未加载
评论 #37184895 未加载
评论 #37185795 未加载
评论 #37177248 未加载
chrchang523almost 2 years ago
Raymond Chen has been providing an inside perspective on this for decades: <a href="https:&#x2F;&#x2F;devblogs.microsoft.com&#x2F;oldnewthing&#x2F;" rel="nofollow noreferrer">https:&#x2F;&#x2F;devblogs.microsoft.com&#x2F;oldnewthing&#x2F;</a>
TkTechalmost 2 years ago
A fun side-effect of the &quot;general&quot; stability of Windows APIs is that Win32&#x2F;DX has become a very stable and reliable &quot;universal&quot; API for Linux (and other OSes) via the massive amount of work put into Wine&#x2F;Proton. I keep seeing games drop their Linux-native releases in favor of just shipping for proton.
评论 #37177705 未加载
评论 #37184088 未加载
rkagereralmost 2 years ago
It&#x27;s not insane, it&#x27;s my expectation for a tool. My hammer still works perfectly well with nails I bought 30 years ago.<p>It&#x27;s impossible to build on shifting foundations that are constantly breaking backward compatibility. You eventually spend all your time maintaining instead of creating.<p>Then you have to go reinvent your wheel, and in my experience as a user your shiny new one isn&#x27;t necessarily better.<p>Most of the software I use is more than 10 years old. Some is still updated, some is not (or went cloud and left me happily behind).
评论 #37184193 未加载
评论 #37184607 未加载
评论 #37186086 未加载
CaliforniaKarlalmost 2 years ago
I used to believe this, but no longer.<p>Any Steam game that used the &quot;Games for Windows – Live&quot; service, and wasn&#x27;t updated since the service shut down in 2014, would fail to launch on Windows 10 &amp; later, because the DLLs for the service were removed. For a time, folks were able to download the DLL from third-party sites, but that doesn&#x27;t work now.
评论 #37186097 未加载
评论 #37207874 未加载
shortlivedalmost 2 years ago
Even more “insanity”:<p>z&#x2F;OS (aka OS360 aka MVS) supports programs going back to the 60s and I just talked with a DE at IBM who is still using a program compiled circa Apollo 11 mission.
评论 #37183638 未加载
评论 #37185035 未加载
kjellsbellsalmost 2 years ago
Its famously determined, but I feel that a DOS CLI app isnt much of a challenge since the DOS subsystem is essentially ossified. What would be the result if, say, you tried to run something DOS-y that was demanding or an early Win16 app? Say, Zortech C++ from 1986 with the Pharlap DOS extender or Minesweeper from windows 3.1. Would they work?
评论 #37176911 未加载
评论 #37177465 未加载
wly_cdgralmost 2 years ago
That shouldn&#x27;t be considered remotely impressive. It should be seen as routine and expected, and if it doesn&#x27;t work, that should be considered a hugely humiliating and unacceptable fail.<p>To be clear, I am not saying that it&#x27;s not impressive in the shitshow that is 2023. I am saying what norms we should work towards.
评论 #37185380 未加载
znpyalmost 2 years ago
Someone’s gonna come and say that linux has that too, and while technically true it’s quite hard in practice.<p>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 <i>need</i> a whole chroot with the reference linux distro (or other runtime in general) and I’m not so sure you could find archives of 30 years old distros.<p>And I’m assuming that the kernel abi hasn’t actually changed a single bit and that no other interfaces changed either (stuff like &#x2F;proc or &#x2F;sys - &#x2F;sys wasn’t even there 30 years ago i think).<p>And if you’re running an Xorg app, I wouldn’t bet my lunch on that level of protocol-level compatibility.
评论 #37181787 未加载
xhkkffbfalmost 2 years ago
I&#x27;ve always been sad that my old Mac software just won&#x27;t run. It&#x27;s one thing for Apple to move to new architectures. Maybe that was necessary. But when the emulators break after a few years, well, that&#x27;s the part that bugs me.<p>Microsoft&#x27;s devotion to its customers shouldn&#x27;t be so amazing-- it&#x27;s the way that every company should behave.
评论 #37176992 未加载
评论 #37179210 未加载
blibblealmost 2 years ago
yes it can run things that don&#x27;t use much of the API surface (just using libc? probably fine)<p>however try running a game from the Windows 95&#x2F;98 days and you&#x27;ve got a maybe 50&#x2F;50 chance of it working<p>e.g. they changed the return code from BitBlt from 95&#x2F;98 -&gt; XP, they used to return the number of scanlines but switched it to a boolean<p>same with the heap management functions, directory traversal functions, etc
评论 #37178552 未加载
评论 #37176998 未加载
评论 #37178546 未加载
ls612almost 2 years ago
I wish there was a backwards compatibility option to give applications a “virtual display” which runs in a window, for old programs which only know how to run fullscreen at 1024x768.
评论 #37177912 未加载
评论 #37176975 未加载
评论 #37184204 未加载
评论 #37177136 未加载
评论 #37177168 未加载
评论 #37176931 未加载
kevinsyncalmost 2 years ago
FWIW, Beavis and Butthead in Virtual Stupidity (1995) runs perfectly fine in Windows 10&#x2F;11 with compatibility mode enabled. No need to test anything else as that&#x27;s arguably the apex of software (and humanity&#x27;s collective output).<p><a href="https:&#x2F;&#x2F;www.myabandonware.com&#x2F;game&#x2F;mtv-s-beavis-and-butt-head-in-virtual-stupidity-a1c" rel="nofollow noreferrer">https:&#x2F;&#x2F;www.myabandonware.com&#x2F;game&#x2F;mtv-s-beavis-and-butt-hea...</a>
评论 #37184572 未加载
robomartinalmost 2 years ago
I have always believed this has been one of the primary reasons for which Windows won decisively against MacOS.<p>Apple has never had a problem throwing away their customers’ investment in their ecosystem. I was at a company with several hundred Macs when the transition away from PowerPC happened. It was just brutal. And costly. Not just hardware, software too.<p>And, what for? From a business perspective, you can do the same fundamental work woth both systems. The difference are: My investment is protected in one case and not the other. We have a bunch of Macs here. Only where absolutely necessary and for multi-platform testing.<p>As much as MS is maligned by purists, the truth of the matter is they have always protected their customers by having a remarkable degree if backwards compatibility, which isn’t easy to achieve and maintain.
esalmanalmost 2 years ago
My windows 11 upgrade experience was one of the smoothest ever. I was playing AOE, got a notification that my machine is eligible for upgrade, paused and saved the game, did the update and resumed.
pdpialmost 2 years ago
Microsoft&#x27;s commitment to backwards compatibility is definitely one of the strengths of the Windows platform. On the flipside, it&#x27;s also at the root at the insanity that is the forbidden word list in MS Teams channel names.<p><a href="https:&#x2F;&#x2F;learn.microsoft.com&#x2F;en-us&#x2F;microsoftteams&#x2F;limits-specifications-teams#channel-names" rel="nofollow noreferrer">https:&#x2F;&#x2F;learn.microsoft.com&#x2F;en-us&#x2F;microsoftteams&#x2F;limits-spec...</a>
评论 #37186041 未加载
评论 #37182823 未加载
评论 #37184533 未加载
no_timealmost 2 years ago
So much so that even only linux, the most stable API arguably is win32 through wine. Atleast for desktop related tasks.
评论 #37178117 未加载
withinrafaelalmost 2 years ago
Lots of Microsoft app compat success stories out there, but plenty of breakage too. One example: I had to create IndirectInput [1][2] to fix Myst on Windows. Microsoft refused (via private email thread with leadership) to take responsibility for what is clearly an appcompat bug and were borderline jerks to me about it too. Oh well.<p>[1] <a href="https:&#x2F;&#x2F;github.com&#x2F;riverar&#x2F;IndirectInput">https:&#x2F;&#x2F;github.com&#x2F;riverar&#x2F;IndirectInput</a><p>[2] <a href="https:&#x2F;&#x2F;support.gog.com&#x2F;hc&#x2F;en-us&#x2F;articles&#x2F;360019256854-Myst-IV-Revelation-launch-problems-on-Windows-10?product=gog" rel="nofollow noreferrer">https:&#x2F;&#x2F;support.gog.com&#x2F;hc&#x2F;en-us&#x2F;articles&#x2F;360019256854-Myst-...</a>
评论 #37184822 未加载
armchairhackeralmost 2 years ago
Does Linux have this backwards compatibility? What about macOS?<p>I know instruction sets changed from PowerPC to Intel to ARM, so probably not macOS at least. But this is a CLI and I doubt old system calls changed
评论 #37184222 未加载
评论 #37182772 未加载
kmoseralmost 2 years ago
I have a command line Windows binary compiled over 30 years ago (June 1996) that <i>won&#x27;t</i> run on Windows 10 (64 bit). Windows complains, &quot;ANAGRAMS.EXE is not compatible with the version of Windows you&#x27;re running. Check your computer&#x27;s system information and then contact the software publisher.&quot;<p>Is this issue specific to Windows 10, and would it work on Windows 11?
评论 #37187159 未加载
评论 #37183182 未加载
评论 #37183243 未加载
评论 #37183179 未加载
freitzkriesler2almost 2 years ago
I&#x27;m ashamed to admit I really like windows 11.<p>Telometry and other questionable things aside, I&#x27;ve loathed and detested every UI change that Microsoft has done since Windows 7.<p>I unequivocally believe that windows 7 was peak windows UX. Every subsequent version, I&#x27;ve limped by using classicshell and then openshell.<p>Windows 11 is the first windows release where I didn&#x27;t feel the need to install something to bring me back to the late 2000s.<p>My only pet peeve is not allowing me to create accounts that don&#x27;t tie into outlook. Yes I know there are tricks to bypass this but I shouldnt have to do that.
Pxtlalmost 2 years ago
Meanwhile my new Android Pixel phone will run literally none of the Android apks I bought 5 years ago on humble bundle because it&#x27;s 64-bit only and they&#x27;re all 32-bit.
Dweditalmost 2 years ago
That would have to be a Win32 Console App made for Windows NT 3.1?
account42almost 2 years ago
I fail to see why 30 years should be considered extraordinary when in the physical world we have standards that ensure compatibility for much much longer than that.<p>If anything, software has it easier: you can layer emulation layer on emulation layer and then only have to adapt the outer layer for whatever pointless changes you are making to the current system.
kabdibalmost 2 years ago
Ha, the version of ZIP that I use was built in 1996, and I was using a version of &#x27;ls&#x27; that I wrote for NT 3.1 -- maybe 1993 or so -- until a couple of years ago.<p>These programs don&#x27;t use DLLs, and frankly there&#x27;s little reason they for them to stop working.
paxysalmost 2 years ago
I&#x27;m going to go ahead and say operating systems that <i>don&#x27;t</i> work this way are the exception. Running a 30 year old binary isn&#x27;t all that big a deal. Pretty much every mainstream system does so every day in its day to day operation.
评论 #37178313 未加载
评论 #37178459 未加载
评论 #37178125 未加载
shrubblealmost 2 years ago
SunOS 4.x binaries, if statically compiled, run fine on modern day SPARC systems also...
petermcneeleyalmost 2 years ago
This is fun and related &quot;chain of fools 2017&quot; <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=PH1BKPSGcxQ">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=PH1BKPSGcxQ</a>
shartsalmost 2 years ago
Surely there&#x27;s some kind of legacy Windows containerization &#x2F; subsystem &#x2F; emulation technology that would automagically handle such things by now?
评论 #37184977 未加载
Zuiiialmost 2 years ago
This works for win32 apps too. It&#x27;s what gtk should have strived to be. New features should have never been prioritized over API stability. What a shame.
octodogalmost 2 years ago
I remember not being able to play Diablo 2 on my iMac running mac os X and I was so sad about it. I&#x27;ve used Windows ever since.
rco8786almost 2 years ago
I remember hearing that Windows 7 (XP?) had some code specifically to support the original SimCity game in it.
NullPrefixalmost 2 years ago
XP games don&#x27;t work on Win7. Doubt they fixed it for Win10 or whatever the current version is.
评论 #37177568 未加载
badrabbitalmost 2 years ago
But it is also this compatibility that makes it slower for certain programs.
mdwaltersalmost 2 years ago
Isn&#x27;t this the compatibility layer that&#x27;s built into Windows?
petabytesalmost 2 years ago
It&#x27;s sad that the windows kernel and API aren&#x27;t even that bad, but Microsoft insists on shipping as much bloatware and spyware as they can. Do I really have to use a debloater to have a usable OS?
brailsafealmost 2 years ago
I mean, Windows 10 comes baked-in with 30 y.o interfaces all over the damn place, this is hardly surprising. They&#x27;ve been poorly applying thin coats of paint for ages.
bartreadalmost 2 years ago
All the people on that Twitter thread getting butthurt about it and complaining that Windows&#x27; backwards compatibility is a bad thing... WTF koolaid have they been drinking?<p>I don&#x27;t often sing Microsoft&#x27;s praises but backwards compatibility is something they get absolutely right: something they&#x27;ve <i>always</i> got right. Everything doesn&#x27;t have to be changing and breaking all the time and, to me, it&#x27;s a mark of maturity when an organisation can maintain compatibility so as not to inconvenience - and introduce unbudgeted (and sometimes very high) costs to - users, integrators, and consumers. Top marks, Microsoft.
评论 #37183018 未加载
评论 #37178263 未加载
评论 #37184528 未加载
jmknialmost 2 years ago
What I find so frustrating is that Windows, under the hood, is so solid.<p>It&#x27;s just the UI with Bing&#x2F;Ads&#x2F;telemetrics&#x2F;etc integration is so crap, like they&#x27;ve ruined a solid OS with crappy surface level stuff.
评论 #37177915 未加载
评论 #37178048 未加载
评论 #37182895 未加载
评论 #37178363 未加载
评论 #37178304 未加载
评论 #37183839 未加载
评论 #37184526 未加载
baal80spamalmost 2 years ago
And that&#x27;s why Microsoft will dominate corporate PC market for the foreseeable future.
评论 #37177215 未加载
评论 #37177217 未加载
评论 #37178160 未加载
评论 #37176922 未加载
评论 #37184537 未加载
snickerbockersalmost 2 years ago
That&#x27;s cute and all, but it&#x27;s fucking gzip. It doesn&#x27;t have complex dependencies.<p>Pretty sure Linux could run a 30 year old gzip binary too. I&#x27;ve never needed to do that with gzip but I have definitely run binaries of a similar vintage without issue.<p>Windows backwards-compatibility fails miserably on non-trivial programs, you&#x27;re generally pretty lucky if you can get something from the XP-era or older to work out of the box.
评论 #37183347 未加载
评论 #37183975 未加载
评论 #37183020 未加载
评论 #37184544 未加载
mrwnmonmalmost 2 years ago
I clicked on it thinking something else :(
veavealmost 2 years ago
It&#x27;s not really insane, what&#x27;s insane is Apple refusing to run 32-bit executables.
davidcollantesalmost 2 years ago
Is there a link someone could share (other than the one to the post)?
38almost 2 years ago
Non crap link<p><a href="http:&#x2F;&#x2F;farside.link&#x2F;twitter.com&#x2F;mikko&#x2F;status&#x2F;1692503249595584526" rel="nofollow noreferrer">http:&#x2F;&#x2F;farside.link&#x2F;twitter.com&#x2F;mikko&#x2F;status&#x2F;169250324959558...</a>
评论 #37177619 未加载
40yearoldmanalmost 2 years ago
Is it? Maybe insane in a bad way.<p>Right click on windows desktop had what now 3 different menus that might show depending on what you want to do. Oh. And let’s not talk about how much of what you see just covers the stuff up from 1998. Still rendering the old stuff only to have a slightly larger menu render right on top of it.
评论 #37177283 未加载
评论 #37177337 未加载
评论 #37177273 未加载
评论 #37177372 未加载