当前位置:文档之家› 嵌入式linux系统移植试题

嵌入式linux系统移植试题

嵌入式linux系统移植试题
嵌入式linux系统移植试题

嵌入式Linux系统移植试题【时间:60分钟】

姓名:()

一、单项选择题【每题2分,共70分】

1.嵌入式linux系统移植不包括(D )

[A] bootloader[B] linux内核[C] 根文件系统[D] 应用程序

2.下列选项中符合gcc的编译流程的是(A)

[A] 预处理->编译->汇编->连接[B] 预处理->汇编->编译->连接[C] 编译->预处

理->汇编->连接[D] 预处理->连接->汇编->编译

3.下列二进制工具哪个是丢弃目标文件的全部或者特定符号,减少文件体积的(D)

[A] size[B] as [C] nm [D] strip

4.下列二进制工具哪个是用来反汇编的(B )

[A] nm[B] objdump [C] objcopy [D] string

5.下列二进制工具哪个是用来进行目标格式转换的(C)

[A] nm[B] objdump [C] objcopy [D] string

6.下列二进制工具哪个是用来把程序地址转换为文件名和行号的(D)

[A] nm[B] objdump [C] objcopy [D] addr2line

7.FS4412开发平台上,uImage被解压到什么地址(B )

[A] 0x40000000 [B] 0x40008000 [C] 0x41000000 [D] 0x43e00000

8.编译Linux内核设备树文件使用什么命令(D )

[A] make dtbi[B] make tags [C] make dtb [D] make dtbs

9.linux要求bootloader在运行内核前,让系统进入何种模式(B )

[A] user[B] svc [C] system

10.u-boot的命令中存放自启动命令的环境变量是(D )

[A] ipaddr [B] bootargs [C] bootm [D] bootcmd

11.u-boot的命令中,设置环境变量的命令是(A )

[A] setenv [B] printenv [C] tftp [D] bootm

12.u-boot中存放内核启动参数的环境变量是(C )

[A] bootcmd[B] bootdelay [C] bootargs [D] ipaddr

13.在内核配置时,哪个关键词是来包含下一级Kconfig (B )

[A] menu endmenu[B] source [C] choice endchoice [D] depends on

14.在内核配置时,哪个关键词是来创建一个选项菜单(D)

[A] menu endmenu[B] source [C] choice endchoice [D] config

15.内核配置的结果保存在哪个文件中(C )

[A] Kconfig[B] Makefile [C] .config [D] System.map

16.下列函数适合在内核解压后,console初始化以前使用的是(B )

[A] puts[B] printascii [C] printk [D] printf

17.当console初始化以后,一般最为简单的内核调试方式为(A )

[A] printk[B] puts [C] bdi2000 [D] kgdb

18.下列哪些文件系统可以运行在eMMC上(C )

[A] yaffs2[B] ios9660 [C] ext3 [D] tmpfs

19.下列哪些文件系统是只读的(D )

[A] ext2[B] yaffs2 [C] ext2 [D] cramfs

20.下列不占用任何磁盘空间的文件系统是(D )

[A] yaffs2[B] jffs2 [C ] cramfs [D] tmpfs

21.u-boot使用网络需设置下面哪些环境变量(AB )

[A] ipaddr[B] serverip[C ] bootcmd [D] bootargs

22.通过nfs挂载根文件系统,需要设置u-boot下面哪些环境变量(ABD )

[A] ipaddr[B] serverip[C ] bootcmd [D] bootargs

23.u-boot下通过nfs自启动,需要设置哪些环境变量(ABCD )

[A] ipaddr[B] serverip[C ] bootcmd [D] bootargs

24.针对我们的目标板,u-boot下烧写命令,下面哪个是正确的(A )

[A] movi write u-boot 0x41000000

[B] movi write kernel 0x21000000

[C] movi write dtb 0x22000000

[D] movi write rootfs 0x42000000

25.针对当前我们移植的项目,主机侧tftp共享目录和nfs共享目录,描述正确的是(AB )

[A] tftp共享目录,存放的是供目标板下载的文件

[B] nfs共享目录,存放的是供目标板子系统挂载的根文件系统

[C ] tftp和nfs都是提供给uboot使用的

[D] tftp共享目录和nfs共享目录是不一样的,不能设置成同一目录

26.查找u-boot启动代码时,需要通过哪个文件来查找它的入口函数名(C )

[A] start.S[B] head.S[C ] u-boot.lds [D] vmlinux.lds

27.编译内核,可以使用下面哪个命令(AB)

[A] make

[B] make uImage

[C] make dtbs

[D] make menuconfig

28.配置内核,可以使用下面哪个命令(D )

[A] make

[B] make uImage

[C] make dtbs

[D] make menuconfig

29.我们当前目标板,第一次配置内核时,需要使用下面哪个配置文件(A )

[A] exynos_defconfig

[B] .config

[C] kconfig

[D] make menuconfig

30.Printk支持种打印级别(C )

[A] 6[B] 7[C ] 8 [D] 9

31.我们根文件系统的制作,使用的是哪个工具(B )

[A] gcc [B] busybox [C] ld [D] ar

32.针对我们移植的系统,内核启动时,调用的第一个可执行程序是下面哪个(B )

[A] init [B] linuxrc [C] inittab [D] bin

33.针对我们当前移植的系统,根文件系统和nfs,下面描述正确的是(BCD )

[A] 根文件系统就是nfs

[B] 根文件系统依赖nfs进行挂载

[C] 只有linux系统才会用到nfs,uboot不使用nfs

[D] nfs路径是通过uboot传入的

34.关于设备树,下面描述正确的是(CD )

