On May 28, 2024, at 3:24 PM, John via cctalk
<cctalk(a)classiccmp.org> wrote:
From: ben <bfranchuk(a)jetnet.ab.ca>
To: cctalk(a)classiccmp.org
Subject: [cctalk] Re: terminology [was: First Personal Computer]
The third thing is a real OS. Nobody has one, as
a personal computer.
CP/M and MSDOS does not handle IRQ's. Unix for the PDP-11 is real
operating system but not personal as it requires a admin,and a
swapping media.
This an auld refrain among *nix partisans of the ESR type, but I've yet
to hear someone offer up a real defense of it. Even putting aside what
"handles IRQs" means here (yes, strictly speaking the IRQs on the IBM
PC are handled by the BIOS and/or add-on drivers/utilties, but DOS most
certainly makes use of the facilities provided,) why does that make it
"not a real OS?" What does PDP-11 Unix provide which MS-DOS doesn't to
make one "real" and the other not?
Certainly, nothing about a single-tasking single-user text-based
environment *requires* interrupt-based I/O, even if it may smooth out
performance in some aspects. ...
Or is it multi-tasking capability itself that makes the difference?
Can't see why that should be the case; it's definitely convenient, but
as one person can only be doing so much at any given time, it's also
hard to see that as a *requirement.*
So what, then, consitutes a Real Operating System, and why?
Is RT-11 a "real operating system"? What about RT-11 SJ? I would consider it
to be one.
For that matter, what about OS/360 PCP? That's a single task OS, just like RT-11 SJ
only much less efficient.
Is FIG-FORTH an OS? What about POLYFORTH or ZeptoFORTH?
The picture gets particularly muddled when you look at RTOS. For example, it's well
known in hard real-time OS that using interrupts is not necessarily a good plan. A very
successful storage system I worked on ran on a dual core MIPS system. One core ran
NetBSD; the other ran a home-grown RTOS called QRQ that used a polling loop (and no
priorities) rather than interrupts. The benefit of such a design is that its time bounds
are easy to establish, unlike interrupt driven systems where that is certainly harder and
not always possible at all.
I'd say an OS is a software system that runs on bare metal (or equivalent, like a VM)
and offers a set of services intended to make creating and running applications easier.
In that sense, RT-11 SJ or OS/360 PCP are operating systems, just as Linux is. QRQ is on
the edge (it's written for a single application). Similarly, I would not call
FIG-FORTH an OS, nor those other FORTH systems, though admittedly it's also a bit
fuzzy.
paul