Operating Systems are very much in the news, so it’s a great time to be teaching about them.
The OS war is hotter than ever. A few years back we had the triangle Mac vs Windows vs Linux but this has been widened consderably, with iOS and Android thrown into the mix. This week we have the launch of Windows 8, and while the media seems to have mixed reviews, a poll amongst my students shows that several of them are quite enthusiastic about it. I myself am being seduced by the idea of getting a tablet, and have eagerly been reading reviews primarily of the Nexus tabs, but also the iPadmini. I know I am conflating hardware and OS in here, but it seems these aspects have been converging more and more.
Meanwhile, I have finally bit the bullet and taken to updating the OS on my trusty Asus netbook, and found that it is actually quite easy to do so (!) and I can’t quite understand why I have been hesitant to get my hands dirty. It helps that I’ve backed up all my data, and have been happy to just wipe the machine clear between each time. A very nice surprise with Ubuntu yesterday: I had never tried to use my Keyspan presentation remote with it because I didn’t think it would possibly work with a Linux/PDF setting, but amazingly it worked without any problems. I seem to have low expectations of Ubuntu, but so far have always been pleasantly surprised. I only hope they get rid of the awful loss of privacy with local search that is part of the latest version of Ubuntu. On the other hand, I am becoming more disenchanted with MacOSX, which seems to be getting bloated and which finds even the 4gb RAM on my laptop to be insufficient.
I would like to integrate all this practical playing with OSs with the material I am teaching the second year students. Unfortunately, the academic topics seem far from all the nitty-gritty os OS development. It still is a great subject to teach, and I amvery happy to have a chance to review and deepen my knowledge of process scheduling, synchronization, memory partitions, etc. Just wish there was a way to integrate a more pragmatic justification of why different vendors do what they do with the OSs. I note that the next edition of the OS textbook I use (Silberschatz et al) has sections on Android, and in fact it does provide some introduction to facets of Solaris, Linux, Windows 32 throughout. But… wouldn’t it be nice if I could get a hold of more dynamic, and even more opinionated, discussions?
Trying to explain semaphores and the dining philosophers problem has taken me back to looking at the Dijkstra Archive. What an amazing person, and what a great set of notes. So many of them are still so vibrant and relevant, decades after they’ve been written. Recommended reading–or at least browsing–to any computer scientist. a true example of a blog, started years before blogs existed.
I see that in a very interesting note, EWD asks everyone who sees the note to kindly send him a postcard to say that they have seen it. This note from 1987 precedes the web and definitely precedes analytics, but it brings out the concern of anyone sending out their writings into the wind of whether the message is being received by anyone. In the same way, if you read this note – why not send me a ‘Hello?