2 главные функции:
1. управление процессами
2. управление файлами - файловая система
· Процессы
Процесс - это ключевое понятие ОС. Существует несколько определений процесса:
1. это программа в момент выполнения
2. это экземпляр программы, выполняющейся в текущий момент
3. это объект, который можно идентифицировать и выполнять на процессоре
4. это единица активности, которая характеризует текущее состояние и активность системных ресурсов
Из этих определений следует, что с каждым процессом связываются:
1. адресное пространство - из этого пространства процесс может читать данные и записывать в него
2. набор регистров - главные - <CX> и <IP>
3. запись в таблице процессов
Процессами управляют системные вызовы, главным из которых является "2" (например, двойной щелчок мыши в Виндовс). В Windows есть два вызова
CreatProcess, KillProcess - являются частью API функций, которые вызывают и завершают процесс.
Пример. tasm -l laba10.asm
С точки зрения процесса будет происходить следующее:
Интерпретатор команд создаст процесс, который запустит на выполнение компилятор TASM. Когда процесс закончится, он сообщит об этом ОС, которая вызовет системный вызов и этот системный вызов завершит процесс.
|
|
Очень часто одни процессы могут вызывать другие процессы. Так создается дерево процессов. Процессы, объединенные для выполнения одной и той же задачи, называются связанными процессами. В связанных процессах существует две проблемы:
1. корректный обмен данными
2. синхронизация
Обмен данными в связанных процессах контролирует системный таймер. Если таймер не получает ответа от процесса, что он корректно получил и обработал данные, то возникает прерывание по таймеру.
Каждому зарегистрированному пользователю присваивается идентификатор пользователя UID User Identefication.