LPC1768嵌入式uCOS-II+UDP移植应用手册

LPC1768嵌入式uCOS-II+UDP移植应用手册
LPC1768嵌入式uCOS-II+UDP移植应用手册

基于LPC1768硬件平台移植uC/OS-II记录文档

孟范涛:2013-4-19 2013-4-19一移植准备工作

一、系统内核

在Micrium官网下载基于LPC1768的评估系统框架代码Micrium_LPC1768-SK_uCOS-II,其代码结构如下:

二、标准固件库

目前有两个版本,其一down自NXP官网的ware支持站点,版本2012年中,60M左右,有DSP,filter等丰富的代码支持及相关设计工具,但该死的是NXP对源代码进行了封装,所以调用起来非常不方便,所以选择了其二,即谢云鹏版本,虽然版本较老(2011),但其源码开源,便于移植和引用。最后的固件库目录结构如下:

三、硬件测试平台

苗林的M3-Transport板,板级资源包括以太网、232串口、422串口、485串口、USB串口、JTAG调试接口;

四、开发平台

KEIL MDK470

五、测试目标:在ucosii系统下开发以太网、ADC、文件系统,应用的BC中视频项目。

2013-4-19一系统内核移植及测试

一、整理代码架构

由于官方的测试代码是多平台、多CPU支持的,所以文件目录结构混乱、启动文件位置不合理、头文件包含不清晰,非常不便于对系统的深入理解,也不利于后期备份与共享,遂必须去除无用文件,删除多级目录,构建一个清晰的文件管理目录,基本的步骤如下:

1.删除IAR平台支持文件

2.删除无效启动文件

3.去除三级以上目录,提取平台相关文件

工程版本LPC1768_uCOSII经典,且编译通过,最后的目录结构如下:

提示:全部文件位置小于二级,并增加了app文件夹,存放高层应用文件app.c、app_cfg.c,以后自定义的高层用户文件也放置在此,便于管理。

二、潜入NXP固件库

UC官方代码的BSP、CSP对LPC1768的支持有限,并且进行了转义表示,非常不符合前后台方式(裸跑)工程师的开发习惯,所以要淡化原BSP、CSP的过度功能,只留有时钟系统初始化、系统定时器初始化、堆栈初始化、任务切换(汇编)的关联代码,其他如gpio、spi、i2c的代码全部删除,转而采用nxp标准固件库来替代BSP/CSP,有两点非常重要:

1.有选择的潜入固件库设备驱动文件

2.不引入固件库提供的系统启动文件,否则会与uc提供的启动文件发生冲突。

3.不调用固件库中的系统初始化函数,保持uc/bsp中的初始化方式。

4.systick中断也由uc初始化。

带固件库的工程版本LPC17xx_FwLib_uCOS-II,最后的目录结构如下:

三、核心代码整改

由于原测试代码是基于其官方评估板的,且苗林板没有数码管接口,所以无法测试,所以只能用串口来检验系统,具体工作如下:

1.删除bsp、csp中的led、key的相关代码级宏定义

2.删除app.c中启动任务的led功能代码

3.增加固件库的管理头文件fw_driver.h,并加入到includes.h中,这样完全不影响原os文

件结构,实现固件库和BSP的自然衔接。

4.增加bsp_uart.h/bsp_uart.c文件,并加入带includes.h中,这两个文件完全采用固件库函

数实现,具体实现见源代码。

5.增加usr_app.c文件,把用户应用级任务完全放倒这个文件里,类似前后台程序的main.c,

而app.c只用作系统初始化、系统启动。

最后的代码结构如下:

五、用DB9串口(uart3)进行系统测试,在task1中初始化uart3,并且循环向上位机发送

字符串“laomeng”,测试成功:

总结:

1.文件组织无误

2.固件移植无误

3.启动文件选择无误

4.启动初始化、启动正常

5.固件驱动加载、调用正确,系统任务执行正常

2013-4-20一串口中断系统测试一

一、中断使能及注册

#if(UART3_INT_EN > 0)

/* Enable UART Rx interrupt */

UART_IntConfig((LPC_UART_TypeDef *)LPC_UART3, UART_INTCFG_RBR, ENABLE);

/* Enable UART line status interrupt */

UART_IntConfig((LPC_UART_TypeDef *)LPC_UART3, UART_INTCFG_RLS, ENABLE);

/* ?òOS?μí3×¢2áUART3?D?? */

//CSP_IntVectReg(CSP_INT_CTRL_NBR_MAIN, CSP_INT_SRC_NBR_UART_03, (CPU_FNCT_PTR)Uart3Int_Handler, (void *)0);

CSP_IntVectSet((CSP_INT_VECT *)CSP_INT_SRC_NBR_UART_03,

(CPU_FNCT_PTR )Uart3Int_Handler,

(void *)0);

CSP_IntEn(CSP_INT_CTRL_NBR_MAIN, CSP_INT_SRC_NBR_UART_03);

#endif

仔细看了固件和CSP的代码,中断的注册机使能没有太大问题,但是依然不能进入中断,于是问题回到了启动文件,发现自己定义的中断服务程序与系统启动文件预订的预订的服务程序不符,于是按照startup_LPC17xx.s修改cstartup.s中的外部中断向量表。

2013-4-25一串口中断系统测试二

结果:测试通过,版本LPC17xx_FwLib_uCOS-II_20130425

“串口中断测试一”失败原因:串口三引脚配置错误,即串口三的RXD复用引脚配置成TXD 的了,所以直接导致查询、中断两种方式都无法接受到数据,正确配置之后问题得以解决。

一、关于OS环境下使用中断服务的总结,大致五个步骤:

(1)利用固件库函数配置外围设备的基本工作模式

(2)利用固件库提供的中断配置函数,设定目标中断标志

(3)自定义、编写中断服务程序

(4)利用CSP提供的系统级中断服务注册函数(如下)向系统注册对应的中断向量,及中断服务程序的执行函数入口地址(ISR函数名)

CPU_BOOLEAN CSP_IntV ectReg (CSP_DEV_NBR int_ctrl,

CSP_DEV_NBR src_nbr,

CPU_FNCT_PTR isr_fnct,

void *p_arg)

(5)使用CSP提供的中断源使能函数(如下),在系统级使能对应的中断服务;

void CSP_IntEn (CSP_DEV_NBR int_ctrl,

CSP_DEV_NBR src_nbr);

至此中断的实现过程结束!

二、深入理解uC/OS-II系统中断处理思想

(1)硬件触发中断,根据系统启动文件cstartup.s定义,程序跳转到对应的中断服务的入口地址执行对应的中断服务程序。

(2)然,所有外部中断共用一个中断服务程序OS_CPU_IntHandler,大概流程如下:函数名称定义位置说明

调用

顺序

1 OS_CPU_IntHandler Os_csp.c 1.临界代码区保护,OSIntNesting++,

2.调用CSP_IntHandler();

2 CSP_IntHandler() Csp_int.c 1.判断中断是否有效

2.加载p_int_vect = &CSP_MainVectTbl[src_nbr];

3.调用CSP_IntVectDeref(p_int_vect)

3 CSP_IntV ectDeref()Csp.c 调用用户自定义中断服务函数:

(*int_isr_fnct)(p_int_arg)

4 Usr_ISR 应用层用户自定义中断服务程序

5 中断返回---------- OSIntNesting++

三、提示

