52
嵌嵌嵌嵌 嵌嵌 嵌嵌嵌嵌 嵌嵌嵌 嵌嵌嵌嵌 嵌嵌嵌嵌 9 9 嵌嵌嵌嵌 嵌嵌 嵌嵌嵌嵌 嵌嵌

第 9 章 嵌入式系统概述

  • Upload
    tave

  • View
    77

  • Download
    8

Embed Size (px)

DESCRIPTION

第 9 章 嵌入式系统概述. 嵌入式系统简介 嵌入式系统的组成 嵌入式系统开发流程. 9.1 嵌入式系统简介. 广义上讲,凡是带有 微处理器 的 专用软硬件系统 都可称为嵌入式系统。如各类 单片机和 DSP 系统 。这些系统在完成较为单一的专业功能时具有简洁高效的特点。但由于他们没有操作系统,管理系统硬件和软件的能力有限,在实现复杂多任务功能时,往往困难重重,甚至无法实现 从狭义上讲,那些使用 嵌入式微处理器 构成独立系统,具有自己 操作系统 ,具有特定功能,用于特定场合的专用软硬件系统称为嵌入式系统。. 嵌入式系统的几个重要特征. 1. 系统内核小: - PowerPoint PPT Presentation

Citation preview

Page 1: 第 9 章  嵌入式系统概述

• 嵌入式系统简介• 嵌入式系统的组成• 嵌入式系统开发流程

第第 99 章 嵌入式系统概述章 嵌入式系统概述

Page 2: 第 9 章  嵌入式系统概述

•广义上讲,凡是带有微处理器的专用软硬件系统都可称为嵌入式系统。如各类单片机和DSP系统。这些系统在完成较为单一的专业功能时具有简洁高效的特点。但由于他们没有操作系统,管理系统硬件和软件的能力有限,在实现复杂多任务功能时,往往困难重重,甚至无法实现

•从狭义上讲,那些使用嵌入式微处理器构成独立系统,具有自己操作系统,具有特定功能,用于特定场合的专用软硬件系统称为嵌入式系统。

9.1 9.1 嵌入式系统简介嵌入式系统简介

Page 3: 第 9 章  嵌入式系统概述

嵌入式系统的几个重要特征嵌入式系统的几个重要特征 1.系统内核小: 由于嵌入式系统一般是应用于小型电子装置的,系统资源相对有限,所以内核较之传统的操作系统要小得多。

Page 4: 第 9 章  嵌入式系统概述

2.专用性强: 嵌入式系统的个性化很强,其中的软件系统和硬件的结合非常紧密,一般要针对硬件进行系统的移植。

即使在同一品牌、同一系列的产品中也需要根据系统硬件的变化和增减不断进行修改。

同时针对不同的任务,往往需要对系统进行较大更改,程序的编译下载要和系统相结合,这种修改和通用软件的“升级”是完全不同的概念。

Page 5: 第 9 章  嵌入式系统概述

3. 系统精简: 嵌入式系统一般没有系统软件和应用软件的明显区分,不要求其功能设计及实现上过于复杂,这样一方面利于控制系统成本,同时也利于实现系统安全。

Page 6: 第 9 章  嵌入式系统概述

4. 高实时性 OS : 这是嵌入式软件的基本要求,而且软件要求固态存储,以提高速度。软件代码要求高质量和高可靠性、实时性。

Page 7: 第 9 章  嵌入式系统概述

5. 嵌入式软件开发走向标准化: 嵌入式系统的应用程序可以没有操作系统直接在芯片上运行。

为了合理地调度多任务、利用系统资源、系统函数以及和专家库函数接口,用户必须自行选配 RTOS ( Real - Time Operating System)开发平台,这样才能保证程序执行的实时性、可靠性,并减少开发时间,保障软件质量。

Page 8: 第 9 章  嵌入式系统概述

6. 嵌入式系统需要开发工具和环境: 由于其本身不具备自主开发能力,即使设计完成以后,用户通常也是不能对其中的程序功能进行修改,必须有一套开发工具和环境才能进行开发。

这些工具和环境一般是基于通用计算机上的软硬件设备以及各种逻辑分析仪、混合信号示波器等。开发时往往有主机和目标机的概念,主机用于程序的开发,目标机作为最后的执行机,开发时需要交替结合进行。

Page 9: 第 9 章  嵌入式系统概述

9.2 9.2 嵌入式系统的组成嵌入式系统的组成

Page 10: 第 9 章  嵌入式系统概述

•嵌入式系统由嵌入式硬件与嵌入式软件组成。

•嵌入式硬件以芯片、模板、组件、控制器形式埋藏于设备内部。

•嵌入式软件是实时多任务操作系统和各种专用软件,一般固化在 ROM或闪存中。

•嵌入式系统软硬兼施,融为一体,成为产品,但在开发过程中需要一些开发工具进行辅助开发。

Page 11: 第 9 章  嵌入式系统概述

嵌入式系统的整体架构嵌入式系统的整体架构

嵌入式微处理器

SDRAM

ROM

I/O

A/D

D/A

人机交互接口

通用接口

(实时操作系统 RTOS)

图形用户接口

BSP/HAL /硬件抽象层 板极支持包

任务管理文件系统

应用程序

嵌入式计算机系统

硬件层

软件层

中间层

功能层

Page 12: 第 9 章  嵌入式系统概述

嵌入式微处理器嵌入式微处理器•对实时多任务有很强的支持能力,能完成多任务并且有较短的中断响应时间,从而使内部的代码和实时内核的执行时间减少到最低限度。

•具有功能很强的存储区保护功能。这是由于嵌入式系统的软件结构已模块化,而为了避免在软件模块之间出现错误的交叉作用,需要设计强大的存储区保护功能,同时也有利于软件诊断。

Page 13: 第 9 章  嵌入式系统概述

嵌入式微处理器嵌入式微处理器•可扩展的处理器结构,能迅速地开发出满足应用需求的产品。

•嵌入式微处理器必须功耗很低,尤其是用于便携式的无线及移动的计算和通信设备中靠电池供电的嵌入式系统更是如此,如需要功耗只有 mW甚至 μW级。

Page 14: 第 9 章  嵌入式系统概述

嵌入式微处理器分类嵌入式微处理器分类

嵌入式处理器

嵌入式微控制器(MCU)

嵌入式DSP处理器(DSP)

嵌入式微处理器(MPU)

嵌入式片上可编程系统(SOPC)

Page 15: 第 9 章  嵌入式系统概述

• 嵌入式系统硬件核心是嵌入式处理器。• 嵌入式处理器可以分为四类: 嵌入式微处理器 EMPU ( Embedded Microprocessor Unit) 嵌入式微控制器 EMCU ( Embedded Microcontroller Unit) 嵌入式数字信号处理器 EDSP ( Embedded Digital Signal Processor )

嵌入式片上系统 ESoC ( Embedded System on Chip)

嵌入式系统硬件核心嵌入式系统硬件核心

Page 16: 第 9 章  嵌入式系统概述

嵌入式微处理器嵌入式微处理器 EMPUEMPU• 嵌入式微处理器就是和通用计算机的微处理器对应的 CPU 。在应用中,一般是将微处理器装配在专门设计的电路板上,在母板上只保留和嵌入式相关的功能即可,这样可以满足嵌入式系统体积小和功耗低的要求。

• 嵌入式微处理器制造商:摩托罗拉、英特尔、 IBM 、日立、 NEC 、东芝、 AMD 、国家半导体、 Zilog 、 IDT 、富士通、 Atmel 、太阳、微系统、夏普、 Oki 、飞利浦等。

• 主要的嵌入式微处理器包括: Motorola PowerPC 、Intel Pentium 、 Motorola 68000 、 strong ARM 、MIPS 、 AMD X86 系列等等。

Page 17: 第 9 章  嵌入式系统概述

• 嵌入式微控制器又称为单片机,它将 CPU、存储器(少量的 RAM、 ROM或两者都有)和其它外设接口封装在同一片集成电路里。

• 嵌入式微控制器制造商:摩托罗拉、英特尔、英飞凌科技、 Atmel、日立、 NEC、三菱、东芝、松下、 Microchip、富士、飞利浦、德州仪器、三星、三洋、索尼、 Oki、凌阳科技等。

• 主要的嵌入式微控制器包括: MCS-51、 MCS-251、 MCS-96/196/296、 P51XA、 C166/167、 68K、Z8、 C540、 PIC、 AVR等系列。

嵌入式微控制器嵌入式微控制器 EMCUEMCU

Page 18: 第 9 章  嵌入式系统概述

•嵌入式 DSP专门用来对离散时间信号进行极快的处理计算,提高编译效率和执行速度。在数字滤波、 FFT、谱分析、图像处理等领域应用广泛。

• DSP正在大量进入嵌入式市场,目前广泛应用的是 TI产品 TMS320C2000 /C5000系列,另外 Intel 和 Siemens也有相应的产品。

嵌入式数字信号处理器嵌入式数字信号处理器 EDSPEDSP

Page 19: 第 9 章  嵌入式系统概述

• ESoC:在一个硅片上实现一个更为复杂的系统。

• 各种通用处理器内核将作为 SoC设计公司的标准库,成为 VLSI设计中一种标准的器件,用标准的 VHDL等语言描述。

• 用户只需定义出整个应用系统,仿真通过后,就可以将设计图交给半导体工厂制作样品。

• 这样除个别无法集成的器件以外,整个嵌入式系统大部分均可集成到一块或几块芯片中去,应用系统电路板将变得很简洁,对于减小体积和功耗、提高可靠性非常有利。

嵌入式片上系统嵌入式片上系统 ESoCESoC

Page 20: 第 9 章  嵌入式系统概述

•嵌入式系统软件核心包括: 系统软件:嵌入式操作系统 支撑软件:嵌入式软件开发平台及工具 应用软件:嵌入式应用软件

嵌入式系统软件核心嵌入式系统软件核心

Page 21: 第 9 章  嵌入式系统概述

• 1 .软件要求固态化存储 为了提高执行速度和系统可靠性,嵌入式系统中的软件一般都固化在存储器芯片或单片机本身中,而不是存贮在磁盘中。

• 2 .软件代码高质量、高可靠性 尽管半导体技术的发展使处理器速度不断提高、片上存储器容量不断增加,但在大多数应用中,存储空间仍然是宝贵的,还存在实时性的要求。为此要求程序编写和编译工具的质量要高,以减少程序二进制代码长度、提高执行速度。

嵌入式系统软件的特征嵌入式系统软件的特征

Page 22: 第 9 章  嵌入式系统概述

• 3 .操作系统软件具有高实时性 在多任务嵌入式系统中,对各项任务进行统筹兼顾、合理调度是保证系统功能的关键,单纯提高处理器的速度是无法完成这些要求的,也是没有效率的,这种任务调度只能由优化编写的系统软件来完成,因此操作系统软件的高实时性是基本要求。

• 4 嵌入式系统应用语言: 据统计,在嵌入式系统设计中,最受欢迎的前 3 种编程语言分别是 C(74.6%)、汇编(69.6%)和 C++ (50.1%)。

嵌入式系统软件的特征嵌入式系统软件的特征

Page 23: 第 9 章  嵌入式系统概述

• 通用计算机具有完善的操作系统,应用程序的开发以及完成后的软件都在 OS平台上面运行,但一般不是实时的。

• 嵌入式系统则不同,应用程序用汇编语言和 C语言来开发,可以没有操作系统直接在芯片上运行;但是为了合理地调度多任务、利用系统资源,用户必须自行选配 RTOS开发平台,这样才能保证程序执行的实时性、可靠性,并减少开发时间,保障软件质量。

嵌入式实时操作系统嵌入式实时操作系统

Page 24: 第 9 章  嵌入式系统概述

• 一般来说,操作系统内核只提供基本的功能,如建立和管理进程、管理设备等。但是,一些桌面操作系统,如Windows等,将许多功能引入内核,操作系统的内核变得越来越大。内核变大使得占用的资源增多,剪裁起来很麻烦。

• 嵌入式操作系统采用微内核结构,内核只提供基本的功能,比如:任务的调度、任务之间的通信与同步、内存管理、时钟管理等。其它的应用组件,比如网络功能、文件系统等均工作在用户态,以系统进程或函数调用的方式工作。因而系统都是可裁减的,用户可以根据自己的需要选用相应的组件。

嵌入式实时操作系统特点嵌入式实时操作系统特点 11 .微内核结构.微内核结构

Page 25: 第 9 章  嵌入式系统概述

• 任务的调度有三种方式:可抢占式调度、不可抢占式调度和时间片轮转调度。

• 不可抢占式调度:一个任务一旦获得 CPU就独占 CPU运行,除非由于某种原因,它决定放弃 CPU的使用权;

• 可抢占式调度:基于任务优先级,当前正在运行的任务可以随时让位给优先级更高的处于就绪态的其它任务;

