Results 1 to 10 of 11
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 ...
- 01-11-2008 #1Just Joined!
- Join Date
- Jan 2008
- Location
- Texas
- Posts
- 2
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,
dmsynck
- 01-11-2008 #2Linux Newbie
- Join Date
- Jan 2008
- Location
- UK
- Posts
- 211
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
- 01-11-2008 #3
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.DISTRO=Arch
Registered Linux User #388732
- 01-11-2008 #4Linux Enthusiast
- Join Date
- Aug 2006
- Posts
- 631
From the Linux Kernel Newbies:
This the right place for you to know more about the linux kernel: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.
Linux Kernel Newbies - Linux Kernel Newbies
Regards
- 01-11-2008 #5Linux Engineer
- Join Date
- Apr 2006
- Location
- Saint Paul, MN, USA / CentOS, Debian, Solaris, SuSE
- Posts
- 1,117
Hi.
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:
I would class Minix as not a toy, but not a production system, either.Operating Systems Design and Implementation (3rd Edition) (Prentice Hall Software Series) by Andrew S Tanenbaum and Albert S Woodhull (Hardcover - Jan 14, 2006) -- amazon.com, 4 stars (of 5), 25 reviews
Regrettably, the books are not cheap, but education is often expensive ... cheers, drlWelcome - 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 )
- 01-11-2008 #6Just Joined!
- Join Date
- Jan 2008
- Location
- Texas
- Posts
- 2
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.
Sincerely,
dmsynck
- 02-26-2008 #7Just Joined!
- Join Date
- Feb 2008
- Posts
- 3
Hi,
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.
Andrea
- 02-26-2008 #8
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!
--
Bill
Old age and treachery will overcome youth and skill.
- 02-27-2008 #9Just Joined!
- Join Date
- Feb 2008
- Posts
- 3
Thanks a lot Bill. You are my best friend now!
- 02-27-2008 #10Linux Enthusiast
- Join Date
- Aug 2006
- Posts
- 631
Good Andrea, very nice, I've bookmarked your website and ....I like pizza!
Regards


Reply With Quote

