Looking for learning resources for Computer Operating Systems

Click For Summary

Discussion Overview

The discussion revolves around seeking recommendations for learning resources related to operating systems, particularly for someone preparing for the FE exam in Nepal. The focus is on finding books and online courses that provide clear explanations and practical exercises, as well as addressing prerequisites for understanding operating systems.

Discussion Character

  • Exploratory
  • Technical explanation
  • Debate/contested
  • Homework-related

Main Points Raised

  • One participant expresses dissatisfaction with traditional textbooks, specifically mentioning Tanenbaum's book for lacking handholding and preferring resources that assume no prerequisites.
  • Another participant questions what specific aspects of operating systems the original poster is interested in, suggesting that prerequisites may vary based on the desired depth of knowledge.
  • A different participant suggests that a foundational understanding of programming, memory management, and file systems is essential for grasping operating system concepts.
  • One participant emphasizes the importance of learning C programming, as much of operating system code is written in C, and highlights the necessity of understanding pointers and scoping.
  • There is mention of various resources, including NPTEL courses and a course from Prateek Jain Academy, with mixed reviews regarding their accessibility and value.

Areas of Agreement / Disagreement

Participants express differing views on the necessary prerequisites for learning about operating systems, with some advocating for a strong programming background while others suggest a more gradual approach. There is no consensus on the best resources or methods for learning.

Contextual Notes

Participants note that the effectiveness of learning resources may depend on individual learning styles and prior knowledge, indicating that what constitutes a prerequisite for one may not be the same for another.

Who May Find This Useful

Individuals preparing for engineering exams, those seeking to deepen their understanding of operating systems, and learners looking for accessible educational resources in computer science.

shivajikobardan
Messages
637
Reaction score
54
TL;DR Summary: operating systems books and courses recommendations.

I've to get FE exam to get licensed as an engineer in Nepal. I want to learn everything properly because I feel I didn't learn to the extent that I could in college. My first hitlist is operating system and Database Management System as these two are also little bit used in my job.

What's the best book about operating system? In college I read tanenbaum and hated every pages of it because it didn't go to much handholding that I wanted. I want handholding in book that assumes I've no preriquisites while teaching. I don't need to make an operating system. Just clear my fundamentals and become an operating system knowledgeable person. Likewise I read computer networks by stallings and I was quite meh about it. The book was good in pieces and definitely better writing than tanenbaum but I'm not exactly impressed.

I've tried the book "Linux with Operating system concepts" and didn't find it good. I'm a hands on person nowadays so would love a book that has good exercises.

The other book is by Galvin. But silber something also wrote this and I didn't like his DBMS book.

There was 1 good book when I was in college I don't remember. if it was 3 easy pieces or something. It had dinosaurs in it. Probably galvin book.

Anyway, recommend me? I will also purchase a competitive exam practice questions book for GATE which is the highest tough exam for engineering computer science.About courses, I found NPTEL courses from top IITs too tough to understand. Are there any new online courses in the market at the moment. I studied operating system in college in around 2020.Please recommend and help me in my journey. I also have purchased a course from Prateek jain academy which is well over 50+ hrs but I am failing to see any value in it.
 
Physics news on Phys.org
Are you looking for OS features, what coding methods are used in OS's, just a history of OS's?
What you need as prerequisites depends on what you want to learn about OS's.
For example, if you are going to get into how multitasking or device drivers are implemented, then you will need to know a lot about the hardware support, the processor interrupt processing, I/O, "atomic" operations, etc.
 
.Scott said:
prerequisites
One person's prereqs are another person's hand holding, I guess.

I would expect an OS text to assume that the reader is quite familiar with programming in general, with scoping and memory management, with file systems, and with (as you say) atomic operations, reenterenvy, interrupts/masking and locks. Trying to teach them all concurrently is unlikely to be a successful strategy.

It probably doesn't hurt to understand the memory management of at least one CPU as well.

If the issue is a lack of prereqs, I would address them directly.
 
I want to learn typical college course in OS. I've realized subjects like OS, DBMS, DSA and CN (operating system, database management system, data structures and algorithm and computer network) are very important in career stuffs as well, so I'm learning them from both exam and learning skilsl point of view.
 
After some consideration, I would add C (more so than C++) to the list. A lot of parts to a lot of OS's are written in C. I know you said it was too hard, but I don't think JavaScript is going to cut it. It;s not just writing - you probably want to read some existing code to understand how it works. And there is more to an OS than just the kernel - if I wanted to know how cron, for example, works, I'd look at the cron source.

While it is possible, I suppose, to write an OS primarily in something like Pascal or Ada, as a practical matter, most of the code you will find is in C, followed by assembler. Further, while you didn't say what made it "too hard", but it sounded like it was indirection, pointers and scoping. You absolutely need to know this to understand OS code.
 

Similar threads

Replies
5
Views
2K
  • · Replies 6 ·
Replies
6
Views
2K
  • · Replies 17 ·
Replies
17
Views
3K
  • · Replies 5 ·
Replies
5
Views
6K
  • · Replies 14 ·
Replies
14
Views
5K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 8 ·
Replies
8
Views
4K
  • · Replies 9 ·
Replies
9
Views
2K
  • · Replies 6 ·
Replies
6
Views
3K
  • · Replies 9 ·
Replies
9
Views
3K