日本电子维修技术 LINUX引导过程



--非常有用

详细内容:
首先说明一下,这里讲的是LINUX引导经过的步骤,而不涉及KERNEL引导过程的内部细节。希望本文能对初学LINUX的朋友有所帮助。

一、从BIOS到KERNEL
计算机在接通电源之后首先由BIOS进行自检,即进行所谓的POST(Power On Self Test),然后依据BIOS内设置的引导顺序从硬盘、软盘或CDROM中读入“引导块”。如通常BIOS中设的引导顺序为C在最前面,那么就把C盘(第一个IDE硬盘)的第0柱面,第0头的第1个扇区读入内存,然后跳到那里开始执行。这个扇区有一个大家熟悉的名字——MBR(Main Boot Record)。换句话说,MBR里面存放的是一小段程序以及分区表的数据。在使用WIN9X和DOS时,这里面放的代码就把分区表里标记为Active的分区的第一个扇区(一般存放着操作系统的引导代码)读入内存并跳转到那里开始执行。

而在用LILO引导LINUX时,有两种选择:
(1) 把LILO安装在MBR。这时就由BIOS直接把LILO代码调入内存,然后跳转执行LILO。即
BIOS——>LILO(在MBR中)——>KERNEL
(2) 把LILO安装在LINUX分区,并把LINUX分区设为Active。这时,BIOS调入的是
WIN9X/DOS下的MBR代码,然后由这段代码来调入LILO的代码(位于活动分区的第一个扇区)。即
BIOS——>MBR——>LILO(在活动分区的第一个扇区)——>KERNEL
因为在读入及执行MBR时,操作系统还没有起来,所以只能用BIOS提供的INT13来进行磁盘操作,而INT13只能读写硬盘1024柱面之前的数据,由此可知任何操作系统的引导代码必须在1024柱面之前。对于LINUX来说,不管你使用方式(1)还是方式(2)启动,都要保证KERNEL放在1024柱面之前。只有在KERNEL起来以后,才有读/写1024柱面以后数据的能力。因为LINUX不使用INT13来进行硬盘操作。从上面我们也可以看到,不存在什么“WIN95可以,而LINUX不可以”的问题,作为操作系统要能被正确引导,在现有的BIOS下,它们的引导部分都必须在1024柱面之前。如果操作系统本身还是基于INT13来进行磁盘操作的话,那么它也只能读/写1024柱面之前的数据。


二、从KERNEL到login prompt
在KERNEL起来之后,将生成第一个进程——init,实际上是执行了/sbin/init。Ini
t的工作是根据/etc/inittab来执行相应的脚本进行系统初始化,如设置键盘、字体,装载模块,设置网络,等等。

/etc/inittab文件的每一行包括四个域:
id:runlevels:action:process
runlevel是运行模式,通常为0-6。模式0是halt,模式6是reboot,模式1是单用户,模式2/3是多用户,模式5是运行xdm以图形界面方式登录。Id为标识符,通常为两个字母。Process为需要执行的程序或脚本。Action包括有:
(1) defaultinit —— 指定缺省的运行模式(runlevel)
(2) sysinit —— 指定运行的第一个程序/脚本,此时runlevels域不起作用。
(3) boot —— 在sysinit之后执行,runlevels域不起作用
(4) bootwait —— 同boot,但init会等待该命令结束
(5) once —— 在进入有runlevels指定的运行模式时运行
(6) wait —— 同上,但init会等待该命令结束
(7) respawn —— 在进入相应runlevel时执行,并且若该进程结束,init会再起
一个进程执行同样的命令
(8) ctrlaltdel —— 指定在用户按下Ctrl-Alt-Del时执行的命令

对于Linux来说,执行的顺序为:
/etc/rc.d/rc.sysinit # 由init执行的第一个脚本
/etc/rc.d/rc $RUNLEVEL # $RUNLEVEL为缺省的运行模式
/sbin/mingetty # 等待用户登录

三、/etc/rc.d/rc.sysinit及/etc/rc.d/rc
在Linux中,/etc/rc.d/rc.sysinit主要做在各个运行模式中相同的初始化工作,包括:
调入keymap以及系统字体
启动swapping
设置主机名
设置NIS域名
检查(fsck)并mount文件系统
打开quota
装载声卡模块
设置系统时钟
等等。