[A] linux系统,一定需要设备树

[B] 设备树只有arm才能用

[C] 设备树一种描述硬件的数据结构,由一系列被命名的结点和属性组成

[D] 设备树有一个root结点”\”,,root结点下可以有一系列子节点,子节点一定要在root 节点下

35.系统移植过程中,出现了问题,我们第一步需要怎么处理(BD )

[A] 在uboot烧写完成后,发现没有任何显示在putty,我们可以增加printk进行调试。

[B] 在uboot烧写完成后,发现ping命令执行不了,我们可以尝试开启ping命令。

[C] 发现uImage 下载不了,我们尝试重新编译uImage。

[D] 发现内核加载过程中,出现了oops或其他异常,我们尝试反汇编查看问题原因。

二、简答题【共30分】

1. 简述嵌入式linux系统移植的主要内容有哪些?(4分) ()

<1>搭建交叉编译环境

<2>根据芯片手册和用户资料进行bootloader的选择和移植

<3>Kernel的配置、编译、移植和调试

<4>根文件系统的制作

2. 针对我们的目标板,如何定位下边oops信息错误位置?( 6分) ()

Unable to handle kernel NULL pointer dereference at virtual address 00000000

pgd = c0004000

[00000000] *pgd=00000000

Internal error: Oops: 805 [#1]

last sysfs file:

Modules linked in:

CPU: 0 Not tainted (2.6.35 #21)

PC is at s3c_fb_probe+0xc/0x67c

LR is at platform_drv_probe+0x1c/0x24

pc : [] lr : [] psr: a0000013

sp : cfc29f0c ip : cfc457c0 fp : 00000000

r10: 00000000 r9 : 00000000 r8 : c03bbb40

r7 : c03b7a18 r6 : c03b7a18 r5 : c03a3310 r4 : 00000000

r3 : 000000ff r2 : cfc28000 r1 : 00000000 r0 : c03a3308

Flags: NzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment kernel PC is at s3c_fb_probe+0xc/0x67c 找到对应的地址

3.描述u-boot启动流程( 10分) ()

第一阶段:

设置CPU工作模式(SVC)、关中断、MMU

内存初始化

自搬运

设置堆栈、清空BBS段为第二除段C作准备

第二阶段:

初始化GPIO、串口、网口等需要用到的外围设备

执行命令

加载内核

4. 回答以下文件系统相关问题( 10分) ()

(1)inittab语法,下面这句话是什么功能( 5分)

::sysinit:/etc/init.d/rcS

该文件的功能主要有两个:

一个是将不同的文件系统挂载到根文件系统下的某个目录内

二是新建kernel所需的目录

(2)mount –a 命令会读取哪个配置文件?(5分)

安装在该目录下的所有文件系统

嵌入式linux基本操作实验一的实验报告

实验一linux基本操作实验的实验报告 一实验目的 1、熟悉嵌入式开发平台部件,了解宿主机/目标机开发模式; 2、熟悉和掌握常用Linux的命令和工具。 二实验步骤 1、连接主机和目标板;(三根线,网线直接连接实验箱和PC机,实验箱UART2连接主机的UART口)。 2、Linux命令的熟悉与操作 PC端:在PC机的桌面上打开虚拟机,并启动Linux系统,打开命令终端,操作Linux基本命令,如:查看:ls,进入目录:cd,创建文件:mkdir,删除文件:rmdir,配置网络:ifconfig,挂载:mount,设置权限:chmod,编辑器:vi,拷贝:cp等命令,要求能熟练操作。 使用方法: 1.查看:ls Ls列出文件和目录 Ls–a 显示隐藏文件 Ls–l 显示长列格式ls–al 其中:蓝:目录;绿:可执行文件;红:压缩文件;浅蓝:链接文件;灰:其他文件;红底白字:错误的链接文件 2.进入目录:cd 改变当前目录:cd 目录名(进入用户home目录:cd ~;进入上一级目录:cd -) 3.创建文件:mkdir 建立文件/目录:touch 文件名/mkdir目录名 4.删除文件:rmdir 删除空目录:rmdir目录名 5.配置网络:ifconfig 网络- (以太网和WIFI无线) ifconfig eth0 显示一个以太网卡的配置 6.挂载:mount mount /dev/hda2 /mnt/hda2 挂载一个叫做hda2的盘- 确定目录'/ mnt/hda2' 已经存在 umount /dev/hda2 卸载一个叫做hda2的盘- 先从挂载点'/ mnt/hda2' 退出fuser -km /mnt/hda2 当设备繁忙时强制卸载 umount -n /mnt/hda2 运行卸载操作而不写入/etc/mtab文件- 当文件为只读或当磁盘写满时非常有用 mount /dev/fd0 /mnt/floppy 挂载一个软盘 mount /dev/cdrom /mnt/cdrom挂载一个cdrom或dvdrom mount /dev/hdc /mnt/cdrecorder挂载一个cdrw或dvdrom mount /dev/hdb /mnt/cdrecorder挂载一个cdrw或dvdrom mount -o loop file.iso /mnt/cdrom挂载一个文件或ISO镜像文件

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

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) 底行模式。

linux系统编程试卷(答案)

凌阳教育 嵌入式培训系统编程部分测试试题 注:考试为闭卷,程序题需上机操作运行出结果,考试时间为120分钟 一:选择题(本题共4小题,每题3分共12分) 1)下列不是Linux系统进程类型的是( D ) A 交互进程 B 批处理进程 C 守护进程 D 就绪进程(进程状态) 2)以下对信号的理解不正确的是( B ) A 信号是一种异步通信方式 B 信号只用在用户空间进程通信,不能和内核空间交互 C 信号是可以被屏蔽的 D 信号是通过软中断实现的 3)进程有三种状态( C ) A 准备态、执行态和退出态 B 精确态、模糊态和随机态 C 运行态、就绪态和等待态 D 手工态、自动态和自由态 4)不是进程和程序的区别( B) A 程序是一组有序的静态指令,进程是一次程序的执行过程 B 程序只能在前台运行,而进程可以在前台或后台运行 C 程序可以长期保存,进程是暂时的 D 程序没有状态,而进程是有状态的 二:填空题(本题共6小题,2)、3)两题每空四分,其余每空一分。共23分) 1) 列举八种常见的进程间通信方式无名管道、有名管道、消息队列、信号量、共享内存、信号、套接字 网络上两个主机的进程间通信方式为套接字 2) 命名管道比无名管道的优势提供了一个可以访问的路径名,实现没亲缘关系的进程 间通信 3) 消息队列比命名管道和无名管道的优势可以按类型实现消息的随机查询,没必要先 进先出 4) 按照逻辑结构不同进行数据库划分,Sqlite 数据库属于哪一类关系型数据库 5) 在C语言中操作sqlite数据库,常用的2中方式是sqlite_exec(回调)、

