linux启动流程
linux启动流程
linux启动流程一、linux启动流程从哪里到哪里
本文旨在描述linux中内核如何调用启动,然后如何从img的文件系统切换到硬盘的过程。
描述起于:linux-2.6.11initmain.c中函数 static int init(void * unused)
描述止于:etcrc.drc.sysinit文件的被调用
二、描写linux启动流程
在linux代码linux-2.6.11initmain.c中init这个函数被调用时,初始启动的文件
系统镜像:ootinitrd-2.6.11.12.img(以2.6.11.12内核为例)已被gru加载到
内存中,并已挂载到根目录上("")。
1、我们先来看看initrd-2.6.11.12.img到底是个什么东西:
[root@wj-server1 tmp]# cd tmp
[root@wj-server1 tmp]# cp ootinitrd-2.6.11.12.img tmpinitrd-2.6.11.12.gz
[root@wj-server1 tmp]# gunzip initrd-2.6.11.12.gz
解压缩后的文件为:
[root@wj-server1 tmp]# ls -l initrd-2.6.11.12
-rw-r--r-- 1 root root 846848 7月 31 17:01 initrd-2.6.11.12
是一个CPIO格式的文件,该文件格式是种文件镜像让我们将它解开到一个目录中看看
其中的具体内容:
[root@wj-server1 tmp]# mkdir initrd
[root@wj-server1 tmp]# cd initrd
[root@wj-server1 initrd]# cpio -i ..initrd-2.6.11.12
1654 locks
[root@wj-server1 initrd]# gzip ..initrd-2.6.11.12
[root@wj-server1 initrd]# mv ..initrd-2.6.11.12.gz ..initrd-2.6.11.12.img
|
评论暂时关闭