文档库 最新最全的文档下载
当前位置:文档库 › 嵌入式Linux系统开发教程很完整的习题答案

嵌入式Linux系统开发教程很完整的习题答案

嵌入式Linux系统开发教程很完整的习题答案
嵌入式Linux系统开发教程很完整的习题答案

嵌入式Linux系统开发教程很完整的习题答案

参考答案

第一章

一、填空题。

1、嵌入式系统主要融合了计算机软硬件技术、通信技术和微电子技术,它是将计算机直接嵌入到应用系统中,利用计算机的高速处理能力以实现某些特定的功能。

2、目前国内对嵌入式系统普遍认同的定义是:以应用为中心、以计算机技术为基础、软硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。

3、嵌入式系统一般由嵌入式计算机和执行部件组成,其中嵌入式计算机主要由四个部分组成,它们分别是:硬件层、中间层、系统软件层以及应用软件层。

4、嵌入式处理器目前主要有ARM、MIPS、Power PC、68K等,其中arm处理器有三大特点:体积小、低功耗、的成本和高性能,16/32位双指令集,全球合作伙伴众多。

5、常见的嵌入式操作系统有:Linux、Vxworks、WinCE、Palm、uc/OS-II和eCOS。

6、嵌入式系统开发的一般流程主要包括系统需求分析、体系结构设计、软硬件及机械系统设计、系统集成、系统测试,最后得到最终产品。

二、选择题

1、嵌入式系统中硬件层主要包含了嵌入式系统重要的硬件设备:、存储器(SDRAM、ROM等)、设备I/O接口等。(A)

A、嵌入式处理器

B、嵌入式控制器

C、单片机

D、集成芯片

2、20世纪90年代以后,随着系统应用对实时性要求的提高,系统软件规模不断上升,实时核逐渐发展为,并作为一种软件平台逐步成为目前国际嵌入式系统的主流。(D)

A、分时多任务操作系统

B、多任务操作系统

C、实时操作系统

D、实时多任务操作系统

3、由于其高可靠性,在美国的火星表面登陆的火星探测器上也使用的嵌入式操作系统是。(B)

A、Palm

B、VxWorks

C、Linux

D、WinCE

[在此处键入]

4、嵌入式系统设计过程中一般需要考虑的因素不包括:(D)

A、性能

B、功耗

C、价格

D、大小

5、在嵌入式系统中比较流行的主流程序有:(A)

A、Angel

B、Blob

C、Red Boot

D、U-Boot

三、叙述题

1、举例说明身边常用的嵌入式系统。

生活中最常见的嵌入式系统恐怕要数智能手机了,包括Symbian、Windows Mobile、Android等手机嵌入式系统。还有,如路由器也是一个典型的嵌入式系统。

2、如何理解嵌入式系统,谈谈自己的理解。

嵌入式系统是指:以应用为中心、以计算机技术为基础、软硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。他具有如下特点: 1、嵌入式系统是面向产品、面向用户、面向应用的。2、嵌入式系统是一个技术密集、集成度高、需要不断创新的集成系统。3、嵌入式系统必须根据应用场合对软硬件进行必要的裁剪已实现需要的功能。

3、简述嵌入式系统的开发方法有哪几种。

目前,嵌入式系统的开发有模拟开发调试、嵌入式在线仿真和远程调

试等几种方法。

4、结合当前嵌入式系统的发展,想象一下嵌入式系统的应用前景。

嵌入式系统技术有着非常广泛的应用前景,其领域包括:工业控制领域、信息家电领域、机器人领域、POS网络及电子商务领域、家庭智能管理系统、交通管理领域、环境工程与自然领域等。

第二章

一、填空题。

1、Linux具有UNIX的所有特性并且具有自己独特的魅力,主要表现在:开放性、多用户、多任务、友好的用户界面、设备独立性、丰富的网络功能、文件传输、远程访问、可靠的安全性、良好的可移植性、X Window系统、内存保护模式。

2、Linux一般包括四个主要部分:内核(Kernel)、命令解释层(Shell或其他操作环境)、文件结构(File Structure)和实用工具。

3、目前几乎所有的Linux发行版本中都包含了Gnome和KDE两种图形操作环境。

4、在当前目录下建立目录,应使用命令:mkdir linux;查看当前路径应使用命令:pwd;chmod 765 linux.tar.gz的作用是:使linux.tar.gz文件的拥有者权限、文件组权限和其他用户拥有相应的权限。

5、Linux内核主要由:进程调度,内存管理,虚拟文件系统,网络接口,进程间通信五个子系统组成。

二、选择题

1、下列(D)系列处理器是Ubuntu不支持的。

A、ARM

B、AMD

C、X86

D、51单片机

2、启动shell环境时,屏幕上显示“[arm@www home]$”,其中的arm的意义是(B)。

A、arm架构

B、用户名

C、文件夹

D、路径

3、使用ls命令时,如果想对文件名中的不可显示字符用八进制逃逸字符显示,则应该选用的参数是(A)。

A、-b

B、-a

C、-l

D、-R

4、解压文件linux.tar.gz可使用命令(C)。

A、tar jxvf linux.tar.gz

B、tar jxvf linux.tar.gz

C、tar zxvf linux.tar.gz

D、tar czvf linux.tar.gz

5、下列不属于Linux用的文件系统是(D)。

A、ext2

B、ext3

C、nfs

D、ntfs

三、叙述题

1、简述linux与windows的主要异同。

Windows操作系统是在个人计算机上发展起来的,在许多方面受到

个人计算机硬件条件的限制,这些操作系统必须不断地升级才能跟上个

人计算机硬件的进步;而Linux操作系统却是以另外一种形式发展起来的,Linux是UNIX操作系统用于个人计算机上的一个版本,UNIX操作系

统已经在大型机和小型机上使用了几十年,直到现在仍然是工作站操作

系统的首选平台。

Linux给个人计算机带来了能够与UNIX系统相比的速度、效率和灵活性,使个人计算机所具有的潜力得到了充分发挥。Linux与Windows工作方式存在一些根本的区别,这些区别只有在用户对两者都很熟悉之后才能体会到,但它们却是Linux思想的核心。

2、目前主流的图形界面环境有哪些?它们各有什么有缺点?

目前主流的图形界面环境有KDE和GNOME两种图形环境。

KDE与GNOME项目拥有相同的目标,就是为Linux开发一套高价值的图形操作环境,两者都采用GPL公约发行,不同之处在于KDE基于双重授权的Qt,而GNOME采用遵循 GPL的GTK库开发—后者拥有更广泛的支持。不同的基础决定两者不同的形态:KDE包含大量的应用软件、项目规模庞大,因为没有太多的第三方开发者为 KDE开发重量级软件;由于自带软件众多,KDE比GNOME丰富多彩,加上使用习惯接近Windows,会更容易上手一些。但KDE 的毛病在于运行速度相对较慢,且部分程序容易崩溃(当然整个KDE崩溃的情况极少出现)。GNOME项目专注于桌面环境本身,由于软件较少、运行速度快,且稳定性相当出色,完全遵循GPL公约的属性让它赢得重量级厂商的支持。从当前的情况来看,GNOME已经成为Novell、RedHat企业发行版的默认桌面,更偏向于商务领域;而丰富多彩的KDE有朝向家用和娱乐方向发展的趋势,它比GNOME显然更有趣味性一些。

3、在linux中如何使用mount命令挂载U盘?

首先使用fdisk -l查看一下磁盘分区情况:

然后使用命令:mount –t vfat /dev/sdb1 /mnt/USB

4、如何设置linux操作系统的网络参数?

使用类似的命令:

ifconfig eth0:192.168.1.15 netmask 255.255.255.0

其中192.168.1.15为ip,255.255.255.0为子网掩码。

5、简要分析linux内核的各个组成部分。

Linux内核主要由五个子系统组成:进程调度,内存管理,虚拟文件系统,网络接口,进程间通信。其中,进程调度(SCHED)控制进程对CPU的访问;内存管理(MM)允许多个进程安全的共享主内存区域;虚拟文件系统(VirtualFileSystem,VFS)隐藏了各种硬件的具体细节,为所有的设备提供了统一的接口,VFS提供了多达数十种不同的文件系统;进程间通讯(IPC) 支持进程间各种通信机制。

第三章

一、填空题。

1、ARM9系列微处理器在高性能和低功耗方面提供最佳的性能:它具有3级整数流水线,指令执行效率更高;提供1.1MIPS/MHz的哈佛总线结构;支持

32位ARM指令集和16位Thumb指令集;支持32位的高速AMBA总线接口。

2、ARM芯片的内核一般包括以下几个单元:ARM9TDMI32RISC处理器、数据缓存器(Data Cache)、指令缓存(Instruction Cache)、指令存储管理单元(Instruction MMU)、数据存储管理单元(Data MMU)、写缓冲(Write Buffer)和回写存储单元(Write Back PA TAG RAM)。

3、ARM处理器共有37个寄存器,其中31为通用寄存器,6个状态寄存器,这些寄存器都是32位。

4、ARM系统中寻址方式主要有立即寻址、寄存器寻址、寄存器间接寻址、基址变址寻址、多寄存器寻址、相对寻址和堆栈寻址。

