当前位置:文档之家› Win2000系统引导过程详解

Win2000系统引导过程详解

Win2000系统引导过程详解
Win2000系统引导过程详解

Win 2000系统引导过程详解

引言

本文旨在以Windows 2000为例讨论其系统的引导过程,以期较为深入的揭示引导过程中各种相关故障的原因并提出快捷有效的解决途径。

一、基于PC的Windows 2000引导过程

个人电脑上Windows 2000的引导过程是分好几个阶段进行的,通过了解Windows 2000引导过程中的各个阶段以及每个阶段使用到的文件,有助于我们之后更有效的分析和处理各种问题。Windows 2000的引导过程分为预引导、引导、内核加载、内核初始化和系统登陆五个阶段,如图一所示,

图一

表一则列出了在系统引导的不同阶段所引用的文件。

表一

在这里,我们暂不讨论Windows 2000操作系统的内部工作机制,以下通过图文结合的方式,简要给大家说明在这五个阶段,操作系统都在干些什么,那些程序发挥了作用。

第一步,预引导阶段,过程如图二所示,首先包括了系统加电自检,这个过程完成硬件设备的枚举和配置。其次计算机BIOS确定引导设备的位置,加载并运行Master Boot Record(MBR)主引导区内容(如lilo等)。然后扫描分区表,定位活动分区,并将活动分区上的引导扇区内容加载到内存中执行。最后加载系统盘根目录中的Ntldr文件,这也就是Windows 2000操作系统的加载程序。

图二

第二步,引导阶段,过程如图三所示,首先是初始化引导加载程序,这时Ntldr完成处理器模式切换和文件系统(FAT或NTFS)驱动的加载,如果使用了SCSI设备,Ntldr将Ntbootdd.sys加载到内存中运行。其次Ntldr读取系统盘根目录下的Boot.ini文件,屏幕显示Boot Loader Operating System菜单,等待用户选择要加载的操作系统,关于Boot.ini 文件的设置我们后面还会详细讨论,如果此时Ntldr没有找到Boot.ini文件,就默认从第一个磁盘的第一个分区的\Winnt位置加载系统,如果在所限时间内用户没有做出选择,则启动默认的选项。开始加载Windows 2000操作系统之后,Ntldr读取并运行程序https://www.doczj.com/doc/1c6488896.html, 以完成硬件的检测,如果安装了多操作系统,而且用户选择启动了Windows98或WindowsMe那么Ntldr就会加载并运行Bootsect.dos启动所选的操作系统。最后在Ntldr 加载了Windows 2000并收集了硬件信息后,紧跟着就根据用户选择调用系统的硬件配置文件,如果只有单一的硬件配置文件则直接作为默认配置调用,强烈建议用户自己在系统安装好了之后备份一份原始硬件配置文件。

图三

第三步,内核加载阶段,过程如图四所示,系统加载了默认硬件配置文件后,就会清除屏幕,接着屏幕上会显示出一个进度条(>>>…),Ntldr随后进行如下的内核加载操作,首先,加载Ntoskrnl.exe,但并不进行初始化。其次加载硬件抽象层文件(Hal.dll),然后加载%systemroot\System32\Config\System下的注册表项

HKEY_LOCAL_MACHINE\SYSTEM。之后选择加载控制集,初始化计算机。最后,根据控制集加载低级硬件设备驱动程序。

图四

第四步,内核初始化,过程如图五所示,当内核加载阶段结束时,内核就开始初始化,然后Ntldr就把系统的控制权转交给内核。这时屏幕上会显示图形界面,并带有一个状态栏指示加载状态。成功的初始化之后,首先,内核会使用检测到的硬件数据,在注册表中创建HKEY_LOCAL_MACHINE\HARDWA项。其次的工作是内核通过复制HKEY_LOCAL_MACHINE\SYSTEM\Select子键Current项引用的控制集创建Clone控制集。接着内核开始进一步加载和初始化设备驱动程序。最后,Session Manager(Smss.exe)按顺序启动Windows 2000更高一层次的子系统和各项服务。

图五

第五步,系统登陆,过程如图六所示,系统首先启动Winlogon.exe,随后启动Local Security Authority(Lsass.exe),这时屏幕显示出登陆对话框。然后系统执行Service Controller(Screg.exe)再次扫描注册表

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control项并自动加载其中系统的或用户的服务。至此,用户已成功的登陆到了Windows 2000系统,系统随后把Clone控制集拷贝到LastKnownGood控制集。以上五步顺利结束之后,才可以称之为Windows 2000的完美引导过程。

图六

二、关于高级引导

在正式引导系统之前,也就是第二步的第三项操作之前,如果按下F8键,就会进入高级引导选项,表二简要给出了高级引导的选项及它们的功能,可供您引导系统时参考。

表二

三、关于Boot.ini文件

上边第二步曾提到过Boot.ini文件,这个文件存储在系统盘根目录,它的作用是定位加载的操作系统硬件位置,特别是在安装了多重系统时用来实现选择启动的功能,以下是一个标准的Boot.ini文件,我们将对此作适当解析。

[boot loader]

timeout=30

default=multi(0)disk(0)rdisk(0)partition(1)\WINNT

[operating systems]

multi(0)disk(0)rdisk(0)partition(1)\WINNT="Microsoft Windows 2000 Professional" /fastdetect

C:\= "Microsoft Windows 98"

Boot.ini文件包括[boot loader]、[operating systems]两个部分,[boot loader]包括等待时间和默认引导系统两个参数,timeout后边的数字表示等待的秒数,default后边的是默认引导系统的位置。[operating systems]则包括安装的所有系统的ARC(Advanced RISC Computing)引导路径(等于号之前的部分)和他们在菜单上显示出的名字(引号之间的文本),以及启动参数(斜杠后边的部分)。下边的表三将详细向您解释ARC路径的含义

表三

注意,在multi、scsi、disk和rdisk序号都是从0开始的partition是从1开始的。下边的表四将向您解释常用启动参数的意义。

表四

因为boot.ini是系统保护文件,它隐藏在系统盘根目录下,并且具有只读属性,如要修改请先到文件浏览器的工具—〉文件夹选项—〉查看中选中显示所有文件和文件夹,取消隐藏受保护的操作系统文件,并且取消boot.ini文件的只读属性,方可使用记事本之类的编辑器编辑它。

四、制作两张关键的软盘

以上我们较为详细的了解了Windows 2000的启动过程和所涉及的一些文件和程序,下边我们就要未雨绸缪,充分利用资源武装自己,如此才能不怕将来故障和崩溃的挑战。

首先,我们制作一张Windows 2000的启动盘,请依下列步骤操作:

1.在运行Windows 2000的计算机上格式化一张软盘。

2.在安装系统的主分区上,将下表给出的文件拷贝到软盘上,请注意先显示隐藏文件。

