5 ms·
> At what point in the past were our programs stable, robust and just worked? DOS was rock solid, at least around the era of DR-DOS. DESQView 386 was absolutel
by sdfjkl 7y ago
> At what point in the past were our programs stable, robust and just worked?
DOS was rock solid, at least around the era of DR-DOS. DESQView 386 was absolutely stable too. The BBS software I ran on them in those days was a wobbly piece of shit though.
I also recall Borland's Turbo Pascal compiler and the accompanying text-mode IDE being ultra reliable.
After DOS I've used OS/2 which was also extremely stable, although suffered from limited hard- and software availability.
Mac OS X used to be rock solid too in the heydays of the Powerbooks and earlier Intel Macbooks. Every now and then there were hardware design flaws though, and now the quality of both soft- and hardware seems to have taken a tragic turn for the worse.
You still do play Russian roulette whenever you plug a USB device into your computer, see "USB Rubber Ducky".
- messe 7y ago> DOS was rock solid DOS was rock solid because it did nothing. Many programs, particularly games and anything that did networking, didn't even use DOS interfaces—they bypassed them entirely and worked with either the BIOS or hardware directly. There was no memory protection, no multitasking, and, on a higher level, no permissions nor sandboxing. So while maybe it "just worked", I wouldn't call it robust.
- clord 7y agoYou’re complaining that DOS lacked features and protections. But zero cost abstractions like DOS can still be robust (in the sense of being reliable and solid.) yes it requires more trust, But there is no guarantee modern OSes can run arbitrary zero-trust binaries.
- ynnn 7y agoIf you run a buggy program on a modern OS, it won't crash the system or impact other processes. If you run a buggy program on DOS, it will write to random physical addresses, probably clobbering the state of other processes and of DOS. Modern OSes can run arbitrary binaries, but they can pretty much run arbitrary non-adversarial binaries - problematic binaries have to be intentionally written to exploit the system (as opposed to DOS, where non-problematic binaries had to be intentionally written to not break the system). It's a dramatic improvement.
- deleted 7y ago[deleted]
- messe 7y ago> Modern OSes can run arbitrary binaries, but they can pretty much run arbitrary non-adversarial binaries Mostly. Modern OSes strive to run abdersarial binaries, but where they can do it safely or not is still in question, IMO.
- mmphosis 7y agoIt doesn't matter what OS I run. My "modern", and apparently buggy, CPU runs arbitrary systems that I know very little about, and I have little to no control over. Since 2008, it's been a dramatic departure.
- kazinator 7y agoDOS did nothing and so people extended it with TSR's: "terminate and stay resident" programs. These were a nightmare. They had "conflicts": users had to experiment with the order in which they were loaded to make them like each other. Some of them were interrupt-driven and yet needed to call into DOS, which would be bad if the interrupt had gone of in the middle of DOS. So they tried to guess whether that was the case.
- deleted 7y ago[deleted]
- siberianbear 7y ago> DOS was rock solid Boy, that's not how I remember DOS. I remember playing with all kinds of variants of driver load order in config.sys and passing obscure arguments into himem.sys to avoid odd hardware conflicts and crashes.
- civility 7y agoI always wondered what the world would be like if Microsoft had just made a 32 bit DOS instead of going down the WinNT/95 route. Most of the headache in config.sys and friends was because you were working around the 16 bit address space. However, there was something really nice about owning your entire machine and only needing command.com for the "operating system". Compare this to full operating systems which consume gigabytes of disk and memory. This hypothetical 32 bit DOS could've had memory protection and multitasking too. Obviously device drivers would add complexity, but it doesn't need to be as complex as it's become.
- resoluteteeth 7y agoDOS isn't even an operating system in the modern sense. Once you add preemptive multitasking and memory protection, you're simply going to end up with a normal modern operating system kernel again. On the other hand, the stuff that takes "gigabytes of disk and memory" isn't even part of the operating system kernel, so there's no need to start from DOS to get rid of that stuff. It's possible to run linux from a few megabytes of ram.
- civility 7y ago> Once you add preemptive multitasking and memory protection, you're simply going to end up with a normal modern operating system kernel again. You're missing the point. There is no single file operating system for desktop users (maybe VxWorks or some other embedded OS falls into that category, but those aren't really for desktops). Modern operating systems sprawl all over the disk. Memory protection and multitasking are not large features, and CS undergrads all over the world routinely implement them in less a semester. > It's possible to run linux from a few megabytes of ram. A few megs of ram and a directory in /etc filled with startup stuff and config files. Clearly you don't appreciate it, but there was something really nice about being in the root directory and seeing only command.com and config.sys. The entire rest of the machine was yours to setup however you liked. The things most people hated about DOS really had more to do with the 16 bit address space and segmented architecture.
- pjc50 7y agoDOS was a configuration nightmare; you could run games that required up to about 600kb of memory, but only with a ludicrous amount of hacking that was harder to figure out in the pre-internet days. The "rubber ducky" attack is, of course, also possible with PS/2, XT, and even ADB keyboards, because none of them were authenticated.
- duncanawoods 7y agoI remember updating my autoexec.bat as a preteen but I wouldn't call it ludicrous hacking. I don't remember where I got the instructions from but I think they were just in the readmes or error messages of games, no internet required. It pales into insignificance compared to what I have to do to keep a desktop Linux box behaving normally today. Every few weeks I'm having to paste a wodge of lines into a range of config files to fix whatever driver oddity or system resource issue has caused something to break this time. That is pretty unimaginable without the internet.
- simonh 7y agoMy recollection is that Tiger and Leopard were a bit ropey, which is why Snow Leopard was considered primarily a performance and stability update.