Hacker News new | ask | show | jobs
by FirmwareBurner 944 days ago
>but even Windows XP (which handled a lot of the same basic Internet browsing tasks as I still use now!) is almost comically fast on modern hardware.

Why is it surprising that an old OS built for late 90's hardware runs "comically fast" on 2020's hardware?

Just look at XP system requirements:

  - Pentium 233-megahertz (MHz) processor or faster (300 MHz is recommended)
  - At least 64 megabytes (MB) of RAM (128 MB is recommended)
  - At least 1.5 gigabytes (GB) of available space on the hard disk.
How would anyone expect that not to be much faster on a modern quad+ core, 4GHz system with 8GB+ RAM?
4 comments

Basic desktop interaction is the same as 22 years ago, yet modern desktop environments are orders of magnitude slower at performing those same basic tasks.
Sure, but how is it surprising that an old OS built for late 90's hardware runs fast on 2020's hardware?

I'm failing to see the surprise. Isn't it a a given that old SW runs faster on modern HW when you factor in how far HW evolved since then.

What is striking is the fact that the interactions are the same between old and new shells/applications/syscalls/whatever, but modern software on modern hardware feels so much slower. The only reason for this is that modern software is doing a lot more stuff in the nooks and crannies of those interactions that it didn't used to do. Perhaps some of that stuff is useful, but some of it has to be code that is just less efficient or was just shoveled in because the CPU was faster and the RAM was more spacious.
You'd especially expect latency to have gone down. Instead, latency went up.
Latency of what? Starting the OS is definitely faster. Launching software is also orders of magnitude faster. HDD don't requires hours of defragmentation to avoid slowing down to a halt. I was only a teenager in the windows 98 era but I remember I was just always waiting for the computer. This is not something I have experienced in a long time now.
Latency of text entry, as one example.

In an application like Teams, the delay between striking a key on the keyboard and the corresponding glyph appearing on screen is comically bad - two orders of magnitude higher than performing the equivalent action on a computer from the early 1980s.

Surprise is modern OS runs slower in comparison without much perceptible improvements, inviting such a conclusion through rosy glasses that purported improvements since "then" must be nothing more than extreme amount of software bloat.
I think the big question everyone has in mind when they make comments about old OSes running fast on modern hardware is, "what is the juice that we are getting for the squeeze?"

It's not just that Win98 runs faster on modern hardware. It's that it does the same--or at least similar, as far as the user is concerned--tasks as Win11, but faster.

That leaves a gaping hole of "what was so important to add to the OS that it warrants slower interactions at every turn".

I opened the settings app on my work computer running Win10 the other day and it took a good 5 seconds before it showed up and painted. On Win-anything-less-than-or-equal-to-7, the settings window opened immediately and navigating to different settings was also immediate.

So what is Win10/11 doing?

And Linux isn't immune to the bloat. It is still smaller/faster than Windows, but it has managed to stay within a constant factor of Windows all this time. Modern Linux is significantly fatter than 20, even 10 year old Windows.

If the answer were "corpos gonna bloat", what's Linux's excuse? Operating systems across the board have gotten bigger and slower over time, for little visible benefit, and nobody has a coherent answer for why.

Some of the causes for bloat apply to both commercial and floss projects:

- heavier use of serialized I/O means much lower risk of pointer corruption or related threats, but adds overhead

- so do simple safety/sanity/security checks - each by itself is harmless, but over 10-20 years they add up

- more abstraction layers and more bookkeeping to handle much more complicated hardware setups, or just the passage of time (a Y2K secure date field takes two more bytes, a 64-bit time_t takes 4 more bytes than a 32-bit one, etc.)

- userspace devs are as lazy as they can be. Gnome these days is mostly Javascript to make the constant pointless rewrites faster, something that would've been unheard of 20 years ago. (The *box WMs meanwhile are still as fast as before.)

OP used the phrase "strikes me", that's not quite the same as being surprised.

Something can strike you without you being surprised.

For instance the amount of ads on youtube when it's running on a smart TV at someone else's always strikes me, but I'm not in the least surprised.

The surprising part isn't that near-30-year-old software runs faster now than it did then.

The surprising part is that in the intervening near-30-years of development, we have made software slower instead of faster.

Things I didn't use my 1998 PC for:

* realtime collaborative spreadsheet editing

* 28 inch high definition monitor

* watching movies in HD

* playing almost lifelike games

* browsing an extremely hostile internet

* live backing up all my files

* Running large complex scripts on the same machine I can easily carry in one hand

* Running an IDE like JetBrains

I could go on. We are only doing the "same tasks" if you ignore a lot of the details.

Add to that that Windows XP had no antivirus built in, heck it didn't eve ship with a bloody firewall to block incomign connections, so you got immediately pwned the moment you plugged into the internet or a USB drive from school. Then you installed a third party firewall and anti-virus solution and performance went to shit.

Yeah, it felt faster than today's equivalent at similar task, but at what cost.

If I strip out the catalyst, locks, interior and seats form my car, it will also go faster and give me better fuel economy but that doesn't really make it usable for me now.

But that's a plus!

People were educated about cyber-risks in a real-life, non-corporate-bullshit, non-give-me-a-break-eyes-rolling way.

And then they installed Tiny Personal Firewall which was miles better than even current windows' firewall.

>But that's a plus! People were educated about cyber-risks in a real-life

No it wasn't, no they weren't. That's like saying that growing up in a rough neighborhood where you can get shot, or getting drafted into war, is good for you because it builds character and teaches you to protect yourself.

