嵌入式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

1

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

2

[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

3

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

4

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分) 安装在该目录下的所有文件系统

5

联系合同范文客服:xxxxx#qq.com(#替换为@)