Thread: Minix vs Linux for Learning Operating System Design?

  1. #1
    Registered User
    Join Date
    May 2012
    Posts
    8

    Minix vs Linux for Learning Operating System Design?

    I wish to learn operating system design. I was wondering if I should tackle Minix or GNU/Linux in the process? I like books so I would be following mainly a book, though video resources (presumably videotaped lectures) would also be welcome.

    If I take the Minix route, should I tackle version 2 since it it simpler, or version 3?

    Any input, feedback, or suggestions?

    Thanks.

  2. #2
    and the hat of int overfl Salem's Avatar
    Join Date
    Aug 2001
    Location
    The edge of the known universe
    Posts
    39,660
    You'll probably want to study more than one in the fullness of time, so I'd go for the simplest one to begin with.

    At least it will calibrate your learning curve to aid with choosing the next one to study.
    If you dance barefoot on the broken glass of undefined behaviour, you've got to expect the occasional cut.
    If at first you don't succeed, try writing your phone number on the exam paper.

  3. #3
    Registered User
    Join Date
    May 2012
    Posts
    5
    Hi,

    I think an easier way would be to look at OS design from scratch. Have a look at this site, you'll learn a lot from it. It also has a very active forum of people working on their own OS's. OS Development

  4. #4
    Programming Wraith GReaper's Avatar
    Join Date
    Apr 2009
    Location
    Greece
    Posts
    2,739
    Quote Originally Posted by Lloyd View Post
    Hi,

    I think an easier way would be to look at OS design from scratch. Have a look at this site, you'll learn a lot from it. It also has a very active forum of people working on their own OS's. OS Development
    Quoting a line from that site:
    Prepare yourself for occasional bouts of confusion, discouragement, and for some of us... temporary insanity.
    Doing anything from scratch is always difficult, exhausting and it's arguable whether it is a useful way of learning or a total waste of time.
    Devoted my life to programming...

  5. #5
    &TH of undefined behavior Fordy's Avatar
    Join Date
    Aug 2001
    Posts
    5,793
    I'd say definitely have a look at Expanded Main Page - OSDev Wiki as well as Bona Fide OS Developer

    Lots of tool related methods go out of date quickly so prepare to also visit a lot of forums and spend time messing with your tools to make things work.

    The Tannenbaum books on Minix are good, but time spent "getting your hands dirty" will be well spent (writing a boot-loader, keyboard driver, heap manager...etc). The Linux Kernel is about as good example of kernel code that you can easily get your hands on, but I wouldn't want to start there as it will be a big job to understand many aspects of it without prior knowledge

    >>Doing anything from scratch is always difficult, exhausting and it's arguable whether it is a useful way of learning or a total waste of time.

    I don't agree. You might not find an instant use for such knowledge, but that doesn't mean you shouldn't acquire it

  6. #6
    Registered User
    Join Date
    May 2012
    Posts
    8
    Quote Originally Posted by Lloyd View Post
    Hi,

    I think an easier way would be to look at OS design from scratch. Have a look at this site, you'll learn a lot from it. It also has a very active forum of people working on their own OS's. OS Development
    Thanks for pointing out what appears to be a great resource. I am not ready to tackle creating even a basic OS from scratch. Maybe after tackling Tanenbaum's book on Minix, I will be ready. I likely will handle the second version/edition of Minix since it is simpler, and even that after solidifying my knowledge of C and of data structures and basic assembler. Will tackle those over the summer, and may delve into Tanenbaum over the fall. I wish I could take a formal OS course in college locally but I don't think any are being offered that could be taken in the evening. Albert Woodhull (Tanenbaum's coauthor on the Minix book) used to teach not far from where I live, but I don't think he is there (Hampshire college) anymore. I am finishing a Linux/Unix Systems programming college course right now. We basically rewrote some of the utilities and programs surrounding the kernel, e.g. rewriting a very basic Unix shell including very basic shell scripting. I actually found it fairly tough.

    Is anyone aware of any colleges offering an online or distance ed course on OS design? Or of any online open-courseware materials or videos? I would prefer formal enrollment in a course but would take the latter if it is the only option.

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Replies: 5
    Last Post: 03-28-2012, 10:10 AM
  2. minix system call pls help for project
    By porvas in forum Linux Programming
    Replies: 2
    Last Post: 06-14-2009, 02:40 AM
  3. Minix and system calls!!!help!
    By squeezah in forum Linux Programming
    Replies: 24
    Last Post: 04-02-2008, 07:19 PM
  4. Replies: 8
    Last Post: 03-10-2008, 12:08 PM
  5. coding a new operating system like linux
    By codefx in forum Tech Board
    Replies: 3
    Last Post: 12-06-2002, 11:23 PM