Вопрос 10.
Архитектура Windows 7. Организация ОС.
Уровень аппаратных абстракций HAL (Hardware Abstraction Layer)
Ядро (Kernel)
Исполняющая система (Executive)
Защищенные подсистемы (Protected systems)
Подсистемы среды (environment subsystems)
Уровень аппаратных абстракций(HAL)представляет собой создаваемый производителем аппаратных средств слой программного обеспечения , которые скрывает особенности и различия аппаратуры от верхних уровней ОС.
Основные принципы построения ОС.
Принцип модульности. Модуль – функционально законченный элемент, выполняемый в соответствии с принятым межмодульным интерфейсом. Модуль выделяется по функциональному признаку. Модульная организация позволяет легко (из)заменять неправильно работающие модули в ОС. Чаще всего используются реентерабельные и привилегированные модули.
Принцип совместимости. Одним из аспектов совместимости является способность ОС выполнять программы, написанные для других систем или для более ранних версий данной ОС, а также другой аппаратной платформы
Принцип генерируемости. Согласно принципу генерируемости исходное представление центральной системы должно обеспечивать возможность настройки исходя из конкретной конфигурации, конкретного вычислительного комплекса и круга решаемых задач.
Принцип открытости. Открытая ОС доступна для анализа как пользователям, так и системным специалистам, обслуживающим вычислительную систему. Наращиваемая операционная система позволяет не только использовать возможности генерации, но и вводить в ее состав новые модули.
Супервизор ввода-вывода осуществляет передачу сообщений об ошибках, если таковые происходят в процессе операции управления ввода-вывода.
Супервизор ввода-вывода посылает сообщения о завершении операции ввода-вывода запросившей эту операцию задаче и снимает ее с состояния ожидания ввода-вывода, если задача ожидала завершения операции.
Супервизор ввода-вывода получает запросы на ввод-вывод от супервизора задач или от программных модулей самой ОС.
Прерывания. Программные прерывания. Супервизор прерываний.
Прерывание представляет собой механизм , позволяющий координировать параллельные функционирование отдельных устройств вычислительной системы и реагировать на особые состояния, возникающие при работе процессора , то есть прерывание- это принудительная передача управления от выполняемой программы к системе, происходящая при возникновении определенного события.
Программные прерывания – это прерывания происходящие по соответствующей команде прерывания, то есть по этой команде процессор осуществляет практически те же действия, что и при обычных внутренних прерываниях.
Супервизор прерываний прежде всего сохраняет в дескрипторе текущей задачи рабочие регистры процессора, определяющее контекст прерываемого вычислительного процесса, Далее он определяет ту подпрограмму, которая должна выполнить действия, связанные с обслуживанием настоящего запроса на прерывание.
Операционная система выполняет следующие основные функции, связанные с управлением задачами:
создание и удаление задач;
планирование процессов и диспетчеризация задач;
синхронизация задач, обеспечение их средствами коммуникации.
Система управления задачами обеспечивает прохождение их через компьютер. В зависимости от состояния процесса ему должен быть предоставлен тот или иной ресурс. Создание и удаление задач осуществляется по соответствующим запросам от пользователей или от самих задач. Задача планирования процессов возникла очень давно — в первых пакетных ОС при планировании пакетов задач, которые должны были выполняться на компьютере и оптимально использовать его ресурсы. В настоящее время актуальность этой задачи не так велика.
Планирование и диспетчеризация процессов и задач в ОС.
Планирование процессов – распределение процессов между имеющимися ресурсами. Одним из методов планирования процессов, ориентированных на эффективную загрузку ресурсов, является метод очередей ресурсов. Новые процессы находящиеся во входной очереди называются очередью работ – заданий. Готовые к выполнению процессы располагаются в основной памяти и связаны очередью готовых процессов. Процессы в этой очереди ожидают освобождение ресурса процессорное время.
Диспетчеризация – правила формирования очереди, готовых к выполнению задач (дисциплина обслуживания).
Вытесняющая дисциплина диспетчеризации (RR).
Для решения проблем используется дисциплина обслуживания, называемая карусельной (Round Robin, RR). Дисциплина обслуживания предполагает что каждая задача получает процессорное время порциями или как говорят квантами времени. После окончания кванта времени задача снимается с процессора и он передается следующий задаче. Снятая задача ставится в конец очереди задач готовых к выполнению.
Не вытесняющие дисциплины диспетчеризации ОС.
Самой простой в реализации является дисциплина FCFS (First Come First Served – самый первый пришел первым обслужен) согласно которой задачи обслуживаются в порядке очереди т.е. в порядке их проявления. Те задачи которые были заблокированы в процессе работы после перехода в состояние вновь ставятся в эту очередь готовности. Дисциплина обслуживания SJN (Shortest Job Next) требует чтобы для каждого задания была известна оценка в потребностях машинного времени. Предполагает что имеется только одна очередь заданий готовых к выполнению. Задания которые в процессе своего исполнения были временно заблокированы вновь попадают в конец очереди готовых к выполнению наравне с вновь поступающими. Для устранения этого недостатка была предложена дисциплина SRT (Shortest Remaining Time) следующим будет выполняться задание, которому осталось меньше всего выполняться на процессоре.
Качество диспетчеризации и гарантия обслуживания.
Гарантировать обслуживание можно тремя способами:
Выделять минимальную долю процессорного времени некоторому классу процессов.
Выделять минимальную долю процессорного времени некоторому конкретному процессу, если он готов к выполнению.
Выделять столько процессорного времени некоторому процессу, чтобы он мог выполнять свои вычисления к сроку.
Для сравнения алгоритмов диспетчеризации обычно используются некоторые критерии:
Загрузка центрального процессора
Пропускная способность центрального процессора
Время ожидания
Время отклика
Управление процессами и задачами. Дисциплины диспетчеризации ОС.
Операционная система контролирует следующую деятельность, связанную с процессами:
Создание и удаление процессов
Планирование процессов
Синхронизация процессов
Коммуникация процессов
Разрешение тупиковых ситуаций
Понятие процесса включает:
Программный код
Данные
Содержание стока
Содержание адресного и других регистров процессора.
Дисциплины диспетчеризации ОС
Вытесняющая дисциплина диспетчеризации (RR)
Для решения проблем используется дисциплина обслуживания, называемая карусельной (Round Robin, RR). Дисциплина обслуживания предполагает, что каждая задача получает процессорное время порциями или как говорят квантами времени. После окончания кванта времени задача снимается с процессора, и он передается следующий задаче. Снятая задача ставится в конец очереди задач готовых к выполнению.
Не вытесняющие дисциплины диспетчеризации
Самой простой в реализации является дисциплина FCFS (First Come First Served – самый первый пришел, первым обслужен) согласно которой задачи обслуживаются в порядке очереди, т.е. в порядке их проявления. Те задачи, которые были заблокированы в процессе работы, после перехода в состояние вновь ставятся в эту очередь готовности. Дисциплина обслуживания SJN (Shortest Job Next) требует, чтобы для каждого задания была известна оценка в потребностях машинного времени. Предполагает, что имеется только одна очередь заданий готовых к выполнению. Задания, которые в процессе своего исполнения были временно заблокированы вновь попадают в конец очереди готовых к выполнению наравне с вновь поступающими. Для устранения этого недостатка была предложена дисциплина SRT (Shortest Remaining Time) следующим будет выполняться задание, которому осталось меньше всего выполняться на процессоре.
Стратегия планирования.
Стратегия планирования – определяет какие процессы мы планируем на выполнение для того чтобы достичь поставленной цели. Известно большое количество различных стратегий выбора процессора, которому необходимо предоставить процессор. Среди них, прежде всего, можно выбрать следующие:
По возможности заканчивать вычисления в том же самом порядке, в котором они были начаты
Отдавать предпочтение более коротким вычислительным задачам
Предоставлять всем пользователям одинаковые услуги в том числе и одинаковое время ожидания.
Дисциплины диспетчеризации ОС
Вытесняющая дисциплина диспетчеризации (RR)
Для решения проблем используется дисциплина обслуживания, называемая карусельной (Round Robin, RR). Дисциплина обслуживания предполагает, что каждая задача получает процессорное время порциями или как говорят квантами времени. После окончания кванта времени задача снимается с процессора, и он передается следующий задаче. Снятая задача ставится в конец очереди задач готовых к выполнению.
Не вытесняющие дисциплины диспетчеризации
Самой простой в реализации является дисциплина FCFS (First Come First Served – самый первый пришел, первым обслужен) согласно которой задачи обслуживаются в порядке очереди, т.е. в порядке их проявления. Те задачи, которые были заблокированы в процессе работы, после перехода в состояние вновь ставятся в эту очередь готовности. Дисциплина обслуживания SJN (Shortest Job Next) требует, чтобы для каждого задания была известна оценка в потребностях машинного времени. Предполагает, что имеется только одна очередь заданий готовых к выполнению. Задания, которые в процессе своего исполнения были временно заблокированы вновь попадают в конец очереди готовых к выполнению наравне с вновь поступающими. Для устранения этого недостатка была предложена дисциплина SRT (Shortest Remaining Time) следующим будет выполняться задание, которому осталось меньше всего выполняться на процессоре.
Управление памятью в операционных системах. Способы организации памяти.
Память – важный ресурс требующий тщательного управления.
Виды памяти компьютера:
Кэш память
Оперативная память
Пространство на жестком диске
Часть ОС, отвечающая за управление памятью, называется модулем управления памятью или менеджером памяти. Он следит за тем, какая часть памяти используется в данный момент, а какая свободна. При необходимости выделяет память процессам и по их завершению освобождает ресурсы управляет обменом данных между оперативной памятью и жестким диском, если память слишком мала чтобы вместить все процессы.
В отличие от памяти жесткого диска, которую называют внешней памятью оперативной памяти для сохранения информации требуется постоянное электропитание.
Память является важнейшим ресурсом, требующим тщательного управления со стороны мультипрограммной ОС.
Функции ОС по управлению памятью в мультипрограммной среде.
Функции ОС по управлению памятью в мультипрограммной среде:
Отслеживание свободной и занятой памяти
Первоначальное и динамическое распределение памяти процесса приложений и самой ОС
Освоождение памяти при завершении процессов
Настройка адресов программы на конкретную область физической памяти
Полное или частичное вытеснение кодов и данных процессов из ОП на диск когда размеры ОП недостаточны для размещения всех процессов и возвращение их в ОП
Защита памяти выделенной процессу от возможных вмешательств со второны других процессов
Дефрагментация памяти
Алгоритм распределения памяти в ОС. Методы распределения памяти.
Память распределяется как между модулями прикладных программ, так и между модулями самой ОС.
Виртуальная память - устройство позволяющее программистам рассматривать память с логической точки зрения, не заботясь о наличии физической памяти достаточного объема.
Физическая память – представляет собой упорядоченное множество ячеек реально существующей ОП и все они пронумерованы т.е. к каждой из них можно обратиться указав ее порядковый номер. Количество ячеек физической памяти ограниченно и фиксировано.
Метода распределения памяти:
Необходимым условием для того чтобы программа могла выполняться является ее нахождение в ОП
Только в этом случае процессор может извлекать команды из памяти и интерпретировать их выполняя заданные действия
Подмена ОП дисковой памятью позволяет повысить уровень мультипрограммирования – объем ОП компьютера теперь не столь жестко ограничивает количество одновременно выполняемых процессов.
Распределение оперативный памяти в современных ОС.
Распределению подлежит вся ОП не занятая операционный системой
Для идентификации переменных и команд используются символьные имена, виртуальные адреса и физические адреса.
Совокупность виртуальных адресов процесса называется виртуальным адресным пространством.
Функции ОС по управление памятью. Виртуальное адресное пространство.
Отслеживание свободной и занятой памяти
Первоначальное и динамическое распределение памяти процесса приложений и самой ОС
Освоождение памяти при завершении процессов
Настройка адресов программы на конкретную область физической памяти
Полное или частичное вытеснение кодов и данных процессов из ОП на диск когда размеры ОП недостаточны для размещения всех процессов и возвращение их в ОП
Защита памяти выделенной процессу от возможных вмешательств со второны других процессов
Дефрагментация памяти
Виртуальное адресное пространство – совокупность виртуальных адресов процесса. Диапазон возможных адресов виртуального пространства у всех процессов является одним и тем же. Виртуальное адресное пространство может быть плоским и структурированным. Виртуальное адресное пространство процесса делится на две непрерывные части: системную и пользовательскую. Системная часть является общейтдля всех процессов в ней размещаются коды и данные ОС.
Свопинг и виртуальная память.
Свопинг представляет собой частный случай виртуальной памяти и, следовательно, более простой в реализации способ совместного использования оперативной памяти и диска.
Виртуальная память - устройство позволяющее программистам рассматривать память с логической точки зрения, не заботясь о наличии физической памяти достаточного объема.
Адресация виртуальной памяти.
Файловые системы. Таблицы размещения файлов. Основные файловые системы.
Файловая система – это часть ОС, назначение которой состоит в том, чтобы обеспечить пользователю удобный интерфейс при работе с данными характеризующимися на диске и обеспечить совместное использование файлов несколькими пользователями и процессами.
Таблица размещения файлов:
Основные файловые системы:
FAT (File Allocation Table)
HPFS(High Performance File System)
VFAT (Virtual FAT)
NTFS(New Technology File System)
Функции файловых системы и систем управления файлами. Иерархия данных.
Основные функции, выполняемые файловой системой, можно условно разделить на две группы: функции для работы с файлами, то есть их создание, удаление, изменение атрибутов, определение структуры файлов;функции для работы с данными, хранящимися в файлах, то есть чтение и запись, поиск и т. д.
Система управления файлами является основной подсистемой в абсолютном большинстве современных ОС (хотя в принципе можно обходиться и без нее). Во-первых, через систему управления файлами связываются по данным все системные обрабатывающие программы. Во-вторых, с помощью этой системы решаются проблемы централизованного распределения дискового пространства и управления данными. В-третьих, благодаря использованию той или иной системы управления файлами пользователям предоставляются следующие возможности:
– создание, удаление, переименование (и другие операции) именованных наборов данных (именованных файлов) из своих программ или посредством специальных управляющих программ, реализующих функции интерфейса пользователя с его данными и активно использующих систему управления файлами;
– работа с не дисковыми периферийными устройствами как с файлами;
– обмен данными между файлами, между устройствами, между файлом и устройством (и наоборот);
– работа с файлами с помощью обращений к программным модулям системы управления файлами;
– защита файлов от несанкционированного доступа.
Принципы построения интерфейсов ОС. Понятие операционная среда.
Операционная среда — совокупность компьютерных программ, обеспечивающая оператору возможность управлять вычислительными процессами и файлами. Стандартом на операционные системы (ОС) определены синтаксис и семантика языка оболочки и утилит, составляющих операционную среду компьютера, работающего под управлением такой ОС.
Интерфейс операционных систем– специальные интерфейсы системного и прикладного программирования, для выполнения следующих задач:
- управление процессами:
запуск, приостановка и снятие задачи с выполнения;
задание или изменение приоритета задачи;
взаимодействие задач между собой ;
удаленный вызов подпрограмм;
- управление памятью:
запрос на выделение блока памяти;
освобождение памяти;
изменение параметров блока памяти;
отображение файлов на память;
- управление вводом/выводом:
запрос на управление виртуальными устройствами;
файловые операции.
Обзор современных операционных систем. Эволюция развития.
Windows — семейство проприетарных операционных систем корпорации Microsoft, ориентированных на применение графического интерфейса при управлении. Изначально Windows была всего лишь графической надстройкой для MS-DOS. По состоянию на август 2014 года под управлением операционных систем семейства Windows по данным ресурса Net Applications работает около 89% персональных компьютеров.
Windows 7 — пользовательская операционная система семейства Windows NT, следует по времени выхода за Windows Vista и предшественник Windows 8. По состоянию на 2017 год Windows 7 является самой популярной операционной системой в мире.
Windows 8 — операционная система, принадлежащая к семейству ОС Microsoft Windows, в линейке следующая за Windows 7 и разработанная транснациональной корпорацией Microsoft. Номер версии ядра в линейке NT — 6.2. Поступила в продажу 26 октября 2012 года. По состоянию на февраль 2015 года доля операционной системы Windows 8 среди используемых в мире для доступа к сети Интернет составляет 19,8 % и занимает второе место после Windows 7.
Linux — семейство Unix-подобных операционных систем на базе ядра Linux, включающих тот или иной набор утилит и программ проекта GNU, и, возможно, другие компоненты. Как и ядро Linux, системы на его основе как правило создаются и распространяются в соответствии с моделью разработки свободного и открытого программного обеспечения. Linux-системы распространяются в основном бесплатно в виде различных дистрибутивов — в форме, готовой для установки и удобной для сопровождения и обновлений, — и имеющих свой набор системных и прикладных компонентов, как свободных, так возможно и собственнических.
Windows 98 — 25 июня 1998 года
Разработанная «специально для потребителей», Windows 98 включала в себя поддержку DVD-дисков и USB-устройств, имела утилиту Windows Update, которая автоматически устанавливала обновления операционной системы. Однако наученные горьким опытом общения с «Маздаем», пользователи не спешили переходить на Windows 98, считая ее лишь переходным звеном между Windows 95 и грядущей Windows Millenium, которая как раз и призвана была избавить всех от страданий на пороге нового века.