(1)OS系统对所有硬件中断进行了统一封装,交由OS_CPU_IntHandler函数来处理所有的中断响应,也就是说不能再cstartup.s修改中断入口的中断服务程序的名称,致使外部中断发生时,不经过系统层,而直接执行自定义的中断服务程序。

(2)OS对中断的封装(加壳)处理过程中,进行了必要的系统管理工作,比如OS系统嵌套标志OSIntNesting++,所以忽略这个必须的系统开销,必然会导致系统不稳定甚至崩溃。(3)这里的中断与进程间通信是采用全局标志实现的,也可以用信号量的方式更为稳定。2013-5-6一系统瘦身

编译“版本LPC17xx_FwLib_uCOS-II_20130425”的代码量如下:

根据编译数据显示:

1.蓝色标注为Flash占用量,由于LPC1768的rom为512k,所以本工程的31k代码量还可以接受。

2.红色标注为RAM代码量,为32k。因为LPC1768的RAM为(32k+32k)的方式,

如下图:其中IRAM1为默认设

置,用户常规代码区,IRAM2为

以太网描述符映射地址空间,一

般不能占用

由以上分析,很明显,目前的系统本身代码量过大,已经接近32k的边缘,无法继续开发其他应用。所以从以下几个方便,来缩减系统对ram的占用:

1.系统级:os_cfg.h

os_cfg.h文件,它是系统配置文件,系统初始化主要依靠这个文件来注册、管理各个功能模块的开关和使能,有如下几个方便,可以减少ram占用量:

#define OS_MAX_EVENTS 20u

#define OS_MAX_FLAGS 20u

#define OS_MAX_MEM_PART 5u

#define OS_MAX_QS 10u

#define OS_MAX_TASKS 10u

跟据实际情况来规划系统各个信号量的注册数量,可以减少RAM的占用。其中最大任务数量,可以明显减少系统ram的占用量,原始值20,这里把它改为10,足够用!

#define OS_APP_HOOKS_EN 0u /* 应用程序回调函数,可关掉,禁止回调*/ #define OS_ARG_CHK_EN 0u /* 应用参数检查功能,可关掉,禁止检查*/ 以上两点可以减少code占用,也可以提高用户任务的执行效率。

#define OS_TMR_EN 1u /*使能软件定时器,不建议关掉*/

#define OS_TMR_CFG_MAX 4u /*定时器的最大数量,默认值16,修改为4,

可以减少ram占用,并且不影响系统功能*/ 2.应用级app_cfg.h

(1)禁止os系统对标准库资源的内存分配及管理,如下图的红色标注,可大大节约RAM

(2)任务数量级任务堆栈,合理分配用户任务的数量和任务堆栈的大小

当前除了OS必要的三个任务外,启动了五个用户任务,任务堆栈定义如下:

其实5个用户任务其实已经足够,任务堆栈的大小,跟经验值应该设定在128和512之间。3.经过上述优化之后的RAM使用量如下:

可以明显看出,ram的使用量减少了21K,加入开设三个用户任务的话,ram的占用量可以控制在8K左右,这将是一个非常轻量级的系统框架。

4.另外,为了提高中断响应速度,也可以屏蔽掉csp.c中CSP_IntVectDeref的ts = CPU_TS_Get32() – ts,它是中断执行时间统计函数。

5.提示,为了构建一个健壮的系统架构,处了上述配置外,不要轻易尝试修改其他os和app配置,更不要修改core内核配置,否则会造成uc系统的不稳定甚至崩溃。

关于以太网,有两种常用的通信方式,即TCP、UDP,两种方式下MCU均作为服务器,而上位机则作为客户端,对m3进行控制和数据请求。

一、程序说明:

1、系统环境,用20130428的代码。

2、测试方式,上位机通过网口给M3发送一帧数据,M3收到后立即返回数据帧,要求响

应速度快,数据不丢帧。

3、测试软件,TCP&UDP测试工具。

4、协议栈,在网上下载的一些样例代码,综合各个版本的代码结构,最后的程序目录如下:

二、TCP服务器结构

1.emac中断服务,工作在物理层,当有数据到来,并且已经存储在数据缓冲区(emac描述符区),则释放发送中断标志信号量RecPackedFlag,

2.主任务App_TaskStart,等待中断标志信号量RecPackedFlag,执行数据链路层的数据接收任务。

3.Task_tcp,工作在IP层(网络层),负责ip层的协议判断和数据解析任务。

4.Task_TcpServer,工作在TCP(运输层),属于高层协议,这里主要是处理上位机客户端的连接、断开、数据等请求。

注:由于老唐项目用UDP协议,所以TCP协议没有系统测试,并且速度有限,后续再优化!

一、UDP

现在测试过的版本有uCOSII_FwLib_UDP_BETTER1、2,uCOSII_FwLib_UDP_基本成型、uCOSII_FwLib_UDP_BEST1,其中uCOSII_FwLib_UDP_BEST1为定型版本,测试稳定,测试结果如下:

1.任务数量:3个系统任务,5个用户任务,共8个任务

2.任务功能:

(1)App_TaskStart:第一功能,负责初始化用户任务、初始化系统信号量;第二功能是服务于mac层,等待mac中断信号量EmacIntFlag,无效则挂起自身任务;如果有效则接受缓存区中的数据包,并把数据包传递到IP层,并发送RecUdpQFlag信号量,只是数据已经到达IP层(网际层)。

(2)Task_IPService:等待相邻底层(物理层)的数据有效信号,如果该信号无效则挂起,信号有效执行运输层处理函数Udp_Process,处理IP层提供的服务,当数据处理结束后,发送UdpSemRec信号量,指示IP层数据处理完成,并且数据有效;

简言之:网际IP层工作进程,向下层(物理层)交付服务,上层(运输层TCP/IP)提供服务。

(3)Task_UdpServer(),运输层(TCP/IP)服务进程,一方面想下层(运输层)交付服务,另一方面向上层(APP应用层)提供数据服务;

注:本任务的优先级比较高,主要是为实现优先处理客户端(上位机)请求,因此任务中的两个注释掉的OSTimeDly(1)只是测试以太网数据响应、数据吞吐量是所用,在真正的项目开发的时候完全可以使用,这样的话高优先级适当挂起,避免阻塞用户任务进程的有效执行,也可以大大提高系统的任务管理效率;

(4)AppTask1()和AppTask2(),用户级任务,当进行项目应用的扩展开发是,其他的功能如LED/LCD显示、键盘扫描、串口数据处理、ADC数据采集等任务可以放在这两个任务中实现;

目前功能:

1> AppTask1()每个20个系统延时(100ms)通过串口向上位机发送字符串"_______1___"。

2> AppTask2(),等待串口3中断标志信号量Uart3IntFlag,当串口3收到上位机数据的时候,在中断服务函数中发送信号OSSemPost(Uart3IntFlag),任务中调用OSSemPend(Uart3IntFlag)等待信号,如果信号有效则向上位机发送发送字符串"_______2___";

2013-5-14一以太网系统测试三

二、测试方法

1.上位机每个1ms想M3发送400字节的以太网数据包,M3接受到数据包后,立刻返回这400字节的UDP数据包,并显示;任务1、任务2同时执行;

(1)打开串口调试助手,系统启动后会不断显示_______1___,表示任务1在运行;

(2)通过助手向上位机发送几个字符数据,间隔5毫秒;然后串口助手中会显示_______2___,表示系统正常的响应了串口3中断,并且任务2也开始运行;

(3)打开上位机网络设置界面,设置如下:

注:M3作为服务器,地址为192.168.1.101,电脑作为客户端,地址设为是192.168.1.103,红圈位置应该为102、103等大于101的数;

