我正在为一个在Linux内核中寻找僵尸并收割僵尸的类写一个项目。
我已经找到了创建单个僵尸的代码,该僵尸在wait()之后收获,但我的程序必须收获很多僵尸,大约1000个。
我对内核操作/多线程非常陌生,我在网上找到的关于僵尸的资源要么太技术性,要么模棱两可。
这是我使用的代码:
pid_t child_pid;
child_pid = fork ();
if (child_pid > 0) {
sleep (60);
} else {
exit (0);
}再一次,我的问题是:我应该如何开始创建多个僵尸,让我的程序收获?
非常感谢-Jared
发布于 2013-02-15 02:38:11
僵尸只不过是一个被终止的进程,它的父进程没有读取他的退出状态(简而言之:父进程在子进程退出后没有调用wait() ),并使内存和资源处于繁忙状态。
要实现所需的功能,只需派生许多进程(例如,使用循环),并且永远不要调用wait()
https://stackoverflow.com/questions/14881584
复制相似问题