33
(monitor) соответствующих ресурсов, а планировщик заданий носит
название диспетчера заданий (jobs dispatcher).
В заключение раздела необходимо сделать некоторые обобщения,
важные для нашей дальнейшей работы. Мы показали, что процесс, с точки
зрения ОС, представляется блоком контекста. Обобщение этого принципа
можно сформулировать так: активные объекты с точки зрения ниже
лежащего уровня представляются структурами данных. Вот пример такого
подхода: машинная команда, с точки зрения программиста, является
активной единицей, так как она выполняет некоторые действия, но, с точки
зрения процессора, команда – структура данных, содержащая поля кода
операции и операндов и подлежащая обработке по алгоритмам процессора.
Пример из совершенно другой области: сотрудник любого учреждения,
безусловно, считает себя активной личностью, но, с точки зрения отдела
кадров, он – всего лишь стандартная карточка учета, и все его
перемещения по службе осуществляются простым изменением в графах
этой карточки.
Поскольку наше рассмотрение будет сосредоточено в основном на
нижних уровнях, становится очевидным, что первостепенную важность
для нас имеют структуры данных, описывающие объекты, которые
обрабатывается в ОС и алгоритмы их обработки. Блок контекста процесса
– первая из таких структур данных. При представлении системных
структур данных мы в большинстве случаев решили отказаться от попыток
представить их сколько-нибудь формализованно, например, средствами
какого-либо языка программирования. Такой отказ объясняется тем, что
мы стремились избежать даже намека на то, что та или иная структура
является универсальной, обязательной, фиксированной для всех ОС – это
ни в коем случае не так. Состав компонентов таких структур, их
именование, взаимное расположение, типы данных и т.д. чрезвычайно
разнятся для разных ОС в соответствии с их назначением и даже личными