My friend in college ran Minix on his IBM PC. It was pretty cool, but the overall design seemed scary to me since it "trusted" each computer not to clobber each other (Microsoft DOS suffered from the same problem, but it was even more limited than Minix). I didn't know that about Andrew Tannenbaum's philosophies. In my heart, I would like to have a similar philosophy, but I usually end up slipping into the "I want it fast" camp. Nevertheless, in general, I do find it too easy to think about optimizating code and making interfaces cleaner but I try my best to put those off for as long as possible. I find it very difficult to convince my co-workers to do this. > From: Noelle <noelle> > Date: Sun, 1 Oct 2023 08:10:09 -0700 (PDT) > > J.F. in Ft. Worth, TX, asks: Do (V) or (Z) hold opinions in their > respective areas of expertise that are at odds with the majority of > their colleagues? > > (V) & (Z) answer: (V) believes that security and reliability are the > most important aspects of any computer system, even more important > than performance or ease-of-use. For this reason, he is a strong > believer in what is called a "microkernel," a tiny operating system > that runs in protected ("kernel") mode on the bare hardware and > which has access to the full machine. All the rest of the operating > system should run as compartmentalized components running as > user-mode programs, including the file system, all the device > drivers, etc. User-mode programs don't have access to all of memory, > all of the disk, critical machine instructions, etc. That way each > component can be limited to only that power it needs. For example, > the audio driver can then be given power to access the sound chip, > but not write on the disk. If it is hacked, the hacker can then make > weird noises, but not steal data from the disk. (V) even wrote such > a system, MINIX, which was the platform and inspiration Linus > Torvalds used to create Linux. > > Inside every Windows computer is a special chip called the > management engine that runs MINIX, something (V) didn't even know > about until he saw it in the press. > > MINIX has about 15,000 lines of C that run in protected mode on the > bare metal. Linux has about 30 million lines of C down there. > Windows has over 100 million lines of mostly C, with a bit of C++ > and C#. Studies have shown there is typically one bug per 1,000 > lines of code. The more code running in the kernel, the more bugs > (and thus security vulnerabilities) there will be in the most > critical place. Also, due to the modular microkernel design, MINIX > can automatically recover from some errors in its own code, > potentially improving reliability. > > Most of (V)'s academic colleagues think performance is the > be-all-and-end-all and thus don't like microkernels because they are > somewhat slower than traditional operating systems like Windows, > Linux, and MacOS. To them, security and reliability are nice > features to have if they are "free," but not if they cost some > performance. > > As to (Z), his disagreements in terms of scholarship are sort of > inside baseball. For example, he believes that there are actually > two Southern interpretations of the Civil War, the well-known "Lost > Cause" and what (Z) calls the "White Supremacist Cause." He looks at > a movie like Gone With the Wind and then a movie like The Birth of a > Nation and thinks they have very different ideas about history. > However, most other historians consider them both to be Lost Cause > movies. > > Also, it's not his area of expertise, per se, but (Z) has taught > history of religions. And he could never get a decent answer from > the actual experts as to why there is a bright red line between > religions considered to be polytheistic and Christianity, which is > invariably described as monotheistic. Christian saints and > archangels seem to have a very similar role as lesser gods and other > supernatural beings in, say, Buddhism or the religion of the ancient > Greeks. > > Where (Z) is much more obviously a heretic is not in scholarship but > in teaching. He doesn't believe in using a textbook, doesn't believe > in using notes to lecture, doesn't like to be called by a title, > plays music at the start of every class, assigns some unorthodox > readings and essay assignments, has vastly more discussion in class > than is typical for lectures, and doesn't insist (or really even > care) that students memorize specific dates. There are many > colleagues who look askance at some, many, or all of these things. > Many of these colleagues are the same people who wonder openly why > things have changed, and why students don't take multiple courses > with the same professors anymore (Hint: Things have not changed, and > students most certainly do take multiple courses with professors... > at least, some of them).