3 ms·
“An operating system is a collection of things that don’t fit inside a programming language; there shouldn’t be one” - Dan Ingalls 1981
by morphle 3y ago
“An operating system is a collection of things that don’t fit inside a programming language; there shouldn’t be one” - Dan Ingalls 1981
- spankalee 3y agoThat's a really terrible definition that dates from before multitasking, GUIs, and window systems and desktops.
- aidenn0 3y agoHuh? Multitasking dates back to the time-sharing systems of the '60s. Granted, while windowing systems existed in '81, they weren't widespread yet (Wikipedia lists PERQ as the first commercially released GUI workstation in '79).
- morphle 3y agoDan Ingalls wrote this in the Byte Magazine [1] dedicated to Smalltalk-80 in 1981. Smalltalk is its own operating system, it ran on the 1973 Alto that had 16 core processor and was multitasking. It was the first Graphical User Interface (GUI) that introduced the concept of desktops and window systems to the world. So his observation definitely did not date from before multitasking, GUIs, and window systems and desktops. Smalltalk and its current incarnation Squeak and SqueakNOS (for Squeak No Operating System) is a virtual machine written in a high level programming language that contains everything that we now call an operating system including its device drivers. It runs on bare metal hardware. Alan Kay his research group [2] attempted to make an entire personal computer operating system in just 10.000 lines of high level programming language and demonstrated that it is possible to do [3]. [3] answers the question "How would you build an operating system?" from OP. [1] https://archive.org/details/byte-magazine-1981-08 https://archive.org/details/byte-magazine-1981-08 [2] https://tinlizzie.org/IA/index.php/Papers_from_Viewpoints_Research_Institute https://tinlizzie.org/IA/index.php/Papers_from_Viewpoints_Re... [3] https://www.youtube.com/watch?v=ubaX1Smg6pY https://www.youtube.com/watch?v=ubaX1Smg6pY
- astrobe_ 3y agoThat was the thinking in the Forth community as well; no absolute frontier between language, library, OS and hardware. But Ingalls was still wrong, because what actually made that recipe work at that time is that they were programming against a predefined hardware, like game consoles. When you program for predefined hardware, an OS is basically a one man-month project (well, in the 80s at least). IIRC 1981 was a bit before the IBM PC, whose selling point was its extensibility. Squeak's VM is exactly a way to come back to predefined hardware. But of course if you get cocky and think you can rid of the OS because your VM is so funtastic, you end up with an inactive project like SqueakNOS. Either because the hardware diversity the OS protected you from hits you like a truck, or because you place strong restrictions on supported hardware - so not everyone who is willing to try it, can actually try it. That's very few people. Its best hope to evolve from the PoC stage is to be paired with some hardware product. Like Forth when it was chosen for the OLPC project.
- deleted 3y ago[deleted]
- CrimsonCape 3y agoI have a bucket list to jailbreak my iphone and build a ground-up OS that's just a CLI.