期末作业考核。
满分100分。
一、判断题(每题3分,共30分)
1.嵌入式系统中的软件系统主要由嵌入式操作系统和应用软件组成,其中嵌入式微处理器属于嵌入式软件系统的核心。答:错。
2.运行在智能手机或平板电脑中的android系统是一种嵌入式操作系统。答:对。
3. windriver公司所提供的软件开发包是tornado,基所使用的操作系统是windows。答:错。
4.基于arm的开发工具仅包括编辑器、编译器、汇编器、链接器和调试器。答:错。
5.在linux系统中,目录不能有硬连接,且硬连接不能跨越文件系统。答:对。
6. linux系统中卸载某个文件系统需要使用的命令是unload。答:错。
7.当arm处理器执行异常处理程序时,处理器处于arm状态。答:对。
8. arm处理器的快速中断模式下的影子寄存器数量最多。答:对。
9. extern在引用某个外来的符号时,如果本源文件设有实际引用该符号,该符号也会被加入到本源文件的符号表中。答:错。
10.在arm汇编语言中,基本指令必须从一行的行头开始。答:错。
二、简答题(每题8分,共40分)
1.试比较sram、dram和sdram有什么区别?
答:(1)sram:加电情况下不需要刷新,数据不会丢失,一般不是行列地址复用。存取速度较快,比较。
省电,但存1位信息需要4-6只晶体管,制造成本高。一般用做cache。
2)dram:需要不断刷新才能保存数据,行列地址复用。存1位信息只需要1只晶体管。一般用做主存。
3)sdram:数据的读写需要时钟来同步,多bank结构。(4)dram和sdram的容量较sram大,但读写速度不如sram。
5)ddr sdram: sdram在一个时钟周期内只传输一次数据,它是在时钟的上升期进行数据传输;而ddr内存则是一个时钟周期内传输两次数据,它能够在时钟的上升期和下降期各传输一次数据,因此称为双倍速率同步动态随机存储器。ddr内存可以在与sdram相同的总线频率下达到更高的数据传输率。
2.什么是映像文件?什么是映像文件的加载视图和执行视图?
答:映像文件(image)是一个计算机上的可执行文件,在执行之前被加载到计算机的存储器中。通常,一个映像文件中包含多个线程。
映像文件的加载视图是指映像文件开始执行前它的域和段在存储器中的位置视图,该视图根据映像文件装载到存储器时的地址描述每一个域和段。
映像文件的执行视图是指映像文件在执行时其每一个域和段在内存中的地址描述视图。
3.linux的开发工具有哪些?
答:1)程序编辑器:vi、emacs、gedit。
2)编译器套装:gcc3)链接器:ld4)汇编器:as5)调试器:gdb6)项目管理工具:make
4.什么是arm处理器的影子寄存器?
答:影子寄存器的引入是arm的一个特点(x86,powerpc都没有)。我们知道,arm有16个通用寄存器,这16个通用寄存器在指令中使用4个bit来标识,但是在不同的模式下,同样的4个bit指向不同的物理寄存器,这些不同的物理寄存器就被称之为影子寄存器。
不同的通用寄存器的影子寄存器个数也不相同,有的没有,有的只有1个,有的多达5个。要记住一点:所有的影子寄存器都是一个实际存在的物理寄存器。
arm核是一个非常紧凑的设计,影子寄存器的引入就是这种设计的表现。通过引入影子寄存器,指令可以重复使用相同的寄存器编码,但是在不同模式下,这些编码对应不同的物理寄存器。比如abort模式下的r13就同用户模式下的r13不同,虽然它们编码一样,但是实际上对应的是不同的物理寄存器(可以将cpsr的模式域当作片选)。
5.arm汇编的符号命名和书写规则有哪些?
答:1).符号命名可以使用大小写字母,数字和下划线。
2).符号是大小写字母敏感的。
3).除本地行号外,名称不能不能以数字开头。4).一个程序段中不能重名。5).符号在其作用范围内必须唯一。
6).符号不能够与系统内部变量或者系统预定义的符号同名。例如:a1 or r0、sp、cpsr、or .、or @、等等。
7).当程序中的符号与指令助记符或者指示符同名时,用双竖线将符号括起来。如||buffe_a||,这时双竖线并不是符号的组成部分。
8).在arm汇编语言程序中,所有符号必须在一行的最左边位置开始书写,即所谓的顶格。
书写,不允许包含空格或者制表符。
9).符号的字符序列中不能大小写字母相混杂。
10).如果符号使用了更大范围的字符集,则需要用单竖线将符号括起来,以便编译器处理。例如:|.text|和|image$$zi$$limit|
11).单竖线不属于符号,在两个单线之间不能适用单竖线、分号。
三、问答及应用题(每题15分,共30分)
1.linux的makefile有什么作用?例如,在某目录下某工程有三个源文件,分别是和其分别对应的头文件是和该工程的最终可执行文件名是mytest,此外,和还依赖于试写出该目录下最通用的makefile文件。
答:make工具通过一个称为makefile的文件来完成并自动维护编译工作。makefile需要按照某种语。
法进行编写,其中说明了如何编译各个源文件并连接生成可执行文件,并定义了源文件之间的依赖关系。当修改了其中某个源文件时,如果其他源文件依赖于该文件,则也要重新编译所有依赖该文件的源文件。
具体makefile文件之一如下:
#this is a makefile for make mytest
gcc–c
2.试编写一个arm汇编子程序summing,用于计算1000以内所有能被3整除的自然数之和。要求该子程序可被其他程序调用。答:
export summing
area mysum, code, readonlyentrysumming
ldr r0, =1000mov r1, #0mov r2, #3cmp r2, r0loop
addlo r1, r1, r2adds r2, r2, #3blo loopmov pc, lrend
嵌入式ARM嵌入式系统设计
摘要 本系统设计了基于arm系统的嵌入式硬件平台,其中主要介绍了系统母版的具体电路实现,其硬件电路已经通过了信号完整性分析。中国 网 关键词 arm 嵌入式系统 中图分类号 tp368.1 文献标识码 a 文章编号 1007 9416 2012 12 0104 01 1 序言 本系统是设计一款基于a...
嵌入式系统
关于嵌入式系统 献给热爱此道的初学者们前言。网上看到众多网友都问了关于嵌入式系统方面的很多问题,很多都可在这里找到答案,希望我的这篇文章能给他们以启发。也请大家不要轻易 一 嵌入式系统的概念。着重理解 嵌入 的概念。主要从三个方面上来理解。1 从硬件上,将基于cpu的处围器件,整合到cpu芯片内部,...
嵌入式系统
期末作业考核。满分100分。一 判断题 每题3分,共30分 1.以32位risc嵌入式处理器加嵌入式操作系统为标志的嵌入式系统为其发展的第三个阶段。对2.嵌入式系统的硬件一般包括嵌入式微处理器 外围电路和嵌入式外围设备等组成。对3.codewarrior具有很多功能,但不具备对文本文件进行比较的功能...