カーネルを読んでみよう

先生:日経Linux「はじめてのカーネルソース」

2006-04 1st

カーネルを読むための基礎知識

  • データ構造の表現方法
  • プログラム構造の知識
  • カーネルコンパイルする技術
  • ライブラリの利用方法
  • エラー表示の確認方法

最新版のカーネルソースを入手する。公開サイトは http://www.kernel.org/ だ。まずは入手。tar.gzとtar.bz2があるみたい。

% mkdir /SOFT
% mkdir /SOFT/linux
% wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.19.tar.bz2
% cd /usr/src
% tar jxvf /Soft/linux/linux-2.6.19.tar.bz2

% ls
COPYING         MAINTAINERS     arch/     fs/       kernel/  scripts/
CREDITS         Makefile        block/    include/  lib/     security/
Documentation/  README          crypto/   init/     mm/      sound/
Kbuild          REPORTING-BUGS  drivers/  ipc/      net/     usr/

/usr/src/linux-2.6.19 に展開されたファイル名を見るとだいたいどんな役割なのかが想像つく。詳細は次のファイルを見ればよし。

% cat */Kconfig(英語)

% find linux-2.6.19 -name Kconfig
linux-2.6.19/block/Kconfig
linux-2.6.19/init/Kconfig
linux-2.6.19/mm/Kconfig
linux-2.6.19/arch/avr32/Kconfig
linux-2.6.19/arch/parisc/oprofile/Kconfig
linux-2.6.19/arch/parisc/Kconfig
linux-2.6.19/arch/sparc/oprofile/Kconfig
linux-2.6.19/arch/sparc/Kconfig
linux-2.6.19/arch/alpha/oprofile/Kconfig
linux-2.6.19/arch/alpha/Kconfig
[省略]