11.0 (Russian conspect)

Файловые системы

В файловой системе помимо файлов могут храниться:

Можно посмотреть идентификатор процесса используя команду pidof. Зная идентификатор можно управлять процессом и смотреть информацию о нём.

Каналы

Канал создаётся при помощи команды mkfifo. Он имеет особый тип "P".

Pipe - это "отверстие", через которое де программы могут в одну с торону друг с другом разговаривать (одна пишет, другая читает).

В C для проботы с Pipe есть функция pipefd.

Процессы

Процесс - это изолированное адресное пространство, которое управляется планировщиком заданий операционной системы.

Команда ps покажет все процессы, связанные с данным терминалом. ps -ef покажет вообще все процесссы, запущенные на операционной системе.

Также в ps можно увидеть какой процесс кого "породил".

В C функции execvp запускает программу, передавая в неё указа нные аргументы. Также есть функция execvl в которую аргументы подаются поштучно.

Запущенный процесс наследует от запускающего все файлы и все переменные окружения. При создании нового процесса через exec другой процесс умирает.

Функция fork создаёт полностью новый процесс, который является копией породившего. Все переменные окружения копируются.

Системный вызов wait спит до тех пор, пока что-либо не случится с одним из дочерних процессов. Потом возвращает что случилось и с каким процессом.

Функция DUP удваевает дискриптор и возвращает второй.

HSE/ProgrammingOS/11_Processes/Conspect (последним исправлял пользователь Lecture_Uploads 2020-06-08 23:45:07)