[ Страница назад | Страница вперед | Содержание | Индекс | Библиотека | Юридическая информация | Поиск ]

Программирование: Разработка и отладка программ


Список функций для работы с процессами

Вместе с добавлением в операционную систему поддержки нитей, были добавлены новые и расширены некоторые старые функции для работы с процессами. Теперь планировщик управляет работой нитей, а не процессов. Обработчик сигналов по-прежнему описывается на уровне процессов, однако для каждой нити можно задать маску сигналов. Вот несколько примеров измененных и новых функций: getprocs, getthrds, ptrace, getpri, setpri, yield и sigprocmask.

Эти функции можно отнести к следующим категориям:

Запуск процесса


exec:, execl, execv , execle, execve, execlp, execvp и exect
  Запуск в вызывающем процессе новой программы
fork и vfork Создание нового процесса
reboot Повторный запуск системы
siginterrupt Задает список функций, которые должны запускаться повторно после получения специального сигнала прерывания

Остановка процесса


pause Приостанавливает процесс до получения сигнала
wait, wait3, waitpid Приостанавливает процесс до тех пор, пока не будет прерван или завершен дочерний процесс

Завершение процессов


abort Завершает текущий процесс и создает дамп памяти путем отправки сигнала SIGOT
exit, atexit и _exit Завершает процесс
kill и killpg Завершает текущий процесс или группу процессов путем отправки сигнала

Идентификация процессов и нитей


ctermid Возвращает полное имя терминала, управляющего текущим процессом
cuserid Возвращает буквенно-цифровое имя пользователя, связанное с текущим процессом
getpid, getpgrp и getppid Возвращает ИД процесса, группы процессов и родительского процесса, соответственно
getprocs Возвращает записи из таблицы процессов
getthrds Возвращает записи из таблицы нитей
setpgid и setpgrp Задает ИД группы процессов
setsid Создает сеанс и задает идентификаторы групп процессов
uname и unamex Возвращает имя текущей операционной системы

Учет ресурсов процесса


acct Включает и выключает режим учета ресурсов процесса
ptrace Трассировка процесса

Выделение ресурсов процессу


brk и sbrk Изменяет размер сегмента данных
getdtablesize Возвращает размер таблицы дескрипторов
getrlimit, setrlimit и vlimit Устанавливают ограничения на системные ресурсы для текущего процесса
getrusage, times и vtimes Выводит информацию об использовании ресурсов
plock Блокируют процессы, текст или данные в памяти
profil Запускает и завершает профайлер, собирающий информацию о частоте обращения по различным адресам программы
ulimit Устанавливает ограничения на ресурсы для пользовательского процесса

Изменение приоритета процесса


getpri Возвращает приоритет планирования процесса
getpriority, setpriority и nice Возвращает или устанавливает значение приоритета процесса
setpri Устанавливает постоянное значение приоритета планирования процесса
yield Освобождает процессор для процессов с более высоким приоритетом

Синхронизация процессов и нитей


compare_and_swap Обновляет переменную длиной в слово при выполнении заданного условия и возвращает ее значение; выполняется как атомарная операция
fetch_and_add Обновляет переменную длиной в слово; выполняется как атомарная операция
fetch_and_and и fetch_and_or Устанавливает или сбрасывает биты переменной длиной в слово; выполняется как атомарная операция
semctl Управляет операциями над семафором
semget Возвращает набор семафоров
semop Выполняет операции над семафором

Работа с сигналами и масками


raise Отправляет сигнал работающей программе
sigaction, sigvec и signal Задает реакцию на получение сигнала
sigemptyset, sigfillset, sigaddset,
  Предназначена для создания и работы с маской сигналов
sigpending Задает набор сигналов, отправка которых блокируется
sigprocmask, sigsetmask и sigblock Устанавливает маску сигналов
sigset, sighold, sigrelse и sigignore Дополнительные функции обработки и управления сигналами
sigsetjmp и siglongjmp Сохраняет и возвращает содержимое стека и маски сигналов
sigstack Задает содержимое стека сигналов
sigsuspend Изменяет набор заблокированных сигналов
ssignal и gsignal Реализуют средство отправки сигналов

Работа с сообщениями


msgctl Предназначена для управления сообщениями
msgget Выводит на экран идентификатор очереди сообщений
msgrcv Считывает сообщение из очереди
msgsnd Отправляет сообщения в очередь сообщений
msgxrcv Принимает расширенное сообщение
psignal Печать сообщений о сигналах системы


[ Страница назад | Страница вперед | Содержание | Индекс | Библиотека | Юридическая информация | Поиск ]