Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

запуск программы из другой и получение ее pid

54K
29 ноября 2009 года
promary
1 / / 29.11.2009
Подскажите, пожалуйста, нужно сделать следующее: из программы надо запустить другую, которая например печатает "Привет". Я так понимаю, это делается так: pid = execvp('hello.c', 0); Но после выполнения exec-а в программе больше ничего не делается, т е нужно создать процесс и в нем уже писать exec.. Или не так? Поясните, пожалуйста..
361
29 ноября 2009 года
Odissey_
661 / / 19.09.2006
Вам надо почитать как работает fork, exec, wait. Простейший пример может быть таким

Код:
#include<stdlib.h>
#include<unistd.h>

int main()
{
     pid_t process_pid;
     process_pid = fork();
     if (process_pid != 0)
        {
            printf("Children PID %d\n", process_pid);
        wait(0);
        }
     else
            execl("/bin/ls/", "ls","-l",NULL);
     return 0;
}


Но судя по тому как вы вызваете execvp все таки советую вам ознакомиться с литературой. Например того же Богатырева из прикрепленного топика с литерутурой.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог