Linux内核和驱动考试题
Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。以下是小编整理的Linux内核和驱动考试题,希望大家认真阅读!
填空题
1. Linux的设备驱动分为 _________________三类,串口是什么类型设备______?
2.下面的程序,在Ubuntu PC的'terminal运行,打印几个hello__________
main()
{
fork();
printf("hello ");
fork();
printf("hello ");
while(1);
}
3. 用>=,>, =, <, <= 连接进程的如下4个内存描述形式,分析它们之间的大小关系:
VSS______________ RSS
PSS_______________RSS
USS_______________PSS
4. 下面这个程序,三次打印的data分别是__, __, __。
int data = 10;
int child_process()
{
printf("Child process %d, data%d ",getpid(),data);
data = 20;
printf("Child process %d, data%d ",getpid(),data);
_exit(0);
}
int main(int argc,char* argv[])
{
if(vfork()==0) {
child_process();
}
else{
sleep(1);
printf("Parent process %d,data %d ",getpid(), data);
}
}
5. 请描述内核代码如下三种编译方式的含义
[] ____________________
[*] __________________
[M] ___________________
6. gdb设置断点的指令是______,单步n和s的区别是____________________________________
7. 下面一段python程序:
hello.py
print "Hello World! Love, Python"
echo 3 > /proc/sys/vm/drop_caches后,第2次运行比第一次运行快的原因是?
______________________________________________________________
______________________________________________________________
8. 请用公式描述下图free命令中数字的关系
a = ___________ + ________
g = b - ________ - _________
h = c + ________ + _________
问答题
1. 描述内核atomic, spinlock, mutex这三个锁分别的实用场景和主要区别
2. 论述Linux设备驱动模型里面,总线、设备和驱动三者各自的作用及关系。
【Linux内核和驱动考试题】相关文章: