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

Ваш аккаунт

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

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

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

несколько вопросов по программированию в linux

37K
25 октября 2010 года
gepa
16 / / 22.12.2008
очередь сообщений

есть 2 программы

в первой создаем очередь, заполняем ее и отправляем

-нужно в качестве первого сообщения передать полное имя текущего каталога
-во второе имена всех файлов текущего каталога написанных на С (*.c)
-в третье имена всех двоичных файлов (*.bin)

делаем через pipe, про первое понятно делаем system("pwd") и передаем
для 2го и 3го сообщения можно сделать system("ls -ltr | grep .c") и соответственно system("ls -ltr | grep .bin") но тут тогда получается что передаются все имена в которых есть "с" и "bin"....


во второй программе нужно прочитать 2-е сообщение и определить количество строк в каждом файле

тут принимаем 2ое сообщение с помощью msgrcv
вывод количество строк это команда "wc -l" и тут вопрос как эту все записать в printf?


Разделяемая область памяти и семафоры

тут задание такое программа 1 - создать набор семафоров и РОП. Из информации переданной из программы 2 выделить имена тех пользователей, которые работают в системе более 20 минут, а также время, когда какой-либо процесс последним изменял управляющие параметры РОП.
2-программа - записать в РОП созданную программой 1, список всех пользователей работающих в настоящее время в системе

список всех пользователей это через команду who, а как выделить пользователей работающих более 20 минут?

а про изменение параметров РОП это вызов shm_ctime

Гнезда(сокеты)

Программа1. Создать гнездо домена UNIX типа virtual circuit. Назначить ему адрес. Среди поступивших от клиентов сообщений, отфильтровать такие, которые содержат шаблон «S».
Программа2. Создать гнездо домена UNIX типа virtual circuit. Послать в серверное гнездо сообщение, содержащее полную информацию о списке всех активных процессов в системе не управляемых терминалами.
Программа3. Создать гнездо домена UNIX типа virtual circuit. Послать в серверное гнездо сообщение, содержащее полную информацию о списке всех активных процессов в системе управляемых терминалами.


тут у меня первый вопрос по поводу типа сокета. У нас есть системный вызов int socket(int domain, int type, int protocol) в качестве type может быть или sock_stream или sock_dgram т.е. получается что тип sock_stream?

следующий у меня вопрос про шаблон S ... тут как я понял пользователь выбирает какую информацию получить из программы2 или из программы3
как это лучше реализовать?

и естественно вопрос какие ключи должны быть у команды ps


Заранее спасибо за помощь!

P.S. большая просьба не отсылать к man
392
29 октября 2010 года
cronya
421 / / 03.01.2009
Есть хороший сайт с примерами сюда пажалуйста Opennet.ru
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог