Re: Understanding IO architecture

From: Jeff Merkey
Date: Fri Jan 15 2016 - 11:34:51 EST


On 1/15/16, Mahmood Naderan <mahmood.nt@xxxxxxxxx> wrote:
> What is the good starting point to understand linux kernel? I know you
> are going to say Understanding the Linux Kernel, but that is for 2005!
> and kernel 2.6.
>
> We know that currently, the latest version is 4.4 and the version
> number updates quickly. So, where can I find the core of IO
> architecture, page cache, block layer and ... for the most stable
> architecture and not the version number?
>
>
> Regards,
> Mahmood
>

Man, it's huge and linux has evolved into a giant jump table these
days. I started programming on it in the 2.2 days and it was fairly
sophisticated them. You could start
with reviewing what's in the /kernel directory. For I/O study the bio
architecture. FOr block layer start in drivers/block.

Your best bet is to clone it, get yourself a good kernel debugger to
step through code and explore how things work.

start by cloning it so you have your own copy. Download and install
git then clone Linus' tree.

git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git

Then you can also get the linux-stable tree which has all the stable
versions of Linux

git clone https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git

if you need a good kernel debugger, try this one

http://jeffmerkey.github.io

Jeff