sqlite_gettable(非回调) 6) 列举四种进程调度算法先来先调度(FCFS)、短进程优先调度(SPF)、高优先级调度 (HPF)、时间片轮转调度 三:问答题(本题共7题,每题5分,共35分) 1) 什么是系统调用?系统调用是通过什么方式陷入内核态的?请写出你对系统调用的理解。什么是文件I/O和标准I/O库?文件I/O和标准I/O库的区别? 系统调用是指操作系统提供给用户程序调用的一组特殊接口,用户程序可以通过这组接口获得操作系统内核提供的服务。 系统调用是通过软件中断方式陷入内核的 linux的文件I/O是由操作系统提供的基本IO服务, 标准I/O库通过封装系统调用,提供了一个到底层I/O的接口。 标准I/O默认采用了缓冲机制,还创建了一个包含文件和缓冲区相关数据的数据结构;文件I/O一般没有采用缓冲模式,需要自己创建缓冲区。一种是标准库封装系统调用而成,更高级,一种是系统提供的,比较低级;标准I/O可移植性高、文件I/O可移植性低。 2) 什么是进程?用fork()创建一个子进程时,系统会做什么工作 进程是具有独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配的单位,不仅是系统内部独立运行的实体也是独立竞争资源的实体。 用fork()时系统会分配子进程一个ID号然后继承父进程的地址空间,包括进程上下文进程堆栈打开的文件描述符等等,他就是父进程的一个复制品。 3) 进程和线程有什么区别? 每个独立的进程有一个程序运行的入口、顺序执行序列和程序的出口。但是线程不能够独立执行,必须依存在进程程中,由进程提供多个线程执行的控制。 进程是系统进行资源分配和调度的一个独立单位. 线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源但是它可与同属一个进程的其他的线程共享进程所拥有的全部资源. 一个线程可以创建和撤销另一个线程;同一个进程中的多个线程之间可以并发执行。 4) 什么是线程的互斥和同步,程序应怎样写才能达到互斥或同步? 互斥:是指某一资源同时只允许一个访问者对其进行访问,具有唯一性和排它性。但互斥无法限制访问者对资源的访问顺序,即访问是无序的。 同步:是指在互斥的基础上(大多数情况),通过其它机制实现访问者对资源的有序访问。在大多数情况下,同步已经实现了互斥,特别是所有写入资源的情况必定是互斥的。少数情况是指可以允许多个访问者同时访问资源。 在写程序时可以用互斥锁和信号量实现线程同步,一个线程访问共享资源时给这个资源上锁其他线程就不能访问了直到上锁的进程释放互斥锁为止。 5) 什么是僵尸进程?孤儿进程?守护进程? 僵尸进程:僵尸进程是指它的父进程已经退出(父进程没有等待(调用wait/waitpid)它),而该进程dead之后没有进程接受,就成为僵尸进程,也就是(zombie)进程。 孤儿进程:一个父进程退出,而它的一个或多个子进程还在运行,那么那些子进程将成

i.MX6UL -- Linux系统移植过程详解(最新的长期支持版本)

i.MX6UL -- Linux系统移植过程详解(最新的长期支持版本) ?开发平台:i.MX 6UL ?最新系统: u-boot2015.04 + Linux4.1.15_1.2.0 ?交叉编译工具:dchip-linaro-toolchain.tar.bz2 源码下载地址: U-Boot: (选择rel_imx_4.1.15_1.2.0_ga.tar.bz2) https://www.doczj.com/doc/de15315176.html,/git/cgit.cgi/imx/uboot-imx.git/ Kernel: (选择rel_imx_4.1.15_1.2.0_ga.tar.bz2) https://www.doczj.com/doc/de15315176.html,/git/cgit.cgi/imx/linux-2.6-imx.git/ 源码移植过程: 1、将linux内核及uBoot源码拷贝到Ubuntu12.04系统中的dchip_imx6ul目录下; 2、使用tar命令分别将uboot和kernel解压到dchip_imx6ul目录下; 3、解压后进入uboot目录下,新建文件make_dchip_imx6ul_uboot201504.sh,且文件内容如下: ################################################################### # Build U-Boot.2015.04 For D518--i.MX6UL By FRESXC # ################################################################### #!/bin/bash export ARCH=arm export CROSS_COMPILE=/dchip-linaro-toolchain/bin/arm-none-linux-gnueabi - make mrproper # means CLEAN make mx6ul_14x14_evk_defconfig make2>&1|tee built_dchip_imx6ul_uboot201504.out 4进入kernel目录下,新建文件make_dchip_imx6ul_linux4115120.sh,且文件内容如下: ###################################################################

《嵌入式系统与开发》构建嵌入式Linux系统-实验报告

《嵌入式数据库sqlite移植及使用》 实验报告 学生姓名:陈彤 学号:13004405 专业班级:130044 指导教师:孙国梓 完成时间:2016.5.31 实验3 嵌入式数据库sqlite移植及使用 一.实验目的 理解嵌入式软件移植的基本方法,掌握sqlite数据库软件移植的步骤,掌握sqlite开发的两种方式—命令模式和C代码开发模式的使用方法,并编程实现简单通讯录查询实验。 二.实验内容 实验3.1 移植嵌入式数据库sqlite 实验3.2 简单通讯录查询实例设计和测试 三.预备知识 Linux使用、数据库相关知识等 四.实验设备及工具(包括软件调试工具) 硬件:ARM 嵌入式开发平台、PC 机Pentium100 以上、串口线。 软件:WinXP或UBUNTU开发环境。 五.实验步骤 5.1 移植嵌入式数据库sqlite 步骤【参看教材103页】: 第一步,解压缩sqlite源码,命令tar zxvf sqlite-autoconf-3080900.tar.gz,在解压后的文件夹下,可以看到源码文件有shell.c 和sqlite3.c文件,生成Makefile的配置脚本文件configure.ac ,并检查当前文件夹下__A__(A.存在 B.不存在)Makefile文件。 第二步利用configure脚本文件生成基于ARM实验台的Makefile,具体命令为./configure CC=arm-linux-gcc –prefix=/opt/sqlite –host=arm-linux(假设安装目录为/opt/sqlite),并检查当前文件夹下___A__(A.存在 B.不存在)Makefile文件。 第三步,编译sqlite,命令为_make_,编译过程中使用的编译器为_ arm-linux-gcc _。 第四步,安装sqlit,命令为_make install_。安装完成后到_/opt/sqlite_文件夹下去查看相关文件,可以看到该文件夹下有_bin_、_include_、__lib__和share文件夹,其中可执行文件sqlite3位于_./bin_文件夹,库位于_./lib_文件夹。 第五步,将sqlite3拷贝到开发板bin目录下,将库下的文件拷贝到开发板的lib目录下【注意链接文件的创建】 第六步,数据库的使用 方式1:命令操纵数据库 在超级终端环境下创建数据库stucomm.db,命令为_sqlite3 stucomm.db_; 创建数据表stutable,字段包括id 整型,name 字符型,phoneNum 字符型,具体命令为_sqlite> create table stutable (id int(20),name char(20),phoneNum char(20));_; 插入2条记录,记录信息如下 001,zhangsan,10086 002,lisi,10000

嵌入式系统模拟试题及答案

学习中心/函授站_ 姓名学号 西安电子科技大学网络与继续教育学 院 2014学年下学期 《嵌入式系统》期末考试试题 (综合大作业) 题号一二三四五总分 题分2010302020 得分 考试说明: 1、大作业于2014年12月25日下发,2015年1月10日交回; 2、考试必须独立完成,如发现抄袭、雷同均按零分计; 3、答案须手写完成,要求字迹工整、卷面干净。 一、问题简述(每小题4分,共20分) 1、简述嵌入式系统的定义和组成结构。 答:嵌入式系统是以应用为中心,以计算机技术为基础,并软硬件可剪裁、功能、 ,可靠性、体积、重量、成本、功耗、成本、安装方式等方面符合要求的专用计算机系统。 嵌入式系统一般由嵌入式微处理器、存储与I/O部分、外设与执行部分、嵌入式软件等四个部分组成。 2、简单说明ARM微处理器的特点。 答:(1) 体积小、低功耗、低成本、高性能。 (2) 支持Thumb(16位)/ARM(32位)双指令集,能很好地兼 容8位/16位器件。

(3) 大量使用寄存器,指令执行速度更快。 (4) 大多数数据操作都在寄存器中完成,通过Load/Store结 构在内存和寄存器之间批量传递数据。 (5) 寻址方式灵活简单,执行效率高。 (6) 指令长度固定。 3、简述嵌入式系统产品的设计和开发过程。 答:①在嵌入式系统的开发过程中,一般采用的方法是首先在通用PC机上的集成开发环境中编程;②然后通过交叉编译和链接,将程序转换成目标平台(嵌入式系统)可以运行的二进制代码;③接着通过嵌入式调试系统调试正确;④最后将程序下载到目标平台上运行。 要强调,选择合适的开发工具和调试工具,对整个嵌入式系统的开发都非常重要。 4、简述嵌入式系统设计中要考虑的因素。 答:在嵌入式系统的开发过程中,要考虑到实时性、可靠性、稳 定性、可维护性、可升级、可配置、易于操作、接口规范、抗干 扰、物理尺寸、重量、功耗、成本、开发周期等多种因素。 5、什么是BootLoader,了解其在嵌入式系统中作用。 答:就是启动载入或引导加载又叫自举装载。由于系统加电后需 要首先运行BootLoader这段程序,因此它需要放在系统加电后 最先取指令的地址上。嵌入式处理器的生产厂商都为其处理器预 先安排了一个在系统加电或复位后最先取指令的地址。 二、名词解释(每小题2分,共10分) 1、DSP(Digital Signal Processor),数字信号处理器,一种特别用于快速处理数字信号的微处理器。DSP处理器对系统结构和指令进行了特殊设计,使其适合于执行DSP算法,编译效率较高,指令执行速度也较高。 2、RTOS Real Time Operating System. 译为实时操作系统。实时系统是指一个能够在指定的或者确定的时间内,实现系统功能和对外部或内部、同步或异步事件作出响应的系统。 3、BSP设计板级支持包(BSP)的目的主要是为驱动程序提供访问硬件设备寄存器的函数包,从而实现对操作系统的支持。类似于PC机上的BIOS,是一个承上启下的软件层次。由嵌入OS和用户开发相结合取得。BSP一般是在嵌入式系统上固化存放。 4、总线竞争就是在同一总线上,同一时刻,有两个以上器件要通

