linux用户空间与内核的接口

1.内核提供给用户层的接口:

    1)systemcall

   2)procfs命令:virtual filesystem,编译选项:Filesystems Pseudo filesystems/proc file system support

   3)sysctl命令:用户层查看和修改系统变量,并将结果保存在/proc/sys目录下,编译选项:General setupSysctl support

   4)sysfs命令:2.6之后的内核支持命令,编译选项:Filesystems Pseudo filesystemssysfs
filesystem support (NEW)." The option is visible only if you firstenable the following option:
"General setup Configure standard kernel features (for smallsystems)."

 

2.ioctl系统调用:传统的ifconfig以及route命令会调用该函数

Netlink socket:IPROUTE2相关命令会使用该接口

 

3.procfs和sysctl都输出内核内部信息,前者主要输出只读数据,后者则可以写入

 

4.多数网络功能在初始化时都会在/proc中注册一个或多个文件

 

5./proc中的目录可以通过proc_mkdir创建,文件则可以通过定义在linux/include/linux/proc_fs.h中的proc_net_fops_create和proc_net_remove注册和删除

 

6.sysctl:目录/proc/sys,该目录下的一个文件对应一个内核变量

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章