一、基础题
1.解释命令ls -a | more具体含义.
2.LINUX中的管道指什么重定向又指什么
3.GCC -g -o test.elf test.c的具体含义.
4.浅述GCC编译器在编译时都有哪几个过程
5,在题3的基础上编写一MAKEFILE文件,要求能自动完成编译和清除功能
6.说明uclinux 和linux的区别
7解释下面一组GDB命令的含义.
break 94
run
info line 121
8.什么是链接脚本其作用是什么请编写一个简单的链接脚本
9.编写一个SHELL脚本程序,将当前目录及其子目录中所有后缀为.O类型文件的文件名输出到用户指定的文件中.
10.请写出5个LINUX基本系统调用的函数名称.
11.描述LINUX中字符设备驱动的基本编成框架.
12.编写一个hello world程序,要求以创建进程的方式打印hello world.
13.浅谈bootloader,kelnel,filesystem三者之间的关系.
14.Linux系统下.ko文件是什么文件?.so文件是什么文件?
15.二维数组AA [ 3 ][ 7 ]的另外一种表示方法:
16.请写出下列代码的输出内容
#include “stdio.h”
main()
{
int a,b,c,d;
a=10;
b=a++;
c=++a;
d=10a++;
printf(b,c,d:%d,%d,%d,b,c,d);
return 0;
}
二、 编程题:
1. 写出两个排序算法,并说明哪个好?
2. 打开一个文件,并读取从第100字节开始的50字节数据。
3. 编写一个函数,输入一个的整型数字,可以选择按照81016进制输出字符串。
4. 如果有一个简单的helloworld项目目录如下:
# tree helloworld
helloworld
– file2.h
– file1.cpp
– file2.cpp
请编写一个Makefile文件。
三、 简答题:
ARM-linux启动分几部分,简述流程: