> On May 28, 2024, at 3:24 PM, John via cctalk <cctalk@classiccmp.org> wrote:
>
> From: ben <bfranc...@jetnet.ab.ca>
> To: cctalk@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