一、 基础内容
1 、Linux内核移植实验
问题回答
1. 交叉编译环境包括哪些工具,它的作用是什么?
答:GNU的交叉编译器,包括以下组件:
(1). Gcc交叉编译器,即在宿主机上开发编译目标上可运行的二进制文件;
(2). Binutils辅助工具,它是一组二进制工具程序集,包括objdump、objcopy等,能够对二进制文件进行处理;
(3). Gdb调试器,能够对执行程序进行源码或汇编级调试。
2. 简述Linux的启动过程。
答:1.加载BIOS;2.读取MBR;3.Boot
Loader;4.加载内核;5.用户层init根据inittab文件设定运行等级;6.init进程执行rc.sysinit;7.启动内核模块;8.执行不同运行级别的脚本程序;9.执行/etc/rc.d/rc.local。
2、Linux基本应用程序编写实验
问题回答
1. 简述交叉编译的基本概念,简述x86平台和ARM平台编译环境的异同;
答:通常,程序是在一台计算机上编译,然后再分布到将要使用的其他计算机上。当主机系统(运行编译器的系统)和目标系统(产生的程序将在其上运行的系统)不兼容时,该过程就叫做交叉编译。
2. 简述Makefile文件的作用和基本组成;
答:Makefile文件的作用有点类似于DOS下的批处理文件,通过编写Makefile文件,用户可以将一个很复杂的程序(可能包含上百个甚至更多的源文件或者目录)通过简单的make命令进行编译。。Makefile文件描述了整个工程的编译,连接等规则。其中包括:工程中的哪些源文件需要编译以及如何编译;需要创建那些库文件以及如何创建这些库文件、如何最后产生我们想要的可执行文件。
规则:用于说明如何生成一个或多个目标文件,
规则格式如下:
targets:
prerequisites
command
目标 依赖
命令
3. CVT-PXA270中怎样将编写的应用程序下载到Linux中,怎样在Linux中运行该程序?
答:CVT-PXA270通过NFS将主机的/tftpboot/目录挂接到目标机的/mnt/nfs目录中,因此需要将交叉编译的应用程序拷贝到主机的/tftpboot/目录。在bin文件所在目录下使用./bin文件名运行该程序。
3、
Linux驱动程序编写实验
问题回答
1. 简述Linux设备驱动程序的基本概念和编写方法;
答:在Linux中,设备驱动程序是操作系统内核和机器硬件之间的接口。设备驱动程序为应用程序屏蔽了硬件的细节,这样在应用程序