标签 [ kernel ] 下的全部文章

内核映像zImage是由一个压缩后的内核piggy.o,连接一段初始化及解压功能的代码(head.o misc.o)组成的。

一、文件linux/arch/arm/boot/compressed/head.S是linux内核启动过程执行的第一个文件——主要是解压内核、重定位代码并且跳转到真正的内核。

手工解压vmlinuz 2011年6月30日

一、2.6内核

1、解压vmlinuz

# od -t x1 -A d vmlinuz| grep "1f 8b 08 00"

0013920 f3 a5 fc 5e 8d 83 80 b8 38 00 ff e0 1f 8b 08 00

13920+12=13932

# dd if=vmlinuz bs=1 skip=13932 |zcat > vmlinux
# strings vmlinux|grep /sbin/
# strings vmlinux|grep 'init='                         -----查看第一个执行的程序,默认是/sbin/init
# strings vmlinux|grep 'Linux version'         -----查看内核版本号

2、解压initrd.img

# cp initrd.img /tmp/initrd.img.gz
# cd /tmp/ && gzip -d initrd.img.gz
# mount -o loop initrd.img /mnt            ----2.4内核
# mkdir initrd && cd initrd && cpio -ivmd <../initrd.img         ---2.6内核

交互式 Linux 内核地图 2010年11月30日

作为 Linux 系统心脏的 Kernel 想必是博大精深,无论是对于源代码的分析,还是想要查阅其中的函数,恐怕都是一件比较麻烦的事情。而 Interactive Linux kernel map(交互式 Linux 内核地图)这个在线工具的出现,无疑会为那些喜欢钻研 Linux 核心的朋友起到较为方便的作用。

漫游LINUX内核源码 2010年9月09日

Linux内核发展到今天已经非常庞大了,解压之后整个源码树近400MB,这可是纯文本的源代码啊。查看代码一般要借助于工具,否则你就像进入迷宫,很快就失去了方向,感觉乏味而迅速退出。利用vi/vim等发行版自带的命令其实就可以构造一个“行李包”,保证你也能功利性的涉足其中几小步。