更加深刻的理解内核驱动
【摘要】
作为一个程序员, 你能够对你的驱动作出你自己的选择, 并且在所需的编程时间和结果的灵活性之间, 选择一个可接受的平衡. 尽管说一个驱动是”灵活”的, 听起来有些奇怪, 但是我们喜欢这个字眼, 因为它强调了一个驱动程序的角色是提供机制, 而不是策略。
这些系列我将从七个实验开始,重新窥探内核的奥妙。
1.观察linux内核行为 编程从 /proc/pro...
作为一个程序员, 你能够对你的驱动作出你自己的选择, 并且在所需的编程时间和结果的灵活性之间, 选择一个可接受的平衡.
尽管说一个驱动是”灵活”的, 听起来有些奇怪, 但是我们喜欢这个字眼, 因为它强调了一个驱动程序的角色是提供机制, 而不是策略。
这些系列我将从七个实验开始,重新窥探内核的奥妙。
1.观察linux内核行为
编程从 /proc/proc /proc
获取内核信息并跟踪
2.shell系统设计
编写shell
命令解释系统,利用元字符控制进程行为
3.内核定时
研究内核时间控制,测量和监控多线程并发执行内核的时间
4.内核模块
设计动态模块,利用模块构造自己的PROC
文件
5.系统调用虚拟内存
研究系统调用的设计方法。实现自定义系统调用,在内核空间和用户空间之间交换数据;利用系统调用探测虚拟内存缺页情况和调度机制
6.同步机制
构造自定义内核同步机制,完成进程组同步执行
7.字符设备驱动
实现一个可动态加载的虚拟字符设备驱动程序
文章来源: xuesong.blog.csdn.net,作者:内核笔记,版权归原作者所有,如需转载,请联系作者。
原文链接:xuesong.blog.csdn.net/article/details/81675326
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)