(4)打开TCP/UDP调试软件

新建一个UDP客户端连接,设置如下:

注:(1)红圈位置是指定要连接的服务器IP地址,即为M3的IP地址,见主函数;

(2)蓝圈,发送间隔1ms

(3)发送数据包400Byte,建议数据包不要大于420,其实对于控制而言已经足够;

(4)绿圈,因为本软件开辟的接受缓存有限,未来更快的响应、测试网口速度,需要不断的点击“清空”按钮,否则数据速率会越来越慢;

(5)可以打开接受和发送的选项,增大缓冲区大小,来提高本软件的速度;

测试思想及目的:

1.实时性:4个任务同时运行;

2.中断响应:5ms一次串口中断、5毫秒一次系统定时器中断、1毫秒一次网口中断;3.网口响应速度、数据传输速率:每隔1ms发送400byte数据包,并立刻回传400byte数据包;

4.稳定性:连续测试

2013-5-16一以太网系统测试四

三、测试结果

1.代码量

2.以太网数据率

(1)响应时间1ms,其实可以更快,只是调试软件已经工作在极限,无法更快;

(2)数据包400字节;

(3)每秒钟发送240000字节、接收240000字节,简单计算一下,就是一秒内以太网传输了480000个字节,那么480000*8 = 3680000bit/S,即3.68bps的比特率。

3.连续测试时间2小时,数据无丢包现象,并且系统运行稳定;

4.四个任务、三个中断同时运行,互不干扰;

5.台式机的网口速度高于笔记本电脑,所以尽量采用台式机;

6.其实网口的速率可以更高,一方面不了解算法,另一方面上位机找不到更好的测试软件;测试版本:uCOSII_FwLib_UDP_BEST

2013-5-20一以太网系统测试五

一、框架代码中附有相信的注释,请认真阅读,下面对各个Group简要说明:

1.APP用户代码文件;

2.BSP板级支持包,负责定义、声明、管理

外部设备;建议具体的项目应用接口定义也

放在这个文件夹中。

3.CSP处理器支持包,负责管理时钟系统、

中断系统、AHB总线pwr开关等,实现ucos

软件最小系统的初始化代码;

4.CPU是CSP和APP的接口文件,为systick、

中断管理提供过度代码,看似多余,无需修

改;

5.LIB是系统库文件,用处不大,勿删勿改;

6.Ports,平台相关,是uC内核和所有上层

的接口文件,采用C语言嵌套汇编的方式,

实现systick定时器中断服务、任务切换、任

务查询、任务优先级table管理等最核心的代

码,无需修改;

7.Source系统内核文件,有Micrium维护,

任何时候都无需修改;

8.Ethernet,以太网协议栈,已经调试ok,

无需改动;

9.FwDrivers固件库,来自NXP官网

https://www.360docs.net/doc/b02882564.html,,较新版本,只需在fw.h中

引用,源码无需修改;

二、扩展应用开发说明

1.框架代码中已经把无需修改的文件设定为只读属性(加锁),目的是避免无意的错误改动,致使uCOS最小软件系统无法工作。但如果要使用SourceInsight查看源码,去除这些文件的只读属性即可。

2.两个用户任务已经足够,如果不够清参考AppTask1、2增加。

3.App_cfg.h中关于任务堆栈大小、任务优先级的定义,已经是优化,无需修改,也不建议修改;

4.Os_cfg中关于系统使用的app回调函数、cpu回调函数、任务个数、信号量个数及开关、时钟管理已经优化,遂不建议修改;

5.为了提高中断执行效率,在csp.c中屏蔽了CSP_IntVectDeref的ts = CPU_TS_Get32() – ts,它是中断执行时间统计函数。如果需要此功能,可以还原此段代码;

6.UdpServer_Process()、UserTask1_Process()、UserTask2_Process()分别是以太网服务响应处理函数、用户应用执行函数,目前都是空实现,见app_usr.c,为了保持代码的独立性、可移植性,建议用这三个函数进行扩展开发;

7.尽量使用OSTimeDly函数,避免使用前后台(裸跑、while(1)+中断)方式的软件延时习惯,因为它本质上是迫使CPU对时钟进行指令周期计数,将会阻塞其他函数执行,进而降低系统效率;

8.可能涉及三个潜在问题:(1)当代码量足够大的时候,需要在app_cfg.h中把用户任务堆栈增加到512。(2)注释掉sendto(*us, RecvBuff, RecvCnt, 0, (struct sockaddr *)&clientaddr, al);(3)可以把UdpServer_Process()中定义为一个带指针形参的函数,把接受缓冲区的数据传递到app_usr.c中执行、解析、处理;

9.建议:扩展开发的板级实现在BSP.C中开发,并新建对应的头文件,然后统一加入include.h中。

评估说明:扩展开发的可实现性,无论从任务个数、中断源个数、多中断源高频率嵌套响应、网口数据率等角度,目前的测试手段都应该可以满足多种项目应用的扩展开发功能!

特别解释:

关于:OS_TICKS_PER_SEC 200u,目前赋值200,及系统节拍定时器的频率为200Hz,亦及定时5ms。关于它要权衡取值,没有固定约束,处理复位中断,它中断优先级最高,所以OS_TICKS_PER_SEC大了会加快任务切换时间、提高系统调度效率,但是会增加系统负荷,相对多的占用了CPU资源;相反OS_TICKS_PER_SEC小了,会减少cpu资源占用,降低系统负荷,但是却降低了任务切换、调度的效率,降低了实时性。

对于uCOSII_FwLib_UDP_BEST,测试取值100、200、250都OK;

建议的取值范围:100~200,严格而言100或者200,这样系统稳定,且系统延时比较清楚,及10ms或5ms,方便后续扩展开发;

测控事业部 硬件组

2013-5-20

嵌入式系统期末考试试卷 习题

1.下面哪一种工作模式不属于ARM特权模式(A)。 A.用户模式B.系统模式C.软中断模式D.FIQ模式 2.ARM7TDMI的工作状态包括( D )。 A.测试状态和运行状态B.挂起状态和就绪状态 C.就绪状态和运行状态D.ARM状态和Thumb状态 3.下面哪个Linux操作系统是嵌入式操作系统( B )。 A.Red-hat Linux B.uclinux C.Ubuntu Linux D.SUSE Linux 4.使用Host-Target联合开发嵌入式应用,( B )不是必须的。 A.宿主机B.银河麒麟操作系统 C.目标机D.交叉编译器 5.下面哪个不属于Linux下的一个进程在内存里的三部分的数据之一(A)。 A.寄存器段B.代码段 C.堆栈段D.数据段 选择题(共5小题,每题2分,共10分) 1.下面哪个系统属于嵌入式系统( D )。 A.“天河一号”计算机系统B.IBMX200笔记本电脑 C.联想S10上网本D.Iphone手机 2.在Makefile中的命令必须要以(A)键开始。 A.Tab键B.#号键 C.空格键D.&键 3.Linux支持多种文件系统,下面哪种不属于Linux的文件系统格式( B )。 A.Ext B.FA T32 C.NFS D.Ext3 4.下面哪种不属于VI三种工作模式之一( D )。 A.命令行模式B.插入模式 C.底行模式D.工作模式 5.下面哪一项不属于Linux内核的配置系统的三个组成部分之一( C )。 A.Makefile B.配置文件(config.in) C.make menuconfig D.配置工具 1.人们生活中常用的嵌入式设备有哪些?列举4个以上(1) 手机,(2) 机顶盒,(3) MP3,(4) GPS。(交换机、打印机、投影仪、无线路由器、车载媒体、PDA、GPS、智能家电等等。) 2.ARM9处理器使用了五级流水线,五级流水具体指哪五级:(5) 取指,(6) 译码,(7) 执行,(8) 缓冲/数据,(9) 回写。 3.在Makefile中的命令必须要以(10) Tab 键开始。 4.Linux支持多种文件系统,主要包括哪些(写出其中4中就行)(11) Ext,(12) VFA T,(13) JFS,(14) NFS。(JFS、ReiserFS、Ext、Ext2、Ext3、ISO9660、XFS、Minx、MSDOS、UMSDOS、VFAT、NTFS、HPFS、NFS、SMB、SysV、PROC等) 5.VI的工作模式有哪三种:(15) 命令行模式,(16) 插入模式,(17) 底行模式。