3.立即使用制作好的启动盘引导系统,测试它是否工作正常。

接着我们再制作一张系统紧急修复磁盘,遵循路径,开始—〉程序—〉附件—〉系统工具—〉备份,我们就可以方便的制作紧急修复磁盘。注意,紧急修复磁盘存放着系统注册表和启动配置的相关文件,所以只能用于制作的这台机器,同时,该磁盘的内容应当及时的更新,尤其是当机器安装了新的硬件或软件,或者系统配置更改了之后。

五、常见引导故障的排除

上边说了那么多,完全是为了尽可能从理论上武装自己。在进入实战之前,我们先来整理一下所带的装备,1)Window2000安装盘2)启动软盘3)系统紧急修复磁盘4)备份好的系统原始硬件配置文件5)备份好的注册表文件6)一个冷静清楚的头脑。OK,这就加入Counter Failure小组,出发!

1)按下Power键,我们的旅行开始了。

2)首先系统开始自检(POST),如自检结束之前出了故障请咨询你的硬件供应J 商。还好没问题,系统自检顺利通过。什么?“Missing operating system”!怎么办?

诊断:这是个POST完成之后最普通的错误,你的运气不错。让我们试回忆一

下前边描述的预引导阶段,这里故障可能是由以下原因造成:

I) 系统分区未激活或激活失败,解决办法请使用FDISK类的工具激活。

II) 系统盘引导扇区损坏或配置错误,解决办法使用Windows 2000安装光盘,运行安装程序,利用其中自带的自动系统恢复功能修复引导扇区。

顺便提一下,虽然这里不是可怕的MBR损坏,但及时的备份MBR也是必要的,使用如KV 3000带的类似工具可以轻松实现,以备不时之需。

3)接着往下,“Ntldr is missing”!怎么办?

诊断:这个好办,用你的启动软盘启动引导系统,再将系统加载文件Ntldr拷贝到系统盘的根目录即可。如是多重系统请拷贝的C盘根目录。

4)接下来的故障就五花八门了,但是万变不离其中,我们都知道此时系统应当读取Boot.ini文件确定要引导的系统位置,所以如果Boot.ini文件出了问题,最简单的办法就是复制启动盘中的Boot.ini到系统盘根目录。

5)如果此时硬件配置文件出了问题,我们可以从配置文件菜单中选择先前备份的原始配置文件引导系统,或按下L键调用LastKnowGood上次成功的配置引导系统。这一般可以解决相关的系统设置错误。

6)如果5也不能奏效,就试试看能不能进入安全模式,如果能登陆,那么我们可以利用硬件设备管理器排除相关的一些硬件冲突,此时一定要注意显示隐藏设备,它们很可能就是元凶,一定要仔细辨识这些隐藏设备,删除那些并不存在或已不用的驱动程序以避免冲突。利用控制面板中的添加删除程序,我们还可以尝试着删除掉那些有可能造成系统不稳定的程序。试试看导入以前备份的注册表文件,我们也可以借此修复不少不太严重的注册表损坏的故障。

7)如果安全模式也不能登陆,甚至出现蓝屏,那么很可能是系统内核不能顺利的初始化和加载,导致这类严重故障的原因多半是因为系统关键性文件丢失。我们先采用Windows 光盘启动引导系统,运行安装程序,选择快速系统修复程序尝试修复系统;如果快速修复失败,程序会要求您使用紧急修复磁盘,使用您准备好的该磁盘再做一次尝试。

8)在进行故障诊断中,我们还可以参考表四Boot.ini文件中的一些开关选项,采用修改好的Boot.ini文件定制引导系统,以便更加准确的定位相关的故障。

9)登陆过程中,我们还可能碰到各式各样的软件故障,这些虽然不是致命的但也常常令人心烦,请您尝试着辨识这些软件或服务,在开始—〉程序—〉启动菜单中,或注册表编辑器中的

HKEY_LOCAL_MACHINE或是HKEY_CURRENT_USER目录树的

SOFEWARE/Microsoft/Windows/CurrentVersion/Run分支中我们可以查看到自行启动的

程序,删除相关键,可以关闭自启动那些可疑的应用程序。利用控制面板—〉管理工具—〉计算机管理中的事件查看器中我们也可以得到不少关于故障原因的提示,如果是系统加载的的服务出了故障,请在计算机管理—〉服务中将那些相关的服务项设置成手动启动,尝试重新运行相关软件的安装或卸载程序修复类似错误。

电脑启动过程详解!!!

电脑启动过程详解 1.当按下电源开关时,电源就开始向主板和其它设备供电,这时电压还不太稳定,主板上的控制芯片组会向CPU发生并保持一个RESET(重置)信号,让CPU内部自动恢复到初始状态,但CPU在些刻不会马上执行指令,当芯片组检查到电源已经开始稳定供电了(当然从不稳定,到稳定的过程只是一瞬间的事情)它便撤去RESET信号(如果是手工按下电脑面板上的RESET按钮来重启机器,那么松开该按钮时芯片组就会撤去RESET信号)CPU马上从地址FFFF0H处开始执行指令,这个地址实际在系统BIOS的地址范围内, 无论是Award BIOS,还是AMI BIOS,在这里的只是一条跳转指令,跳到系统BIOS中真正的启动代码处。 2.系统BIOS的启动代码首先要做的事情就进行POST(Power-On Self Test,加电后自检),POST的主要任务是检查系统中一些关键设备是否存在和是否正常工作,例如内存和显卡等设备.由于POST是最早进行的检查过程,此时显卡还没有初始化,如果系统BIOS在进行POST的过程中发现了些致命错误,例如没有找到内存或内存有问题 (此时只会检查640KB常规内存),那么系统BIOS就会直接控制嗽叭发生声音来报告错误,声音的长短和次数代表了错误的类型.在正常情况下,POST过程进行的非常快,我们几乎无法感觉到它的存在,POST结束之后就会调用其它代码来进行更完整的硬件检测。 3.接下来系统BIOS将查找显卡的BIOS,前面说过,存放显卡BIOS的ROM芯片的超始地址通常设在 C0000H,系统BIOS在这个地方找到显卡BIOS之后就调用它的初始化代码来初始化显卡,此时多数显卡都在屏幕上显示出一些初始化信息,介绍生产厂商,图形芯片类型等内容,不过这个画面几乎是一闪而过,系统BIOS接着会查找其它设备的BIOS程序,找到之后同样会调用这些BIOS内部的初始化代码来初始化相关的设备。 4.查找完所有其它设备的BIOS之后,系统BIOS将显示出它自己的启动画面,其中包括有系统BISO的类型,序列号和版本号等内容. 5.接着系统BIOS将检查和显示CPU的类型和工作频率,然后开始测试所有RAM,并同时在屏莫显示内存测试的速度,用户可以在CMOS设置中自行决定使用简单耗时少或详细耗时多的测试方式. 6.内存测试通过之后,系统BIOS将开始检测系统中安装的一些标准硬件设备,包括硬盘,CD-ROM,串口,并口,软驱等设备,另外绝大数较新版本的系统BIOS在这一过程中还要自动检测和设置内存的定时参数,硬盘参数和访问模式等. 7.标准设备检查完毕后,系统BIOS内部的支持即插即用的代码将开始检测和配置系统中安装的的即插即用设备,每找到一个设备之后,系统BIOS都会在屏幕上显示出设备的名称和型号等信息,同时为该设备分配中断,DMA通道和I/O端口等资源。 8.到这一步为止,所有硬件都已经检测配置完毕了,多数系统BIOS会重新清屏并在屏幕上方显示出一个表格,其它概略地列出了系统中安装的各种标准硬件设备,以及它们使用的资源和一些相关工作参数。 9.接下来系统BIOS会更新ESCD(Extended system configuration data,扩展系统配置数据.)ESCD是系统BIOS用来与操作系统交换硬件配置信息的一种手段,这些数据被存放在CMOS之中,通常ESCD数据只在系统配置发生改变后才会更新,所以不是每次启动电脑时都能够看到"updata ESCD … Success"这样的信息, 不过某些主板的系统BIOS在保存ESCD数据时使用了与widnwos 9x不相同的数据格式,于是widnwos 9x在启动过程中会把ESCD数据修改成自己的格式,但在下一次启动时,既使硬件配置没有发生改变,系统BIOS也会把ESCD的数据格式修改回来,如此循环,将会导致在每次启动电脑时,系统BIOS都要更新一遍ESCD,这就是为什么有些机器在每次启动时都会显示出相关信息的原因。 10.ESCD更新完毕后,系统BIOS的启动代码将进行它的最后一项工作,即根据用户指定的启动顺序从软件,硬件或光驱启动,以从C盘启动为例,系统BIOS将读取并执行硬盘上的主引导记录,主引导记录接着从分区表中找到第一个活动分区,然后读取并执行这个活动分区的引导记录,而分区引导记录将负责读取并执行 IO.SYS这是DOS和widnows 9x的IO.SYS(或NT的NTLDR)首先要初始化一些重要的系统数据,然后将显示出我们熟悉的蓝天白云,在这幅画面之下,widnwos 将继续进行DOS部分和GUI(图形用户界面)部分的引导和初始化工作. 上面介绍的便是电脑在打开电源开关(或按RESET)进行冷启动时所要完成的各种初始化工作,如果在DOS 下按Ctrl Alt DEL组合键,(或从windows中选择重新启动电脑)来进行热启动,那么POST过程将被跳过去,

{业务管理}IBM新一代银行核心业务系统

(业务管理)IBM新一代银行核心业务系统

新壹代银行核心业务系统 何京汉(IBM金融事业部银行资深方案经理) 背景 本文介绍新壹代核心银行所处的金融环境;结合目前国内银行所处的金融环境和银行客户的需求的新趋势,按照模型化银行(Modelingbank)的思想,介绍国内银行于设计新壹代银行核心系统是要考虑的主要问题。突出新壹代核心银行要解决的模型化银行的问题,国内系统和新壹代系统于观念上的差距,银行转型和信息规划设计的关系。国内从业人员普遍关心的金融产品概念(模型要点),核心银行的企业级客户文件(EnterpriseCIF)的原理。 国内外核心银行系统发展所处的环境 国外银行更换核心系统的努力 国外核心应用系统大多是70年代建成的,经过多年的运行后现状是:维护成本高,系统架构封闭,不易于加入新的功能且容易引起宕机。80年代至90年代国外银行,曾经试图更换这些系统,但大多归于失败,如花旗银行10亿美金的工程最终没有取得成功。 虽然,更换新的核心银行系统,难度极大,但银行仍于思考,为什么仍要将大量新的应用放于不灵活的且过时的系统上面?所以更换新的核心系统的努力仍于继续,只是吸取了80年代90年代的教训:银行必须采取新的策略去更新核心应用系统,以保证成功! 这些策略和市场趋势概括起来有: 用核心银行提供商的解决方案替换自我开发的核心银行系统。100强的银行70%的银行将去寻找"核心银行提供商的解决方案(Vendorbuiltsolutions)",即购买软件包。 主机方案的规模性得到验证。主机的核心银行方案,将继续流行。是因为它的规模性得到证实。尽管主机的技术没有新技术灵活,它的维护成本需要进壹步下降。 浏览器方式的解决方案(browser-basedsolutions)。市场上将会有更多的以浏览器方式出

Win2000系统引导过程详解

Win 2000系统引导过程详解 引言 本文旨在以Windows 2000为例讨论其系统的引导过程,以期较为深入的揭示引导过程中各种相关故障的原因并提出快捷有效的解决途径。 一、基于PC的Windows 2000引导过程 个人电脑上Windows 2000的引导过程是分好几个阶段进行的,通过了解Windows 2000引导过程中的各个阶段以及每个阶段使用到的文件,有助于我们之后更有效的分析和处理各种问题。Windows 2000的引导过程分为预引导、引导、内核加载、内核初始化和系统登陆五个阶段,如图一所示, 图一 表一则列出了在系统引导的不同阶段所引用的文件。

表一 在这里,我们暂不讨论Windows 2000操作系统的内部工作机制,以下通过图文结合的方式,简要给大家说明在这五个阶段,操作系统都在干些什么,那些程序发挥了作用。 第一步,预引导阶段,过程如图二所示,首先包括了系统加电自检,这个过程完成硬件设备的枚举和配置。其次计算机BIOS确定引导设备的位置,加载并运行Master Boot Record(MBR)主引导区内容(如lilo等)。然后扫描分区表,定位活动分区,并将活动分区上的引导扇区内容加载到内存中执行。最后加载系统盘根目录中的Ntldr文件,这也就是Windows 2000操作系统的加载程序。 图二 第二步,引导阶段,过程如图三所示,首先是初始化引导加载程序,这时Ntldr完成处理器模式切换和文件系统(FAT或NTFS)驱动的加载,如果使用了SCSI设备,Ntldr将Ntbootdd.sys加载到内存中运行。其次Ntldr读取系统盘根目录下的Boot.ini文件,屏幕显示Boot Loader Operating System菜单,等待用户选择要加载的操作系统,关于Boot.ini 文件的设置我们后面还会详细讨论,如果此时Ntldr没有找到Boot.ini文件,就默认从第一个磁盘的第一个分区的\Winnt位置加载系统,如果在所限时间内用户没有做出选择,则启动默认的选项。开始加载Windows 2000操作系统之后,Ntldr读取并运行程序https://www.doczj.com/doc/1c6488896.html, 以完成硬件的检测,如果安装了多操作系统,而且用户选择启动了Windows98或WindowsMe那么Ntldr就会加载并运行Bootsect.dos启动所选的操作系统。最后在Ntldr 加载了Windows 2000并收集了硬件信息后,紧跟着就根据用户选择调用系统的硬件配置文件,如果只有单一的硬件配置文件则直接作为默认配置调用,强烈建议用户自己在系统安装好了之后备份一份原始硬件配置文件。

