
一预启动
首先计算机通电进行自检,并由BIOS(即基本输入输出系统)完成基本硬件配置,然后读取硬盘 的MBR(主引导记录)检查硬盘分区表以确定引导分区,并将引导分区上的 *** 作系统引导扇区调入内存中执行,此处即执行NTLDR( *** 作系统加载器)文件。
Windows2000/XP支持多重启动。它在安装时会首先将已存在的其它 *** 作系统引导扇区保存为BOOTSECTDOS文件(位于活动分区根目录 下),并修改系统引导扇区,以便系统启动时加载NTLDR文件,从而达到多重启动的目的。而Windows98则不具备这个功能,因此如果先装好 Windows2000/XP后再装Windows98会破坏掉Windows2000/XP的引导记录,导致2000/XP不能启动。
二启动
1首先进行初始化,NTLDR会把处理器从实模式转换为32位保护模式,根据实验它还包含 “Windows系统选择菜单”和“Windows高级选项菜单”(就是按F8后那个)中显示的内容
2读取BOOTINI文件。该文件位于活动分区根目录下,它的作用是使系统在启动过程中出 现选择菜单,由用户选择希望启动的 *** 作系统。如果选择启动 Windows2000/XP,NTLDR会继续引导进行以下过程;如果选择为非Windows2000/XP系统,NTLDR则会读取系统引导扇区副本 BOOTSECTDOS转入启动相应系统。 [1]
3系统加载NTDETECTCOM文件。由它来检测机器硬件,如并行端口,显示适配器等 等,并将收集到的硬件列表返回NTLDR用于以后在注册表中注册保存。
4如果Windows2000/XP有多个硬件配置文件,此时会出现选择菜单,等待用户确定 要使用的硬件配置文件,否则直接跳过此步,启用默认配置。
硬件配置文件是指保存计算机特定硬件配置的系统文件。可以创建多个不同的硬件配置文件以满足计算机在不同场合的应用。可以依次选择控制面板-〉系统 ->硬件-〉硬件配置文件作出修改。
三装载内核
引导过程开始装载Windows2000/XP内核NTOSKRNLEXE。这个文件位于 Windows2000/XP安装文件夹下的SYSTEM32文件夹中。随后,硬件抽象层(HAL)被引导进程加载,完成本步骤。
硬件抽象层(HAL):隐藏特定平台的硬件接口细节,为 *** 作系统提供虚拟硬件平台,使其具有硬件无关性,可在多种平台上进行移植。
四初始化内核
内核完成初始化,NTLDR将控制权转交Windows2000/XP内核,后者开始装载并初 始化设备驱动程序,以及启动WIN32子系统和WINDOWS2000/XP服务。
五用户登录
开始登录进程。由WIN32子系统启动WINLOGONEXE,并由它启动LOCAL SECURITY AUTHORITY(LSASSEXE)显示登录对话框。用户登录后,WINDOWS2000/XP会继续配置网络设备和用户环境。最后,伴随着微软之声和我们熟悉的个性化桌面,WINDOWS2000/XP漫长的启动过程终于完成
电脑 *** 作系统启动过程简单分为四部分,从BIOS自检、系统引导、启动内核、初始化系统。
1、BIOS自检:在计算机开机时,boot被自动执行,指引CPU把 *** 作系统从大容量存储器中传送到主存储器的易失区。BIOS的功能由两部分组成,分别是POST码和Runtime服务。POST阶段完成后它将从存储器中被清除,而Runtime服务会被一直保留,用于目标 *** 作系统的启动。
2、系统引导:将系统内核从外存读入内存,并将其放在合适的位置中。引导程序必须将内核的实模式下的初始化程序放在基本内存中,应将内核镜像放在1MB以上的位置。
3、启动内核:当处理器离开引导程序的时候,它处于实模式下面,需要执行实模式下面的引导程序后,跳转到保护模式解压内核镜像。
4、初始化系统:在内存中的为内存镜像,需要进行解压,解压后需要把内核放在适当的位置。借此就进入了保护模式的系统初始化了。
扩展资料:
为了缩减内核规模,实现内核的灵活性和适应性,内核被分为两部分:基础部分和扩展部分。基本内核实现内核最基本的管理功能,不随计算机的变化而变化;扩展功能实现内核一些独立的模块(如驱动和文件系统),会发生变化,被放在initrd中,需要引导程序一并读入。
内核启动时会在访问真正的根文件系统前先访问该内存中的 initrd 文件系统。在 boot loader 配置了 initrd 的情况下,内核启动被分成了两个阶段,第一阶段先执行 initrd 文件系统中的init,完成加载驱动模块等任务,第二阶段才会执行真正的根文件系统中的 /sbin/init 进程。
linux基本配置和管理----
linux系统启动详解1
系统启动的流程
BIOS
->
MBR+boot
code
->
执行引导程序:
GRUB
->
加载内核
->
执行init
->
运行runlevel2
启动详解
1
BIOS
1
BIOS
指的是基本的输入输出系统(basic
input
output
system),一般保存在主板上的BIOS芯片中
2
计算机启动的第一步一般都是先启动BIOS,然后BIOS去检查硬件以及查找可启动的设备
3
可启动的设备可以在BIOS中进行设置,包括USB
,
CDROM
,
HD等
2
MBR
1
MBR是512字节的,前446字节为引导代码
2
BIOS通过第一个扇区的512字节中最后两个字节为55aa来判断设备为启动设备
3
MBR只是去加载引导程序GURB
3
GRUB
1
GRUB是现在linux使用的主流的引导程序
2
GRUB可以引导几乎所有的 *** 作系统
3
GRUB的相关文件保存在/boot/grub中
4
KERNEL
1
MBR的引导代码将负责找到并加载linux的内核
2
linux内核保存在
/boot/vmlinuz
3
一般还会加载内核模块的打包文件
/boot/init
4
linux为了保持内核的精简会将一些不常用的驱动,功能编译为模块,然后在要用的时候动态的加载,而这些模块被保存为initrmfs文件
5
早期的linux是使用initrd文件,但是现在的绝大多数的linux版本都是使用initrmfs,这样能够更节省空间,更加灵活
6
命令dmesg可以用来查看被次启动内核的输出信息
5
INIT
1
init
是linux运行的第一个进程,init是所有进程的父进程,编号为1
2
调用/etc/rcd/rcsysinit来对系统进行初始化,挂载文件系统,并且根据运行级别启动相应的程序
3
linux的运行级别
0
关机
1
单用户模式
2
不带网络的多用户模式
3
命令行的多用户模式
4
未使用
5
图形界面多用户模式
6
重启
4
我们可以通过runlevel查看之前和当前的运行级别
5
命令init可以用来查看改变当前的运行级别
6
单用户修改root密码
1
为内核传递参数1或者是single可使系统进入单用户模式
2
单用户模式不启动任何的服务
3
单用户模式直接以root登录,不需要密码
4
我们可以通过passwd来修改root的密码
5
由于任何接近我们这个物理机的人都有可能修改我们的root密码,因此我们可以通过GRUB加密来防止密码被修改
6
我们在grubconf中的启动设置里面添加一行password
--md5
加密后的串
密码我们可以通过grub-md5-crypt
生成
开机上电。
CPU 在 ROM (在主板上,存放厂家编写的程序)中取出指令、执行。
执行该程序,检查硬件 。
如果没有 C 盘(硬盘),就会查找 A、B(软盘)。
如果什么盘都没有,CPU 就在屏幕上,显示: 。
此时,系统,已经启动完毕,可以正常工作了。
*** 作者,可以正常 *** 作。比如:设置 CMOS、 。
此时,CPU 的工作,完全正常。
启动厂家编好的某个程序,也是可以的。
比如:超市的收款机、等等。
如果想要使用 *** 作系统,那就太滥了。
也太简单了,小孩都会玩。
Win7 的引导分两部分:MBR 程序和 BCD (Vista 之前称为 NTLDR ,其实他们是一个东西,但改进了很多)。
MBR 程序就是 MBR 里面前 446 字节。Windows 每次用官方安装盘安装系统,都会强行覆盖这里的程序为自己的 MBR 程序,这个 MBR 的程序功能很简单,就是启动分区表里面标记为激活的分区。
之后 MBR 程序启动激活分区里面的 BCD (BCD 在分区特殊位置安装有特殊程序)。BCD 实现 F8 功能和正式启动 Windows7 。
扩展资料:
Win7使用说明:
安装
安装Win7的方法,与Vista并无太大的区别。对于从网络所获取的ISO镜像文件,可以刻盘安装,也可以使用DaemonTools等虚拟工具加载之后进行安装,如果是在一块新的硬盘上安装Win7,安装程序会自动保留200MB的系统分区,以便保存启动系统所需要的核心文件。
Win7系统磁盘占用空间为67GB (除去虚拟内存所占用的空间),与Vista相比,应当说还是可以令人接受的。
托盘技巧
系统托盘区所有的项目都可以设定是否显示。例如同时显示图标和通知信息,或者仅仅显示图标或通知信息,如果勾选“Alwaysshowalliconsonthetaskbar’复选框,可以和以前一样在任务栏显示图标。在Win7系统托盘最右边的一小块区域上单击,即可最小化所有窗口并显示桌面,十分方便。
集成WinRE
Win7集成的WinRE的功能使得用户恢复系统时不再需要光盘,这样在恢复系统时将更为方便。启动时按住F8功能键,选择“Repair my computer"即可进入WinRE环境。
安全诊断
Windows 7内置有很多功能各不相同的工具。微软提供了一个可下载的工具叫Sysinternals Process Monitor,旨在记录进程相关信息。
Process Monitor可以让用户通过一些详细信息如进程名称、进程ID, *** 作的路径、结果、长度和 *** 作的优先级等等,来准确洞察洞察应用程序的活动状态。
参考资料:
在预备知识中我们就知道了,开机运行的第一个程序就是 BIOS ,那么开机引导 *** 作系统的切入点也肯定是它了。
BIOS 识别 CMOS 读取硬件信息,从中找出可开机设备,一般自然是硬盘了。
当然,可开机设备不一定是硬盘,或者说你有两个硬盘,这里就不做讨论了。
BIOS 找到第一个扇区之后就查找 MBR 的位置,这是最基本的引导程序(Boot loader),这个程序一旦启动,BIOS 的任务才算圆满。
MBR 中的引导程序运行,这个时候用户可以对开机选项进行 *** 作,例如转交引导加载的任务给其他引导程序(之后还会提到)。
什么都做完了,当然该 *** 作系统登场,负责提供其基本功能。
Step 2 中提到了第一个扇区。实际上,这个扇区不止包含 MBR,它还包含了一个分区表,用来对硬盘进行分割,文件系统的最小单位是柱面,所以它是以记录柱面号来分割硬盘的。
例如第一分区是 1~100 柱面,那么分区记录项第一个的内容就是 1 和 100,其他以此类推。
我们所谓的"分区"实际上就是对这个分区表的记录进行修改。
由于分区表只有 64 bytes,所以最多只能有 4 个分区,这四个分区被称为主(Primary)分区。
那么你肯定要有疑问:分区可不一定只有 4 个啊。
是的,这种情况下就有一个相对于主引导分区的概念——扩展(Extended)分区。
如果我们拿主分区的其中一个存放另外一个分区表储存更多的分区信息,那我们就可以拥有更多分区。不是么。有时间理解一下下图吧。
这里需要注意的地方是,如果有 4 个主分区,我们就再也没有办法存放另外的分区信息,所以一般情况下会留下一个分区存放扩展分区信息,主分区因此最多只有 3 个。
扩展分区只能有一个( *** 作系统限制),扩展分区持续切割,形成新的分区,这就是逻辑分区(logical partition)。我们平时能作为数据访问的分区是主分区和逻辑分区,扩展分区不能格式化。
这里需要说明一下,每个分区都拥有自己的启动扇区,可以用来存放引导程序,并且该引导程序可以将管理权交给另一引导程序(其他分区的引导扇区)或者自己引导所在的分区,是的,可开机的内核文件不是在引导扇区内,而是在各分区内。
意思就是,你可以引导不止一种 *** 作系统,根据你在 boot menu 的选择,可以引导任何在 MBR 指向中的系统。
上述两个原因表明了为何需要先安装 windows *** 作系统,再安装 linux,否则将不会在开机的时候看到 linux 引导选项。
相对于 MBR 分区方案,GUID有以下优点 ( 源自百度百科 ):
GUID 扩展了分区表头,并且兼容了 MBR(第一扇区还是留有 MBR 的空间,为了兼容不支持 GUID 的硬盘),分区信息存放于分区表中,由 GUID HEADER 中的信息标识引导程序 efi 所在的分区。
开机过程(以下是我个人的理解,欢迎指正):
MBR 的引导过程中的知识来源于 《鸟哥的 linux 私房菜》一书,对于 linux *** 作系统感兴趣的同学我觉得很值得一读,GUID 相关知识还不够全面,如果各位看客发现了错误,欢迎指正,也欢迎各位与我交流,共同成长。
以上就是关于windows系统启动流程详解全部的内容,包括:windows系统启动流程详解、电脑 *** 作系统的启动的详细过程是什么、Linux基本配置和管理---- Linux系统启动详解等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)