Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Операционные системы » UNIX » Программы под GNU/Linux

Модерирует : ShriEkeR

 Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

Открыть новую тему     Написать ответ в эту тему

Nastya19kiss

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Всем доброго времени суток. Обращаюсь к вам с вопросиком. Передо мной стоит задача написать код, который:
1. Создавай процесс
2. организовывал между нами pipe
3. Передавал информацию от родительского процесса дочернему. Все хорошо, если бы не одно НО...Необходимо использовать ключи:
-i-ввод информации в файл (родителем). Если ключ не указан то стандартный ввод с клавиатуры
-o-вывод информации в выходной файл дочерним процессом
-r-перенаправление потока ошибок в прежде созданный текстовый файл (допустим list.txt)
 
ключи задаются при запуске программы, т.е. пример ./a.out  -i  inputfile-здесь используется входной с файл с информацией для передачи дочернему процессу
 
Начала писать код:
#include....
........
int main(int argc, char *argv[]){
 int input, output,pid
 int fd[2]
 
 input=0;
 output=1;
 for (i=1;i<argc;i++){
  if (strcmp(argv[i],"-i")!=0){
    i++;
    input=open(argv[i],O_RDONLY);
  }
  if  (strcmp(argv[i],"-o")!=0){
    i++;
    unmask(0644);
    output=open(argv[i],J_WRONLY|J_TRUNC|O_SYNC|O_CREAT,0644);
  }
  if  (strcmp(argv[i],"-r")!=0) {
     fd1=open(log.txt,O_WRONLY,1);
     dup2(fd1,2);
  }
вот первая часть готова, в ней я проверяю введенный ключ.
Я так полагаю что дальше я создаю pipe, создаю процесс pid=fork и проверяю если pid>0, то что дальше делать????У меня есть переменные input и output нужно их как то использовать в зависимости от того дочернийй или родительский это процесс
 
ПОМОГИТЕ реализовать этот дальнейший код
     

Всего записей: 63 | Зарегистр. 22-04-2012 | Отправлено: 13:58 25-04-2012
Открыть новую тему     Написать ответ в эту тему

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Операционные системы » UNIX » Программы под GNU/Linux


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru