Find the answer to your Linux question:
Page 1 of 2 1 2 LastLast
Results 1 to 10 of 11
Enjoy an ad free experience by logging in. Not a member yet? Register.
  1. #1
    Just Joined!
    Join Date
    Jan 2008

    Minix or Linux 0.01

    Hi all,

    I am teaching myself C and am also interested in learning about unix-like operating systems in general and how kernels really work. What would be everyones recommendation as far as what source code to study. Would I be better off working with Minix 2.0 or Linux 0.01 kernel ?

    Thanks in advance,


  2. #2
    Linux Newbie
    Join Date
    Jan 2008
    hello, I would say neither. What I would suggest is get a very solid base Linux system running, this will be a platform to learn Linux and its system calls etc - how it works and be a good base to learn C on without worrying about any other issues.
    When you are Ok you can then compile you own kernel and boot either on that system or create a live CD for example. There are also things like Linux from Scratch project to build your own custom Linux system.

    Hope this maybe of help

  3. #3
    Linux Guru Cabhan's Avatar
    Join Date
    Jan 2005
    Seattle, WA, USA
    Well, there are a few issues here. First off, examining the source code for either OS is rather pointless if you don't know C and have a grasp of Assembly. The reason for this is that not only are they written in rather strange C, but many parts are optimized in Assembly. If you know how to program in other languages then you might have an easier time, but I suggest being familiar with both.

    Secondly, just picking up and diving into the source code may not be the best approach here (though I'm sure that with enough dedication, it can be done). There are two approaches I can think of. One is to learn (abstractly), the makeup of an operating system. There are textbooks out there from university OS courses that could likely help with this. The other is to pick up a book that gives a tour of the Linux source code. With some sort of guide and perspective, I believe it would be much more palatable.

  4. $spacer_open
  5. #4
    Quote Originally Posted by wowbag1 View Post
    hello, I would say neither.
    From the Linux Kernel Newbies:
    1. Look at a very old, very simple kernel.
    First advice I got when I entered #kernelnewbies a year ago, was to download kernel version 0.0.1. It's a good start for someone who doesn't know jack about kernels, and wants to see a very basic one. [Dan Aloni]

    [Sherilyn] The 0.01 kernel downloads to about 10000 lines of C and assembler, which is fairly manageable. Note that it's a barely functional UNIX with tons of bugs, but that doesn't stop it being useful if (like me) you just want to get a quick snapshot of the way in which a UNIX system boots up and starts executing processes, and a broad, uncluttered picture of the kernel system call API. I have written the following Wiki pages which may be of use as an introduction to kernel programming. Please add any corrections, etc.
    This the right place for you to know more about the linux kernel:

    Linux Kernel Newbies - Linux Kernel Newbies


  6. #5
    Linux Engineer drl's Avatar
    Join Date
    Apr 2006
    Saint Paul, MN, USA / CentOS, Debian, Slackware, {Free, Open, Net}BSD, Solaris

    The text book that discusses Minix is written to teach operating system theory and practice. I have the first 2 editions, and I note that there is a 3rd edition:
    Operating Systems Design and Implementation (3rd Edition) (Prentice Hall Software Series) by Andrew S Tanenbaum and Albert S Woodhull (Hardcover - Jan 14, 2006) --, 4 stars (of 5), 25 reviews
    I would class Minix as not a toy, but not a production system, either.

    Regrettably, the books are not cheap, but education is often expensive ... cheers, drl
    Welcome - get the most out of the forum by reading forum basics and guidelines: click here.
    90% of questions can be answered by using man pages, Quick Search, Advanced Search, Google search, Wikipedia.
    We look forward to helping you with the challenge of the other 10%.
    ( Mn, 2.6.n, AMD-64 3000+, ASUS A8V Deluxe, 1 GB, SATA + IDE, Matrox G400 AGP )

  7. #6
    Just Joined!
    Join Date
    Jan 2008
    Thanks for the advice. I do have a copy of the Minix 2nd edition book that I picked up used off Amazon and also a general OS fundamentals textbook entitled "Operating System Concepts" also used and cheap. I think for now my best bet will be to stick with concentrating on C and the fundamentals of Linux and leave the source code study for in the future. I guess that speaks to needing to walk crawl/walk before you can run.



  8. #7

    I'm Andrea, from Italy, this is my first post here.

    I'm studying Linux 0.01 and it is a very great experience. I'm writing some notes about it you can find in my website at Linux 0.01 The beginning of the saga.

    It is a "very" work in progress job in a draft state. But if you want to know the complexity you can give a quick look. (If you understand my pizza-english). There is also the first chapter now, but I'm still writing ...

    I studied also Minix in the Tanenbaum book, but I prefere Linux. The last Minix version is much complex than Linux 0.01 and it is a bit difficult to compile in a Linux enviroment because use the Amsterdam compiler kit and not gcc as Linux does.
    So If you choose Minux I think you have to compile it in Minix itself.
    Tanenbaum book is very clear and I suggest you to read it in any case.

    See you.


  9. #8
    Linux Engineer wje_lf's Avatar
    Join Date
    Sep 2007
    Hey, folks, I haven't had time yet to browse through Andrea's website, but the artwork on the front page alone is worth the click! Go there!

    Old age and treachery will overcome youth and skill.

  10. #9
    Thanks a lot Bill. You are my best friend now!

  11. #10
    Good Andrea, very nice, I've bookmarked your website and ....I like pizza!


Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts