|1. Операционная система. |3. Операционная система. |5) Архитектура операционной |
|Определение. Функции |Определение. Классификация |системы. Режимы ядра и |
|операционных систем. |операционных систем по |приложений. Многослойная |
|Функции: |особенностям алгорифмов |архитектура. |
|По современным |управления ресурсами, |Под архитектурой понимается |
|представлениям, ОС должна |особенностям аппаратных |организация ОС. Из основных |
|уметь делать следующее: |платформ, особенностям |программных модулей обычно |
|Обеспечивать загрузку |областей использования. |выделяют две группы: |
|пользовательских программ в |По тому, какие из |ядро – модули, выполняющие |
|оперативную память и их |вышеперечисленных функций |основные функции ОС |
|исполнение. |реализованы (см вопрос 1) и |модули, выполняющие |
|Обеспечивать работу с |каким было уделено больше |вспомогательные функции. |
|устройствами долговременной |внимания, а каким меньше, |Вспомогательные модули |
|памяти, такими как магнитные |системы можно разделить на |делятся на группы: |
|диски, ленты, оптические |несколько классов. |утилиты – программы решения |
|диски и т.д. Как правило, ОС |ДОС (Дисковые Операционные |отдельных задач управления и |
|управляет свободным |Системы) |сопровождения компьютерной |
|пространством на этих |Это системы, берущие на себя |системы. |
|носителях и структурирует |выполнение только первых |Системные обрабатывающие |
|пользовательские данные. |четырех функций. Как правило,|программы – текстовые или |
|Предоставлять более или менее|это просто некий резидентный |графические редакторы, |
|стандартный доступ к |набор подпрограмм, не более |компиляторы, компоновщики, |
|различным устройствам |того. Он загружает |трансляторы |
|ввода/вывода, таким как |пользовательскую программу в |Программы представляющие |
|терминалы, модемы, печатающие|память и передает ей |пользователю дополнительные |
|устройства. |управление, после чего |услуги |
|Предоставлять некоторый |программа делает с системой |Библиотеки процедур |
|пользовательский интерфейс. |все, что ей |различного назначения |
|Слово некоторый здесь сказано|заблагорассудится. Считается |Модули ОС, оформленные в виде|
|не случайно - часть систем |желательным, чтобы после |утилит, системных |
|ограничивается командной |завершения программы машина |обрабатывающих программ и |
|строкой, в то время как |оставалась в таком состоянии,|библиотек - ? – |
|другие на 90% состоят из |чтобы ДОС могла продолжить |Ядро в привилегированном |
|средств интерфейса |работу. Если же программа |режиме. |
|пользователя. |приводит машину в какое-то |Важным свойством архитектуры |
|Более развитые ОС |другое состояние... что ж, |ОС является возможность |
|предоставляют также следующие|ДОС ничем ей в этом не может |выполнения защиты данных за |
|возможности: |помешать. Характерный пример |счет выполнения функций ядра |
|Параллельное (точнее, |- различные загрузочные |в привилегированном режиме. |
|псевдопараллельное, если |мониторы для машин класса |Ни одно приложение не должно |
|машина имеет только один |Spectrum. Как правило, такие |иметь возможности без ведома |
|процессор) исполнение |системы работают одновременно|ОС получать дополнительную |
|нескольких задач. |только с одной программой. |память, занимать процессор |
|Распределение ресурсов |Дисковая операционная система|дольше разрешенного ОС |
|компьютера между задачами. |MS DOS для IBM PC-совместимых|времени, непосредственно |
|Организация взаимодействия |машин является прямым |управлять совместно |
|задач друг с другом. |наследником одного из таких |используемыми внешними |
|Взаимодействие |резидентных мониторов. Она, |устройствами. |
|пользовательских программ с |правда, умеет загружать |Аппаратура компьютера должна |
|нестандартными внешними |несколько программ, но не |поддерживать минимум два |
|устройствами. |предоставляет средств для |режима работы – |
|Организация межмашинного |исполнения этих программ. |пользовательский и |
|взаимодействия и разделения |Более того, с точки зрения |привилегированный (режим |
|ресурсов. |документированных функций, |ядра) |
|Защита системных ресурсов, |этим программам нельзя |Подразумевается, что ОС или |
|данных и программ |работать. Конечно, есть еще |ее часть работают в |
|пользователя, исполняющихся |недокументированные задние |привилегированном режиме, а |
|процессов и самой себя от |двери (backdoors)... |приложения в |
|ошибочных и зловредных |Существование систем такого |пользовательском. |
|действий пользователей и их |класса обусловлено их |Системный вызов инициирует |
|программ. |простотой и тем, что они |переключение процессора из |
| |потребляют мало ресурсов. Для|пользовательского в |
| |машин класса Spectrum это |привилегированный режим, а |
| |более чем критичные |при возврате к приложению – |
| |параметры. Еще одна причина, |обратный процесс. |
| |по которой такие системы | |
| |могут использоваться даже на | |
| |довольно мощных машинах - | |
| |требование программной | |
| |совместимости с ранними | |
| |моделями того же семейства | |
| |компьютеров. | |
| |ОС | |
| |К этому классу относятся | |
| |системы, берущие на себя | |
| |выполнение всех | |
| |вышеперечисленных функций. | |
| |Разделение на ОС и ДОС идет, | |
| |по-видимому, от систем IBM | |
| |DOS/360 и OS/360 для больших | |
| |компьютеров этой фирмы, клоны| |
| |которых известны у нас в | |
| |стране под названием ЕС ЭВМ | |
| |серии 10XX. (Кстати, у IBM | |
| |была еще TOS/360, Tape | |
| |Operating System - Ленточная | |
| |Операционная Система). | |
| |Здесь под ОС мы будем | |
| |подразумевать системы | |
| |``общего назначения'', то | |
| |есть рассчитанные на | |
| |интерактивную работу одного | |
| |или нескольких пользователей | |
| |в режиме разделения времени, | |
| |при не очень жестких | |
| |требованиях на время реакции | |
| |системы на внешние события. | |
| |Как правило, в таких системах| |
| |уделяется большое внимание | |
| |защите самой системы, | |
| |программного обеспечения и | |
| |пользовательских данных от | |
| |ошибочных и злонамеренных | |
| |программ и пользователей. | |
| |Обычно такие системы | |
| |используют встроенные в | |
| |архитектуру процессора | |
| |средства защиты и | |
| |виртуализации памяти. К этому| |
| |классу относятся такие широко| |
| |распространенные системы, как| |
| |VAX/VMS, системы семейства | |
| |Unix и OS/2, хотя последняя | |
| |не обеспечивает одновременной| |
| |работы нескольких | |
| |пользователей и защиты | |
| |пользователей друг от друга. | |
| | | |
| |Системы реального времени | |
| |Это системы, предназначенные | |
| |для облегчения разработки так| |
| |называемых приложений | |
| |реального времени. Это | |
| |программы, управляющие | |
| |некомпьютерным по природе | |
| |оборудованием, часто с очень | |
| |жесткими ограничениями по | |
| |времени. Примером такого | |
| |приложения может быть | |
| |программа бортового | |
| |компьютера крылатой ракеты, | |
| |системы управления | |
| |ускорителем элементарных | |
| |частиц или промышленным | |
| |оборудованием. Такие системы | |
| |обязаны поддерживать | |
| |многопроцессность, | |
| |гарантированное время реакции| |
| |на внешнее событие, простой | |
| |доступ к таймеру и внешним | |
| |устройствам. Такие системы | |
| |могут по другим признакам | |
| |относиться как к классу ДОС | |
| |(RT-11), так и к ОС (OS-9, | |
| |QNX). Часто такие системы | |
| |(например, VxWorks) | |
| |рассчитаны на работу | |
| |совместно с управляющей | |
| |host-машиной, исполняющей | |
| |``нормальную'' операционную | |
| |систему. | |
|2. Операционная система. |6. Микроядерная архитектура |7. Средства аппаратной |
|Определение. Эволюция |Микроядро — это минимальная |поддержки ОС |
|операционных систем. |стержневая часть ОС, служащая|-- средства поддержки |
|1945-55: |основой модульных и |привелигерованного режима: |
|Были созданы первые ламповые |переносимых расширений. |обычно реализуется на основе |
|вычислительные устройства. |Основная идея заключается в |системы регистров процессора;|
|Программирование |том, чтобы конструировать | |
|исключительно на машинном |необходимую среду верхнего |-- средства трансляции |
|языке. ОС не было. Для |уровня, из которой можно |адресов: выполняются операции|
|программирования |легко получить доступ ко всем|преобразования виртуальных |
|использовался пульт |функциональным возможностям |адресов (в кодах процессора) |
|управления. Из системного |уровня аппаратного |а адреса физической памяти; |
|обеспечения были библиотеки |обеспечения. Искусство |-- средства переключения |
|математических и служебных |разработки микроядра |процессов: предназначены для |
|подпрограмм. |заключается в выборе базовых |быстрого сохранения |
|1955-65: |примитивов, которые должны в |приостанавливаемого контекста|
|Данный этап связан с |нем находиться для |и восстановления контекста, |
|появлением новой технической |обеспечения необходимого и |который становится активным |
|базы программных продуктов. |достаточного сервиса. |(контекст – содержимое всех |
|Появились первые языки. Для |В микроядре содержится и |регистров общего назначения, |
|эффективности использования |исполняется минимальное |регистров флага, а также всех|
|процессорного времени стали |количество кода, необходимое |системных регистров, которые |
|использовать системы пакетной|для реализации основных |связаны с отдельным |
|обработки (прообразы ОС). |системных вызовов. В число |процессом); |
|Задания вводили с помощью |этих вызовов входят передача |-- системный таймер: |
|перфокарт. |сообщений и организация |быстродействующий регистр, |
|1965-80: |другого общения между |счетчик используемый ОС для |
|Произошел переход к ИМС. |внешними по отношению к |выдержки интервалов времени; |
|Появились |микроядру процессами, |-- прерывания, система |
|программно-совместимые |поддержка управления |прерываний; |
|машины, что потребовало |прерываниями, а также ряд |-- средства защиты областей |
|появления совместимых ОС. |некоторых других функций. |памяти: обеспечивает на |
|Большое распространение |Остальные функции, |аппаратном уровне проверку |
|получили системы подобные |характерные для «обычных» ОС,|возможности осуществления |
|ОС/360. Главным достоинством |обеспечиваются как модульные |программным кодом операций с |
|ОС было появление |дополнения-процессы, |определенной областью памяти.|
|мультипрограммирования – это |взаимодействующие главным | |
|способ организации |образом между собой и | |
|вычислительного процесса, при|осуществляющие взаимодействие| |
|котором на одном процессоре |посредством передачи | |
|попеременно выполняются |сообщений. | |
|несколько программ. Появились|Микроядро является маленьким,| |
|системы разделения времени, |передающим сообщения модулем | |
|при которых создавалась |системного программного | |
|иллюзия единоличного |обеспечения, работающим в | |
|использования машины каждым |наиболее приоритетном | |
|пользователем. |состоянии компьютера и | |
|1980-… |поддерживающим остальную | |
|Потребовалась разработка |часть операционной системы, | |
|дружественного интерфейса, |рассматриваемую как набор | |
|из-за широкого |серверных приложений. | |
|распространения компьютеров. |Достоинства: | |
|Первыми такими ОС были MS-DOS|- более простая организация | |
|и Unix. |чем у монолитных ОС; | |
| |- с микроядром функция | |
| |операционной системы | |
| |разбивается на модульные | |
| |части, которые могут быть | |
| |сконфигурированы целым рядом | |
| |способов, позволяя строить | |
| |большие системы добавлением | |
| |новых частей; | |
| |- микроядра также облегчают | |
| |поддержку мультипроцессоров | |
| |созданием стандартной | |
| |программной среды, которая | |
| |может использовать | |
| |множественные процессоры в | |
| |случае их наличия, однако не | |
| |требует их, если их нет. | |
| |- сети из общающихся между | |
| |собой микроядер могут быть | |
| |использованы для обеспечения | |
| |операционной системной | |
| |поддержки возникающего класса| |
| |массивно параллельных машин. | |
| |- поскольку микроядра малы и | |
| |имеют сравнительно мало | |
| |требуемого к исполнению кода | |
| |уровня ядра, они обеспечивают| |
| |удобный способ поддержки | |
| |характеристик реального | |
| |времени, требующихся для | |
| |мультимедиа, управления | |
| |устройствами и | |
| |высокоскоростных | |
| |коммуникаций. | |
| |- хорошо структурированные | |
| |микроядра обеспечивают | |
| |изолирующий слой для | |
| |аппаратных различий. Таким | |
| |образом, они упрощают | |
| |перенесение кода и | |
| |увеличивают уровень его | |
| |повторного использования. | |
| |Недостатки: | |
| |Ухудшение показателя | |
| |производительности за счет | |
| |большого числа переключений | |
| |между пользовательским и | |
| |привелигерованным режимами. | |
|8. Иерархия памяти. |9. Способы управления |12.Кэширование данных. |
|Управление памятью без |оперативной памятью. Типы |Принцип работы кэш-памяти. |
|использования внешней памяти.|адресов. Страничное |Способы отображения данных на|
| |распределение памяти, |кэш. |
|Иерархия памяти. Память |сегментное, |Кэширование данных. |
|вычислительной машины |сегментно-страничное |Кэш-память - это способ |
|представляет собой иерархию |распределение. |организации совместного |
|запоминающих устройств |Управление памятью. Память |функционирования двух типов |
|(внутренние регистры |является важнейшим ресурсом, |запоминающих устройств, |
|процессора, различные типы |требующим тщательного |отличающихся временем доступа|
|сверхоперативной и |управления со стороны |и стоимостью хранения данных,|
|оперативной памяти, диски, |мультипрограммной |который позволяет уменьшить |
|ленты), отличающихся средним |операционной системы. |среднее время доступа к |
|временем доступа и стоимостью|Распределению подлежит вся |данным за счет динамического |
|хранения данных в расчете на |оперативная память, не |копирования в "быстрое" ЗУ |
|один бит. Методы |занятая операционной |наиболее часто используемой |
|распределения памяти без |системой. Обычно ОС |информации из "медленного" |
|использования дискового |располагается в самых младших|ЗУ. |
|пространства. Все методы |адресах, однако может |Механизм кэш-памяти является |
|управления памятью могут быть|занимать и самые старшие |прозрачным для пользователя, |
|разделены на два класса: |адреса. Функциями ОС по |который не должен сообщать |
|методы, которые используют |управлению памятью являются: |никакой информации об |
|перемещение процессов между |отслеживание свободной и |интенсивности использования |
|оперативной памятью и диском,|занятой памяти, выделение |данных и не должен никак |
|и методы, которые не делают |памяти процессам и |участвовать в перемещении |
|этого. Начнем с последнего, |освобождение памяти при |данных из ЗУ одного типа в ЗУ|
|более простого класса |завершении процессов, |другого типа, все это |
|методов. Этот метод имеет 3 |вытеснение процессов из |делается автоматически |
|решения. Рассмотрим их. |оперативной памяти на диск, |системными средствами. |
|Распределение памяти |когда размеры основной памяти|Кэш память используется для |
|фиксированными разделами. |не достаточны для размещения |уменьшения среднего времени |
|Самым простым способом |в ней всех процессов, и |доступа к данным, хранящимся |
|управления оперативной |возвращение их в оперативную |в оперативной памяти. Для |
|памятью является разделение |память, когда в ней |этого между процессором и |
|ее на несколько разделов |освобождается место, а также |оперативной памятью |
|фиксированной величины. Это |настройка адресов программы |помещается быстрое ЗУ, |
|может быть выполнено вручную |на конкретную область |называемое просто |
|оператором во время старта |физической памяти. |кэш-памятью. Содержимое |
|системы или во время ее |Типы адресов. Для |кэш-памяти представляет собой|
|генерации. Очередная задача, |идентификации переменных и |совокупность записей обо всех|
|поступившая на выполнение, |команд используются |загруженных в нее элементах |
|помещается либо в общую |символьные имена (метки), |данных. Каждая запись об |
|очередь, либо в очередь к |виртуальные адреса и |элементе данных включает в |
|некоторому разделу. |физические адреса. |себя адрес, который этот |
|Подсистема управления памятью|Виртуальные адреса |элемент данных имеет в |
|в этом случае выполняет |вырабатывает транслятор, |оперативной памяти, и |
|следующие задачи: |переводящий программу на |управляющую информацию: |
|(1)сравнивая размер |машинный язык. Так как во |признак модификации и признак|
|программы, поступившей на |время трансляции в общем |обращения к данным за |
|выполнение, и свободных |случае не известно, в какое |некоторый последний период |
|разделов, выбирает подходящий|место оперативной памяти |времени. |
|раздел. (2) осуществляет |будет загружена программа, то|Принцип работы кэш. В |
|загрузку программы и |транслятор присваивает |системах, оснащенных |
|настройку адресов. При |переменным и командам |кэш-памятью, каждый запрос к |
|очевидном преимуществе - |виртуальные (условные) |оперативной памяти |
|простоте реализации - данный |адреса, обычно считая по |выполняется в соответствии со|
|метод имеет существенный |умолчанию, что программа |следующим алгоритмом: |
|недостаток - жесткость. Так |будет размещена, начиная с |1.Просматривается содержимое |
|как в каждом разделе может |нулевого адреса. Совокупность|кэш-памяти с целью |
|выполняться только одна |виртуальных адресов процесса |определения, не находятся ли |
|программа, то уровень |называется виртуальным |нужные данные в кэш-памяти; |
|мультипрограммирования |адресным пространством. |кэш-память не является |
|заранее ограничен числом |Каждый процесс имеет |адресуемой, поэтому поиск |
|разделов не зависимо от того,|собственное виртуальное |нужных данных осуществляется |
|какой размер имеют программы.|адресное пространство. |по содержимому - значению |
|Даже если программа имеет |Максимальный размер |поля "адрес в оперативной |
|небольшой объем, она будет |виртуального адресного |памяти", взятому из запроса. |
|занимать весь раздел, что |пространства ограничивается | |
|приводит к неэффективному |разрядностью адреса, присущей| |
|использованию памяти. С |данной архитектуре | |
|другой стороны, даже если |компьютера, и, как правило, | |
|объем оперативной памяти |не совпадает с объемом | |
|машины позволяет выполнить |физической памяти, имеющимся | |
|некоторую программу, |в компьютере. Физические | |
|разбиение памяти на разделы |адреса соответствуют номерам | |
|не позволяет сделать этого |ячеек оперативной памяти, где| |
| |в действительности | |
| |расположены или будут | |
| |расположены переменные и | |
| |команды. Переход от | |
| |виртуальных адресов к | |
| |физическим может | |
| |осуществляться двумя | |
| |способами. В первом случае | |
| |замену виртуальных адресов на| |
| |физические делает специальная| |
| |системная программа - | |
| |перемещающий загрузчик. | |
| |Второй способ заключается в | |
| |том, что программа | |
| |загружается в память в | |
| |неизмененном виде в | |
| |виртуальных адресах, при этом| |
| |операционная система | |
| |фиксирует смещение | |
| |действительного расположения | |
| |программного кода | |
| |относительно виртуального | |
| |адресного пространства. Во | |
| |время выполнения программы | |
| |при каждом обращении к | |
| |оперативной памяти | |
| |выполняется преобразование | |
| |виртуального адреса в | |
| |физический. | |
| |Страничное распределение | |
| |памяти. Виртуальное адресное | |
| |пространство каждого процесса| |
| |делится на части одинакового,| |
| |фиксированного для данной | |
| |системы размера, называемые | |
| |виртуальными страницами. Вся | |
| |оперативная память машины | |
| |также делится на части такого| |
| |же размера, называемые | |
| |физическими страницами (или | |
| |блоками). Размер страницы | |
| |обычно выбирается равным | |
| |степени двойки: 512, 1024 и | |
| |т.д., это позволяет упростить| |
| |механизм преобразования | |
| |адресов. При загрузке | |
| |процесса часть его | |
| |виртуальных страниц | |
| |помещается в оперативную | |
| |память, а остальные - на | |
| |диск. Смежные виртуальные | |
| |страницы не обязательно | |
| |располагаются в смежных | |
| |физических страницах. При | |
| |загрузке операционная система| |
| |создает для каждого процесса | |
| |информационную структуру - | |
| |таблицу страниц, в которой | |
| |устанавливается соответствие | |
| |между номерами виртуальных и | |
| |физических страниц для | |
| |страниц, загруженных в | |
| |оперативную память, или | |
| |делается отметка о том, что | |
| |виртуальная страница | |
| |выгружена на диск. При | |
| |активизации очередного | |
| |процесса в специальный | |
| |регистр процессора | |
| |загружается адрес таблицы | |
| |страниц данного процесса. При| |
| |каждом обращении к памяти | |
| |происходит чтение из таблицы | |
| |страниц информации о | |
| |виртуальной странице, к | |
| |которой произошло обращение..| |
|Многослойная архитектура. | | |
|Вычислительную систему можно |* Гарантированное время | |
|рассматривать как систему, |реакции на внешнее событие | |
|составленную из трех |является отличительным | |
|иерархических слоев. Нижний |признаком систем РВ. | |
|слой образует аппаратура. |Требование гарантированного | |
|Промежуточный – ядро ОС. |времени реакции налагает | |
|Верхний слой – утилиты, |специфические требования на | |
|обрабатывающие программы и |архитектуру ОС; большинство | |
|приложения. |современных ОС общего | |
|Ядро ОС имеет также сложную |назначения непригодно для | |
|структуру и может содержать |задач РВ. | |
|следующие слои |* | |
|средства аппаратной поддержки|Любопытно, что новомодное | |
|ОС |течение в компьютерной | |
|машинно-зависимые модули |технике - multimedia - при | |
|базовые механизмы ядра |качественной реализации | |
|менеджеры ресурсов |предъявляет к системе те же | |
|интерфейс системных вызовов. |требования, что и | |
|Средства аппаратной поддержки|промышленные задачи реального| |
|включают в себя несколько |времени. В multimedia | |
|пунктов |основной проблемой является | |
|средства поддержки |синхронизация изображения на | |
|привилегированного режима |экране со звуком. Именно в | |
|средства трансляции адресов |таком порядке. Звук обычно | |
|средства переключения |генерируется внешним | |
|процессов |аппаратным устройством с | |
|системный таймер |собственным таймером, и | |
|система прерываний |изображение синхронизуется с | |
|средства защиты областей |ним же. Человек способен | |
|памяти |заметить довольно малые | |
| |временные неоднородности в | |
| |звуковом потоке. Напротив, | |
| |пропуск кадров в визуальном | |
| |потоке не так заметен, а | |
| |расхождение звука и | |
| |изображения заметно уже при | |
| |задержках около 30 мс. | |
| |Поэтому системы качественного| |
| |multimedia должны | |
| |обеспечивать синхронизацию с | |
| |такой же или более высокой | |
| |точностью, что мало | |
| |отличается от систем мягкого | |
| |реального времени | |
| |Кросс-загрузчики | |
| |Это системы - полностью | |
| |ориентированные на работу с | |
| |host-машиной. Чаще всего они | |
| |используются для написания и | |
| |отладки кода, позднее | |
| |прошиваемого в ПЗУ. Это | |
| |системы программирования | |
| |микроконтроллеров семейства | |
| |Intel 8048 и подобных им, TDS| |
| |(Transputer Development | |
| |System) фирмы Inmos, и многие| |
| |другие. Такие системы, как | |
| |правило, включают в себя | |
| |набор компиляторов и | |
| |ассемблеров, работающих на | |
| |host-системе (реже - | |
| |загружаемых с host-машины в | |
| |целевую систему), библиотеки,| |
| |выполняющие большую часть | |
| |функций ОС при работе | |
| |программы (но не загрузку | |
| |этой программы!), и средства | |
| |отладки. | |
| |Системы промежуточных типов | |
| |Существуют системы, которые с| |
| |первого взгляда нельзя | |
| |отнести к одному из | |
| |вышеперечисленных классов. | |
| |Такова, например, система | |
| |RT-11, которая, по сути | |
| |своей, является ДОС, но | |
| |позволяет одновременное | |
| |исполнение нескольких | |
| |программ с довольно богатыми | |
| |средствами взаимодействия и | |
| |синхронизации. Другим | |
| |примером промежуточной | |
| |системы являются | |
| |MS Windows 3.x и Windows 95 | |
| |которые, как ОС, используют | |
| |аппаратные средства | |
| |процессора для защиты и | |
| |виртуализации памяти и даже | |
| |могут обеспечивать некоторое | |
| |подобие многозадачной работы,| |
| |но не защищают себя и | |
| |программы от ошибок других | |
| |программ. | |
| |В последнее время вошел в | |
| |употребление еще один термин:| |
| |сетевые ОС, или сокращенно | |
| |NOS (Networking Operating | |
| |System). На взгляд авторов, | |
| |сложившееся использование | |
| |этого термина несколько | |
| |неудачно. Его можно | |
| |употреблять в двух различных | |
| |смыслах: | |
| |Системы, предназначенные для | |
| |предоставления сетевых услуг,| |
| |аналогично тому, как ДОС | |
| |предназначена для | |
| |предоставления средств работы| |
| |с диском. Под такое понимание| |
| |NOS подходят | |
| |узкоспециализированные | |
| |системы, такие как Novell | |
| |Netware, K9Q или программное | |
| |обеспечение маршрутизаторов | |
| |Cisco. | |
| |Системы, способные | |
| |предоставлять сетевые услуги.| |
| |Под такое определение | |
| |подходят практически все | |
| |современные ОС общего | |
| |назначения. | |
| |Судя по тому, что большинство| |
| |``обзоров сетевых | |
| |операционных систем'' в | |
| |компьютерных журналах | |
| |сравнивают не маршрутизатор | |
| |Cisco с K9Q, а Windows NT с | |
| |SunSoft Solaris или OS/2, | |
| |термин NOS в этих публикациях| |
| |понимается во втором смысле. | |
| |Как уже говорилось, | |
| |практически все современные | |
| |ОС и некоторые ДОС способны | |
| |предоставлять сетевые | |
| |сервисы, поэтому этот термин | |
| |почти эквивалентен словам | |
| |``Современная ОС общего | |
| |назначения'' и, таким | |
| |образом, почти не несет | |
| |полезной информации. | |
| | | |
| | | |
| | | |
|2.Если данные обнаруживаются |На производительность системы|. Распределение памяти |
|в кэш-памяти, то они |со страничной организацией |разделами переменной |
|считываются из нее, и |памяти влияют временные |величины(динамическими). В |
|результат передается в |затраты, связанные с |этом случае память машины не |
|процессор. |обработкой страничных |делится заранее на разделы. |
|3. Если нужных данных нет, то|прерываний и преобразованием |Сначала вся память свободна. |
|они вместе со своим адресом |виртуального адреса в |Каждой вновь поступающей |
|копируются из оперативной |физический. Сегментное |задаче выделяется необходимая|
|памяти в кэш-память, и |распределение. Этот метод |ей память. Если достаточный |
|результат выполнения запроса |позволяет дифференцировать |объем памяти отсутствует, то |
|передается в процессор. При |способы доступа к разным |задача не принимается на |
|копировании данных может |частям программы (сегментам).|выполнение и стоит в очереди.|
|оказаться, что в кэш-памяти |Например, если два процесса |После завершения задачи |
|нет свободного места, тогда |используют одну и ту же |память освобождается, и на |
|выбираются данные, к которым |математическую подпрограмму, |это место может быть |
|в последний период было |то в оперативную память может|загружена другая задача. |
|меньше всего обращений, для |быть загружена только одна |Таким образом, в произвольный|
|вытеснения из кэш-памяти. |копия этой подпрограммы |момент времени оперативная |
|Если вытесняемые данные были |Виртуальное адресное |память представляет собой |
|модифицированы за время |пространство процесса делится|случайную последовательность |
|нахождения в кэш-памяти, то |на сегменты, размер которых |занятых и свободных участков |
|они переписываются в |определяется программистом с |(разделов) произвольного |
|оперативную память. Если же |учетом смыслового значения |размера. Например в момент t0|
|эти данные не были |содержащейся в них |в памяти находится только ОС,|
|модифицированы, то их место в|информации. Отдельный сегмент|а к моменту t1 память |
|кэш-памяти объявляется |может представлять собой |разделена между 5 задачами, |
|свободным. |подпрограмму, массив данных и|причем одна из задач, |
|В кэш считывается не один |т.п. При загрузке процесса |завершаясь, покидает память. |
|элемент данных, к которому |часть сегментов помещается в |На освободившееся место после|
|произошло обращение, а целый |оперативную память, а часть |этой задачи загружается |
|блок данных. Это уменьшит |сегментов размещается в |другая задача, поступившая в |
|время доступа к данным. Т.к. |дисковой памяти(если нет |момент t3. Задачами |
|среднее время доступа к |места в оп. памяти). Сегменты|операционной системы при |
|данным в системе с |одной программы могут |реализации данного метода |
|кэш-памятью линейно зависит |занимать в оперативной памяти|управления памятью является: |
|от вероятности нахождение |несмежные участки. Во время |(1) ведение таблиц свободных |
|нужных данных в кэш. |загрузки система создает |и занятых областей, в которых|
|В реальных системах |таблицу сегментов процесса |указываются начальные адреса |
|вероятность попадания в кэш |(аналогичную таблице |и размеры участков памяти; |
|составляет примерно 0,9. |страниц), в которой для |(2)при поступлении новой |
|Высокое значение вероятности |каждого сегмента указывается |задачи - анализ запроса, |
|нахождения данных в |начальный физический адрес |просмотр таблицы свободных |
|кэш-памяти связано с наличием|сегмента в оперативной |областей и выбор раздела, |
|у данных объективных свойств:|памяти, размер сегмента, |размер которого достаточен |
|пространственной и временной |правила доступа, признак |для размещения поступившей |
|локальности. Пространственная|модификации, признак |задачи; (3) загрузка задачи в|
|локальность: если произошло |обращения к данному сегменту |выделенный ей раздел и |
|обращение по некоторому |за последний интервал времени|корректировка таблиц |
|адресу, то с высокой степенью|и некоторая другая |свободных и занятых областей;|
|вероятности в ближайшее время|информация. Если виртуальные |(4) после завершения задачи |
|произойдет обращение к |адресные пространства |корректировка таблиц |
|соседним адресам. Временная |нескольких процессов включают|свободных и занятых областей.|
|локальность: если произошло |один и тот же сегмент, то в |По сравнению с методом |
|обращение по некоторому |таблицах сегментов этих |распределения памяти |
|адресу, то следующее |процессов делаются ссылки на |фиксированными разделами |
|обращение по этому же адресу |один и тот же участок |данный метод обладает гораздо|
|с большой вероятностью |оперативной памяти, в который|большей гибкостью, но ему |
|произойдет в ближайшее время.|данный сегмент загружается в |присущ очень серьезный |
| |единственном экземпляре. |недостаток - фрагментация |
| |Виртуальный адрес при |памяти. Фрагментация - это |
| |сегментной организации памяти|наличие большого числа |
| |может быть представлен парой |несмежных участков свободной |
| |(g, s), где g - номер |памяти очень маленького |
| |сегмента, а s - смещение в |размера (фрагментов). |
| |сегменте. Физический адрес |Настолько маленького, что ни |
| |получается путем сложения |одна из вновь поступающих |
| |начального физического адреса|программ не может поместиться|
| |сегмента, найденного в |ни в одном из участков, хотя |
| |таблице сегментов по номеру |суммарный объем фрагментов |
| |g, и смещения s. |может составить значительную |
| |Недостатком данного метода |величину, намного превышающую|
| |распределения памяти является|требуемый объем памяти. |
| |фрагментация на уровне |Распределение памяти |
| |сегментов и более медленное |перемещаемыми разделами. |
| |по сравнению со страничной |Одним из методов борьбы с |
| |организацией преобразование |фрагментацией является |
| |адреса. |перемещение всех занятых |
| |Сегментно-страничное |участков в сторону старших |
| |распределение. Как видно из |либо в сторону младших |
| |названия, данный метод |адресов, так, чтобы вся |
| |представляет собой комбинацию|свободная память образовывала|
| |страничного и сегментного |единую свободную область. В |
| |распределения памяти и, |дополнение к функциям, |
| |вследствие этого, сочетает в |которые выполняет ОС при |
| |себе достоинства обоих |распределении памяти |
| |подходов. Виртуальное |переменными разделами, в |
| |пространство процесса делится|данном случае она должна еще |
| |на сегменты, а каждый сегмент|время от времени копировать |
| |в свою очередь делится на |содержимое разделов из одного|
| |виртуальные страницы, которые|места памяти в другое, |
| |нумеруются в пределах |корректируя таблицы свободных|
| |сегмента. Оперативная память |и занятых областей. Эта |
| |делится на физические |процедура называется |
| |страницы. Загрузка процесса |"сжатием". Сжатие может |
| |выполняется операционной |выполняться либо при каждом |
| |системой постранично, при |завершении задачи, либо |
| |этом часть страниц |только тогда, когда для вновь|
| |размещается в оперативной |поступившей задачи нет |
| |памяти, а часть на диске. Для|свободного раздела |
| |каждого сегмента создается |достаточного размера. |
| |своя таблица страниц, | |
| |структура которой полностью | |
| |совпадает со структурой | |
| |таблицы страниц, используемой| |
| |при страничном распределении.| |
| |Для каждого процесса | |
| |создается таблица сегментов, | |
| |в которой указываются адреса | |
| |таблиц страниц для всех | |
| |сегментов данного процесса. | |
| |Адрес таблицы сегментов | |
| |загружается в специальный | |
| |регистр процессора, когда | |
| |активизируется | |
| |соответствующий процесс. | |
|13.Кэш-память. Случайное |14.Кэш-память. Прямое |15.Двухуровневое кэширование.|
|отображение данных на кэш. |отображение данных на кэш. |Принцип работы. Выполнение |
|Выполнение запроса в системах|Выполнение запроса в системах|запроса с системах с |
|с кэш памятью. |с кэш памятью. |многоуревневой кэш памятью. |
|Кэш-память-способ организации|Кэш-память-способ организации|Каждый процессор для своей |
|совместного функц-ия двух |совместного функц-ия двух |работы использует |
|типов ЗУ, отличающихся |типов ЗУ, отличающихся |двухуровневый кэш со |
|временем доступа и стоимостью|временем доступа и стоимостью|свойствами охвата. Это |
|хранения данных, кот. |хранения данных, кот. |означает, что кроме |
|позволяет уменьшить время |позволяет уменьшить время |внутреннего кэша первого |
|доступа к данным за счет |доступа к данным за счет |уровня (кэша L1), встроенного|
|динамического копирования в |динамического копирования в |в каждый процессор PowerPC, |
|"быстрое" ЗУ наиболее часто |"быстрое" ЗУ наиболее часто |имеется связанный с ним кэш |
|используемой информации из |используемой информации из |второго уровня (кэш L2). При |
|"медленного" ЗУ. |"медленного" ЗУ. |этом каждая строка в кэше L1 |
|На практике в кэш-память |На практике в кэш-память |имеется также и в кэше L2. В |
|считывается не один элемент |считывается не один элемент |настоящее время объем кэша L2|
|данных, к которому произошло |данных, к которому произошло |составляет 1 Мбайт на каждый |
|обращение, а целый блок |обращение, а целый блок |процессор, а в будущих |
|данных, это увеличивает |данных, это увеличивает |реализациях предполагается |
|вероятность так называемого |вероятность так называемого |его расширение до 4 Мбайт. |
|"попадания в кэш", то есть |"попадания в кэш", то есть |Сама по себе кэш-память |
|нахождения нужных данных в |нахождения нужных данных в |второго уровня позволяет |
|кэш-памяти. |кэш-памяти. |существенно уменьшить число |
|В реальных системах |В реальных системах |обращений к памяти и |
|вероятность попадания в кэш |вероятность попадания в кэш |увеличить степень локализации|
|составляет примерно 0,9. |составляет примерно 0,9. |данных. Для повышения |
|Высокое значение вероятности |Высокое значение вероятности |быстродействия кэш L2 |
|связано с наличием у данных |связано с наличием у данных |построен на принципах прямого|
|свойств: пространственной и |свойств: пространстве