Preferences

That’s a weird comment. Node.js is a stack that works on top of an OS. If you could just plop it on a SD card and boot a computer with it, it would be a OS. Things like DOS or MacOS 9 were definitely operating systems. There is no reason to restrict the term to those with preemptive multitasking.

"OS" in this context means "scheduler", i.e the code that coordinates your application tasks. That description can also apply to VMs such as JS, hence the comparison.

You could consider this type of library OS even more tightly bound to the application than your typical JS app as its actually linked to the user code.

A scheduler is part of a OS, but a scheduler alone does not make a OS.
"Operating Systems" for microcontrollers such as this are frequently just schedulers as the Application typically contains drivers and hits the hardware itself. e.g. FreeRTOS.
Even those implement communication primitives e.g. locks, semaphores, mailboxes, etc. as part of the OS. Some of the larger ones also define a driver model of sorts (which often just codifies the structure of the first driver for that type of peripheral e.g. USB, Ethernet, CAN, I2C, SPI, GPIO).
> "OS" in this context means "scheduler", i.e the code that coordinates your application tasks

If you define the context to mean it and then assume that everyone agrees with your implicit context, then maybe. In reality, OS and schedulers are not the same thing.

It’s also a leap from the “MacOS 9 was not an OS” GP position.

> It’s also a leap from the “MacOS 9 was not an OS” GP position.

That wouldn't be the first time I've heard that statement, even among classic Mac enthusiasts.

Then surely there are instances of people saying that it is “not an OS”. And I don’t mean hyperbole.

Here are 3 definitions from 3 different sources: https://www.wordnik.com/words/operating%20system . Not a single one even mentions process scheduling or anything to exclude MULTICS, CP/M, DOS, or any version of MacOS or Windows. I know that some people think that being contrarian on HN is cool, but this is beyond ridiculous.

And the scheduler decides which thread gets to run next. On a cooperative multitasking system, guess what the OS code you jump to when you yield from a thread does, and what it's called?
That was my point.
replied to the wrong coment, sorry
> "OS" in this context means "scheduler",

That's essentially what OS is: some bootstrap, scheduler and some APIs for developers and some drivers.

What context are we talking about here?

This item has no comments currently.

Keyboard Shortcuts

Story Lists

j
Next story
k
Previous story
Shift+j
Last story
Shift+k
First story
o Enter
Go to story URL
c
Go to comments
u
Go to author

Navigation

Shift+t
Go to top stories
Shift+n
Go to new stories
Shift+b
Go to best stories
Shift+a
Go to Ask HN
Shift+s
Go to Show HN

Miscellaneous

?
Show this modal