嵌入式Linux试题及答案_第1页
嵌入式Linux试题及答案_第2页
嵌入式Linux试题及答案_第3页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、引导加载程序 、 Linux 内核嵌入式处理器 。般把嵌入式处理器分成 4 类,即 微处理器 、 微控制器数字信号处理器 、和嵌入式片上系统。嵌入式开发期中试卷试卷适用范围: 20XX级计算机科学与技术(本) 1、2 班一、填空题(每空 1 分,共 46分)1填空题( 1)嵌入式系统是以应用为中心、以计算机技术 为基础,软、硬件可裁剪,适应于应用系统对功能、可靠性、成本、体积、功耗等方面有特殊要求的专用计算机系统。( 2)嵌入到对象体系中的专用计算机系统。嵌入性 、 专用性 与 计算机系统 是嵌入式系统的三个基本要素。 对象系统 是指嵌入式系统所嵌入的宿主系统。(3)嵌入式系统按形态可分为设备

2、级 (工控机) 、板级(单板、模块)、 芯片级(MCU 、 SOC)。( 4)嵌入式系统由 硬件 和 软件 两大部分组成,硬件一般由高性能微处理器和 外围接口电路组成, 软件一般由操作系统和应用程序构成, 软件和硬件之间由所谓的中间层 (BSP 层,板级支持包)连接。( 5)嵌入式系统从组织层次上看, 嵌入式系统一般由 硬件层 、 中间层 、 软 件层 和功能层组成。( 6)在专用的嵌入式板子上面运行 GNU/Linux 系统已经变得越来越流行。一个嵌入式Linux 系统从软件的角度看通常可以分为四个层次: 文件系统 、用户应用程序。(7)嵌入式系统硬件的核心部件是各种类型的(8)嵌入式系统的

3、核心部件是嵌入式处理器,(9)ARM 公司首创了chipless 的生产模式,专门从事基于 RISC 技术芯片的设计开发,公司本身并不生产芯片,而是设计出高效的 IP 内核,授权给半导体公司使用。(10)ARM7TDMI 中, T 表示 支持 Thump 指令集 。D 表示支持片上调试 (Debug)。 M 表示内嵌硬件乘法器( Multiplier )。 I 表示支持片上断点和调试点。(11)ARM9 系列微处理器包含ARM920T 、ARM922T 和 ARM940T 三种类型,以适用于不同的应用场合。( 12) ARM 微处理器有两种工作状态:Thump 状态 、 ARM 状态 。( 1

4、3)通用寄存器分为三类:未分组寄存器、分组寄存器 、 程序计数器(PC)。( 14)异常 是由内 /外部源引起的需要处理器干预的一个事件。(15)精简指令集计算机 RISC( Reduced Instruction Set Computer )和复杂指令集计算机 CISC 是当前 CPU 的两种架构。( 16)ARM 微处理器的在较新的体系结构中支持两种指令集:ARM 指令集 、Thump 指令集 。( 17)MMU 的作用有两个: 将虚拟地址转化为物理地址 、 对存储器访问的 控制 。习题21填空题( 1)交叉开发环境 是由开发主机和目标板两套计算机系统构成的。(2) OK2440-II 开

5、发板采用核心板 + 底板 的模式,核心板为 6 层,底板为 2 层。(3)交叉编译的主要特征是某机器中执行的程序代码不是在本机编译生成,而是由另 一台机器编译生成的,一般把前者称为 目标机 ,后者称为 宿主机 。( 4 ) 基 于 ARM 平 台 的 交 叉 编 译 工 具 链 主 要 有 :arm-linux-* 和arm-elf-* 。(5)arm-linux-* 是针对 linux 程序的开发环境的(6)arm-elf-* 是针对uCLinux 程序 的开发环境(7)20XX 年 11 月,清华大学计算机系的博士后陈渝 提出了用软件实现嵌入式开发板硬件模拟器的想法, 在模拟器上可以运行各

