ИМЯ


shmget - выделяет общий сегмент памяти System V



ОБЗОР


#include <sys/ipc.h>
#include <sys/shm.h>

int shmget(key_t key, size_t size, int shmflg);



ОПИСАНИЕ


Вызов shmget() возвращает идентификатор общего сегмента памяти System V, соответствующего
значению аргумента key. Если значение key равно IPC_PRIVATE или если key не равно
IPC_PRIVATE, но не существует общего сегмента памяти, который бы соответствовал значению key
и в shmflg есть флаг IPC_CREAT, то создаётся новый общий сегмент памяти размером size,
округлённым до значения, кратного PAGE_SIZE.

Если в shmflg одновременно указаны IPC_CREAT и IPC_EXCL и для значения key уже существует
общий сегмент памяти, то вызов shmget() завершается с ошибкой и errno присваивается EEXIST
(такой же результат как с O_CREAT | O_EXCL у open(2)< ... Читать дальше »

Категория: (2) Системные вызовы ядра (функции языка Си) | Просмотров: 388 | Добавил: Администратор | Дата: 24.11.2017 | Комментарии (0)





ИМЯ


shmat, shmdt - операции с общей памятью System V



ОБЗОР


#include <sys/types.h>
#include <sys/shm.h>

void *shmat(int shmid, const void *shmaddr, int shmflg);

int shmdt(const void *shmaddr);



ОПИСАНИЕ


shmat()
Вызов shmat() подключает сегмент общей памяти System V с идентификатором shmid к адресному
пространству вызывающего процесса. Адрес подключения, указанный в shmaddr, учитывается
следующим образом:

* Если значение shmaddr равно NULL, то система выбирает подходящий (неиспользуемый)
выровненный по странице адрес для подключения сегмента.

* Если значение shmaddr не равно NULL, а в shmflg указан флаг SHM_RND, то подключение
производится по адресу shmaddr, округлённому до ближайшего значения кратного SHMLBA.

* В противном случае shmaddr должно быть выровнено по ... Читать дальше »

Категория: (2) Системные вызовы ядра (функции языка Си) | Просмотров: 392 | Добавил: Администратор | Дата: 24.11.2017 | Комментарии (0)





ИМЯ


shmctl - управление общей памятью System V



ОБЗОР


#include <sys/ipc.h>
#include <sys/shm.h>

int shmctl(int shmid, int cmd, struct shmid_ds *buf);



ОПИСАНИЕ


Вызов shmctl() выполняет управляющую операцию, указанную в cmd, над общим сегментом памяти
System V, чей идентификатор задан в shmid.

В аргументе buf содержится указатель на структуру shmid_ds, определённую в <sys/shm.h>
следующим образом:

struct shmid_ds {
struct ipc_perm shm_perm; /* владелец и права */
size_t shm_segsz; /* размер сегмента (байты) */
time_t shm_atime; /* время последнего подключения */
time_t shm_dtime; /* время последнего отключения */
time_t shm_ctime; /* время последнего изменения */
pid_t shm_cpid; /* PID создателя */
pid_t shm_lpid; /* PID последнего выполнявшего
shmat( ... Читать дальше »

Категория: (2) Системные вызовы ядра (функции языка Си) | Просмотров: 501 | Добавил: Администратор | Дата: 24.11.2017 | Комментарии (0)





ИМЯ


shmat, shmdt - операции с общей памятью System V



ОБЗОР


#include <sys/types.h>
#include <sys/shm.h>

void *shmat(int shmid, const void *shmaddr, int shmflg);

int shmdt(const void *shmaddr);



ОПИСАНИЕ


shmat()
Вызов shmat() подключает сегмент общей памяти System V с идентификатором shmid к адресному
пространству вызывающего процесса. Адрес подключения, указанный в shmaddr, учитывается
следующим образом:

* Если значение shmaddr равно NULL, то система выбирает подходящий (неиспользуемый)
выровненный по странице адрес для подключения сегмента.

* Если значение shmaddr не равно NULL, а в shmflg указан флаг SHM_RND, то подключение
производится по адресу shmaddr, округлённому до ближайшего значения кратного SHMLBA.

* В противном случае shmaddr должно быть выровнено по ... Читать дальше »

Категория: (2) Системные вызовы ядра (функции языка Си) | Просмотров: 409 | Добавил: Администратор | Дата: 24.11.2017 | Комментарии (0)





ИМЯ


sgetmask, ssetmask - работа с маской сигналов (устарел)



ОБЗОР


long sgetmask(void);

long ssetmask(long newmask);

Замечание: В glibc нет обёрточных функций для этих системных вызовов; смотрите ЗАМЕЧАНИЯ.



ОПИСАНИЕ


Данные системные вызовы устарели. Используйте вместо них sigprocmask(2).

Вызов sgetmask() возвращает маску сигналов вызывающего процесса.

Вызов ssetmask() устанавливает маску сигналов вызывающего процесса равной значению,
указанному в newmask. Возвращается предыдущее значение маски сигналов.

Маски сигналов обрабатываются этими системными вызовами как простые битовые маски (в отличие
от sigset_t, который используется в sigprocmask(2)); для создания и проверки масок
используйте sigmask(3).



ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ


Вызов sge ... Читать дальше »

Категория: (2) Системные вызовы ядра (функции языка Си) | Просмотров: 390 | Добавил: Администратор | Дата: 24.11.2017 | Комментарии (0)





ИМЯ


setxattr, lsetxattr, fsetxattr - устанавливает расширенное значение атрибутов



ОБЗОР


#include <sys/types.h>
#include <sys/xattr.h>

int setxattr(const char *path, const char *name,
const void *value, size_t size, int flags);
int lsetxattr(const char *path, const char *name,
const void *value, size_t size, int flags);
int fsetxattr(int fd, const char *name,
const void *value, size_t size, int flags);



ОПИСАНИЕ


Расширенные атрибуты представляют собой пару имя:значение и связываются с записями inode
(файлы, каталоги, символьные ссылки и т.п.). Они являются расширениями к обычным атрибутам,
связанным со всеми записями inode в системе (например, данные stat(2)). Полное описание
модели расширенных атрибутов можно найти в xattr(7).

Вызов setxattr() устанавливает зн ... Читать дальше »

Категория: (2) Системные вызовы ядра (функции языка Си) | Просмотров: 408 | Добавил: Администратор | Дата: 24.11.2017 | Комментарии (0)





ИМЯ


setup - настраивает устройства и файловые системы, монтирует корневую файловую систему



ОБЗОР


#include <unistd.h>

int setup(void);



ОПИСАНИЕ


setup() вызывается один раз из linux/init/main.c. Она вызывает функции инициализации
устройств и файловых систем, встроенных в ядро, и затем монтирует корневую файловую систему.

Ни один из пользовательских процессов не может вызвать setup(). Любой пользовательский
процесс даже с правами суперпользователя будет получать сообщение об ошибке с кодом EPERM.



ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ


Вызов setup() всегда возвращает пользовательскому процессу значение -1.



ОШИБКИ


EPERM Всегда для пользовательского процесса.



ВЕРСИИ


Начиная с Linux 2.1.121, эта функция не существует.

< ... Читать дальше »

Категория: (2) Системные вызовы ядра (функции языка Си) | Просмотров: 396 | Добавил: Администратор | Дата: 24.11.2017 | Комментарии (0)

« 1 2 ... 4 5 6 7 8 ... 120 121 »