嵌入式期末考试试卷A卷教学教材

嵌入式期末考试试卷 A卷

5、ARM微处理器复位后,PC的地址通常是 0x0 ,初始的工作模式是Supervisor 。 6、ARM微处理器支持虚拟内存,它是通过系统控制协处理器 CP15 和MMU(存 储管理部件)来进行虚拟内存的存储和管理。当系统发生数据异常和指令领取异常时,异常处理程序透过嵌入式操作系统的内存管理机制,通过MMU交换物理内存和虚拟内存的页面,以保证程序正常执行。 7、编译链接代码时,有两种存储代码和数据的字节顺序,一种是小端对齐,另一 种是打断对齐 8、构建嵌入式系统开发环境的工具链有多种,其中开放源码的工具链是 GNU工具 链,ARM公司提供的工具链是 ADS工具链 9、计算机有CISC和RISC两种类型,以ARM微处理器为核心的计算机属于 RISC、类型,其指令长度是定长的。 二、指令测试题(共12分) 1、写一条 ARM 指令,完成操作r1 = r2 * 3(4分) ADD R1,R2,R2, LSL #1 2、初始值R1=23H,R2=0FH执行指令BIC R0, R1,R2,LSL #1后,寄存器R0, R1的值分别是多少?(4分) R0=21H,R1=23H 3、说明指令STMIA r12!, {r0-r11}的操作功能。(4分) 将R0-R11十二个寄存器中的32位数据,存储到R12地址指针为起始地址的内存中,地址的操作方式是先操作、后增加,并更新地址。 4、写一段 ARM汇编程序:循环累加队列myarray中的所有元素,直到碰上零值元

素,结果放在r4中。程序框架如下,补充代码完成上述功能。(8分) AREA total, CODE READONLY ENTRY start MOV r4, #0 ADR r0, myarray ;在此补充代码 loop LDR r1, [r0], #4 ADD r4, r4, r1 CMP r1, #0 BNE loop 5、这是一个由源程序strtest.c和scopy.s组成的混合程序项目,通过调用strcopy 完成字符串复制,程序代码如下。要求阅读程序,在程序中的注释符“//”后,说明该句程序的作用,并说明extern和EXPORT伪指令的在程序中的作用。(8分) strtest.c #include extern void strcopy(char *d, const char *s); int main() { const char *srcstr = "First string - source"; char dststr[] = "Second string - destination"; printf("Before copying:\n"); printf(" '%s'\n '%s'\n",srcstr,dststr); // strcopy(dststr,srcstr); // printf("After copying:\n"); printf(" '%s'\n '%s'\n",srcstr,dststr);// return 0; } scopy.s AREA SCopy, CODE, READONLY EXPORT strcopy strcopy LDRB r2, [r1],#1 ; STRB r2, [r0],#1 ; CMP r2, #0 ; BNE strcopy ; MOV pc,lr ; END //输出源串和目标串(8分)//调用strcopy函数

嵌入式系统期末考试题库及答案

《嵌入式系统》试题库 《嵌入式系统》试题库 一、填空题 嵌入式系统的基本定义为:以应用中心,以计算机技术为基础,软件硬件可裁剪,适、 1应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。从模块结构来看,嵌入式系统由三大部分组成,分别是:硬件、软件和开发平台。、 2从层次角度来看,嵌入式

系统由四大部分组成,分别是:应用软件层、操作系统层、、 3板级支持包(或硬件抽象层) 和硬件层。嵌入式产品的主要度量指标包括:上市时间、设计成本和产品质量。、 4嵌入式系统的设计过程包括:需求分析、规格说明、体系结构设计、构件设计、系统、 5集成和系统测试。需求分析包括:功能性需求分析和非功能性需求分析。 6、确定输入信号是数字信号还 是模拟信号属于功能性需求。 7、确定系统的物理尺寸和重量属于非功能性需求。 8、在嵌 入式系统的设计过程中,其中规格说明解决“做什么”。 9、在嵌入式系统的设计过程中,其 中体系结构设计解决“如何做”。 10、在嵌入式系统的设计过程中,软硬件划分应该在体系结构设计阶段完成。 11、在嵌入式系统的设计过程中,处理器的选择应该在体系结构设计阶段 完成。、 12在嵌入式系统的设计过程中,嵌入式操作系统的选择应该在体系结构设计阶段完成。、13在嵌入式系统的设计过程中,完成原理图设计应在构件设计阶段完成。、 14在嵌入式系统 的设计过程中,完成版图设计应在构件设计阶段完成。、15在嵌入式系统的设计过程中,完 成软件设计应在构件设计阶段完成。 16、反映嵌入式系统设计人员的水平能力主要在于总体 设计(需求分析、规格说明和体系 17、结构设计)和系统调试。设计流程指的是设计过程中所经历的过程步骤。、 18核的模块级重用和基于平台的系统级重用。 IP 设计重用技术主要分为基于19、 软硬件协同设计由系统描述、软硬件划分、软硬件协同综合以及软硬件协同模拟与验 20、证几个阶段组成。嵌入式处理器的分类包括三种,分别是:嵌入式微处理器、微控制器(或单片机)和、21页共页第 1 44 《嵌入式系统》试题库

嵌入式系统考试题库

嵌入式系统复习题 ARM复习题一 一、填空。 1、cpsr寄存器的作用是___________。 2、ARM926EJ-S中的“9”表示的含义是________,“E”表示的含义是________,“J”表示的含义是________。 3、LINUX下察看当前目录的命令是________,察看文件内容的命令是 ________,删除目录的命令是________。 4、字数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中,这样的存储方式我们称之为__________格式。 5、ARM9TDMI中的“T”表示的含义是_支持Thumb指令集__,“D”表示的含义是_支持片上Debug__,“M”表示的含义是__ 内嵌硬件乘法器___ ,“I”表示的含义是__支持片上断点调试___。 6、ARM指令中的第二个操作数“operand2”有_立即数__、_寄存器__、__寄存器移位__三种具体形式。 7、字数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中,这样的存储方式我们称之为__大端___格式。 8、LINUX下察看当前目录的命令是__ls__,察看文件内容的命令是 __cat____,压缩与解压的命令是__tar____,磁盘、目录挂接命令是 __mount__。 9、LINUX将设备分成__块设备____和___字符设备_______两大类。 二、简答。 1、简述嵌入式系统和通用计算机的区别? 2、VFS的功能有哪些? 记录可用的文件系统的类型; 将设备同对应的文件系统联系起来; 处理一些面向文件的通用操作 3、简述硬实时操作系统和软实时操作系统的区别? 4、简述嵌入式系统的开发模式。 5、交叉编译工具(链)主要包括什么? 对目标系统的编译器 gcc、目标系统的二进制工具binutils、目标系统