linux期末考试练习题

基础知识 linux系统的应用领域:嵌入式领域、应用服务器、软件开发、桌面应用 linux系统的特点:开放性、多用户、多任务、良好的用户界面、设备独立性、良好的可移植性、丰富的网络功能、可靠的系统安全 linux系统的组成:内核、shell、文件系统、应用程序 linux系统下的文件类型:普通文件、设备文件、目录文件、管道文件、链接文件 软链接文件与硬链接文件的区别:硬链接记录的是目标的inode,软链接记录的是目标的路径。软链接就像是快捷方式,而硬链接就像是备份。软链接可以跨分区的链接,而硬链接由于inode的缘故,只能在本分区中做链接。 Linux的目录结构:/、/home、/root、/bin、/sbin、/dev、/lib、/tmp、/mnt、/boot、/proc、/opt、/selinux、/var、/etc、/usr、/lost+found、/srv 关机与重启.shutdown(-k并不真正关闭,只是发出警告信息给所有用户,-r关闭后立即重启,-h关闭后不重启,-f快速关闭,重启时不进行磁盘检测,-n快速关闭,不经过init程序关机,-c中断关闭系统,[-time]设定关闭前的时间)halt(-w并不是真正关闭或重启,只是写“wtmp “记录,-d不写”wtmp“记录,-f没调用“shutdown”而强制关闭或重启,-i关闭或重启前关掉所有的网络接口,-p该选项为缺省选项,即“power off”)root重启init 0关闭 init 1重启Man手册与help:使用man手册页、使用help命令、whereis命令(b只查找二进制文件,m查找主要文件,s查找来源,u查找不常用的记录文件) 什么是shell:Shell就像一个壳层,这个壳层介于用户和操作系统之间,负责将用户的命令解释为操作系统可以接收的低级语言,并将操作系统响应的信息以用户可以了解的方式来显示。使用;命令先执行命令1,不管命令1是否出错,接下来执行命令2,使用&&命令只有当命令1正确运行完毕后才能执行命令2,命令别名alias,取消别名unalias,输出重定向command > file输入重定向command < file错误重定向command 2> fie追加重定向command >> file同时实现输出和错误重定向command &> file 基础命令 Pwd显示工作目录路径,cd更改工作目录路径,ls列出子目录和文件信息,touch创建空文件、更改文件或目录时间,mkdir创建目录,rmdir删除空目录(-p递归删除目录),cp复制文件和目录,mv移动或更名现有文件或目录(-i系统询问,-f不询问),rm删除文件或目录(-f忽略不存在的文件,不给出提示,-r将参数中列出的全部目录和子目录均递归删除,-i提示是否删除),wc统计文件字节数、字数或行数(-l统计行数,-w统计单词数,-c统计字符数),ln创建链接文件(-s 创建软链接),cat显示文本文件(-n由1开始编号,-b对非空行编号,-s连续两行以上的空白行替换为一行空白行),more分页显示文本文件(按空格键显示下一页,按b返回上一页),less回卷显示文本文件,head显示指定文件前若干行(-n显示开头的几行,默认为前10行,-q表明不显示文件名的首部,-v表明要显示文件名的首部),tail查看文件末尾数据(+num从num行以后开始显示文件内容,-num从距文件末尾num行处开始显示文本内容,默认为后10行,-c以字节为计数单位显示文本文件),sort对文件中的数据进行排序(-m若给定文件已经排好序,合并文件,-c检查给定文件是否已排好序,若都没有排好序,则打印一个出错信息,并以状态值1退出,-u 对排序后认为相同的行只留其中一行,-d按字典顺序排,-f将小写与大写同等对待,-I忽略非打印字符,-r按逆序输出排序结果),uniq将重复行从输出文件中删除(-c在每行行首加上本行在文件中出现的次数,-d只显示重复行,-u只显示不重复行),cut从文件每行中显示出选定的字节、字符或字段,comm比较两个已排过序的文件(-1不显示只在第1个文件里出现过得行,-2不显示只在第二个文件里出现的行,-3不显示只在第1和2文件里出现过得行),diff逐行比较两个文本文件,列出其不同之处(-b忽略行尾的空格,-c采用相异之处的上下文输出格式,-e采用一个合法的ed脚本作为输出,-r当file1和file2是目录时,递归作用到各文件和目录上),grep查找文件中符合条件的字符串,find列出文件系统中符合条件的文件或目录(-name按文件名查找文件,-perm按照文件权限查找,-user按文件属性,-group按文件所属的组,-cmin n在过去n分钟内被修改过的文件,-ctime n在过去n天内被修改过的文件,-size n大小为n的文件,-type查找某一类型的文件),locate在数据库中查找文件,whereis查找指定文件、命令和手册页位置,file 查询文件类型,whatis查询命令功能,which显示可执行命令路径,uname显示计算机及操作系统相关信息(-a显示全部信息,-m显示计算机硬件类型,-n显示在网络上的主机名称,-r显示操作

嵌入式Linux系统移植试题

嵌入式Linux系统移植试题(时间:1个半小时) 一、选择题(每题2分,共50分,包括单选和多选,多选、少选均不得分) 1.嵌入式linux系统软件部分一般包括() [A] bootloader[B] linux内核[C] 根文件系统[D]用户应用程序 2.一般情况下,在搭建嵌入式linux开发环境时主机需要安装的软件有() [A] 串口通信软件[B] tftp服务器[C] nfs服务器[D]usb 3.下列选项中符合gcc的编译流程的是( ) [A] 预处理->编译->汇编->连接[B] 预处理->汇编->编译->连接[C] 编译->预处 理->汇编->连接[D预处理->连接->汇编->编译 4.gcc使用下列哪个选项可以查看编译的详细过程() [A] -o[B] -v [C] -E [D] -g 5.下列二进制工具哪个是丢弃目标文件的全部或者特定符号,减少文件体积的() [A] size[B] as [C ] nm [D ] strip 6.下列二进制工具哪个是用来反汇编的() [A] nm[B] objdump [C ] objcopy [D ] string 7.下列二进制工具哪个是用来进行目标格式转换的() [A] nm[B] objdump [C ] objcopy [D ] string 8.下列二进制工具哪个是用来把程序地址转换为文件名和行号的() [A] nm[B] objdump [C ] objcopy [D ] addr2line 9.下列二进制工具哪个是用来将目标文件生成静态库的() [A] ar[B]nm [C ] objcopy [D ] objdump 10.FS2410开发板如果从nand flash启动,启动后()访问到nor flash;如果从nor flash 启动,启动后()访问nand flash。 [A] 可以[B] 不可以 11.SMDK2410开发平台上,linux要求bootloader将内核参数存储在什么位置() [A] 0x30008000 [B] 0x30000100 [C ] 0x30004000 [D ] 0x33f80000 12.SMDK2410开发平台上,linux要求bootloader将平台号保存在() [A] r0[B] r1 [C ] r2 [D ] r3 13.SMDK2410开发平台上,linux要求bootloader在运行内核前,让系统进入何种模式() [A] user[B] svc [C ] system 14.u-boot所支持的命令中,哪个是来设置环境变量的() [A] setenv [B] mm [C ] mtest [D ] bootm 15.u-boot支持的命令中,哪个是擦除nor flash的命令() [A] nand erase[B] protect [C ] erase [D ] cp 16.在内核配置时,哪个关键词是来包含下一级Kconfig( ) [A] menu endmenu[B] source [C ] choice endchoice [D ]depends on 17.内核启动过程中,如果终端出现”Error:a”错误,可能出现的原因是()

南邮嵌入式系统B实验报告2016年度-2017年度-2

_* 南京邮电大学通信学院 实验报告 实验名称:基于ADS开发环境的程序设计 嵌入式Linux交叉开发环境的建立 嵌入式Linux环境下的程序设计 多线程程序设计 课程名称嵌入式系统B 班级学号 姓名 开课学期2016/2017学年第2学期

实验一基于ADS开发环境的程序设计 一、实验目的 1、学习ADS开发环境的使用; 2、学习和掌握ADS环境下的汇编语言及C语言程序设计; 3、学习和掌握汇编语言及C语言的混合编程方法。 二、实验内容 1、编写和调试汇编语言程序; 2、编写和调试C语言程序; 3、编写和调试汇编语言及C语言的混合程序; 三、实验过程与结果 1、寄存器R0和R1中有两个正整数,求这两个数的最大公约数,结果保存在R3中。 代码1:使用C内嵌汇编 #include int find_gcd(int x,int y) { int gcdnum; __asm { MOV r0, x MOV r1, y LOOP: CMP r0, r1 SUBLT r1, r1, r0 SUBGT r0, r0, r1 BNE LOOP MOV r3, r0 MOV gcdnum,r3 //stop // B stop // END } return gcdnum; } int main() { int a; a = find_gcd(18,9);

printf("gcdnum:%d\n",a); return 0; } 代码2:使用纯汇编语言 AREA example1,CODE,readonly ENTRY MOV r0, #4 MOV r1, #9 start CMP r0, r1 SUBLT r1, r1, r0 SUBGT r0, r0, r1 BNE start MOV r3, r0 stop B stop END 2、寄存器R0 、R1和R2中有三个正整数,求出其中最大的数,并将其保存在R3中。 代码1:使用纯汇编语言 AREA examp,CODE,READONL Y ENTRY MOV R0,#10 MOV R1,#30 MOV R2,#20 Start CMP R0,R1 BLE lbl_a CMP R0,R2 MOVGT R3,R0 MOVLE R3,R2 B lbl_b lbl_a CMP R1,R2 MOVGT R3,R1 MOVLE R3,R2 lbl_b B . END 代码2:使用C内嵌汇编语言 #include int find_maxnum(int a,int b,int c)

计算机三级考试《嵌入式系统开发》测试题

计算机三级考试《嵌入式系统开发》测试题三级考试分为“网络技术”,“数据库技术”,“软件测试技术,信息安全技术,嵌入式系统开发技术等五个类别,从2013年下半年开始实施2013版考试大纲,并首次实现全部科目无纸化考试。那么计算机三级考试怎么考?以下仅供参考! 1. 以下是选择嵌入式系统编程语言的衡量标准的是( D ) A.异常事件处理 B.多任务支持 C.程序控制结构 D.以上都是 2. 以下说法正确的是( A ) A.线程响应度高 l B.32位 C.16位 D.8位 6. 以下说法错误的是( D ) A.寄存器的速度最快 B.寄存器容量最小 C.一般用来存储计算的操作数和结果 D.寄存器位于处理器外部 7. 不能决定总线功能的强弱以及适应性的信号线是( C )

A.控制信号线 B.时序信号线 C.中断信号线 D.备用信号线 8. 以下说法错误的是( A ) A.程序就是进程 B.程序是静态的 C.线程响应度高 D.进程是动态的 9. 以下有关进程和程序的说法正确的是( C ) A.进程是静态的 B.一个进程可以对应多个程序 C.一个程序只能对应一个进程 D.程序不是进程 10. 以下不是嵌入式操作系统的是( A ) A.U-Boot B.MontaVista C.Windows CE D.RT-Linux 11. GDB中,用来显示源代码的命令是( B ) A.kill B.list

C.make D.break 12. 1KB等于( B ) A.1024MB B.1024B C.1024GB D.8bit 13. 以下不是嵌入式系统应用领域的是( A ) A.通用软件 B.工业控制 C.消费类电子产品 D.机器人 14. 十进制数100,用十六进制表达为( C ) A.62 B.63 C.64 D.65 15. ARM采用定长指令格式,所有指令都是32位,Bit[24:21]为( C ) A.目标寄存器编码 B.条件执行 C.指令操作符编码

嵌入式linux系统移植试题 - 答案

嵌入式Linux系统移植试题(时间:60分钟) 一、单项选择题(每题2分,共40分) 1.嵌入式linux系统移植不包括(D) [A] bootloader[B] linux内核[C] 根文件系统[D] 应用程序 2.下列选项中符合gcc的编译流程的是(A ) [A] 预处理->编译->汇编->连接[B] 预处理->汇编->编译->连接[C] 编译->预处 理->汇编->连接[D] 预处理->连接->汇编->编译 3.下列二进制工具哪个是丢弃目标文件的全部或者特定符号,减少文件体积的(D ) [A] size[B] as [C] nm [D] strip 4.下列二进制工具哪个是用来反汇编的(B) [A] nm[B] objdump [C] objcopy [D] string 5.下列二进制工具哪个是用来进行目标格式转换的(C ) [A] nm[B] objdump [C] objcopy [D] string 6.下列二进制工具哪个是用来把程序地址转换为文件名和行号的(D) [A] nm[B] objdump [C] objcopy [D] addr2line 7.FS4412开发平台上,uImage被解压到什么地址(B) [A] 0x40000000 [B] 0x40008000 [C] 0x41000000 [D] 0x43e00000 8.编译Linux内核设备树文件使用什么命令(D) [A] make dtbi[B] make tags [C] make dtb [D] make dtbs 9.linux要求bootloader在运行内核前,让系统进入何种模式(B) [A] user[B] svc [C] system 10.u-boot的命令中存放自启动命令的环境变量是(D) [A] ipaddr [B] bootargs [C] bootm [D] bootcmd 11.u-boot的命令中,设置环境变量的命令是(A) [A] setenv [B] printenv [C] tftp [D] bootm 12.u-boot中存放内核启动参数的环境变量是(C)

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

《嵌入式系统》试题 闭卷答题时间:30分钟 一、填空题(请将答案填入题后括号中):共10小题,每小题2分,满分20分。 1、一般而言,嵌入式系统的构架可以分为4个部分:分别是()、存储器、输入/输出和软件,一般软件亦分为操作系统相关和()两个主要部分。 2、根据嵌入式系统使用的微处理器,可以将嵌入式系统分为嵌入式微控制器,(),()以及片上系统。 3、操作系统是联接硬件与应用程序的系统程序,其基本功能有()、进程间通信、()、I/O资源管理。 4、从嵌入式操作系统特点可以将嵌入式操作系统分为()和分时操作系统,其中实时系统亦可分为()和软实时系统。 5、内核负责管理各个任务,或者为每个任务分配CPU时间,并且负责任务之间的(),内核的基本服务是()。 6、嵌入式开发一般采用()方式,其中宿主机一般是指()。 7、哈佛体系结构数据空间和地址空间(),ARM7TDMI采用()的内核架构,ARM920T采用()的内核架构。 采用()级流水线结构,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) (B) (C) (D)OSTaskInit 三、判断题:共5小题,每小题2分,满分10分。 1、所有的电子设备都属于嵌入式设备。() 2、冯诺依曼体系将被哈佛总线所取代。() 3、嵌入式linux操作系统属于免费的操作系统。() 4、移植操作系统时需要修改操作系统中与处理器直接相关的程序。() 5、的最大通信速率为12M/S。() 简答题:共2小题,每小题10分,满分20分。 1、根据嵌入式系统的特点,写出嵌入式系统的定义。 2、试分析实时操作系统的工作状态特点及相互之间的转换。

