niсе
nice(increment)
int increment;
Функция nice увеличивает значение соответствующей компоненты, участвующей в вычислении приоритета планирования текущего процесса, на величину increment. Увеличение значения nice ведет к снижению приоритета планирования.
оpen
#include ‹fcntl.h›
open(filename, flag, mode)
char *filename;
int flag, mode;
Функция open выполняет открытие указанного файла в соответствии со значением параметра flag. Значение параметра flag представляет собой комбинацию из следующих разрядов (причем из первых трех разрядов может быть использован только один):
O_RDONLY открыть только для чтения
O_WRONLY открыть только для записи
O_RDWR открыть для чтения и записи
O_NDELAY если файл является специальным файлом устройства, функция возвращает управление, не дожидаясь ответного сигнала; если файл является поименованным каналом, функция в случае неудачи возвращает управление немедленно (с индикацией ошибки, когда бит O_WRONLY установлен), не дожидаясь открытия файла другим процессом
O_APPEND добавляемые данные записывать в конец файла
O_CREAT если файл не существует, создать его; режим создания (mode) имеет тот же смысл, что и в функции creat; если файл уже существует, данный флаг игнорируется
O_TRUNC укоротить длину файла до 0
O_EXCL если этот бит и бит O_CREAT установлены и файл существует, функция не будет выполняться; это так называемое "монопольное открытие"
Функция open возвращает дескриптор файла для последующего использования в других системных функциях.
рausе
pause()
Функция pause приостанавливает выполнение текущего процесса до получения сигнала.
рipе
pipe(fildes)
int fildes[2];
Функция pipe возвращает дескрипторы чтения и записи (соответственно, в fildes[0] и fildes[1]) для данного канала. Данные передаются через канал в порядке поступления; одни и те же данные не могут быть прочитаны дважды.
рlock
#include ‹sys/lock.h›
plock(op)
int op;
Функция plock устанавливает и снимает блокировку областей процесса в памяти в зависимости от значения параметра op:
PROCLOCK заблокировать в памяти области команд и данных
TXTLOCK заблокировать в памяти область команд
DATLOCK заблокировать в памяти область данных
UNLOCK снять блокировку всех областей
рrofil
profil(buf, size, offset, scale)
char *buf;
int size, offset, scale;
Функция profil запрашивает у ядра профиль выполнения процесса. Параметр buf определяет массив, накапливающий число копий процесса, выполняющихся в разных адресах. Параметр size определяет размер массива buf, offset — начальный адрес участка профилирования, scale — коэффициент масштабирования.
рtraсе
ptrace(cmd, pid, addr, data)
int cmd, pid, addr, data;
Функция ptrace дает текущему процессу возможность выполнять трассировку другого процесса, имеющего идентификатор pid, в соответствии со значением параметра cmd:
0 разрешить трассировку потомку (по его указанию)
1,2 вернуть слово, расположенное по адресу addr в пространстве трассируемого процесса с идентификатором pid
3 вернуть слово, расположенное в пространстве трассируемого процесса по адресу со смещением addr
4,5 записать значение по адресу addr в пространстве трассируемого процесса
6 записать значение по адресу со смещением addr
7 заставить трассируемый процесс возобновить свое выполнение
8 заставить трассируемый процесс завершить свое выполнение
9 машинно-зависимая команда — установить в слове состояния программы бит для отладки в режиме пошагового выполнения
read
read(fildes, buf, size)
int fildes;
char *buf;
int size;
Функция read выполняет чтение из файла с дескриптором fildes в пользовательский буфер buf указанного в параметре size количества байт. Функция возвращает число фактически прочитанных байт. Если файл является специальным файлом устройства или каналом и если в вызове функции open был установлен бит O_NDELAY, функция read в случае отсутствия доступных для чтения данных возвратит управление немедленно.
semctl
#include ‹sys/types.h›
#include ‹sys/ipc.h›
#include ‹sys/sem.h›
semctl(id, num, cmd, arg)
int id, num, cmd;
union semun {
int val;
struct semid_ds *buf;
ushort *array;
} arg;
Функция semctl выполняет указанную в параметре cmd операцию над очередью семафоров с идентификатором id.
GETVAL вернуть значение того семафора, на который указывает параметр num
SETVAL установить значение семафора, на который указывает параметр num, равным значению arg.val
GETPID вернуть идентификатор процесса, выполнявшего последним функцию semop по отношению к тому семафору, на который указывает параметр num