计算机启动过程

计算机系统的启动过程 1:硬件自检 BIOS程序首先检查计算机的硬件是否满足运行的基本条件,这就叫做“硬件自检”(Power-On Self-Test),POST。如果硬件出现问题,主板会发出不同含义的蜂鸣启动就会终止,,如果没有问题,屏幕就会显示出CPU,内存,硬盘等信息。 2:启动程序 硬件自检完成之后,BIOS就把控制权转交给下一阶段的启动程序。 这时,BIOS需要知道“下一阶段的启动程序”具体存放在哪一个设备。也就是说,BIOS 需要有一个外部储存设备的排序,排在前面的设备就是优先被转交控制权的设备。这种排序叫做“启动顺序”(Boot Sequence)。 打开BIOS的操作界面我们就可以看到里面有一项是“设定启动顺序”。 主引导记录 BIOS按照“启动顺序”,把控制权转交给排在第一位的储存设备。 这时,计算机读取该设备的第一个扇区,也就是读取最前面的512字节,如果这512个字节的最后两个字节是0x55和0xAA,表明这个设备可以启动,否则则不可以启动控制权被交与“启动顺序”中的下一个设备。 这最前面的512个字节,就叫做"主引导记录"(Master boot record,缩写为MBR)。 1:主引导记录的结构 “主引导记录”只有512个字节,放不了太多东西。它的主要作用是,告诉计算机到硬盘的哪一个位置去找操作系统。 主引导记录由三个部分组成: (1)第1-446字节:调用操作系统的机器码。 (2)第447-510字节:分区表(Partition table)。 (3)第511-512字节:主引导记录签名(0x55和0xAA)。 其中,第二部分"分区表"的作用,是将硬盘分成若干个区。 2:分区表 硬盘分区有很多好处。考虑到每个区可以安装不同的操作系统,"主引导记录"因此必须知道将控制权转交给哪个区。 分区表的长度只有64个字节,里面又分成四项,每项16个字节。所以,一个硬盘最多只能分四个一级分区,又叫做"主分区"。 每个主分区的16个字节,由6个部分组成: (1)第1个字节:如果为0x80,就表示该主分区是激活分区,控制权要转交给这个分四个主分区里面只能有一个是激活的。 (2)第2-4个字节:主分区第一个扇区的物理位置(柱面、磁头、扇区号等等)。 (3)第5个字节:主分区类型。 (4)第6-8个字节:主分区最后一个扇区的物理位置。

Linux引导过程的九个步骤

Linux引导过程的九个步骤 【1】硬件和固件以及读入MBR BIOS 或其它固件系统读取硬盘或者其它引导设备(例如,光盘、软盘、网络引导等等)上的 主引导记录。 计算器在接通电源之后,首先由BIOS 进行自检,即进行所谓的POST(Power On Self Test), 然依据BIOS内设置的引导顺序从硬盘、软盘或CDROM中读入“引导块”。例如,通常BIOS中设置 的引导顺序为第一个IDE硬盘的C分区在最前面,那就是说,计算机开机启动时会把C盘的第0柱面,第0头的第1个扇区读入内存,然跳到那里开始执行。这个扇区有一个大家很熟悉的名字,它就 是: MBR(Main Boot Record)。换句话说,MBR里面存放的是一小段程序以及分区表的数据。 在使用WIN9X和DOS 时,这里面存放的代码就会把分区表里标记为Active 的分区的第一个 扇区(一般存放着操作系统的引导代码)读入内存并跳转到那里开始执行. 【2】引导装载程序运行 x86 系统上的Linux 系统通常使用LILO 或者GRUB。某些老式系统可能使用loadlin 通过 一个中间DOS 分区进行引导。在Power PC® 系统上,这可能是BootX或者yaboot。一般来说,引导装载程序是一种简单的程序,它知道到哪里寻找Linux 内核,可能在几个版本之间 进行选择,甚至可以选择同一计算机上的其它操作系统。 在用LILO 来引导LINUX 时,有两种选择: (a) BIOS->LILO(直接安装在MBR中)->KERNEL 把LILO直接安装在MBR,这时就由BIOS直接把LILO代码调入内存,然跳转执行LILO即可. (b) BIOS->MBR->LILO(安装在活动分区的第一个扇区)->KERNEL 把LILO安装在LINUX分区,必须把LINUX分区设为Active. 这时BIOS调入的是WIN9X/DOS 下的MBR代码,然由这段代码来调入LILO的代码(位于活动分区的第一个扇区). 在过去,对于能够设置可引导分区的最高柱面,最大硬盘大小, 在大硬盘上主分区的位置等等 有许多限制。因为在读入及执行MBR 时,操作系统还没有起来, 所以只能用BIOS 提供的 INT13 来进行磁盘操作,而INT13 只能读写硬盘1024 柱面之前的数据,由此可知任何操作 系统的引导代码都必须在1024 柱面之前。对于LINUX的引导装载程序来说,不管你是使用 方式(a)还是方式(b)来启动,都要保证KERNEL放在1024柱面之前。但因为LINUX不使用INT13 来进行硬盘操作, 所以在KERNEL启动以后, 就有读写1024 柱面以后数据的能力了。 不过, 现在几乎所有硬件系统的BIOS 都得到了改进, 能够处理实际上无限大的硬盘, 因此 现代的引导装载程序(至少是Linux的引导装载程序),对于分区大小或位置已经没什么限制了.

银行核心系统简介

核心业务系统 描述:银行核心业务系统主要功能模块包括:公用信息、凭证管理、现金出纳、柜员支持(机构管理和柜员管理)、总账会计、内部账管理、客户信息、活期存款、定期存款、外币兑换、同城票据交换、客户信贷额度管理、定期贷款、分期付款贷款、往来业务、资金清算、金融同业、结算、人行现代支付、外汇买卖业务、国债买卖、保管箱、租赁、股金管理、固定资产管理等。 一、核心系统背景 VisionBanking Suite Core是集团在总结二十余年银行应用系统集成经验的基础上,认真分析中国银行业未来面临的竞争形势,吸纳国外银行系统中先进的设计理念,推出的与国际完全接轨、功能完善、易学易用、扩充灵活、安全可靠的新一代银行核心业务系统。该系统覆盖了银行整个基础业务范围,有助于银行提供给客户更方便、快捷和贴身的“一站式”服务。 在VisionBanking Suite Core银行核心业务系统的开发中,集团将先进的系统设计思想、技术和国内、国际银行界先进的银行业务模式、管理方法结合在一起。系统采用先进的C-S-S三层体系结构,拥有强大、稳定的系统核心。 在全面覆盖传统银行业务的基础上,突出“金融产品”概念,银行可方便定制新的业务品种、产品组装或更改业务模式;系统整合了银行的业务服务渠道,方便银行增值服务范围的扩展,在无须更改系统内核的情况下方便实现与外部系统的互联互通。系统在深化“大集中” 、“大会计”、“一本帐”、“以客户为中心”、“综合柜员制”等成熟的设计思想的基础上,建立了从“客户”、“产品”到“服务” 、“渠道”的集约化经营管理模式,提供了真正的面向客户的服务模式,作到了为客户定制差别化的服务。从而实现了银行集中经营、规范业务、个性服务、丰富渠道、减少风险、辅助决策、降低成本的目标;系统设计严格遵守业务流程和会计核算分离原则,方便于系统快速部署和适应业务流程再造要求。 集团对核心业务系统的不断发展和完善就是以技术的进步来支持和推动银行业务的拓展,为银行的可持续性发展奠定了坚实的基础。 VisionBanking Core的系统实现原则满足了银行业务系统所要求的:先进性、实时性、可靠性、完整性、安全性、网络化、开放性、易扩展性、易维护性、易移植性。 二、系统功能说明

计算机开机过程解析

计算机启动过程解析 一、计算机启动过程 1、CPU供电 当用户按下电源按钮后,计算机首先要做的操作就是为主板部分芯片和CPU进行供电。 2、BIOS BIOS是写入到主板中的软件程序。CPU供电后,计算机接下来要做事情就是执行硬件中的BIOS程序。BIOS程序会检查计算机硬件能否满足运行的基本条件,这叫做“硬件自检”,顺序如下: (1)独显(集显属于CPU的一部分,不依靠BIOS自检) (2)内存 (3)硬盘和光驱(其实是探测SATA或者IDE口的过程,用于识别外界存储设备,并向他们供电,打开他们的功能。) (4)PS2接口(旧版鼠标键盘接口)、USB接口、声卡、网卡等等 硬件自检完成后,BIOS把控制权转交给下一阶段的启动程序。这时,BIOS需要知道,“下一阶段的启动程序”具体存放在哪一个设备。也就是说,BIOS需要有一个外部储存设备的排序,排在前面的设备就是优先转交控制权的设备。 3、主引导记录MBR BIOS按照“启动顺序”,把控制权转交给排在第一位的储存设备。即根据用户指定的引导顺序从存储设备中读取启动设备的主引导记录MBR。MBR只有512个字节,内含引导加载程序,在硬盘0磁道的第一个扇区,不属于任何一个分区,它告诉计算机到硬盘的哪一个位置去找操作系统。 4、启动操作系统 计算机通过MBR找到硬盘内操作系统的位置后,就会开始启动操作系统。启动硬盘内的操作系统有三种情况: (1)卷引导记录:如果计算机只安装了一个windows操作系统,那么硬盘通常会以第一种方式启动,即读取激活分区的第一个扇区,加载操作系统。 (2)启动管理器:如果计算机安装了双系统,硬盘一般会以该方式启动,让用户去选择启动哪个分区的操作系统。 (3)扩展分区和逻辑分区:只听说有,但从未见过,故不作讲解。 以Windows7为例,当控制权转交到操作系统后,计算机会执行如下操作: (1)加载内核程序(Ntoskrnl.exe)、硬件抽象层(hal.dll)、注册表SYSTEM项(system32\config\system)、设备驱动,然后控制权交给Ntoskrnl.exe (2)Ntoskrnl初始化执行体子系统,并初始化引导的和系统的设备驱动启动程序,为原生应用程序(如SMSS等)初始化运行环境,控制权交给SMSS.exe (3)SMSS初始化注册表,创建系统环境变量,加载Win32子系统(Win32k.sys),启动子系统进程(CSRSS、WinInit、Winlogon),控制权交给WinInit.exe和Winlogon.exe (4)WinInit启动服务控制管理器(SCM),本地安全子系统(LSASS),本地会话管理(LSM) (5)Winlogon加载登录界面程序(LogonUI),显示交互式登录对话框。等待用户登录后,根据注册表配置启动UserInit.exe和Explorer.exe (6)UserInit启动用户所有自启动进程,建立网络连接,启动生效的组策略 (7)Explorer提供交互式图形界面,包括桌面和文件管理。

linux内核启动 Android系统启动过程详解

linux内核启动+Android系统启动过程详解 第一部分:汇编部分 Linux启动之 linux-rk3288-tchip/kernel/arch/arm/boot/compressed/ head.S分析这段代码是linux boot后执行的第一个程序,完成的主要工作是解压内核,然后跳转到相关执行地址。这部分代码在做驱动开发时不需要改动,但分析其执行流程对是理解android的第一步 开头有一段宏定义这是gnu arm汇编的宏定义。关于GUN 的汇编和其他编译器,在指令语法上有很大差别,具体可查询相关GUN汇编语法了解 另外此段代码必须不能包括重定位部分。因为这时一开始必须要立即运行的。所谓重定位,比如当编译时某个文件用到外部符号是用动态链接库的方式,那么该文件生成的目标文件将包含重定位信息,在加载时需要重定位该符号,否则执行时将因找不到地址而出错 #ifdef DEBUG//开始是调试用,主要是一些打印输出函数,不用关心 #if defined(CONFIG_DEBUG_ICEDCC)

……具体代码略 #endif 宏定义结束之后定义了一个段, .section ".start", #alloc, #execinstr 这个段的段名是 .start,#alloc表示Section contains allocated data, #execinstr表示Section contains executable instructions. 生成最终映像时,这段代码会放在最开头 .align start: .type start,#function /*.type指定start这个符号是函数类型*/ .rept 8 mov r0, r0 //将此命令重复8次,相当于nop,这里是为中断向量保存空间 .endr b 1f .word 0x016f2818 @ Magic numbers to help the loader

多系统引导程序示例

多系统引导程序XORLDR应用示例 无忧论坛的Pauly大侠出品的多系统引导程序Xorldr,功能强大,可以使用多种启动方式,最多可管理8个启动项。Pauly本人也写了一个用户手册,详细介绍Xorldr程序的功能及用法,但限于篇幅没有具体讲解启动实例。本人在实际应用该程序的过程中积攒了一些心得经验,不敢独享,写下来供大家参考,以起到抛砖引玉的效果。 1.工具准备 在进行安装XORLDR之前,我们需要准备好以下工具软件: ●XORLDR多系统管理程序,Pauly大侠作品,目前最新版本是0.3.5 ● BOOTICE引导程序安装工具,亦为Pauly作品,最新版本是0.76 ● WinHex,强大的16进制文件编辑与磁盘编辑软件。 ● grub4dos、syslinux最新版,以及其它可能用到的工具,如本文中使用的9IN1_PXE_SRS合盘,我们要多次利用其中的工具。 2.磁盘分区及结构介绍 首先,我们使用Winhex来看一下磁盘上的分区及结构。 打开Winhex,按F9打开磁盘,如图1所示: (图1) 选择物理磁盘HD0,点击OK后可观察到磁盘(hd0)的分区情况,如图2所示。

(图2) 由图2可以看出我们这块磁盘的一些情况:容量为73.9G,分为四个分区,启始扇区(Start sectors)占用第0~62扇区;第一主分区占用第63~20996954扇区,10G空间;第二主分区占用第20996955~31503464扇区,共5G空间;第三主分区占用第31503465~94446134扇区,共30G空间;存在一个分区间隙占用第94446135~94446197扇区,共31.5KB空间;第四分区(逻辑分区)占用第94446198~154577429扇区,共28.7G空间;最后是一个分区剩余空间,占用第154577430~154587127扇区,共4.7MB空间。 实际分区根据自己的需要进行,不必局限于单主分区或者四主分区。一个比较理想的情况是三主分区加扩展分区,再设置若干逻辑分区,这样对于现在海量容量的硬盘来讲是比较合适的。 3.XORLDR菜单编辑示例 我们假定您已经做好了分区。以我这台老机器上分区为例:四个分区,第一、二主分区各安装一个winXP,并实现系统之间相互隐藏;第三主分区放置游戏及其它私密数据;第四分区(逻辑分区)放置我的9IN1_PXE_SRS维护工具合盘及系统备份等。根据实际需要,设计菜单项如图3所示。

深入Linux,Unix系统引导过程

最近一直在专注的学习一样技术,主要就是Linux/Unix系统的引导过程,从最基本的机器加电一直到最终系统能够正确的使用为止,这个过程中涉及到了相当多的技术,以及各种技术的推陈出新,都在这个重要的过程中得以体现。我之所以对这部分进行了分析,主要是工作上面需要这方面的知识,同时觉得很有意思,所以广泛的深入研究了一下。 好了,废话不多说了,开始来点干货吧,本文并非全部原创,参考了一些文章,具体请查看“参考”部分。 深入Linux/Unix系统引导过程 Linux/Unix系统的引导过程包含了很多阶段,但是对于一个标准的系统的引导,大致的阶段是类似的,不同的平台会有一些不同之处(x86平台下主要使用LILO、SYSLINUX或是grub,SPARC平台下主要使用OBP作为loader)。在接下来的章节中,我将从系统加电开始直至Linux/Unix内核被正式加载运行。 1 概述 首先从高层的架构分析一下Linux/Unix引导流程,下面的图作为一种更加形象的说明,这样你可以从上次梗概的了解整个流程,为下面深入的分析打下基础。 从这张图中,总结一下大概的流程,分别是:系统启动、阶段1引导、阶段2引导、内核加载和用户态的初始化。在系统启动阶段主要用的技术包括BIOS(最新的发展为EFI),阶段1引导主要用的技术包括Master Boot Record(最近的发展为GPT),阶段2引导主要用的技术包括LILO、GRUB、SYSLINUX、GRUB2(x86平台下)和OBP(SPARC平台下)。这张图属于比较古老的一种介绍,在目前的技术发展下,每个阶段都有了一些变化。 这里。

2.2 EFI启动 与传统MBR相比,GPT采用了不同的分区方式。 对于传统MBR,其结构主要如下: 上图即对上文中所述的很形象的说明,在图中看到MBR被分成三个部分,分别是:Bootloader、分别表以及Magic Number。其中Bootloader部分为stage1中被执行的起始部分,程序在这里被作为GRUB程序执行,详细的关于GRUB的内容将再下面章节中进行详细阐述。 相反,对于EFI系统中所采用的GPT分区方式,则采用了不同于MBR分区方式的形式,从下图中可以发现:

银行新一代核心业务系统介绍

上海银行“新一代核心业务系统”正式上线 今天,以“携手合作共创辉煌”为主题的上海银行新一代核心业务系统正式上线新闻发布会在沪举行。上海银行行长陈辛、惠普公司亚太和日本地区专业服务事业部高级副总裁连萧思、上海银行总工程师蒋洪、中国惠普有限公司企业计算及专业服务集团咨询与集成事业部总经理吴龙华等出席了上线仪式。上海银行这项基于T24的对公和国际业务系统,由中国惠普有限公司(HP)作为总集成商,协调在银行业具有国际领先地位的核心系统软件供应商Temenos等多家厂商,历时一年半的紧密合作,最终将该行200多家分支行基于核心业务系统的有关信息整体移植、一次切换上线成功。 该系统上线后,上海银行成为国内少数成功将核心业务系统建立在全球先进IT和应用系统平台上的商业银行。这不仅是上海银行以国际先进银行为标杆、培育核心竞争力、全面建设现代金融企业的一项重要举措,也是中国银行业以国际视野推动信息化战略规划、金融科技主导产品和服务创新的成功案例之一。同时,这也是惠普在中国金融业首次实施“核心业务系统”即获得成功的大型项目。有关人士认为,该项目的成功,对国内商业银行加速引进国外先进的核心业务系统,提升中国商业银行应对全球化挑战的核心竞争力,具有积极的示范效应和推动作用。 据介绍,上海银行新一代核心业务系统具备的主要功能特征包括:支持大集中模式的系统建设、产品创新和统一的客户服务;以客户为中心的设计理念,将客户信息作为独立的系统模块,设计专门的客户服务系统对客户信息进行专门的管理;参数化驱动的产品开发,将市场上成熟的业务产品按基本要素进行抽象,提取相同的部分作为参数,通过参数配置进行新产品的定制;提供多渠道全方位的个性化服务,丰富服务内容、提升服务质量,满足客户的个性化需求;通过系统的结构化设计,提供7×24小时全天候服务,避免服务渠道的冲突;分析、决策,提高管理水平,通过完整记录的客户信息和产品信息,为银行的分析、决策系统提供强有力的数据支持;监管、监控,提高抗风险能力,通过在产品、客户、账户、交易等各个层面实现集成的、业务模块间交叉的风险管理和监控。

多系统启动引导原理简介

