System Boot Sequence

    1. 当机器被打开时,等电源稳定之后,电源会发送一个“加电成功信号”给芯片,以启动时钟生成器(8284);
    2. 然后,CPU重新自设定为初试状态,开始准备运行。当CPU最初被启动的时候,系统RAM中是空的,没有任何内容可供执行。当然CPU设计者也知道这一点,所以他们对CPU进行了预先编程,以让CPU在这个阶段总是去查找系统BIOS ROM中的一个固定的位置,以启动BIOS Boot Program,这个位置为FFFF0h,这个位置是UMA临近结尾的位置。之所以选择这个位置是因为,这样就不会引起由于ROM的大小改变而造成的兼容性问题。既然FFFF0h到UMA结束的位置之后16个字节,所以这里只放置着一个Jump指令,以进一步跳转到真正的BIOS startup program的位置。(不同的BIOS厂商可以将其放在不同的位置,只需要通过Jump指定就可以了)。
    3. 然后BIOS开始实施Power-On Self Test(POST),在这个过程中,如果遇到任何错误,Booting处理就会结束,机器会被挂起。
    4. 然后BIOS开始查找显示卡。精确的说,是查找被内建在BIOS内部的显示卡程序,并执行它,它通常被放在C0000h的内存位置,它的作用是初始化显示卡。绝大多数的现代显示卡都能够在显示器上显示它的相关信息。这就是为什么当我们开机的时候,首先会在显示器的顶端会出现关于显示卡的信息。
    1. 然后BIOS会查看其它设备的ROM,看一看这些设备之中哪些存在着BIOS,通常能够在C8000h的位置找到IDE/ATA硬盘的BIOS,并执行它们。如果找到任何其它设备的BIOSes,它们也会被执行。
    2. 然后BIOS显示它的启动屏幕。
    3. 然后BIOS开始做进一步的检测,包括我们可以看到的内存容量检测。在这个阶段,如果BIOS遇到任何错误,BIOS将会在屏幕上显示它的错误信息。
    4. 然后BIOS会根据自己的"系统资源列表“,来对系统资源进行进一步的检测以确定究竟那些系统资源(设备)被安装在机器上。有些计算机会逐步显示这些被检测到的设备。
    5. 如果BIOS支持Plug&Play标准,它将会检测和配置Plug&Play设备,并显示这些它找到的设备。
    6. 等着一些检测结束之后,BIOS会在系统屏幕上列出一个检测总结。
    7. 然后BIOS开始寻找一个启动设备,你可以通过配置BIOS来决定其搜索的顺序,这些设备包括Floppy Disk(A:),或者Hard Disk(C:),甚至还可以包括CD-ROM Driver或者其它设备。
    8. 当找到响应的启动设备之后,BIOS将会查找Boot信息以开始OS的启动过程。如果它找到了一个Hard Disk,它将会查找一个位于Cylinder 0, Head 0, Sector 1的Master Boot Record(硬盘的第一个扇区),如果它找到的是Floppy Disk,它也会读区软盘的第一个扇区。
    9. 如果找不到任何启动设备,系统将会显示一条错误信息,然后冻结系统。如果找到了响应的启动设备,BIOS会将读到的扇区放在内存7C00h的位置,并跳转到那里执行它。从此以后,就有硬件启动阶段进入了OS启动阶段。
时间: 2024-08-10 21:30:38

System Boot Sequence的相关文章

Linux Booting Process: A step by step tutorial for understanding Linux boot sequence

One of the most remarkable achievement in the history of mankind is computers. Another amazing fact about this remarkable achievement called computers is that its a collection of different electronic components, and they work together in coordination

In Depth : Android Boot Sequence / Process

What happened when I press power on button in my Android device ? What is Android boot sequence ? What is linux kernel ? What is different between desktop linux kernel and Android linux kernel ? What is bootloader ? What is Zygote ? What is x86 and A

CentOS 5与6的启动流程

Linux主要组成部分:kernel+rootfs+库+程序 kernel(内核):进程管理.内存管理.网络管理.驱动程序.文件系统.安全功能等 rootfs(根文件系统):glibc(库文件)等 库:函数集合,function,调用接口 procedure:过程调用,无返回值 function:函数调用,有返回值 内核设计流派: 单内核设计:所有功能集成于同一个程序中.例如:Linux 微内核设计:每种功能使用给一个单独子系统实现.例如:windows,solaris Linux内核特点: 支

UEFI secure boot

UEFI (replaces BIOS) has a firmware validation process that will operate a hardware detect by Trusted Platform Module(TPM) , called UEFI Secure Boot, which is defined in Chapter 27 of the UEFI 2.3.1 specification. Secure boot defines how platform fir

OpenWrt's build system

https://wiki.openwrt.org/about/toolchain Table of Contents OpenWrt build system – Features OpenWrt build system – Make Targets OpenWrt build system – Build sequence Patch management Packaging considerations Documentation History OpenWrt's build syste

Installing Ubuntu on a Pre-Installed Windows 8 (64-bit) System (UEFI Supported)

http://askubuntu.com/questions/221835/installing-ubuntu-on-a-pre-installed-windows-8-64-bit-system-uefi-supported If you are using Ubuntu 15.04+, many issues are now solved, so there is no need to follow this guide except if you are using any Ubuntu

【转载】How to develop your own Boot Loader【怎么样开发自己的bootloader】

How to develop your own Boot Loader 怎么样开发自己的bootloader Table of content[目录] 1. Who may be interested[谁可能会感兴趣]2. What is Boot Loader [Bootloader是什么]3. Be ready to go deeper [深入探究前的准备]3.1. So what language you should know to develop Boot Loader [开发Boot

PatentTips - System and method to deprivilege components of a virtual machine monitor

BACKGROUND INFORMATION An embodiment of the present invention relates generally to virtualization platforms and, more specifically, to a system and method to run components of a virtual machine monitor at a reduced privilege level. Various mechanisms

VMWare File Format Learning && Use VHD File To Boot VMWare

目录 1. Virtual Machine Introduce 2. Vmware Image File Format 3. VHD File Format 4. Convert VHD File Into VMDK 5. Run Virtual PC virtual machine in VMware Workstation 1. Virtual Machine Introduce A virtual machine (VM) shares physical hardware resource