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





ИМЯ


getpeername - получает имя подключившегося сокета



ОБЗОР


#include <sys/socket.h>

int getpeername(int sockfd, struct sockaddr *addr, socklen_t *addrlen);



ОПИСАНИЕ


getpeername() возвращает адрес машины, подключившейся к сокету sockfd, в буфер,
указанный addr. В параметре addrlen должно быть указано, сколько места выделено,
на которое указывает addr. По возвращении он содержит реальный размер памяти,
занимаемый возвращаемым именем (в байтах). Имя обрезается, если буфер окажется
слишком мал.

Возвращаемый адрес урежется, если предоставленный буфер окажется слишком
маленьким; в этом случае в addrlen будет возвращено значение большее чем было в
вызове.



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


При успешном выполнении возвращается 0. В случае ошибки возвращается -1, а errno
ус ... Читать дальше »

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





ИМЯ


getpagesize - определяет размер страницы памяти



ОБЗОР


#include <unistd.h>

int getpagesize(void);

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

getpagesize():
Начиная с glibc 2.19:
_DEFAULT_SOURCE || ! (_POSIX_C_SOURCE >= 200112L)
В glibc с 2.12 по 2.19:
_BSD_SOURCE || ! (_POSIX_C_SOURCE >= 200112L)
До glibc 2.12: _BSD_SOURCE || _XOPEN_SOURCE >= 500



ОПИСАНИЕ


Вызов getpagesize() возвращает количество байтов в странице памяти, где «страница»
представляет собой блок фиксированной длины, единица измерения при выделения
памяти и файлового отображения, выполняемого с помощью mmap(2).



СООТВЕТСТВИЕ СТАНДАРТАМ


SVr4, 4.4BSD, SUSv2. В SUSv2 вызов getpagesize() отмечен как УСТАРЕВШИЙ, и был
уд ... Читать дальше »

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





ИМЯ


afs_syscall, break, fattach, fdetach, ftime, getmsg, getpmsg, gtty, isastream,
lock, madvise1, mpx, prof, profil, putmsg, putpmsg, security, stty, tuxcall,
ulimit, vserver - нереализованные системные вызовы



ОБЗОР


Нереализованные системные вызовы.



ОПИСАНИЕ


Данные системные вызовы не реализованы в ядре Linux.



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


Эти системные вызовы всегда возвращают -1 и устанавливают для errno значение
ENOSYS.



ЗАМЕЧАНИЯ


Заметим, что ftime(3), profil(3) и ulimit(3) реализованы в виде библиотечных
функций.

Некоторые системные вызовы, такие как alloc_hugepages(2), free_hugepages(2),
ioperm(2), iopl(2) и vm86(2), существуют только для некоторых архитектур.

Некоторые системны ... Читать дальше »

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





ИМЯ


get_mempolicy - возвращает политику работы с памятью NUMA для нити



ОБЗОР


#include <numaif.h>

long get_mempolicy(int *mode, unsigned long *nodemask,
unsigned long maxnode, void *addr,
unsigned long flags);

Компонуется при указании параметра -lnuma.



ОПИСАНИЕ


Вызов get_mempolicy() возвращает политику NUMA вызывающей нити или адреса памяти
(в зависимости от значения flags).

Машина с NUMA имеет различные контроллеры памяти с различными расстояниями до
определённых ЦП. Политикой памяти задаётся узел, на котором выделяется память для
нити.

Если значение flags равно 0, то в буферы, указанные в mode и nodemask,
возвращается информация о политике по умолчанию для вызывающей нити (которая была
задана с помощью set_mempolicy(2)). Полученное значение может использоваться д ... Читать дальше »

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





ИМЯ


get_kernel_syms - получить экспортируемые символы ядра и модулей



ОБЗОР


#include <linux/module.h>

int get_kernel_syms(struct kernel_sym *table);

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



ОПИСАНИЕ


Замечание: Данный системный вызов доступен только в ядрах до Linux 2.6.

Если table равно NULL, то get_kernel_syms() возвращает количество символов
доступных для запроса. Иначе таблица заполняется структурами:

struct kernel_sym {
unsigned long value;
char name[60];
};

Символы вида #module-name представляют собой ссылки на модули. Значение, связанное
с таким символом, содержит адрес, по которому загружен модуль.

К символам, экспортируемым из модуля, добавляется метка модуля, а модули
возвращаются в обратном поря ... Читать дальше »

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





ИМЯ


getitimer, setitimer - считывает или устанавливает значение таймера интервалов



ОБЗОР


#include <sys/time.h>

int getitimer(int which, struct itimerval *curr_value);
int setitimer(int which, const struct itimerval *new_value,
struct itimerval *old_value);



ОПИСАНИЕ


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

В аргументе which можно задать три типа таймеров, каждый выполняет отсчёт по
разным часам и генерирует разный сигнал по истечении срока:

ITIMER_REAL Этот таймер отсчитывается по реальному ... Читать дальше »

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





ИМЯ


gethostname, sethostname - получить/установить имя узла



ОБЗОР


#include <unistd.h>

int gethostname(char *name, size_t len);
int sethostname(const char *name, size_t len);

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

gethostname():
Начиная с glibc 2.12: _BSD_SOURCE || _XOPEN_SOURCE >= 500
|| /* начиная с glibc 2.12: */ _POSIX_C_SOURCE >= 200112L
sethostname():
начиная с glibc 2.21:
_DEFAULT_SOURCE
в glibc 2.19 и 2.20:
_DEFAULT_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)
до glibc 2.19, включительно:
_BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)



ОПИСАНИЕ


Эти системные вызовы используются для доступа или изменения имени узла текущего
процессора.

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

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

« 1 2 ... 42 43 44 45 46 ... 59 60 »