• 时间片轮转调度:当两个或两个以上任务有同样的优先级,不同任务轮转地使用 CPU,直到系统分配的 CPU时间片用完。

• 目前,大多数嵌入式操作系统对不同优先级的任务采用基于优先级的抢占式调度法,对相同优先级的任务则采用时间片轮转调度法。

嵌入式实时操作系统特点嵌入式实时操作系统特点 22 .任务调度.任务调度

Page 26: 第 9 章  嵌入式系统概述

• 多数嵌入式系统对时间的要求较高,称之为实时系统。

• 有两种类型的实时系统:硬实时系统和软实时系统。• 软实时系统并不要求限定某一任务必须在一定的时间内完成,只要求各任务运行得越快越好;

• 硬实时系统对系统响应时间有严格要求,一旦系统响应时间不能满足,就可能会引起系统崩溃或致命的错误,一般在工业控制中应用较多。

嵌入式实时操作系统特点嵌入式实时操作系统特点 33 .硬实时和软实时.硬实时和软实时

Page 27: 第 9 章  嵌入式系统概述

• 一些桌面操作系统使用了虚拟存储器的概念。采用段式管理、页式管理、或段页式管理。

• 但是,大多数嵌入式系统不使用虚存技术,对内存的访问是直接的,使用物理地址;而且,大多数嵌入式操作系统对内存空间没有保护,各个进程共享同一个运行空间。一个进程在执行前,系统必须为它分配足够的连续地址空间,然后全部载入主存储器。

• 由此可见,嵌入式系统的开发人员必须参与系统的内存管理,对软件中的一些内存操作必须格外小心。

嵌入式实时操作系统特点嵌入式实时操作系统特点 44 .内存管理.内存管理

Page 28: 第 9 章  嵌入式系统概述

• 嵌入式操作系统内核可以在 Flash上直接运行,也可以加载到内存中运行。

• Flash的运行方式,是把内核的可执行映像烧写到 Flash上,系统启动时从 Flash的某个地址开始执行。这种方法实际上是很多嵌入式系统所采用的方法。

• 内核加载方式是把内核的压缩文件存放在Flash上,系统启动时读取压缩文件在内存里解压,然后开始执行。这种方式相对复杂一些,但是运行速度可能更快,因为 RAM的存取速率要比 Flash高。

嵌入式实时操作系统特点嵌入式实时操作系统特点 55 .内核加载方式.内核加载方式

Page 29: 第 9 章  嵌入式系统概述

常见的实时操作系统常见的实时操作系统 国内 RTOS :• 女娲Hopen• 桑夏 2000• Delta OS• 中软 Linux2.0• Linux HardHat• Linux (Monta Vista)• Red Flag Linux(红旗Linux )• HBOS(“天堂之鸟”)• Suse• Red Hat• Embedix• LynxOS (LynuxWorks)

Page 30: 第 9 章  嵌入式系统概述

常见的实时操作系统常见的实时操作系统 国外RTOS :• VX Works (风河系统 )• Windows CE ( 微软 )• VRTX ( 明导资讯 )• Palm• PowerTV• AMX (KADAK)• C Executive• PSX (JMI)• VelOSity (Green Hills)• OS-9 (Microware Systems)• OSE (Enea OSE Systems)• QNX (QNX Software Sys)

• RTXC (Lineo/Embedded Power Corp)

• SuperTask! (US Software)

• ThreadX (Express Logic)• TNT/RTX (VenturCom)• Windows NT

Embedded/XP ( 微软 )

Page 31: 第 9 章  嵌入式系统概述

嵌入式系统开发工具嵌入式系统开发工具 • 编译器: GNU编译器• 调试工具: GNU调试工具• 集成开发环境( IDE)• 绘图入门工具• 算法开发工具: UML/SDL工具

库• 网络 / 通信协议• 配置管理工具• 需求管理工具• DSP开发工具• 器件驱动器开发工具• 软硬件协同验证工具

• Java工具• 存储器分析工具• 软件仿真 / 建模工具• Win CE工具• 测试软件事件跟踪工具• 内电路仿真器( ICE)• ROM仿真器• JTAG仿真器• 逻辑分析器• 示波器

Page 32: 第 9 章  嵌入式系统概述

9.3 9.3 嵌入式系统开发流程嵌入式系统开发流程

Page 33: 第 9 章  嵌入式系统概述

