PC机和嵌入式设备启动流程 一、PC机启动流程 流程 PC机启动时,首先启动BIOS(Basic Input Output System)进行硬件初始化:初始化系统时钟(外部晶振通过PLL锁相环倍频)、初始化内存(SDARM/DDR2/DDR3/DDR4/DDR5)、选择对应的启动方式(USB/硬盘/光驱…)。对应启动盘的最开始的程序是引导程序(grub/lilo…),引导程序(内存中)首先识别内存中有多少个系统,如果只有一个系统直接加载系统,当有多个操作系系统时,会让用户选择其中一个系统启动,系统启动以后,挂载文件系统,启动应用程序。操作系统是一个非图形化界面的程序,桌面是对应的应用程序。 1、BIOS启动 BIOS是一组固化到计算机内主板上一个ROM芯片上的程序,它保存着计算机最重要的基本输入输出的程序、开机后自检程序和系统自启动程序,它可从CMOS中读写系统设置的具体信息。其主要功能是为计算机提供最底层的、最直接的硬件设置和控制。 系统时钟 一个时钟信号(硬件的心跳) 2、引导程序启动 加载操作系统 3、OS操作系统启动 Windows、Linux、Mac OS 4、挂载文件系统 NTFS、FAT(16/32)、EXT(2/3/4)等 5、应用程序启动 二、嵌入式设备启动流程(Exynos 4412) 1、iROM固化代码【基本硬件初始化,判别启动方式(SD/USB/EMMC),读取存储介质中的一部分数据到iRAM】 2、iRAM代码运行BootLoader第一阶段(初始化系统时钟,初始化内存,搬运BootLoader到内存) 3、内存中运行BootLoader第二阶段【初始化基本的硬件设备(串口,EMMC,SD) ,加载OS到内存】,第二阶段才有打印信息。 4、内存中运行操作系统(Linux、Windows、Mac OS) 5、挂载文件系统 6、运行应用程序 BootLoader = BIOS + 引导程序