Oxide and Friends Twitter Space: August 23rd, 2021The episode formerly known as ℔We’ve been holding a Twitter Space weekly on Mondays at 5p for about an hour. Even though it’s not (yet?) a feature of Twitter Spaces, we have been recording them all; here is the recording for our Twitter Space for August 23rd, 2021.In addition to Bryan Cantrill and Adam Leventhal, speakers on August 23rd included Neal Gompa, Tom Lyon, Laura Abbott, Jeremy Tanner, Matt Campbell, Simeon Miteff and others. (Did we miss your name and/or get it wrong? Drop a PR!)Some of the topics we hit on, in the order that we hit them:Last week’s recording on “Showstopper” with author G. Pascal Zachary, and Jessamyn West.Ashton-Tate history (there never was any Ashton, and dBASE II was the first version) dBASE IV was “slow, buggy” and didn’t get fixed in a timely mannerLast week, Pascal mentioned that CEO Ed Esber “in a fit of insanity admitted to me (a journalist) he didn’t know how to use his company’s own product!”Friday! personal information manager, and Sidekick from Borland (like Google calendar for DOS)[@3:01](https://youtu.be/-ZRv6EHaQYM?t=181) Phrasing: operating program (vs operating system) Steve Jobs 1992 MIT Sloan talk ~72mins on consultants, hiring people and leaving Apple (see mit.edu summary) > Jobs: NeXTSTEP is not an operating system, it’s an operating environmentJuly 5th recording discussing NeXT. Randall Stross book: Steve Jobs and the NeXT Big Thing (1993) > Mac OSX focused on user capabilities of the desktop environment, but they considered it one and the same with the operating system[@7:42](https://youtu.be/-ZRv6EHaQYM?t=462) Windows NT had “multiple personalities” > Adam: I was instantly transported to the 90’s. > Bryan: I could hear Smashing Pumpkins playing on the radio. Sun’s Spring OS was the ne plus ultra of this approachMach microkernel, GNU Hurd, Apple M1,Windows Subsystem for Linux WSL > Adam: Docker takes static linking to the extreme and just ships everything[@12:40](https://youtu.be/-ZRv6EHaQYM?t=760) Microkernels > Simeon: (Oxide) is working on a microkernel for Hubis, tell us about that Minix, and the Tanenbaum-Torvalds 1992 microkernel vs monolithic debateQNX Unix-like real-time OS See ACM ByteCast interview with Rashmi Mohan, Bryan tells the story ~3mins of coming to QNX after reading about it in the “Operating Systems Roundup” of Byte Magazine 1993 (see also Bryan’s blog post and remembering Dan Hildebrand)L4 microkernelThe QNX 1.44M demo diskThe GUI was called Photon. > Bryan: why would we not run this (QNX) absolutely everywhere?Oberon OS. Photon microGUI[@15:49](https://youtu.be/-ZRv6EHaQYM?t=949) Laura on writing a microcontroller operating system Cliff Biffle’s websiteMicrokernels, root of trust, embedded systemsThere is very little (or no) dynamic memory allocation in Hubris.Tock multitasking embedded OS, and Bryan’s “Tockilator: Deducing Tock execution flows from Ibex Verilator traces” video ~12minsIn Tock, dynamic program loading is central. Hubris functions as a security-minded service processor. The programs it will use are all known in advance; so dynamic loading (and the accompanying security concerns) can be left out.Fit-to-purpose OSs[@24:19](https://youtu.be/-ZRv6EHaQYM?t=1459) ROPI/RWPI (aka “Ropy Rippy”) and the growing pains of RISC-V GitHub issue ROPI/RWPI Specification (Embedded PIC)OpenTitan, ARM Cortex-M > When we set out to write Hubris, we spent a lot of time reading > and learning what’s out there.QNX vs monolithic systems. QNX was robust against module failure, so bugs in modules were tolerable. At Sun, faults in a module were system faults, so bugs were unacceptable.Memory protection. Stack growing into (and corrupting) data segment, hard to debug.Stack corruption, a hit and run.[@32:39](https://youtu.be/-ZRv6EHaQYM?t=1959) Humor: Oxide rustfmt bot is named Ozymandias Percy Bysshe Shelley’s “Ozymandias” poem > LOOK UPON MY REFORMATTING YE MIGHTY AND DESPAIR!stale bot, open source maintainers, communicating bugs and issues[@39:54](https://youtu.be/-ZRv6EHaQYM?t=2394) Fun QNX bug story QNX wrote their own POSIX utilities, they wrote their own AWKQNX developers, incl. Peter van der Veen[@43:00](https://youtu.be/-ZRv6EHaQYM?t=2580) How do you say… vi, ed > Tom: Off with their eds!sed, ps, kubectl, /etc/passwd, QNX (...