fork

    -1热度

    1回答

    我在需要调用另一个程序“b.pl”的终端上运行perl程序“a.pl”,然后将环境变为tcl shell。程序“b.pl”设置了我必须在主程序“a.pl”中使用的环境变量,之后我需要在由“b.pl”创建的tcl环境中运行新命令。请看下面的例子中 程序:a.pl #!/usr/intel/bin/perl -w use strict; use warnings; #t

    -1热度

    2回答

    我试图使用fork与execvp同时运行两个shell命令。我有两个问题,当我输入mkdir folder1&mkdir folder2时,它会创建一个名为folder1的文件夹和另一个名为folder2?(该问号包含在文件夹名称中)的文件夹。另一个问题是执行这两个命令后代码退出。 下面是代码: #include <stdio.h> #include <stdlib.h> #include <

    1热度

    1回答

    如果我让根特权进程模拟一些较小的用户并分支一个子进程,那么假设子进程拥有用户权限并且与根无关,那么安全吗?我使用默认的自定义方法作为用户,并恢复到所有者的信誉(root)。他们被抽象化。但通常,这些方法会将整个过程的上下文更改为用户的上下文(可能包括uid,gid等)。

    2热度

    1回答

    我编写调用fork()来创建子进程的C应用程序。该应用程序以root身份运行。在父进程中,我使用wait()来等待终止子进程。在子进程中,我使用prctl()和PR_SET_PDEATHSIG选项来检测父进程的死亡。它工作正常。为了降低安全问题的风险,子进程调用setuid()来更改UID。问题是:子进程无法检测到父进程的死亡。 我已搜查四处寻找答案,发现一些有用的链接,但它并不能帮助: Dete

    1热度

    1回答

    我从来没有得到过这个;我正在做一个简单的程序:创建子进程的父进程,并在它终止之后;这是代码 #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <sys/types.h> #include <sys/wait.h> int child(pid_t pid) { printf("proce

    -2热度

    2回答

    我在c程序中有两个炉台,create_open_log_file()和write_to_log_file()以及一个全局文件指针。 当这些函数被调用时,日志文件按预期创建(我可以在目录中看到它)。然后调用write_to_log_file()并创建子进程。在这一点上,我会预期字符串test test test将被写入该文件中的一个循环。字符串child process打印在终端o我知道代码正在执行

    2热度

    1回答

    我尝试在下面的代码的同时,开始100个处理: int cnt = 0; void sig_handler(int signo) { pid_t pid; int stat; pid = wait(&stat); cout << "cnt:" << ++cnt << ", pid:" << pid << " signal:" << signo << end

    0热度

    1回答

    我想在Node.js中使用child_process.fork函数来产生一个新进程。该示例也适用于spawn函数。 为了确保这些子进程均匀利用机器上的所有内核,我希望设置它们的CPU关联性,从而迫使它们迁移到期望的内核。 我知道如何在C和终端中做到这一点,但我怎么会在Node.js中做到这一点?

    1热度

    1回答

    我对linux编程相对较新。我想知道在fork()之后调用的exec()函数是否会导致父进程中的数据丢失。

    3热度

    2回答

    我从主控主机到从属主机执行ZFS远程复制,其中我有一个在主控主机上运行的Perl脚本。 对于每个文件系统,ssh到远程主机并在监听模式下启动mbuffer,然后脚本继续并发送数据。成功时,mbuffer应该自行退出。 问题 这是相当困难的开始mbuffer通过ssh远程主机上,然后可以继续在脚本。我最终做了你可以在下面看到的内容。 问题是,在脚本退出之前,它会为每个文件系统处理一个文件系统。 问题