
- •Системные вызовы семейства exec
- •Прототипы функций (1)
- •Прототипы функций (2)
- •execl()
- •execlp()
- •execle()
- •execv()
- •execvp()
- •execve()
- •Семейство функций exec()
- •main
- •Окружение процесса
- •Переменные окружения
- •Переменные окружения
- •Системные вызовы (1)
- •Системные вызовы (2)
- •Системные вызовы (3)
- •Идентификаторы
- •euid
- •suid
- •В большинстве случаев все идентификаторы процесса, связанные с пользователями – uid, euid и
- •При выполнении exec
- •Наследование пользовательских идентификаторов
- •Файл
- •Системные вызовы
- •Программы,
- •Сигналы
- •Назначение сигналов
- •Надежные и ненадежные
- •Свойства сигналов
- •Причины отправки
- •По инициативе ядра
- •Доставка сигнала
- •Когда core-файл не
- •Диспозиция по умолчанию
- •Перехват сигнала
- •Сигналы (1)
- •Сигналы (2)
- •Сигналы (3)
- •Сигналы (4)
- •SIGPIPE
- •SIGCHLD
- •SIGUSR1, SIGUSR2
- •SIGALRM
- •Надежные сигналы
- •Множество сигналов
- •Библиотечные функции
- •Управление маской
- •Работа с сигналами
- •Работа с диспозицией
- •Структура sigaction
- •Флаги sa_flags
- •Доставка и обработка сигнала
- •Функция ядра issig() (1)
- •Функция ядра issig() (2)
- •Группы и сеансы
- •Группы и сеансы (1)
- •Группы и сеансы (2)
- •Группы и сеансы (3)
- •Системные вызовы (группы)
- •Системные вызовы (сеансы)
- •Текущие и фоновые
- •Листинг ps
- •Процессы-демоны
- •Демоны
- •init
- •Последовательность шагов (1)
- •Последовательность шагов (2)
- •Последовательность шагов (3)
- •Известные демоны

Системные вызовы семейства exec

Прототипы функций (1)
int execl(const char *, const char *, …);
int execlp(const char *, const char *, …);
int execle(const char *,
const char *, …, char * const[]);

Прототипы функций (2)
int execv(const char *, char * const[]);
int execvp(const char *, char * const[]);
int execve(const char *,
char * const[], char * const[]);

execl()
Список параметров
Строго задается абсолютное либо относительное имя
Окружение сохраняется

execlp()
Список параметров
Поиск программы осуществляется в соответствии с переменной окружения PATH
Окружение сохраняется

execle()
Список параметров
Строго задается абсолютное либо относительное имя
Окружение копируется из параметров системного вызова

execv()
Вектор параметров
Строго задается абсолютное либо относительное имя
Окружение сохраняется

execvp()
Вектор параметров
Поиск программы осуществляется в соответствии с переменной окружения PATH
Окружение сохраняется

execve()
Вектор параметров
Строго задается абсолютное либо относительное имя
Окружение копируется из параметров системного вызова
