嵌入式系统Linux内核开发工程师必须掌握的三十道题
1) Linux中主要有哪几种内核锁?
2) Linux中的用户模式和内核模式是什么含意?
3) 怎样申请大块内核内存?
4) 用户进程间通信主要哪几种方式?
5) 通过伙伴系统申请内核内存的函数有哪些?
6) 通过slab分配器申请内核内存的函数有?
7) Linux的内核空间和用户空间是如何划分的(以32位系统为例)?
8) vmalloc()申请的内存有什么特点?
9) 用户程序使用malloc()申请到的内存空间在什么范围?
10) 在支持并使能MMU的系统中,Linux内核和用户程序分别运行在物理地址模式还是虚拟地址模式?
11) ARM处理器是通过几级也表进行存储空间映射的?
12) Linux是通过什么组件来实现支持多种文件系通的?
13) Linux虚拟文件系统的关键数据结构有哪些?(至少写出四个)
14) 对文件或设备的操作函数保存在那个数据结构中?
15) Linux中的文件包括哪些?
16) 创建进程的系统调用有那些?
17) 调用schedule()进行进程切换的方式有几种?
18) Linux调度程序是根据进程的动态优先级还是静态优先级来调度进程的?
19) 进程调度的核心数据结构是哪个?
20) 如何加载、卸载一个模块?
21) 模块和应用程序分别运行在什么空间?
22) Linux中的浮点运算由应用程序实现还是内核实现?
23) 模块程序能否使用可链接的库函数?
24) TLB中缓存的是什么内容?
25) Linux中有哪几种设备?
26) 字符设备驱动程序的关键数据结构是哪个
27) 设备驱动程序包括哪些功能函数?
28) 如何唯一标识一个设备?
29) Linux通过什么方式实现系统调用?
30) Linux软中断和工作队列的作用是什么?
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。