Lessons Learned from 30 Years of MINIX
2016-03-09 10:29:31 GMT
This value is required.
"MINIX's longtime mascot is a raccoon, chosen because it is agile, smart, usually friendly, and eats bugs."
"It turns out performance is more important to some people than I had expected." В общем, это в одном предложении объясняет, почему great CS academics редко бывают good programmers
шанс появления мумии
eats bugs? huh...
After the system was basically working, it tended to crash after an hour of operation for no reason at all and in no discernible pattern. Debugging the operating system on the bare metal was well nigh impossible and I came within a hair of abandoning the project. I then made one final effort. I wrote an 8088 simulator on which to run MINIX, so when it crashed I could get a proper dump and stack trace. To my horror, MINIX would run flawlessly for days, even weeks, at a time on the simulator. It never once crashed. I was totally flummoxed. I mentioned this peculiar situation of MINIX running on the simulator but not on the hardware to my student, Robbert van Renesse, who said he heard somewhere that the 8088 generated interrupt 15 when it got hot. I told him there was nothing in the 8088 documentation about that, but he insisted he heard it somewhere. So I inserted code to catch interrupt 15. Within an hour I saw this message on the screen: "Hi. I am interrupt 15. You will never see this message." I immediately made the required patch to catch interrupt 15. After that MINIX worked flawlessly and was ready for release.
Best of Mokum