6、种操作系统, 这样就可以在没有开发板的情 况下学习和研究操作系统。于是借鉴了 ARMulator 的实现,提出了 SkyEye 项目。( 8)SkyEye 是一个 指令级 模拟器, 可以模拟多种嵌入式开发板, 可支持多种 CPU 指令集,在 SkyEye 上运行的操作系统意识不到它是在一个虚拟的环境中运行,而且开发人 员可以通过 SkyEye 调试操作系统和系统软件。(9) SkyEye 模拟的硬件配置和模拟执行行为由配置文件skyeye.conf 中的选项确定。( 10) skyeye.conf 的选项主要由两种组成:单参数选项行 、 多参数选项行 。( 11) TFTP 是 TCP/IP

7、协议族中的一个用来在客户机与服务器之间进行文件传输 的简单协议,主要基于 UDP 协议来实现。(12)NFS 是由 Sun 开发并发展起来的文件系统,用于在不同机器,不同操作系 统之间通过网络互相分享各自的文件。习题31填空题( 1)目前,在嵌入式系统开发中,使用的主要编程语言是C 和 汇编 。(2)从程序员的角度看,函数库 实际上就是一些头文件( .h)和库文件( .so 或.a)的集合。( 3) Linux 下大多数函数默认将头文件放到/usr/include 目录下,而库文件放到/usr/lib 目录下。( 4) 静态库 也叫做档案( archive),可以认为是一些目标代码的集合,静态

8、库的 文件名按惯例以“ .a”作为文件后缀名。( 5) 共享库 是在程序启动时被加载到执行程序中的,并且可以被多个执行程序共 享使用。( 6) GCC( GNU Compiler Collection )是 一组编译工具 的总称,主要的任务是 预处理和编译,并且提供了与编译器紧密相关的运行库( libgcc_s.so、 libstdc+.so 等)的支 持。(7) Makefile 文件规则包含两个部分:依赖关系 和 生成目标的方法 。( 8) 编程库 是指始终可以被多个 Linux 软件项目重复使用的代码集。( 9)在汇编语言中,用 助记符 代替操作码,用地址符号代替地址码。(10)PC机上

9、,对于 x86 系列的处理器,有 AT&T和 Inter两种语法格式。( 11 )目前常用的 ARM 编译环境有 2 种: ARM ASM 、 GNU ARM ASM 。( 12) 伪操作 是 ARM 汇编语言源程序里的一些特殊助记符, 其作用主要是为完 成汇编程序做各种准备工作,在源程序汇编期间由 汇编程序 处理。( 13) 宏指令 是由用户按照宏定义格式编写的一段程序,其中语句可以是指 令、伪操作、伪指令,甚至是已定义的宏指令。( 14)用户可以通过 AREA 伪操作来定义一个段。( 15)汇编源程序的缺省入口是start标号,用户也可以在链接脚本文件中用ENTRY 标志指明其它入

10、口点。(16)为了使 C 语言程序和汇编程序之间能够互相调用,必须为子程序间的调用制定规 则,在 ARM 处理器中,这个规则被称为 ATPCS 规则 。(17)一般地,当参数个数不超过 4个时,使用 R0-R3 这 4个寄存器来传递参数。( 18)在 ARM 处理器平台上的底层驱动开发,通常会有两种方式:一种是脱离操作系 统的裸机驱动设计方法,这与以前在 8 位机和 16 位机上的常用开发方式类同。另一种就是 基于 操作系统的底层驱动设计方法 。( 19) asm用来声明一个内联汇编表达式,所以任何一个内联汇编表达式都是以它开头的,是必不可少的。( 20)在 ARM 汇编语言程序中,子程序的调

11、用一般是通过 BL 指令实现。( 21) ELF 格式文件有 3 类:可重定位的目标文件、 可执行文件 、共享库。(22)可从 两个视 角了解 ELF 文件格式:程 序链接的 视角、 程序执 行的 视 角。( 23)每一个链接过程都由 链接脚本 控制。二、简答题(共 54 分)13)简述 ARM指令集和 Thumb指令集各自的特点。ARM指令集和 Thumb指令集具有以下共同点: 较多的寄存器,可以用于多种用途。 对存储器的访问只能通过 Load/Store 指令。项目ARM指令Thumb指令指令工作标志CPSR的 T 位=0CPSR的 T 位=1操作数寻址 方式大多数指令为 3地址大多数指令

12、为 2 地址指令长度32位16位内核指令58条30条条件执行大多数指令只有分支指令数据处理指令访问桶形移位器 和 ALU独立的桶形移位器和ALU指令寄存器使用15 个通用寄存器 +PC8 个通用低寄存器 +7 个高寄存器 +PC程序状态寄 存器特权模式下可读可写不能直接访问异常处理能够全盘处理不能处理(14)简述嵌入式操作系统的种类与特点。uC/OS-II :可应用于 8位, 16、32 位单片机或 DSPwindowsCE :微软开发的一个开放的,可升级的 32 位嵌入式系 统,是基于掌上型电脑类的电子设备操作系统VxWorks:专门为实时嵌入式系统设计开发的Linux :类似于 UNIX

13、的操作系统Palm OS :是一个 32 位的嵌入式操作系统( 15)列出一些知名的嵌入式 Linux 版本。ETLinux 设计用于在小型工业计算机,尤其是 PC/104 模块上运行的 Linux 的完全分发版。LEM 运行在 386 上的小型( <8 MB)多用户、网络 Linux 版本。LOAF “Linux On A Floppy ”分发版 , 运行在 386 上。uClinux 在没有 MMU 的系统上运行的 Linux 。目前支持Motorola 68K 、MCF5206和 MCF5207 ColdFire 微处理器。uLinux 在 386 上运行的 tiny Linux

14、分发版。ThinLinux 面向专用的照相机服务器、 X-10 控制器、 MP3 播放器和其它类似的嵌入式应用的最小化的 Linux 分发版16)简述嵌入式系统的结构。1嵌入式系统的硬件架构2嵌入式系统的软件结构图 1.2 嵌入式系统硬件结构图 1.3 嵌入式系统软件结构(17)简述嵌入式系统开发流程、开发要点。(1)系统需求分析。(2)体系结构设计。(3)硬件 / 软件协同设计。基于体系结构,对系统的软件、硬件 进行详细设计。(4)系统集成。(5)系统测试。1)通过模拟器进行嵌入式学习,有哪些优点?1. 学习的成本降低,使开发人员比较容易进入嵌入式软件开发的广阔领域2. 可以模拟多种嵌入式开

15、发板,可以支持多种 CPU指令集3. 更加方便开发人员调试操作系统和系统软件 (2)交叉开发环境主要由哪些工具组成? 交叉调试环境包括宿主机端的交叉调试器和目标机端的调试代 理。(3)简述采用交叉编译的主要原因? 采用交叉编译的主要原因有两个: 首先,在嵌入式系统开发的起始阶 段,目标平台尚未建立,因此需要做交叉编译,来生成所需的BootLoader 以及操作系统内核;其次,当目标平台能够启动之后, 由于目标机资源的限制, 不能提供足够的资源供编译过程使用, 因而 只好将编译工程转移到高性能的宿主机中进行( 1)简述 GCC软件包里包含哪些工具,他们的作用是什么?1. 源代码预处理程序 cpp

16、 cpp02. C 编译器 cc, ccl cclplus gcc3. C+编译器 c+,cclplus g+4.库文件(2)简述编译 C语言源程序时的基本流程。源程序 预处理器 - 编译器 汇编器 链接器 - 可执行程序(6)使用编程库的主要优点?1. 可以简化编程,实现代码重复使用,进而减小应用程序的大小2. 可以直接使用比较稳定的代码(9)简述汇编分类。X86 下的 AT&T和 INTERARM系列的 ARM ASM和 GNU ARM ASM( 11)在 C 中嵌入汇编的格式?asm ( “汇编语句”:输出寄存器:输入寄存器:会被修改的寄存器) ;(12)简述 C 语言与汇编语言混合编程应遵守的规则。ATPCS规定

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论