RAM嵌入式期末考试试题

何燕 120601 120601119 一、选择题(共5) 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.0x0000001C B.0x00000008 C.0x00000018 D.0x00000014 4、ADD R0,R1,#6,执行该指令时属于( A)寻址方式。 A.立即寻址 B.多寄存器寻址 C.寄存器直接寻址 D.相对寻址 5、寄存器R13除了可以用作通用寄存器之外,还可以作为( B ) A.程序计数器 B.堆栈指针寄存器 C.链寄存器 D.基址寄存器 6、一个32位字0x12345678,在采用bigEndian存储,在内存的排列正确的 是(B) A.78 56 34 12 B.12 34 56 78 C.87 65 43 21 D.21 43 65 87 二、填空题(共5个) 1、嵌入式系统体系结构一般具有冯.诺依曼和哈佛两种基本形式,且ARM7采用冯.诺依曼体系结构。 2、从编程角度看,ARM微处理器一般有ARM和Thumb两种工作状态。 3、ARM9处理器使用了程序存储器和数据存储器分开独立编址的哈佛结构,并采用5级指令流水线,5级流水线操作分别是取指、译码、执指、缓冲和写回。 4、ARM微处理器支持字节、半字、字三种数据类型,数据的位数分别为8位、16位、32位,其中字必须以4字节为边界对齐,半字必须以2字节为边界对齐。 5、复位异常的优先级最高,因此在任何情况下,只要进入该状态系统无条件地将PC指向0x00000000处,以执行系统第一条指令。 三、判断题(共5个) 1、ARM7采用3级指令流水线,即取指令、译码和执行指令。(√) 2、Boot Loader 是在操作系统内核运行之前运行的一段小程序。(√) 3、嵌入式系统开发环境只需要宿主机和目标机就可以。(×) 4、ARM指令中“%”后面的数字为十进制数。(×) 5、无论何种模式下R15均作为PC使用。(√) 6、ATPCS中的参数传递规则只能使用寄存器R0-R3来进行参数的传递。(×) 7、在C语言程序中调用汇编语言程序的方法是使用EXTERN关键字。(√) 8、Char *a[5];是数组指针的声明格式。(×) 9、指令ADD Rd,Rn,#3和指令ADD Rd,Rn,Rm的寻址方式不同。(√) 10、指令MUL R1,R1,R6是正确的。(×)(因为目标寄存器R1不能同时做第一操作数) 四、写出下列简称的含义(共5个)

最新嵌入式系统期末考试题库及答案

《嵌入式系统》试题库 一、填空题 1、嵌入式系统的基本定义为:以应用中心,以计算机技术为基础,软件硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 2、从模块结构来看,嵌入式系统由三大部分组成,分别是:硬件、软件和开发平台。 3、从层次角度来看,嵌入式系统由四大部分组成,分别是:应用软件层、操作系统层、板级支持包(或硬件抽象层)和硬件层。 4、嵌入式产品的主要度量指标包括:上市时间、设计成本和产品质量。 5、嵌入式系统的设计过程包括:需求分析、规格说明、体系结构设计、构件设计、系统集成和系统测试。 6、需求分析包括:功能性需求分析和非功能性需求分析。 7、确定输入信号是数字信号还是模拟信号属于功能性需求。 8、确定系统的物理尺寸和重量属于非功能性需求。 9、在嵌入式系统的设计过程中,其中规格说明解决“做什么”。 10、在嵌入式系统的设计过程中,其中体系结构设计解决“如何做”。 11、在嵌入式系统的设计过程中,软硬件划分应该在体系结构设计阶段完成。 12、在嵌入式系统的设计过程中,处理器的选择应该在体系结构设计阶段完成。 13、在嵌入式系统的设计过程中,嵌入式操作系统的选择应该在体系结构设计阶段完成。 14、在嵌入式系统的设计过程中,完成原理图设计应在构件设计阶段完成。 15、在嵌入式系统的设计过程中,完成版图设计应在构件设计阶段完成。 16、在嵌入式系统的设计过程中,完成软件设计应在构件设计阶段完成。 17、反映嵌入式系统设计人员的水平能力主要在于总体设计(需求分析、规格说明和体系结构设计)和系统调试。 18、设计流程指的是设计过程中所经历的过程步骤。 19、设计重用技术主要分为基于IP 核的模块级重用和基于平台的系统级重用。 20、软硬件协同设计由系统描述、软硬件划分、软硬件协同综合以及软硬件协同模拟与验证几个阶段组成。 21、嵌入式处理器的分类包括三种,分别是:嵌入式微处理器、微控制器(或单片机)和

嵌入式系统期末考试试卷-习题

1.下面哪一种工作模式不属于ARM特权模式( A )。 A.用户模式B.系统模式C.软中断模式D.FIQ模式 2.ARM7TDMI的工作状态包括( D )。 A.测试状态和运行状态B.挂起状态和就绪状态 C.就绪状态和运行状态D.ARM状态和Thumb状态 3.下面哪个Linux操作系统是嵌入式操作系统( B )。 A.Red-hat Linux B.uclinux C.Ubuntu Linux D.SUSE Linux 4.使用Host-Target联合开发嵌入式应用,( B )不是必须的。 A.宿主机B.银河麒麟操作系统 C.目标机D.交叉编译器 5.下面哪个不属于Linux下的一个进程在内存里的三部分的数据之一( A )。 A.寄存器段B.代码段 C.堆栈段D.数据段 选择题(共5小题,每题2分,共10分) 1.下面哪个系统属于嵌入式系统( D )。 A.“天河一号”计算机系统B.IBMX200笔记本电脑 C.联想S10上网本D.Iphone手机 2.在Makefile中的命令必须要以( A )键开始。 A.Tab键B.#号键 C.空格键D.&键 3.Linux支持多种文件系统,下面哪种不属于Linux的文件系统格式( B )。 A.Ext B.FAT32 C.NFS D.Ext3 4.下面哪种不属于VI三种工作模式之一( D )。 A.命令行模式B.插入模式 C.底行模式D.工作模式 5.下面哪一项不属于Linux内核的配置系统的三个组成部分之一( C )。 A.Makefile B.配置文件(config.in) C.make menuconfig D.配置工具 1.人们生活中常用的嵌入式设备有哪些?列举4个以上(1) 手机,(2) 机顶盒,(3) MP3,(4) GPS。(交换机、打印机、投影仪、无线路由器、车载媒体、PDA、GPS、智能家电等等。) 2.ARM9处理器使用了五级流水线,五级流水具体指哪五级:(5) 取指,(6) 译码,(7) 执行,(8) 缓冲/数据,(9) 回写。 3.在Makefile中的命令必须要以(10) Tab 键开始。 4.Linux支持多种文件系统,主要包括哪些(写出其中4中就行)(11) Ext,(12) VFAT,(13) JFS,(14) NFS。(JFS、ReiserFS、Ext、Ext2、Ext3、ISO9660、XFS、Minx、MSDOS、UMSDOS、VFAT、NTFS、HPFS、NFS、SMB、SysV、PROC等) 5.VI的工作模式有哪三种:(15) 命令行模式,(16) 插入模式,(17) 底行模式。 6.Linux下的一个进程在内存里包括三部分的数据,它们是:(18) 代码段,(19) 堆栈段,(20) 数据段。 1.目前使用的嵌入式操作系统主要有哪几种(1) Linux,(2) Windows CE,(3) uc/OS II,

