Компонент - исполняющая система - Большая Энциклопедия Нефти и Газа, статья, страница 1
Сумасшествие наследственно. Оно передается вам от ваших детей. Законы Мерфи (еще...)

Компонент - исполняющая система

Cтраница 1


Компоненты исполняющей системы могут динамически создавать новые типы. Фиксированного списка типов объектов не существует, но некоторые наиболее употребительные типы приведены в табл. 11.6. Давайте кратко рассмотрим эти типы объектов. С процессом и потоком все ясно. Существует один объект для каждого процесса и для каждого потока. В объекте хранятся основные свойства, необходимые для управления этим процессом или потоком. Следующие три объекта, семафор, мьютекс и событие, имеют отношение к синхронизации процессов. События могут быть в одном из двух состояний: сигнализирующем и несигнализирующем. Если поток ждет события, находящегося в сигнализирующем состоянии, он немедленно получает управление. Событие может также быть настроено таким образом, что после получения сигнала ожидающим его процессом это событие автоматически перейдет в несигнализирующее состояние.  [1]

Многие компоненты исполняющей системы ( см. рис. 11.2) обращаются к другим компонентам исполняющей системы.  [2]

Чтобы избежать путаницы, отметим, что большинство компонентов исполняющей системы, помеченные на рис. 11.2 как менеджеры, не являются процессами или потоками, а представляют собой просто набор процедур, которые могут выполняться другими потоками в режиме ядра. Однако некоторые из них, такие как менеджер питания и менеджер plug-and - play, являются настоящими потоками.  [3]

После запуска операционная система выполняет некоторые общие процедуры инициализации, а затем вызывает компоненты исполняющей системы, чтобы те также выполнили собственную инициализацию. Например, менеджер объектов подготавливает свое пространство имен, чтобы другие компоненты могли обращаться к нему и добавлять свои объекты в пространство имен.  [4]

5 Взаимосвязь между заданиями, процессами и потоками. [5]

Некоторые демоны выполняют административные задачи, как, например, запись грязных страниц на диск, тогда как другие формируют пул, и ими могут пользоваться компоненты исполняющей системы или драйверы, которым нужно выполнить какие-либо асинхронные задачи в фоновом режиме. Некоторые из этих потоков будут рассмотрены позднее, когда мы дойдем до темы управления памятью.  [6]

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

8 Структура объекта. [8]

Объекты занимают важный ресурс - участки виртуального адресного пространства ядра - поэтому, когда объект более не нужен, он должен быть удален, а его адресное пространство возвращено системе. Для этого в заголовке каждого объекта содержится счетчик ссылок на объект. Этот счетчик увеличивается на единицу каждый раз, когда объект открывается, и уменьшается на единицу при закрытии объекта. Когда значение счетчика уменьшается до 0, это означает, что никто более не пользуется этим объектом. Когда объект открывается или освобождается компонентом исполняющей системы, используется второй счетчик, даже если настоящий дескриптор при этом не создается. Когда оба счетчика уменьшаются до 0, это означает, что этот объект более не используется ни одним пользователем и ни одним исполняющим процессом, то есть объект может быть удален, а его память освобождена.  [9]



Страницы:      1