Операционные системы (шпаргалка)
Операционные системы (шпаргалка)
|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. Главным достоинством |обеспечиваются как модульные |программным кодом операций с |
|ОС было появление |дополнения-процессы, |определенной областью памяти.|
|мультипрограммирования – это |взаимодействующие главным | |
|способ организации |образом между собой и |[pic] |
|вычислительного процесса, при|осуществляющие взаимодействие| |
|котором на одном процессоре |посредством передачи | |
|попеременно выполняются |сообщений. | |
|несколько программ. Появились|Микроядро является маленьким,| |
|системы разделения времени, |передающим сообщения модулем | |
|при которых создавалась |системного программного | |
|иллюзия единоличного |обеспечения, работающим в | |
|использования машины каждым |наиболее приоритетном | |
|пользователем. |состоянии компьютера и | |
|1980-… |поддерживающим остальную | |
|Потребовалась разработка |часть операционной системы, | |
|дружественного интерфейса, |рассматриваемую как набор | |
|из-за широкого |серверных приложений. | |
|распространения компьютеров. |Достоинства: | |
|Первыми такими ОС были MS-DOS|- более простая организация | |
|и Unix. |чем у монолитных ОС; | |
| |- с микроядром функция | |
| |операционной системы | |
| |разбивается на модульные | |
| |части, которые могут быть | |
| |сконфигурированы целым рядом | |
| |способов, позволяя строить | |
| |большие системы добавлением | |
| |новых частей; | |
| |- микроядра также облегчают | |
| |поддержку мультипроцессоров | |
| |созданием стандартной | |
| |программной среды, которая | |
| |может использовать | |
| |множественные процессоры в | |
| |случае их наличия, однако не | |
| |требует их, если их нет. | |
| |- сети из общающихся между | |
| |собой микроядер могут быть | |
| |использованы для обеспечения | |
| |операционной системной | |
| |поддержки возникающего класса| |
| |массивно параллельных машин. | |
| |- поскольку микроядра малы и | |
| |имеют сравнительно мало | |
| |требуемого к исполнению кода | |
| |уровня ядра, они обеспечивают| |
| |удобный способ поддержки | |
| |характеристик реального | |
| |времени, требующихся для | |
| |мультимедиа, управления | |
| |устройствами и | |
| |высокоскоростных | |
| |коммуникаций. | |
| |- хорошо структурированные | |
| |микроядра обеспечивают | |
| |изолирующий слой для | |
| |аппаратных различий. Таким | |
| |образом, они упрощают | |
| |перенесение кода и | |
| |увеличивают уровень его | |
| |повторного использования. | |
| |Недостатки: | |
| |Ухудшение показателя | |
| |производительности за счет | |
| |большого числа переключений | |
| |между пользовательским и | |
| |привелигерованным режимами. | |
|8. Иерархия памяти. |9. Способы управления |12.Кэширование данных. |
|Управление памятью без |оперативной памятью. Типы |Принцип работы кэш-памяти. |
|использования внешней памяти.|адресов. Страничное |Способы отображения данных на|
| |распределение памяти, |кэш. |
|Иерархия памяти. Память |сегментное, |Кэширование данных. |
|вычислительной машины |сегментно-страничное |Кэш-память - это способ |
|представляет собой иерархию |распределение. |организации совместного |
|запоминающих устройств |Управление памятью. Память |функционирования двух типов |
|(внутренние регистры |является важнейшим ресурсом, |запоминающих устройств, |
|процессора, различные типы |требующим тщательного |отличающихся временем доступа|
|сверхоперативной и |управления со стороны |и стоимостью хранения данных,|
|оперативной памяти, диски, |мультипрограммной |который позволяет уменьшить |
|ленты), отличающихся средним |операционной системы. |среднее время доступа к |
|временем доступа и стоимостью|Распределению подлежит вся |данным за счет динамического |
|хранения данных в расчете на |оперативная память, не |копирования в "быстрое" ЗУ |
|один бит. Методы |занятая операционной |наиболее часто используемой |
|распределения памяти без |системой. Обычно ОС |информации из "медленного" |
|использования дискового |располагается в самых младших|ЗУ. |
|пространства. Все методы |адресах, однако может |Механизм кэш-памяти является |
|управления памятью могут быть|занимать и самые старшие |прозрачным для пользователя, |
|разделены на два класса: |адреса. Функциями ОС по |который не должен сообщать |
|методы, которые используют |управлению памятью являются: |никакой информации об |
|перемещение процессов между |отслеживание свободной и |интенсивности использования |
|оперативной памятью и диском,|занятой памяти, выделение |данных и не должен никак |
|и методы, которые не делают |памяти процессам и |участвовать в перемещении |
|этого. Начнем с последнего, |освобождение памяти при |данных из ЗУ одного типа в ЗУ|
|более простого класса |завершении процессов, |другого типа, все это |
|методов. Этот метод имеет 3 |вытеснение процессов из |делается автоматически |
|решения. Рассмотрим их. |оперативной памяти на диск, |системными средствами. |
|Распределение памяти |когда размеры основной памяти|Кэш память используется для |
|фиксированными разделами. |не достаточны для размещения |уменьшения среднего времени |
|Самым простым способом |в ней всех процессов, и |доступа к данным, хранящимся |
|управления оперативной |возвращение их в оперативную |в оперативной памяти. Для |
|памятью является разделение |память, когда в ней |этого между процессором и |
|ее на несколько разделов |освобождается место, а также |оперативной памятью |
|фиксированной величины. Это |настройка адресов программы |помещается быстрое ЗУ, |
|может быть выполнено вручную |на конкретную область |называемое просто |
|оператором во время старта |физической памяти. |кэш-памятью. Содержимое |
|системы или во время ее |Типы адресов. Для |кэш-памяти представляет собой|
|генерации. Очередная задача, |идентификации переменных и |совокупность записей обо всех|
|поступившая на выполнение, |команд используются |загруженных в нее элементах |
|помещается либо в общую |символьные имена (метки), |данных. Каждая запись об |
|очередь, либо в очередь к |виртуальные адреса и |элементе данных включает в |
|некоторому разделу. |физические адреса. |себя адрес, который этот |
|Подсистема управления памятью|Виртуальные адреса |элемент данных имеет в |
|в этом случае выполняет |вырабатывает транслятор, |оперативной памяти, и |
|следующие задачи: |переводящий программу на |управляющую информацию: |
|(1)сравнивая размер |машинный язык. Так как во |признак модификации и признак|
|программы, поступившей на |время трансляции в общем |обращения к данным за |
|выполнение, и свободных |случае не известно, в какое |некоторый последний период |
|разделов, выбирает подходящий|место оперативной памяти |времени. |
|раздел. (2) осуществляет |будет загружена программа, то|Принцип работы кэш. В |
|загрузку программы и |транслятор присваивает |системах, оснащенных |
|настройку адресов. При |переменным и командам |кэш-памятью, каждый запрос к |
|очевидном преимуществе - |виртуальные (условные) |оперативной памяти |
|простоте реализации - данный |адреса, обычно считая по |выполняется в соответствии со|
|метод имеет существенный |умолчанию, что программа |следующим алгоритмом: |
|недостаток - жесткость. Так |будет размещена, начиная с |1.Просматривается содержимое |
|как в каждом разделе может |нулевого адреса. Совокупность|кэш-памяти с целью |
|выполняться только одна |виртуальных адресов процесса |определения, не находятся ли |
|программа, то уровень |называется виртуальным |нужные данные в кэш-памяти; |
|мультипрограммирования |адресным пространством. |кэш-память не является |
|заранее ограничен числом |Каждый процесс имеет |адресуемой, поэтому поиск |
|разделов не зависимо от того,|собственное виртуальное |нужных данных осуществляется |
|какой размер имеют программы.|адресное пространство. |по содержимому - значению |
|Даже если программа имеет |Максимальный размер |поля "адрес в оперативной |
|небольшой объем, она будет |виртуального адресного |памяти", взятому из запроса. |
|занимать весь раздел, что |пространства ограничивается | |
|приводит к неэффективному |разрядностью адреса, присущей| |
|использованию памяти. С |данной архитектуре | |
|другой стороны, даже если |компьютера, и, как правило, | |
|объем оперативной памяти |не совпадает с объемом | |
|машины позволяет выполнить |физической памяти, имеющимся | |
|некоторую программу, |в компьютере. Физические | |
|разбиение памяти на разделы |адреса соответствуют номерам | |
|не позволяет сделать этого |ячеек оперативной памяти, где| |
| |в действительности | |
| |расположены или будут | |
| |расположены переменные и | |
| |команды. Переход от | |
| |виртуальных адресов к | |
| |физическим может | |
| |осуществляться двумя | |
| |способами. В первом случае | |
| |замену виртуальных адресов на| |
| |физические делает специальная| |
| |системная программа - | |
| |перемещающий загрузчик. | |
| |Второй способ заключается в | |
| |том, что программа | |
| |загружается в память в | |
| |неизмененном виде в | |
| |виртуальных адресах, при этом| |
| |операционная система | |
| |фиксирует смещение | |
| |действительного расположения | |
| |программного кода | |
| |относительно виртуального | |
| |адресного пространства. Во | |
| |время выполнения программы | |
| |при каждом обращении к | |
| |оперативной памяти | |
| |выполняется преобразование | |
| |виртуального адреса в | |
| |физический. | |
| |Страничное распределение | |
| |памяти. Виртуальное адресное | |
| |пространство каждого процесса| |
| |делится на части одинакового,| |
| |фиксированного для данной | |
| |системы размера, называемые | |
| |виртуальными страницами. Вся | |
| |оперативная память машины | |
| |также делится на части такого| |
| |же размера, называемые | |
| |физическими страницами (или | |
| |блоками). Размер страницы | |
| |обычно выбирается равным | |
| |степени двойки: 512, 1024 и | |
| |т.д., это позволяет упростить| |
| |механизм преобразования | |
| |адресов. При загрузке | |
| |процесса часть его | |
| |виртуальных страниц | |
| |помещается в оперативную | |
| |память, а остальные - на | |
| |диск. Смежные виртуальные | |
| |страницы не обязательно | |
| |располагаются в смежных | |
| |физических страницах. При | |
| |загрузке операционная система| |
| |создает для каждого процесса | |
| |информационную структуру - | |
| |таблицу страниц, в которой | |
| |устанавливается соответствие | |
| |между номерами виртуальных и | |
| |физических страниц для | |
| |страниц, загруженных в | |
| |оперативную память, или | |
| |делается отметка о том, что | |
| |виртуальная страница | |
| |выгружена на диск. При | |
| |активизации очередного | |
| |процесса в специальный | |
| |регистр процессора | |
| |загружается адрес таблицы | |
| |страниц данного процесса. При| |
| |каждом обращении к памяти | |
Страницы: 1, 2, 3, 4
|