- 博客(2)
- 收藏
- 关注
原创 malloc、alloc、kmalloc、kzalloc、vmalloc的区别
kmalloc()、kzalloc()、vmalloc() 的共同特点是:用于申请内核空间的内存;内存以字节为单位进行分配;所分配的内存虚拟地址上连续;kmalloc()、kzalloc()、vmalloc() 的区别是:kzalloc 是强制清零的 kmalloc 操作;(以下描述不区分 kmalloc 和 kzalloc)kmalloc 分配的内存大小有限制(128KB),而 vmalloc 没有限制;kmalloc 可以保证分配的内存物理地址是连续的,但是 vmalloc 不能保证;
2023-03-23 16:01:02
697
原创 内核驱动模块的开发与编译
内核中已加载模块的信息也存在于/sys/module目录下,加载hello.ko后,内核中将包含/sys/module/hello目录,该目录下又包含一个refcnt文件和一个sections目录,在/sys/module/hello目录下运行tree –a得到目录树。使用“modinfo ”命令可以获得模块的信息,包括模块作者、模块的说明、模块所支持的参数等。当通过rmmod命令卸载某模块时,模块的卸载函数会自动被内核执行,完成与模块卸载函数相反的功能。
2023-03-22 11:07:56
262
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人