嵌入式系统考试试题A及答案

《嵌入式系统》考试试卷 试题总分: 100 分考试时限:120 分钟 一、填空题(每空2分,共18分) 1、PC机开机的初始化工作一般由BIOS完成,而嵌入式系统的初始化工作一般由______________完成。 2、ARM内核三级流水线机制是指指令运行过程中经过的__________、译码、执行三个阶段。 3、ARM寄存器SPSR被称为_______________寄存器。 4、uClinux与标准Linux的最大区别在于___________。 5、嵌入式系统是以应用为中心、以为基础、软硬件可、功能、可靠性、成本、体积、功 耗严格要求的专用计算机系统。 6、ARM的数据存取指令Load/Store是唯一用于寄存器和存储器之间进行的指令。 7、μC/OS中,为保护任务之间的共享数据和提供任务之间的通信,提供了操作系统任务间通信方法有:、 邮箱、,事件标志。 二、单项选择题(每题2分,共24分) 1、下列哪一项不属于嵌入式系统软件结构一般包含的四个层面。() A. 嵌入式处理器 B. 实时操作系统(RTOS) C. 应用程序接口(API)层 D. 实际应用程序层 2、一条ARM数据处理指令,例如“ADD R0,R1,#immed”中使用的立即数 #immed 是有一定限制的,下列立即 数表示中合法的是( )。 B. 0x F000000F 0000F D. 0x F080000 3、μCOS-II操作系统不属于()。 A、RTOS B、占先式实时操作系统 C、非占先式实时操作系统 D、嵌入式实时操作系统 4、ARM汇编语句“ADD R0, R2, R3, LSL#1”的作用是()。 A. R0 = R2 + (R3 << 1) B. R0 =( R2<< 1) + R3 C. R3= R0+ (R2 << 1) D. (R3 << 1)= R0+ R2 5、ARM寄存器组有()个寄存器。 A、7 B、32 C、6 D、37 6、每种嵌入式操作系统都有自身的特点以吸引相关用户,下列说法错误的是()。

《ARM嵌入式系统基础教程》期末试题

《ARM嵌入式系统基础教程》期末试题 一、填空题(请将答案填入题后括号中):共10小题,每小题2分,满分20分。 1、一般而言,嵌入式系统的构架可以分为4个部分:处理器、(存储器)、输入/输出和软件,一般软件亦分为(操作系统)和应用软件两个主要部分。 2、根据嵌入式系统使用的微处理器,可以将嵌入式系统分为(嵌入式微控制器),嵌入式DSP,(嵌入式微处理器)以及片上系统。 3、操作系统是联接硬件与应用程序的系统程序,其基本功能有进程管理、(进程间通信)、(内存管理)、I/O资源管理。 4、从嵌入式操作系统特点可以将嵌入式操作系统分为实时操作系统和(分时操作系统),其中实时系统亦可分为(硬实时操作系统)和软实时系统。 5、内核负责管理各个任务,或者为每个任务分配CPU时间,并且负责任务之间的(通信),内核的基本服务是(任务调度)。 6、嵌入式开发一般采用(宿主机/目标机方式)方式,其中宿主机一般是指(PC机或者台式机)。 7、哈佛体系结构数据空间和地址空间(分开),ARM920T采用(哈佛体系)的内核架构。 8. ARM7TDMI采用(3)级流水线结构,ARM920TDMI采用(5)级流水线。 9 .按操作系统的分类可知,Dos操作系统属于顺序执行操作系统,Unix操作系统属于(分时)操作系统,VxWorks属于(实时嵌入式)操作系统。 10、ARM7TDMI中,T表示支持16位Thumb指令集,D表示(在片可调试),M表示内嵌乘法器Multiplier,I表示(嵌入式ICE),支持在线断点和调试。 二、选择题(请将答案填入题后括号中):共10小题,每小题2分,满分20分。 1、下面哪种操作系统不属于商用操作系统。 (B) A. windows xp B. Linux C. VxWorks D. WinCE 2. 下面哪点不是嵌入式操作系统的特点。 (C) A. 内核精简 B. 专用性强 C. 功能强大 D. 高实时性 3. 下面哪种不属于嵌入式系统的调试方法。 (D) A. 模拟调试 B. 软件调试 C. BDM/JTAG调试 D. 单独调试 4. 在嵌入式ARM处理器中,下面哪种中断方式优先级最高。 (A) A. Reset B. 数据中止 C. FIQ D.

嵌入式ARM期末考试试卷A

期末试题——嵌入式ARM(A卷) 说明:本试卷共四大题,试卷满分100分,考试时间120分钟。 一、填空题(请将答案填入题后括号中):共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 )

嵌入式系统试题闭卷 及答案

装 题 订 线 内 不 学习形式:脱产 . 夜大 . 函授 . 年级: 专业: 学号: 姓名: 答 要 《嵌入式系统》试题 闭卷答题 时间:30分钟 一、填空题(请将答案填入题后括号中):共10小题,每小题2分,满分20分。 1、一般而言,嵌入式系统的构架可以分为4个部分:分别是( )、存储器、输入/输出和软件,一般软件亦分为操作系统相关和( )两个主要部分。 2、根据嵌入式系统使用的微处理器,可以将嵌入式系统分为嵌入式微控制器,( ),( )以及片上系统。 3、操作系统是联接硬件与应用程序的系统程序,其基本功能有( )、进程间通信、( )、I/O 资源管理。 4、从嵌入式操作系统特点可以将嵌入式操作系统分为( )和分时操作系统,其中实时系统亦可分为( )和软实时系统。 5、内核负责管理各个任务,或者为每个任务分配CPU 时间,并且负责任务之间的( ),内核的基本服务是( )。 6、嵌入式开发一般采用( )方式,其中宿主机一般是指( )。 7、哈佛体系结构数据空间和地址空间( ),ARM7TDMI 采用( )的内核架构,ARM920T 采用( )的内核架构。 8.ARM7TDMI 采用( )级流水线结构,ARM920TDMI 采用( )级流水线。 9.按操作系统的分类可知,Dos 操作系统属于顺序执行操作系统,Unix 操作系统属于( )操作系统,VxWorks 属于( )操作系统。 10、ARM7TDMI 中,T 表示支持16位Thumb 指令集,D 表示( ),M 表示内嵌乘法器Multiplier ,I 表示( ),支持在线断点和调试。 二、选择题(请将答案填入题后括号中):共10小题,每小题2分,满分20分。 1、要使CPU 能够正常工作,下列哪个条件不是处理器必须满足的。( ) (A)处理器的编译器能够产生可重入代码(B )在程序中可以找开或者关闭中断(C)处理器支持中断,并且能产生定时中断(D )有大量的存储空间 2、下面哪种操作系统最方便移植到嵌入式设备中。( ) (A)DOS (B )unix (C)Windowsxp (D )linux 3、下面哪个选项不是SUB 设备的特点。( ) (A)串行通信方式 (B )不可热拨插 (C)分HOST 、DEVICE 和HUB (D )通信速率比RS232快 4、下面哪种嵌入式操作系统很少用于手机终端设备上。( ) (A)Symbian (B )WinCE (C)uc/os (D )linux 5、以下哪项关于SRAM 和DRAM 的区别是不对。( ) (A)SRAM 比DRAM 慢 (B )SRAM 比DRAM 耗电多 (C)DRAM 存储密度比SRAM 高得多 (D )DRM 需要周期性刷新 6、uc/os 操作系统不包含以下哪几种状态。( ) (A)运行 (B )挂起 (C)退出 (D )休眠 7、0x07&0x11的运算结果是。( ) (A)0x01 (B )0x11 (C)0x17 (D )0x07 8、以下哪种方式不是uc/os 操作系统中任务之间通信方式。( ) (A)信号量 (B )消息队列 (C)邮件 (D )邮箱 9、以下哪种方式不是文件系统的格式。( ) (A)FAT (B )DOS (C)NTFS (D )Ext 10、在将uc/os 操作系统移植到ARM 处理器上时,以下哪些文件不需要修改。( ) (A)OS_CORE.C (B )include.h (C)OS_CPU.H (D )OSTaskInit 三、判断题:共5小题,每小题2分,满分10分。 1、所有的电子设备都属于嵌入式设备。( ) 2、冯诺依曼体系将被哈佛总线所取代。( ) 3、嵌入式linux 操作系统属于免费的操作系统。( ) 4、移植操作系统时需要修改操作系统中与处理器直接相关的程序。( ) 5、USB2.0的最大通信速率为12M/S 。( ) 简答题:共2小题,每小题10分,满分20分。 1、根据嵌入式系统的特点,写出嵌入式系统的定义。 2、试分析实时操作系统的工作状态特点及相互之间的转换。

