steel98

Создание новых процессов, запуск внешних программ fork(), system

10.03.2010, 00:21. Показов 12051. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Задача запустить внешнее приложение и получить его ID, для того чтобы в дальнейшем отследить живо оно или нет. Почему-то получаю _всегда_ получаю ID нового процесса на две единицы меньше реального. Например, в программе получаю pid = 20002 , а через ps -ax вижу, что в системе он висит на 20004 :| С созданием новых процессов только начал работать, направьте на верный путь.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <iostream>
#include <sys/types.h>
#include <signal.h>
 
using namespace std;
 
int main() {
 
int pid;
if ((pid = fork()) < 0) {
    cout << "Error\n";
}
else if (pid == 0) {
   /* cout << "Child\n";
    execv("./Program", NULL);
   */
}
else {
    system("mplayer track10.mp3 &");
}
if(kill(pid,0)==0){
cout << "Program Alive! PID: " << pid << "\n";
}
 return 0;
}
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
10.03.2010, 00:21
Ответы с готовыми решениями:

Параллельный запуск процессов с помощью fork(). Проверить код
Правильно ли я накидал параллельный запуск (в данном случае 10 ) процессов с помощью fork() ? if(pipe(filedes) == -1) { ...

Fork создание процессов
Скажите, я правильно написал программку, создающую процессы? /*UTS*/ #include &lt;unistd.h&gt; #include &lt;sys/types.h&gt; #include...

Создание процессов, системный вызов fork()
Доброго времени суток, просьба разъяснить такой вопрос, написал такой код #include &lt;stdlib.h&gt; #include &lt;sys/types.h&gt; ...

2
e-ros
26.11.2010, 12:55
надо mplayer ловить?
system() сама делает еще один дочерний процесс с помощью fork()
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
26.11.2010, 15:34
Вместо system ... надо делать exec (или любой другой вызов из группы exec). Почитай по ним документацию, там маненько сложнее, чем в system. По другому твою постановку задачи не выполнить - system для таких целей не годится

Добавлено через 55 секунд
А... у тебя уже есть закомментированный exec. Т.е. надо дальше развивать эту мысль
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
26.11.2010, 15:34
Помогаю со студенческими работами здесь

Запуск внешних программ из go
Не понимаю, как запустить из golang внешнюю программу Windows, например, notepad++.exe.

Запуск внешних программ
Передо мной стоит задача: считывать данные из текстового файла построчно. В строках содержаться текст, который должен быть на кнопке на...

Запуск внешних программ
uses dos {$M 2048,0,0} begin swapvectors; exec(GetEnv('COMSPEC'),'/C batnik.bat'); swapvectors; end.Хочу запустить батник...

Debian Linux - Создание процессов (дед, отец, сын), fork();
Привет всем. Появилось у меня несколько вопросов по созданию процессов. Может будете ругаться, но реально не могу понять.. Уже гугл...

Запуск внешних программ с PHP
Можно ли сделать так что бы на странице была допустим кнопка по нажатии на которую запускалась программа на Linux. Например даже плеер...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

Новые блоги и статьи
Безопасное программирование в Java и предотвращение уязвимостей (SQL-инъекции, XSS и др.)
Javaican 19.05.2025
Самые распространёные векторы атак на Java-приложения за последний год выглядят как классический "топ-3 хакерских фаворитов": SQL-инъекции (31%), межсайтовый скриптинг или XSS (28%) и CSRF-атаки. . .
Введение в Q# - язык квантовых вычислений от Microsoft
EggHead 19.05.2025
Microsoft вошла в гонку технологических гигантов с собственным языком программирования Q#, специально созданным для разработки квантовых алгоритмов. Но прежде чем погружаться в синтаксические дебри. . .
Безопасность Kubernetes с Falco и обнаружение вторжений
Mr. Docker 18.05.2025
Переход организаций к микросервисной архитектуре и контейнерным технологиям сопровождается лавинообразным ростом векторов атак — от тривиальных попыток взлома до многоступенчатых кибератак, способных. . .
Аугментация изображений с Python
AI_Generated 18.05.2025
Собрать достаточно большой датасет для обучения нейронной сети — та ещё головная боль. Часами вручную размечать картинки, скармливать их ненасытным алгоритмам и молиться, чтобы модель не сдулась при. . .
Исключения в Java: советы, примеры кода и многое другое
Javaican 18.05.2025
Исключения — это объекты, созданные когда программа сталкивается с непредвиденной ситуацией: файл не найден, сетевое соединение разорвано, деление на ноль. . . Список можно продолжать до бесконечности. . . .
Как сделать SSO (Single Sign-On) в C# приложении
stackOverflow 18.05.2025
SSO — это механизм, позволяющий пользователю пройти аутентификацию один раз и получить доступ к нескольким приложениям без повторного ввода учетных данных. Вы наверняка сталкивались с ним, когда. . .
Kubernetes с Apache Flink для обработки данных в реальном времени
Mr. Docker 17.05.2025
Kubernetes — это целая философия управления распределёнными приложениями. В отличие от "примитивных" решений вроде Docker Swarm, K8s (как его ласково называют в тусовке DevOps-инженеров) предлагает. . .
Использование декораторов в Python
py-thonny 17.05.2025
Если вы когда-нибудь задумывались о том, как красиво расширить функциональность кода без лишней возни и дублирования, декораторы в Python — та самая волшебная палочка, которую вы искали. По сути, это. . .
Реализация многопоточных сетевых серверов на Python
py-thonny 16.05.2025
Когда сталкиваешься с необходимостью писать высоконагруженные сетевые сервисы, выбор технологии имеет критическое значение. Python, со своей элегантностью и высоким уровнем абстракции, может. . .
C# и IoT: разработка Edge приложений с .NET и Azure IoT
UnmanagedCoder 16.05.2025
Мир меняется прямо на наших глазах, и интернет вещей (IoT) — один из главных катализаторов этих перемен. Если всего десять лет назад концепция "умных" устройств вызывала скептические улыбки, то. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru