嵌入式操作系统期末复习资料(已分类)超全
嵌入式期末复习提纲(包含复习资料)
考试题型:•1、判断题 10分•2、填空题 20分•3、选择题 20分•4、简答题 30分(5个)•5、应用题 20分(3个)•6、名字解释复习资料:•书本•课件,平时课堂例题。
•平时作业和练习•考试范围:1-5章•其他说明:•课后习题是重点。
•简答题来源于前5章,每章一个。
每章重点:第一章:1.什么是嵌入式系统?试简单列举一些生活中常见的嵌入式系统的实例。
嵌入式系统是用于检测、控制、辅助、操作机械设备的装置。
以应用为中心,一计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积和功耗等严格要求的专用计算机系统。
2.嵌入式系统具有哪些特点?3.嵌入式系统由哪些部分组成?简单说明各部分的功能和作用。
4.嵌入式系统是怎样分类的?5.嵌入式系统的定义。
嵌入式系统是用于检测、控制、辅助、操作机械设备的装置。
以应用为中心,一计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积和功耗等严格要求的专用计算机系统。
6.什么是交叉编译,试说明交叉编译的实现过程。
7.嵌入式系统有哪些应用领域。
嵌入式系统技术具有非常广阔的应用前景,其应用领域可以包括:1.工业控制:基于嵌入式芯片的工业自动化设备将获得长足的发展,目前已经有大量的8、16、32 位嵌入式微控制器在应用中,网络化是提高生产效率和产品质量、减少人力资源主要途径,如工业过程控制、数字机床、电力系统、电网安全、电网设备监测、石油化工系统。
就传统的工业控制产品而言,低端型采用的往往是8位单片机。
但是随着技术的发展,32位、64位的处理器逐渐成为工业控制设备的核心,在未来几年内必将获得长足的发展。
2.交通管理:在车辆导航、流量控制、信息监测与汽车服务方面,嵌入式系统技术已经获得了广泛的应用,内嵌模块,模块的移动定位终端已经在各种运输行业获得了成功的使用。
目前设备已经从尖端产品进入了普通百姓的家庭,只需要几千元,就可以随时随地找到你的位置。
嵌入式操作系统 期末复习
bootloader
什么是bootloader? bootloader程序的作用? bootloader程序的框架结构?
阶段一 阶段二
bootloader
u-boot
基本配置编译过程 u-boot的使用 u-boot的启动流程
内核
内核的配置编译过程 内核配置命令
模块程序结构 模块命令
insmod rmmod lsmod
编译模块
字符设备驱动程序
设备文件
主、次设备号
重要数据结构
struct file struct file_operations struct cdev dev_t 打开的文件 操作函数集合 表示一个字符设备驱动 设备号类型
字符设备驱动程序结构 字符设备驱动程序的框架 设备文件的创建
mknod mdev
内核同步方法
原子操作
整数 位
自旋锁
读写锁
信号量
读写信号量
互斥体
构建linux系统的线索-启动流程
复位上电
bootloder的结构
bootloader启动内核
zImage启动需要什么条件
复习
提纲
linux系统的使用(命令) 开发环境--交叉开发 构建linux系统
bootloader程序 内核 根文件系统
驱动程序开发
模块 字符设备驱动 同步
linux系统的使用(命令)
试验中用到的各个命令
开发环境
GNU开发工具
gcc as ld objdump objcopy strip
交叉开发环境
什么是交叉开发 arm-linux-xxx
bootloader
嵌入式操作系统期末复习资料
什么是嵌入式系统❖顾名思义:▪包含(安装)在电子装置(应用对象)内部的计算机系统称为嵌入式系统。
❖基本描述:▪专门用途的计算机系统▪常常用于控制▪广泛存在▪包含硬件和软件❖根据IEEE(国际电气和电子工程师协会)的定义:▪嵌入式系统是“用于控制、监视或者辅助设备、机器和车间运行的装置。
”嵌入式系统的定义❖本课程使用的定义,也是国内高校流行的定义:⏹嵌入式系统是以应用为中心⏹以计算机技术为基础⏹且软硬件可裁剪⏹适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统⏹它一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成⏹用于实现对其他设备的控制、监视或管理等功能。
嵌入式系统的发展简史❖第一阶段▪4到8位单片机为核心的可编程控制器系统❖第二阶段▪以8到16位嵌入式处理器(CPU)为基础❖第三阶段▪32位RISC嵌入式中央处理器▪嵌入式操作系统❖第四阶段▪基于Internet接入为标志的嵌入式系统❖可从4个方面考察嵌入式系统的历史▪硬件▪软件▪代表产品▪系统结构嵌入式系统的特点❖专门用于特定任务▪嵌入式系统一般是专用系统,而PC是通用计算平台。
❖技术融合▪集计算机、半导体、电子技术、通信技术于一体。
❖有实时约束▪一般采用实时操作系统❖有功耗约束❖软件没有系统和应用的区别,软件固化。
❖系统内核小❖软硬件可裁剪❖高可靠性❖资源比PC少得多❖嵌入式系统需要专用的开发工具❖非垄断市场软件硬件基本要素❖硬件▪嵌入式处理器▪各种类型存储器▪模拟电路及电源▪接口控制器及接插件❖软件▪应用程序▪实时操作系统▪协议栈▪设备驱动▪板级支持包发展:无所不在的计算时代远远大于CPU普适计算基本特征❖普适计算是指无所不在的、随时随地可以进行计算的一种方式。
它使计算机融入人的生活空间。
❖普适计算不再局限于桌面,用户可以通过手持设备、可穿戴设备或其他常规、非常规计算设备无障碍地享用计算能力和信息资源,使用户能够随时随地获取各种信息,并做出回应。
嵌入式操作系统复习资料
嵌入式操作系统课程复习(嵌入式操作系统原理)一、真空题1.根据系统中的任务获得使用CPU的权力的方式,多任务实时操作系统的内核分为可剥夺型和不可剥夺型两种类型。
2.实时操作系统需要满足的条件包括多任务、可剥夺型内核、任务切换时间固定、中断延时尽量短。
3.目前比较常见的操作系统有_WinCE_、_uCLinux_、_Uc/OC-II_等。
4.在ucos-ii中任务的状态包括_睡眠状态_、就绪状态_、运行状态、中断服务状态_等。
5.在ucos-ii中任务由_任务的代码_、任务控制块_、_任务堆栈_三个部分组成。
6.在ucos-ii中提供的空闲任务OSTaskIdle()的作用是完成_对OSdleCtr计数器加1_。
7.在ucos-ii中提供的统计任务OSTaskStat()的作用是完成_CPU利用率OSCPUUsage统计。
8.在ucos-ii中任务的调度主要完成_在任务就绪表中查找具有最高优先级别的就绪任务_、实现任务的切换两件事。
二、简答题1.代码的临界段?在ucos-ii中通过哪几种方式实现?在应用程序中,能够不受任何干扰而运行的代码段,称做临界段。
它主要通过开关中断技术实现。
用户可通过定义移植文件OS_CPU.H中的常数OS_CRITICAL_METHOD 来实现选择开关中断的实现方法分三种:1)直接用处理器指令2)在堆栈中保存中断的开关状态,然后再关中断。
3)通过编译器提供的c函数来保存处理器状态字的值。
#if OS_CRITICAL_METHOD == 1#define OS_ENTE R_CRITICAL() asm ("DI") //关中断#define OS_EXIT_CRITICAL() asm ("EI") //开中断#endif#if OS_CRITICAL_METHOD == 2#define OS_ENTER_CRITICAL() asm ("PUSH PSW,DI") //保存CPU状态,关中断#define OS_EXIT_CRITICAL() asm ("POP psw) //恢复中断允许标志#endif#if OS_CRITICAL_METHOD == 3#define OS_ENTER_CRITICAL() ("cpu_sr = get_processor_psw(),DI") //保存CPU状态,关中断#define OS_EXIT_CRITICAL() ("Set_processor_psw(cpu_sr)) //恢复中断允许标志#endif2.调度?在ucos-ii中其调度算法是什么?在多任务系统中,令CPU中止当前正在运行的任务转而去运行另一个任务的工作叫任务切换,而按某种规则进行任务切换的工作叫做任务的调度。
(完整word版)嵌入式复习题(非常全_适合期末复习)
1、ARM 微处理器有 7种工作模式,它们分为两类 非特权模式 、 特权模式 。
其中用户模式属于 非特权模式4、ARM 微处理器复位后,PC 的地址通常是 0x0 ,初始的工作模式是Supervisor 。
5、ARM 微处理器支持虚拟内存,它是通过系统控制协处理器 CP15 和MMU (存储管理部件)来进行虚拟内存的存储和管理。
当系统发生 数据 异常和 指令领取 异常时,异常处理程序透过嵌入式操作系统的内存管理机制,通过MMU 交换物理内存和虚拟内存的页面,以保证程序正常执行。
6、编译链接代码时,有两种存储代码和数据的字节顺序,一种是 小端对齐 ,另一种是 打断对齐7、构建嵌入式系统开发环境的工具链有多种,其中开放源码的工具链是 GNU 工具链 ,ARM 公司提供的工具链是 ADS 工具链计算机有CISC 和RISC 两种类型,以ARM 微处理器为核心的计算机属于 RISC 类型,其指令长度是 定长的1、目前使用的嵌入式操作系统主要有哪些?请举出六种较常用的。
Windows CE/Windows Mobile 、VxWork 、Linux 、uCos 、Symbian 、QNX 任选六2、ARM 系统中的堆栈有四种,如下图。
请按图标出四种堆栈的类型。
ATPCS 编程规范约定使用的堆栈是哪一种?答:FD 、FA 、ED 、EA 。
ATPCS 编程规范约定使用的堆栈是FD3、Boot Loader 在嵌入式系统中主要起什么作用?完成哪些主要的工作?答:Boot Loader 是在嵌入式系统复位启动时,操作系统内核运行前,执行的一段程序。
通过Boot Loader ,初始化硬件设备,建立内存和I/O 空间映射图,为最终加载操作系统内核调整好适当的系统软硬件环境。
2、ARM 支持两个指令集, ARM 核因运行的指令集不同,分别有两个状态 ARM 、 Thumb ,状态寄存器CPSR 的 T 位反映了处理器运行不同指令的当前状态3、ARM 核有多个寄存器,其中大部分用于通用寄存器,有小部分作为专用寄存器, R15 寄存器用于存储PC ,R13通常用来存储 SP ,ARM 处理器有两种总线架构,数据和指令使用同一接口的是 冯诺依曼结构 ,数据和指令分开使用不同接口的是 哈佛结构 。
(完整word版)本科期末考试嵌入式系统原理及应用最终版整理复习要点(word文档良心出品)
嵌入式复习大纲第一章1、嵌入式系统定义及概念:嵌入式系统是以应用为中心、以计算机技术为基础、软硬件可裁减、功能、可靠性、成本、体积、功耗严格要求的专用计算机系统2、嵌入式系统的特点:(3个)1)嵌入式系统通常是面向特定应用的;2)嵌入式系统功耗低、体积小、集成度高、成本低;3)嵌入式系统具有较长的生命周期;4)嵌入式系统具有固化的代码;3、嵌入式处理器的分类:1)嵌入式微处理器(EMPU);2)嵌入式微控制器(EMCU);3)嵌入式DSP处理器(EDSP);4)嵌入式片上系统(ESoC)。
4、嵌入式系统的组成:由硬件层、中间层、系统软件层和应用软件层组成。
(1)硬件层中包含嵌入式微处理器、存储器(SDRAM、ROM、Flash等)、通用设备接口和I/O接口(A/D、D/A、I/O等)(2)硬件层与软件层之间为中间层,也称为硬件抽象层,该层一般包含相关底层硬件的初始化、数据的输入/输出操作和硬件设备的配置功能。
BSP具有以下两个特点。
(3)系统软件层由实时多任务操作系统、、文件系统、图形用户接口、网络系统及通用组件模块组成。
5、嵌入式操作系统:嵌入式实时操作系统µC/OS-II、嵌入式Linux、Windows Embedded、VxWorks、pSOS、等,以及应用在智能手机和平板电脑的Android、iOS等6、嵌入式系统的设计方法:(需交叉编译和调试环境)(1)系统定义与需求分析(2)系统设计方案的初步确立(3)初步设计方案性价比评估与方案评审论证(4)完善初步方案、初步方案实施(5)软硬件集成测试(6)系统功能性能测试及可靠性测试第二章1、ARM的CISC、RISC ARM7~ARM9(1)CISC特点:复杂指令、各种类型的内存寻址方式、微程序结构、效率高(2)RISC特点:固定指令长度、指令流水线处理、简化内存管理、硬件接线式控制、单周期执行、复杂度存于编译程序内(3)冯诺依曼结构:输入输出设备、运算器、控制器、存储器主要贡献:提出并实现了“存储程序”的概念2、ARM7:采用3级流水线结构,采用冯诺依曼结构(程序存储与数据存储统一编址)ARM9:采用5流水线结构,采用哈弗体系结构(程序存储器与数据存储器分开独立编址)ARM10:采用6流水线结构,采用哈弗体系结构ARM11:采用8流水线结构,采用哈弗体系结构3、ARM体系结构的技术特征:(1)单调周期操作(2)采用加载/存储指令结构(执行速度快)(3)固定32位指令(结构简单、效率高)(4)地址指令格式(三地址指令格式,优化代码)(5)指令流水线技术(提高执行效率)4、ARM的三种工作状态,如何标记?(1)ARM状态:32位,ARM状态下执行字对准的32位ARM指令;(2)Thumb状态:16位,Thumb状态下执行半字对准的16位Thumb指令。
嵌入式系统复习资料整理
1.嵌入式系统的定义嵌入式计算机系统简称为嵌入式系统,将先进的计算机技术、半导体技术和电子技术与各个行业的具体应用相结合后的产物。
嵌入式系统:、以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
嵌入式操作系统的特点:可固化、可配置、可剪裁、独立的板级支持包,可修改、不同的CPU有不同的版本、应用的开发需要有集成的交叉开发工具嵌入式操作系统的组成:嵌入式操作系统、操作系统内核、文件系统、网络协议栈、GUI 、USB协议栈等2.通用计算机系统与嵌入式系统的比较形式和类型看得见的计算机。
按其体系结构、运算速度和结构规模等因素分为大、中、小型机和微机。
组成通用处理器、标准总线和外设。
软件和硬件相对独立。
开发方式开发平台和运行平台是通用计算机二次开发应用程序可重新编程形式和类型看不见的计算机形式多样应用领域广泛,按应用来分类组成面向应用的嵌入式微处理器,总线和外部接口多集成在处理器内部,软件与硬件是紧密集成在一起的。
开发方式采用交叉开发方式,开发平台一般是通用计算机,运行平台是嵌入式系统。
二次开发一般不能在编程微处理器构成的嵌入式系统(以家电为例)4位、8位、16位、32位处理器○简单的冰箱、洗衣机、微波炉、电视机(CRT电视)80-90年代的发达国家的高端家电=2010年的家电下乡产品4位处理器固化的专用嵌入式芯片○除了媒体播放器和LCD电视机以外的量产的智能家电8位处理器、需要写程序进去的产品3 .单片机又称微控制器(Microcontroller)(MCU)将嵌入式应用所需要的微处理器、I/O接口、A/D、D/A转换、串行接口以及RAM、ROM通通集成到一个VLSI中, 制造出面向I/O设计的微控制器,就是我们俗称的单片机DSP 数字信号处理器与CPU(MCU)相比:有更多的硬件运算单元乘除法、矩阵数字运算速度快存储和外设管理相对简单适合数字滤波器和媒体编解码算法的运算音频、视频处理智能仪表调制解调器ARM32位RISC嵌入式处理器ARM公司负责研发处理器内核的IP众多的公司购买IP的知识产权后制造出形式多样的MCU,如:○不同档次手机的处理器○上网本、PSP、平板电脑○嵌入式工业终端和银行ATM机4. 嵌入式系统的特点(1)形式多样、面向特定应用硬件和软件都必须高效率地设计,避免冗余低功耗的需求低成本高可靠软件的一体化(OS&APP(2)多种类型的处理器和处理器体系结构MCU&DSPMCU:ARMMIPSPowerPC(3)实时性和可靠性要求较高(4)操作系统可剪裁、轻量型、实时可靠、可固化(5)嵌入式系统开发需要专门工具和特殊方法5. 嵌入式系统的发展趋势更高的集成度更低功耗普遍的网络支持更加标准化6. ARM经典处理器:ARM11、ARM9™和ARM7™处理器系列Cortex-A 系列:共享同一体系结构,因此具有完整的应用兼容性,支持传统的ARM、Thumb®指令集和新增的高性能紧凑型Thumb-2 指令集Cortex-R 系列:快速- 以高时钟频率获得高处理性能。
嵌入式系统期末复习
A.嵌入式系统定义:嵌入式系统是以应用为中心,以计算机技术为基础,采用可剪裁软硬件,适用于对功能、可靠性、成本、体积、功耗等有严格要求的专用计算机系统。
B.嵌入式系统的体系结构:a.嵌入式微处理器b.外围硬件设备c.嵌入式操作系统d.应用程序C 、ARM 微处理器的特点:体积小、低功耗、低成本、高性能支持Thumb (16位)/ARM (32位)双指令集,能很好的兼容8位/16位器件大量使用寄存器,指令执行速度快大多数数据操作都在寄存器中完成寻址方式灵活简单,执行效率高采用固定长度的指令格式D 、嵌入式操作系统简介:操作系统可以有效管理越来越复杂的系统资源。
操作系统可以把硬件虚拟化,使得开发人员从繁忙的驱动程序移植和维护中解脱出来。
操作系统可以提供库函数、驱动程序、工具集以及应用程序。
E 、嵌入式系统设计:嵌入式系统设计过程硬件设计平台的选择软件设计平台的选择 嵌入式应用软件开发 测试和优化F 、硬件设计平台的选择:处理器选择 处理性能技术指标功耗软件支持工具 硬件选择的其它因素生产规模市场目标软件对硬件的依赖性 Linux 的支持性嵌入式应用软件嵌入式操作系统嵌入式硬件平台嵌入式处理器嵌入式外围设备选择嵌入式处理器(硬件平台)选择嵌入式操作系统(软件平台)开发嵌入式应用软件测试通过否系统测试开发结束是G 、软件设计平台的选择:操作系统的选择提供的开发工具向硬件接口移植的难度 是否提供硬件的驱动程序开发语言的选择通用性 可移植性程度 执行效率开发环境系统调试器的功能 支持库函数H 、H 、最小系统:一个嵌入式处理器自己是不能独立工作的,必须给它供电、加上时钟信号、提供复位信号,如果芯片没有片内程序存储器,则还要加上存储器系统,然后嵌入式处理器芯片才可能工作。
这些提供嵌入式处理器运行所必须的条件的电路与嵌入式处理器共同构成了这个嵌入式处理器的最小系统。
而大多数基于ARM7处理器核的微控制器都有调试接口,这部分在芯片实际工作时不是必需的,但因为这部分在开发时很重要,所以也把这部分也归入最小系统中。
嵌入式系统期末复习汇总.doc
嵌入式系统期末复习汇总1.简述bootloader的概念?答:简单地说,BootLoader就是在操作系统内核或用户应用程序运行之前运行的一段小程序。
通过这段小程序, 我们可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核或用户应用程序准备好正确的环境。
对于一个嵌入式系统来说,可能有的包括操作系统,有的小型系统也可以只包括应用程序,但是在这之前都需要BootLoader为它准备•个正确的环境。
2.在Linux系统中,驱动程序可以采用哪种方式加载?答:在Linux系统中,驱动程序可以采用两种方式进行加载。
1)可以和内核一起编译,在内核启动时自动加载该驱动;2)驱动程序模块动态加载方式,使用insmod和rmmod加载和卸载驱动程序模块。
3.与通用计算机相比,嵌入式系统有哪些特点?答:与通用计算机相比,嵌入式系统有以下特点:(1)嵌入式系统通常是面向特定应用的;(2)嵌入式系统的硬件和软件必须高效率地设计,做到量体裁衣、去除冗余;(3)有实时■操作系统的支持;(4)嵌入式系统具有较长的生命周期;(5)嵌入式系统中的软件-般都固化在存储器芯片或单片机本身中,而不是存储在磁盘等载体中;(6)具有专门的开发工具支持。
4.试比较单一内核和微内核的异同?答:单一内核是指操作系统中所有的系统相关功能都被封装在内核中,它们与外部程序处在不同的内存地址空间中,并通过各种方式防止外部程序直接访问内核中的数据结构,程序只有通过-套称作系统调用(System Call)的界面访问内核结构。
而在微内核结构中,操作系统的内核只需要提供最基本、最核心的一部分操作(如创建和删除任务、内存管理、中断管理等)即可,而其他管理程序(如文件系统、网络协议栈等)则尽可能放在内核以外,这些外部程序可以独立运行,并对外部用户程序提供操作系统服务,服务之间使用进程间通信机制(IPC)进行交互。
嵌入式期末复习资料资料
第一章 嵌入式控制系统简介嵌入式系统定义:是以应用为中心、以计算机技术为基础、软硬件可裁剪的,对功能、可靠性、成本、体积和功耗有严格要求的专用计算机系统。
是一个具有特定功能或用途的计算机软硬件结合体。
单片机和嵌入式控制系统的定义:(两者为同一个东西)单片机就是在一片半导体硅片上集成了中央处理器单元(CPU )、存储器(RAM/ROM )和各种I/O 接口的微型计算机。
单片机主要应用在测试和控制领域。
嵌入式控制系统的设计方法:作为嵌入式控制器的单片机受自身限制,所以需要一个通用计算机,称为“宿主机”,嵌入式控制器的单片机称为“目标机”(开发板)。
应用程序在宿主机上开发,在目标机上运行。
之间利用计算机并口或USB 口通过“仿真器”连接。
程序从宿主机到目标机叫“下载”,反之叫“上传”。
在宿主机上反复修改(调试)。
调试好的程序,在宿主机上编译成目标机可运行的机器码文件,通过“固化器”设备下载并固化(称之为“烧写”或者“程序固化”)在目标机的程序存储器中。
交叉环境的建立需要什么(过程)(嵌入式开发环境所需要的组件)1、硬件 宿主机、目标机、仿真器2、软件 OS 、开发工具、相关芯片的驱动、通信控制软件。
3、连线 USB 线、串口线、电源线、网络线、JTAG (仿真器)线交叉编译的概念:在一种计算机平台上编译生成可运行与另一台计算机平台的二进制代码的过程。
DSP 数字信号处理,是一种独特的微处理器,是以数字信号处理大量信息的器件RAM 体系结构的存储器格式大端格式:字数据的高字节存储在低地址单元中小端格式:字数据的高字节存储在高地址单元中 Eg :(高)12 34 56 78(低) 小端 在侵入式系统中一般采取小端格式 第二章 ADS1.2开发环境的创建与简介ADS1.2概述:1、编译器 RAMCC RAM C 编译器2、链接器: armlink 将多个目标文件或多个库文件进行链接生成一个可执行文件3、符号调试器、armsd 进行单步调试、设置断点4、调试器 AXD Armsd5、库函数生成器 armar如何搭建一个嵌入式开发环境一、认识开发板1、RAM开发板的硬件配置,CPU,SDRAM,FLASH(包括键盘LED驱动器触摸屏),以太网、USB、串口调试器借口(JTAGT)2、RAM体系结构以及编程二、开发板与宿主之间的通信< JTAG >、< COM >、< 网口、TFTP协议>、< SD卡口>三、宿主机与windows平台四、文件烧写包括烧写内核、根文件系统应用程序等。
嵌入式期末复习资料 (9)
第一章嵌入式系统概论本章主要内容:1.什么是嵌入式系统(嵌入式系统是计算机软件与计算机硬件集成在一起,并嵌入到应用对象内部的计算机系统)▪嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。
▪它一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成,用于实现对其他设备的控制、监视或管理等功能。
2.嵌入式系统分类(按技术复杂度分类:无操作系统控制的嵌入式系统NOSES;小型操作系统控制的嵌入式系统SOSES;大型操作系统控制的嵌入式系统LOSES。
按用途分类:军用,工业用,民用。
)系统级,板级,片级❑芯片级嵌入含程序或算法的处理器❑模块级嵌入系统中的某个核心模块板❑系统级嵌入主计算机系统3.嵌入式操作系统分类(按照源代码分类:商用型和开源型;按照实施性能分类:强实时性型和普通实时型;按内核结构分类:单内核型和为内核型。
)▪按用途分类:军用/民用▪按载体分类:宇航/车载• • •▪按通信性质分类:无线/有线▪按网络性质分类:联网/单机▪按环境分类:普通/恶劣▪按功耗分类:低功耗/普通功耗▪主要分类方法按硬件软件性质⏹根据控制技术的复杂度可以把嵌入式系统分为三类:⏹无操作系统控制的嵌入式系统⏹NOSES,Non-OS control Embedded System;⏹小型操作系统控制的嵌入式系统⏹SOSES,Small OS control Embedded System;⏹大型操作系统控制的嵌入式系统⏹LOSES,Large OS control Embedded System。
4.嵌入式处理器特点,常见缩写特点:1.对实施多任务有较强的支持能力,能完成多任务处理,并且中断响应速度快2.处理器结构可扩展3.内部集成了测试电路4.低功耗常见缩写:⏹通用型嵌入式微处理器(简称:EMPU,或者MPU)⏹微控制器(MCU)⏹数字信号处理器(DSP)(嵌入式DSP处理器:EDSP)⏹混合处理器和片上系统(SOC)⏹嵌入式双核处理器,双核(dual core);多核处理器,多核DSP。
嵌入式操作系统复习资料
一.选择题:1.嵌入式处理器分类:嵌入式微处理器(EMPU),嵌入式微控制器(MCU),嵌入式DSP处理器(EDSP),嵌入式片上系统(SOC)。
2.嵌入式系统软件:一般的嵌入式系统的软件都由以下部分组成:初始化引导代码、板级支持包、操作系统、通信协议栈、图形用户界面和应用软件。
3.宿主机与目标机:开发环境分为本地开发环境和交叉开发环境(CDE)。
交叉开发环境由可分为开放性以及商业性两大类。
需要交叉开发环境的支持是嵌入式应用软件开发的一个显著特点。
交叉开发环境是指编译、链接和调试嵌入式应用软件的开发环境,与运行嵌入式应用软件的环境有所不同,常采用宿主机/目标机模式。
嵌入式设备和和PC的X86体系结构的指令集完全不同,一种解决办法是在PC上安装另外一套开发环境,这个开发环境仍旧由工具链、库等各个部分组成,它们的可执行程序的二进制代码基于X86平台,但是用它们编译、链接出的应用程序的二进制代码基于嵌入式处理器的指令集,不能直接在PC上运行,需要下载到嵌入式设备中运行,具备这种功能的开发环境就成为交叉开发环境。
因为开发环境中最重要的组成部分是编译器,所以有时也渐成交叉开发环境为交叉编译环境。
在嵌入式程序设计中,把运行交叉开发环境的pc称为宿主机,把嵌入式设备称为目标机。
宿主系统通常是一个pc、工作站或手提式个人计算机。
它具有如下硬件。
⏹带有高速缓存的高性能处理器。
大容量RAM存储区。
只读存储器基本输入输出系统。
超大容量磁盘。
键盘。
显示器。
鼠标。
网络连接。
至少需要如下软件。
⏹高级语言程序开发套件或者IDE。
宿主处理器编译器和交叉编译器。
交叉汇编器。
目标系统包含处理器,存储嵌入式软件ROM影响的ROM存储器,用于堆栈,临时变量和存储器缓冲区的RAM,外围设备和接口。
4.中断服务中断处理的全过程分为中断检测、中断响应和中断处理3个阶段。
中断检测在每条指令结束时进行,检测是否有中断请求或者是否满足异常条件。
嵌入式Linux期末考试复习资料
第一章、嵌入式系统基础知识1、嵌入式系统主要由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户应用软件等部分组成。
2、嵌入式处理器包含以下部分:处理器内核、地址总线、数据总线、控制总线、处理器本身的辅助支持电路,如时钟、复位电路等;片上I/O接口电路。
3、解释ARM(ARM属于RISC ARM7---冯诺依曼ARM9---哈弗)4、嵌入式操作系统:嵌入式Linux(uCLinux、RT-Linux、Embedix、XLinux、PoketLinux、红旗嵌入式Linux)、VxWorks、QNX、Windows CE、Palm OS、UC/OS5、ARM9采用的就是哈弗结构,而ARM7采用的则是冯诺依曼结构。
ARM微处理器执行32位的ARM指令集时,工作在ARM状态;当ARM微处理器执行16位的Thumb指令集时,工作在Thumb状态。
6、本书采用的处理器是三星公司的S3C2410X。
S3C2410X是使用ARM920T核LPC2000-----ARM77、嵌入式系统开发为什么要采用交叉编译的方式?答:由于宿主机和目标机的体系结构不同,在宿主机X86平台上可以运行的程序在目标机ARM平台上无法运行,因此嵌入式软件开发采用交叉编译方式在一个平台上生成可以在另一个平台上执行的代码。
编译的主要的工作就是将程序转化成运行该程序的CPU所能识别的机器代码。
进行交叉编译的主机称为宿主机,也就是普通的通用计算机。
程序实际的运行环境称为目标机,也就是嵌入式系统环境。
第二章、嵌入式LinuxC语言开发工具1、vi编辑器的使用按不同的使用方式可以分为3种状态,分别是命令行模式、插入模式、底行模式。
2、vi中3种模式的切换(1)命令行模式、底行模式转为插入模式按a/A i/I o/O(2)插入模式转为命令命令行模式、底行模式只需使用Esc键即可(3)命令行模式与底行模式转换只需直接键入相应模式中的命令键即可。
3、编译器GCC的编译流程分为了4个步骤:预处理、编译、汇编、链接。
嵌入式系统期末复习资料
嵌入式系统的特点:应用的特定性和广泛性技术、知识、资金的密集性高效性较长的生命周期高可靠性软硬一体,软件为主无自举开发能力(需独立开发系统)单片机:在一片半导体硅片上集成了中央处理单元(CPU)、存储器(RAM/ROM)和各种I/O接口的微型计算机。
这样一块集成电路芯片具有一台微型计算机的功能,因此被称为单片微型计算机,简称单片机。
单片机主要应用:在测试和控制领域,由于单片机在使用时,通常处于核心地位并嵌入其中,因此我们也常把单片机称为嵌入式微控制器(Embedded Microcontroller Unit ),把嵌入某种微处理器或单片机的测试和控制系统称为嵌入式控制系统。
大端格式:字数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中。
小端格式:低地址中存放的是字数据的低字节,高地址存放的是字数据的高字节。
Linux的目录结构Linux继承了Unix操作系统结构清晰的特点。
在Linux下的文件结构非常有条理,不同目录下存放不同功能的相关文件。
(1) /bin。
显而易见,bin是二进制(binary)的英文缩写。
在一般的系统当中,都可以在这个目录下找到Linux 常用的命令。
在有的版本中还会找到一些和根目录下相同的目录。
(2) /boot。
在这个目录下包含了操作系统的内核和在启动系统过程中所用到的文件。
(3) /dev。
dev是设备(device)的英文缩写。
在这个目录中包含了所有Linux系统中使用的外部设备。
(4) /etc。
这个目录是Linux系统中最重要的目录之一。
在这个目录下存放了系统管理时要用到的各种配置文件和子目录。
用户要用到的网络配置文件、系统配置文件、文件系统、设备配置信息、设置用户信息等都在这个目录下。
(5) /sbin。
这个目录用来存放系统管理员的系统管理程序。
(6) /home。
如果用户建立一个用户,用户名是“xx”,那么在/home目录下就有一个对应的/home/xx路径,用来存放用户的主目录。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、什么是嵌入式系统?它由及部分组成?嵌入式系统是指操作系统和功能软件集成于计算机硬件系统之中。
简单的说就是系统的应用软件与系统的硬件一体化,类似与BIOS的工作方式。
具有软件代码小,高度自动化,响应速度快等特点。
特别适合于要求实时的和多任务的体系。
嵌入式系统一般有3个主要的组成部分:硬件、实时操作系统以及应用软件。
2、嵌入式系统的三要素是什么?嵌入式系统的三要素是嵌入、专用、计算机;其中嵌入性指的是嵌入到对象体系中,有对象环境要求;专用性是指软、硬件按对象要求裁减;计算机指实现对象的智能化功能。
3、嵌入式系统一般由几层组成?嵌入式系统一般由硬件层、中间层、软件层和功能层组成。
4、Linux作为嵌入式系统的优势?(1)可应用于多种硬件平台。
(2)添加部件非常容易(3)支持大量硬件(4)程序源码全部公开(5)完善的开发工具5、何为虚拟内存?虚拟内存的管理有何作用?使用虚拟地址寻址整个系统的主存和辅存为虚拟内存。
可以运行体积比物理内存还要大的应用程序,也可以实现“按需调页”,既满足了程序的运行速度,又节约了物理内存。
6、进程内存区域涉及哪几种数据段?代码段:可执行的操作命令数据段:已初始化的全局变量BSS段:未初始化的全局变量堆:进程运行中被分配的内存段栈:程序临时创建的局部变量7、简述内核空间和用户空间的区别?内核空间:任何操作都可以执行用户空间:禁止处理器对硬件的直接访问和对内容的未授权访问。
两者分别引用不同的内存映射,即程序代码段使用不同的“地址空间”8、简述共享内存的作用①、共享内存区域是被多个进程共享的一部分物理内存②、进程可以直接访问该共享内存区域,并通过该区域进行通信。
③、进程间快速共享数据④、共享虚拟内存的页面出现在每一个共享该页面的进程的页表中,但它不需要所有进程的虚拟内存都有相同的虚拟地址9、简述内存管理与虚拟文件系统之间的关系内存管理利用虚拟文件系统支持交换,交换进程定期由调度程序调度,这也是内存管理依赖于进程调度的唯一原因。
当一进程存取的内存映射被换出时,内存管理向文件系统发出请求,同时挂起当前正在进行的进程。
10、Linux系统中线程的同步方式有互斥量、信号灯和条件变量等。
假设现在需要设计一个多线程的应用程序,试分析一下以上几种同步方式分别可在什么场合下使用?Mutex互斥量:用于操作某个临界资源时对该资源上锁,以实现互斥地对独占资源的使Sempphere信号灯:信号灯内有一个计数器,可用于多个同资源的分配。
当资源用完时,申请资源的线程会在信号量上睡眠,有线程释放资源时,在将该线程唤醒继续进行Condition条件变量:条件变量用于等待信号。
当一个线程需要等待某个信号时,就可到条件变量上等待,当信号具备时,系统就会唤醒,该线程继续运行11、在Linux系统上设计本地运行的两个进程,一个负责采集视频,一个负责播放。
进一步考虑当两个进程处于不同机器上时,需要采用的通信方式本地:共享内存+信号量,适合于大量数据传输。
Linux支持系统V和POSIX的共享内存和信号量。
远程:Socket+应用协议。
适合于跨网络的(大量)数据传输。
Linux支持BSD的socket。
应用层协议需要自行设计。
12、常用的内核裁剪:make xconfig、make config、make menuconfig13、在完成内核的裁剪后,内核的编译还需执行那几条命令:make clean 清理内核make dep 编译相关依赖文件make zImage 创建内核镜像文件make modules 创建内核模块make install 把相关文件拷贝到默认目录14、在vivi下执行命令load flash kernel x,其作用是什么:装载压缩映像文件zImage 到flash存储器中,地址是kernel分区,并采用x modem传输协议15、执行ifconfig eth0 192.168.1.1 netmask 255.255.255.0的含义:设置网卡1的地址192.168.1.1,掩码为255.255.255.0,不写netmask参数则默认为255.255.255.0 16、执行mount -t nfs 192.168.1.1:/sharedir/mnt命令的含义:将nfs服务的共享目录sharedir加载到/mnt/nfs17、在vivi下执行命令load flash root x作用:装载根文件系统root.cramfs到flash存储器中,地址是根文件系统分区,并采用xmodem传输协议18、在vivi中执行bon part 0 128k 192k 1216k 4288k:m 64704k的作用:同时进行了分区和格式化,0~128K存放vivi,128K~192K存放VIVI控制台指令,192K~1216K 存放kernel,1216K~4288K存放root,其余部分存放应用程序填空、选择1、GDB调试时,可通过step和next命令进行单步调试2、Vi编辑器具有3种工作模式:末行模式、命令模式、输入模式3、GCC调试C程序文件生成可执行文件步骤:预处理、编译、汇编、连接4、在vi模式下,将文件内容存入text.txt文件中,应在命令模式下输入:w text.txt:q!强制离开,放弃编译:wq写入并离开1、linux分区类型默认为的是Ext2/Ext3,swap为交换分区2、shutdown -r now 马上启动正在运行的linux系统3、重定向的符号“> ”表示输出重定向,原来的文件会被改写。
“>> ”追加重定向操作符,原有内容被破坏。
“<< ”输入追加。
4、touch myfile命令可以确保文件myfile存在。
5、chmod命令变更权限,chown变更所有者。
u为user,g为groups,o为others6、执行、读、写权限分别为1、2、47、rm -rf abc强制删除不提示,rm -r abc\*.*递归删除,rmdir abc删除空目录&8、&cat file>file.copy将file文件中的内容输出到file.copy9、mkdir建立目录rmdir删除目录mv移动、改名rm删除文件10、demesg可以查看Linux启动信息11、cat /proc/meminfo命令可以查看Linux使用了多少内存12、ps -a可显示终端所有用户的进程,ps -u显示当前用户格式,ls -a显示所有文件和目录,ls-l列出目录下文件的权限、所有者、文件大小、修改时间名称13、ln -s a.txt b.txt用于制作a.txt的符号链接,其名称为b.txt df命令可以查看文件系统大小,无法查看目录占磁盘情况comm用于比较两个已排序的文件rm可用于删除目录14、对/etc/rc.d/rc.inet1文件进行编辑能保证启动服务器自动启动DHCP进程1、make实现自动编译。
2、执行make clear命令,实际执行的是clear里面的内容3、命令mv shell.sh shell2.sh意思为将文件shell.sh改名为shell2.sh4、Gcc编译器中,选项-c为生成.o目标文件,不进行链接,-o为生成指定文件名的可执行文件,-S为只进行编译,不进行汇编和链接,-E是只进行预处理,不编译、汇编、链接5、-g选项是GCC在编译时包含调试信息,生成目标文件用于GDB调试6、fstab文件存放在/etc目录中7、init启动进程需要读取/etc/inittab配置文件1、Linux支持网络文件NFS,mount -t nfs 192.168.1.4: /opt/sirnfs /mnt/sirnfs命令将位于192.168.1.4机器上的/opt/sirnfs目录挂载到本机/mnt/sirnfs2、有利于嵌入式应用软件移植的是:软件设计采用层次化设计和模块化设计|||软件体系结构中在操作系统和应用软件之间引入一个虚拟机层,把一些通用的、共性的操作系统API 接口函数封装起来|||将不可移植的部分局域化,集中在某几个特定的文件之中3、固态存储设备上独立存放的分配顺序:BootLoader、启动参数、内核、文件系统4、Bootloader的stage1:屏蔽所有中断、设置CPU的时钟频率、初始化RAM,设置系统内存控制器的功能存储器和各内存库控制寄存器、为加载stage2准备RAM空间、复制stage2到RAM中、跳转到stage2入口点stage2:用汇编跳转到main入口函数、初始化本阶段要使用的硬件设备,包括初始化串口,计时器等、检测系统的内存映射、加载内核映像和根文件系统映像、设置内核启动参数、调用内核5、make menuconfig命令以文本菜单方式界面配置内核选项6、开启MMU时,在内存中创建页表(映射内核到3GB以上的虚拟地址空间,同时把内核所在的前1MB空间映射到和其实地址相同的虚拟地址空间),开启MMU,跳转到虚拟地址空间继续执行7、Blob运行第一阶段:寄存器的初始化8、ARM系统中,MMU映射最大的单元空间是1MB9、嵌入式系统软件有:系统内核、驱动程序、嵌入式中间体10、通过修改文件/etc/fstab可以设定开机时候自动安装的文件系统1、Linux文件权限一共10位长度,分成4段,(1为文件类型)(2,3,4为文件所有者的权限)(5,6,7为文件所有者所在组的权限)(8,9,10为其他用户的权限)2、文件系统的主要功能是实现文件的按名存取3、Ext3文件系统采用了inode来标识文件4、通过文件名存取文件时,文件系统内部的操作过程是通过文件名直接找到文件的数据,进行存取操作5、Linux将存取设备和输入输出设备均看做文件来操作,其中目录、软链接、硬链接是以文件形式出现的,而i节点不是以文件形式出现的1、查找当前用户的运行的所有进程的信息:ps -u 所有用户的运行进程信息:ps -a2、显示所有文件及目录:ls -a 显示l目录下的文件的权限、所有者、文件大小、修改时间及名称:ls -l3、init进程:可以产生新的进程、在某些程序退出时能重启它们、负责在系统启动时运行一系列程序和脚本文件4、init启动进程需要读取/etc/inittab配置文件5、启动init进程前,要经过:加载内核、检测内核、加载文件系统6、在若干并发进程均将一个共享变量count中的值加1一次,若控制这些并发进程互斥执行count加1操作,count值正确7、Linux系统的进程类型:交互进程、批处理进程、守护进程8、进程3种状态:运行态、就绪态、等待态9、内核包括的子系统:进程管理系统、内存管理系统、I/O管理系统,无硬件管理系统10、为保证在启动服务器时自动启动DHCP进程,应对/etc/rc.d/rc.inet1文件进行编辑1、ifconfig命令能配置网卡的IP地址2、在FTP协议中,控制连接是由客户端主动建立的3、Traceroute可以在当与某远程网络连接不上时,跟踪路由查看并了解在网络的什么位置出现了问题4、配置匿名FTP服务器时,应修改/etc/ftpusers 配置NFS服务器,应配置/etc/exports文件5、FTP协议能够实现本地与远程主机之间的文件传输工作6、DNS域名系统主要负责主机名和IP地址之间的解析7、Mount -t -s nfs :/home/nfs /home2命令可以加载NFS Server “”的/home/nfs到/home2Makefile1、已知C语言程序有主程序模块proc.c、prog.h,其中调用了另一模块subr.c、subr.h 中的功能。