开发Linux下一个类似如文件系统的模块已经两星期了.
问题真是多, 我得熟悉2.4 2.6两个版本的内核.
1>. 2.4 与 2.6 在 Makefile 上差别很大. 要多注意. 2.6 的 Makefile的编写思想很值得学习.
2>. kmalloc, vmalloc, kfree, vfree你一定要搞清楚, 是怎么分配的, 地址应该大概是什么样子的, 很重要.
3>. 在网上找的部分源码不一定是可靠的(很多是有问题的, 自己用了才可以的), 最好的学习还是来源于Linux Kernel源码.
4>. 布置好环境后一定要做到边开发边测试, 一步一步的稳定的向前. 要不错了你自己也不知道错在什么地方, 真的退回到对的地方, 你自己也不知道那地方是对的那就不好了. kernel下调式真是不是太好, 死机那总是有的.
5>. 不要用用户态开发的思想来想内核的问题, 当初学的计算机基础真的很重要, 你遇到问题时一定要将自己放在内核的位置来思考问题. 要不是的复习自己已经学习过的操作系统设计基础知识. (段页式管理, 虚拟内存 ...... 这些东西你真的懂了吗?)
就这些了, 以后慢慢加, 任务还没有完成, 继续努力!!!
阅读(4067) | 评论(3) | 转发(0) |