更加深刻的理解内核驱动

作为一个程序员, 你能够对你的驱动作出你自己的选择, 并且在所需的编程时间和结果的灵活性之间, 选择一个可接受的平衡.
尽管说一个驱动是”灵活”的, 听起来有些奇怪, 但是我们喜欢这个字眼, 因为它强调了一个驱动程序的角色是提供机制, 而不是策略。

这些系列我将从七个实验开始,重新窥探内核的奥妙。

1.观察linux内核行为
编程从 /proc/proc /proc获取内核信息并跟踪

2.shell系统设计
编写shell命令解释系统,利用元字符控制进程行为

3.内核定时
研究内核时间控制,测量和监控多线程并发执行内核的时间

4.内核模块
设计动态模块,利用模块构造自己的PROC文件

5.系统调用虚拟内存
研究系统调用的设计方法。实现自定义系统调用,在内核空间和用户空间之间交换数据;利用系统调用探测虚拟内存缺页情况和调度机制

6.同步机制
构造自定义内核同步机制,完成进程组同步执行

7.字符设备驱动
实现一个可动态加载的虚拟字符设备驱动程序

猜你喜欢

转载自blog.csdn.net/qq_33487044/article/details/81675326