22 - hal (Ответы на экзаменационные билеты), страница 3

2018-01-12СтудИзба

Описание файла

Файл "22 - hal" внутри архива находится в папке "Ответы на экзаменационные билеты". Документ из архива "Ответы на экзаменационные билеты", который расположен в категории "". Всё это находится в предмете "системное программное обеспечение (спо)" из 8 семестр, которые можно найти в файловом архиве РТУ МИРЭА. Не смотря на прямую связь этого архива с РТУ МИРЭА, его также можно найти и в других разделах. Архив можно найти в разделе "к экзамену/зачёту", в предмете "спо" в общих файлах.

Онлайн просмотр документа "22 - hal"

Текст 3 страницы из документа "22 - hal"

Рис. 3-4. Виртуальная и физическая память,

При всяком обращении процесса по виртуальному адресу система виртуальной памяти транслирует этот адрес в физический. Она также предотвращает непосредственный доступ процесса к виртуальной памяти, занятой другими процессами или ОС. Для исполнения кода ОС или доступа к памяти ОС поток должен исполняться в привилегированном режиме процессора — так называемом режиме ядра (kernel mode). Однако большинство процессов — это процессы пользовательского режима, т. е. такие, потоки которых исполняются в основном в непривилегированном режиме процессора — пользовательском режиме (user mode).

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

В пользовательском режиме исполняются как прикладные программы, так и защищенные подсистемы Windows NT. Последние представляют собой процессы-серверы пользовательского режима, реализующие важные функции системы. Они реализованы как серверы, чтобы упростить базовую ОС и обеспечить ее расширяемость. Подсистемы работают в пользовательском режиме, так что адресное пространство каждой из них защищено от прикладных процессов и от других подсистем.

        1. Набор ресурсов

Кроме закрытого адресного пространства, с каждым процессом связан набор разнообразных системных ресурсов. На рис. 3-5 показан типичный процесс и его ресурсы.

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

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

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

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

Рис. 3-5. Процесс и его ресурсы.

        1. Объект-процесс

В исполнительной системе NT процессы — это просто объекты, создаваемые и уничтожаемые диспетчером объектов. Объект-процесс, как и другие объекты, содержит заголовок, создаваемый и инициализируемый диспетчером объектов. В заголовке хранятся стандартные атрибуты объекта, такие как дескриптор защиты объекта-процесса, имя процесса (может назначаться ему в целях совместного использования) и каталог объектов, в котором хранится имя, если оно есть.

Диспетчер процессов определяет атрибуты, хранящиеся в теле объектов-процессов, а также предоставляет системные сервисы для чтения и изменения этих атрибутов. Атрибуты и сервисы для объектов-процессов показаны на рис. 3-6.

Рис. 3-6. Объект-процесс.

Обратите внимание, что таблица объектов и описание адресного проранства не показаны как часть объекта-процесса. Причина в том, что они, хотя и связаны с процессом, но не могут быть изменены процессами пользовательского режима напрямую. На рисунке изображены только те данные, которые код пользовательского режима может считывать или изменить путем вызова сервисов объекта-процесса. В табл. 3-1 приведены атрибуты объекта-процесса.

 

Таблица 4-1. Атрибуты объекта - процесса

Атрибут

Назначение

Идентификатор процесса

Уникальное значение, идентифицирующее процесс в ОС

Маркер доступа

Объект исполнительной системы, содержащий информацию о правах зарегистрированного в системе пользователя, которого представляет данный процесс

Базовый приоритет

Базовый приоритет потоков процесса

Процессорное сродство по умолчанию

Набор процессоров, на которых потоки процесса могут исполняться по умолчанию

Размеры квот

Максимальный объем резидентной и нерезидентной системной памяти, пространства в файле подкачки и процессорного времени, выделяемый пользовательскому процессу7

Время выполнения

Общее время выполнения всех потоков процесса

Счетчики ввода-вывода

Переменные, в которых записывается число и тип операций ввода-вывода, выполненных потоками процесса

Счетчики операций виртуальной памяти

