嵌⼊式试题集(含答案)---内容简单-不够详尽
1、ARM微处理器有7种⼯作模式,它们分为两类⾮特权模式、特权模式。其中⽤户模式属于⾮特权模式
2、ARM⽀持两个指令集,ARM核因运⾏的指令集不同,分别有两个状态ARM 、Thumb,状态寄存器CPSR的T 位反映了处理器运⾏不同指令的当前状态
3、ARM核有多个寄存器,其中⼤部分⽤于通⽤寄存器,有⼩部分作为专⽤寄存器,R15 寄存器⽤于存储PC,R13通常⽤来存储SP 。ARM处理器有两种总线架构,数据和指令使⽤同⼀接⼝的是冯诺依曼,数据和指令分开使⽤不同接⼝的是哈佛结构
4、ARM微处理器复位后,PC的地址通常是0x0 ,初始的⼯作模式是Supervisor 。
5、ARM微处理器⽀持虚拟内存,它是通过系统控制协处理器CP15 和MMU(存储管理部件)来进⾏虚拟内存的存储和管理。当系统发⽣数据异常和指令领取异常时,异常处理程序透过嵌⼊式操作系统的内存管理机制,通过MMU交换物理内存和虚拟内存的页⾯,以保证程序正常执⾏。
6、编译链接代码时,有两种存储代码和数据的字节顺序,⼀种是⼩端对齐,另⼀种是⼤端对齐。
7、构建嵌⼊式系统开发环境的⼯具链有多种,其中开放源码的⼯具链是GNU⼯具链,ARM公司提供的
⼯具链是ADS⼯具链计算机有CISC和RISC两种类型,以ARM微处理器为核⼼的计算机属于RISC类型,其指令长度是定长的
8、⽬前使⽤的嵌⼊式操作系统主要有哪些?请举出六种较常⽤的。
Windows CE/Windows Mobile、VxWork、Linux、uCos、Symbian、QNX任选六
9、Boot Loader在嵌⼊式系统中主要起什么作⽤?完成哪些主要的⼯作?
答:Boot Loader是在嵌⼊式系统复位启动时,操作系统内核运⾏前,执⾏的⼀段程序。通过Boot Loader,初始化硬件设备,建⽴内存和I/O空间映射图,为最终加载操作系统内核调整好适当的系统软硬件环境。
10、搭建嵌⼊式开发环境,连接⽬标板,⼀般使⽤什么通信接⼝连接?在Windows主机上使⽤什么软件建⽴连接?在Linux主机上使⽤什么软件建⽴连接?
答:RS-232,以太⽹⼝、并⼝在Windows主机上使⽤超级终端软件,在Linux主机上使⽤Minicom软件
11、嵌⼊式开发环境主要包括哪些组件?
嵌⼊式系统开发需要交叉编译和在线调试的开发环境,主要包括
●宿主机
●⽬标机(评估电路板)
●基于JTAG的ICD仿真器、或调试监控软件、或在线仿真器ICE
●运⾏于宿主机的交叉编译器和链接器、以及开发⼯具链或软件开发环境
●嵌⼊式操作系统
12、在进⾏基于ARM核的嵌⼊式系统软件开发时,调⽤如下函数:
int do_something(int arg1,void *arg2,char arg3,int *arg4)
这四个参数通过什么⽅式从调⽤程序传⼊被调函数?
根据A TPCS编程规范,调⽤函数和⼦程序通过R0——R3四个寄存器传递参数,超过四个参数使⽤堆栈传递。因此arg1通过R0传⼊,arg2, 通过R1传⼊,arg3通过R2传⼊,arg4通过R3传⼊
13、⽬前使⽤的嵌⼊式操作系统主要有哪些?请举出六种较常⽤的。
Windows CE/Windows Mobile、VxWork、Linux、uCos、Symbian、QNX任选六
14、写⼀条 ARM 指令,完成操作r1 = r2 * 3(4分)
ADD R1,R2,R2,
LSL #1
15、初始值R1=23H,R2=0FH执⾏指令BIC R0,R1,R2,LSL #1后,寄存器R0,R1的值分别是多少?(4分)
R0=21H,R1=23H
16、说明指令STMIA r12!, {r0-r11}的操作功能。(4分)
将R0-R11⼗⼆个寄存器中的32位数据,存储到R12地址指针为起始地址的内存中,地址的操作⽅式是先操作、后增加,并更新地址。
⼀、填空题(请将答案填⼊题后括号中):共10⼩题,每⼩题2分,满分20分。
1、⼀般⽽⾔,嵌⼊式系统的构架可以分为4个部分:分别是(处理器)、存储器、输⼊/输出和软件,⼀般软件亦分为操作系统相关和(应⽤软件)两个主要部分。
2、根据嵌⼊式系统使⽤的微处理器,可以将嵌⼊式系统分为嵌⼊式微控制器,(嵌⼊式DSP 处理器),(嵌⼊式微处理器)以及⽚上系统。
3、操作系统是联接硬件与应⽤程序的系统程序,其基本功能有(进程管理)、进程间通信、(内存管理)、I/O资源管理。
4、从嵌⼊式操作系统特点可以将嵌⼊式操作系统分为(实时操作系统)和分时操作系统,其中实时系统亦可分为(硬实时系统)和软实时系统。
5、内核负责管理各个任务,或者为每个任务分配CPU时间,并且负责任务之间的(通信),内核的基本服务是(任务切换)。
6、嵌⼊式开发⼀般采⽤(宿主机/⽬标机⽅式)⽅式,其中宿主机⼀般是指(PC机或者台式机)。
7、哈佛体系结构数据空间和地址空间(分开),ARM7TDMI采⽤(冯诺依曼体系)的内核架构。
8. ARM7TDMI采⽤(3)级流⽔线结构,ARM920TDMI采⽤(5 )级流⽔线。
9 .按操作系统的分类可知,Dos操作系统属于顺序执⾏操作系统,Unix操作系统属于(分时)操作系统,VxWorks属于(实时嵌⼊式)操作系统。
10、ARM7TDMI中,T表⽰⽀持16位Thumb指令集,D表⽰(在⽚可调试),M表⽰内嵌乘法器Multiplier,I表⽰(嵌⼊式ICE),⽀持在线断点和调试。
⼆、选择题(请将答案填⼊题后括号中):共10⼩题,每⼩题2分,满分20分。
1、要使CPU能够正常⼯作,下列哪个条件不是处理器必须满⾜的。
( D )
(A) 处理器的编译器能够产⽣可重⼊代码(B)在程序中可以开或者关闭中断
(C) 处理器⽀持中断,并且能产⽣定时中断(D)有⼤量的存储空间
2、下⾯哪种操作系统最⽅便移植到嵌⼊式设备中。
( D )
(A) DOS (B)unix (C) Windows xp (D)linux
3、下⾯哪个选项不是SUB设备的特点。
( B )
(A) 串⾏通信⽅式(B)不可热拨插
(C) 分HOST、DEVICE和HUB (D)通信速率⽐RS232快
4、下⾯哪种嵌⼊式操作系统很少⽤于⼿机终端设备上。
( C )
(A) Symbian (B)WinCE (C) uc/os (D)linux
5、以下哪项关于SRAM和DRAM的区别是不对。
( A )
(A) SRAM⽐DRAM慢(B)SRAM⽐DRAM耗电多
(C) DRAM存储密度⽐SRAM⾼得多(D)DRM需要周期性刷新
6、uc/os操作系统不包含以下哪⼏种状态。
( C )
(A) 运⾏(B)挂起 (C) 退出(D)休眠
7、0x07&0x11的运算结果是。
( A )
(A) 0x01 (B)0x11 (C) 0x17 (D)0x07
8、以下哪种⽅式不是uc/os操作系统中任务之间通信⽅式。
( C )
(A) 信号量(B)消息队列 (C) 邮件(D)邮箱
9、以下哪种⽅式不是⽂件系统的格式。
( B )
(A) FAT (B)DOS (C) NTFS (D)Ext
10、在将uc/os操作系统移植到ARM处理器上时,以下哪些⽂件不需要修改。
( A )
(A) OS_CORE.C (B)include.h (C) OS_CPU.H (D)OSTaskInit
三、判断题:共5⼩题,每⼩题2分,满分10分。
1、所有的电⼦设备都属于嵌⼊式设备。( F )
2、冯诺依曼体系将被哈佛总线所取代。( F )
3、嵌⼊式linux操作系统属于免费的操作系统。( T )
4、移植操作系统时需要修改操作系统中与处理器直接相关的程序。( T )
5、USB2.0的最⼤通信速率为12M/S。( F )
四、简答题:共2⼩题,每⼩题10分,满分20分。
1、根据嵌⼊式系统的特点,写出嵌⼊式系统的定义。
以应⽤为中⼼、以计算机技术为基础、软硬件可裁减、功能、可靠性、成本、体积、功耗严格要求的专⽤计算机系统2、试分析实时操作系统的⼯作状态特点及相互之间的转换。
运⾏:获得CPU的控制权;
就绪:进⼊任务等待队列,通过调度中转为运⾏状态;
挂起:任务发⽣阻塞,称出任务等待队列,等待系统实时事件的发⽣⽽被唤醒,从⽽转为就绪或者运⾏;
休眠:任务完成或者错误等原因被清除的任务,也可以认为是系统中不存在的任务。
多任务
五、分析计算题:共2⼩题,每⼩题10分,满分20分。
1、试写抢占式和⾮抢占式的区别。
执⾏的过程中对中断处理⽅式不⼀样,抢先式:某⼀中断执⾏完成后,如果有更⾼优先级的任务处于就绪状态,将执⾏更⾼优先级任务,⽽⾮抢占式不⼀样,⼀个任务只有主动放弃CPU 的控制权,其它任务才能够获得CPU的控制权。
2、从嵌⼊式系统底层到上层应⽤软件,试分析嵌⼊式计算系统的组成主要分为哪⼏个部分,并写出各
部分所完成的功能。(1)硬件层;(2)中间层(嵌⼊式系统初始化,硬件相关的驱动程序);(3)软件层(操作系统、⽂件系统、GUI,⽹络及通⽤组件);
(4)功能层。
六、专业名词解释(写出以下英⽂简写对应的中⽂名称):共5⼩题,每⼩题2分,满分10分。
(1)RTOS (2)CISC (3)Kernel (4)Scheduler (5)non-preemptive (1)RTOS(实时操作系统);
(2)CISC(复杂指令集);
(3)Kernel(内核) (4)Scheduler(调度)
(5)non-preemptive(⾮抢先式)
1. 请简述嵌⼊式系统的设计过程。
嵌⼊式系统得设计过程:
(1)系统定义与需求分析
(2)系统设计⽅案的初步确⽴
(3)初步设计⽅案性价⽐评估与⽅案评审论证
(4)完善初步⽅案、初步⽅案实施
(5)软硬件集成测试
(6)系统功能性能测试及可靠性测试
2. 简述ARM处理器的⼯作状态。
ARM处理器的⼯作状态:
(1)ARM状态:32位,ARM状态下执⾏字对准的32位ARM指令;
(2)Thumb状态:16位,Thumb状态下执⾏半字对准的16位Thumb指令。在Thumb状态下,程序计数器PC使⽤位1选择另⼀个半字。
3. 简述ARM处理器的7种运⾏模式及各⾃的⽤途。
ARM处理器的7种运⾏模式:
(1)⽤户模式:正常⽤户模式,程序正常执⾏模式。
(2)FIQ模式:处理快速中断,⽀持⾼速数据传送或通道处理。
(3)IRQ模式:处理普通中断。
(4)SVC模式:操作系统保护模式,处理软件中断。
(5)中⽌模式:处理存储器故障,实现虚拟存储器和存储器保护。
(6)未定义模式:处理未定义的指令陷阱,⽀持硬件协处理器的软件仿真。
(7)系统模式:运⾏特权操作系统任务。
4. 简述BLX、SWI、STM、LDM、MOV、MVN的含义。
BLX: 带链接和状态切换的跳转指令SWI: 软件中断指令STM: 批量内存字写⼊指令LDM: 加载多个寄存器指令MOV: 数据传送指令MVN: 数据取反传送指令
5.请解释下列程序中的各条指令:
.equ x, 45 /*定义变量x,并赋值为45 */
.equ y, 64 /*定义变量y,并赋值为64*/
.equ stack_top, 0x1000 /*定义栈顶0x1000*/
.global_start /*声明全局变量*/
.text /*将操作符开始的代码编译到代码段*/
_start: /*程序代码开始标志*/
mov sp, #stack_top /*定义堆栈位置*/
mov r0, #x /*x的值放⼊r0*/
str r0, [sp] /*r0的值保存到堆栈*/
mov r0, #y /*y的值放⼊r0*/
ldr r1, [sp] /*取堆栈中的数到r1*/
add r0, r0, r1 /*将r0中的数和r1中的数相加的结构放⼊r0*/
str r0, [sp] /*r0的值保存到堆栈*/
stop:
b stop /*程序结束,进⼊死循环*/
.end
5、S3C44B0X中具有哪⼏个定时器?分别有哪些功能特性?
6个16位定时器:
都可以⼯作在中断或DMA模式。定时器0、1、2、3、4有PWM功能,定时器5只是⼀个内部定时器⽽⽆输出引脚。PWM定时器特性为:
6个基于DMA或中断操作的16位定时器
3个8位预分频器,2个5位除法器和1个4位除法器。
输出波形可编程的功率控制器(PWM)
⾃动重装或短脉冲模式(One-shot Pulse Mode)
死区发⽣器
1个看门狗定时器:
看门狗定时器具有以下特性:
带中断请求的普通间隔定时器模式
当定时器计数值达到0时,内部复位信号被激活128MCLK周期
6、S3C44B0X中功耗管理的5种模式是什么?
S3C44B0X中功耗管理的5种模式:
正常模式:正常运⾏模式;
低速模式:不加PLL 的低时钟频率模式;
空闲模式:只停⽌CPU 的时钟;
停⽌模式:停⽌所有的时钟;
arm嵌入式系统期末考试LCD的SL空闲模式:SL 空闲模式的进⼊将导致LCD 控制器开始⼯作。此时,CPU和除LCD控制器外的所有外设都停⽌⼯作。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论