Rumination time, I jump in. > >Why did monolithic kernel Linux, based primarily upon the > >non-production-environment OS Minix from Tanenbaum used as an > >implemented example for teaching OS at the undergraduate level, > >achieve sector dominance over micro-kernel BSD-derivatives? ...
Linux killed everybody with superiour performance, for every competitor, both microbenchmarks and real-use performance of the Linux kernel were/are measurably better. > [what happened to BSD & derivatives?] > ... it boils down to a great deal of uncertainty around BSDI, > UCB's CSRG, Bill Jolitz, and 386BSD, all of which descended from > the Unix codebase ... The USL-BSD lawsuit came just at the right moment to cut the BSD movement down at the knees. By the time the dust settled and BSDs were running on PC hardware, Linux was already established. correlate the timelines of lawsuit against Linux and BSD timeline: https://urldefense.proofpoint.com/v2/url?u=https-3A__en.wikipedia.org_wiki_UNIX-5FSystem-5FLaboratories-2C-5FInc.-5Fv.-5FBerkeley-5FSoftware-5FDesign-2C-5FInc&d=DwIDAw&c=gRgGjJ3BkIsb5y6s49QqsA&r=gd8BzeSQcySVxr0gDWSEbN-P-pgDXkdyCtaMqdCgPPdW1cyL5RIpaIYrCn8C5x2A&m=47s95Ne0aOss4Lm0rou8QPxpzTQCi3wXRAuoDuFUQCk&s=RFr_K56_2XQYOg5Dxhg6Opq3kewSaB-o7k4ldfvsSwk&e= . > Linux is greenfield I tend to think that was the key. Linux always had the advantage over BSD in three areas (if you studied, programmed and used both, you already know this): - better TCP/IP stack in Linux - better virtual memory system in Linux - better filesystems in Linux In all three, Linux had the "green field" advantage, plus the incentive to beat competitors (at the time, BSD UNIX, SGI/IBM/DEC/SUN Unix derivatives). In the TCP/IP stack, Linux people implemented zero-copy transfers and support for hardware-acceleration pretty much right away. In the VM system they figured out just the right balance between application memory, kernel memory and filesystem caches, compared to BSD "active/inactive" (and nothing else). In filesystems, Linux was the first to solve the problem of "no corruption, no need for fsck" after unexpected system reboot (i.e. on crash or power loss). (with ext3/ext4). (ok, maybe SGI was there first for the rich people, with XFS, but look what happened, XFS is now a mainstrean Linux filesystem). > > Although, re-think your statement; Darwin with the macOS skin on it > has a great deal more marketshare than Linux. In many ways the > BSD-system-layered-on-a-microkernelish core did win; just not the > hearts of developers. > I would say, MacOS "won" not because but despite it's BSD foundations. If you look behind the curtain (heck, if you look *at* the curtain), you will see a BSD-ish kernel firmly stuck in the 1990-ies. No semtimedop() syscall, incomplete pthreads (no recursive locks), no /dev/shm (no command line tool to see and control POSIX shared memory). The only visible kernel level innovation are the "never corrupts" filesystem (mostly due to "never crashes" hardware, I suspect) and improved VM (encrypted *and* in-memory compressed, impressive!). Anyhow, today, MacOS wins at ping-pong while the game is hockey, if Apple still built hardware for serious computing, for sure the MacOS BSD "win" would count. -- Konstantin Olchanski Data Acquisition Systems: The Bytes Must Flow! Email: olchansk-at-triumf-dot-ca Snail mail: 4004 Wesbrook Mall, TRIUMF, Vancouver, B.C., V6T 2A3, Canada