linux及C试题(含答案)

华清远见嵌入式学院《Linux及C》考试题(B卷) 一、选择题(23题,每空2分,共46分) 1.在使用mkdir命令创建新的目录时,在其父目录不存在时先创建父目录的选项(D )。 A.-m B.-d C.-f D.-p 2.任何时候用户需要回到用户主目录时可以使用命令 ( A ) 。 A. cd B. pwd C. path D. cd . 3.将当前目录下的文件shell.sh移动到目录/home/linux下的命令为( B ) 。 A. cp shell.sh /home/linux B. mv shell.sh /home/linux C. ls shell.sh / home/linux/she ll.sh D. mv /root/shell.sh /home/linux/shell.sh 4.下面( C )命令不能用来显示文件的内容。 [A] more [B] less [C] find [D] cat 5./etc/shadow文件中存放( B )。 A.用户账号基本信息 B.用户口令的加密信息 C.用户组信息 D.文件系统信息 6.LINUX所有服务的启动脚本都存放在( B )目录中。 A./etc/rc.d/init.d B./etc/init.d C./etc/rc.d/rc D./etc/rc.d 7.若要将当前目录中的myfile.txt文件压缩成myfile.txt.tar.gz,则实现的命令为(C )。 A.tar -cvf myfile.txt myfile.txt.tar.gz B.tar -zcvf myfile.txt myfile.txt.tar.gz C.tar -zcvf myfile.txt.tar.gz myfile.txt D.tar -cvf myfile.txt.tar.gz myfile.txt 8.以下程序的运行结果为( C ) #include #include int SubCount(char *dest, int count) { strcpy(dest,"555"); count++; return 0; } int main() { int count = 3; char caBuf[8]; SubCount(caBuf,count); printf("%d\n",count);