/etc/rc.d/rc则根据其参数指定的运行模式来执行相应目录下的脚本。凡是以Kxx开头的,都以stop为参数来调用;凡是以Sxx开头的,都以start为参数来调用。调用的顺序按xx从小到大来执行。例如,假设缺省的运行模式是3,/etc/rc.d/rc就会按上述方式调用/etc/rc.d/rc3.d/下的脚本。
值得一提的是,Linux中的运行模式2、3、5都把/etc/rc.d/rc.local做为初始化脚
本中的最后一个,所以用户可以自己在这个文件中添加一些需要在其他初始化工作之后,登录之前执行的命令。

四、init在等待/etc/rc.d/rc执行完毕之后(因为在/etc/inittab中/etc/rc.d/rc
的action是wait),将在指定的各个虚拟终端上运行/sbin/mingetty,等待用户的登录。至此,LINUX的启动结束。

五、对于TurboLinux,作为sysinit的脚本是/etc/rc.d/rc.S,运行模式1的脚本是
/etc/rc.d/rc.K,运行模式2、3、4、5的脚本是/etc/rc.d/rc.M。另外,装载模块
的命令都集中在/etc/rc.d/rc.modules中,/etc/rc.d/rc.local为登录前执行的最
后一个脚本。

呵呵。补充两点:
1 lilo的下半部分。lilo程序是很长的,而且还要记录很多参数由此,MBR的512个字节是不能容纳下lilo的。再说MBR里面还有分区表什么的。由此。lilo的下半部分写在磁盘的linux分区中。通常是/boot/boot.b这个文件。在/etc/lilo.conf中有一项install=/boot/boot.b就是制定lilo开始执行的时候读取的部分。lilo在载入完install=/boot/boot.b以后,才给出系统的boot:提示符合。让你选择kernel并启动之。

2 kernel参数,上面讲述kernel启动的时候没有考虑kernel的参数。如果是缺省参数的情况下,通常系统使用rdev中的指定分区启动。当然,系统是需要给kernel一些参数,让kernel启动的时候可以选择根分区等参数。


评论
{:4_83:}知识还不够,看不懂

评论
现在是GRUB引导的比较多吧.想装多系统也方便 电路 电子 维修 我现在把定影部分拆出来了。想换下滚,因为卡纸。但是我发现灯管挡住了。拆不了。不会拆。论坛里的高手拆解过吗? 评论 认真看,认真瞧。果然有收 电路 电子 维修 求创维42c08RD电路图 评论 电视的图纸很少见 评论 电视的图纸很少见 评论 创维的图纸你要说 版号,不然无能为力 评论 板号5800-p42ALM-0050 168P-P42CLM-01
 ·日本中文新闻 唐田绘里香为新剧《极恶女王》剃光头 展现演员决心
·日本中文新闻 真子小室夫妇新居引发隐私担忧
·日本中文新闻 前AKB48成员柏木由纪与搞笑艺人交往曝光
·日本学校 {日本国际学校}梅田インターナショナルスクール
·日本学校 LINE:sm287 陳雨菲、20歳、台湾からの留学生、東京に来たばかり
·日本留学生活 出售平成22年走行48000km 代步小车
·日本华人网络交流 円相場 一時1ドル=140円台まで上昇?
·日本华人网络交流 问日本华人一个问题
·日本旅游代购 富山接机
 ·生活百科 英国转澳大利亚转换插头
·汽车 【求助】修车遇到困难怎么办?

维修经验

CPUcpu-z 1.77版低调发布

日本维修技术更新: New benchmark “submit and compare” feature New clocks dialog reporting all system’s clock speeds in real-time Preliminary support for Intel Kaby Lake AMD Bristol Ridge processors 主要是增加了支持I、A两个新架构的 ...

维修经验

CPU这几天经常开机黑屏,热重启后又正常