1 嵌入式软件开发的特点 嵌入式系统与通用计算机系统的差别:

– 人机交互界面

– 有限的功能

– 时间关键性和稳定性

Page 34: 第 9 章  嵌入式系统概述

嵌入式软件开发的特点:–需要交叉开发环境:交叉开发环境是指实现编译、链接和调试应用程序代码的环境。与运行应用程序的环境不同,它分散在有通信连接的宿主机与目标机环境之中。

宿主机 (Host)是一台通用计算机,一般是 PC机。它通过串口或网络连接与目标机通信。 目标机 (Target) 可以是嵌入式应用软件的实际运行环境,也可以是能替代实际环境的仿真系统。

Page 35: 第 9 章  嵌入式系统概述

嵌入式软件开发的特点:

–引入任务设计方法 –需要固化程序 –软件开发难度大

嵌入式应用软件对实时性、稳定性、可靠性、抗干扰性等性能的要求都比通用软件的要求更为严格和苛刻。

Page 36: 第 9 章  嵌入式系统概述

2.2 嵌入式系统开发的流程

嵌入式软件的开发流程与通用软件的开发流程大同小异,但开发所使用的设计方法具有嵌入式开发的特点。整个开发流程可分为:

需求分析阶段设计阶段生成代码阶段固化阶段

Page 37: 第 9 章  嵌入式系统概述

需求分析阶段

嵌入式系统应用需求中最为突出的是注重应用的时效性,需求分析阶段的主要任务是:(1)对问题的识别和分析 对用户提出的问题进行抽象识别用以产生以下的需求:功能需求、性能需求、环境需求、可靠性需求、安全需求、用户界面需求、资源使用需求、软件成本与开发进度需求。

Page 38: 第 9 章  嵌入式系统概述

需求分析阶段

(2)制订规格说明文档 经过对问题的识别,产生了系统各方面的需求。通过对规格的说明,文档得以清晰、准确地描述。这些说明文档包括需求规格说明书和初级的用户手册等。(3)需求评审 需求评审作为系统进入下一阶段前最后的需求分析复查手段,在需求分析的最后阶段对各项需求进行评估,以保证软件需求的质量。需求评审的内容包括正确性、无歧义性、安全性、可验证性、一致性、可理解性、可修改性、可追踪性等多个方面。

Page 39: 第 9 章  嵌入式系统概述

设计阶段 系统的设计阶段包括系统设计、任务设计和任务的详细设计。由于嵌入式系统中任务的并发性,嵌入式软件开发中引入了 DARTS(Design Approach for Real-Time System)

DARTS 设计方法:是结构化分析 / 结构化设计的扩展。它给出划分任务的方法,并提供定义任务间接口的机制。

DARTS 设计方法的设计步骤如下:•(1) 数据流分析 •(2) 划分任务 •(3) 定义任务间的接口

Page 40: 第 9 章  嵌入式系统概述

生成代码阶段 生成代码阶段需要完成的工作包括代码编程、交叉编译和链接、交叉调试和测试等。

Page 41: 第 9 章  嵌入式系统概述

代码编程

生成代码阶段

在嵌入式系统的开发过程中,一般采用的方法是先在通用 PC 上编程,然后通过交叉编译链接,将程序做成目标平台上可以运行的二进制代码格式。最后将程序下载到目标平台上的特定位置,在目标板上启动运行这段二进制代码。

Page 42: 第 9 章  嵌入式系统概述

生成代码阶段

交叉编译和链接 嵌入式软件开发编码完成后,要进行编译和链接以生成可执行代码。但是,在开发过程中设计人员普遍使用 Intel 的 x86 系列 CPU 的计算机进行开发,而目标环境的处理芯片却是多种多样的,如ARM , DSP , PowerPC , DragonBall 系列等,这就要求开发机上的编译器能支持交叉编译。 嵌入式集成开发环境都支持交叉编译、链接,如WindRiver公司的 TornadoⅡ 以及 GNU 套件等。交叉编译链接生成两种类型的可执行文件:调试用的可执行文件和固化的可执行文件。

Page 43: 第 9 章  嵌入式系统概述

生成代码阶段交叉调试交叉调试,又叫远程调试,具有以下特点: 调试器和被调试的程序运行在不同的机器上。调试器运行在 PC或工作站上,而被调试程序运行在各式的专用目标机上; 调试器通过某种通信方式与目标机建立联系,如串口、并口、网络、 JTAG或者专用的通信方式;

Page 44: 第 9 章  嵌入式系统概述

• 在目标机上一般具有某种调试代理,这种代理能与调试器一起配合完成对目标机上运行程序的调试。这种代理可以是某种能支持调试的硬件,也可以是某种软件;

• 目标机可以是一种仿真机。通过在宿主机上运行目标机的仿真软件,仿真一台目标机,使整个调试工作只在一台计算机上进行。

嵌入式系统开发的测试与通用软件的测试相似,分为单元测试和系统集成测试。

生成代码阶段

测试

Page 45: 第 9 章  嵌入式系统概述

固化阶段

嵌入式系统的应用软件是针对特定的实际专业领域的,基于相应的嵌入式硬件平台,并能完成用户预期任务的计算机软件。

嵌入式软件的特点如下:(1)软件要求固态化存储。(2)软件代码要求高质量、高可靠性。(3)系统软件的高实时性是基本要求。(4)多任务实时操作系统成为嵌入式应用软件的必需。

Page 46: 第 9 章  嵌入式系统概述

总结:嵌入式软件开发的要点 嵌入式应用软件高度依赖目标应用的软硬件环境,软件的部分任务功能函数由汇编语言完成,具有高度的不可移植性。

为了保证实时性能,使用效率高和速度快的汇编语言是不可避免的。

尽可能提高嵌入式应用软件的可移植性方法: (1)尽量用高级语言开发,少用汇编语言 (2) 局域化不可移植部分 (3)提高软件的可重用性

Page 47: 第 9 章  嵌入式系统概述

2.3 嵌入式系统的调试嵌入式系统的调试过程:

Page 48: 第 9 章  嵌入式系统概述

2.3 嵌入式系统的调试

嵌入式系统的调试方法:1 .源程序模拟器方式2 .监控器方式3 .仿真器方式

Page 49: 第 9 章  嵌入式系统概述

源程序模拟器方式

源程序模拟器 (Simulator)是在 PC机上,通过软件手段模拟执行为某种嵌入式处理器编写的源程序的测试工具。

注意 :模拟器的功能毕竟是以一种处理器模拟另一种处理器的运行,在指令执行时间、中断响应、定时器等方面很有可能与实际处理器有相当大的差别。另外,它无法仿真嵌入式系统在应用系统中的实际执行情况。

比如: ARM公司的 ARMulator模拟器

Page 50: 第 9 章  嵌入式系统概述

监控器方式 监控器 (Monitor)调试方式需要目标机与宿主机协调。首先,在宿主机和目标机之间通过串口、以太口等建立物理连接,然后在宿主机上运行调试器,目标机运行监控程序和被调试程序,从而建立宿主机与目标机的逻辑连接。宿主机通过调试器与目标机的监控器建立通信连接,它们相互间的通信遵循远程调试协议。比如 ARM公司的 Angel 。

Page 51: 第 9 章  嵌入式系统概述

仿真器方式

仿真器调试方式是在微处理器的内部嵌入额外的控制模块。当特定的触发条件满足时,系统将进入某种特殊状态。在这种状态下,被调试的程序暂时停止运行,宿主机的调试器通过微处理器外部特设的通信口访问各种寄存器、存储器资源,并执行相应的调试指令。 在宿主机的通信端口和目标板调试通信接口之间,通信接口的引脚信号可能存在差异,因此在这两者之间往往可以通过一块信号转换电路板连接。 一般高档的微处理器都带 JTAG (Joint Test Action Group,联合测试行动组 )接口,它是一种边界扫描标准,只需 5根引脚就可以实现在线仿真的功能。

Page 52: 第 9 章  嵌入式系统概述

2.4 板级支持包 由于嵌入式系统中采用微处理器/微控制器的多样性,嵌入式操作系统的可移植性显得更加重要。所以有些嵌入式操作系统的内核明确分成两层,上层一般称为“内核”,而低层则称为“硬件抽象层” ,底层的缩写是 HAL,也有的厂商( 如 VxWorks 的提供者 WindRiver公司 )把硬件抽象层称 为 BSP , 即 板 级 支 持 包 (Board Support Package)。板级支持包是操作系统与目标应用硬件环境的中间接口,它是软件包中具有平台依赖性的那一部分。

板级支持包的主要功能包括两部分:在系统启动时,对硬件进行初始化 为驱动程序提供访问硬件的手段