Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Теория вычислительных процессов (1).doc
Скачиваний:
5
Добавлен:
01.03.2025
Размер:
9.39 Mб
Скачать

18.09.12. Лекция 4. Состав ядра ос.

Ядра любой ОС состоит из нескольких базовых блоков. Основных блоков 3 иногда те же функции выполняет 4-ре блока:

  1. Блок управления процессами- в его задачу входит:

    1. создание новых процессов

    2. Планирование выполнения процессов, путем переключения.

    3. Поддержка межпроцессного взаимодействия.

  1. Блок управления памятью, он обеспечивает распределение областей памяти между процессами, обеспечивает подкачку из файла подкачки, распределение файла подкачки в памяти. В некоторых случаях осуществляет работу с кэш памятью.

  1. Блок управлением кэш памятью - осуществляет работу с кэш памятью.

  1. Блок управления файлами/файловыми системами - он осуществляет управление драйверами устройств(или отдельный блок).

  1. Блок управлениями файловыми системами.

  1. Блок управлением сетью.

При запуске нового процесса, ОС предпринимает ряд шагов:

  1. Выделение адресного пространства для выполнения задачи.

  1. Восстановление среды исполнения задачи.

  1. Запускается главный поток задач, процесс породившый запускаемый процесс при помощи системного вызова называется родительским процессом, а порожденный - дочерним процессом. Дочерний процесс в свою очередь может порождать другие процессы, таким образом образуется дерево процессов или иерархия процессов.

  1. При запуске каждой новой задачи ОС приходится решать следующие вопросы:

    1. Как и каким образом наследовать правила безопасности и ограничения установленные для родительского процесса.

    2. Как оптимально разместить и разграничить области памяти занимаемые родительскими и дочерними процессами

    3. Как сохранять состояние процессов при переключении между ними.

Каждый процесс исполняется в системе в изолированном от других экземпляре виртуального адресного пространства, т.е виртуального диапазона адресов доступных только данному процессу, каждый экземпляр виртуального адресного пространства изолирован от других и процесс исполняется так, как если бы в системе других процессов, кроме него не исполнялось. При этом для выделения памяти и обращением к этим участкам он оперирует виртуальными адресами, а реальные адреса (физическая память) при этом полностью скрыты от процесса.

Указателем на объект в этом адресном пространстве является так называется описатель(дескриптор) HANDLE. Описатели имеют размерность четыре байта каждый и предназначены для организации доступа к объектам виртуальной памяти процесса. При обращении к объекту по его описателю, происходит восстановление значения указателя на объект из таблицы описателей, происходит трансляция виртуального адреса в ВАП в физический реальный адрес. Связью виртуальных и реальных адресов занимаются специальные системные механизмы, называемые механизмы трансляции.

В современных системах, механизм трансляции "зашит" в специальный блок микропроцессора - блок управлением памятью(MMU). У каждого процесса имеется своя собственная таблица описателей, называется она LDT, а также в системе ведется(в современных ОС она дублирована) GDT