Teaching operating systems

Cross-posted in villageidiotsavant.blogspot.com

When I got the schedules for my teaching load this second semester, felt perplexed and annoyed. Instead of the expected two lecture hours and three lab hours per week for Operating Systems, I got two two-hour blocks plus one remaining one hour block. I groused, of course: how could I teach the course with that arrangement?

In the end, it turned out to be a blessing in disguise. The two-hour blocks took place in the lab, so I just had to move the remaining hour to a classroom. As it stands now, I have four hours of lab time and one hour of lecture.

I've complained before about the short attention spans of students nowadays. This structure actually works out to my advantage. My lab exercises have caught the attention of the students, and we're always running overtime. I just take the remaining lecture hour to explain big-picture concepts.

Our main text continues to be the Silberschatz book, but I'm relying on it less and less. Silberschatz is about as comprehensive as an operating systems book can get; however, I find that I have quite a big gap to bridge between the scope of the students' knowledge and what I can teach from the book itself. That comes from living and working with just Windows where everything is hidden.

My lab exercises take the students through installation of the operating system, account creation, remote login, configuration, software installation, and processes. They have to do most of the work through command line, and that brings them closer to the idea of what an operating system us and what it does.

So far, the response has been positive. The CS3 batch has a reputation for being unruly, and indeed, my classes tend to be loud and noisy. But the hubbub contains whispers about the topic itself and instead of idle chatter. I like to think that's a good thing.

And yeah, my students LOVE Moodle. But more on that next time.