计算机等级考试四级嵌入式系统模拟+真题题库(16套含答案)

考试方式 上机考试,总分 50 分,与四级其他一门课程合计考试时长 90 分钟。 包含:单选题 30 分,多选题 20 分。 全国计算机等级考试四级嵌入式系统开发真题库第1套 一、单项选择题 操作系统部分 1.计算机操作系统的功能是。 A.把源程序代码转换为目标代码 B.实现计算机用户之间的相互交流 C.完成计算机硬件与软件之间的转换 D.控制、管理计算机系统的资源和程序的执行 2.操作系统是一组。 A.文件管理程序B.中断处理程序C.资源管理程序D.设备管理程序 3.信箱通信是一种通信方式。 A.直接B.间接C.低级D.信号量 4.如下选项中,不能用于进程间通信的是。 A.消息B.信件C.信号量D.口令` 5.属于进程通信原语的有。 A.P操作原语B.V操作原语C.创建进程原语D.send原语 6.构成网络操作系统通信机制的是。 A.进程B.线程C.通信原语D.对象 7.下面的描述中,是错误的。 A.进程执行的相对速度不能有进程自己来控制 B.P、V操作是原语操作 C.利用信号量的P、V操作可以交换大量信息 D.同步是指并发进程之间存在的一种制约关系 8.下列因素中,不一定是引起进程调度的因素。 A.一个进程运行完毕B.运行进程被阻塞 C.一个高优先级进程被创建D.实时调度中,一个紧迫的任务到来 9.若进程P一旦被唤醒就能投入运行,则系统可能是。 A.非抢占式调度方式,进程P的优先级最高 B.抢占式调度方式,就绪队列上的所有进程的优先级皆比P低 C.就绪队列为空队列 D.抢占式调度方式,P的优先级高于当前运行的进程 10.下列各种情况中,一定不会引起进程调度的操作是 A.一个进程完成工作后被撤销 B.一个进程从运行状态变成了阻塞状态或就绪状态 C.一个进程从阻塞状态变成了就绪状态 D.一个进程从就绪状态变成了运行状态 11.下列活动中,哪一种活动只存在同步关系? A.某年某月某日某航班的订票 B.球队举行足球比赛 C.汽车装配流水线上的各道工序

嵌入式系统及应用期末试卷A

北京理工大学珠海学院 2014 ~ 2015学年第二学期《嵌入式系统及应用》期末试卷(A) 1、嵌入式系统是以应用为中心,以计算机技术位基础,且软硬件可裁剪,对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。 2、目前使用的嵌入式操作系统主要有这几种:Linux 、 VxWorks 、 windows 等。 3、ARM920TDMI微处理器名称中,T表示支持16位宽度的压缩指令集,D 表示支持在片调试(Debug),M表示具有增强型乘法器,I表示具有嵌入式ICE部件。 4、ARM920T 微处理器中ARM 指令集的代码宽带是32位,Thumb 指令集的宽度是16位。 5、ARM920T微处理器的指令流水采用了典型的RISC五级流水结构,将指令执行过程分为取指、译码、执行、访存和写回5个步骤。 6、ARM处理器有两种总线架构,数据和指令使用同一接口的是冯诺依曼,数据和指令分开使用不同接口的是哈佛结构。 7、ARM9处理器内部共有37个32 位处理器,其中31个用过通用寄存器,6个用作状态寄存器。其中CPSR寄存器中文名称是当前程序状态寄存器,其上的I位置1时禁止IRQ中断,T位置0时,指示ARM状态。 8、Cache 的中文名称为高速缓存。 9、嵌入式系统有两种存储代码和数据的字节顺序,一种是小端对齐,另一种是大端对齐。 10、嵌入式系统移植时,首先要对嵌入式系统软件层次的系统启动应到程序层、操作系统层和用户应用程序层进行修改和剪裁。 二、选择题(每小题2分,共20分)【得分:】 1、在指令系统的各种寻址方式中,获取操作数最快的方式是( B )。 A. 变址寻址 B. 立即寻址 C. 寄存器寻址 D. 间接寻址 2、寄存器R14除了可以做通用寄存器外,还可以做( B )。

嵌入式系统考试---答案

嵌入式系统考试试题----答案 一、填空题(请将答案填入题后括号中):共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表示(在片可调试 debug ),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、下面哪个选项不是USB设备的特点。 ( B )

最新计算机等级考试三级嵌入式系统题库第12套

全国计算机等级考试三嵌入式系统开发技术题库第12 套 1嵌入式系统的应用极其广泛,下列设备:①洗衣机、②电饭煲、③服务器、④平板扫描仪、⑤路由器、⑥机顶盒、⑦巨型机、⑧POS机中,属于嵌入式系统应用的是: A) 除④和⑤之外 B) 除③和⑦之外 C) 除⑤和⑦之外 D) ①~⑧全部都是 2嵌入式系统的软件大多存储在非易失性存储器中,即使断电也不会消失。目前嵌入式系统使用最多的非易失性存储器是: A) Mask ROM B) Flash memory C) SRAM D) SSD 3下图是数字信号处理器(DSP)的典型应用方式,其中的①、②和③分别是: A) 模拟信号、DSP、数字信号 B) 模拟信号、DSP、模拟信号 C) 数字信号、DSP、数字信号 D) 数字信号、DSP、模拟信号 4片上系统(或系统级芯片)是目前广泛使用的一种嵌入式处理芯片,下面有关叙述中错误的是: A) 其英文缩写是SOC或SoC,它是电子设计自动化水平提高和大规模集成电路制造技术发展的成果 B) 它已成为集成电路设计的发展趋势,现在许多嵌入式处理芯片都是片上系统 C) 芯片中既包含处理器又包含存储器及外围电路,单个芯片就能实现数据的采集、转换、存储、处理和I/O等多种功能 D) 智能手机已经广泛采用片上系统,平板电脑大多还使用传统的Intel处理器 5在嵌入式系统(如数码相机)中,获取数字图像的过程

大体分为四步,如下图所示,正确的处理步骤是: A) 取样、扫描、分色、量化 B) 分色、量化、扫描、取样 C) 扫描、分色、取样、量化 D) 扫描、量化、取样、分色 6数字音频的比特率(码率)指的是每秒钟的数据量,它与取样频率、量化位数、声道数目、使用的压缩编码方法等密切相关。假设数字音频的比特率为32kb/s,其量化位数为8位,单声道,采用压缩编码,压缩比为2,那么取样频率是: A) 8 kHz B) 12 kHz C) 16 kHz D) 20 kHz 7微波通信是利用频率为300MHz~300GHz电磁波进行的通信,它具有频带宽、容量大的特性,应用广泛。下面不属于微波通信应用的是: A) 手机通信 B) 卫星通信 C) 无线局域网(WiFi) D) 调频广播(FM) 8计算机局域网传输数据时,必须把数据组织成规定格式的"帧",每一数据帧由下图所示的5个部分组成,其中①、②、③分别是: A) 有效载荷、控制信息、校验信息 B) 控制信息、校验信息、有效载荷 C) 控制信息、有效载荷、校验信息 D) 校验信息、有效载荷、控制信息 9关于嵌入式处理器内核说法错误的是: A) PowerPC采用RISC指令集结构 B) MC68K采用是CISC指令集结构 C) ARM采用RISC指令集结构 D) MIPS采用哈佛结构

ARM嵌入式系统期末考试试卷及答案

《ARM嵌入式系统》期末考试试卷 一、填空题(请将答案填入题后括号中):共10小题,每小题2分,满分20分。 1、内核负责管理各个任务,或者为每个任务分配CPU时间,并且负责任务之间的(通信),内核的基本服务是(任务调度)。 2、嵌入式开发一般采用(宿主机/目标机方式)方式,其中宿主机一般是指(PC机或者台式机)。 3、哈佛体系结构数据空间和地址空间(分开),ARM920T采用(哈佛体系)的内核架构。 4. ARM7TDMI采用(3)级流水线结构,ARM920TDMI采用(5)级流水线。 5、一般而言,嵌入式系统的构架可以分为4个部分:处理器、(存储器)、输入/输出和软件,一般软件亦分为(操作系统)和应用软件两个主要部分。 6、根据嵌入式系统使用的微处理器,可以将嵌入式系统分为(嵌入式微控制器),嵌入式DSP,(嵌入式微处理器)以及片上系统。 7、操作系统是联接硬件与应用程序的系统程序,其基本功能有进程管理、(进程间通信)、(内存管理)、I/O资源管理。 8、从嵌入式操作系统特点可以将嵌入式操作系统分为实时操作系统和(分时操作系统),其中实时系统亦可分为(硬实时操作系统)和软实时系统。 9 .按操作系统的分类可知,Dos操作系统属于顺序执行操作系统,Unix操作系统属于(分时)操作系统,VxWorks属于(实时嵌入式)操作系统。 10、ARM7TDMI中,T表示支持16位Thumb指令集,D表示(在片可调试),M表示内嵌乘法器Multiplier,I表示(嵌入式ICE),支持在线断点和调试。 二、选择题(请将答案填入题后括号中):共10小题,每小题2分,满分20分。 1、下面哪种操作系统不属于商用操作系统。(B) A. windows xp B. Linux C. VxWorks D. WinCE 2. 下面哪点不是嵌入式操作系统的特点。(C) A. 内核精简 B. 专用性强 C. 功能强大 D. 高实时性 3. 下面哪种不属于嵌入式系统的调试方法。(D) A. 模拟调试 B. 软件调试 C. BDM/JTAG调试 D. 单独调试 4. 在嵌入式ARM处理器中,下面哪种中断方式优先级最高。(A) A. Reset B. 数据中止 C. FIQ D. IRQ 5. NAND FLASH和NOR FLASH的区别正确的是。(D) A. NOR的读速度比NAND稍慢一些 B. NAND的写入速度比NOR慢很多 C. NAND的擦除速度远比NOR的慢 D.大多数写入操作需要先进行擦除操作 6. 下面哪种嵌入式操作系统很少用在手机上。(D)

嵌入式Linux-期末考试试题(含答案)

( ) 1. 下列关于安装的说法中,不正确的是。 A.如果计算机的内存为128,则分区(交换分区)的大小通常设定为256M。 B.安装时分区的文件系统类型一般为2或3。 C.安装时要进行磁盘分区,如果选择“自动分区”,系统会自动保留硬盘上原来的数据。 除了可以从光盘安装外,还可以从网上下载的映像文件,从硬盘安装。 ( ) 2. 下列说法中,不正确的是。 A. 程序编写完后还需要用编译器编译。 B.可以通过将程序作为命令的输入来执行程序。 C. 程序中定义的函数不能有参数。 D. 是免费使用和自由传播的类操作系统,但它并不是没有版权。( ) 3. 为了利用调试程序,在编译时需要把调试信息加载到可执行文件中,则用编译源程序时,需要利用选项。 A. –O2 B. C. – D. ( ) 4. $’’;’$’ 上述命令执行的结果为。 A. B. $ C. ’’ D.

( ) 5. 下列关于网络编程的叙述中,错误的是。 A.一个完整的网络程序应该包含两个独立的程序,它们分别运行在客户端和服务器端。 B.相同条件下发送数据的速度要比快。 C. 当使用编程时,如果函数( )成功返回,表示系统发出的数据被通讯的对方准确接收到了。 D.端口号是16的地址码,端口号和地址构成一个插口()。( ) 6. 某程序在运行时需要向脚本传递参数,则为了得到所有命令行参数的个数,我们可以使用变量。 A. $@ B. $# C. $0 D. $! ( ) 7. 将当前目录下的文件移动到目录下的命令为。 A. B. C. / D. ( ) 8. 在下进行编程时,注释符是。 A. # B. C. /* */ D. 以上都不对 ( ) 9. 任何时候用户需要回到用户主目录时可以使用命令。 A. B. C. D. . ( ) 10. 文件1的访问权限为744,现要取消文件所有者

嵌入式期末试题

一、单项选择题(每小题2分,共30分)得分:分 1、文件间可以建立两种链接关系:软链接和硬链接,硬链接特点是( C ) A. 等同于文件复制操作 B. 类似于文件复制,但新的链接文件并不占用文件磁盘存储空间 C. 删除源文件,将使其他链接文件失效 D. 可以对目录文件名建立硬链接 2、如果Boot Loader、内核、启动参数以及其他的系统映像四部分在固态存储设备上分别独立存放,则其存储结构的分配顺序应当是:( D )。 A. 文件系统、内核、启动参数、Bootloader B. 启动参数、Bootloader、内核、文件系统 C. Bootloader、内核、启动参数、文件系统 D. Bootloader、启动参数、内核、文件系统 3、在大多数Linux发行版本中,以下哪个属于块设备( B ) A. 串行口 B. 硬盘 C. 虚拟终端 D. 打印机 4、下面哪个命令行可用来马上重新启动正在运行的Linux系统( D ) A. restart --delay=0 B. reboot -w C. halt -p D. shutdown -r now 5、在Linux系统,默认的shell是什么( A ) A.bash B.ash C.csh D.gnush 6、下面哪条命令可用来确保文件“myfile”存在( B ) A. cp myfile /dev/null B. touch myfile C. create myfile D. mkfile myfile 7、 LILO的配置文件是:( B ) A. /etc/conf B. /etc/lilo.conf C. /proc/kcore D. /usr/local/ 8、用“useradd jerry”命令添加一个用户,这个用户的主目录是什么( A ) A./home/jerry B./bin/jerry C./var/jerry D./etc/jerry 第1页,共6页

相关文档
最新文档