A bullshit OS full of security vulnerabilities is no fun or useful for any user or business. Yeah, it indirectly helped me in my childhood better understand security, threats and troubleshooting, but overall these faults were a net negative for humanity.

>And then they installed Tiny Personal Firewall

No they didn't. I did tech support at the time. Most XP PCs has whatever bullshit solution from Zone Alarm, Kaspersky, McAfee, etc was cheaper or more advertised at the time. If they had anything to begin with that is, otherwise they were full of Bonzi-Buddy, Strip-Girl animated spyware that came with your DivX player installation or via the usual 'Eminem - Lose Yourself.mp3.exe' Limewire download.

  > \* realtime collaborative spreadsheet editing
  > \* live backing up all my files
These are broadband adoption and bandwidth issues and don't explain why the OS has grown. We had real-time networked apps in 1998. We had networked file-sharing and backups.

  > \* 28 inch high definition monitor
  > \* watching movies in HD
  > \* playing almost lifelike games
  > \* Running large complex scripts on the same machine I can easily carry in one hand
  > \* Running an IDE like JetBrains
These are hardware scaling issues and don't explain why the OS has grown. And we had IDEs in 1998.

  > \* browsing an extremely hostile internet
Better sandboxing of the browser explains (though only partially) why the browser has grown, but doesn't explain why the OS has. If anything, the browser grew (in functionality and thus size) because the OS didn't (in functionality), so why did it (in size)?
>Better sandboxing of the browser explains (though only partially) why the browser has grown, but didn't explain why the OS has

Because the same kind of sandboxing happens on OS level now as well. In Windows 9X days the apps could access the hardware directly but not anymore for safety and security. Everything is now layers upon layers of sandboxing that must talk to the HW via APIs.

>because the OS didn't (in functionality)

Didn't it though? Or are we being needlessly snarky?

I don't remember Win 98 having on-line automatic OS update and automatic driver update, firewall, heuristic anti-malware, DirectX 12 support(check the featurelist compared to DX 5), support for multi-core 64bit CPUs, PAEX, NVME SSDs, WiFi, multiple high-dpi screens, virtualization(Hyper-V), USB4 & Thunderbolt, accelerated fancy transparency in the GUI, etc.

Yes, some of those features are hardware related, but having the OS support all those new HW features and exposing it reliably and securely it to the userspace adds bloat in from of binary code that makes all that work seamlessly.

All of those features and support for all that newer faster hardware, are a given now but were unheard of in consumer OS back then when PCs had the complexity of a toaster by comparison.

So let's stick to the facts, not emotionally driven rose tinted glasses.

> so why did it (in size)?

Because as HW became powerful and cheaper, it made it less profitable for SW companies to hyper optimize everything like they were dong in the Win9X days with assembly and stuff. It would be a needless expense that brings no ROI.

Yeah Win11 is needlessly overbloated compared to WinXP, but people said the same about WinXP when it launched, compared to Win98, and they said the same about Win95 when it launched, compared to DOS. Where does the buck stop? At the Altair 8800? Pretty sure that had no bloat.

Well, I watched HD video on my 1999 PC, and it worked fine. I had to resize it to fit 1600x1200; I don't know what all is going on behind the scenes to play a 1080p-encoded video in that situation. But it worked great. You don't need moder hardware for HD monitors at all.

> * Running an IDE like JetBrains

We had Visual Studio, which also worked great, and with WinForms was undoubtedly one of the best GUI app development tools of all time.

> * browsing an extremely hostile internet

I did this well into the 2000s, although I was an early Firefox evangelist and mostly used that when it came out, plus eventually NoScript as JS was continually used to enshittify the web.

Even the software that existed then has become an order of magnitude more capable. Try running 2023 Emacs or Microsoft Word on a 90s PC…
As I watch many people using their UNIX like computers, as if time has stood still in 1980's terminals, I would say it that 2023 Emacs would do just fine.

Really, entering in some coffe shop coding sessions, is hardly any different from an IBM X Windows terminal into a DG/UX session in the university computer lab, now they are using a laptop and something else instead of twm or an ambar based text terminal.

My point is that the software we run now is significantly more resource intensive, even if its name hasn't changed. Emacs is slow on 2023 hardware. It would likely be unusable on 90s hardware.
Emacs means eight megabytes and constantly swapping for a reason.
I tried XP on a PII 333 MHz laptop with 96 MB of RAM. This laptop came with Windows 95 or 98. It still works by the way.

It ran, but it was quite slow. Windows 2000 managed better. Windows 98 even more, but internet on Windows 98, maybe not the best thing to do. Linux even more.

I can't see 233 MHz and 64 MB being reasonable minima, more like very bare minima as in "it boots".

(of course, this does not contradict anything essential from your comment)

>It ran, but it was quite slow.

That's how minimum specifications work. They're the minimum to run the OS, but nothing else.

Win11 has minimum requirements of 4GB of RAM but I doubt it can run anything with that.

> How would anyone expect that not to be much faster on a modern quad+ core, 4GHz system with 8GB+ RAM?

It's not a given.

For example, Windows XP may boot faster than 98 or 2K on the same hardware, because XP parallelizes and shortens some hardware initialization steps. (e.g. anything related to the network).

Win98 with file sharing spends almost a minute during boot (even from an SSD) just squeaking netbios frames.

> Win98 with file sharing spends almost a minute during boot (even from an SSD) just squeaking netbios frames.

You have a config error in TCP/IP.

It has been a long time since you last sniffed 9x Windows, right? It will speak NBFs even if you _don't have TCP/IP whatsoever_, NBTs otherwise, but they will delay the boot process by about a minute or so.