Главная » (2) Системные вызовы ядра (функции языка Си)





ИМЯ


getcpu - определяет ЦП и узел NUMA, на котором выполняется вызывающая нить



ОБЗОР


#include <linux/getcpu.h>

int getcpu(unsigned *cpu, unsigned *node, struct getcpu_cache *tcache);

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



ОПИСАНИЕ


Системный вызов getcpu() определяет процессор и узел, на котором вызывающая нить
или процесс выполняются в данный момент и записывает их в виде целых чисел в
память, на которую указывают аргументы cpu и node. Процессор представляется в виде
уникального малого целого числа, закреплённого за определённым ЦП. Узел
представляется в виде уникального идентификатора, закреплённого за определённым
узлом NUMA. Если значение cpu или node равно NULL, то по соответствующему
указателю ничего не записывается.

Тре ... Читать дальше »

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





ИМЯ


getcontext, setcontext - получить или установить пользовательский контекст



ОБЗОР


#include <ucontext.h>

int getcontext(ucontext_t *ucp);
int setcontext(const ucontext_t *ucp);



ОПИСАНИЕ


В окружении, подобном SysV, существует два типа данных —mcontext_t и ucontext_t,
которые определены в файле <ucontext.h> и четыре функции — getcontext(),
setcontext(), makecontext(3) и swapcontext(3), которые позволяют контексту
пользовательского уровня переключаться между несколькими нитями внутри одного
процесса.

Тип mcontext_t является машинно-зависимым и примитивным типом данных. Тип
ucontext_t является структурой, которая по крайней мере имеет следующие поля:

typedef struct ucontext_t {
struct ucontext_t *uc_link;
sigset_t uc_sigmask;
stack_t uc_stack;
mcont ... Читать дальше »

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





ИМЯ


futimesat - изменяет временные отметки файла, определяемого относительно файлового
дескриптора каталога



ОБЗОР


#include <fcntl.h> /* определения констант AT_* */
#include <sys/time.h>

int futimesat(int dirfd, const char *pathname,
const struct timeval times[2]);

Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):

futimesat(): _GNU_SOURCE



ОПИСАНИЕ


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

Системный вызов futimesat() работает также как системный вызов utimes(2), за
исключением случаев, описанных в данной справочной странице.

Если в pathname задан относительный путь, то он считается относительно каталога,
на который ссылается файловый дескриптор dirfd (а не относительно текущего
рабоче ... Читать дальше »

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





ИМЯ


futex - быстрая блокировка в пользовательском пространстве



ОБЗОР


#include <linux/futex.h>
#include <sys/time.h>

int futex(int *uaddr, int futex_op, int val,
const struct timespec *timeout, /* or: uint32_t val2 */
int *uaddr2, int val3);

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



ОПИСАНИЕ


Системный вызов futex() предоставляет программам метод для ожидания пока
определённое условие не станет истинным. Обычно, этот системный вызов используется
блокирующая конструкция в контексте синхронизации общей памяти. При использовании
фьютексов основные операции синхронизации выполняются в пространстве пользователя.
Программы пользовательского пространства выполняются системный вызов futex()
только когда нужно, чтобы программа вошла ... Читать дальше »

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





ИМЯ


truncate, ftruncate - обрезает файл до заданного размера



ОБЗОР


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

int truncate(const char *path, off_t length);
int ftruncate(int fd, off_t length);

Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):

truncate():
_XOPEN_SOURCE >= 500
|| /* начиная с glibc 2.12: */ _POSIX_C_SOURCE >= 200809L
|| /* в версиях glibc <= 2.19: */ _BSD_SOURCE

ftruncate():
_XOPEN_SOURCE >= 500
|| /* начиная с glibc 2.3.5: */ _POSIX_C_SOURCE >= 200112L
|| /* в версиях glibc <= 2.19: */ _BSD_SOURCE



ОПИСАНИЕ


Функции truncate() и ftruncate() обрезают обычный файл, указанный по имени path
или ссылке fd, до размера, указанного в length (в байтах).

Если до этого файл был больше указанн ... Читать дальше »

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





ИМЯ


truncate, ftruncate - обрезает файл до заданного размера



ОБЗОР


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

int truncate(const char *path, off_t length);
int ftruncate(int fd, off_t length);

Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):

truncate():
_XOPEN_SOURCE >= 500
|| /* начиная с glibc 2.12: */ _POSIX_C_SOURCE >= 200809L
|| /* в версиях glibc <= 2.19: */ _BSD_SOURCE

ftruncate():
_XOPEN_SOURCE >= 500
|| /* начиная с glibc 2.3.5: */ _POSIX_C_SOURCE >= 200112L
|| /* в версиях glibc <= 2.19: */ _BSD_SOURCE



ОПИСАНИЕ


Функции truncate() и ftruncate() обрезают обычный файл, указанный по имени path
или ссылке fd, до размера, указанного в length (в байтах).

Если до этого файл был больше указанн ... Читать дальше »

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





ИМЯ


fsync, fdatasync - синхронизирует состояние файла в памяти с состоянием на
устройстве хранения



ОБЗОР


#include <unistd.h>

int fsync(int fd);

int fdatasync(int fd);

Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):

fsync():
в glibc 2.16 и новее:
Не требуется определять макросы тестирования свойств
до glibc 2.15 включительно:
_BSD_SOURCE || _XOPEN_SOURCE
|| /* начиная с glibc 2.8: */ _POSIX_C_SOURCE >= 200112L
fdatasync():
_POSIX_C_SOURCE >= 199309L || _XOPEN_SOURCE >= 500



ОПИСАНИЕ


Вызов fsync() пересылает («сбрасывает») все изменённые в памяти (in-core) данные
(т. е., изменённые страницы буферного кэша) файла, на который указывает файловый
дескриптор fd, на дисковое устройство (или другое устройство постоянного ... Читать дальше »

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

« 1 2 ... 45 46 47 48 49 ... 59 60 »