Hacker News new | ask | show | jobs
by mysterydip 1122 days ago
One difference is the switch from 95/98 to 2000/XP meant all future games and apps would be incompatible with the older OS.

Aside from security patches, I see nothing that prevents 7 from being used today. Subsequent OSes added nothing useful that I noticed, and a lot of negatives.

Ironically, you may actually be more secure today running 95 than 7, since any modern exploit would be incompatible with it.

6 comments

(obligatory security patches aside) Major OSs are arguably almost exactly the same as they were 20 years ago, with some random nonsense baked in. Functionally speaking, there's no reason I couldn't be on OSX Tiger or Windows 2000. Linux did get better in terms of hardware support. Freaking NDISWrapper still gives me nightmares.
> Functionally speaking, there's no reason I couldn't be on OSX Tiger or Windows 2000.

On the Mac side I think I'd go up to at least 10.5/10.6 for its native virtual desktop implementation (Spaces) that's actually better than modern Spaces by way of being a 2D grid instead of a single row.

Plus better networking, pulseaudio and a bunch of user level services got a lot better. If anyone remembers what a nightmare HAL was or that there was a time before dbus being used universally
Pulse audio is a negative. A lot of times getting rid of it makes things better. That's been true for the entire life of the daemon.

Linux had the recommended API as OSS, alsa, pulse ... In the same time frame FreeBSD just had OSS and it still works pretty well.

Linux also got faster.
Something tells me that a kernel from 1995 would run on lower-end hardware than a 2023 kernel with "speed improvements" (and an unmentioned million added features)
Sure, it might. But that doesn't mean things like schedulers or I/O handling haven't improved and got better in terms of latency or at handling various workloads.

Other things that may not be noticeable to most people but matter to others may also have improved, such as audio latency; I don't know how e.g. Pipewire or PulseAudio compares to plain ALSA in terms of that, but at least plain ALSA apparently wasn't enough for audio work back then because there was Jack, and I'm also under the impression that latency and responsivity in general have improved a lot on the kernel level as well, and not just in terms of audio.

Open source graphics drivers have also improved a lot over the years. Perhaps the entire graphics stack has, or perhaps overhauls of the stack have facilitated some of the improvements in the drivers themselves, but I don't have enough expertise to judge that.

Improvements (or degradation) in performance are rarely something that happens evenly across the board.

Do you mean what counts as lower-end hardware in 2023?

In that case, I doubt it. You probably couldn't even use all your RAM. Linux back then also supported only a single processor (if it boots at all): symmetric multiprocessing support was added in 1996.

Not necessarily, at least on my M520-based X201 it got slower in media-related workloads with recent kernels (last 1.5 year or so). But both KiCad and FreeCad are faster than in Win7.
>NDISWrapper

That's a name I haven't heard in a long long time haha

One encounter was sufficient to get me to buy hardware that Linux directly supported :P
> Freaking NDISWrapper still gives me nightmares

Whoa, the memories to NDISWrapper. And 802.11g

>Aside from security patches, I see nothing that prevents 7 from being used today. Subsequent OSes added nothing useful that I noticed, and a lot of negatives.

Steam is EOLing 7 because Chrome dropped support. No modern hardware manufacturer is going to continue churning out drivers with 7 support.

You're right that it works ok now, but that's rapidly changing.

As for whats better? Who knows. The new MS OSes are tremendously painful to use, personally speaking.

>Ironically, you may actually be more secure today running 95 than 7, since any modern exploit would be incompatible with it.

that's an interesting concept. Reminds me of how prepper types have recently been into MS-DOS machines -- but is 95 all that incompatible? I mean, I guess nothing trendy will run, but a good old-fashioned malicious assembly executable? do they no longer exist in the wild?

Agreed, lots of software is dropping 7 support, but that decision (as far as I can tell) is an arbitrary one, not a technical one. Is there a reason the latest chrome can't run on 7 if it didn't check for it?
> Is there a reason the latest chrome can't run on 7 if it didn't check for it?

The reason is precisely because it doesn't check for it.

