The Unix Kernel

Joined
Jun 10, 2010
Messages
56
Is there a book that you guys would recommend to start learning the Unix Kernel? I would like to know Unix well enough to create my own Linux distribution. I know this is going to take a LOOOOONG! time but a list of resources and books to learn Unix would be a good addition to the section, IMO.

(sorry if i sound like a skid xD)
 
Last edited:
As that link says, Unix and Linux are different. Linux is Unix based.

Do you mind if I ask why you wish to create your own distribution?
 
Fair enough. I at one point wanted to create my own distribution, but settled with modifying existing solutions. I'm sure one day once I get bored enough I'll do the same as yourself, or something similar at least.
 
I won't be happy with an OS until its made exactly the way i want it :D

Then just go with LFS or Gentoo and install only what you want. A distro is, basically, just a collection of software, themes and settings.
 
As an Amazon Associate, HardForum may earn from qualifying purchases.
If you really want a good overview of the UNIX kernel design methodology, I recommend you start with the book The Design and Implementation of the 4.4 BSD Operating System followed by its more modern cousin The Design and Implementation of the FreeBSD Operating System. That will give you a good overview of the design goals of the UNIX (although 4.4-BSD based) system.

Its not linux specific, but in a general sense its a really good introduction to all UNIX and UNIX-like systems.

:) really cool recommendations, i'll definitely check them out
 
As an Amazon Associate, HardForum may earn from qualifying purchases.
Then just go with LFS or Gentoo and install only what you want. A distro is, basically, just a collection of software, themes and settings.
more importantly than the aesthetics, variations between distributions are usually based around differences in package management so figuring out the pros/cons of a given methodology will give you insight into which one you want to start using
 
Do you have any experience in operating system architecture? Before trying to figure out the specifics of a Unix (or Linux) kernel you should understand how operating systems work.
 
more importantly than the aesthetics, variations between distributions are usually based around differences in package management so figuring out the pros/cons of a given methodology will give you insight into which one you want to start using

This, and every distro seems to put config files in different places (still within /etc but it can be a needle in a haystack from there on) which used to drive me insane until I became familiar the layouts for most of the major distros.

Back on topic, if you haven't any experience with the unix kernel yet, I'd recommend using a source distro, like Gentoo, which will require you to configure your own kernel. That'd, at the very least, be a high level intro to the the components of the linux kernel and you can go from there.
 
If I may, when you do start playing with kernels and such, try this: a virtual machine. Save copies of each machine you edit too. This way: You won't have to worry about messing up your current working OS, You can go back to what did work, and you can do crazy stupid exploration (like I often do =) with an undo possibility! And, if your luck with *nix is anything like mine, you don't have to worry quite as much about drivers/modules since the VM just (mostly) borrows from the real OS's configs. It may help in your learning steps =).
 
I would recommend that you work on contributions to Gentoo. They have the most bare metal attitudes and could certainly use any contributions towards the project that you could muster, whether it's ebuild maintenance or coding for any packages. Honestly, I learned more about linux/*nix in general just installing gentoo than I could have learned from years of using Ubuntu.
 
Back
Top