Выполнение процессов и перенаправление I/O
Выполнение процессов.
Процесс может находиться в одном из двух состояний:
  1. Пользовательское;
  2. Системное.
В п.1. процесс выполняет программу пользователя и имеет доступ к пользовательскому сегменту данных. В системном состоянии процесс выполняет программу ядра, т.е. имеет доступ к системным сегментам данных. При вызове системных функций процесс переходит в режим ядра. В ОС UNIX используется разделение времени (RR-стратегия + динамические приоритеты). Те процессы, которые используют больше процессорного времени – у них приоритет понижается, которые используют меньше времени – приоритет повышается. Есть так же системы отложенных приоритетов.
Перенаправление ввода/вывода
  1. Любой ввод/вывод – это ввод в файл, либо вывод из файла;
  2. Доступ к любому файлу осуществляется через его дескриптор;
    1. stdin - файл стандартного ввода;
    2. stdout - файл стандартного вывода;
    3. stderr – консоль ошибок.
  3. Порождённая программа наследует все открытые дескрипторы родителей.
Стандартный ввод – клавиатура, вывод – экран, консоль ошибок. Для порождённого процесса можно в качестве стандартного ввода использовать стандартный вывод родительского процесса (или другого процесса).


Ctrl  Предыдущая  •  Следующая  Ctrl
Сайт управляется системой uCoz