计算机三级《嵌入式系统开发技术》考试题及答案

计算机三级《嵌入式系统开发技术》考试题及答案 1. GDB中,终止被调试的程序可以使用命令( B ) A.clear B.kill C.stop D.make 2. 以下不是引导程序的是( D ) A.VIVI B.U-Boot C.BLOB D.RT-Linux 3. 1024MB等于( B ) A.1TB B.1GB C.1KB D.1B 4. 以下是嵌入式系统的是( D ) A.VIVI B.U-Boot C.BLOB D.RT-Linux 5. GDB中,显示表达式的值使用命令( A )

A.display B.show https://www.doczj.com/doc/de15315176.html, D.list 6. EDSP只指( B ) A.嵌入式微控制器 B.嵌入式数字信号处理器器 C.嵌入式微处理 D.嵌入式片上系统 7. 能确定数据传输的宽度的是( A ) A.数据线 B.时序信号线 C.中断信号线 D.电源线 8. 世界上第一台计算机诞生在( B ) A.英国 B.美国 C.法国 D.苏联 9. 十进制数123,用十六进制表达为( C ) A.70 B.7A

C.7B D.7C 10. ARM采用定长指令格式,所有指令都是32位,Bit[15:11]为( B ) A.第一个操作数寄存器 B.目标寄存器编码 C.指示本指令操作是否影响CPSR的值 D.永远是0 11. 决定地线分别方式的线称为( D ) A.备用线 B.控制线 C.电源线 D.地线 12. 打包结束后得到的是一个( A ) A.二进制文件 B.文本文件 C.源文件 D.汇编文件 13. 以下有关进程和程序的说法正确的是( ABC ) A.进程是动态 B.程序是静态的 C.一个程序可以对应多个进程

