Системное программирование, управление процессами
Все программы должны соответствовать принятому стилю кодирования.
- В начале файла - заголовок с автором и лицензией;
- Перед каждой функцией - комментарий с описанием функции и аргументов;
- Текст программы разбит на "абзацы" с комментарием перед каждым "абзацем".
Все возвращаемые функциями значения должны проверяться. В случае ошибок выполнение программы должно аварийно завершаться с выдачей сообщения об ошибке и кодом завершения EXIT_FAILURE.
Про Unicode, UTF-8, UCS-4, L"строка" и многобайтовые кодировки см. Спольски Д., Джоэл о программировании гл. 4 (стр. 45).
8. Управление процессами
- Реализовать пример работы функции getpid()
- Реализовать пример работы функции getppid()
- Реализовать пример работы функции getuid()
- Реализовать пример работы функции getgid()
- Реализовать пример работы функции geteuid()
- Реализовать пример работы функции getegid()
- Реализовать пример работы функции fork()
- Проверить, что родительский и дочерний процессы совместно используют текущую позицию файла
- Реализовать пример работы функции wait()
- Реализовать пример работы функции waitpid()
- Реализовать пример работы WIFEXITED() и WEXITSTATUS()
- Реализовать пример работы WIFSIGNALED(), WTERMSIG(), WCOREDUMP()
- Реализовать пример работы функции execl()
- Реализовать пример работы функции execv()
- Реализовать пример работы функции execle()
- Реализовать пример работы функции execve()
- Реализовать пример работы функции execlp()
- Реализовать пример работы функции execvp()
- Реализовать пример работы функции execlp(). Проверить, что функция execlp() действительно производит поиск исполняемого файла в каталогах, перечисленных в PATH
- Реализовать пример совместного использования fork(), execl() и waitpid()
- Реализовать пример работы функции seteuid()
- Реализовать пример работы функции setegid()
- Реализовать пример интерпретируемого исполняемого файла для любого известного скриптового языка (bash, php)
- Реализовать пример работы функции system()