Embedded Linux Primer----嵌入式Linux基础教程--2.1节--需要嵌入式

2019-07-13 07:40发布

第二章 你的第一个嵌入式经历

(译者:这一章节在第二个版本的书上是叫A Big Picture,不过内容差不多。) 在这一章里(将要学习到) 需要嵌入式系统吗 一个嵌入式系统剖析 存储空间考虑事项 嵌入式Linux发行版本 本章总结 理解一个给定的任务的最好的方法就是对全局的把握。许多基本的概念给嵌入式系统开发新手带来了挑战。本章带你进入一个嵌入式系统的世界以及把重点放在概念和能够开发出独特并具有挑战性的系统的组件的开发环境。、

需要嵌入式系统吗

一些个和嵌入式系统息息相关的特性。你不必将你的桌面电脑称作为一个嵌入式系统。但是考虑到桌面电脑硬件平台从事执行一个重要的远程数据检测中心和定时任务。假定这个数据中心没有工作人员。强加一组不同的需求在这个硬件平台。例如,如果断电了,一会又恢复了,我们特别期待这个能够在没有操作人员介入的情况下继续完成它的职责。 嵌入式系统有很多种形状和尺寸,从最大的并行数据存储或网络中心到就像你的MP3播放器或者手机一样小的模块。这些寻常的嵌入式系统的特性包括: ·包括一个处理引擎,例如一个普通用途的微处理器 ·一个特殊的应用或者特殊用途的典型设计 ·包括一个简单的(或者不简单)用户自动引擎点火控制器 ·打造一款无人看守的程序 嵌入式系统和典型的桌面PC相比是资源趋向型的。嵌入式系统资源有限,有很小的或者几乎就没有硬件驱动,有些是没有外部网络支持的。仅有的用户接口就是串口和LED。这些问题给嵌入式开发者带来了挑战。

BIOS vs Bootloader

当电源第一次用在桌面电脑上,一个叫做BIOS的软件程序立马控制了处理器。(BIOS是Basic Input/Output Software的缩写,但是这个术语已经展示它比原始的实现更复杂的功能的意义。)BIOS事实上存储在Flash中让它更快。 BIOS是一个复杂的系统配置日常软件,这个软件具有低水平的硬件体系描述的知识。我们大多数时候没有意识到BIOS的存在以及它的作用,但是它是桌面电脑重要组成部分。当电源启动,BIOS是第一个获得处理器控制权的软件。它的首要责任就是初始化硬件,尤其是内存子系统,以及从硬盘加载操作系统。 在一个典型的嵌入式系统当中(假定它不是基于工业级别的X86的PC硬件平台)。Bootloader是一个具有相同功能的软件程序。在你自己的嵌入式系统中,你的开发计划当中必须包括定制于你的开发板的Bootloader的开发,这些内容在第七章有说明。 Bootloader的重要性表现在: ·初始化重要的硬件组成部分,例如SDRAM控制器,I/O控制器,图形控制器 ·在准备启动操作系统的时候初始化系统内存 ·分配系统资源,比如内存,中断外围控制器的回路是必须的 ·提供一个定位和加载操作系统镜像的途径 ·加载并传递管理操作系统,传递任何一个要求的或可能被要求的信息,例如完整的内存大小时钟速率,串口速度以及其它的低级别特定硬件的配置数据。 这是一个典型嵌入式系统bootloader任务的简单总结。需要记住的重要点是:如果你的嵌入式系统需要工作在定制的平台上,bootloader的功能也需要根据你的系统设计相应的支持。如果你的嵌入式系统是基于商业的off-the-shelf(COTS)平台,比如ATCA框架,bootloader(经常是Linux内核)被包含在板子上。第七章将更多的讨论bootloader。