Linux 基础试题

Linux 基础题库 一.单项选择题 1.下列厂商和操作系统相对应正确的是( B ) A.Digital - MVS B.Sun – Solaris C.IBM – VMS D.HP - VMS 2.Linux系统的1.0版内核的发布是在( C ) A.1992年 B.1993年 C.1994年 D.1995年 3.完全安装Red Hat Linux 8.0需要的磁盘空间是( D ) A.1.8GB B.2.3GB C.400MB D.4.5GB 4.Linux系统是一个( D )的操作系统 A.单用户、单任务 B.单用户、多任务 C.多用户、单任务 D.多用户、多任务5.在安装开始前,用光盘启动系统,想要进入字符界面安装,需要输入的命令是( C )A.linux doc B.linux C.linux text D.linux note 6.Red Hat Linux系统中用户默认的Shell是( A ) A.bash B.ksh C.csh D.sh 7.在Linux系统中,管道的符号是( C ) A.> B.< C.| D.: 8.Linux的文件名的长度限制在( D )字符以内 A.11 B.128 C.256 D.255 9.如果忘记了ls命令的用法,可以采用( C )命令获得帮助 A.?ls B.help ls C.man ls D.get ls 10.在vi编辑器的命令模式中,在光标所在位置的右侧插入字符的命令是( A) A.a B.A C.i D.I 11.在vi编辑器的命令模式中,删除一行的命令是( B ) A.yy B.dd C.pp D.xx 12.以下输出重定向命令中,覆盖存在文件的是( B ) A.>> B.> C.< D.<< 13.在GRUB的配置文件grub.conf中,“timeout=-1”的含义是( C ) A.不等待用户选择,直接启动默认的系统 C.一直等待用户选择要启动的系统 B.在10秒钟内,等待用户选择要启动的系统 D.无效 14.系统中文件系统的挂载配置文件是( A ) A./etc/fstab B./usr/fstab C./etc/mount D./usr/mount 15.在挂载文件系统的时候,如果想要以只读的方式挂载,需要的参数是( A ) A.-o ro B.-o rw C.-a ro D.-a rw 16.要给文件file1加上其他人可执行属性的命令是( C ) A.chmod a+x B.chown a+x C.chmod o+x D.chown o+x 17.添加用户“user”的命令是( B ) https://www.doczj.com/doc/de15315176.html,er user https://www.doczj.com/doc/de15315176.html,eradd user C.add user D.adduser 18.删除用户“user”及其主目录下所有文件的命令是( B ) https://www.doczj.com/doc/de15315176.html,erdel –p user https://www.doczj.com/doc/de15315176.html,erdel –r user https://www.doczj.com/doc/de15315176.html,erdel –a user https://www.doczj.com/doc/de15315176.html,erdel –z user 19.查看系统当中所有进程的命令是( D ) A.ps all B.ps aix C.ps auf D.ps aux 20.显示系统启动时间的命令是( B )

相关主题
文本预览
相关文档 最新文档