Linux系统调用列表
本文列出了大部分常见的Linux系统调用,并附有简要中文说明。 以下是Linux系统调用的一个列表,包含了大部分常用系统调用和由系统调用派生出的的函数。这可能是你在互联网上所能看到的唯一一篇中文注释的Linux系统调用列表,即使是简单的字母序英文列表,能做到这么完全也是很罕见的。 按照惯例,这个列表以man pages第2节,即系统调用节为蓝本。按照笔者的理解,对其作了大致的分类,同时也作了一些小小的修改,删去了几个仅供内核使用,不允许用户调用的系统调用,对个别本人稍觉不妥的地方作了一些小的修改,并对所有列出的系统调用附上简要注释。 其中有一些函数的作用完全相同,只是参数不同。(可能很多熟悉C++朋友马上就能联想起函数重载,但是别忘了Linux核心是用C语言写的,所以只能取成不同的函数名)。还有一些函数已经过时,被新的更好的函数所代替了(gcc在链接这些函数时会发出警告),但因为兼容的原因还保留着,这些函数我会在前面标上“*”号以示区别。 一、进程控制: fork
创建一个新进程 clone
按指定条件创建子进程 execve
运行可执行文件 exit
中止进程 _exit
立即中止当前进程 getdtablesize
进程所能打开的最大文件数 getpgid
获取指定进程组标识号 setpgid
设置指定进程组标志号 getpgrp
获取当前进程组标识号 setpgrp
设置当前进程组标志号 getpid
获取进程标识号 getppid
获取父进程标识号 getpriority
获取调度优先级 setpriority
设置调度优先级 modify_ldt
读写进程的本地描述表 nanosleep
使进程睡眠指定的时间 nice
改变分时进程的优先级 pause
挂起进程,等待信号 personality
设置进程运行域 prctl
对进程进行特定操作 ptrace
进程跟踪 sched_get_priority_max
取得静态优先级的上限 sched_get_priority_min
取得静态优先级的下限 sched_getparam
取得进程的调度参数 sched_getscheduler
取得指定进程的调度策略 sched_rr_get_interval
取得按RR算法调度的实时进程的时间片长度 sched_setparam
设置进程的调度参数 sched_setscheduler
设置指定进程的调度策略和参数 sched_yield
进程主动让出处理器,并将自己等候调度队列队尾 vfork
创建一个子进程,以供执行新程序,常与execve等同时使用 wait
等待子进程终止 wait3
参见wait waitpid
相关文档:
看LDD3中设备模型一章,觉得思维有些混乱。这里从整体的角度来理理思路。
本文从四个方面来总结一些内容:
1.底层数据结构:kobject,kset.
2.linux设备模型层次关系:bus_type,device,device_driver.
3.集成:PCI设备驱动模型实例及设备,设备驱动注册源码的简单分析.
4.面向对象的思想在linux设备模型中的应用分析.
......
在Linux 2.6内核中,devfs被认为是过时的方法,并最终被抛弃,udev取代了它。Devfs的一个很重要的特点就是可以动态创建设备结点。那我们现在如何通过udev和sys文件系统动态创建设备结点呢?
用udev在/dev/下动态生成设备文件,这样用户就不用手工调用mknod了。
利用的kernel API:
&nb ......
纪晓岚曾经说:“世间的道理与事情,都在古人的书中说尽,现在如再著述,仍然超不过古人的范围,又何必再多著述。”于是他一生之中,从不著书,只是编书--整理前人的典籍,将中国文化作系统的分类,以便于以后的学者们学习。自己的著作只有『阅微草堂笔记』一册而已。
&nb ......
目 录
驱动
I/O端口
from smth
基本结构
驱动程序
具体实现
PCI
loopback
Sis 900
ISA总线DMA的实现
驱动
Linux系统支持三种类型的硬件设备:字符设备、块设
< type="text/javascript">< type="text/jav ......
下载JRE(Java Runtime Environment) 。(http://java.sun.com/javase/downloads/index.jsp)
ii. [root@localhost ~]#mkdir /usr/local/java
iii. (将档案jre-1_5_0_09-linux-i586-rpm.bin下载到/usr/local/java目录下)
iv. (超级用户模式)
[root@localhost ~]#s ......