Книга: UNIX: взаимодействие процессов
Программа semcreate
Программа semcreate
Первая программа, текст которой приведен в листинге 11.1,[1] просто создает набор семафоров System V. Параметр командной строки –е соответствует флагу IPC_EXCL при вызове semget, а последним аргументом командной строки является количество семафоров в создаваемом наборе.
Листинг 11.1. Программа semcreate
//svsem/semcreate.с
1 #include "unpipc.h"
2 int
3 main(int argc, char **argv)
4 {
5 int с, oflag, semid, nsems;
6 oflag = SVSEM_MODE | IPC_CREAT;
7 while ((c = Getopt(argc, argv, "e")) != –1) {
8 switch (c) {
9 case 'e':
10 oflag |= IPC_EXCL;
11 break;
12 }
13 }
14 if (optind != argc – 2)
15 err_quit("usage: semcreate [ –e ] <pathname> <nsems>");
16 nsems = atoi(argv[optind + 1]);
17 semid = Semget(Ftok(argv[optind], 0), nsems, oflag);
18 exit(0);
19 }
- Программа semunlink
- Программа semgetvalue
- Программа semwait
- Программа sempost
- Программа semrmid
- Программа semsetvalues
- Программа semops
- Программа «Тайный покупатель»
- Программа Victoria
- Подпрограмма обработки прерывания
- Магическая программа, или Беспорядок по расписанию
- Что делать, если вместо русских букв в программах – непонятные символы?