My overview of the kernel --> do I have it correct ??

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi;

I have just finished reading a couple of texts on the Linux kernel as
well as searching some questions down through the source code.  I am
sitting back trying to build an initial minds-eye view of what I have
learned.  I was hoping I could get some comments.  

I don't need a detailed critic; just "yes basically you've got it" or
"No your way off the mark" or "Yes, but you have forgotten this
important piece"

So here goes:

        The kernel is basically a set of tables (C struct) that are used
        to transform human type info into machine usable data.  Each
        table has only a few fields in order to keep each row or record
        within a machine (double, quadruple) word size and often only
        has a few records per table.  The kernel is usually in the
        process of adding or deleting records from these tables.
        
        The tables often have pointers to each other in order to build
        up a full process.  Some of the most important tables are; the
        inode, the file descriptor, the socket, the process, the
        interrupt handler, the signal handler and the error handler
        tables. (If I am on the right track, but have forgotten an
        important table please tell me).
        
        At the top of the kernel or at least at the top of a kernel
        process (function call) are #define -ed constants that reflect
        the architecture of ones particular machine.  At least that
        seemed true when I dug down into the ultimate origin of each
        constant.
        
        If I throw in some re-usable functions to lock and block, I can
        pretty well count on having a mental image of what's going on in
        the kernel (barring lots of specialized curly-cues).

The description above is a first take, mind you.  I am not looking for a
complete analysis of the kernel, I am just looking for a mental image as
a way into understanding.

All suggestions and corrections will be used for mental fodder.

-- 
Regards Bill;
Fedora 9, Gnome 2.22.3
Evo.2.22.3.1, Emacs 22.2.1


--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx
Please read the FAQ at http://kernelnewbies.org/FAQ


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux