电脑硬件启动顺序

电脑硬件启动顺序
电脑硬件启动顺序

电脑硬件启动顺序

第一步:当我们按下电源开关时,电源就开始向主板和其它设备供电,此时电压还不稳定,主板控制芯片组会向CPU发出并保持一个RESET(重置)信号,让CPU初始化。当电源开始稳定供电后(当然从不稳定到稳定的过程也只是短暂的瞬间),芯片组便撤去RESET信号(如果是手动按下计算机面板上的Reset按钮来重启机器,那么松开该按钮时芯片组就会撤去RESET信号),CPU马上就从地址FFFF0H处开始执行指令,这个地址在系统BIOS的地址范围内,无论是Award BIOS还是AMI BIOS,放在这里的只是一条跳转指令,跳到系统BIOS中真正的启动代码处。

第二步:系统BIOS的启动代码首先要做的事情就是进行POST(Power On Self Test,加电自检),POST的主要任务是检测系统中的一些关键设备是否存在和能否正常工作,如内存和显卡等。由于POST的检测过程在显示卡初始化之前,因此如果在POST自检的过程中发现了一些致命错误,如没有找到内存或者内存有问题时(POST过程只检查640K常规内存),是无法在屏幕上显示出来的,这时系统PIOS可通过喇叭发声来报告错误情况,声音的长短和次数代表了错误的类型。在正常情况下,POST过程进行得非常快,我们几乎无法感觉到这个过程。

第三步:接下来系统BISO将查找显示卡的BIOS,存放显示卡BIOS的ROM 芯片的起始地址通常在C0000H处,系统BIOS找到显卡BIOS 之后调用它的初始化代码,由显卡BIOS来完成显示卡的初始化。大多数显示卡在这个过程通常会在屏幕上显示出一些显示卡的信息,如生产厂商、图形芯片类型、显存容量等内容,这就是我们开机看到的第一个画面,不过这个画面几乎是一闪而过的,也有的显卡BIOS使用了延时功能,以便用户可以看清显示的信息。接着系统BIOS会查找其它设备的BIOS程序,找到之后同样要调用这些BIOS内部的初始化代码来初始化这些设备。

第四步:查找完所有其它设备的BIOS之后,系统BIOS将显示它自己的启动画面,其中包括有系统BIOS的类型、序列号和版本号等内容。同时屏幕底端左下角会出现主板信息代码,包含BIOS的日期、主板芯片组型号、主板的识别编码及厂商代码等。

第五步:接着系统BIOS将检测CPU的类型和工作频率,并将检测结果显示在屏幕上,这就是我们开机看到的CPU类型和主频。接下来系统BIOS开始测试主机所有的内存容量,并同时在屏幕上显示内存测试的数值,就是大家所熟悉的屏幕上半部份那个飞速翻滚的内存计数器。这个过程我们可以在BIOS设置中选择耗时少的"快速检测"或者耗时多的"全面检测"方式。

第六步:内存测试通过之后,系统BIOS将开始检测系统中安装的一些标准硬件设备,这些设备包括:硬盘、CD-ROM、软驱、串行接口和并行接口等连接的设备,另外绝大多数新版本的系统BIOS在这一过程中还要自动检测和设置内存的定时参数、硬盘参数和访问模式等。

第七步:标准设备检测完毕后,系统BIOS内部的支持即插即用的代码将开

始检测和配置系统中安装的即插即用设备,每找到一个设备之后,系统BIOS都会在屏幕上显示出设备的名称和型号等信息,同时为该设备分配中断、DMA通

道和I/O端口等资源。

第八步:到这一步为止,所有硬件都已经检测配置完毕了,系统BIOS会重新清屏并在屏幕上方显示出一个系统配置列表,其中概略地列出了系统中安装的各种标准硬件设备,以及它们使用的资源和一些相关工作参数。

第九步:按下来系统BIOS将更新ESCD(Extended System Configuration Data,扩展系统配置数据)。ESCD是系统BIOS用来与操作系统交换硬件配置信息的数据,这些数据被存放在CMOS(一小块特殊的RAM,由主板上的电池来供电)之中。通

常ESCD数据只在系统硬件配置发生改变后才会进行更新,所以不是每次启动机器时我们都能够看到"Update ESCD... Success"这样的信息,不过,某些主板的系统BIOS在保存ESCD数据时使用了与Windows 9x不相同的数据格式,于是Windows 9x在它自己的启动过程中会把ESCD数据转换成自己的格式,但在下一次启动机器时,即使硬件配置没有发生改变,系统BIOS又会把ESCD的数据格式改回来,如此循环,将会导致在每次启动机器时,系统BIOS都要更新一遍ESCD,这就是为什么有的计算机在每次启动时都会显示"Update ESCD... Success"信息的原因。

第十步:ESCD数据更新完毕后,系统BIOS的启动代码将进行它的最后一项工作,即根据用户指定的启动顺序从软盘、硬盘或光驱启动。以从C盘启动为例,

系统BIOS将读取并执行硬盘上的主引导记录,主引导记录接着从分区表中找到第一个活动分区,然后读取并执行这个活动分区的分区引导记录,而分区引导记录将负责读取并执行IO.SYS,这是DOS和Windows 9x最基本的系统文件。Windows 9x的IO.SYS首先要初始化一些重要的系统数据,然后就显示出我们熟悉的蓝天白云,在这幅画面之下,Windows将继续进行DOS部分和GUI(图形用户界面)部分的引导和初始化工作。如果系统这中安装有引导多种操件系统的工

具软件,通常主引导记录将被替换成该软件的引导代码,这些代码将允许用户选择一种操作系统,然后读取并执行该操作系统的基本引导代码(DOS和Windows

的基本引导代码就是分区引导记录)。

简化后的启动过程

1、PC电源的ON----显示器、键盘、机箱上的灯闪烁;

2、检测显卡----画面出现短暂的显卡信息;

3、检测内存----随着嘟嘟的声音画面上出现内存的容易信息;

4、执行BIOS----画面上出现简略的BIOS信息;

5、检测其它设备----出现其它设备的信息(CPU,HDD,MEM......);

6、执行OS(操作系统)的初始化文件----STARTING WINDOWS2000等。

F BOOTROM引导模式和程序

28335使用串口烧写程序 串口烧写是一种相对较方便的烧写方式,相对于仿真器或是CAN烧写,相对于仿真器或是USB转CAN的设备,串口是一种非常廉价的烧写方式,而且也不需要安装专业的集成开发环境CCS等,但是不能实现在线调试,因此也只适用于程序基本不用再调整或大批量的场合。 F28335的存储器映射图如下:

BOOTROM 是一块8K X 16的只读存储器,位于地址空间0x3FE000~0x3FFFFF,片内BOOTROM在出厂时固化了引导加载程序以及定点和浮点数据表,片上BOOTROM的存储映射如下图所示: 1.内BOOT ROM数学表: 在BOOT ROM中保留了4K X 16位空间,用以存放浮点和IQ数据公式表,这些数据 公式表有助于改善性能和节省SARAM空间。 向量表: CPU向量表位于ROM存储器0x3FE000~0x3FFFFF段内,如下图所示。复位后,当VMAP=1,ENPIE=0(PIE向量表禁止)时,该向量表激活。

在内部BOOT ROM引导区中能够调用的唯一向量就是位于0x3FFFC0的复位向量。复位向量在出厂时被烧录为直接指向存储在BOOT ROM空间中的InitBoot函数,该函数用于开启引导过程。然后通过通用I/O引脚上的检验判断,决定具体引导模式。引导模式与控制引脚之间的关系如下图所示: Bootloader特性: Bootloader是位于片上引导ROM中的在复位后执行的程序,用于在上电复位后,将程序代码从外部源转移到内部存储器。这允许代码暂时存储在掉电不丢失数据的外部存储器内,然后被转移到高速存储器中执行。 引导ROM中的复位向量将程序执行重定向至InitBoot函数。执行器件初始化之后,bootloader将检查GPIO引脚的状态以确定您需要执行哪种引导模式。这些选项包括:跳转至闪存、跳转至SARAM、跳转至OTP或调用其中一个片上引导加载例程。

软硬件开发流程及要求规范

0目录 0目录 (2) 1概述 (4) 1.1硬件开发过程简介 (4) 1.1.1硬件开发的基本过程 (4) 1.1.2硬件开发的规化 (4) 1.2硬件工程师职责与基本技能 (5) 1.2.1硬件工程师职责 (5) 1.2.2硬件工程师基本素质与技术 (5) 2软硬件开发规化管理 (6) 2.1硬件开发流程 (6) 2.1.1硬件开发流程文件介绍 (6) 2.1.2硬件开发流程详解 (6) 2.2硬件开发文档规 (10) 2.2.1硬件开发文档规文件介绍 (10) 2.2.2硬件开发文档编制规详解 (11) 2.3与硬件开发相关的流程文件介绍 (13) 2.3.1项目立项流程: (13) 2.3.2项目实施管理流程: (14) 2.3.3软件开发流程: (14) 2.3.4系统测试工作流程: (14) 2.3.5部验收流程 (14) 3附录一. 硬件设计流程图: (16)

4附录二. 软件设计流程图: (17) 5附录三. 编程规 (18)

1概述 1.1 硬件开发过程简介 1.1.1硬件开发的基本过程 硬件开发的基本过程: 1.明确硬件总体需求情况,如CPU 处理能力、存储容量及速度,I/O 端口的分配、接口要求、电平要求、特殊电路(厚膜等)要求等等。 2.根据需求分析制定硬件总体方案,寻求关键器件及电路的技术资料、技术途径、技术支持,要比较充分地考虑技术可能性、可靠性以及成本控制,并对开发调试工具提出明确的要求。关键器件索取样品。 3.总体方案确定后,作硬件和单板软件的详细设计,包括绘制硬件原理图、单板软件功能框图及编码、PCB 布线,同时完成发物料清单。 4.领回PCB 板及物料后由焊工焊好1~2 块单板,作单板调试,对原理设计中的各功能进行调测,必要时修改原理图并作记录。 5.软硬件系统联调,一般的单板需硬件人员、单板软件人员的配合,特殊的单板(如主机板)需比较大型软件的开发,参与联调的软件人员更多。一般地,经过单板调试后在原理及PCB布线方面有些调整,需第二次投板。 6.部验收及转中试,硬件项目完成开发过程。 1.1.2硬件开发的规化 硬件开发的基本过程应遵循硬件开发流程规文件执行,不仅如此,硬件开发涉及到技术的应用、器件的选择等,必须遵照相应的规化措施才能达到质量保障的要求。这主要表现在,技术的采用要经过总体组的评审,器件和厂家的选择要参照物料认证部的相关文件,开发过程完成相应的规定文档,另外,常用的硬件电路(如ID.WDT)要采用通用的标准设计。

计算机启动过程

从打开电源到开始操作,计算机的启动是一个非常复杂的过程。 零、boot 的含义 先问一个问题,"启动"用英语怎么说? 回答是boot。可是,boot 原来的意思是靴子,"启动"与靴子有什么关系呢?原来,这里的boot 是bootstrap(鞋带)的缩写,它来自一句谚语: "pull oneself up by one's bootstraps" 字面意思是"拽着鞋带把自己拉起来",这当然是不可能的事情。最早的时候,工程师们用它来比喻,计算机启动是一个很矛盾的过程:必须先运行程序,然后计算机才能启动,但是计算机不启动就无法运行程序! 早期真的是这样,必须想尽各种办法,把一小段程序装进内存,然后计算机才能正常运行。所以,工程师们把这个过程叫做"拉鞋带",久而久之就简称为boot 了。 计算机的整个启动过程分成四个阶段。 一、第一阶段:BIOS 上个世纪70 年代初,"只读内存"(read-only memory,缩写为ROM)发明,开机程序被刷入ROM 芯片,计算机通电后,第一件事就是读取它。 这块芯片里的程序叫做"基本輸出輸入系統"(Basic 无效/Output System),简称为BIOS。1. 1 硬件自检 BIOS 程序首先检查,计算机硬件能否满足运行的基本条件,这叫做"硬件自检"(Power-On Self-Test),缩写为POST。 如果硬件出现问题,主板会发出不同含义的蜂鸣,启动中止。如果没有问题,屏幕就会显示出CPU、内存、硬盘等信息。 1. 2 启动顺序 硬件自检完成后,BIOS 把控制权转交给下一阶段的启动程序。 这时,BIOS 需要知道,"下一阶段的启动程序"具体存放在哪一个设备。也就是说,BIOS 需要有一个外部储存设备的排序,排在前面的设备就是优先转交控制权的设备。这种排序叫做"启动顺序"(Boot Sequence)。 打开BIOS 的操作界面,里面有一项就是"设定启动顺序"。 二、第二阶段:主引导记录 BIOS 按照"启动顺序",把控制权转交给排在第一位的储存设备。 这时,计算机读取该设备的第一个扇区,也就是读取最前面的512 个字节。如果这512 个字节的最后两个字节是0x55 和0xAA,表明这个设备可以用于启动;如果不是,表明设备不能用于启动,控制权于是被转交给"启动顺序"中的下一个设备。 这最前面的512 个字节,就叫做"主引导记录"(Master boot record,缩写为MBR)。 2. 1 主引导记录的结构 "主引导记录"只有512 个字节,放不了太多东西。它的主要作用是,告诉计算机到硬盘的哪一个位置去找操作系统。 主引导记录由三个部分组成: (1)第1-446 字节:调用操作系统的机器码。 (2)第447-510 字节:分区表(Partition table)。 (3)第511-512 字节:主引导记录签名(0x55 和0xAA)。 其中,第二部分"分区表"的作用,是将硬盘分成若干个区。 2. 2 分区表 硬盘分区有很多好处。考虑到每个区可以安装不同的操作系统,"主引导记录"因此必须知道将控制权转交给哪个区。

硬件开发管理办法及流程图

硬件开发管理流程 1目的 1.1使开发人员的开发工作能够按照一定的程序进行,保证开发工作的顺 利进行。 1.2使开发工作的管理流程化,保证开发产品的品质。 1.3确保有较高的开发与管理效率。 2范围 2.1本流程适用于硬件部产品硬件开发过程。 3职责 3.1由硬件部负责产品的硬件开发,修正及发行相关文件。 3.2由品管部负责产品开发过程的审核、监督与产品质量的控制、评定。4定义 4.1PCB:Printed Circuit Board印刷电路板 4.2BOM:Bill Of Material 材料表 5程序 5.1新产品硬件开发程序 5.1.1接收新需求 5.1.1.1由市场部提交已通过可行性分析的《客户需求明细》。 5.1.2硬件部针对客户产品需求进行详细硬件参数分析,制定设计方案 与规划,并填写《硬件开发设计规划》 5.1.3原理图设计 5.1.3.1硬件部完成产品原理图设计。 5.1.3.2同部门相关人员负责原理图设计的检查与审核,如不通过 则进行修改,并填写《硬件设计记录表》。 5.1.4PCB设计 5.1.4.1硬件部依据本公司PCB设计规范完成PCB图设计。 5.1.4.2同部门相关人员负责PCB设计的检查与审核,如不通过则 进行修改,并填写《硬件设计记录表》。 5.1.5PCB光绘文件设计 5.1.5.1PCB设计完成并通过审核后,出相应光绘文件。 5.1.5.2同部门相关人员负责光绘文件的检查与审核,如不通过则 进行修改,并填写《硬件设计记录表》。 5.1.6BOM表设计 5.1. 6.1根据原理图出相应产品BOM表。 5.1. 6.2同部门相关人员负责BOM表的检查与审核,如不通过则进 行修改,并填写《硬件设计记录表》。 5.1.7PCB打样,申请器件样片 5.1.7.1硬件部将PCB光绘文件及《PCB制作申请表》交至采购部 门联系安排PCB板打样。 5.1.7.2硬件部到材料库领用配套调试所需的器件,如材料库没有 的,硬件部将欠缺的器件清单交至采购部进行采购。 5.1.8焊接与装配样板 5.1.8.1PCB打样完成后,硬件部负责完成样板的器件焊接与装配。

BootLoader引导程序

BootLoader引导程序 一、实验目的 1.学会配置linux下的minicom和windows下的超级终端 2.了解bootloader的基本概念和框架结构 3.了解bootloader引导操作系统的过程 4.掌握bootloader程序的编译方法 5.掌握bootloader程序的使用方法 二、实验内容 1. 学习x-loader 作用和编译过程 2.学习uboot作用和编译过程 3.学习bootloader的操作 三、实验设备 PentiumII以上的PC机, LINUX操作系统 四、BOOTLOADER程序说明 完整的系统由x-loader、u-boot、kernel(内核)、rootfs(根文件系统)组成,x-loader 是一级引导程序,其作用是初始化CPU,拷贝u-boot到内存,然后把控制权交给u-boot。当OMAP3530上电时,memory controller(内存控制器)还未初始化,这个任务便由完成的x-loader。初始化外部RAM控制器,把u-boot读到外部RAM,之后把控制入口交给。u-boot 是二级引导程序,其作用主要是引导内核,提供映像更新,同用户进行交互。系统结构图如 下: 1. BootLoader的作用 在嵌入式系统中,BootLoader的作用与PC机上的BIOS类似,其主要作用:(1)初始化硬件设备;(2)建立内存空间的映射图;(3)完成内核的加载,为内核设置启动参数。通过BootLoader可以完成对系统板上的主要部件如CPU、SDRAM、Flash、串行口等进行初始化,也可以下载文件到系统板上,对Flash进行擦除与编程。当运行操作系统时,它会在操作系统内核运行之前运行,通过它,可以分配内存空间的映射,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统准备好正确的环境。 通常,BootLoader 是依赖于硬件而实现的,特别是在嵌入式系统中。因此,在嵌入式系统里建立一个通用的 BootLoader 几乎是不可能的,不同的处理器架构都有不同的

硬件研发流程

CD Concept Definition CMF 3D & sourcing (ED MD SD QA)ED MD SD 输出资料 sourcing PjM QA PE (ED MD SD QA) KO Kick Off 输出资料 PjM PjM PE QE Sourcing PjM iHoment A

A 结构设计 结构工艺说明 内外部评审是否通过 结构设计评审工程DFM评审 模厂DFM评审开模等事宜 YES NO 结构手版与 评审 初版原理图 绘制编制BOM清单 元器件评估详细原理图 绘制原理图评审 是否通过 NO YES 嵌入式软件 设计评审嵌入式 软件 是否通过 NO YES 编写软件代 码评审代码 是否通过 NO YES B 报价及供应商确定 整机价格确 认 TL Tooling Launch 开模 C 结构图纸3D MD 结构图纸2D MD 开模清单 ID CMF ID 结构评审报告 MD 结构手板评审报告 MD 电子评审报告 ED 制程DFM PE PjM输入组装图 模具厂DFM PjM+MD 输出资料 输出资料

B 开模 D 设计PCB PCB设计评审是否通过 YES NO 包装及丝印设计(包含文案) 模具T0 投板、样机制作C 打样及评审 是否通过 NO YES T0模具问题修 改 是否通过 模具T1 试产准备 YES NO 样机初测 试产准备软硬件联调长交期物料备料启动 是否通过 试装PCB改版 NO YES 试产 试装改版 试产准备 试产样机测试是否通过 NO YES 安规认证 DR Design Release 设计确定 ES样机测试报告(含跌落)-过程中收集 TE 试产报告 PE 试产样机测试报告 TE 产品成熟度判定报告 PjM 输出资料

电脑主板开机电路检测流程1

开机电路检测流程 测量ATX电源接口的红5V,黄12V是否严重对地短路。 1:南桥附近是否有2.5V,3.3V,1.8V的待机电压(南桥不同,待机电压也不同) 2:实时晶振是否起振(两脚是否有0.4V左右电压) 3:CMOS跳线中间引脚是否为高电平。(CMOS是否设置正确) 4:测量POW开关处是否有2.5V以上高电平。 5:短接POW开关测量是否有低电平触发南桥成功(W83627HF除外) 6:查绿线到南桥成I/O之间的线路是否正常。 注:开机电路中易损元件: (1):与开机电路相关的门电路,三极管。 (2):给南桥提供待机电压的正电压稳压器或其它供电元件。 (3):与I/O或南桥。 维修实例 1.GPS-810C(E)J:测试点正常不工作,刷BIOS(用联冠810T)无效,后查北桥供电的3055场效应管损坏,板上标识为Q4,更换后OK。 2.-P4主板:型号为Titan667。 测试卡从C1到B0,测试卡过C1,表明CPU已经工作,检测内存不过,查内存的供电,发现它的负载电压只有0.85V。正常应为1.25V,查其与Q96,Q97两个场管相连,摘下后测得Q96为软击穿,更换后故障排除。 3.-810主板不能点亮 测试卡从D3到00,DE-00循环跳变,这种故障表明检测内存不过,经查内存的供电,时钟,复位,片选,行,列,选信号均正常,于是目测主板,将CPU与风扇除去,发现风扇卡与主板之间有划痕,且已划段3根线,经补线后,加电测量,一切正常。4.-精英K7VMA主板;主板上有两个CPU风扇接口,插其中一个自动断电,查不正常的风扇接口,发现其5V由D4二极管供给,二极管正向端连南桥,由此怀疑南桥中的温控电路出毛病,将其二极管摘除,将风扇5V端与D5的负端相连后,故障排除。5.精英P6-IEAT或P6-IPAT,815EP主板开机不显,各项电压正常的情况下多为南桥坏。(通病) 6.磐正AMD主板进入系统后自动关机,更换CPU风扇后,故障解决。 7.-华拓主板开机自动进入CMOS设置,插dassic跳线跳错。 8.P4VSD主板上AGP显卡不亮,插PCI显卡可正常工作,不加显卡时测VDDQ电压为 3.3V,加上4×AGP显卡再测为2.26V,正常时应为1.5V,故判断VDDQ供电管有问 题,更换后,故障解决。 9.K7TPRO主板;检测显卡时,代码过26不亮,查其VDDQ电压不正常,更换供电管后故障依旧,此时,想到它的控制电压输出部分,顺线路,找到其中431控制,更换431后故障排除。 10.GA-8LD533;故障现象,开机各测试点均正常,CPU不工作,用P4测试座测量,大面积信号线不亮,按压CPU座,信号线部分正常,故判断CPU座虚焊,加焊后故障排除。 11.MS-6153主板;开机后CPU不工作,测CPU工作电压无,Q1的控制极电压为0.45,Q2的控制极电压为1V,更换电压IC后,故障排除。 12.GA-8IE2004;故障为显示到检测硬盘处死机,有时能正常通过,但会死机,目测内

硬件开发流程及规范 (1)

硬件开发流程及规范 硬件开发流程及规范 一、主板 二、辅助PCB及FPC 三、液晶屏 四、摄像头 五、天线 六、SPEAKER 七、RECEIVER 八、MIC 九、马达 十、电池 十一、充电器 十二、数据线 十三、耳机 版2008-12-13

(一)主板 1.开发流程: 2.资料规范 1)主板规格书 a)基本方案平台; b)硬件附加功能: c)软件附加功能; d)格式和排版布局合理,便于打印; 范例格式见下表:

E519 PDA主板规格书 2)元件排布图 a)标明所有接插件名称、引脚定义,方向及连接器型号;

b)标明所有外部焊接位置的名称,极性; c)位号图可用放大的图纸单独标示,并标明需区分方向和极性的器件; d)标明所有结构尺寸比较高可能影响装配的器件; e)格式和排版布局合理,便于打印; 范例格式见下图: 3)BOM a)每次改版记录要明确记录在改版记录中,明确试产版和量产版及版本号和日期; b)保证数据正确性,物料编码与物料描述一致,位号数量与用量一致,物料种数和数量与改版 记录一致; c)结构件、IC、阻容件分类,按一定顺序排列; d)功能可选项分开列出(注意相互的关联性); e)格式和排版布局合理,便于打印(所用文字全部显示); 范例格式见下表:

4)SMT试产报告 a)召开试产会议,所用发现的问题要全部列出,并修改相关的文件; b)所用问题要有解决措施,并明确责任人限时处理; c)有代表性的问题要列入设计查核表,防止类似问题再次出现; d)记录试产环境及关键参数; e)报告审核后发相关部门负责人; f)保证数据真实性,有任何问题要找到确实的原因,不可用习惯性思维处理; 范例格式见下表: SMT试产报告

电脑开机自检顺序

电脑开机自检顺序[zhuan] {开机键→主板控制芯片向→CPU发出RESET信号→CPU初始化} 当电源供电稳定后,芯片组便撤去RESET信号,CPU马上就从FFFFOH处开始执行指令。 (注:这个地址在系统BIOS的地址范围内,无论是Award BIOS还是AMI BIOS,放在这里的只是一条跳转指令,跳到系统BIOS中真正的启动代码处。系统BIOS的启动代码首先要做的事情就是进行POST(加电自检)。 POST的主要任务是检测系统中的一些关键设备是否存在和能否正常工作,如内存和显卡等。如果这个时候系统的喇叭发出的不是一声清脆的“嘀”声,那就有可能是内存条或是显示卡等出故障了) {计算机加电后,主机电源立即产生“Power Good”低电位信号→通过时钟产生(驱动)器输出有效的RESET信号→使CPU进入复位状态→并强制系统进入ROM-BIOS程序区。} (注:系统BIOS区的第一条指令是“jump star”,即跳转到硬件自检程序start。 为了方便地实现BIOS的功能,BIOS运行时要用到一些RAM) {因此大多数BIOS要做的第一件事就是→检测系统中的低端RAM.} (注:如果检测失败,那么大多数BIOS将无法调入RAM中,开机后无任何反应,微机黑屏。) 自检程序允许必要的附加卡上的BIOS程序首先进入它们自己的系统并初始化,但在此之前,主板上的BIOS→找到附加卡上的BIOS程序,才能在主板BIOS和操作系统之前运行。 如显示卡本身就带有启动程序的BIOS芯片,该芯片内的程序负责启动显示卡,为显示其它信息作准备,并在屏幕上显示显示卡的版本及版权信息。 如果上面的过程完成了,电脑开始显示ROM-BIOS的版本、版权信息以及检测出的CPU型号、主频和内存容量。在这个过程中,自检程序还要测试→DAM(内存)→控制器及ROM-BIOS 芯片的字节数。

嵌入式软件开发流程图

嵌入式软件开发流程 一、嵌入式软件开发流程 1.1 嵌入式系统开发概述 由嵌入式系统本身的特性所影响,嵌入式系统开发与通用系统的开发有很大的区别。嵌入式系统的开发主要分为系统总体开发、嵌入式硬件开发和嵌入式软件开发3大部分,其总体流程图如图1.1所示。 图1.1 嵌入式系统开发流程图 在系统总体开发中,由于嵌入式系统与硬件依赖非常紧密,往往某些需求只能通过特定的硬件才能实现,因此需要进行处理器选型,以更好地满足产品的需求。另外,对于有些硬件和软件都可以实现的功能,就需要在成本和性能上做出抉择。往往通过硬件实现会增加产品的成本,但能大大提高产品的性能和可靠性。 再次,开发环境的选择对于嵌入式系统的开发也有很大的影响。这里的开发环境包括嵌入式操作系统的选择以及开发工具的选择等。比如,对开发成本和进度限制较大的产品可以选择嵌入式Linux,对实时性要求非常高的产品可以选择Vxworks等。

1.2 嵌入式软件开发概述 嵌入式软件开发总体流程为图4.15中“软件设计实现”部分所示,它同通用计算机软件开发一样,分为需求分析、软件概要设计、软件详细设计、软件实现和软件测试。其中嵌入式软件需求分析与硬件的需求分析合二为一,故没有分开画出。 由于在嵌入式软件开发的工具非常多,为了更好地帮助读者选择开发工具,下面首先对嵌入式软件开发过程中所使用的工具做一简单归纳。 嵌入式软件的开发工具根据不同的开发过程而划分,比如在需求分析阶段,可以选择IBM的Rational Rose等软件,而在程序开发阶段可以采用CodeWarrior(下面要介绍的ADS 的一个工具)等,在调试阶段所用的Multi-ICE等。同时,不同的嵌入式操作系统往往会有配套的开发工具,比如Vxworks有集成开发环境Tornado,WindowsCE的集成开发环境WindowsCE Platform等。此外,不同的处理器可能还有对应的开发工具,比如ARM的常用集成开发工具ADS、IAR和RealView等。在这里,大多数软件都有比较高的使用费用,但也可以大大加快产品的开发进度,用户可以根据需求自行选择。图4.16是嵌入式开发的不同阶段的常用软件。 图1.2 嵌入式开发不同阶段的常用软件 嵌入式系统的软件开发与通常软件开发的区别主要在于软件实现部分,其中又可以分为编译和调试两部分,下面分别对这两部分进行讲解。 1.交叉编译 嵌入式软件开发所采用的编译为交叉编译。所谓交叉编译就是在一个平台上生成可以在另一个平台上执行的代码。在第3章中已经提到,编译的最主要的工作就在将程序转化成运行该程序的CPU所能识别的机器代码,由于不同的体系结构有不同的指令系统。因此,不同的CPU需要有相应的编译器,而交叉编译就如同翻译一样,把相同的程序代码翻译成不同CPU的对应可执行二进制文件。要注意的是,编译器本身也是程序,也要在与之对应的某一个CPU平台上运行。嵌入式系统交叉编译环境如图4.17所示。

第3章的附录 系统引导程序的代码

第3章的附录系统引导程序的代码 下面是一个基于S3C2410芯片的嵌入式系统引导(启动)程序Startup.s文件中的汇编源程序。通过对这段程序的分析,巩固所学的汇编指令知识,并学习嵌入式系统引导程序的编写方法。程序中各条指令及指示符的具体含义请参照3.1节和3.3.1小节中的说明。 ;Startup Code for S3C2410 : Startup.s ;下面指令包含2410addr.s文件,该文件中定义了S3C2410内部寄存器地址对应的变量。 GET 2410addr.s ; 某些ARM920T CPSR寄存器位的定义,定义了部分常量。 USERMODE EQU 0x10 FIQMODE EQU 0x11 IRQMODE EQU 0x12 SVCMODE EQU 0x13 ABORTMODE EQU 0x17 UNDEFMODE EQU 0x1b MODEMASK E QU 0x1f NOINT EQU 0xc0 I_Bit * 0x80 F_Bit * 0x40 ; MMU寄存器定义。 CtrlMMU * 1 CtrlAlign * 2 CtrlCache * 4 CtrlWBuff * 8 CtrlBigEnd * 128 CtrlSystem * 256 CtrlROM * 512 TLB_L0_INIT * 0x0C02 ;AREA指示汇编器汇编一段新的代码,为保证下面的代码为起始代码,应在ARM连接器的layout选项中指明Startup.o(Init) (如图1-33所示),或用scatter格式的描述性文件说明。 AREA Init,CODE,READONLY ;IMPORT提供汇编器在当前汇编中未曾定义的符号名。 IMPORT __use_no_semihosting_swi IMPORT Enter_UNDEF IMPORT Enter_SWI IMPORT Enter_PABORT

多系统引导程序示例

多系统引导程序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所示。

硬件设计流程

硬件设计流程 一、硬件设计 1.1单板设计需求 单板设计之前需要明确单板的设计需求。单板的功能属性。单板的设计目的,使用场合,具体需求包括: 1.单板外部接口的种类,接口的数量,电气属性即电平标准。 2.单板内部的接口种类,电气属性。 3.单板外部输入电源大小 4.单板的尺寸 5.单板的使用场合,防护标准 若设计中需要用到CPU,需要确定设计中需要用到的FLASH大小和需求的内存的大小和CPU的处理能力。单板设计需求中需要明确单板的名字和版本并且要以文档的形式表现出来,是后续单板设计和追溯的主要依据。 单板设计需求完成之后,需要召开项目评审会,需要对设计需求说明中各类需求逐个确认。当各类需求均满足设计需要时则进入下一步。 1.2 单板设计说明 单板需求明确后,需要开始编写单板设计说明。其中需要包括单板设计所需要的各种信息如: 1.单板设计详细方案,需要具体到用到什么芯片,什么接口。 2.器件选型,器件选型需要满足设计的需求。 3.单板功耗、单板选型之后需要确定单板的功耗,为单板散热和电源设计提供依据 4.电源设计、电源设计需要包含单板中需要用到的各类电源。若相同的电源需要做隔离 的需要做需要详细指出。 5.时钟设计,单板若是用到多种时钟,则需要描述时钟的设计方法,时钟拓扑。 6.单板的实际尺寸 7.详细描述各个功能模块给出详细的设计方法 8.详细描述各接口的设计方法和接口的电气属性。 若设计模块有多种设计方法,选择在本设计中最佳的设计方案。若软件对单板中用到的器件有独特的要求,需要明确指出(如对某些制定管脚的使用情况)。除了各个功能模块之外单板设计说明中需要详细描述接口的防护方法。设计说明需要以文档的形式给出,是单板设计过程中重要的文档,其中需要包括单板的名称和单板的版本。如果有条件单板设计说明完成后项目中进行评审。 1.3原理图设计 设计说明完成之后就要开始单板的原理图设计,单板设计说明是单板原理图设计的重要依据。原理图设计之气需要确定单板设计用用到的各个器件原理图库中是否具有原理图符号,如果没有需要提前绘制。新绘制的原理图符号需要反应器件的电气属性,器件型号,最好包含品号信息,绘制完成之后将其放到相应的库中,原理图设计需要包含: 1.各个器件接口的正确电气连接。 2.原理图中的各个器件需要有单独的位号。 3.原理图中需要包含安装孔和定位孔。 4.原理图中的兼容设计或者在实际应用中不需要焊接的器件需要在原理图中明确标出。 原理图的名字需要和单板的名字一致。考虑到单板上所用器件可能会有较长的采购周

PC机启动引导过程程序设计概要

PC机启动引导过程程序设计 一、引论 PC机开机后,CPU被设定为执行FFFF:0单元处的指令,此处有一条跳转指令。CPU执行该指令后,转去执行BIOS中的硬件系统测试和初始化程序。 初始化程序将建立BIOS所支持的中断向量,即将BIOS提供的中断例程的入口地址登记在中断向量表中。 硬件系统检测和初始化完成后,调用int 19h进行操作系统的引导。 如果设为从软盘启动操作系统,则int 19h将主要完成以下工作: (1 控制0号软驱,读取软盘0道0面1扇区的内容到0:7C00 (2 将CS:IP指向0:7C00 软盘的0道0面1扇区中装有操作系统引导程序。int 19h将其装入到内存0:7C00处后,设置CPU从0:7C00开始执行此处的引导程序,操作系统被激活,控制计算机。 如果在0号软驱中没有软盘,或发生软盘I/O错误,则int 19h将主要完成以下工作: (1 读取硬盘C的0道0面1扇区的内容到0:7C00 (2 将CS:IP指向0:7C00 由以上描述可知,若我们想要控制引导过程,只需: (1 编写程序 (2 将该程序代码写入软盘或硬盘C的0道0面1扇区。

因为以上工作会破坏软盘或硬盘原有数据,因此本次实验,我们选择软盘存放我们自己的启动程序。 二、实验任务 本次实验的任务是编写一个可以自行启动计算机,不需要在现有操作系统环境中运行的程序。 该程序功能如下: (1 列出功能选项,让用户通过键盘进行选择,界面如下: 1、Reset PC ;重新启动计算机 2、Start System ;启动现有的操作系统 3、Clock ;进入时钟程序 4、Set Clock ;设置时间 (2 用户输入“1”后重新启动计算机。(提示:考虑FFFF:0单元 (3 用户输入“2”后引导现有的操作系统。(提示:考虑硬盘C的0道0面1扇区

电脑启动过程详解

电脑从按完开关加电开始直到进入到系统桌面的整个过程详解本文以Windows2000/xp和Windows Vista/7两个内核做讲解 电脑从加电到进桌面可以分为两大部分: 无论是Windows2000/XP还是Windows Vista/7,在硬件自检方面都是想同的,不同的是在系统加截。 硬件部分: 在讲解前,我们先来了解几个概念: BIOS:即“Basic Input/Output System”(基本输入输出系统),它是一组被“固化”在计算机主板上的一块 ROM 中直接关联硬件的程序,保存着计算机最重要的基本输入输出的程序、系统设置信息、开机后自检程序和系统自启动程序,其主要功能是为计算机提供最底层的、最直接的硬件设置和控制,它包括系统 BIOS(主板 BIOS).其它设备 BIOS(例如 IDE 控制器 BIOS、显卡 BIOS 等)其中系统 BIOS 占据了主导地位.计算机启动过程中各个 BIOS 的启动都是在它的控制下进行的。 CMOS:即“Complementary Metal-Oxide-Semiconductor”(互补金属氧化物半导体),它本是计算机系统内一种重要的芯片,保存了系统引导最基本的资料。 内存地址:我们知道,内存空间的最基本单位是位,8 位视为一个字节,即我们常用的单位 B,内存中的每一个字节都占有一个地址(地址是为了让 CPU 识别这些空间,是按照 16 进制表示的),而最早的 8086 处理器只能识别 1MB(2 的 20 次方 B)的空间,这 1MB 内存中低端(即最后面)的 640KB 就被称为基本内存,而剩下的内存(所有的)则是扩展内存。这 640KB 的空间分别由显存和各 BIOS 所得。 我们来看一下硬件部分的流程图:

讲解win7启动过程

:BIOS→MBR→Bootmgr→BCD→Winl oad.exe→内核加载 1.开机后,BIOS进行开机自检(POST),然后选择从硬盘进行启动,加载硬 盘的MBR并把控制权交给MBR(MBR是硬盘的第一个扇区,它不在任何一个分区内); 2.MBR会搜索64B大小的分区表,找到4个主分区(可能没有4个)的活动分 区并确认其他主分区都不是活动的,然后加载活动分区的第一个扇区 (Bootmgr)到内存; 3.Bootmgr寻找并读取BCD,如果有多个启动选项,会将这些启动选项反映 在屏幕上,由用户选择从哪个启动项启动。 4.选择从Windows7启动后,会加载C:\windows\system32\winload.exe, 并开始内核的加载过程,内核加载过程比较长,比较复杂,这里就不一一讲了。 在这个过程中,bootmgr和BCD存放在Windows7的保留分区里,而从Winload.exe开始,就开始进入到C盘执行内核的加载过程了。 ?MBR(Master Boot Record),中文意为主引导记录。 注意事项 硬盘的0磁道的第一个扇区称为MBR,它的大小是512字节,而这个区域可以分为两个部分。第一部分为pre-boot区(预启动区),占446字节;第二部分是Partition table区(分区表),占66个字节,该区相当于一个小程序,作用是判断哪个分区被标记为活动分区,然后去读取那个分区的启动区,并运行该区中的代码。 他是不属于任何一个操作系统,也不能用操作系统提供的磁盘操作命令来读取它。但我们可以用ROM-BIOS中提供的INT13H的2号功能来读出该扇区的内容,也可用软件工具Norton8.0中的DISKEDIT.EXE来读取 ?BCD=Boot Configuration Data (启动设置数据) ,BCD是操作系统中的启动设置数据, 在有vista或windows7的多重操作系统中,系统通bootmgr程序导入BCD 文件完成启动菜单的引导。 可用bcdedit.exe程序来编辑BCD文件,来调整开机默认操作系统和等待时间。 先让我们看一下windows7的启动过程的常识: 电脑加电后,首先是启动BIOS程序,BIOS自检完毕后,找到硬

引导程序

引导程序 1:概述 计算机在开始启动的时候,首先运行BIOS程序,BIOS程序检测当前硬件。完成后,根据CMOS中的关于驱动器启动顺序的设置,找到一个可用的驱动器来启动。这里的驱动器包括软盘、光盘、硬盘等设备,但是为了简化问题,下面只讨论软盘驱动器或者硬盘驱动器的启动。 在软盘(硬盘)启动的过程中,最先是BOIS将软盘的首扇区(也就是0柱面,0头、1扇区)的512个字节的内容读到内存的7C00H的地方,然后CPU跳到7C00H(CS:IP=0000:7C00H?)处运行。由于只有512个字节的大小,不可能放下一个操作系统的代码。因此,这512个字节的代码一般是一个过渡性的代码,它主要由读软盘扇区指令构成,用来实现这样的一个功能:将操作系统的代码都读到内存中去,读完后再通过JMP指令跳到操作系统代码的入口地址,进一步运行程序。习惯上,我们把保存在首扇区中的程序称为引导程序。 虽说引导程序一般是用来实现操作系统的引导的,的是但这并不是必要的;它可以是任何形式的代码,只要符合的一个条件:代码对应的机器代码不超过512个字节。下面的引导程序演示代码就没有任何的读软盘指令,它只是不断的循环一个过程:接受并显示字符。 在最后,交代一下程序的运行软件环境:程序在XP编写、编译,在虚拟机下测试。

2:引导程序演示代码 2.1演示代码BOOT.ASM .MODEL SMALL ;这个可以不用管 CODE SEGMENT ASSUME CS:CODE,DS:CODE ; 数据段和代码段混合在一起了 ORG 7C00H START: JMP START1 INFO DB 'A:\',0 ;提示信息 STR1 DB 80 DUP (0) ;接受键盘输入缓冲区 START1: MOV AX,CODE MOV DS,AX ;设置光标的位置,在屏幕的最后一行,屏幕行号范围0—24,列号范围0-79 MOV DH,24 ;行号 MOV DL,0 ;列号 MOV AH,2 ;子功能号 INT 10H L1: MOV SI,OFFSET INFO CALL DISP_STR ;显示提示信息 CALL GET_STR ;输入字符串,以回车结束输入 CALL CRLF ;换行 MOV SI,OFFSET STR1 CALL DISP_STR ;输出刚才从键盘中接受到的字符串 CALL CRLF MOV SI,OFFSET STR1 CMP BYTE PTR [SI],0 ;如果直接回车,那么就退出程序 JZ EXIT JMP L1 EXIT: MOV AH,4CH INT 21H DISP_STR PROC ;显示字符串 CLD ;设置DF=0,给后面的串指令用 .WHILE BYTE PTR [SI] != 0 ;.while是汇编伪指令,功能和高级语言的while一样LODSB MOV AH,0EH ;输出字符 INT 10H .ENDW RET DISP_STR ENDP

硬件开发详细流程

电子电器硬件开发详细流程一、硬件开发基本任务 ●硬件需求分析 ●硬件系统设计 ●硬件开发及过程控制 ●系统联调 ●文档归档及验收申请 二、硬件开发详细流程 硬件需求分析内容 1.基本配置及其互联方法 2.运行环境 3.硬件整体系统的基本功能及主要性能指标 4.硬件分系统的基本功能及主要性能指标 5.功能模块的划分 6.关键技术攻关 7.外购硬件的名称型号、生产单位、主要技术指标 8.主要仪器设备 9.公司内部合作以及与外部的合作 10.可靠性、稳定性、可行性论证 11.电源、工艺结构设计 12.硬件测试方案 硬件总体设计报告

1.系统功能及性能指标 2.系统总体结构图及功能划分 3.单板命名 4.系统逻辑框图 5.组成系统各功能模块框图、电路结构图及单板组成 6.单板逻辑框图及电路结构图 7.关键技术讨论 8.关键器件 单板总体设计方案 1.单板在整机中的位置 2.单板功能描述 3.单板尺寸 4.单板逻辑图及功能模块说明 5.单板软件方能描述 6.单板软件功能模块划分 7.接口定义及相关板的关系 8.重要性能指标、功耗及采用标准 单板硬件详细设计 1.单板整体功能的详细描述及模块的精确划分 2.接口的详细设计 3.关键元器件的功能描述、评审、选择 4.符合规范的原理图及PCB图

5.PCB板的测试及测试计划 单板软件详细设计 1.详细设计细节:中断、主程序功能、子程序功能、入口参 数、出口参数、局部变量、函数调用 2.软件流程图 3.通讯协议:物理层、链路层通讯协议定义、高层通讯协议 定义。 单板硬件过程调试文档 1.单板功能模块划分 2.单板模块调试进度 3.调试中的问题和解决方法 4.原是数据记录、系统方案修改说明 5.单板方案修改说明 6.元器件更换说明 7.原理图、PCB板修改说明 8.调试工作阶段总结 9.下阶段调试计划 10.调试方案修改说明 单板软件过程调试文档 1.单板功能模块划分及功能模块调试进度 2.单板调试中出现的问题及解决办法 3.下阶段调试计划

引导加载程序

1. 引言 在专用的嵌入式板子运行 GNU/Linux 系统已经变得越来越流行。一个嵌入式 Linux 系统从软件的角度看通常可以分为四个层次: 1. 引导加载程序。包括固化在固件(firmware)中的 boot 代码(可选),和 Boot Loader 两大部分。 2. Linux 内核。特定于嵌入式板子的定制内核以及内核的启动参数。 3. 文件系统。包括根文件系统和建立于 Flash 内存设备之上文件系统。通常用 ram disk 来作为 root fs。 4. 用户应用程序。特定于用户的应用程序。有时在用户应用程序和内核层之间可能还会包括一个嵌入式图形用户界面。常用的嵌入式 GUI 有:MicroWindows 和 MiniGUI 懂。 引导加载程序是系统加电后运行的第一段软件代码。回忆一下 PC 的体系结构我们可以知道,PC 机中的引导加载程序由 BIOS(其本质就是一段固件程序)和位于硬盘 MBR 中的 OS Boot Loader(比如,LILO 和 GRUB 等)一起组成。BIOS 在完成硬件检测和资源分配后,将硬盘 MBR 中的 Boot Loader 读到系统的 RAM 中,然后将控制权交给 OS Boot Loader。Boot Loader 的主要运行任务就是将内核映象从硬盘上读到 RAM 中,然后跳转到内核的入口点去运行,也即开始启动操作系统。 而在嵌入式系统中,通常并没有像 BIOS 那样的固件程序(注,有的嵌入式 CPU 也会内嵌一段短小的启动程序),因此整个系统的加载启动任务就完全由 Boot Loader 来完成。比如在一个基于 ARM7TDMI core 的嵌入式系统中,系统在上电或复位时通常都从地址 0x00000000 处开始执行,而在这个地址处安排的通常就是系统的 Boot Loader 程序。 本文将从 Boot Loader 的概念、Boot Loader 的主要任务、Boot Loader 的框架结构以及Boot Loader 的安装等四个方面来讨论嵌入式系统的 Boot Loader。 2. Boot Loader 的概念 简单地说,Boot Loader 就是在操作系统内核运行之前运行的一段小程序。通过这段小程序,我们可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核准备好正确的环境。 通常,Boot Loader 是严重地依赖于硬件而实现的,特别是在嵌入式世界。因此,在嵌入式世界里建立一个通用的 Boot Loader 几乎是不可能的。尽管如此,我们仍然可以对 Boot Loader 归纳出一些通用的概念来,以指导用户特定的 Boot Loader 设计与实现。 1. Boot Loader 所支持的 CPU 和嵌入式板 每种不同的 CPU 体系结构都有不同的 Boot Loader。有些 Boot Loader 也支持多种体系结构的 CPU,比如 U-Boot 就同时支持 ARM 体系结构和MIPS 体系结构。除了依赖于 CPU 的体系结构外,Boot Loader 实际上也依赖于具体的嵌入式板级设备的配置。这也就是说,对于两块不同的嵌入式板而言,即使它们是基于同一种 CPU 而构建的,要想让运行在一块板子上的 Boot Loader 程序也能运行在另一块板子上,通常也都需要修改 Boot Loader 的源程序。

相关文档
最新文档