摘要:
27.1 进程组 27.1.1 进程组介绍 进程组为一个或多个进程的集合 进程组可以接受同一终端的各种信号,同一个信号发送进程组等于发送给组中的所有进程 每个进程组有唯一的进程组 ID 进程组的消亡要等到组中所有的进程结束 进程组的消亡:kill 发送信号给进程组 kill -9 -进程组号 kil 阅读全文
摘要:
26.1 system 函数 26.1.1 函数说明 system(执行shell 命令)相关函数 fork,execve,waitpid,popen 函数功能:简化 exec 函数 函数说明 system()会调用 fork() 产生子进程,由子进程来调用 /bin/sh -c string 来执 阅读全文
摘要:
25.1 介绍 在用 fork 函数创建子进程后,子进程往往要调用一种 exec 函数以执行另一个程序 当进程调用一种 exec 函数时,该进程完全由新程序代换,替换原有进程的正文,而新程序则从其 main 函数开始执行。因为调用 exec 并不创建新进程,所以前后的进程 ID 并未改变。exec 阅读全文
摘要:
参考文档: linux 内核剖析:https://www.ibm.com/developerworks/cn/linux/l-linux-kernel/ 1.1 linux 内核历史 在 20 世纪 60 年代,MIT(Massachusetts Institute of Technology)和一 阅读全文
摘要:
24.1 wait 函数说明 24.1.1 waitpid 等待子进程中断或结束 waitpid(等待子进程中断或结束) 相关函数 wait,fork 函数说明 waitpid() 会暂时停止目前进程的执行,直到有信号来到或子进程结束。 如果在调用 wait() 时子进程已经结束,则 wait()会 阅读全文
摘要:
23.1 进程链和进程扇 23.1.1 概念 进程链:一个父进程构建出一个子进程,子进程再构建出子子进程,子子进程构建出子子子进程。。。。 这种就为进程链 进程扇:一个父进程构建出多个子进程,子进程都是由同一个父进程构建出来 23.1.2 进程链的构建 process_link.c 运行: 执行 p 阅读全文
摘要:
22.2 父子进程操作文件 文件操作由两种模式: IO 系统调用操作文件 标准C IO 操作文件 看代码: 编译运行后,两个文件都生成了。 父进程文件 s.txt 子进程文件 s_fd.txt 系统调用不经过缓存,执行 write 后就直接写进了文件当中,标准IO是写入缓存了。 创建的缓存是在堆当中 阅读全文
摘要:
22.1 fork 和 vfork 函数 22.1.1 函数说明 函数说明: 一个现有进程可以调用fork函数创建一个新进程。 由fork创建的新进程被称为子进程(child process)。 fork函数被调用一次但返回两次。 两次返回的唯一区别是子进程中返回 0 值而父进程中返回子进程 ID。 阅读全文
摘要:
21.1 进程查看和进程状态 21.1.1 ps 指令 ps 指令通常可以查看到进程的 ID、进程的用户 ID、进程状态和进程的 Command ps:查看当前用户启动的进程 ps -ef:详细查看后台进程信息,可以用 ps -ef | more 进行分屏查看 ps -aux:当前运行的进程占用的C 阅读全文
摘要:
21.1 进程资源限制 在操作系统中,我们能够通过函数getrlimit()、setrlimit()分别获得、设置每个进程能够创建的各种系统资源的限制使用量。 21.1.1 函数 函数功能:获得资源限制,存放在 rlp 指向的结构体中 函数参数: @resource:见下面的说明 @rlp:指向结构 阅读全文