// Семафоры Posix в Linux // Программа из учебника "Системное программирование в среде Linux", Гунько А.В., стр. 123 // Название: semcreate.c // Описание: создание семафоров //pxsem/semcreate.c #include #include #include #include #include #include #include #define FILE_MODE S_IRUSR | S_IWUSR int main(int argc, char **argv) { int c, flags; sem_t *sem; unsigned int value; flags = O_RDWR | O_CREAT; value = 1; while ((c = getopt(argc, argv, "ei:")) != -1) { switch (c) { case 'e': flags |= O_EXCL; break; case 'i': value = atoi(optarg); break; } } if (optind != argc - 1) { printf("usage: semcreate [ -e ] [ -i initialvalue ] \n"); exit(-1); } sem = sem_open(argv[optind], flags, FILE_MODE, value); printf("Result:%s\n",strerror(errno)); sem_close(sem); exit(0); }