成都网站建设好多科技手机app网页制作
2026/1/10 13:49:01 网站建设 项目流程
成都网站建设好多科技,手机app网页制作,wordpress登录慢,wordpress副标题一#xff0c;什么是父子进程子进程是父进程的一个复制品(副本)。从linux 2.6 之后 #xff08;ubuntu 18 linux 5.4#xff09;子进程在复制父进程内存空间的时候,执行写时复制。刚fork完毕#xff0c;子进程使用的内存空间全部都是父进程的(子进程共享父进程所以的空间)。…一什么是父子进程子进程是父进程的一个复制品(副本)。从linux 2.6 之后 ubuntu 18 linux 5.4子进程在复制父进程内存空间的时候,执行写时复制。刚fork完毕子进程使用的内存空间全部都是父进程的(子进程共享父进程所以的空间)。随着时间的推移父子进程对某个变量或内存区域进行修改这个时候子进程才会开辟对应内存空间。这个技术就是写时复制。二进程的终止以下八种情况时进程会终止1.main函数中程序运行到return2.exit() c库函数会执行io库的清理工作关闭所有 的流以及所有打开的文件。已经清理函数3._exit,_Exit 会关闭所有的已经打开的文件不执行清理函数4.主线程退出5.主线程调用pthread_exit程序异常终止时6.abort7.signal kill pid8.最后一个线程被pthread_cancle三退出后的进程1.僵尸进程 父进程创建子进程后子进程先消亡。对应用户内存空间释放子进程也不会被调度了。但是内核空间中的对应的pcb块没有释放。2.孤儿进程父进程创建子进程后父进程先消亡。子进程会寻找新的父进程。孤儿进程不用过多关注。因为他的回收问题由新的父进程回收。退出函数1.exit 库函数 退出状态终止的进程会通知父进程自己使如何终止的。如果是正常结束终止则由exit传入的 参数。如果是异常终止则有内核通知异常终止原因的状态。任何情况下负进程都能使用waitwaitpid获 得这个状态以及资源的回收。 void exit(int status) exit(1); 功能: 让进程退出,并刷新缓存区 参数 status:进程退出的状态 返回值: 缺省 参数可选值 EXIT_SUCCESS 0 EXIT_FAILURE 1 return 当该关键字出现在main函数中时候可以结束进程 如果在其他函数中则表示结束该函数。 exit - 刷新缓存区 - atexit注册的退出函数 - _exit 2._exit 系统调用 void _exit(int status); 功能: 让进程退出,不刷新缓存区 参数: status:进程退出状态 返回值: 缺省四进程空间的回收因为子进程退出后对应的pcb 没有释放。导致子进程并没有完全退出。如果父进程是一个需要长期运行并需要多次创建子进程(运行时长相对都比父的短)的进程那么时间一长linux内核空间就会有大量的僵尸进程的pcb 会导致linux 内核内存空间不足。系统就不稳定或崩溃。可以使用ps 或top 查看pid_t wait(int *status); 功能该函数可以阻塞等待任意子进程退出 并回收该进程的状态。 只能父进程回收子进程状态。 参数status 进程退出时候的状态 如果不关心其退出状态一般用NULL表示 如果要回收进程退出状态则用WEXITSTATUS回收。 返回值成功 回收的子进程pid 失败 -1 WIFEXITED(status) 是不是正常结束 WEXITSTATUS(status) 使用这个宏去那返回值 WIFSIGNALED(status) 是不是收到了信号而终止的 WTERMSIG(status)如果是信号终止的那么是几号信号。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询