Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

what is the best approach to learning for an undergrad operating systems course in order to understand the concepts and get a good grade in the exam? I know that some courses can be mastered through diligently reading the textbook or attending lectures while for others the concepts can only be understood by doing hands on projects.

Is there a general studying approach that should be adopted for this type of a course?

I know this may be subjective but I am looking for personal experiences/study methods by those who have taken similar courses to see if there is one particular method that worked well for the majority.

share|improve this question

closed as off-topic by gnat, Thomas Owens May 18 at 11:46

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions seeking career or education advice are off topic on Programmers. They are only meaningful to the asker and do not generate lasting value for the broader programming community. Furthermore, in most cases, any answer is going to be a subjective opinion that may not take into account all the nuances of a (your) particular circumstance." – gnat, Thomas Owens
If this question can be reworded to fit the rules in the help center, please edit the question.

2 Answers 2

up vote 1 down vote accepted

I just did that exam last year! I would suggest doing everything you can. Go to the lectures, read the books, go to the labs. Email your lecturers if you have questions, go see them if it's hard to explain by email. Revision sessions with peers. Revision notes around where you've living (even just post-it notes on walls with little factoids).

It's all good. There's no tangible method you can really subscribe to. Just learn for it the way you would learn for everything else.

share|improve this answer

I've found that most of my knowledge about operating systems came from a mix of study and practical. I had a course on operating systems and architectures, and it was fine - learning about the different types of kernel, the functions of an OS, etc etc. It all seemed fairly conceptual until my final year project, which involved porting Linux's virtual file system to RMoX [http://www.cs.kent.ac.uk/research/groups/plas/rmox.html].

Actual development on an actual operating system, coupled with time spent exploring the Linux kernel source code, was absolutely priceless both as a way to gain new knowledge, and as a way of illuminating the knowledge that I'd already accumulated.

If I were you, I'd study up while trying to contribute to an open-source OS project like Ubuntu or Debian.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.