Переменные, в которых записывается число и тип операций виртуальной памяти, выполненных потоками процесса

Порты исключений отладки

Код завершения

Каналы коммуникаций между процессами, по которым диспетчер процессов посылает сообщение, если один из потоков процесса вызывает исключение Причина завершения процесса

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

Базовый приоритет процесса помогает ядру NT регулировать приоритет потоков в системе. Приоритеты отдельных потоков изменяются, но всегда остаются в диапазоне базовых приоритетов их процессов. Подсистемы среды могут использовать базовый приоритет, чтобы повлиять на то, потоки какого процесса будут выбраны ядром NT для исполнения в первую очередь. Например, подсистема Win32 при помощи сервисов NT повышает базовый приоритет процесса выбранного пользователем приложения и понижает базовый приоритет процессов фоновых приложений, давая интерактивным приложениям преимущество над другими. Размеры квот, процессорное сродство и базовый приоритет входят в состав тех атрибутов и структур данных процесса, которые могут наследоваться от него другим процессом..

Порты исключений и отладки процесса — это каналы коммуникаций между процессами, по которым ОС посылает сообщения, если один из потоков процесса возбуждает исключение или если идет отладка процесса. Поток другого процесса ожидает у порта для приема сообщения и соответствующих действий. Например, поток подсистемы среды может "слушать" у порта исключений для перехвата ошибок ее клиентских процессов, а отладчик может перехватывать исключения, такие как отладочные точки останова.

Назначение большинства сервисов объекта-процесса очевидно. Сервис создания процесса гибок и дает возможность разным подсистемам создавать процессы с разными начальными атрибутами. Сервис текущего процесса позволяет процессу быстро получить собственный описатель, не обращаясь к диспетчеру объектов. Сервис завершения процесса останавливает исполнение его потоков, закрывает все открытые описатели объектов и уничтожает виртуальное адресное пространство процесса.

Сервисы виртуальной памяти, показанные на рис. 4-2, на самом деле реализованы диспетчером виртуальной памяти, однако каждому из них необходим описатель процесса, чтобы указать, к виртуальной памяти какого процесса будет осуществляться доступ.

        1. Что такое поток?

Если тема потоков управления Вам знакома, то Вы, вероятно, встречали разные определения этого термина, в том числе "единица исполнения", "отдельный счетчик команд" или "подлежащая планированию сущность внутри процесса". Хотя каждое из этих определений по сути своей правильно, ни одно из них не является удовлетворительным. Что в точности подразумевается под "единицей исполнения"? Просто нечто, исполняемое процессором?

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

Основные составляющие потока в исполнительной системе NT таковы:

  • Уникальный идентификатор, называемый идентификатором клиента.

  • Содержимое набора регистров, отображающее состояние процессора.

  • Два стека: один используется потоком при работе в пользовательском режиме, а другой — в режиме ядра.

  • Собственная область памяти, предназначенная для использования подсистемами, библиотеками периода выполнения и динамически подключаемыми библиотеками (DLL).

  • Регистры, стек и собственная область памяти называются контекстом (context) потока. Фактические данные, составляющие контекст потока, зависят от типа процессора.

        1. Объект-поток

Процесс NT остается безжизненным, пока у него нет потока, который можно направить на выполнение. Если у процесса есть поток, последний может создать дополнительные потоки.

Как и процессы, потоки исполнительной системы NT реализованы в виде объектов, создаваемых и уничтожаемых диспетчером объектов. Диспетчер процессов определяет тело объекта-потока и сервисы, используемые для работы с потоками после их создания. Объект-поток изображен на рис. 3-7.

Рис. 3-7. Объект-поток.

В табл. 3-2 описаны атрибуты потока.

Таблица 3-2. Атрибуты объекта-потока

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

Аналогично, каждый поток имеет базовый уровень приоритета, который лежит в диапазоне от двух уровней ниже базового приоритета процесса до двух уровней выше этого приоритета, как показано на рис. 3-8.

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5224
Авторов
на СтудИзбе
428
Средний доход
с одного платного файла
Обучение Подробнее