文章目录:
一:选择题
二:填空题
三:简单题
1 嵌入式系统基础:含义、应用、组成、特点、与单片机的关系
1.1 含义
1.2?应用
1.3 组成
1.4 特点
1.5 嵌入式系统与单片机的关系
2 嵌入式系统的硬件、软件、处理器分类
2.1?嵌入式系统硬件
2.2?嵌入式系统软件
2.3?处理器分类
3 ARM处理器
3.1 特点
3.2 两种工作状态
3.3 七种运行模式
3.4 寻址方式
3.5 体系结构
3.6 指令结构
3.7 ARM体系结构的存储器格式大小端
4?调度:时间片、优先级、抢占式
4.1 时间片轮转调度算法
4.2 基于优先级的抢占式调度 ?
4.3 抢占式:不可重入函数
5?交叉开发
6?裁剪与移植含义
7?引导程序(含义、两个阶段、两种模式)
8?内核(四大功能)
9?文件系统
10??接口信息
11?驱动程序
12?ARM核中什么寄存器用于存储PC?R13通常用来存储什么?R14通常用来存储什么?
13?ARM 7种功能模式是什么?
14?ARM对异常中断的响应过程
15?ARM程序可以使用两种语言进行设计,一种是汇编语言,一种是C/C++语言,则汇编语言和C/C++语言各自的特色是什么?
16?ARM体系结构的技术特点是什么?
17?Boot Loader在嵌入式系统中主要起什么作用?完成哪些主要的工作?
18?专业名词解释
19?LInux编程(VI、GCC、GDB、MAke)的使用
四:设计题
?点我跳转? ? ??
一:选择题
?1、下面哪个不是嵌入式操作系统的特点。(C ) ????????A.内核精简 ? ? ? ? B.专用性强 ? ? ? ? C.功能强大 ? ? ? ? D.高实时性
2、ARM指令集合Thumb 指令集分别是(D)位的。 ????????A.8,16 ????????B.16,32 ????????C.16,16 ????????D.32,16
3、FIQ中断的入口地址是(A) ????????A.Ox0000001C ????????B.Ox00000008 ????????C.Ox00000018 ????????D.Ox00000014
4、ADD RO,R1,#6,执行该指令时属于( A)寻址方式。 ????????A.立即寻址 B.多寄存器寻址 C.寄存器直接寻址 D.相对寻址
5、寄存器R13除了可以用作通用寄存器之外,还可以作为( B ) ????????A.程序计数器 ????????B.堆栈指针寄存器 ????????C.链寄存器 ????????D.基址寄存器
6、ARM7TDMI的工作状态包括(D)。 ? ? A.测试状态和运行状态 ? ? B.挂起状态和就绪状态 ? ? c.就绪状态和运行状态 ? ? D. ARM状态和Thumb状态
7、下面哪个Linux 操作系统是嵌入式操作系统(B)。 ? ? A. Red-hat Linux ? ? B. uclinux ? ? c. Ubuntu Linux ? ? D. SUSE Linux
8、使用Host-Target联合开发嵌入式应用,(B)不是必须的。 ? ? A.宿主机 ? ? B.银河麒麟操作系统 ? ? c.目标机 ? ? D.交叉编译器
9、下面哪个不属于Linux下的一个进程在内存里的三部分的数据之一(A)。 ? ? A.寄存器段 ? ? B.代码段 ? ? c.堆栈段 ? ? D.数据段
10、下面哪个系统属于嵌入式系统(D)。 ? ? A.“天河一号”计算机系统 ? ? B.IBMX200笔记本电脑 ? ? c..联想s10上网本 ? ? D. Iphone手机
11、在Makefile中的命令必须要以(A)键开始。 ? ? A. Tab键 ? ? B.#号键 ? ? c.空格键 ? ? D.&键
12、 Linux支持多种文件系统,下面哪种不属于Linux 的文件系统格式(B)。 ? ? A. Ext ? ? B.FAT32 ? ? C.NFS ? ? D. Ext3
13、下面哪种不属于VI三种工作模式之一(D)。 ? ? A.? ?命令行模式 ? ? B.插入模式 ? ? C.底行模式 ? ? D.工作模式
14、下面哪一项不属于Linux内核的配置系统的三个组成部分之一(c)。 ? ? A. Makefile ? ? B.配置文件( config.in) ? ? c. make menuconfig ? ? D.配置工具
15、下面哪种操作系统不属于商用操作系统。(B)? ????????A.?windows?xp?????????B.?Linux????????C.?VxWorks?????????D.?WinCE?
16、下面哪点不是嵌入式操作系统的特点。(C) ????????A.?内核精简????????B.?专用性强????????C.?功能强大????????D.?高实时性
17、下面哪种不属于嵌入式系统的调试方法。(D)? ????????A.?模拟调试????????B.?软件调试????????C.?BDM/JTAG调试????????D.?单独调试
18、?在嵌入式ARM处理器中,下面哪种中断方式优先级最高。(A)? ????????A.??Reset????????B.?数据中止????????C.?FIQ?????????D.?IRQ?
19、NAND?FLASH和NOR?FLASH的区别正确的是。(D)? ????????A.?NOR的读速度比NAND稍慢一些????????B.?NAND的写入速度比NOR慢很多
????????C.?NAND的擦除速度远比NOR的慢????????D.大多数写入操作需要先进行擦除操作
20、下面哪种嵌入式操作系统很少用在手机上。(D) ????????A.?Symbian????B.?linux???C.?WinCE???D.?VxWorks?
21、0X17&0X11的运算结果是。(B) ????????(A)?0X01(B)0X11?(C)?0X17(D)0X07?
22、以下哪种方式不属于文件系统的格式?。(B)? ????????(A)?FAT?(B)DOS?(C)?NTFS(D)EXT?
23、在将UC/OS操作系统移植到ARM处理器上时,以下哪些文件不需要修改。(A)? ????????(A)?OS_CORE.C(B)INCLUDE.H?(C)?OS_CPU.H(D)OSTASKINIT?
24、下面哪个特点不属于SUB设备的特点。(B)? ????????(A)?串行通信方式(B)不可热拨插?(C)?分HOST、DEVICE和HUB(D)通信速率比RS232快
25、下面哪一种工作模式不属于ARM特权模式(A)。 ? ? A.用户模式B.系统模式C.软中断模式D.FIQ模式
26、ARM7TDMI的工作状态包括(D?)。 ? ? A.测试状态和运行状态B.挂起状态和就绪状态C.就绪状态和运行状态D.ARM状态和Thumb状态
27、下面哪个Linux操作系统是嵌入式操作系统(B?)。 ? ? A.Red-hat?Linux?????????B.uclinux?????????C.Ubuntu?Linux?????????D.SUSE?Linux?
28、使用Host-Target联合开发嵌入式应用,(B?)不是必须的。 ? ? A.宿主机????????B.银河麒麟操作系统????????C.目标机????????D.交叉编译器
29、下面哪个不属于Linux下的一个进程在内存里的三部分的数据之一(A)。 ? ? A.寄存器段????????B.代码段????????C.堆栈段????????D.数据段
30、下面哪个系统属于嵌入式系统(D?)。 ? ? A.“天河一号”计算机系统B.IBMX200笔记本电脑C.联想S10上网本????????D.Iphone手机 ? ?? 31、在Makefile中的命令必须要以(A)键开始。 ? ? A.Tab键B.#号键C.空格键D.&键
32、Linux支持多种文件系统,下面哪种不属于Linux的文件系统格式(B?)。 ? ? A.Ext?B.FAT32?C.NFS?D.Ext3?
33、下面哪种不属于VI三种工作模式之一(D?)。 ? ? A.命令行模式B.插入模式C.底行模式D.工作模式
34、下面哪一项不属于Linux内核的配置系统的三个组成部分之一(C?)。 ? ? A.Makefile?B.配置文件(config.in)C.make?menuconfig?D.配置工具
35、在指令系统的各种寻址方式中,获取操作数最快的方式是(??B)。 ????????A.?变址寻址B.?立即寻址C.?寄存器寻址D.?间接寻址 36、寄存器?R14?除了可以做通用寄存器外,还可以做(B)。 ????????A.??程序计数器?B.?链接寄存器??C.?栈指针寄存器?D.?基址寄存器??
37、以下哪项关于?SRAM?和?DRAM?的区别是不对(?A?)。?? ????????A.?SRAM?比?DRAM?慢?????????B.?SRAM?比?DRAM?耗电多??
????????C.?DRAM?存储密度比?SRAM?高得多?????????D.?DRM?需要周期性刷新??
38、存储一个?32?位数?0x2168465?到?2000H~?2003H?四个字节单元中,?若以大端??模式存储,则??2000H?存储单元的内容为(?D?)。?? ????????A.?0x21?B.?0x68?C.?0x65?D.?0x02??
39、ARM?汇编语句?”?ADD?R0,?R2,?R3,?LSL#1的作”用是(?C?)。?? ????????A.?R0?=?(?R2<<?1)?+?R3?B.?R3?=?R0+?(R2?<<?1)??C.?R0?=?R2?+?(R3?<<?1)?D.?(R3?<<?1)?=?R0+?R2??
40、ADD?R0,R1,?#3?属于(?A?)寻址方式。? ????????A.??立即寻址?B.?多寄存器寻址?C.?寄存器直接寻址?D.?相对寻址??
41、和?PC?机系统相比下列哪个不是嵌入式系统独具的特点(?C?)?? ????????A?、系统内核小?B、专用性强?C、可执行多任务?D、系统精简??
42、每种嵌入式操作系统都有自身的特点以吸引相关用户,下列说法错误的是(?D?)。?? ????????A.?嵌入式?Linux?提供了完善的网络技术支持;??B.?CLinux?是专门为没有??MMU?的?ARM?芯片开发的;??
????????C.C/OS-Ⅱ操作系统是一种实时操作系统(???RTOS);??D.?WinCE?提供完全开放的源代码。??
43、RQ?中断的优先级别是(?D?)。?? ????????A.?1?B.?2?C.?3?D.?4??
44、假设?R1=0x31,R2=0x2?则执行指令?ADD?R0,R1,R2?LSL?#3?后,R0?的值是(?C?)? ????????A.?0x33?B.?0x34?C.?0x39?D.?0x38?
45、下列哪一项不属于嵌入式系统软件结构一般包含的四个层面。(A) ? ? ????A.?嵌入式处理器????????B.?实时操作系统(RTOS)????????C.?应用程序接口(API)层????????D.?实际应用程序层
46、ARM寄存器组有(D)个寄存器。 ? ??????A、7?B、32?C、6?D、37
47、下列不是嵌入式系统的特点的是(C)?? ? ? ? ? A.嵌入式系统需要专用开发工具和方法进行设计。???? ? ? ? ? B.嵌入式系统是技术密集、资金密集、高度分散、不断创新的知识集成系统。??? ? ?? ? ?C.嵌入式系统使用的操作系统一般不是实时操作系统(RTOS),系统不具有实时约束。???? ? ? ? ? D.嵌入式系统通常是面向特定任务的,而不同于一般通用PC计算平台,是“专用”的计算机系统
48、寄存器R15除了可以做通用寄存器外,还可以做(A)? ? ? ? ? A.?程序计数器 B.?链接寄存器?C.?堆栈指针寄存器????D.?基址寄存器
49、ARM指令集是(B)位的。? ? ? ? ? A.?16?B.?32?C.?8??D.?24?
50、以下描述正确的是(b?) ? ? A.随着嵌入式设备的发展,嵌入式设备无处不在,桌面系统将面临淘汰。 ? ? B.嵌入式系统的开发采用交叉开发方式,开发平台一般是通用计算机。 ? ? C.嵌入式实时系统的特征之一是运行速度快。 ? ? D.嵌入式微处理器采用哈佛体系结构。
51、以下关于ARM内核描述错误的是(a?) ? ? A.?CISC微处理器????????B.?功耗低????????C.性价比高????????D.?代码密度高>
52、以下关于嵌入式系统Boot?Loader的理解错误的是(b?) ? ? A.Boot?Loader的功能之一是初始化硬件????????B.?BootLoader是通用的 ? ? C.?有些BootLoader?支持多CPU???????????????????????D.?在操作系统内核运行之前运行的一段小程序
53、以下ARM处理器模式中哪种使用的寄存器最少(a?) ? ? A.User?B.FIQ?C.IRQ?D.Supervisor ? ?
54、以下关于ARM处理器工作状态的描述错误的是(a)? ? ? A.异常处理可以运行在Thumb状态下? ????B.ARM状态下执行字对准的指令? ????C.?Thumb状态下执行半字对准的指令? ????D.ARM和Thumb之间状态的切换不影响处理器的模式或寄存器的内容
55、以下关于嵌入式系统的理解正确的是(???d???)。? ? ? A.嵌入式系统的运行平台都是通用计算机?? ? ? ? ? ? ? ? ? ?B.嵌入式系统的软件和硬件相对独立?,? ? ? C.嵌入式系统具有通用处理器、标准总线和外设?????????D.嵌入式系统一般不能再编程?
56、以下哪条指令不会影响CPSR(?d???)? ? ? A.?CMN????????B.?TEQ???????C.?SUBS???????????D.?ADDCS?
57、?以下对RTOS的可确定性的描述错误的是(??c???)? ? ? A.?系统在运行过程中,系统调用的时间可以预测? ? ? B.?在规定的时序范围内,有多少外部事件可以到达是可预测的? ? ? C.?系统在运行过程中,能智能评估当前状态,判断系统是否面临崩溃。?"? ? ? D.?每个任务需要哪些资源,哪种情况下占用资源都是可预测的?
58、已知R0=0x,R1=0x300,在小端存储格式下,执行以下语句之后,R2=(??d???)?STR?R0,?[R1]?LDRB?R2,?[R1]? ? ? A.0x12?????????B.?0x34??????????C.?0x56??????????????D.?0x78?
59、?下图所示的调试方式属于哪一种(b)。? ????A.Crash?and?Burn????????????B.?ROM?Monitor???C.?ROM?Emulator??????????????D.?ICE?
二:填空题
1.人们生活中常用的嵌入式设备有哪些?列举4个以上 ? ? (1)手机―﹐(2)机顶盒,(3)MP3,(4)GPS。 ? ? ? ? (交换机、打印机、投影仪、无线路由器、车载媒体、PDA、GPS、智能家电等等。)
2.在Makefile中的命令必须要以(Tab)??键开始
3.VI的工作模式有哪三种:命令行模式?插入模式 底行模式
4.Linux下的一个进程在内存里包括三部分的数据,它们是:代码段 堆栈段 数据段
5.内核负责管理各个任务,或者为每个任务分配CPU时间,并且负责任务之间的(通信),内核的基本服务是(任务调度)。
6.嵌入式开发一般采用(宿主机/目标机方式)方式,其中宿主机一般是指(PC机或者台式机)
7.一般而言,嵌入式系统的构架可以分为4个部分:处理器、(存储器)、输入/输出和软件, ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 一般软件亦分为(操作系统)和应用软件两个主要部分
8.嵌入式系统体系结构一般具有冯.诺依曼和哈佛两种基本形式
????????且ARM7采用冯.诺依曼体系结构、数据和指令分开使用不同接口的是哈佛结构
9.从编程角度看,ARM微处理器一般有ARM和Thumb两种工作状态。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ARM核有两个指令集,分别是:ARM指令集和Thumb指令集
10.ARM9处理器使用了程序存储器和数据存储器分开独立编址的哈佛结构,并采用5级指令流水线, ? ?5级流水线操作分别是取指、译码、执指、缓冲和写回。
11.ARM微处理器支持字节、半字、字三种数据类型,数据的位数分别为8位、16位、32位,
?????其中字必须以4字节为边界对齐,半字必须以2字节为边界对齐。
12.大多数Bootloader都包含两种不同的操作模式,分别是:启动加载模式???下载模式????
13.Linux内核的配置系统由三部分组成,它们分别是:Makefile??配置文件(config.in)????配置工具
14.嵌入式系统有两种存储代码和数据的字节顺序,一种是小端对齐,另一种是大端对齐
15、PC机开机的初始化工作一般由BIOS完成,而嵌入式系统的初始化工作一般由bootloader完成。
16、ARM内核三级流水线机制是指指令运行过程中经过的取指、译码、执行三个阶段。
17、ARM寄存器SPSR被称为备份的程序状态寄存器寄存器。
18、uClinux与标准Linux的最大区别在于内存管理。
19、嵌入式系统是以应用为中心、以计算机技术为基础、软硬件可裁剪、功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
20、ARM的数据存取指令Load/Store是唯一用于寄存器和存储器之间进行数据传送的指令。
21、μC/OS中,为保护任务之间的共享数据和提供任务之间的通信,提供了操作系统任务间通信方法有:信息量、邮箱、消息队列,事件标志。
22、ARM微处理器有7种工作模式,它们分为两类非特权模式、特权模式。其中用户模式属于非特权模式
23、ARM核有多个寄存器,其中大部分用于通用寄存器,有小部分作为专用寄存器,R15?寄存器用于存储PC,R13通常用来存储SP?
三:简单题
1 嵌入式系统基础:含义、应用、组成、特点、与单片机的关系
1.1 含义
以应用为中心,计算机技术为基础,软硬件可裁剪的专用计算机系统。
1.2?应用
网络通信设备(交换机、服务器、路由器)、
消费电子产品(手机、电脑、空调)、
工业制造过程(数控机床、智能仪表盘、机器人)、
航空航天设备(飞行器、探测器)、
军用电子设备
1.3 组成
嵌入式硬件系统、嵌入式软件系统
1.4 特点
可靠性高、成本低、功耗低、软硬系统资源受限、嵌入专用、综合性强、设计高效、程序固化
1.5 嵌入式系统与单片机的关系
嵌入式系统是一个大类,单片机是它的一个子类,单片机应用属于嵌入式系统的一个分支。
2 嵌入式系统的硬件、软件、处理器分类
2.1?嵌入式系统硬件
组成:
????????处理器、存储器、IO单元电路、通信模块、外部设备等【5】
主要接口:
????????USB、LCD显示器、键盘、A/D接口、I/O接口、串口【6】
2.2?嵌入式系统软件
组成:操作系统+支撑软件+应用软件
主要嵌入式操作系统:LInux、WinCE、Symbian、VxWorks、uCos、DeltaOS【6】
嵌入式操作系统实时性(软硬、强弱)
硬实时:对系统【响应时间有严格的要求】如果系统响
应时间不能满足就【要】引起系统崩溃或致命的错误
软实时:对系统响应时间【没有严格】要求但是如果系统响应
时间不能满足【不会】导致系统出现致命的错误或崩溃
按实时性的强弱(即根据系统响应时间的长短)
强实时系统:毫秒或微秒级;
一般实时系统:在几秒
弱实时系统:其系统响应时间约为数十秒或更长
2.3?处理器分类
嵌入式微处理器(EMPU)、微控制器(MCU)、数字信号处理器(DSP)【3】
3 ARM处理器
3.1 特点
体积小、功耗低、成本低、性能高,支持双指令集,大量使用寄存器,寻址方式灵活简单、指令长度固定
3.2 两种工作状态
ARM状态、Thumb状态
3.3 七种运行模式
用户模式(USR)、系统模式(SYS)、快中断模式(FIQ)、中断模式(IRQ)、中止模式(ABT)、管理模式(SVC)、未定义模式(UND)【7 用系快中 未管】
3.4 寻址方式
寄存器寻址、立即寻址、寄存器间接寻址、相对寻址、寄存器移位寻址、多寄存器寻址、变址寻址、堆栈寻址【8】
【既 离间项羽 多变对】?
3.5 体系结构
CISC(复杂指令集计算机)结构、RISC(精简指令集计算机)结构
CISC:数据线和指令线是分时复用的、处理的是不等长指令集、执行单一指令
RISC:数据线和指令线分离、执行的是等长精简指令集、可同时执行多条指令
CISC结构的计算机:数据线和指令线是分时复用的
即所谓的冯.诺依曼(Von?Neumann)结构,也称普里斯顿结构,
是一种将程序指令存储器和数据存储器合并在一起统一编址的存储器结构。??
RISC结构的单片机:数据线和指令线分离
即所谓的哈佛(Harward)结构。处理器取指令和取数据可同时进行。??
CISC:处理的是不等长指令集、执行单一指令
它必须对不等长指令进行分割,因此在执行单一指令的时候需要进行较多的处理工作。??
RISC:执行的是等长精简指令集、可同时执行多条指令
CPU在执行指令的时候速度较快且性能稳定。
RISC可同时执行多条指令,它可将一条指令分割成若干个进程或线程,交由多个处理器同时执行,
因此在并行处理方面RISC明显优于CISC。
?3.6 指令结构
ARM指令集(32位)、Thumb指令集(16位)
3.7 ARM体系结构的存储器格式大小端
大端格式:字数据的高字节存储在低地址中,低字节存放在高地址中.
小端格式:低地址中存放子数据的低字节,高地址存放高字节
4?调度:时间片、优先级、抢占式
调度(进程状态变化的时候)?
4.1 时间片轮转调度算法
公平地、轮流地为各个进程服务,让每个进程在一定时间间隔内都可以得到响应。
每个进程被分配一个时间段,称作它的时间片,即该进程允许运行的时间。?
4.2 基于优先级的抢占式调度 ?
(1) 每个任务赋予一个唯一的优先级;
(2) 假如有几个任务同时处于就绪状态,优先级最高的那个将被运行;
(3) 只要有一个优先级更高的任务就绪,它就可以中断当前优先级较低的任务的执行;
优先级分类
????????静态:应用程序执行过程中优先级不变。不适应任务动态加入的情况 ????????动态:运行过程中可以改变优先级
4.3 抢占式:不可重入函数
抢占式:最高优先级任务一旦就绪,总能得到CPU的控制权,实时性好,
? ? ? ? ? ? 不可使用不可重入函数,对共享数据需要使用互斥、信号量等机制。
非抢占式:除非运行着的低优先级任务主动交出CPU,否则高优先级任务不能打断低优先级任务的运行,
? ? ? ? ? ? ? ?可使用不可重入函? 数,共享数据快
5?交叉开发
概念:交叉开发是指在通用电脑上把程序编写、编译、调试好,再下载到嵌入式产品中去运行。
开发环境:由宿主机和目标机器组成,两者之间在物理连接的基础上建立逻辑链接。
交叉开发工具:源程序编辑器、交叉编辑器、交叉调试器、仿真器、下载程序【5】
嵌入式软件交叉编译:在宿主机上编译成另一种CPU上的二进制程序
嵌入式系统开发工具:WIndows+ADS、WIndows+Keil+Protes、Linux、GNU工具链【4】
为什么要交叉开发:
????????1.大多数嵌入式产品只有运行环境没有开发环境
????????2.通用PC开发软件更加丰富,环境更加舒适、安全。
6?裁剪与移植含义
含义:?将嵌入式系统减小体积从一种硬件平台转移到另外一种硬件平台运行
????????裁剪:可以使那些不被编译的模块被删掉了,这样就可以大大减小系统所占用的内存。
????????移植:由于芯片型号多种多样,很多芯片不能直接兼容,通过修改部分代码达到兼容
7?引导程序(含义、两个阶段、两种模式)
含义:位于电脑和其他计算机上,是引导操作系统的程序
两个阶段:
? ? ?a硬件设备初始化:
? ? ? 加载Bootloader的阶段二准备RAM空间、拷贝阶段二的代码到RAM空间、设置好堆栈、跳转到阶段 二的C程序入口
? ? ?b初始化硬件设备:
???????检测内存映射、将内核、根系统映像从Flash读到RAM空间、为内核设置启动参数、调用内核
两种模式:
????????启动加载模式,下载模式;
8?内核(四大功能)
从外到内?
硬件设备管理
系统内存管理
文件系统管理
软件程序管理
9?文件系统
根文件系统:是操作系统引导的一个文件系统,包含了构建整个操作系统的基本程序和相关目录?
目录结构如下:
10??接口信息
数据信息:通过控制机用串口读取存储在嵌入式系统设备存储器中的信息
控制信息:通过CB总线读取嵌入式系统的控制信息
状态信息:通过串口读取寄存器中对应引脚的状态信息
11?驱动程序
含义:
????????硬件设备与应用程序之间的一个中间软件层,使某个特定硬件能够响应一个内部编程接口,
????????用户通过一组与具体设备无关的调用来完成相应的操作。
作用:
????????对设备的初始化和释放、把数据从内核传送到硬件或从硬件读取数据,检测和处理设备出现的错误
????????读取应用程序传送给设备文件的数据,和回送应用程序请求的数据
主要标准系统调用:
????????系统调用其实是操作系统提供给用户程序的一组“特殊”函数接口
12?ARM核中什么寄存器用于存储PC?R13通常用来存储什么?R14通常用来存储什么?
R15用于程序计数寄存器PC
R13通常用来做堆栈指针寄存器
R14通常用来做链接寄存器,保存函数调用的返回地址
13?ARM 7种功能模式是什么?
(1)用户模式:正常用户模式,程序正常执行模式。
(2)FIQ模式:处理快速中断,支持高速数据传送或通道处理。
(3)IRQ模式:处理普通中断。
(4)SVC模式:操作系统保护模式,处理软件中断。
(5)中止模式:处理存储器故障,实现虚拟存储器和存储器保护。
(6)未定义模式:处理未定义的指令陷阱,支持硬件协处理器的软件仿真。
(7)系统模式:运行特权操作系统任务。
14?ARM对异常中断的响应过程
(1)保存处理器当前状态、中断屏蔽位以及各条件标志位;
(2)设置当前程序状态寄存器CPSR中的相应位;
(3)将寄存器lr_mode 设置成返回地址;
(4)将程序计数器值PC,设置成该异常中断的中断向量地址,跳转到相应异常中断处执行。
15?ARM程序可以使用两种语言进行设计,一种是汇编语言,一种是C/C++语言,则汇编语言和C/C++语言各自的特色是什么?
汇编语言特点:
? ? ? ? ? ? ? 优点:程序执行速度快,程序代码生成量少
? ? ? ? ? ? ? 缺点:但是可读性差,汇编语言属于低级语言
????????????????????????在通常情况下可以使用汇编语言编写驱动程序、需要严格计算执行时间的程序以及需要加速执行的程序。
C/C++语言:是高级语言,能够快速的编写应用程序
? ? ? ? ? ? ? ? ? ?有丰富的程序库支持,程序易编写,具有结构化,程序可读性强,易于修改,便于调试和维护。
16?ARM体系结构的技术特点是什么?
(1)单调周期操作
(2)? 采用加载/存储指令结构(执行速度快)
(3)固定32位指令(结构简单、效率高)
(4)地址指令格式(三地址指令格式,优化代码)
(5)指令流水线技术(提高执行效率)
17?Boot Loader在嵌入式系统中主要起什么作用?完成哪些主要的工作?
什么是Boot Loader:是在嵌入式系统复位启动时,操作系统内核运行前,执行的一段程序
Boot Loader作用是什么:初始化硬件设备,建立内存和IO空间映射图
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 为最终加载操作系统内核调整好适当的系统软硬件环境
18?专业名词解释
(1)RISC:精简指令集计算机(Reduce Instruct Set Computor
(2)IP:互联网协议( Internet ProtocoD
(3)ISR:中断服务程序( Interrupt Service Routin
(4)JTAG:联合测试行动组(Joint Test Action Group;调试接口
(5)IDE:集成开发环境( integrated development environment
(6)RTOS:实时操作系统(Real Time Operating Systen
(7)CISC:复杂指令集计算机 ( complex instruction set computer
(8) Kernel:内核
(9) Scheduler:调度
(10) MMU:存管理单元
(11) Boot?Loader?:Boot?Loader是在嵌入式系统复位启动时,操作系统内核运行前,执行的一段程序
19?LInux编程(VI、GCC、GDB、MAke)的使用
1.VI编辑器的使用
启动: vi
三种模式: 可视命令、冒号、文本编辑
编辑命令: i,插入,a,追加,o插入行
光标命令: k, j, h, l
删除行: dd(删除), u(撤消), y(复制), p(粘贴)
保存: :q!-不保存退出 :w保存w!强行保存 wq:保存退出
2.gcc的使用
编译步骤: 预处理、编译、汇编、连接
基本用法:gcc [option] [filename]
选项:
??-c ?只编译不链接
??-o ?指定输出文件
??-O ?编译优化
??-g ?包含调试信息
??-ldir 指定包含头文件的目录
??-Ldir 指定包含的库所在的目录
3.GDB调试工具的使用
file ?装入文件
??quit ?退出
??run 运行
??list ?列出源程序
??break 设置断点
??watch 监视表达式或变量
??print 输出
??step ?进入函数单步运行
??next ?不进入函致单步执行
??cont ?继续运行
4.Make项目管理
Makefile: 编译多个文件的批处理文件,可识别哪些文件已经修改,并只编译这些文件
维护当前项目中各文件的依赖关系,makefile的构成make要创建的目标文件
常用的make目标
Clean: 清除编译中间文件
Install: 安装文件,并设置相关权限
Uninistall: 删除目标文件
Depends: 设置Makefile文件中目标所需要的依赖关系。
日期/时间系统调用
头文件: ?#include <time.h>
asctime: ?将时间和日期以字符串格式表示
ctime: ?将时间和日期以字符串格式表示
gettimeofday: 取得目前的时间
gmtime: 取得目前时间和日期
localtime: ?取得当地目前时间和日期
mktimc: 将时间结构数据转换成经过的秒数
settimeofday: 设置目前时间
time: 取得目前的时间
四:设计题
嵌入式开发过程?
1.系统需求分析:
????????确定设计任务和设计目标,并提炼出设计规格说明书,作为指导和验收的标准
2.体系结构设计:
????????描述系统如何实现功能和非功能性需求,包括对硬件、软件和执行装置的功能划分,及系统的软硬件选型
3.硬件/软件协同设计:
????????基于体系结构,对系统的软件、硬件进行详细设计
4.系统集成:
????????集成系统软件、硬件和执行装置
5.系统测试:
????????对设计好的系统进行测试,是否满足规格说明书中给定的功能要求
????????嵌入式系统开发模式最大特点是:软件、硬件综合开发。这是因为嵌入式产品是软硬件的结合体,
????????????????软件针对硬件开发、固化、不可修改??
简述嵌入式系统设计的主要步骤:系统需求分析、规格说明、体系结构设计、构件设计、系统集成
|