当前位置:Linux教程 - Linux - 如何制作简易Floppy Liunx (1)

如何制作简易Floppy Liunx (1)



        
    开机过程简述
    在还没有谈论如可制作简易 Floppy Linux 之前,首先要了解整个开机的过程。当一部计算机一打开电源时,计算机里的 BIOS 就会找寻有无系统开机磁片,此时会有两种状况产生:第一种状况就是找到系统开机磁片,此时就会从系统开机磁片中的第 0 磁区、第 0 磁柱载入可开机磁区;另一种状况就是找不到系统开机磁片的话, BIOS 就会找寻硬盘的 MBR ( Master Boot Record ),并且执行记录在 MBR 上的开机载入程序( Boot Loader )进行开机。

    不管是从软碟开机也好,还是从硬盘开机也罢,首先整个操作系统的 loader (就 Linux 来讲就是 LILO 『 LInux LOader 』)会载入 Linux Kernel ,而 Kernel 一起动的第一件事就是进入保护模式( protected mode ),所有的硬件交由 Kernel 来控制,摆 脱 BIOS 的牵绊。

    一旦 Kernel 载入完毕之后,开始初始化系统所有硬件设备。当所有的硬件初始化完成之后,接著系统将尝试挂载( mount ) root filesystem 。Root filesystem 就是被挂上当作” / ”目录的 filesystem 。Kernel 必须知道从哪里可以找到 root filesystem ( PS :一般系统磁盘片的 root filesystem 会被制作成以 ramdisk 执行方式的影像档【 image 】),否则系统就会停止运作( halt )。

    当 root filesystem 成功 的载之后,就会去执行 init 这个程序,init 就会开始检查 /etc/inittab ,找出该档中标明 sysinit 这一行,并执行该行的 script ,在 redhat 上为 rc.sysinit ,而 rc.sysinit 会进行系统的初始化动作,在这里我打算不介绍这支 script 有兴趣可以参考 redhat 上的 rc.sysinit 。

    当 rc.sysinit 执行完毕之后,控制权立即转回到 init 的手中,接下来马上进入默认 runlevel 。若内定的 runlevel 为 3 的话, init 就执行 /sbin/mingetty 激活 virtual console 并且以 : ” login :”提示让使用者登入,完成开机。登入后系统会提供一个 shell 给使用者,就可以使用 Linux 。若 runlevel 为 5 的话,则在开启 virtual console 之后,init 会再执行 xdm 激活 X window system ,让使用者以 xdm 界面登入。

    以上就是 Linux 开机的过程。

    发布人:yfy001 来自:linuxfab