Содержание
- 2. Лек.№ 8. Диспетчер объектов.
- 3. Объектная модель Первейшей задачей при разработке системы является обеспечение простого и дешевого способа ее модификации. Объектно-ориентированное
- 4. изменилось что-то в технике, то все, что необходимо сделать - заменить соответствующий объект. Аналогично, если требуется
- 5. Два вида внутренних объектов В Windows 2000 существует два вида внутренних объектов: объекты исполнительной системы (executive
- 6. Объекты исполнительной системы, включающие объекты ядра Рис.3-11
- 7. Каждая подсистема окружения Windows 2000 проецирует на свои приложения разные образы операционной системы. Объекты исполнительной системы
- 8. Набор объектов, предоставляемый приложениям подсистемой окружения, может быть больше или меньше того набора, который предоставляется исполнительной
- 9. Объекты исполнительной системы, доступные Win32
- 11. Стандартные атрибуты заголовка объекта
- 12. Структура объектов Как показано на рис. 3-12, у каждого объекта есть заголовок и тело. Диспетчер объектов
- 13. Структура объекта
- 14. Диспетчер объектов предоставляет небольшой набор базовых сервисов, которые работают с атрибутами заголовка объекта и применимы к
- 15. Конечно, можно было бы реализовать единый сервис создания объектов, но подобная процедура оказалась бы весьма сложной,
- 16. Базовые сервисы объектов
- 17. Объекты типа В заголовках объектов содержатся общие для всех объектов атрибуты, но их значения могут меняться
- 18. Чтобы сэкономить память, диспетчер объектов сохраняет статические атрибуты, специфичные для конкретного типа объектов, только при создании
- 19. Объекты типа
- 20. Атрибуты объекта типа Таблица 3-6. Атрибуты объекта типа
- 21. Методы объекта Атрибут «методы»,последний из перечисленных в таблице 3-6, состоит из набора внутренних процедур, похожих на
- 24. Методы объекта
- 25. Описатели объектов и таблица описателей, принадлежащая процессу Когда процесс создает или открывает объект по имени, он
- 26. Структура таблицы описателвй, принадлежащая процессу в Windows 2000
- 27. Описатель объекта представляет собой индекс в таблице onucammeй (handle table), принадлежащей процессу, На нее указывает блок
- 28. Как показано на рис. 3-15, каждый элемент таблицы описателей состоит из структуры с двумя 32-битными элементами.
- 29. Структура элемента таблицы описателей
- 30. Флаг наследования определяет, получат ли процессы, созданные данным процессом, копию этого описателя. Как уж отмечалось, наследование
- 31. Защита объектов Открыв файл, нужно указать, для чего это делается – для чтения или записи. Если
- 32. Когда .процесс открывает описатель объекта, диспетчер объектов вызывает так называемый справочный монитор безопасности' (security reference monitor),
- 33. Хранение объектов в памяти Поскольку для доступа к объекту все процессы пользовательского режима должны сначала открыть
- 34. Вторая фаза заключается в том, что прекращается хранение тех объектов, которые больше не используются (т. е.
- 35. На рис. 3-16 показаны два задействованных объекта-события. Процесс 1 открыл первый объект, а процесс В –
- 36. Счетчики описателей и ссылок
- 37. Учет ресурсов Учет ресурсов, как и хранение объектов, тесно связан с использованием описателей объектов. Положительное значение
- 38. Диспетчер объектов Windows 2000, напротив, представляет собой компонент централизованного учета ресурсов. В заголовке каждого объекта содержится
- 39. Имена объектов Важное условие для создания множества объектов — эффективная система учета. Для учета диспетчеру объектов
- 40. Где именно хранятся имена объектов, зависит от типа объектов. В таблице 3-8 перечислены стандартные каталоги объектов,
- 42. Манифест гуманной педагогики Ш.А.Амонашвили http://www.enlightening.ee/articles/rus_manifest.htm Гуманная педагогика в том виде, как мы ее предлагаем, есть детище
- 44. Скачать презентацию
Лек.№ 8. Диспетчер объектов.
Лек.№ 8. Диспетчер объектов.
Объектная модель
Первейшей задачей при разработке системы является обеспечение простого и дешевого
Объектная модель
Первейшей задачей при разработке системы является обеспечение простого и дешевого
В Windows NT объекты используются для представления системных ресурсов. Любой ресурс системы, который одновременно может быть использован более чем одним процессом, включая файлы, совместно используемую память и физические устройства, реализован в виде объекта и управляется рядом сервисов. Такой подход сокращает число изменений, которые необходимо внести в операционную систему в процессе ее эксплуатации. Если, скажем,
изменилось что-то в технике, то все, что необходимо
сделать - заменить
изменилось что-то в технике, то все, что необходимо
сделать - заменить
если требуется поддержка новых ресурсов, то надо
добавить только новый объект, не изменяя при этом
остального кода операционной системы.
Дополнительно можно назвать следующие преимущества использования объектной модели:
• операционная система управляет ресурсами и осуществляет доступ к ним однотипно.
упрощается реализация защиты в системе. Когда кто-либо пытается получить доступ к объекту, операционная система перехватывает обращение и выполняет проверку прав на доступ, независимо от того, чем в действительности является объект: процессом, областью памяти или портом связи;
объекты предоставляют удобный и единый способ разделения ресурсов между двумя и более процессами.
Два вида внутренних объектов
В Windows 2000 существует два вида внутренних
Два вида внутренних объектов
В Windows 2000 существует два вида внутренних
Объекты исполнительной системы, включающие объекты ядра
Рис.3-11
Объекты исполнительной системы, включающие объекты ядра
Рис.3-11
Каждая подсистема окружения Windows 2000 проецирует на свои приложения разные образы
Каждая подсистема окружения Windows 2000 проецирует на свои приложения разные образы
Как правило, объекты исполнительной системы создаются подсистемой окружения в интересах пользовательских приложений или компонентов операционной системы в процессе обычной работы. Так, для создания файла Win32-приложение вызывает Win32-функцию CreateFile, реализованную в DLL подсистемы Win32, Kerne132.dll. После проверки и инициализации CreateFile в свою очередь вызывает NtCreateFile, встроенный сервис Windows 2000, для создания объекта «файл» исполнительной системы.
Набор объектов, предоставляемый приложениям подсистемой окружения, может быть больше или меньше
Набор объектов, предоставляемый приложениям подсистемой окружения, может быть больше или меньше
Объекты исполнительной системы, доступные Win32
Объекты исполнительной системы, доступные Win32
Стандартные атрибуты заголовка объекта
Стандартные атрибуты заголовка объекта
Структура объектов
Как показано на рис. 3-12, у каждого объекта
Структура объектов
Как показано на рис. 3-12, у каждого объекта
Кроме заголовка у каждого объекта имеется тело, формат и содержимое которого уникальны для данного типа объектов; все объекты одного типа имеют одинаковый формат тела.
Создавая тип объектов и предоставляя для него сервисы, компонент исполнительной системы может контролировать манипуляции с данными в телах всех объектов этого типа.
Структура объекта
Структура объекта
Диспетчер объектов предоставляет небольшой набор базовых сервисов, которые работают с атрибутами
Диспетчер объектов предоставляет небольшой набор базовых сервисов, которые работают с атрибутами
Базовые сервисы поддерживаются для всех типов объектов, но у каждого объекта есть свои сервисы для создания, открытия и запроса. Так, подсистема ввода-вывода реализует сервис создания файлов для объектов «файл», а диспетчер процессов – сервис создания процессов для объектов «процесс».
Конечно, можно было бы реализовать единый сервис создания объектов, но подобная
Конечно, можно было бы реализовать единый сервис создания объектов, но подобная
Базовые сервисы объектов
Базовые сервисы объектов
Объекты типа
В заголовках объектов содержатся общие для всех объектов атрибуты,
Объекты типа
В заголовках объектов содержатся общие для всех объектов атрибуты,
Чтобы сэкономить память, диспетчер объектов сохраняет статические атрибуты, специфичные для конкретного
Чтобы сэкономить память, диспетчер объектов сохраняет статические атрибуты, специфичные для конкретного
Объектами типов нельзя управлять из пользовательского режима из-за отсутствия соответствующих сервисов диспетчера объектов. Но некоторые из определяемых ими атрибутов видимы через отдельные системные сервисы и функции Win32 API. Атрибуты, хранящиеся в объектах типа, описываются в таблице 3-6.
Объекты типа
Объекты типа
Атрибуты объекта типа
Таблица 3-6. Атрибуты объекта типа
Атрибуты объекта типа
Таблица 3-6. Атрибуты объекта типа
Методы объекта
Атрибут «методы»,последний из перечисленных в таблице 3-6, состоит из
Методы объекта
Атрибут «методы»,последний из перечисленных в таблице 3-6, состоит из
При создании нового типа объектов компонент исполнительной системы может зарегистрировать у диспетчера объектов один или несколько методов. После этого диспетчер объектов вызывает методы на определенных этапах жизненного цикла объектов данного типа – обычно при их создании, удалении или модификации. Поддерживаемые диспетчером объектов методы перечислены в таблице 3-7.
Методы объекта
Методы объекта
Описатели объектов и таблица описателей, принадлежащая процессу
Когда процесс создает
Описатели объектов и таблица описателей, принадлежащая процессу
Когда процесс создает
Чтобы потоки процесса пользовательского режима могли оперировать объектом, им нужен описатель этого объекта.
Описатели служат косвенными указателями на системные ресурсы, что позволяет прикладным программам избегать прямого взаимодействия с системными структурами данных.
Описатели дают и другие преимущества. Во-первых, описатели файлов, событий или процессов совершенно одинаковы – просто ссылаются на разные объекты. Это дает возможность создать унифицированный интерфейс для ссылок на объекты любого типа. Во-вторых, только диспетчер объектов имеет право физически создавать описатели и искать их объекты, а значит, он может проанализировать любое действие с объектом в пользовательском режиме и решить, позволяет ли профиль защиты вызывающей программы выполнить над объектом запрошенную операцию.
Структура таблицы описателвй, принадлежащая процессу в Windows 2000
Структура таблицы описателвй, принадлежащая процессу в Windows 2000
Описатель объекта представляет собой индекс в таблице onucammeй (handle table), принадлежащей
Описатель объекта представляет собой индекс в таблице onucammeй (handle table), принадлежащей
При создании процесса диспетчер объектов формирует верхний уровень таблицы описателей, содержащий указатели на таблицы среднего уровня; средний уровень содержит первый массив указателей на таблицы вторичных описателей; нижний уровень содержит первую таблицу вторичных описателей. Массивы каждого уровня состоят из 256 элементов, а начальная таблица процесса может содержать до 255 описателей.
Как показано на рис. 3-15, каждый элемент таблицы описателей состоит из
Как показано на рис. 3-15, каждый элемент таблицы описателей состоит из
описатель или закрывает существующий. Второй элемент структуры является маской доступа к объекту ).
Структура элемента таблицы описателей
Структура элемента таблицы описателей
Флаг наследования определяет, получат ли процессы, созданные данным процессом, копию этого
Флаг наследования определяет, получат ли процессы, созданные данным процессом, копию этого
Второй флаг сообщает, имеет ли право вызывающая программа закрывать данный описатель. (Этот флаг тоже можно задать вызовом 5etHandleInfonnation.)
Третий флаг указывает, будет ли генерироваться сообщение аудита при закрытии объекта. (Этот флаг не экспортируется в Win32 и предназначен для внутреннего использования диспетчером объектов.)
Защита объектов
Открыв файл, нужно указать, для чего это делается –
Защита объектов
Открыв файл, нужно указать, для чего это делается –
Когда .процесс открывает описатель объекта, диспетчер объектов вызывает так называемый справочный
Когда .процесс открывает описатель объекта, диспетчер объектов вызывает так называемый справочный
Хранение объектов в памяти
Поскольку для доступа к объекту все процессы
Хранение объектов в памяти
Поскольку для доступа к объекту все процессы
Диспетчер объектов реализует этот механизм в двух фазах. Первая фаза называется хранением имен (name retention) и контролируется числом открытых описателей объекта. Каждый раз, когда процесс открывает описатель объекта, диспетчер увеличивает значение счетчика открытых описателей в заголовке объекта. Пo мере того как процессы завершают использование объекта и закрывают его описатели, диспетчер уменьшает значение этого счетчика. Когда счетчик обнуляется, диспетчер удаляет имя объекта из своего глобального пространства имен. После этого новые процессы уже не смогут открывать описатели данного объекта.
Вторая фаза заключается в том, что прекращается хранение тех объектов, которые
Вторая фаза заключается в том, что прекращается хранение тех объектов, которые
На рис. 3-16 показаны два задействованных объекта-события. Процесс 1 открыл
На рис. 3-16 показаны два задействованных объекта-события. Процесс 1 открыл
Таким образом, даже если счетчик открытых описателей объекта обнулится, счетчик ссылок может превышать нулевое значение, указывая, что операционная система еще использует объект. В конце концов счетчик ссылок тоже обнулится, и тогда диспетчер удалит соответствующий объект из памяти.
Такой механизм позволяет хранить объект и его имя в памяти, просто не закрывая его описатель. Программистам, создающим приложения с двумя и более взаимодействующими процессами, не приходится беспокоиться о том, что один из процессов удалит объект в то время, когда он еще используется другим процессом.
Счетчики описателей и ссылок
Счетчики описателей и ссылок
Учет ресурсов
Учет ресурсов, как и хранение объектов, тесно связан с
Учет ресурсов
Учет ресурсов, как и хранение объектов, тесно связан с
Во многих операционных системах для ограничения доступа процессов к системным ресурсам применяется система квот. Однако типы устанавливаемых для процессов квот иногда весьма разнообразны, а отслеживающий квоты код распределен по всей операционной системе. Так, в некоторых операционных системах компонент ввода-вывода может регистрировать и ограничивать число , которые может открыть процесс, а компонент управления памятью может накладывать ограничения на объем памяти, выделяемой потокам процесса. Компонент, отвечающий за управление процессами, способен ограничивать максимальное число новых процессов или новых потоков процесса. Каждое из этих ограничений отслеживается и реализуется в различных частях операционной системы.
Диспетчер объектов Windows 2000, напротив, представляет собой компонент централизованного учета ресурсов.
Диспетчер объектов Windows 2000, напротив, представляет собой компонент централизованного учета ресурсов.
У каждого процесса в Windows 2000 имеется структура квот, регистрирующая лимиты и текущее количество используемой памяти из подкачиваемого и неподкачиваемого пулов, а также из страничного файла. Но все процессы в интерактивном сеансе используют один и тот же блок квот (документированного способа создания процессов с собственными блоками квот нет), а у системных процессов вроде сервисов квоты отсутствуют.
Имена объектов
Важное условие для создания множества объектов — эффективная система учета.
Имена объектов
Важное условие для создания множества объектов — эффективная система учета.
• способ, которым можно было бы отличать один объект от другого;
• метод поиска и получения конкретного объекта.
Первое требование реализуется за счет присвоения имен объектам. Это расширение обычной для большинства операционных систем функциональности, в которых отдельным системным ресурсам, например файлам, каналам или блокам разделяемой памяти, можно присваивать имена. Исполнительная система, напротив, позволяет именовать любой объект, представляющий ресурс. Второе требование (поиск и получение объектов) также реализуется через именование объектов. Если диспетчер хранит объекты в соответствии с их именами, он может быстро найти объект по его имени.
Имена объектов отвечают и третьему требованию, не упомянутому в предыдущем списке: процессам должна быть предоставлена возможность совместного использования объектов. Пространство имен объектов исполнительной системы является глобальным, видимым любому процессу в системе. Если один процесс создает объект и помещает его имя в глобальное пространство имен, то другой процесс может открыть описатель этого объекта, указав нужное имя. Если объект не предназначен для совместного использования, процесс-создатель просто не присваивает ему имя.
Где именно хранятся имена объектов, зависит от типа объектов. В таблице
Где именно хранятся имена объектов, зависит от типа объектов. В таблице
Таблица 3-8. Стандартные каталоги объектов
Манифест гуманной педагогики Ш.А.Амонашвили
http://www.enlightening.ee/articles/rus_manifest.htm
Гуманная педагогика в том виде, как мы ее
Манифест гуманной педагогики Ш.А.Амонашвили
http://www.enlightening.ee/articles/rus_manifest.htm
Гуманная педагогика в том виде, как мы ее
Реальность Высшего Мира, Высшего Сознания, Бога.
Реальность бессмертия человеческого духа и его устремленность к вечному совершенствованию.
Понимание земной жизни как отрезка пути духовного совершенствования и восхождения.
Из этих допущений делаем выводы о философском восприятии Ребенка:
он есть явление (веление духа) в нашей земной жизни,
он есть носитель своего предназначения, своей миссии,
в нем заключена величайшая энергия духа, возможность неограниченного духовного совершенствования.