多系统启动引导原理简介 多系统启动引导原理简介 大部分同学对多重系统引导原理的一知半解,我把我知道的简单介绍一下。 我先来介绍分区,从启动引导的角度讲,磁盘分区可以分为系统分区和引导分区。系统分区主要用于启动Windows系统,通常,系统分区总是C:\。而引导分区则是装有Windows操作系统的分区,即%SystemRoot%所在分区。 我们知道,主盘系统分区的第一个扇区中储存着系统的主引导记录,就是通常说的MBR区。它负责搜索磁盘上可启动的分区,然后把引导代码装入内存。对于DOS来说,MBR由Fdisk生成。主引导记录所在分区是系统分区,除此之外装有操作系统并能引导启动的分区是引导分区,引导分区的第一扇区储存着引导代码,用来引导本分区相应的操作系统。 下面我们来看下启动文件,Win98一般为: io.sys、msdos.sys、https://www.doczj.com/doc/1c6488896.html,、config.sys、autoexec.bat。五个。其中最重要的是头三个,是启动必需要的。 Win2000/XP的启动文件:ntldr、https://www.doczj.com/doc/1c6488896.html,、boot.ini、bootfont.bin、bootsect.dos、https://www.doczj.com/doc/1c6488896.html,、ntbootdd.sys等。其中ntldr和https://www.doczj.com/doc/1c6488896.html, 对于2000与XP共存的系统引导至关重要。 我简单介绍下各个文件的作用 ntldr,操作系统载入程序,位于系统分区根目录下。 boot.ini, 用于指定Windows的安装位置和磁盘属性。位于系统分区根目录下。bootfont.bin, 对非英文操作系统的启动菜单标题提供文字支持。不是必需的。bootsect.dos, 用于启动旧版操作系统所需要的引导扇区。 https://www.doczj.com/doc/1c6488896.html,, 用于检测计算机的硬件配置信息,并将这些信息返回给ntldr。ntbootdd.sys, 当ATA技术被禁用或磁盘控制器是SCSI类型或磁盘控制器不支持扩展INT 13调用时,提供驱动支持。而不用通过BIOS来直接访问。不是必需的。 在含有98或更旧版的多重启动上,问题就复杂点,要由OS Loaer来引导启动。先来认识下OS Loaer,它是Windows自带的多操作系统引导管理工具。注意OS Loaer存在于引导分区第一扇区而非MBR,就是在98或更旧版本系统所在分区。而常见的几种引导工具软件如BootMagic和System Commander则位于MBR区。现在我们假设硬盘里装有98、2000、XP三个系统,那么系统启动时首先由BIOS 把MBR装入内存,并把控制权交给MBR引导启动,计算机搜索MBR中的分区表,找出活动分区,如果在引导分区中有OS Loaer时,主引导记录加载OS Loaer,由OS Loaer读取boot.ini文件,并出现启动选择菜单,如果用户选择启动Win98,那么就装载Bootsect.dos这个文件。Bootsect.dos文件是Win98引导扇区的镜像,位于系统分区根目录下。如果多个操作系统中没有9X或更旧版本的话,则该文件不会存在。如果选Win2000/WinXP,那么就装载Ntldr和https://www.doczj.com/doc/1c6488896.html,,由Ntldr和Ntdetect引导启动Win2000/WinXP。(有必要说明一下,2000系统里的Ntldr和Ntdetect与XP里的Ntldr和Ntdetect是不同的,2000可由XP 的Ntldr和Ntdetect引导启动,反过来,2000里的Ntldr和Ntdetect却不能引导XP,这就是为什么在2000与XP共存的机里,重装了2000后不能引导XP 的原因。因为2000会用它的Ntldr和Ntdetect覆盖掉XP的) 呵呵我可能讲得有点啰嗦,不过大家看到这里也许明白我们在多系统环境下重装

Windows启动过程详解

Windows启动过程详解 我们每天都在和Windows打交道,很多人可能每天都要面对多次W indows的启动过程,可是您知道在Windows的启动过程背后,隐藏着什么秘密吗?在这一系列过程中都用到了哪些重要的系统文件?系统的启动分为几个步骤?在这些步骤中计算机中发生了什么事情?这些就是本文试图告诉您的。 本文的适用范围 随着技术的发展,我们能够见到的计算机硬件种类越来越多。以计算机上最重要的组件CPU来说,目前就有很多选择。当然,这里的选择并不是说AMD或者Intel这种产品品牌,而是指其内部的体系结构。目前常见的CPU体系结构主要基于复杂指令集(Complex I nstruction Set Computing,CISC)或者精简指令集(Reduced Ins truction Set Computing,RISC),我们常用的Intel的Pentium、C eleron系列以及AMD的Athlon、Sempron系列都是基于复杂指令集的,而这些基于复杂指令集的CPU还有32位和64位的寄存器数据带宽区别。关于这些指令集以及寄存器数据带宽之间的区别等内容比较繁杂,而且不是本文的重点,感兴趣的朋友可以自己在网上搜索相关内容。因为CPU种类的不同,在不同CPU的系统中运行的Wind ows的启动过程也有一些小的不同。本文将会以目前来说最普遍的,在x86架构的系统上安装的32位Windows XP Professional为例向

您介绍。 基本上,操作系统的引导过程是从计算机通电自检完成之后开始进行的,而这一过程又可以细分为预引导、引导、载入内核、初始化内核,以及登录这五个阶段。 在继续阅读之前,首先请注意图1,这是Windows XP的操作系统结构,其中包括了一些在后台工作的组件以及经常和我们打交道的程序。在了解Windows XP的启动过程之前,对系统结构有一个初步概念是很重要的。

湖北农信社新一代核心系统基本情况介绍教学总结

湖北农信社新一代核心系统基本情况介绍 湖北农信社新一代核心系统是全省统一的客户服务体系、经营管理体系和风险控制体系。对提升湖北农信社核心竞争能力,满足湖北农信社在战略管理、客户关系管理、产品管理、营销管理、渠道管理等方面的需求,以更好地满足业务发展的各项需要,更好地为广大客户提供服务,具有划时代的意义。 一、新系统的业务架构怎样 (一)业务定位。在充分借鉴同类机构先进的经营管理理念和最佳实践的前提下,高起点地进行信息化系统建设。既要满足湖北农信社现有的业务种类和特色业务,又要在管理理念和业务功能上快速改进,具备很强的产品创新和安全防范能力,努力达到或接近国有商业银行或股份制银行的水平,并逐步做到与国际接轨,具备与外资银行进行正面竞争的能力。 (二)基本原则。引进先进的产品及业务,支持目前各个法人机构的主要产品及业务;提升客户管理能力;提升产品创新能力和响应市场需求的速度;服务渠道多元化,并支持7*24服务;优化业务流程和提升业务管理能力;强化风险防御及控制。 (三)建设目标。从整体目标而言,不仅仅是要为湖北农信社提供一套先进的核心业务系统,还要为湖北农信社向现代金融企业迈进提供坚实的技术支撑和经营管理基础平台。延长市场营销和服

