Вопросы по теме 'fork'

Как лучше всего дублировать fork() в Windows?
Как мне реализовать некоторую логику, которая позволит мне воспроизвести в Windows функции, которые у меня есть в Linux, с системным вызовом fork() , используя Python? Я специально пытаюсь выполнить метод в компоненте SAPI Com, продолжая другую...
30770 просмотров
schedule 02.06.2023

Как я могу разделить подключение к базе данных через разветвленный процесс в Perl?
Я сделал следующие программы на Perl раньше: my $db = DBconnection with DB2 if ($pid = fork()) { #parent } else { #child $db->execute("SELECT ****"); exit; } wait(); $db->execute("SELECT ****"); Я думал, что он...
2152 просмотров
schedule 16.05.2023

Управление вилками в C
У меня есть файл C, который выглядит так: #include <stdio.h> #include <sys/types.h> #include <unistd.h> int main () { pid_t child_pid; printf ("The PID is %d\n", (int) getpid ()); child_pid = fork (); if...
2942 просмотров
schedule 26.01.2023

Сигнал 11 segfault при системном вызове wait ()?
Я работаю над базовой оболочкой на C. В моей реализации каналов я считаю команды в строке и итеративно fork() новый процесс. В конце каждой итерации я wait() выполняю дочернюю операцию, прежде чем переходить к следующей команде. Это отлично...
2207 просмотров
schedule 20.07.2022

отслеживание родительского процесса
Может ли дочерний процесс использовать системный вызов ptrace для отслеживания своего родителя? ОС линукс 2.6 Спасибо. upd1: хочу отследить процесс1 от "себя". Это невозможно, поэтому я делаю fork и пытаюсь сделать ptrace(process1_pid,...
4753 просмотров
schedule 11.01.2024

Обработка SIGCHLD вернет EOF отцу, почему?
У меня есть небольшая оболочка, которая создает дочерние элементы (с помощью fork()) и заставляет их выполнять некоторые команды с помощью execvp. Он также поддерживает опцию &, чтобы отец тем временем мог выполнять другие команды. Когда ребенок...
635 просмотров
schedule 28.04.2023

Поведение трубы после вилки ()
Читая о каналах в разделе «Расширенное программирование в среде UNIX», я заметил, что после вилки родительский элемент может close() читать конец канала и не закрывает конец чтения для дочернего элемента. Когда процесс разветвляется, сохраняются ли...
4809 просмотров
schedule 06.11.2023

Как мне правильно разветвить модуль perl для znc?
В настоящее время я пишу IRC-бота. Скрипты загружаются как Perl-модули в ZNC , но бот отключается с ошибкой ввода-вывода. если я создам разветвленный процесс. Это рабочий пример скрипта без форка, но из-за этого бот зависает до тех пор, пока...
782 просмотров
schedule 25.03.2023

Выдает ли waitpid действительную информацию о статусе дочернего процесса, который уже завершился?
Если я fork дочерний процесс, и дочерний процесс завершается до того, как родительский вызовет waitpid , то информация о статусе выхода, установленная waitpid , все еще действительна? Если да, то когда он станет недействительным; то есть, как...
6505 просмотров
schedule 09.06.2022

Запретить fork() копирование сокетов
У меня следующая ситуация (псевдокод): function f: pid = fork() if pid == 0: exec to another long-running executable (no communication needed to that process) else: return "something" f предоставляется через...
3992 просмотров
schedule 02.05.2022

c языковая проблема
у меня есть проблема c может ли кто-нибудь помочь мне. Я написал код создания процесса на языке c, он использует вызов pid и fork(). вызов fork используется для создания дочернего процесса. Может ли кто-нибудь сказать мне, как создать родительский...
197 просмотров
schedule 10.10.2022

Почему fork() не создает несколько процессов или создает?
Сегодня у нас было школьное упражнение по созданию нескольких процессов. Нашей проблемой был не сам код и не понимание fork(). Проблема, с которой столкнулась я и мой приятель, заключалась в том, что он не создал 4 процесса нашего кода, как...
1199 просмотров
schedule 28.06.2022

Почему демоны разветвляются?
Я знаю, что некоторые (все?) демоны разветвляются при запуске. У меня сложилось впечатление, что это должно запускать дочерние процессы как менее привилегированные пользователи, особенно если демон представляет собой что-то вроде HTTP-сервера....
7000 просмотров
schedule 06.06.2023

POE жалуется, что метод запуска POE::Kernel никогда не вызывался при разветвлении
Это мой код: if ($DAEMON) { my $pid = fork(); if (not defined $pid) { print "Unable to start daemon.\n"; exit(1);...
696 просмотров
schedule 04.11.2023

Разветвить и отказаться от привилегий с помощью Java
Я пишу серверную программу на Java, которая позволит пользователям отправлять задания с использованием DRMAA. Хотя основной серверный процесс работает как root , все, что он делает, это аутентифицирует пользователя, затем запускает другую программу...
1928 просмотров
schedule 07.08.2022

Завершает ли функция C execv() дочерний процесс?
Вот разбивка моего кода. У меня есть программа, которая разветвляет дочерний элемент (и регистрирует pid дочернего элемента в файле), а затем делает свое дело. Потомок становится любой программой, которую программист удостоил argv. Когда дочерний...
9589 просмотров
schedule 14.03.2023

Разветвление нового процесса на C++ и выполнение файла .jar
Я пытаюсь написать программу, которая будет читать вывод из файла java .jar, а также время от времени вводить его. В основном я надеюсь создать программу, которая будет выполнять определенные функции при обнаружении определенного вывода. Файл .jar...
3732 просмотров
schedule 29.08.2023

Разница между pthread и fork в gnu / Linux
В чем принципиальная разница между pthread и fork w.r.t. linux с точки зрения различий в реализации и того, как меняется расписание (различается ли оно?) Я запускал strace в двух похожих программах, одна с использованием pthreads, а другая с...
39037 просмотров
schedule 17.10.2023

Разделяемая блочная память PHP и форк
Я пытаюсь создать счетчик, который использует общую блочную память, просто посмотрите код: $i=0; $counter = new counter('g'); while($i<3){ $pid = pcntl_fork(); echo $counter->get()."\t".$i."\t".$pid."\n"; $i++; } class counter {...
1689 просмотров
schedule 16.03.2022

Что именно возвращает вилка?
В случае успеха PID дочернего процесса возвращается в родительский поток выполнения, а 0 возвращается в дочерний поток выполнения. p = fork(); Я запутался на странице руководства, p равно 0 или PID ?
74386 просмотров
schedule 13.02.2024