我是靠谱客的博主 多情棒球,最近开发中收集的这篇文章主要介绍嵌入式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 )

[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

二、简答题(前5题每题8分,最后一题10分,共60分)

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

交叉开发环境 Bootloader  kernel  rootfs

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

arm-none-linux-gnueabi-addr2line  0xc029b66c  -e  vmlinux  -f

arm-none-linux-gnueabi-objdump  -D vmlinux  > vmlinux.dis 然后通过阅读汇编代码定位

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

第一阶段汇编实现。设置CPU模式,屏蔽中断,关闭MMU和cache,

初始化内存控制器,搬运u-boot到内存,设置堆栈(sp),清空BSS段

第二阶段C实现。填充板级信息,初始化外设,执行命令

4. 设置u-boot中环境变量(10分 )

(1)u-boot使用网络需设置哪些环境变量,且需要注意哪些问题(3分)

主要是下边两个:

ipaddr

serverip

需要注意的为:ipaddr 和 serverip 需在同意网段,器serverip和 Ubuntuip一直

(2)通过网络加载内核并启动内核、让内核使用网络挂载文件系统,如何设置(3分)

setenv bootcmd tftp 41000000 uImage ; tftp 42000000 exynos4412-fs4412.dtb;bootm 41000000 - 42000000

setenv bootargs root=nfs nfsroot=192.168.1.27:/source/rootfs ip=192.168.1.200 init=/linuxrc console=ttySAC2,115200

(3) eMMC的命令,烧写的内核镜像到eMMC中,具体实现命令?(4分)

tftp 41000000 uImage

movi write kernel 41000000

5. 回答以下内核相关问题( 10分)

⑴ 配置内核与编译内核镜像的命令分别是什么? ( 2分)

make menuconfig

make uImage

⑵ 以你所学的平台为例,第一次配置内核时,应使用的缺省内核配置文件是什么?(2分)

arch/arm/configs/exynos_defconfig

⑶ printk支持几种打印级别?(2分)

8种

⑷ 使用Kconfig语法写一个选项,选项名称为“setup” 默认值为y  ( 4分)

config TEST-----TEST可用任意内容替代

bool “setup”---bool可用tristate替代

default y

---help---

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

(1)你移植嵌入式文件系统时,使用的是什么工具(2分)

busybox

(2)内核启动后,执行的第一个应用程序是哪一个应用程序(2分)

/linuxrc

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

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

系统初始化要执行的一个脚本程序

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

/etc/fstab

最后

以上就是多情棒球为你收集整理的嵌入式linux华清远见考试,华清远见系统移植考试复习题的全部内容,希望文章能够帮你解决嵌入式linux华清远见考试,华清远见系统移植考试复习题所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(45)

评论列表共有 0 条评论

立即
投稿
返回
顶部