shell中执行sh文件时需要开子进程,因此export的环境变量在子进程中,若想要sh中定义的脚本生效,使用source命令,并且可以被子进程继承。而子进程export的内容父进程获取不到
分类:
其他好文 时间:
2014-05-26 13:51:41
阅读次数:
226
1 进程终止的方法:
主线程的进入点函数返回(最好使用这个方法)
进程中的一个线程调用ExitProcesss函数(应该避免使用这种方法)。
另一个进程中的线程调用TerminateProcess函数(应该避免使用这种方法)。
进程中的所有线程自行终止运行(这种情况几乎从未发生)。
1.1 主线程进入点函数返回
始终都应该这样来设计应用程序,即只有当主线程的...
程序A创建子进程,并调用进程B,根据不调用的不同情况,最后显示结果不同。#include
#include #include #include #include int main() { pid_t pid, rpid; int stat; if
((pid = fork()) i...
分类:
系统相关 时间:
2014-05-23 12:35:12
阅读次数:
1758
定义:进程是程序执行时的一个实例。所有进程都有一个父进程。当一个进程创建时,它几乎与父进程相同。她接受父进程地址空间的一个拷贝,并从进行创建系统调用的下一条指令开始执行与父进程相同的代码。尽管父子进程可以共享含有程序代码的页,但是他们各自有独立的数据拷贝。进程描述符
进程状态。进程状态是互斥的。 ....
分类:
其他好文 时间:
2014-05-23 11:37:18
阅读次数:
236
某模块作为前台进程独立运行时,运行命令携带命令行参数;作为某平台下守护进程子进程运行时,需要将命令行参数固化在代码里。类似如下写法:char *argv[] =
{"./DslDriver", "-t", "/bin/VdslModemSco.bin"};int argc = sizeof(ar.....
分类:
系统相关 时间:
2014-05-23 06:44:22
阅读次数:
401
曾几何时,只是一直在调用库函数fork,只知道它创建一个子进程,并且子进程返回值是0,父进程返回值是子进程pid。但是一直没有深究内核代码,今天终于使用gdb调试了一把fork的内核代码,下面就让我们一探究竟吧。
1.创建进程的本质是什么?
根据目前理解,其实就是构造了PCB,这个PCB会唯一标示一个进程的存在,并且会构建子进程的页目录和页表等等。
2.为什么fork()调用会有2个返回值,...
分类:
系统相关 时间:
2014-05-22 10:40:01
阅读次数:
404
1.网络编程中设计并发服务器,使用多进程与多线程 ,请问有什么区别
1,进程:子进程是父进程的复制品。子进程获得父进程数据空间、堆和栈的复制品。
2,线程:相对与进程而言,线程是一个更加接近与执行体的概念,它可以与同进程的其他线程共享数据,但拥有自己的栈空间,拥有独立的执行序列。
区别:两者都可以提高程序的并发度,提高程序运行效率和响应时间。线程和进程在使用上各有优缺点:线程执行开销小,...
分类:
编程语言 时间:
2014-05-22 06:16:44
阅读次数:
386
void DaemonInit(void){ //LOG::INF("[ServerMeeting]
服务初始化.\n"); int pid; //如果是父进程,结束父进程,子进程继续 if(pid=fork()) { exit(0); } /*else
if(pid<0) // 不可能进入...
分类:
其他好文 时间:
2014-05-21 23:01:49
阅读次数:
294
僵尸进程:一个子进程死亡了,但是它的父进程并没有调用wait或waitpid进行状态收集,关于这个进程的描述符还存在系统中,这个子进程就死不瞑目,就成了僵尸进程。孤儿进程:顾名思义,就是没有父进程的进程。在OS中,一个父进程死亡,它的那些还在运行的子进程就成为孤儿进程。孤儿进程会被init进程(pi...
分类:
其他好文 时间:
2014-05-21 19:24:54
阅读次数:
229
线程是一种使程序在同一时间做多件事的机制,和进程一样是并发执行的。linux内核调度为每个线程分配一个时间片,使用完后等待下次调度。和进程相比,线程是一种更小的执行单位。
每个进程启动后都会有一个线程在运行,称为主线程,可以在主线程中启动多个子线程,这些线程在同一个进程中,不同线程在给定时间内执行不同的代码片段。
我们可以fork一个子进程,这个子进程就是对父进...
分类:
编程语言 时间:
2014-05-18 04:58:16
阅读次数:
307