93

The term "Disk Operating System", or commonly "DOS", was used in the early days of personal computing to distinguish operating systems that also contained software for supporting disk devices, since not all of them did. The DOS software could access blocks stored on disk, that were organized into files, and there was "filesystem" software included for ...


78

There were a number of factors involved. Windows 3.0 introduced a more refined user interface than available in Windows 2.0: more colours, proportional fonts everywhere, smaller icons, and MDI windows (multiple document windows inside an application window)... This made it "obviously" better than plain DOS to many users. Reviewers back in the day perceived ...


72

C did exist when DOS was developed, but it wasn’t used much outside the Unix world, and as mentioned by JdeBP, wouldn’t necessarily have been considered a good language for systems programming on micros anyway — more likely candidates in the late seventies would include Forth and Pascal. SCP developed DOS in assembly for a few very pragmatic reasons: The ...


70

You are comparing apples to motorcycles. Windows 95 traces its lineage back through Windows 3.x all the way to Windows 1.x and MS-DOS/PC-DOS, themselves inspired by CP/M. It was conceived and designed as a single-user, cooperatively multitasking environment in which applications have a large degree of freedom in what to do. Windows 95 moved towards a ...


67

Having a programming language built-in gave you a multi-purpose tool into your hands at the flick of a switch (power on). As to the choice of BASIC vs. other programming languages, microcomputer BASIC dialects are - despite some of their shortcomings - quite accessible to novice programmers. They are a bit like using English in an imperative style ("PRINT ...


64

It doesn't imply that it's the disk operating system so much as it implies that it's the disk-operating system. You could boot an Apple II from ROM, enter and run BASIC programs, load programs from cassette, and basically do whatever an Apple II can do, but there was no way to access files on disk. Apple DOS didn't really do any of the features of a modern "...


63

Stephen Kitt covers the bases well, but I think the majority of the reason relates to fact that Windows 3.0 finally brought 286 protected mode execution to the masses. Even though the 80286 was first released in 1984, Windows 3.0 was the first mainstream platform that actually ran it in protected mode. That made it the first mainstream platform that could ...


46

My previous research into retrocomputer OS updates has led me to the following list. For each retrocomputer OS, the date and version of the latest update released at time of posting is included. The link for farther information about the update is also included. ProDOS 8 for Apple II, originally released Jan 1983 ProDOS v2.4.2 (Jan 2018) GS/OS for ...


45

Having BASIC available for the machine was a selling point so early adopters wouldn't have to wait for software to become available--they could write what they need themselves, and they wouldn't need to learn machine language to do it. [Bill] Gates believed that, by providing a BASIC interpreter for the new [MITS Altair] computer, they could make it ...


40

The term DOS pre-dates the personal computer by a looong way: the term DOS/360 was first coined by IBM in 1964 as a new operating system for their System/360 mainframe computers, to replace TOS (tape operating system). IBM commissioned Microsoft (at that time a garage outfit) to write PC-DOS to run on their Personal Computer, which was launched in 1981. ...


37

The decision about whether to kill a process or crash the OS generally depends on whether the problem can be isolated to the process. For example, if a running process in user mode attempts to read from an address that's not present in its address space, that's not going to affect anything else. The process can be terminated cleanly. At the other extreme, ...


35

Nobody so far has said the magic words, which is Microsoft BASIC. First developed for the Altair 8800 (the first commercially successful personal computer!), Microsoft spent a lot of energy making sure their BASIC would work on every personal computer in the 1970s and licensing it widely. It ran on CP/M, it ran on the TRS-80, and -- of course -- the IBM PC. ...


33

The simple answer is that early operating systems for the systems you mention did not provide those features. Apple DOS, for example, makes no use of interrupts, and has no concept of processes or memory protection. Nor does DOS have any concept of hardware drivers, as it includes support to drive the Disk II (a deep assumption in DOS) and nothing else. ...


30

From The OS/2 Museum page about DOS3: "The new ATTRIB.EXE utility allowed the user to manipulate file attributes (Read-only, Hidden, System, etc.). It is notable for being the first DOS utility written in C (up to that point, all components in DOS were written in assembly language) and contains the string “Zbikowski C startup Copyright 1983 (C) Microsoft ...


29

Memory protection. It's not that preemptive multi-tasking is expensive, or hard. It's not. It's easy. It costs (or can cost) essentially the same as cooperative multitasking. You have to save process state in both cases. But what was holding back the older systems was their early reliance on systems without inherent memory protection, and those legacies ...


28

The fork() system call is definitely older than the C language because it already existed in the UNIX v0 draft, page 18 of the PDF, when the C language hasn't been conceived yet. The mechanism was different from what we're used to: Except while UNIX is bootstrapping itself into operation, a new process can come into existence in only one way: by use of ...


28

The first hierarchical system capable of supporting arbitrary directory structures was designed for Multics, which pre-dates Unix. It is described in A General-Purpose File System For Secondary Storage, although it should be noted that that paper is a design document and doesn’t quite reflect the file system actually implemented a few years later in Multics. ...


28

MS-DOS (by which I mean the underlying IO.SYS and MSDOS.SYS files) was written in assembly through the first half of the 1990s. In 1995 for Windows 95, which was bootstrapped by what you would call MS-DOS 7.0 (although nobody ran DOS 7.0 as a stand-alone OS), I did write a small piece of code in C and included it in the project. As far as I know, it was the ...


27

Reading through Per Brinch Hansen's The evolution of operating systems paper, I get the impression the two main candidates for operating systems with identifiably separate kernels are Dijkstra's THE multiprogramming system, started in 1965; it's a layered operating system — so you could view its layer 0 as a kernel, which is smaller than the whole operating ...


27

For "home" computer systems such as the Apple II, the "operating system" wasn't anything like a modern one with processes and device drivers and so on; by the standards of modern OSes there wasn't really one at all. As a warning: all these explanations (long as they are) are for the most part considerably simplified. This answer is intended to give you the ...


26

Thraka is right that BASIC served the role of operating system on many 8-bit micros. Some OS was needed, that was beyond doubt. But at the time dedicated operating systems were either very limited (say, Atari DOS), overly complex, big and expensive for the tiny computers (Unix), or - for the middle ground, that was "just right" - in their infancy (CP/M). ...


23

If you’re going for strict historical accuracy, a 1990 PC could have had either MS-DOS/PC-DOS 3.3, MS-DOS/PC-DOS 4.01, or DR DOS 5, along with Windows 3.0. MS-DOS 5 was released in 1991, and DR DOS 6 followed in the same year. An interesting OEM option is Compaq’s 3.31 DOS, which included support for partitions larger than 32MiB, and the first expanded ...


23

Low Memory ==> Assembly Language In the early days every byte mattered. MS-DOS was, in many ways, an outgrowth of CP/M. CP/M had a fairly hard limit of 64K. Yes, there were some bank switching in later versions, but for practical purposes for most its popular lifetime it was a 64K O/S. That included O/S resident portion + Application + User Data. MS-DOS ...


23

I have not found a reference, but here's a search for OS/2 on Trend Micro's virus encyclopedia. That finds 30 entries, some of which are actual OS/2 viruses, and some of which are interesting OS/2 security vulnerabilities. It looks as if there are five OS/2 viruses in that list, but it's unknown if any of them are multiple names for the same virus, or ...


23

TL;DR: on 286s in standard-mode Windows, DOS programs run one at a time in real mode, with Windows suspended, so the restrictions of enhanced mode which rendered DPMI necessary don’t apply. The “trick” used to allow unmodified Windows 2 programs to run in protected mode on a 286 relies largely on the fact that Windows provides a full operating system API to ...


22

As far as I know it was included because it was essentially the operating system interface. When you installed MS-DOS on a PC it provided you with commands and allowed you to run programs that executed machine code on the machine. BASIC back then was similar. It provided you with a command prompt, operating system-level commands like reading/writing data ...


22

One reason that Windows 3.0 was popular with software authors: it included a DOS extender, meaning that on 286 / 386 processors Windows programs could run in protected mode and access as much memory as the computer had, rather than the 640k allowed by PCDOS.


22

In order to load files from the SYS volume NetWare needs to have a device driver for the kind of disk your SYS volume lives on. Considering that you might put your SYS volume on an MFM drive, or RLL, or ESDI, or SCSI, or IDE, or any of a variety of different RAID controllers, we are talking about a lot of different devices your bootloader needs to be able ...


Only top voted, non community-wiki answers of a minimum length are eligible