日本维修技术这几天经常开机黑屏,热重启后又正常,今天热重启也不管用了。折腾半天总算点亮,显示超频失败,以前出这个画面我是不理它的,直接重启就能正常进系统了,今天不敢托大,因为 ...

维修经验

CPU超频求助!关于华擎H170和6700K

日本维修技术问题见楼主的show贴 https://www.chiphell.com/thread-1634895-1-1.html 这次华擎的H170 Hyper最大的特色应该是自带时钟发生器可以自由超外频 可是楼主好久没有折腾超频了。。。 两图中除了CPU外频 以 ...

维修经验

CPU液态金属会侵蚀cpu核心吗?

日本维修技术前阵子看到有人说,液态金属时间长了会侵蚀cpu铜盖,那么问题来了,这货会不会侵蚀核心呢? 评论 这玩意儿好像只对铝起反应 评论 不是说,cpu的盖子是铜的吗。。。 评论 不会,核 ...

维修经验

CPUm6i究竟支不支持e3 1231v3

日本维修技术官网上看支持列表没写有e3 1231v3,装机帖又有人晒,百度也没个明确答案,那究竟能不能点亮?有在用的chher说一下么 评论 升级最新bios肯定可以支持 评论 我的p67evo官网上也没说支持12 ...

维修经验

CPU华擎 HYPER 妖板 正确玩法

日本维修技术600元的 B150,10相供电,释放洪荒之力 注意必须官网 Beta 区的 BIOS 有 AVX 的 CPU 可能会掉缓存 启动时按 X 键激活 SKY OC,重启后进入 BIOS 160924164727.jpg (95.63 KB, 下载次数: 1) 2016-9-24 17:47 上传 ...

维修经验

CPUE5 2686 V3和i7 6800K如何选择

日本维修技术默认用,不超频,两者功耗是一模一样的 E5 2686 V3:2.0主频,3.5睿频, 18核心36线程 ,45M L3 咸鱼大约2500~3000元 i7 6800K : 3.5主频,3.8睿频 ,6核心12线程 ,盒装3000元 评论 性能应该是26 ...

维修经验

CPUHD530硬解4K能力还是有点弱呀!

日本维修技术播放器用PotPlay 64bit,各种优化后,跑4K @120Hz视频只能到70帧左右的速度,勉强能用! 显示器用的4K的优派VP2780 未标题-1.jpg (211.97 KB, 下载次数: 0) 2016-9-26 21:29 上传 评论 这个估计你没优化 ...

维修经验

CPU6900k 1.25V到4.2体质怎么样

日本维修技术如图,体质怎么样,ring是35,没敢试了,都说ring高了毁硬件 评论 不错的U,但不算雕,上4.4就大雕了,这电压上4.5的目前没见有人发图 评论 谢谢前辈告知 评论 我这个用1.2V超的4.2,R ...

维修经验

CPUI3 6100 华擎B150M pro4超4.5g测试。

日本维修技术看看论坛没多少i3 6100的帖子,就转下自己发的show贴里面的数据,给大家参考下。家里还有当年的神U i3 540 oc 4.5G在给老妈用。 不知道数据上正常吗?有6100的朋友可以告诉下,另外是不有 ...

维修经验

CPU7系u会兼容100系主板吗?

日本维修技术RT,听说要推200系板,100系还能用吗以后。。 评论 兼容的 评论 感谢!以后换u就行了,目前消息200系板会有新的特性吗? 评论 24条PCI-E 3.0通道、支持Intel Optane混合存储技术、十个USB 3 ...

维修经验

CPU有心入5820k了,求教下温度问题

日本维修技术一直徘徊在6700k和5820k之间,6700k现在这德行直接把我推向了5820k啊,从2600k升级上来,三大件都要换,现在唯一疑惑的是IB-E ex这种顶级风冷能不能压住4.5g的5820呢?毕竟刚刚买一个多月。 ...

维修经验

CPU6600&6600K才100的差价

日本维修技术太少了吧。。。 6600.JPG (106.91 KB, 下载次数: 0) 2016-10-1 10:30 上传 评论 毕竟只是i5而已…… 评论 上z170 6600也能超,等于没区别,差价能有100已经不错了 评论 然后又见不超频人士推荐超频 ...