That is: instead of checking for older Windows releases, and using fallback code paths for them, it simply assumes the presence of newer APIs (or that older buggy APIs now work properly). As time goes by, the cost of maintaining these fallback code paths only increases (and in some cases, having to stay compatible with them prevents important enhancements and cleanups), and since they're less tested (because they're only used when running on older operating system releases), they tend to break. As an example from an unrelated project, before they dropped Windows XP support, the fallback code for panic!() in Rust was broken when running on Windows XP (https://github.com/rust-lang/rust/issues/34538).

I imagine over time there will be API differences but probably nothing insurmountable.

I suspect the real reason is Microsoft themselves dropping support for W7. Once that happens you can’t really claim Chrome is a “secure browser” because the underlying OS might be exploited and never patched.

The same decision has been made in Python, to use the newer APIs blindly, but fortunately there's a fork: https://github.com/adang1345/PythonWin7 Hope Chromium will get one soon.

EDIT: yep, there's already one: https://github.com/Alex313031/chromium-win7

> Reminds me of how prepper types have recently been into MS-DOS machines

What now?

If you are looking for a computer that can do quite a bit, but still is reasonably "maintainable" with a soldering iron and parts, you can do much worse than an MS-DOS machine.

And almost by definition everything that was available, was all self-contained, because it was all pre-Internet.

> If you are looking for a computer that can do quite a bit, but still is reasonably "maintainable" with a soldering iron and parts, you can do much worse than an MS-DOS machine.

Some big problems with that idea are: 1) the machine would probably use a lot of power (unless you got some weird unmaintainable MS-DOS palmtop), 2) if the SHTF where are you going to get parts (especially for an obsolete retrocomputer)?

Practically, it would make far more sense to use Rasberry Pi with a DOS emulator. Then put ten more on a shelf as as your "spare parts." But I'm very skeptical of the use of a computer at all in "prepper" scenarios, so it makes even more sense to just not bother.

Yeah, I love how Valve is dropping support for Windows 7 (despite selling and shipping tons of games that are literally designed for Windows 7 or earlier) strictly because Steam is a web page served by Chromium Embedded Framework. Even software vendors don't truly own their own software anymore, do they? :)
> Aside from security patches, I see nothing that prevents 7 from being used today

Security patches for Windows 7 are still released each month, you "just" have to download [1] them manually and convince Windows Update service to apply them [2].

[1] https://catalog.s.download.windowsupdate.com/c/msdownload/up...

[2] https://www.deskmodder.de/blog/2019/12/07/windows-7-erweiter...

I do think Windows 10 has better support for DPI scaling and PTYs than Windows 7, alongside a laundry list of antifeatures like pervasive telemetry, automatically installing drivers without user consent, Candy Crush in the start menu, clickbait in the taskbar, etc. I think it would be interesting to, instead of forcing apps (eg. anything based on Qt 6) to include fallback paths for missing DPI scaling, instead patch the system APIs to include stub implementations of DPI scaling which always return 96 DPI. (PTYs are a lot more technical and difficult to implement.) Unfortunately, https://github.com/vxiiduu/VxKex didn't work properly the last time I tried installing it on my nostalgia laptop, and I struggled to build and install it myself, and I'm not aware of other programs taking this approach (http://ximonite.com/win32/index.html is Vista 64-bit only).
> Ironically, you may actually be more secure today running 95 than 7, since any modern exploit would be incompatible with it.

I'd guess a lot of malware is opportunistic and not really designed to maximize compatibility, so I imagine you're right but I would be curious to hear from someone who actually studies malware.

In a similar (also ironic vein), the lack of modern HTTPS probably also makes Windows 95 "secure" in that it will be inconvenient to use a Windows 95 machine for anything that needs securing.

Edit: It does make me wonder how fast computer viruses and malware goes "extinct." Probably much faster than biological viruses (if that's the right term) since malware doesn't evolve like viruses do.

I'm a sure if you put a Windows XP in a VM it will be hogged by a Blaster attack in seconds.
1. You need to connect it directly to internet (public IP address)

2. It needs another computer infected with blaster to get infected.

Windows 7 didn't have IO rings or Unix domain sockets, which will prohibit running an increasing amount of future software.
Windows NT has had async I/O and named pipes from the beginning. The API isn't identical to what you described but the concepts are similar enough to port higher level primitives.