11,进程的创建linux的进程创建可以分为两个步骤,分别为fork()和exec()函数,fork()负责创建一个子进程,和父进程的差别仅仅是PID PPID以及一些统计量,exec()函数负责读取可执行文件载入地址空间运行。fork()函数原型pid_t fork(void); 子进程返回0,父...
分类:
系统相关 时间:
2014-10-26 09:07:25
阅读次数:
324
第三章习题3.10.1关键术语阻塞态:进程在某些事件发生之前不能执行,等待这种事件发生的状态。退出态:操作系统从可执行进程组中释放出的进程,自身停止了,或者因某种原因被取消。内核态:某些指令只能在特权状态下执行,而这种特权状态称为内核态。子进程:由一个进程创建的进程,该进程的终止受父进程的影响。中断...
分类:
其他好文 时间:
2014-10-24 23:33:05
阅读次数:
740
为什么程序中,常会用到signal(SIGCHLD,SIG_DFL)执行system函数时,SIGCHLD信号,最好被显示的:signal( SIGCHLD, SIG_DFL )一下,因为system函数中,使用到了fork(),waitpid.如果父进程忽略了SIGCHID信号,waitpid就没...
分类:
其他好文 时间:
2014-10-24 18:37:20
阅读次数:
526
僵死进程简而言之就是:子进程退出时,父进程并未对其发出的SIGCHILD信号进行适当处理,导致子进程停留在僵死状态等待其父进程为其收尸,这个状态下的子进程就是僵死进程。在fork()/execve()过程中,假设子进程结束时父进程仍存在,而父进程fork()之前既没安装SIGCHLD信号处理函数调用...
分类:
系统相关 时间:
2014-10-24 00:09:28
阅读次数:
227
ngx_int_tngx_daemon(ngx_log_t *log){ int fd; // 让init进程成为新产生进程的父进程: // 调用fork函数创建子进程后,使父进程立即退出。这样,产生的子进程将变成孤儿进程,并被init进程接管, // 同时,所产生的新进...
分类:
系统相关 时间:
2014-10-20 18:49:33
阅读次数:
312
孤儿进程和守护进程通过前面的学习我们了解了如何通过fork()函数和vfork()函数来创建一个进程。现在 我们继续深入来学习两个特殊的进程:孤儿进程和守护进程一.孤儿进程1.什么是 孤儿进程如果一个子进程的父进程先于子进程 结束, 子进程就成为一个孤儿进程,它由 init 进程收养,成为 init...
分类:
系统相关 时间:
2014-10-20 16:53:06
阅读次数:
302
Linux内核-进程管理
1.进程
#内核调度的对象是线程,不是进程
#对Linux而言,线程只是特殊的进程
#进程提供两种虚拟机制:虚拟处理器、虚拟内存
#创建进程通过fork()来从父进程复制创建进程
2.进程描述符
#任务队列:双向链表(每一项都是task_struct--->进程描述符)
#Linux通过slab分配器...
分类:
系统相关 时间:
2014-10-19 14:19:49
阅读次数:
214
一面1.算法题目atoi实现2. singleton 和 observer 设计模型observer 中的subscriber和unsubscribe 在多线程下的异常安全性问题(这个不是很清楚)3. 僵尸进程父进程未处理子进程的退出状态,导致占用系统资源(进程号)http://www.cnblog...
分类:
移动开发 时间:
2014-10-19 10:09:13
阅读次数:
230
进程与线程
参考:http://www.cnblogs.com/blueclue/archive/2010/07/16/1778855.html
首先比较Linux进程和线程的创建的区别,以此展开:
创建进程:(1)调用fork(),为子进程新建内核栈、pthread_info和task_struct,复制父进程的大部分的参数,采用写时复制(copy-on-write)辅助父进程...
分类:
编程语言 时间:
2014-10-17 15:30:05
阅读次数:
237
Java程序中可以启动其他的应用程序,这种在Java中启动的进程称为子进程,启动子进程的Java程序称为父进程,其实这个父进程就是一个Java虚拟机1、在Java程序中可以用Process类的实例对象来表示子进程,子进程的标准输入和输出不再连接到键盘和显示器(也就是不再接收键盘输入,和显示器输出),...
分类:
编程语言 时间:
2014-10-17 10:10:13
阅读次数:
260