Operating Systems: Three Easy Pieces
pages.cs.wisc.edu
pages.cs.wisc.edu
At the University of Arizona, we implemented in our class projects various stages of an operating system kernel, such as a process/thread scheduler, user/kernel mode functions, message passing (IPC/mailboxes), locking/semaphores/mutexes, signals, paged memory, and a file system in this upper division course. It wasn't as hard as a class like Automata, but it was tedious.
However, now that I am doing so much low level work, I can appreciate what we learned in class. In fact, it gives you a strong understanding how critical sections and locking work (and how this all ties in with the operating system). It makes you appreciate simple user mode delegate syscalls like fopen, fork, and malloc and realize that a bunch of things are happening in kernel mode. It makes you avoid naive design choices like while(true) loops and look for blocking/event-based equivalents.
So you might groan about taking an operating systems class. Don't! You might never ever work on operating systems, but you will be able to appreciate how to make the operating system work for you. Some self taught programmers I have met don't know the difference between blocking and non-blocking. If anything, operating systems will drill these concepts into your head to help you leverage operating systems for your benefit.
The textbook for the class is available free online. I pull it out at least once a year.
[1] http://ocw.mit.edu/courses/electrical-engineering-and-comput...
This is a great book btw and you can't beat the e-price of free. I also recommend "Operating System Concepts" which is sort of the canonical book on the topic, or if you can find it a used copy of the Springer-Verlag book "Operating Systems Design".
Silberschatz is the probably the seminal work though.
As much as I love old gear, my interests are currently more modern. Still I'd like to put an OS on a smaller system, either ARM or MIPS. ST has a nice new Discovery kit that as a 2.4" QVGA TFT LCD and would serve has a radio controller prototype.
If you want to re-live VMS on your own x86 hardware, the simh emulator (free) includes VAX support. There are various other emulators available. http://labs.hoffmanlabs.com/node/70
For OpenVMS, HP offers (free) OpenVMS hobbyist licenses and disk image downloads for all three OpenVMS architectures; for VAX, Alpha and Itanium. http://www.openvms.org/Hobbyist
Here's a setup of a (slightly older) version of simh on OS X: http://labs.hoffmanlabs.com/node/922
Anyways, the dialog was pretty campy, or excessively goofy. Also, I'm probably hellbanned.
No, you are not. If you think you should be, but for some reason that automatic system has missed you, you can send an email to PG asking him to ban your account manually.
I mentioned it because I realized I hadn't properly articulated my thoughts. Then I realized it didn't matter in the end. Of course, I guess that realization was wrong.
The second half was a not-to-funny joke inverting the usual advice about "you should write to PG and ask him to un-ban you". Since you weren't banned, but seemed to think you should be, I was suggesting you write him and request that he punish you for whatever transgression you thought you had made.