Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

It seems either I am not looking in the right places or documentation is scarce.

Where to find an illustration of a typical Linux distro? Something to say that this is a kernel, these are the components, this is X11, GNOME, these are the components, etc.

I have been deciphering documents assuming you know what all these things are, and it seems I am missing something.

Question Update all answers posted are dramatically helpful. it's a big structure to look at

Of course, Linux is not only a kernel, and to get to understand the whole distro anatomy, we need to understand how to speak to the kernel using the system call interface (SCI). and then we need to look at the Desktop environments available, such as GNOME, KDE, X11, CDE, etc.

share|improve this question
    
What sort of structure are you referring to? Something conceptual, or the location of these things in the filesystem? –  Dan Gravell May 27 '10 at 16:08
    
Well, I want to understand how the Linux look like under the hood. if what you mean by a conceptual structure, the main components of the system and how they communicate, then yes. filesystems can be understood later when I get to know how the system works. appreciate someone could guide me to such illustration –  A.Rashad May 27 '10 at 16:15
add comment

migrated from stackoverflow.com May 27 '10 at 16:39

This question came from our site for professional and enthusiast programmers.

4 Answers

up vote 4 down vote accepted

I would have a look at LinuxFromScratch (http://www.linuxfromscratch.org/). Its a project that guides you through all the steps that are needed to assemble a Linux distro from the ground up. When i compiled my own from-scratch-distro a few years ago it was a lot of work but it was worth it. I've learned a lot in that process.

share|improve this answer
    
Thanks to all, it gave me an insight on how to search there is initially this [kernel map][1] which would give some highlights on the layers and functions covered in the kernel also, an [IBM article][2] on the anatomy of the kernel as well. and finally, the [Make Linux][3] I wish I could mark both answers as accepted, and more wish I could at least vote up for both answers, but my rep. points are low I cant do so. thanks for your help [1]: makelinux.net/kernel_map [2]: ibm.com/developerworks/linux/library/l-linux-kernel [3]: makelinux.net/reference –  A.Rashad May 27 '10 at 18:24
    
@A.Rashad: You can format your links in comments like so: [link text](url) and it will make the link text into a clickable link. Here is an example using the URL for your original question on this page. –  Dennis Williamson May 28 '10 at 1:49
add comment

perhaps since most things in linux are expressed in terms of the file system (with the exception of network devices, unless you are talking about plan9), it would be beneficial to understand filesystem hierarchy structure. there is the official doc, the red-hat version and also the wikipedia version. i know that this helped me quite a bit when i was starting up with linux.

of course, linux from scratch and the linux documentation project as suggested by others are very helpful too.

share|improve this answer
add comment

If I understand you question correctly you are looking for a bird's eye view on Linux. What the kernel does and how it interacts with user land, X11, window manager, toolkit how they are related and the like.

I don't know a good online source that covers all that (there really should be one), but I can recommend a book:

Modern Operating Systems by Andrew S. Tanenbaum.

The book is not Linux specific, but Chapter 10 is an excellent introduction about how all the components in Linux (and Unix in general) play together.

EDIT: Table of Contents (look at chapter 10).

share|improve this answer
1  
Thanks to all, it gave me an insight on how to search there is initially this [kernel map][1] which would give some highlights on the layers and functions covered in the kernel also, an [IBM article][2] on the anatomy of the kernel as well. and finally, the [Make Linux][3] I wish I could mark both answers as accepted, and more wish I could at least vote up for both answers, but my rep. points are low I cant do so. thanks for your help [1]: makelinux.net/kernel_map [2]: ibm.com/developerworks/linux/library/l-linux-kernel [3]: makelinux.net/reference –  A.Rashad May 27 '10 at 18:23
add comment

For a general overview (just wikipedia:): Linux distribution

And then study piece by piece every components of Linux :)

Another documentation source that could help you is: The linux documentation project

If you'd like to know more apecifically about the linux kernel, here's an excellent overview: Anatomy of the Linux kernel – History and architectural decomposition (and take a look at other linux articles as well). For a graphical structure there's this site: Interactive map of linux kernel.

And this is interesting, about the Unix philosophy:

Write programs that do one thing and do it well

From Basics of the Unix philosophy

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.