务触角,实现当前主要以柜面服务为主,转向未来以柜面、电子银行等全方位服务的服务营销模式,充分参与市场竞争,进一步发挥湖北农信社服务网络覆盖面广的优势;加强主动式客户营销服务,通过业务自动化程度的提高、业务流程的再造以及操作的智能化,一线员工特别是柜面人员将从现在繁重的记账、平账、报表等解放出来,将更多时间投入客户服务和营销,加强客户关系管理;提供建立全面数据分析平台的基础,支持资金管理体系、客户关系管理体系、营销体系、财务管理体系、风险管理体系、绩效评价体系的发展,使管理水平进一步提高。 二、新系统具有哪些业务功能 (一)核心系统功能。定位于为客户服务。包含公共管理、存款、贷款、支付结算、银行卡等主要功能模块。 1、公共管理。包括客户信息管理、柜员管理、现金管理、机构网点管理、重空管理等内容。以客户为中心的理念,全面收集客户与关联客户的资料,为后期业务的发展提供了丰富有用的信息;流程化的操作模式,让柜员的操作更简捷更便利;现金与重空的管理上实现了自动化,减少了差错,提高了效率。 2、存款功能。涵盖主要的对公和零售产品功能和处理,包括账户开立、账户管理、金融交易支持、计息结息、客户通知等处理。系统支持存款业务品种达到29种,能全面覆盖湖北现有业务,足够满足业务高速发展的产品需求;账户有效期和冻结期限的设置、关联客户账户信息查询、灵活的约转存期设定等全新的功能设计,

详细电脑启动过程

打开电源启动机器几乎是电脑爱好者每天必做的事情,面对屏幕上出现的一幅幅启动画面,我们一点儿也不会感到陌生,但是,计算机在显示这些启动画面时都做了些什么工作呢?相信有的朋友还不是很清楚,本文就来介绍一下从打开电源到出现Windows的蓝天白云时,计算机到底都干了些什么事情。 首先让我们来了解一些基本概念。第一个是大家非常熟悉的BIOS(基本输入输出系统),BIOS是直接与硬件打交道的底层代码,它为操作系统提供了控制硬件设备的基本功能。BI OS包括有系统BIOS(即常说的主板BIOS)、显卡BIOS和其它设备(例如IDE控制器、SCSI卡或网卡等)的BIOS,其中系统BIOS是本文要讨论的主角,因为计算机的启动过程正是在它的控制下进行的。BIOS一般被存放在ROM(只读存储芯片)之中,即使在关机或掉电以后,这些代码也不会消失。 第二个基本概念是内存的地址,我们的机器中一般安装有32MB、64MB或128MB内存,这些内存的每一个字节都被赋予了一个地址,以便CPU访问内存。32MB的地址范围用十六进制数表示就是0~1FFFFFFH,其中0~FFFFFH的低端1MB内存非常特殊,因为最初的8086处理器能够访问的内存最大只有1MB,这1MB的低端640KB被称为基本内存,而A0000H~BFFFFH要保留给显示卡的显存使用,C0000H~FFFFFH则被保留给BIOS使用,其中系统BIOS一般占用了最后的64KB或更多一点的空间,显卡BIOS一般在C0000 H~C7FFFH处,IDE控制器的BIOS在C8000H~CBFFFH处。 第一步:当我们按下电源开关时,电源就开始向主板和其它设备供电,此时电压还不太稳定,主板上的控制芯片组会向CPU发出并保持一个RESET(重置)信号,让CPU内部自动恢复到初始状态,但CPU在此刻不会马上执行指令。当芯片组检测到电源已经开始稳定供电了(当然从不稳定到稳定的过程只是一瞬间的事情),它便撤去RESET信号(如果是手工按下计算机面板上的Reset按钮来重启机器,那么松开该按钮时芯片组就会撤去R ESET信号),CPU马上就从地址FFFF0H处开始执行指令,从前面的介绍可知,这个地址

linux grub 引导启动过程详解

linux grub 引导启动过程详解 2008-01-08 17:18 这几天看了很多文档,算是对linux的启动过程有了比较细致的了解. 网上有很多文章谈到这方面的内容,但总觉得没有一篇完全的解析linux启动的 细节,下面是我小弟在学习的过程中总结出来的一些东东.这个是完整的linux启动过程, 不涉及内核,但是我觉得比较详细哦. (由于本人比较懒,这一段是从网上抄的) 机器加电启动后,BIOS开始检测系统参数,如内存的大小,日期和时间,磁盘 设备以及这些磁盘设备用来引导的顺序,通常情况下,BIOS都是被配置成首先检查 软驱或者光驱(或两者都检查),然后再尝试从硬盘引导。如果在这些可移动的设 备中,没有找到可引导的介质,那么BIOS通常是转向第一块硬盘最初的几个扇区, 寻找用于装载操作系统的指令。装载操作系统的这个程序就是boot loader. linux里面的boot loader通常是lilo或者grub,从Red Hat Linux 7.2起,GRUB( GRand Unified Bootloader)取代LILO成为了默认的启动装载程序。那么启动的时候grub是如何被载入的呢 grub有几个重要的文件,stage1,stage2,有的时候需要stage1.5.这些文件一般都 在/boot/grub文件夹下面.grub被载入通常包括以下几个步骤: 1. 装载基本的引导装载程序(stage1),stage1很小,网上说是512字节,但是在我的系统上用du -b /boot/grub/stage1 显示的是1024个字节,不知道是不是grub版本不同的缘故还是我理解有误.stage1通常位于主引导扇区里面,对于硬盘就是MBR了,stage1的主要功能就是装载第二引导程序(stage2).这主要是归结于在主引导扇区中没有足够的空间用于其他东西了,我用的是grub 0.93,stage2文件的大小是107520 bit. 2. 装载第二引导装载程序(stage2),这第二引导装载程序实际上是引出更高级的功能, 以允许用户装载入一个特定的操作系统。在GRUB中,这步是让用户显示一个菜单或是输入命令。由于stage2很大,所以它一般位于文件系统之中(通常是boot所在的根 分区). 上面还提到了stage1.5这个文件,它的作用是什么呢你到/boot/grub目录下看看, fat_stage_1.5 e2fs_stage_1.5 xfs_stage_1.5等等,很容易猜想stage1.5和文件系统 有关系.有时候基本引导装载程序(stage1)不能识别stage2所在的文件系统分区,那么这 时候就需要stage1.5来连接stage1和stage2了.因此对于不同的文件系统就会有不同的stage1.5.但是对于grub 0.93好像stage1.5并不是很重要,因为我试过了,在没有stage1.5 的情况下, 我把stage1安装在软盘的引导扇区内,然后把stage2放在格式化成ext2或者fat格式的软盘内,启动的时候照常引导,并不需要e2fs_stage_1.5或者fat_stage_1.5. 下面是我的试验: #mkfs.ext2 /dev/fd0 #mount -t ext2 /dev/fd0 /mnt/floppy #cd /mnt/floppy #mkdir boot #cd boot #mkdir grub (以上三步可用mkdir -p boot/grub命令完成) #cd grub #cp /boot/grub/{stage1,stage2,grub.conf} ./ #cd; umount /mnt/floppy

相关主题
文本预览
相关文档 最新文档