码迷,mamicode.com
首页 > 系统相关 > 详细

(004)Linux的开机启动

时间:2015-04-01 19:33:59      阅读:126      评论:0      收藏:0      [点我收藏+]

标签:

十年运维系列之基础篇 - Linux

作者:曾林 

联系:1494445739@qq.com

网站:www.jplatformx.com

版权:文章未经同意请勿转载


 

一、引言

  这里虽然介绍的是Linux的开机启动,但是有些操作或者流程是不局限于linux操作系统的,而是针对几乎所有的操作系统。

 

二、 BIOS

  当我们按下开机键的时候,电流会经过电源线流经整个主板。此时,一个加电的特殊电路会“敲打”一下CPU的被称作reset的引脚。此时cpu内的某些寄存器,比如cs、eip就会出现一些固定的内容。cs的值是0xFFFF、eip的值为0x0000。这就是告诉cpu从物理内存地址0xFFFF0处开始执行代码。哪里有什么代码呢?其实就一条,那就是让cpu跳转。跳到哪里去呢,就是这小节的主角——BIOS。

  BIOS本质上是一个程序,而且它是电脑最开始执行的程序。它会读取CMOS(在计算机领域,CMOS常指保存计算机的基本启动信息的芯片。有时,人们会把BIOS和CMOS混淆,其实CMOS是主板上的一块可读写的并行或串行FLASH芯片,是用来保存BIOS的硬件设置和用户对某些参数的设置)中的信息来了解硬件情况,比如CPU的总线时钟、启动设备的搜素顺序、硬盘大小与型号、系统时间、即插即用设备、各设备的I/O地址、中断请求等。之后BIOS开始做开机自检,比如确定可用的内存(有时还要自己测试一下)、确定时钟速度等。如果测试成功则开始对硬件进行初始化、设定即插即用设备、确定启动设备……最后从启动设备中读取MBR,并将控制权交给MBR中的程序;如果测试不成功则会发出声响来提示(最常见的就是内存错误发出声响)。

   无论什么操作系统,都要要从MBR做入口的。

 

(004)Linux的开机启动

标签:

原文地址:http://www.cnblogs.com/jplatformx/p/4384541.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!