5、ARM微处理器的指令集可以分为以下六大类:跳转指令、数据处理指令、程序状态寄存器(PSR)处理指令、加载/存储(Load/Store)指令、协处理器指令和异常中断产生指令。

二、选择题

1.指令ADD R0,R0,#1第三个操作数得寻址方式是(A)

A.立即寻址 B. 寄存器寻址 C. 寄存器间接寻址 D. 基址变址寻址

2.指令LER R3,[R4]第二个操作数的寻址方式是(C)

A. 立即寻址

B. 寄存器寻址

C. 寄存器间接寻址

D. 基址变址寻址

3.LDR R0,[R1,#4] 第二个操作数的寻址方式是(D)

A. 立即寻址

B. 寄存器寻址

C. 寄存器间接寻址

D. 基址变址寻址

4.假设R0和R1寄存器中的值分别为8和6,执行指令:LDR R0,[R1,#8]!,则寄存器R0和R1中的值分别为(B)

A. 8,6

B. 14,6

C. 14,14

D. 16,14

5.栈是一种数据结构,本质上是内存中一段连续的地址,对其最常见的操作为“压栈”(PUSH)和“出栈”(POP),以临时保存数据。其出入栈规则是(B)。

A. 先进先出

B. 先进后出

C. 只进不出

D. 只出不进

三、叙述题

1、ARM处理器的运行模式有哪几种,各有什么特点?

ARM微处理器的运行模式有7种,分别为:

用户模式(User,usr):正常程序执行时,ARM处理器所处的状态。

快速中断模式(FIQ,fiq):用于快速数据传输和通道处理。

外部中断模式(IRQ,irq):用于通常的中断处理。

特权模式(Supervisor,sve):供操作系统使用的一种保护模式。

数据访问中止模式(Abort,abt):当数据或指令预取终止时进入该

模式,用于虚拟存储及存储保护。

未定义指令终止模式(Undefined,und):用于支持硬件协处理器软

件仿真。

系统模式(System,sys):用于运行特权级的操作系统任务。

2、ARM存储器的组织主要有哪些类型,各有什么特点?

ARM储存器的组织最要有2大类型,分别为小端格式和大端格式,也称为小端次序(Little endian)和大端次序(Big endian)的字节序(byte order)。两种储存类的区别在于一个32位的数据存放到储存器中的时候,到底是高位字节放在高地址还是低地址的区别。

3、ARM微处理器选型时应注意:

1、ARM微处理器内核的选择

2、系统的工作频率

3、芯片内存储器的容量

4、片内外围电路的选择

第四章0

一、填空题。

1、在ARM/Thumb汇编语言程序中,程序是以程序段的形式呈现的。程序段是具有特有名称的相对独立的指令或数据序号。程序段有两大类型代码段、数据段。

2、基于linux下GCC汇编语言,代码表号必须在一行的顶端,后面要加上:,注释的内容可以在前面加上@。

3、在ARM的汇编程序中,伪指令种类繁多,可以细分为以下几种伪指令:符号定义伪指令(Symbol Definition)、数据定义伪指令(Data Definition)、汇编控制伪指令(Assembly Control)、宏指令

4、linux下的嵌入式程序开发,主要需要的代码编辑器,如vi和gedit,另外还需要编译器gcc、调试器gdb以及项目管理器make。

5、Vi编辑器基本上有三种基本状态,分别是:命令模式(command mode)、插入模式(insert mode)和底行模式(last line mode)。

6、使用gcc编译文件生成可执行文件要经历四个相互关联的步骤:预处理(也称预编译,Preprocessing)、编译(Compilation)、汇编(Assembly)和连接(Linking)。

二、选择题

1、1.假如使用伪指令定义一个局部的数据量,变量名为temp,然后给其赋值为8,汇编代码为(A)

A. LCLA temp;temp SETA 0x08;

B. LCLA temp;temp SETL 0x08;

C. GBLA temp;temp SETA 0x08;

D. GBLA temp;temp SETL 0x08;

2、在vi处于命令行模式时,如果需要对文本进行修改,欲在光标所在位置的下一个位置开始输入文字,则(B)

A、按下字母“i”进入插入模式

B、按下字母“a”进入插入模式

C、按下字母“o”进入插入模式

D、按下字母“n”进入插入模式

3、当前vi处于插入模式,先放弃对文本的修改,即不保存退出vi,则(C)。

A、使用“:q!”命令

B、使用“:wq!”命令

C、先按下“ESC”后,再使用“:q!”命令

D、先按“ESC”后,再使用“:wq!”命令

4、经过汇编之后,生成的目标文件的后缀名为(C)。

A、.c

B、.s

C、.o

D、.exe

5、对代码文件code.c进行调试的命令为(A)。

A、$gcc –g code.c –o code

B、$gcc code.c –o code

C、$gcc –g code.c code

D、$gcc –g code

三、叙述题

1、汇编语言和C的混合编程通常有以下几种方式,各有什么特点?

汇编语言与C的混合编程通常有以下几种方式:在C代码中嵌入汇编指令;在汇编程序和C的程序之间进行变量的互访;汇编程序、C程序间的相互调用。

2、如何使用调试器gdb进行代码调试,具体的调试方法有哪些?

查看文件、设置和查看断点、运行代码、查看变量值、单步运行、恢复程序运行。

3、项目管理器的作用主要是什么?

make就是实现这样的功能:它读入一个文件,叫makefile,这个文件不仅决定了源文件之间的依赖关系,而且还决定了源文件什么时候该编译什么时候不应该编译。

第五章

一、填空题。

1、SMDK2440平台的开发板采用的处理器是S3C2440,其主频一般为400M。

2、windows软件环境的设置一般包括以下几部分:超级终端的设置、DNW设置、GIVEIO驱动的设置和USB驱动

3、在windows系统上建立基于linux嵌入式开发环境一般有三种方案可以选择分别是Windows系统下安装虚拟机Vmware、Windows+Linux双系统安装、基于Windows操作系统下的Cygwin

4、UBUNTU的网络设置可以采用命令行方式、也可以采用图形界面操作方式来配置。

5、开发板硬件平台是基于三星S3C2440的SMDK2440平台的目标板,使用的刻录软件为SJF2440。

二、选择题

1、为了通过PC的串口和开发板进行交互,需要使用(C)。

A、USB设置

B、同步

C、超级终端

D、网络连接

2、在嵌入式linux的开发中,能实现上传下载文件、刻录文件、运行映像等功能工具是(D)。

A、DNS

B、FTP

C、Telnet

D、DNW

3、由普通用户账户转为管理员账户登录,使用的命令为(D)。

A、$sudo root

B、$sudo administrator

C、$su administrator

D、$su root

4、安装FTP服务器时,在终端输入的命令为(B)。

A、$apt-get install vsftpd

B、$sudo apt-get install vsftpd

C、$apt-get install ftp

D、$sudo apt-get install ftp

5、安装Telnet服务时,在终端输入的命令为(A)。

A、$sudo apt-get install xinetd telnet d

B、$apt-get install xinetd telnetd

C、$apt-get install telnetd

D、$sudo apt-get install telnetd

三、叙述题

1、建立基于Linux嵌入式开发环境一般有三种方案可以选择:一是在Windows 系统下安装虚拟机Vmware。二是Windows系统和Linux系统同时安装。三是基于Windows操作系统下的Cygwin。

2、参看教材5.3。

3、参看教材5.4。

第六章

一、填空题。()

1、交叉开发工具链就是为了编译、链接、处理和调试跨平台体系结构的程序代码。每次执行工具链软件,通过带有不同的参数,可以实现编译、链接、处理、调试等不同的功能。

2、linux经常使用的工具链软件有Binutils、Gcc、Glibc和Gdb。

3、分布构建交叉编译工具链的制作过程需要以下几步:编译binutils、编译辅助gcc编译器、编译glibc库、重新编译完整的gcc。

4、使用crosstool构建交叉编译工具链的制作过程需要以下几步:准备工作、建立脚本文件、建立配置文件、执行脚本文件和编译gdb调试器。

5、使用crosstool构建交叉编译工具链的制作过程中需要的配置文件,其主要作用是定义配置文件、定义生成编译工具链的名称、定义编译选项等。

二、选择题

1. (B) 是二进制程序处理工具,包括连接器,汇编器等目标程序处理的工具。

A. Gcc

B. Binutils

C. Glibc

D. Gdb

2.构建交叉编译器的第一个步骤是(D)。

A. 下载工具

B. 编译所需文件

C.实现平台连接

D. 确定目标平台

3、分析以下代码

#export PRJROOT=/home/arm/armlinux

#export TARGET=arm-linux

#export PREFIX=$PRJROOT/$TARGET

其中,变量PREFIX代表的路径为(B)。

A、/home/arm/armlinux

B、/home/arm/armlinux/arm-linux

C、/home/arm/arm-linux

D、/home/arm/arm-linux/armlinux

4. Binutils是gnu工具之一,他包括连接器、汇编器和其他用于目标文件和档案的工具,特使二进制代码的处理维护工具。其中包括(A)命令,他是把一些目标和归档文件结合在一起,重定位数据,并连接符号引用。

A. ld

B. gprof

C. arc

D. as

5.分布构建交叉编译链的过程有两次变异gcc,其中第二次进行编译的作用是(获得glibc库的支持)

A.获得newlib库的支持

B. 获得glibe库的支持

C. 获得uClibe库的支持

D. 获得c库的支持

三、叙述题

1、构建交叉工具链有那几种方法?

通常构建交叉工具链有三种方法:

方法一、分步编译和安装交叉编译工具链所需要的库和源代码,最终生成交叉编译工具链。方法二、通过Crosstool脚本工具来实现一次编译生成交叉编译工具链,该方法相对于方法一要简单许多,并且出错的机会也非常少,建议大多数情况下使用该方法构建交叉编译工具链;方法三、直接通过网上下载已经制作好的交叉编译工具链。

第七章

一、填空题。

1、Bootloader,亦称引导加载程序,是系统加电后运行的第一段软件代码。

2、一般Bootloader包含两种不同的操作模式:启动加载模式(Bootloading)和下载模式(Downloading)。

3、Bootloader的主要功能是引导操作系统启动,它的启动方式有网络启动、磁盘启动和Flash启动三种。

4、Vivi运行的第一阶段主要完成以下工作:屏蔽所有中断、设置CPU的速度和时钟频率、RAM初始化、初始化LED和关闭CPU内部指令/数据cache。

二、选择题

1、在Bootloader的启动方式中,Flash启动方式通常有两种,一种是可以直接从Flash启动,另一种时可以将压缩的内存映像文件从Flash中复制、解压到 C ,再从中启动。

A、ROM

B、SDRAM

C、RAM

D、Flash

2、在各种Bootloader中, B 是以PPCBoot和ARMBoot为基础的通用加载程序,并且在ARM、PowerPC以及MIPS等多种平台上运行。

A、Vivi

B、U-boot

C、RedBoot

D、s-hboot

3、在编译Vivi之前将Vivi里所有的“*.o”和“*.o.flag”文件删除,以确保文件编译时没有错误或者警告发生,使用的命令格式为(D)。

A、make distclean

B、make clean

C、make menuconfig

D、make config

4、编译Vivi时,如果编译成功,在/vivi里面会生成三个vivi文件,其中不包括文件(D)。

A、vivi

B、vivi.map

C、vivi-elf

D、vivi.exe

5、把二进制文件载入Flash或RAM使用的命令是(A)。

A、load

B、part

C、boot

D、bon

三、叙述题

1、简述Bootloader的主要功能。

BootLoader,亦称引导加载程序,是系统加电后运行的第一段软件代码。它是整个系统执行的第一步,所以它的地位在整个嵌入式软件系统中是非常重要的。

2、Vivi作为一种Bootloader,其运行过程分成两个阶段,第一阶段的代码在Vivi/arch/s3c2440/head.s中定义,大小不超过10 KB,它包括从系统上电后在0x00000000地址开始执行的部分。这部分代码运行在Flash中,它包括对S3C2440的一些寄存器、时钟等的初始化,然后跳转到第二阶段执行;第二阶段的代码在Vivi\init\main.c中,主要进行一些开发板初始化、内存映射和内存管理单元初始化等工作,最后会跳转到boot_or_Vivi()函数中,接收命令并进行处理。需要注意的是在Flash中执行完内存映射后,会将Vivi 代码拷贝到SDRAM中执行。

3、U-Boot则支持大多CPU,可以烧写EXT2、JFFS2文件系统映象,支持串口下载、网络下载,并提供了大量的命令。相对于Vivi,它的使用更复杂,但是可以用来更方便地调试程序;

Vivi是Mizi公司针对SAMSUNG的ARM架构CPU专门设计的,基本上可以直接使用,命令简单方便。不过其初始版本只支持串口下载,速度较慢。在网上出现了各种改进版本:支持网络功能、USB 功能、烧写YAFFS文件系统映象等。

第八章

一、填空题。

1、ARM-Linux内核的配置系统由三个部分组成,它们分别是Makefile、配置文件和配置工具。

2、配置工具一般包括配置命令解释器和配置用户界面,前者主要作用是对配置脚本中使用的配置命令进行解释;而后者则是提供基于字符界面、基于Ncurses图形界面以及基于X Window图形界面的用户配置界面。

3、Makefile文件主要包含注释、编译目标定义和适配段。

4、Linux内核常用的配置命令有make oldconfig、make config、make menuconfig和make xconfig。其中以字符界面配置的命令是make config。

5、内核编译结束后,会在“/arch/arm/boot/”目录下面和根目录下面生成一个名为zImage的内核镜像文件。

二、选择题

1.linux内核中的makefile以及与makefile直接相关的文件不包括(C)。

A. Rules.make

B. 子目录下的Makefile

C. 后缀名为.in

D. 后缀名为.config

2.用户通过make config 配置后,产生了后缀名为(A)。

A. config

B. in

C. config.in

D. in.config

3.rules.make文件定义了许多变量,最重要的是那些编译、连接列表变量,但不包括(D)。

A. MX_OBJX

B. O_TARGET

C. O_OBJS

D. O_OBJL

4.在内核配置过程中,如果需要设置networking support这个选项,进入的菜单项是(D)。

A.General setup

B.File system

C. Boot options

D. Device derives

5.在linux系统中,我们既需要标记变量的符号,有需要变量的物理地址,两者同时需要的时候可以采用符号表的方式,其对应的文件为(B)。

A. vmlinux

B. System.map

C. vmlinuz

D. initrd-x.x.x.img

三、叙述题

1、Linux内核各个部分与内核源码的各个目录都是对应起来的,比如有关驱动的内容,内核中就都组织到“drive”这个目录中去,有关网络的代码都集中组织到“net”中。当然,这里有的目录是包含多个部分的内容。具体各个

目录的内容组成如下:

arch:arch目录包括了所有和体系结构相关的核心代码。include:include 目录包括编译核心所需要的大部分头文件,例如与平台无关的头文件在include/linux 子目录下; init:init 目录包含核心的初始化代码(不是系统的引导代码),有main.c 和Version.c 两个文件;mm:mm 目录包含了所有的内存管理代码。与具体硬件体系结构相关的内存管理代码位于arch/*/mm 目录下;drivers:drivers 目录中是系统中所有的设备驱动程序。它又进一步划分成几类设备驱动,每一种有对应的子目录,如声卡的驱动对应于drivers/sound;ipc:ipc 目录包含了核心进程间的通信代码;modules:modules 目录存放了已建好的、可动态加载的模块;fs:fs 目录存放Linux 支持的文件系统代码。不同的文件系统有不同的子目录对应,如ext3 文件系统对应的就是ext3 子目录;Kernel:Kernel 内核管理的核心代码放在这里。同时与处理器结构相关代码都放在arch/*/kernel 目录下;net:net 目录里是核心的网络部分代码,其每个子目录对应于网络的一个方面;lib:lib 目录包含了核心的库代码,不过与处理器结构相关的库代码被放在arch/*/lib/目录下;scripts:scripts 目录包含用于配置核心的脚本文件;documentation:documentation 目录下是一些文档,是对每个目录作用的具体说明。

2、将自己开发的内核代码加入到 Linux 内核中,需要有三个步骤。首先确定把自己开发代码放入到内核的位置;其次,把自己开发的功能增加到 Linux 内核的配置选项中,使用户能够选择此功能;最后,构建子目录 Makefile,根据用户的选择,将相应的代码编译到最终生成的 Linux 内核中去。主要步骤有:组织目录结构,配置文件,修改makefile文件等。

3、Linux内核的移植过程比较繁琐,具体步骤如下:解压内核文件、修改机器码、修改内核源码根目录下的Makefile文件、修改“arch/arm/plat-s3c24xx/common-smdk.c”文件,修改Nand Flash的分区信息和Nand Flash的硬件信息、修改时钟频率、增加Yaffs2文件系统的支持、配置内核、编译内核等。

4、为什么要进行内核裁剪?

内核裁剪,主要作用就是为了适应嵌入式系统的小体积、小存储的特点,在内核的大小方面进行裁剪。内核编译之前,通过配置内核的选项参数进行设置,将不需要的功能删掉,保留系统需要的部分,这样就在一定程序上缩小了生成的镜像文件大小。

第九章

一、填空题。

1、Linux下的文件系统主要分为三个层次:上层用户的应用程序对文件系统的系统调用、虚拟文件系统VFS和挂载到VFS中的各种实际文件系统。

2、Linux中三常见的块驱动程序:Blkmem驱动层、RAMdisk驱动层、MTD 驱动层

3、基于Flash存储常见的文件系统有JFFS2、Yaffs、Romfs和Cramfs。

4、基于RAM的文件系统常见的有Ramdisk和Ramfs/Tmpfs。

5、System V init、Busybox init

二、选择题

1、(A)也支持在一块Flash上建立多个Flash分区,没一个分区作为一个MTD block设备,可以把系统软件数据等分配到不同的分区上,同时也可以在不同的分区采用不同的文件系统格式。

A、MTD驱动层

B、Blkmem驱动层

C、Romdisk驱动层

D、Ramdisk驱动层

2、在Linux系统中,因为Flash可以以分区为单位拆开或者合并后使用,所以文件系统是针对于(B)而言的。

A、存储芯片

B、存储器分区

C、Flash

D、RAM

3、(B)是可读写的、支持数据压缩的、基于哈希表的日志型文件系统,并提供了崩溃/掉电保护,提供了“写平衡”支持,是具有支持多种节点类型,提高了对Flash的利用率等优点的文件系统、

A、Cramfs

B、Yaffs

C、Romfs

D、JFFS2

4、(D)将一部分固定大小的内存当做分区来使用。它并非一个实际的文件系统,而是一种将实际的文件系统装入内存的机制,并可以作为根文件系统。

A、JFFS2

B、Yaffs

C、Romfs

D、Ramdisk

5、目录“rc n.d”(n表示运行级别,值分别取0~6)下存放的文件则是用来定义每个运行级别将会执行的应用程序名,通常情况下它们都是符号链接,具体的文件则位于(B)目录下。

A、rc.local

B、init.d

C、rc

D、rc.d

A B B D B

三、叙述题

1、在Linxu根文件系统中,一般包括这样一些子目录:/etc/、/dev/、/usr/、/usr/bin/、/bin/等。根文件系统的建立需要遵循一定的规则,包括目录的位置及名字等。用来建立根文件系统的规则被称作文件系统分类标准(Filesystem Hierarchy Standard,FHS),该规则定义了在构建Linux根文件系统时文件和目录的名字和存放位置的标准。

2、简述Busybox的主要作用。

Busybox能使用户迅速方便的建立一套相对完整、功能丰富的文件系统,其中包括大量常用的应用程序。Busybox将许多常用的UNIX命令和工具结合到了一个单独的可执行程序中。它集成压缩了 Linux 的许多工具和命令。虽然与相应的GNU工具比较起来,Busybox所提供的功能和参数略少,但在比较小的系统或者嵌入式系统中,这些已经足够用了。

3、简述NFS文件系统的制作过程。

一般只要通过特殊的打包工具将文件系统打包,并刻录到非易失性存储器中中就可以了。

============================================================== ====

第十章

一、填空题。

1、Linux系统的设备文件分为四类:块设备文件、字符设备文件、网络设备文件、杂项设备文件。

2、设备号是一个数字,它是设备的标志、如前所述,一个设备文件可以通过mknod命令来创建,其中指定了主设备号和次设备号。前者表明某一类设备,用于表示设备对应的驱动程序,一般对应着确定的驱动程序;后者一般用于区分标明不同属性,它标志着某个具体的物理设备。

3、本章中的4种数据结构:file_operations、file、inode和device_struct,其中file_operations存储驱动内核模块提供的对设备进行这种操作的函数指针,file代表一个打开的文件描述符,inode表示具体的文件。

4、创建设备节点的命令是mknod。

5、设备读写操作的功能之一就是控制硬件,最常用的通过设备驱动程序完成控制动作的方法就是实现ioctl方法。

二、选择题

1、磁盘属于(B)。

A、字符设备

B、块设备

C、网络设备

D、杂项设备

2、USB属于(D)。

A、字符设备

B、块设备

C、网络设备

D、杂项设备

3、Linux内核是“单内核”结构,这个单内核由很多(A)构成。

A、模块

B、函数

C、设备

D、驱动程序

4、如果一个模块要实现read、open和release等功能,则将其定义为(A)结构。

A、file_operations

B、inode

C、file

D、devicde_struct

5、数据结构(D),包含两个元素:一个登记的设备驱动程序的指针和一个指向一组文件操作的指针。

A、file_operations

B、inode

C、file

D、device_struct

B D A A D

三、叙述题

1、Linux驱动程序主要有哪些功能?

驱动程序主要提供以下功能:应用程序通过驱动程序安全有效地访问硬件;驱动程序作为嵌入式系统的中间层软件,它隐藏了底层的细节,从而提高了软件的可移植性和可复用性;驱动程序文件节点可以方便地提供访问权限控制。从下层驱动开发人员的角度来看,Linux驱动程序就是通过直接操控硬件的软件,来完成下面的功能:对设备初始化和释放;直接读写硬件寄存器来控制硬件;把数据从内核传送到硬件和从硬件读取数据;操作设备缓冲区设备;操作输入、输出设备,如键盘、打印机等;读取应用程序传送给设备文件的数据和回送应用程序请求的数据;检测和处理设备出现的错误。

2、简述字符设备与块设备有什么区别。

块设备文件:通常指一些需要以块(如512字节)的方式写入的设备,如IDE硬盘、SCSI硬盘、光驱等;字符型设备文件:通常指可以直接读写,没有缓冲区的设备,如并口、虚拟控制台等;

3、Linux驱动程序可以通过哪两种方式集成到内核中?

Linux驱动程序可以通过两种方式集成到内核中去:

一是将其直接编译到内核;

二是将其编写成模块,在需要添加某种硬件的时候,内核可以将其调入。在配置Linux内核时,可以选择“Enable loadable module support”选项,来支持可加载内核模块。

4、Linux设备驱动程序与外界的接口可以分为几个部分?

Linux 设备驱动程序与外界的接口可以分为如下三个部分:

驱动程序与操作系统内核的接口:这是通过数据结构 file_operations 来完成的。

驱动程序与系统引导的接口:这部分利用驱动程序对设备进行初始化。

驱动程序与设备的接口:这部分描述了驱动程序如何与设备进行交互,这与具体设备密切相关。

5、进行模块编程的一般步骤是:首先建立模块文件,然后编写makefile 文件,最后使用insmod加载模块文件。

6、编写一个字符设备驱动,主要是下面几步:

编写硬件接口函数;建立文件系统与设备驱动程序的接口变量,类型为struct file_operations结构体,并初始化该变量;注册设备到chrdevs全局数组中;以模块方式编译驱动源码,并将其加载到内核中;创建设备节点;编写应用程序访问底层设备。

ARM嵌入式系统基础与开发教程丁文龙

第1章嵌入式系统概述 1.填空题 (1)嵌入式系统硬件平台嵌入式软件 (2)硬件抽象层HAL 板级支持包BSP 设备驱动程序 (3)嵌入式微处理器嵌入式微控制器嵌入式片上系统SoC 2.选择题 (1)B (2)A B D (3)D 3.简答题 (1)什么是嵌入式系统?列举几个熟悉的嵌入式系统的产品。 嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。常见的有汽车、手机、MP3等等。 (2)嵌入式系统由哪几部分组成? 嵌入式系统从大的方面分嵌入式系统硬件平台和嵌入式软件两大部分,其中软件部分又具体分为若干层次。对于包含有操作系统的嵌入式系统来讲,嵌入式系统软件结构包含4个层次:设备驱动层、实时操作系统RTOS层、应用程序接口API层、应用程序层。 (3)简述嵌入式系统的特点。 系统内核小;专用性强;系统精简;软件固化;嵌入式软件开发要想走向标准化,就必 须使用多任务的操作系统;嵌入式系统开发需要开发工具和环境。

第2章ARM体系结构 1.填空题 (1)Cortex-R4处理器Cortex-A8处理器 (2)ARM Thumb (3)R13 R14 R15 (4)8 16 32 2.选择题 (1)A C D (2)A (3)B C D 3.简答题 (1)简述ARM可以工作的几种模式。 ARM体系结构支持7种处理器模式:用户模式、快中断模式、中断模式、管理模式、 中止模式、未定义模式和系统模式。 (2)ARM7内部有多少个寄存器? 在ARM7TDMI处理器内部有37个用户可见的32位寄存器,其中31个通用寄存器,6个状态寄存器。 (3)描述一下如何禁止IRQ和FIQ的中断? 在一个特权模式下,都可通过置位CPSR中的I位来禁止IRQ。 在一个特权模式中,可通过置位CPSR中的F标志来禁止FIQ异常。 (4)请描述ARM7TDMI进入异常或退出异常时内核有何操作? 当异常发生时,ARM处理器尽可能完成当前指令(除了复位异常)后,再去处理异常,并执行如下动作: ①进入与特定的异常相应的操作模式; ②将引起异常指令的下一条指令的地址保存到新模式的R14中; ③将CPSR的原值保存到新模式的SPSR中; ④通过设置CPSR的第7位来禁止IRQ;如果异常为快中断,则要设置CPSR的第6位禁止快中断; ⑤给PC强制赋向量地址值。 退出异常时: ①将LR中的值减去偏移量后移入PC,偏移量根据异常的类型而有所不同; ②将SPSR的值复制回CPSR; ③清零在入口置位的中断禁止标志。

Linux题库与答案

一、填空题 1. 建立用户账号的命令是__useradd________。 2. 修改账号密码的命令是__passwd________。 3. 更改用户密码过期信息的命令是__chage________。 4. 创建一个新组的命令是___groupadd_______。 5. 用于在不注销的情况下切换到系统中的另一个用户的命令是___su_______。 6. 显示系统中进程信息的命令是_____ps__-aux_____。 7. 以树状方式表现进程的父子关系的命令是___pstree_________。 8. 显示当前系统正在执行的进程的相关信息的命令是___top_________。 9. 显示或者设置当前系统的主机名的命令是___hostname_________。 10. Linux 系统中使用最多的文件系统是_______ext3/4____________。

11. 列出磁盘分区信息的命令是___df_______。 12. 将设备挂载到挂载点处的命令是__mount________。 13. 检查文件系统的磁盘空间占用情况的命令是____du______。 14. 统计目录(或文件)所占磁盘空间大小的命令是__du________。 15. 为文件建立在其他路径中的访问方法(链接)的命令是__ln_______,链接有两种:___ 软链接______和___硬链接______。 改变文件或目录的读写和执行权限的命令是__chmod________。 17. 指定在创建文件或目录时预设权限掩码的命令是___umask_______。 18. 改变文件或目录所有权的命令是__chown________。 19. ACL 可以为某个文件单独设置该文件具体的某用户或组的权限。需要掌握的命令也只有 三个:__getfacl__、__setfacl__、__chacl__。

LInux 嵌入式操作系统期末试题

1.简答题:请简单概括什么是嵌入式系统、并举出嵌入式系统的特点;(6分) 答: 嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可剪裁,适用于应用系统,对功能、可靠性、成本、体积、功耗等方面有特殊要求的专用计算机系统; 其特点如下: (1)嵌入式系统是面向特定系统应用的。 (2)嵌入式系统涉及计算机技术、微电子技术、电子技术、通信和软件等各个行业; 是一个技术密集、资金密集、高度分散、不断创新的知识集成系统; (3)嵌入式系统的硬件和软件都必须具有高度可定制性;只有这样才能适应嵌入式系 统应用的需要,在产品价格和性能方面具备竞争力; (4)嵌入式系统的生命周期相当长。 (5)嵌入式系统不具备本地系统开发能力,通常需要有一套专门的开发工具和环境。 2.嵌入式操作系统的优势:1.低成本开发系统 2.可应用多种硬件平台 3.可定制内核 4. 性能优异 5.良好的网络支持 3.linux文件类型:1.普通文件 2.目录文件 3.链接文件 4.设备文件 a.块设备文件(硬 盘:/dev/hda1)b.字符设备(串行端口接口设备) 4.linux文件属性:访问权限:r:可读w:可写x:可执行用户级别:u:文件拥有者g:所 属用户组 o:其他用户第一个字符显示文件类型:-普通d目录 l 链接… 5.简答题:(6分) linux目录结构:/bin 存放linux常用操作命令的执行文件(二进制文件) /boot 操作系统启动时所需要的程序 /dev Linux系统中使用的外部设备 /etc 系统管理时所需要的各种配置文件和子目录 /etc/rc.d Linux启动和关闭时要用到的脚本 /etc/rc.d/init Linux默认服务的启动脚本 /home 系统中默认用户工作根目录 /lib 存放系统动态链接共享库 /mnt软驱、光驱、硬盘的挂载点 /proc存放系统核心与执行程序所需信息、 /root超级用户登陆时的主目录 /sbin 存放管理员常用系统管理程序 /usr存放用户应用程序和文件 /var存放日志信息(答六点即可) 6.编写一个shell文件:创建studen01 –student30这30个用户,用户组为class1,之 后编写shell文件,删除所有用户

arm嵌入式系统基础教程课后答案.doc

arm 嵌入式系统基础教程课后答案【篇一:arm 嵌入式系统基础教程习题答案周立功】 /p> 1 、举出3 个书本中未提到的嵌入式系统的例子。 答:红绿灯控制,数字空调,机顶盒 2、什么叫嵌入式系统 嵌入式系统:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的 专用计算机系统。 3、什么叫嵌入式处理器?嵌入式处理器分为哪几类? 嵌入式处理器是为完成特殊的应用而设计的特殊目的的处理器。 嵌入式微处理器(embedded microprocessor unit, empu) 嵌入式微控制器(microcontroller unit, mcu) 嵌入式dsp 处理器(embedded digital signal processor, edsp) 嵌入式片上系统(system on chip) 4、什么是嵌入式操作系统?为何要使用嵌入式操作系统? 是一段在嵌入式系统启动后首先执行的背景程序,首先,嵌入式实 时操作系统提高了系统的可靠性。其次,提高了开发效率,缩短了 开发周期。再次,嵌入式实时操作系统充分发挥了32 位cpu 的多任务潜力。 第二章 1、嵌入式系统项目开发的生命周期分哪几个阶段?各自的具体任务 是什么? 项目的生命周期一般分为识别需求、提出解决方案、执行项目和结 束项目 4 个阶段。识别需求阶段的主要任务是确认需求,分析投资 收益比,研究项目的可行性,分析厂商所应具备的条件。 提出解决方案阶段由各厂商向客户提交标书、介绍解决方案。 执行项目阶段细化目标,制定工作计划,协调人力和其他资源;定 期监控进展,分析项目偏差,采取必要措施以实现目标。 结束项目阶段主要包括移交工作成果,帮助客户实现商务目标;系 统交接给维护人员;结清各种款项。 2、为何要进行风险分析?嵌入式项目主要有哪些方面的风险? 在一个项目中,有许多的因素会影响到项目进行,因此在项目进行 的初期,在客户和开发团队都还未投入大量资源之前,风险的评估

(完整word版)嵌入式系统设计与应用

嵌入式系统设计与应用 本文由kenneth67贡献 ppt文档可能在W AP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机查看。 课程名称:课程名称:嵌入式系统设计与应用 总学时:其中讲课36学时,上机实践环节12 36学时12学时总学时:其中讲课36学时,上机实践环节12学时教材:嵌入式系统设计教程》教材:《嵌入式系统设计教程》电子工业出版社马洪连参考书:参考书:1、《嵌入式系统开发与应用》北航出版社、田泽编著. 嵌入式系统开发与应用》北航出版社、田泽编著. 2、《ARM体系结构与编程》清华大学出版社杜春雷编著ARM体系结构与编程体系结构与编程》嵌入式系统设计与实例开发—ARM ARM与C/OS3、《嵌入式系统设计与实例开发ARM与μC/OS-Ⅱ》清华大学出版社王田苗、魏洪兴编著清华大学出版社王田苗、ARM嵌入式微处理器体系结构嵌入式微处理器体系结构》4、《ARM嵌入式微处理器体系结构》北航出版社、马忠梅等著. 北航出版社、马忠梅等著. 张石.ARM嵌入式系统教程嵌入式系统教程》5、张石.《ARM嵌入式系统教程》.机械工业出版2008年社.2008年9月 1 课程内容 绪论:绪论: 1)学习嵌入式系统的意义2)高校人才嵌入式培养情况嵌入式系统设计(实验课)3)嵌入式系统设计(实验课)内容安排 第1章嵌入式系统概况 1.1 嵌入式系统的定义1.2 嵌入式系统的应用领域及发展趋势1.3 嵌入式系统组成简介 第2章嵌入式系统的基本知识 2.1 2.2 2.3 嵌入式系统的硬件基础嵌入式系统的软件基础ARM微处理器的指令系统和程序设计ARM微处理器的指令系统和程序设计 2 第3章 3.1 3.2 3.3 基于ARM架构的嵌入式微处理器基于ARM架构的嵌入式微处理器ARM 概述嵌入式微处理器的组成常用的三种ARM ARM微处理器介绍常用的三种ARM 微处理器介绍 第4章 4.1 4.2 4.3 4.4 4.5 4.6 嵌入式系统设计 概述嵌入式系统的硬件设计嵌入式系统接口设计嵌入式系统人机交互设备接口嵌入式系统的总线接口和网络接口设计嵌入式系统中常用的无线通信技术 3 第5章嵌入式系统开发环境与相关开发技术 5.1 5.2 5.3 5.4 5.5 6.1 6.2 6.3 6.4 概述嵌入式系统的开发工具嵌入式系统调试技术嵌入式系统开发经验嵌入式系统的Bootloader Bootloader技术嵌入式系统的Bootloader技术μC/OS-II操作系统概述C/OS-II操作系统概述ADS开发环境ARM ADS开发环境C/OS-II操作系统在ARM系统中的移植操作系统在ARM μC/OS-II操作系统在ARM系统

嵌入式linux简单程序

1、demo demo.c #ifndef __KERNEL__ #define __KERNEL__ #endif #ifndef MODULE #define MODULE #endif #include #include //模块相关 #include //内核相关 #include //file_operations #include //ssize_t定义文件 #include //__init和__exit相关 #include #include #include //copy_to_user()和copy_from_user()在此定义 #include /*相关宏定义*/ #define DEVICE_NAME "demo"//设备名称 #define demo_MAJOR 88//主设备号 #define demo_MINOR 0//次设备号 #define ERROR -1 static int MAX_BUF_LEN=1024;//数值的最大值 static int WRI_LENGTH=0; /*结构体的定义*/ static int demo_major=demo_MAJOR; struct demo_dev { struct cdev cdev; char drv_buf[1024]; }; struct demo_dev * demo_devp; /****************************************************************************** *******/ /*demo设备文件打开*/ int demo_open(struct inode * inode,struct file *filp) { filp->private_data=demo_devp;

linux题库选择及答案

一、选择题 1.在创建Linux分区时,一定要创建(D )两个分区 A. FAT/NTFS B. FAT/SWAP C. NTFS/SWAP D.SW AP/根分区 2.在Red Hat Linux中,系统默认的(A)用户对整个系统拥有完全的控制权。 A. root B. guest C. administrator D.supervistor. 3. 当登录Linux时,一个具有唯一进程ID号的shell将被调用,这个ID是什么( B ) A. NID B. PID C. UID D. CID 4. 下面哪个命令是用来定义shell的全局变量( D ) A. exportfs B. alias C. exports D. export 5. 哪个目录存放用户密码信息( B ) A. /boot B. /etc C. /var D. /dev 6. 默认情况下管理员创建了一个用户,就会在( B )目录下创建一个用户主目录。 A. /usr B. /home C. /root D. /etc 7. . 当使用mount进行设备或者文件系统挂载的时候,需要用到的设备名称位于( D )目录。 A. /home B. /bin C. /etc D. /dev 8. 如果要列出一个目录下的所有文件需要使用命令行( C )。 A. ls –l B. ls C. ls –a(所有) D. ls –d 9. 哪个命令可以将普通用户转换成超级用户(D ) A. super B. passwd C. tar D. su 10. 除非特别指定,cp假定要拷贝的文件在下面哪个目录下( D ) A. 用户目录 B. home目录 C. root目录 D. 当前目录 11. 在vi编辑器里,命令"dd"用来删除当前的( A ) A. 行 B. 变量 C. 字 D. 字符 12. 当运行在多用户模式下时,用Ctrl+ALT+F*可以切换多少虚拟用户终端( B ) A. 3 B. 6 C. 1 D. 12 13. Linux启动的第一个进程init启动的第一个脚本程序是( B )。 A./etc/rc.d/init.d B./etc/rc.d/rc.sysinit C./etc/rc.d/rc5.d D./etc/rc.d/rc3.d 14. 按下(A )键能终止当前运行的命令 A. Ctrl-C B. Ctrl-F C. Ctrl-B D. Ctrl-D 15. 下面哪个命令用来启动X Window ( C ) A. runx B. Startx C. startX D. xwin 16. 用来分离目录名和文件名的字符是( B ) A. dash (-) B. slash (/) C. period (.) D. asterisk(*) 17. 用"rm -i",系统会提示什么来让你确认( B ) A. 命令行的每个选项 B. 是否真的删除 C. 是否有写的权限 D. 文件的位置 18. 以下哪个命令可以终止一个用户的所有进程( D ) A. skillall B. skill C. kill D. killall 19.在Red Hat Linux 9中,一般用(D )命令来查看网络接口的状态 A. ping B. ipconfig C. winipcfg D ifconfig 20. vi中哪条命令是不保存强制退出( C )(第五章) A. :wq B. :wq! C. :q! D. :quit 21.局域网的网络设备通常有(ABCDE)

孟祥莲嵌入式系统原理及应用教程部分习题答案

习题1 1. 嵌入式系统的概念的是什么?答:嵌入式系统是以应用为中心,以计算机技 术为基础,软、硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。(嵌入式系统是嵌入式到对象体系中的,用于执行独立功能的专用计算机系统。) 2. 嵌入式系统的特点是什么? 答:系统内核小;专用性强;运行环境差异大;可靠性要求高;系统精简和高实时性操作系统;具有固化在非易失性存储器中的代码嵌入式系统开发和工作环境 4. 嵌入式系统的功能是什么?答:提供强大的网络服务小型化,低成本,低 功能;人性化的人机界面;完善的开发平台 5. 嵌入式系统的硬件平台由哪些部分组成?答:嵌入式系统的硬件是以嵌入式处理器为核心,由存储器I/O 单元电路,通信模块,外部设备必要的辅助接口组成的。 7. 嵌入式操作系统的主要特点是什么?答:体积小;实时性;特殊的开发调试环境。 8. 叙述嵌入式系统的分类。答:按嵌入式微处理器的位数分类可以分为4 位、 8 位、16 位、32 位和64 位等;按软件实时性需求分类可以分为非实时系统(如PDA), 软实时系统(如消费类产品)和硬实时系统(如工业实时控制系统)按嵌入式系统的复杂程度分类可以分为小型嵌入式系统,中型嵌入式系统和复杂嵌入式系统。 习题2 处理器和工作状态有哪些?

答:ARM犬态:此时处理器执行32位的的字对齐的ARS旨令。 Thumb犬态:此时处理器执行16位的,半字对齐的Thumb旨令 2.叙述ARM9内部寄存器结构,并分别说明R13 R14 R15寄存器的 作用。 答:共有37个内部寄存器,被分为若干个组(BANK,这些寄存器包括31个通用寄存器,包括程序计数器(PC指针)6个状态寄存器。R13用作堆栈指针,R14称为子程序链接寄存器,R15用作程序计数器。处理器的工作模式有哪些? 答:用户模式:ARM处理器正常的程序执行状态。 快速中断模式:用于高速数据传输或通道处理 外部中断模式:用于通用中断处理管理模式:操作系统使用的保护模式数据访问终止模式:当数据或指令预期终止时进入该模式,可用于虚拟存储器及存储保护 系统模式:运行具有特权的操作系统任务 未定义指令终止模式:当未定义的指令执行时进入该模式,可用 于支持硬件协处理器的软件仿真。 微处理器支持的数据类型有哪些? 答:ARM微处理器中支持字节(8位)、半字(16位),字(32 位)

嵌入式Linux系统开发标准教程

嵌入式Linux系统开发标准教程 目录 版权信息 内容简介 编辑推荐 目录 编辑本段版权信息 书名: 嵌入式Linux系统开发标准教程 作者:华清远见嵌入式培训中心 出版社:人民邮电出版社 出版时间: 2009 ISBN: 9787115194756 开本:16 定价: 45.00 元 编辑本段内容简介 《嵌入式Linux系统开发标准教程(第2版)》以嵌入式Linux系统开发流程为主线,剖析了嵌入式Linux系统构建的各个环节。《嵌入式Linux 系统开发标准教程(第2版)》从嵌入式系统基础知识和Linux编程技术讲起,接下来介绍了嵌入式Linux交叉开发环境的建立,然后分析了嵌入式Linux系统的引导程序、内核和文件系统三大组成部分,最后介绍了嵌入式Linux系统集成和部署的方法。 《嵌入式Linux系统开发标准教程(第2版)》先以ARM平台为例,对U-Boot和Linux内核启动过程做了详细分析,为学习嵌入式Linux系统开

发奠定基础,然后从概念上阐述了嵌入式Linux系统开发流程,实践上提供了具体的操作步骤,使读者能够深入理解嵌入式Linux系统的构建。 《嵌入式Linux系统开发标准教程(第2版)》可作为高等院校电子类、电气类、控制类等专业高年级本科生、研究生学习嵌入式Linux的教材,也可供希望进入嵌入式领域的科研和工程技术人员参考使用,还可作为嵌入式培训班的教材和教辅材料。 编辑本段编辑推荐 众多专家、厂商联合推荐,业界权威培训机构的经验总结。《嵌入式Linux系统开发标准教程(第2版)》配套PPT嵌入式专家讲座视频鞂式图书样章。嵌入式系统概述、ARM嵌入式处理器、Linux编程环境,嵌入式交叉开发环境、交叉杆塔工具链、Bootloader、配置编译Linux内核、Liux内核移植、内核高度技术、制作根文件系统、开源软件的应用、系统集成测试、部署Linux系统。 编辑本段目录 第1章嵌入式系统概述 1.1嵌入式系统的定义与特点 1.2常见的嵌入式操作系统 1.3嵌入式Linux的发展历史 1.4初步认识嵌入式Linux开发环境 1.5嵌入式Linux系统开发要点 第2章ARM嵌入式处理器 2.1初识ARM 2.1.1ARM公司简介 2.1.2ARM体系结构基础 2.1.3Linux与ARM处理器 2.2ARM指令集 2.2.1ARM处理器的指令集概述 2.2.2ARM指令寻址方式 2.2.3Thumb指令概述 2.3典型ARM处理器简介 2.3.1AtmelAT91RM9200 2.3.2SamsungS3C2410 2.3.3TIOMAP1510/1610系列 2.3.4Freescalei.Max21 2.4典型的嵌入式系统开发平台——三星S3C2410开发板

Linux操作系统 考试题库

1.在Linux目录结构中目录中的文件是普通用户可以使用的可使用的可执行文件的目录是(B)19 A./sbin B./bin C./usr D./lib 2.在Linux目录结构中Linux的内核及引导程序所需要的文件位于(B)目录 A/bin B./boot C./root D./proc 3.在Linux目录结构中用来存放系统配置文件(D)目录 A./lib B./dev C./proc D./etc 4.Linux三种特殊权限中仅用于目录文件的权限是(C)22 C.黏滞位 D.都可以 5.Linux三种权限中允许进入目录的权限(C) 22 可读可写可执行 D.都不是 6.下列脚本文件最先自动执行的是(A)24 A./etc/ B./etc/profile C.~/.bashrc D.~/.bash_logout 7.下面通配符可匹配多个任意字符的通配符是(A)29 A.* B. ? C.[abcde ] D.[!a-e] 8.输出重定向符号右边的文件已经存在,不会覆盖文件而是追加的定向符是(B) A.> B.> > C. 2> D.&> 9.表示用户家目录的是(B) A./home (所有用户家目录的父目录,+用户名才是用户家目录) B.~ C. . D. .. 10.可删除非空目录及其子目录的命令是(B) A. touch -r 空目录 11. 是强引用的符号(A) A. 单引号 B.反引号 C.双引号 D.中括号 12.可显示隐藏文件的ls命令形式选项是(A)

13.可通过接受标准输入作为输出内容来创建简单文件的命令是(B)42 A.touch D. gedit 14.不带有编辑功能但有翻页、按行滚动、搜索功能的命令是(B) 43 A.cat 和less 和 tail D vi 15.wc命令可统计文件的行数、字数和字节数。在下列格式中只显示文件的字数的是(C) 51 A.wc B. wc -c C. wc -w D wc -l 16.可实现文件重命名的命令是(B)52 A.cp B. mv C. ln D rename 17.在Linux系统中可通过挂载将光盘、U盘或一个文件系统连接到主目录树的一个目录节点。期中光盘或光盘镜像对应的文件系统类型是(C)44 A.vfat B. ext3 D vboxsf 18.下面更改文件命令只能更改符号连接的目标文件的权限的命令是(C) A.chown C. chmod D.以上都不对 19.chmod命令的权限模式可使用字符串形式或八进制形式,当使用八进制形式时模式应由三或四位八进制构成,其中从最高到最低位依次表示为(A)每个八进制的三个二进制位从高到低分别表示为有无读、写、执行权限 A.文件所有者文件所属组其他用户 B. 其他用户文件所属组文件所有者 C.文件所属组文件所有者其他用户 D.其他用户文件所有者文件所属组 20.chmod命令的权限模式可使用字符串形式或八进制形式,当使用八进制形式时模式应由三或四位八进制构成,其中每个八进制的三个二进制位从高到低分别表示为有无(A) A.读写执行 B.写读执行 C.执行读写 D.执行写读 21.运行时不会创建子进程的方式是(C)69 A.赋予shell程序文件可执行权限,直接运行shell 程序(外部命令)

LInux嵌入式操作系统期末试题

简答题:请简单概括什么是嵌入式系统、并举出嵌入式系统的特点;(6分) 答: 嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可剪裁,适用于应用系统,对功能、可靠性、成本、体积、功耗等方面有特殊要求的专用计算机系统; 其特点如下: (1)嵌入式系统是面向特定系统应用的。 (2)嵌入式系统涉及计算机技术、微电子技术、电子技术、通信和软件等各个行业; 是一个技术密集、资金密集、高度分散、不断创新的知识集成系统; (3)嵌入式系统的硬件和软件都必须具有高度可定制性;只有这样才能适应嵌入式系统应用的需要,在产 品价格和性能方面具备竞争力; (4)嵌入式系统的生命周期相当长。 (5)嵌入式系统不具备本地系统开发能力,通常需要有一套专门的开发工具和环境。 嵌入式操作系统的优势:1.低成本开发系统 2.可应用多种硬件平台 3.可定制内核 4.性能优异 5.良好的网络支持 linux文件类型:1.普通文件2.目录文件3.链接文件4.设备文件a.块设备文件(硬盘:/dev/hda1)b.字符设备(串行端口接口设备) linux文件属性:访问权限:r:可读w:可写x:可执行用户级别:u:文件拥有者g:所属用户组o:其他用户第一个字符显示文件类型:- 普通 d 目录 l 链接… 简答题:(6分) linux目录结构:/bin 存放linux常用操作命令的执行文件(二进制文件) /boot 操作系统启动时所需要的程序 /dev Linux系统中使用的外部设备 /etc 系统管理时所需要的各种配置文件和子目录 /etc/rc.d Linux启动和关闭时要用到的脚本 /etc/rc.d/init Linux默认服务的启动脚本 /home 系统中默认用户工作根目录 /lib 存放系统动态链接共享库 /mnt软驱、光驱、硬盘的挂载点 /proc存放系统核心与执行程序所需信息、 /root超级用户登陆时的主目录 /sbin 存放管理员常用系统管理程序 /usr存放用户应用程序和文件 /var存放日志信息(答六点即可) 编写一个shell文件:创建studen01 –student30这30个用户,用户组为class1,之后编写shell文件,删除所有用户 操作步骤:1.打开Terminal(终端): 2.输入vi shell 3.输入i 进入编辑模式 4.输入 #!/bin/bash groupadd class1 for((i=1;i<10;i++)) do username=student0$i

ARM嵌入式系统基础教程第二版课后习题答案

第1xx 嵌入式系统概述 (1)举出3个本书中未提到的嵌入式系统的例子。 答:键盘、鼠标、扫描仪。 (2)什么叫嵌入式系统? 答:嵌入到对象体系中的专用计算机应用系统。 (3)什么叫嵌入式处理器?嵌入式处理器分为哪几类? 答:嵌入式处理器是为完成特殊的应用而设计的特殊目的的处理器。 分为3类:1.注重尺寸、能耗和价格; 2.关注性能;3.关注全部4个需求——性能、尺寸、能耗和价格。 (4)什么是嵌入式操作系统?为何要使用嵌入式操作系统? 答:嵌入式操作系统是操作系统的一种类型,是在传统操作系统的基础上加入符合嵌入式系统要求的元素发展而来的。原因: 1.提高了系统的可靠性;2.提高了开发效率,缩短了开发周期。 3.充分发挥了32位CPU的多任务潜力。 第2章ARM7体系结构 1.基础知识 (1)ARM7TDMI中的T、D、M、I的含义是什么? 答:T:高密度16位Thumb指令集扩展;D:支持片上调试;M:64位乘法指令;I:Embedded ICE硬件仿真功能模块。 (2)ARM7TDMI采用几级流水线?使用何种存储器编址方式? 答:3级;冯·诺依曼结构。

(3)ARM处理器模式和ARM处理器状态有何区别? 答:ARM处理器模式体现在不同寄存器的使用上;ARM处理器状态体现在不同指令的使用上。 1 / 16 (4)分别列举ARM的处理器模式和状态? 答:ARM的处理器模式:用户模式、系统模式、管理模式、中止模 式、未定义模式、中断模式、快速模式;ARM的处理器状态:ARM状态、Thumb状态。 (5)PC和LR分别使用哪个寄存器? 答:PC:R15;LR: 14。 (6)R13寄存器的通用功能是什么? 答:堆栈指针SP。 (7)CPSR寄存器中哪些位用来定义处理器状态? 答:位31~28:N、Z、C、V,条件代码标志位;27~8:保留位;7~0: I、F、T、M4~0,控制标志位。 (8)描述一下如何禁止IRQ和FIQ的中断。 答:当控制位I置位时,IRQ中断被禁止,否则允许IRQ中断使能;当控制位F置位时,FIQ中断被禁止,否则允许FIQ中断使能。 2.存储器格式 答:无论是大端格式还是小端格式,R2的值与R1一致;地址0x4000

嵌入式Linux系统开发教程很完整的习题答案资料

参考答案 第一章 一、填空题。 1、嵌入式系统主要融合了计算机软硬件技术、通信技术和微电子技术,它是将计算机直接嵌入到应用系统中,利用计算机的高速处理能力以实现某些特定的功能。 2、目前国内对嵌入式系统普遍认同的定义是:以应用为中心、以计算机技术为基础、软硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 3、嵌入式系统一般由嵌入式计算机和执行部件组成,其中嵌入式计算机主要由四个部分组成,它们分别是:硬件层、中间层、系统软件层以及应用软件层。 4、嵌入式处理器目前主要有ARM、MIPS、Power PC、68K等,其中arm处理器有三大特点:体积小、低功耗、的成本和高性能,16/32位双指令集,全球合作伙伴众多。 5、常见的嵌入式操作系统有:Linux、Vxworks、WinCE、Palm、uc/OS-II和eCOS。 6、嵌入式系统开发的一般流程主要包括系统需求分析、体系结构设计、软硬件及机械系统设计、系统集成、系统测试,最后得到最终产品。 二、选择题 1、嵌入式系统中硬件层主要包含了嵌入式系统重要的硬件设备:、存储器(SDRAM、ROM等)、设备I/O接口等。(A) A、嵌入式处理器 B、嵌入式控制器 C、单片机 D、集成芯片 2、20世纪90年代以后,随着系统应用对实时性要求的提高,系统软件规模不断上升,实时核逐渐发展为,并作为一种软件平台逐步成为目前国际嵌入式系统的主流。(D) A、分时多任务操作系统 B、多任务操作系统 C、实时操作系统 D、实时多任务操作系统 3、由于其高可靠性,在美国的火星表面登陆的火星探测器上也使用的嵌入式操作系统是。(B) A、Palm B、VxWorks C、Linux D、WinCE [在此处键入]

嵌入式Linux应用程序开发报告

湖南工业大学 课程设计 资料袋 计算机与通信学院学院(系、部)2015~ 2016 学年第一学期 课程名称嵌入式Linux应用程序开发指导教师叶伟琼职称副教授 学生姓名皓月叶舞专业班级通信工程12XX 学号124082004XX 题目AD驱动 成绩起止日期2015 年12 月14 日~2015年12月20 日 目录清单 序号材料名称资料数量备注 1 课程设计任务书 1 2 课程设计说明书 1 3 课程设计图纸10 张4 5 6

湖南工业大学 课程设计任务书 2015 —2016学年第1 学期 计算机与通信学院通信工程专业12XX 班 课程名称:嵌入式Linux应用程序开发 设计题目: AD驱动 完成期限:自2015 年12 月14 日至2015 年12 月20 日共 1 周 内容及任务一、设计的主要技术参数 数模转换、数模编程 二、设计任务(内容) 1、完成相关编程模拟量输入采集和转换 2、将结果显示 3、测试并运行,改变模拟量输入 4、验证 5、完成课程设计说明书 三、设计工作量 1周完成 进度安排 起止日期工作内容 12月14日分组、任务分配、课题理解 12月15日-12月17日功能分析、程序设计 12月18日-12月19日实验验证和测试 12月20 日总结、书写实验报告 参考资料[1] 王实甫. 嵌入式Linux系统设计与实例开发. 吉林大学出版社,2004年 [2] 田丰兴. 嵌入式控制系统. 北京航空航天大学出版社,2002年 指导教师(签字):年月日系(教研室)主任(签字):年月日

湖南工业大学 嵌入式Linux应用程序设计 课程设计说明书 AD驱动 起止日期: 2015年 12月14日至 2015年 12月 20 日 学生姓名皓月叶舞 班级通信1204班 学号124082004XX 成绩 指导教师(签字) 计算机与通信学院 2015年 12月20日

LINUX上机考试试题

《网络操作系统与管理》机考测试题 1.破解超级用户root的密码,将密码改为redhat。 (三个e,一个space+1,一个b) 开机时按e(也可以是任意键),再次按e键进入kenel参数界面; 选中第二行,再次按e键,之后用空格键(space键)+1直接进入runlever1,然后回车; 按b键重新引导系统; #getenforce------------enforcing #setenforce0(关闭防火墙,为1时开启); #getenforce------------permissive #passwd 输入密码并确认; #init6(重启); 2.建立manager组,创建两个用户harry,natasha,他们的附属组都为manager,创建用户strlt,用户strlt的登录shell为非交互式shell。#groupadd manager(创建manager组) #vim/etc/group;(检查是否创建成功) (创建两个用户) #useradd harry–G manager #useradd natasha–G manager (创建用户strlt,用户strlt的登录shell为非交互式shell) #useradd–s/sbin/nologin strlt (检查) #vim/etc/passwd #vim/etc/group 3.将/etc/fstab复制到/var/tmp/fstab,设置harry可以读写,natasha 不能做任何操作,其他用户可读,设置manager组为fstab的所属组。(复制) #cp/etc/fstab/var/tmp/fstab (设置manager组为fstab的所属组) #chgrp manager/var/tmp/fstab (设置harry可以读写) #setfacl–m u:harry:rw/var/tmp/fstab (设置natasha不能做任何操作) #setfacl–m u:natasha:0/var/tmp/fstab

Linux期末考试复习试题(含答案)

1 Linux期末考试复习题 --completed on Nov 17,2013 by lvlv 一、选择题 1Linux( B ) A. Linux操作系统具有虚拟内存的能力 B. Linux操作系统不是UNIX Linux上程序不适合UNIX平台上运行 C. Linux操作系统不限制应用程序可用内存的大小 D. Linux一时间可以有多个用户使用主机 Linux TCP/IP Unix Linux上完成的程序移植到Unix Linux操作系统是免费软件 他网络操作系统最大的区别。 2Linux交换分区的作用是(C)。 A B C D 3. 如果执行命令 #chmod 746 file.txt A A. rwxr--rw- B. rw-r--r-- C. --xr—rwx D. rwxr--r— 4. Linux光标上下移动来查 C A cat B. more C. less D. menu less具有more more 5. 若一台计算机的内存为8GB C A64GB B. 128GB C. 16GB D. 32GB 解析:交换分区的大小一般为内存的两倍. 6. 在使用mkdir B A-m B. -p C. -f D.-d 7. 为了能够把新建立的文件系统mount B A. 子目录 B. 挂载点 C. 新分区 D. 目录树 8. 文件exer1的访问权限为rw-r--r-- A 2 A chmod a+x, g+w exer1 B chmod 765 exer1 C chmod o+x exer1 D chmod g+w exer1

9. 关闭linux-C A ctrl+alt+del B shutdown -r C halt D reboot ctrl+alt+del A是退出系统会话 10. ( C) 命令可实现重新启动Linux操作系统。 A init 0 B halt C shutdown-r D shutdown-h init1。init 作是立即完成的。init 0命令用于立即将系统运行级别切换为0init 6命令用于将 系统运行级别切换为6 halt shutdown -h. reboot shutdown -r . 11.假设Red Hat Linux操作系统的/usr/bin/paste paste( D ) 命令来诊断问题。 A rpm-Va B rpm -qf /usr/bin/paste C rpm-qa D rpm -vf /usr/bin/paste 12. 在Linux( C )文件对Web服务器端口进行配置。 A metd.conf B lilo.conf C httpd.conf D resolv.conf 13.在Linux/dev/sdb5标识的是(D)。 A1块IDE硬盘上的第5个逻辑分区 B2块IDE硬盘上的第1个逻辑分区 C1块SCSI硬盘上的第5个逻辑分区 D2块SCSI硬盘上的第1个逻辑分区 sdb5sd表示SCSI b5表示第一个逻辑分区。这是因为Linux 的第一个逻辑分区从5Linux主分区命名为1~4 多可以分割为四个主分区。 14.inittab文件存放在( A )录中。 A /etc 15 /boot C /soln D /root 15. 在Linux操作系统中提供了大量的网络route命令用来查看 ( D) 命令也可以完成该项功能。 A. ifconfig -r B. traceroute C. set D. Netsrar -r 16.Linux系统中在下列 ( A ) 文件中指定了网络路由信息。 A/etc/network B/etc/reso1v.conf C/etc/host conf D/etc/hosts 17.Linux中修改文件权限的命令是 ( B) 。 A chown B chmod C change D Chgrp 18.在Linux pwd命令表示 ( C ) 。 3 A B C D 19.如果在Linux rd命令( C )。

周立功-ARM嵌入式系统基础教程课后习题答案11

第一章 思考与练习 1、举出3个书本中未提到的嵌入式系统的例子。 答:红绿灯控制,数字空调,机顶盒 2、什么叫嵌入式系统 嵌入式系统:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系 统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 3、什么叫嵌入式处理器?嵌入式处理器分为哪几类? 嵌入式处理器是为完成特殊的应用而设计的特殊目的的处理器。 嵌入式微处理器(Embedded Microprocessor Unit, EMPU) 嵌入式微控制器(Microcontroller Unit, MCU) 嵌入式DSP 处理器(Embedded Digital Signal Processor, EDSP) 嵌入式片上系统(System On Chip) 4、什么是嵌入式操作系统?为何要使用嵌入式操作系统? 是一段在嵌入式系统启动后首先执行的背景程序,首先,嵌入式实时操作系统提高了系统的可靠性。 其次,提高了开发效率,缩短了开发周期。再次,嵌入式实时操作系统充分发挥了32 位CPU 的多任务潜力。 第二章 1、嵌入式系统项目开发的生命周期分哪几个阶段?各自的具体任务是什么? 项目的生命周期一般分为识别需求、提出解决方案、执行项目和结束项目4 个阶段。 识别需求阶段的主要任务是确认需求,分析投资收益比,研究项目的可行性,分析厂商所应具备的条件。 提出解决方案阶段由各厂商向客户提交标书、介绍解决方案。 执行项目阶段细化目标,制定工作计划,协调人力和其他资源;定期监控进展, 分析项目偏差,采取必要措施以实现目标。 结束项目阶段主要包括移交工作成果,帮助客户实现商务目标;系统交接给维护人员;结清各种款项。 2、为何要进行风险分析?嵌入式项目主要有哪些方面的风险? 在一个项目中,有许多的因素会影响到项目进行,因此在项目进行的初期,在客户和开发团队都还未投入大量资源之前,风险的评估可以用来预估项目进行可能会遭遇的难题。 需求风险;时间风险;资金风险;项目管理风险 3、何谓系统规范?制定系统规范的目的是什么? 规格制定阶段的目的在于将客户的需求,由模糊的描述,转换成有意义的量化数据。 4、何谓系统规划?为何要做系统规划 系统规划就是拟定一个开发进程,使项目在合理的进程范围中逐渐建构完成。其目地是让客户可以进一步地掌握系统开发的进程,并确定检查点,以让双方确定项目是否如预期中的进度完成。 5、为什么在项目结束前需要进行项目讨论? 项目的讨论一个项目进行的反馈机制。通过这一个程序,项目团队的经验才可以被记录 下来,也就是说,这是一个撰写项目历史的过程。 第三章 1、ARM7TDMI中的T、D、M、I的含义是什么? 64 位乘法指令(带M 后缀的)、支持片上调试(带D 后缀的)、高密度16 位的Thumb 指令机扩展(带T 后缀的)和EmbededICE 观察点硬件(带I 后缀的) 2、ARM7TDMI采用几级流水线?使用何种存储器编址方式? 三级流水线(取指译码执行);使用了冯·诺依曼(V on Neumann )结构,指令和数据共用一条 32 位总线。 3、ARM处理器模式和ARM处理器状态有何区别? 处理器模式指的是处理器在执行程序时在不同时刻所处的不同状态,处理器状态指的是处理器当前所执行的指令集。 4、分别列举ARM的处理器模式和状态。 状态: ARM 状态32 位,这种状态下执行的是字方式的ARM 指令

相关文档
相关文档 最新文档