возможность развития ос достигается за счет
Требования к современным операционным системам
Главным требованием, предъявляемым к операционной системе, является выполнение ею основных функций эффективного управления ресурсами и обеспечение удобного интерфейса для пользователя и прикладных программ. Современная ОС, как правило, должна поддерживать мультипрограммную обработку, виртуальную память, свопинг, многооконный графический интерфейс пользователя, а также выполнять многие другие необходимые функции и услуги. Кроме этих требований функциональной полноты к операционным системам предъявляются не менее важные эксплуатационные требования, которые перечислены ниже.
Расширяемость. В то время как аппаратная часть компьютера устаревает за
несколько лет, полезная жизнь операционных систем может измеряться десятилетиями. Примером может служить ОС UNIX. Поэтому операционные системы всегда изменяются со временем эволюционно, и эти изменения более значимы, чем изменения аппаратных средств. Изменения ОС обычно заключаются в приобретении ею новых свойств, например поддержке новых типов внешних устройств или новых сетевых технологий. Если код ОС написан таким образом, что дополнения и изменения могут вноситься без на рушения целостности системы, то такую ОС называют расширяемой. Расширяемость достигается за счет модульной структуры ОС, при которой программы строятся из набора отдельных модулей, взаимодействующих только через функциональный интерфейс.
Переносимость. В идеале код ОС должен легко переноситься с процессора одного типа на процессор другого типа и с аппаратной платформы (которые различаются не только типом процессора, но и способом организации всей аппаратуры компьютера) одного типа на аппаратную платформу другого типа. Переносимые ОС имеют несколько вариантов реализации для разных платформ, такое свойство ОС называют также многоплатформенностью.
Совместимость. Существует несколько «долгоживущих» популярных операционных систем (разновидности UNIX, MS-DOS, Windows 3.x, Windows NT, OS/2), для которых наработана широкая номенклатура приложений. Некоторые из них пользуются широкой популярностью. Поэтому для пользователя, переходящего по тем или иным причинам с одной ОС на другую, очень при влекательна возможность запуска в новой операционной системе привычного приложения. Если ОС имеет средства для выполнения прикладных программ, написанных для других операционных систем, то про нее говорят, что она обладает совместимостью с этими ОС. Следует различать совместимость на уровне двоичных кодов и совместимость на уровне исходных текстов. Понятие совместимости включает также поддержку пользовательских интерфейсов других ОС.
Надежность/ отказоустойчивость. Система должна быть защищена как от внутренних, так и от внешних ошибок, сбоев и отказов. Ее действия должны быть всегда предсказуемыми, а приложения не должны иметь возможности наносить вред ОС. Надежность и отказоустойчивость ОС прежде всего определяются архитектурными решениями, положенными в ее основу, а также качеством ее реализации (отлаженностью кода). Кроме того, важно, включает ли ОС программную поддержку аппаратных средств обеспечения отказоустойчивости, таких, например, как дисковые массивы или источники бесперебойного питания.
Безопасность. Современная ОС должна защищать данные и другие ресурсы вычислительной системы от несанкционированного доступа. Чтобы ОС обладала свойством безопасности, она должна как минимум иметь в своем составе средства аутентификации — определения легальности пользователей, авторизации — предоставления легальным пользователям дифференцированных прав доступа к ресурсам, аудита — фиксации всех «подозрительных» для безопасности системы событий. Свойство безопасности особенно важно для сетевых ОС. В таких ОС к задаче контроля доступа добавляется задача защиты данных, передаваемых по сети.
Производительность. Операционная система должна обладать настолько хорошим быстродействием и временем реакции, насколько это позволяет аппаратная платформа. На производительность ОС влияет много факторов, среди которых основными являются архитектура ОС, многообразие функций, качество программирования кода, возможность исполнения ОС на высокопроизводительной (многопроцессорной) платформе.
Возможности развития ОС, требования к ОС, средства аппаратной поддержки ОС
Необходимость развития обусловлена следующими причинами:
¾ обновление и возникновение новых видов аппаратного обеспечения
¾ появление новых сервисов (для удовлетворения пользователей или нужд системных администраторов)
¾ необходимость внесения исправлений (вызвана тем, что в любой сложной системе обязательно присутствуют ошибки; часть из них «вылавливается» в ходе создания системы, но достаточно много выявляется в ходе эксплуатации)
Обычно для внесения достаточно больших исправлений и внедрения новых идей используется версионность программных продуктов.
Требования, предъявляемые к ОС:
1. Эффективность(степень соответствия своему назначению, техническое совершенство и экономическая целесообразность)
2. Надежность и отказоустойчивость
5. Безопасность (защищенность)
Под расширяемостью понимают возможность добавлять в ОС новую функциональность без изменения уже существующих компонентов системы.
Необходимость расширяемости связана с быстрым развитием аппаратных средств и технологий программирования.
Под переносимостью понимается возможность без кардинальной переработки кода переносить ОС на новые аппаратные платформы с полным сохранением имеющейся функциональности.
Для того чтобы ОС была переносимой, необходимо еще на этапе ее разработки выполнить 1 условия:
1. Выделить весь аппаратно зависимый код ОС в отдельный модуль, предоставляющий остальным компонентам ОС аппаратно независимые услуги. При это размер этого модуля и его проникновение в структуру ОС должно быть по возможности минимальным.
2. Реализовать код всех аппаратно независимых модулей ОС на ЯВУ, т.к. низкоуровневый язык (ассемблер) сам является аппаратно зависимым.
Если указанные условия выполняются, то при переносе ОС на другую аппаратную платформу достаточно будет переписать только аппаратно зависимый модуль. В то время как исходные коды остальных компонентов системы, написанные на ЯВУ, останутся неизменными и их достаточно будет только перекомпилировать.
Под совместимостью понимается способность ОС исполнять прикладные программы, ориентированные на другие ОС или на более ранние версии той же ОС.
Различают совместимость на уровне исходных кодов и двоичную совместимость.
Первый тип совместимости – это способность ОС исполнять программы, первоначально ориентированные на другую ОС, после перекомпиляции этих программ.
Второй тип совместимости – это способность ОС загружать исполняемые файлы, первоначально предназначенные для другой ОС, и нормально исполнять представленные в них программы.
Для пользователей этот вариант совместимости представляет наибольший интерес.
Вид совместимости определяется:
2. Интерфейсом прикладного программирования (API)
3. Внутренней структурой исполняемого файла
4. Наличием соответствующих компиляторов и библиотек
Способы достижения совместимости:
1. Эмуляция двоичного кода
2. Трансляция библиотек
3. Создание множественных прикладных сред различной архитектуры
ОС – это не только набор программных средств, существует целый спектр аппаратных элементов, которые не предназначены для обработки данных (вычислений), а предназначены для поддержки работоспособности ОС, улучшение ряда ее характеристик.
К таким средствам аппаратной поддержки ОС относятся:
¾ средства поддержки привилегированного режима: системные регистры процессора, слово состояния процессора, привилегированные команды и привилегированные режимы
¾ средства трансляции адресов: буферы быстрой трансляции виртуальных адресов. регистры процессора и средства поддержки сегментно-страничных таблиц
¾ средства переключения процессов: регистры общего назначения, системные регистры, указатели и флаги операций
¾ система прерываний: регистры и флаги прерываний, регистры масок, контроллеры прерываний
¾ системный таймер и системные часы
¾ средства защиты памяти: граничные регистры и ключи
Эта тема принадлежит разделу:
Экзаменационные вопросы по курсу операционные системы
Общая характеристика понятий сложность система модель.. существующие предметные области и явления сложны в силу этого реальный наблюдатель может видеть только отдельные..
Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Возможности развития ОС, требования к ОС, средства аппаратной поддержки ОС
Что будем делать с полученным материалом:
Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:
Все темы данного раздела:
Исследование объекта как системы, признаки сложности системы
Объектом познания является часть реального мира, которая выделяется и воспринимается как единое целое в течение длительного времени. Объект может быть материальным или абстрактным, естеств
Факторные подсистемы сложных систем, принципы системного подхода
Сложные системы можно подразделить на следующие факторные подсистемы: 1) решающую, которая принимает глобальные решения во взаимодействии с внешней средой и распределяет локальные задания
Архитектура процессора с точки зрения программиста
Для программиста любой процессор состоит из набора регистров памяти различного назначения, которые определенным образом связаны между собой и обрабатываются в соответствии с некоторой системой прав
Основные этапы эволюции вычислительных систем
Существуют различные классификации ВС. Наиболее часто они классифицируются по элементной базе. В соответствии с этой классификацией в эволюции ВС выделяются 4 этапа: 1. Первый период (1945
ОС в иерархической структуре программного и аппаратного обеспечения компьютера (внешняя среда ОС)
Иерархическая структура программно-аппаратных средств компьютера: Существует большое разнообразие ОС,
Организация эффективного использования ресурсов компьютера. Облегчение процессов эксплуатации аппаратных и программных средств вычислительной системы
К числу основных ресурсов современных ОС можно отнести процессоры, ОЗУ, таймеры, наборы данных, диски, накопители на магнитных лентах, принтеры, сетевые устройства и т.д. Ресурсы должны быть распре
Монолитная архитектура ОС
В монолитной архитектуре ОС уже присутствует некая структурированность, которая определяется набором процедур. Здесь каждая процедура имеет хорошо определенный интерфейс и может вызвать лю
Многоуровневая архитектура ОС
Многоуровневая архитектура появилась в ответ на ограничения монолитной архитектуры в плане расширяемости, переносимости и совместимости. Основная ее идея состоит в следующем: 1. П
Понятие процесса, состояния процесса, модель процесса
Процесс является фундаментальным понятием, отражающим функционирование ОС. По своей сути это динамический объект, над которым ОС выполняет определенные действия. Рассмотрим модели процессо
Планирование процессов. Уровни планирования
Процессы – деятельность ОС. Одной из составляющих процессов являются ресурсы. Они ограничены. Поскольку процессов много, необходимо организовать координацию их использования. Кроме того, процессы –
Критерии планирования и требования к алгоритмам
Понятно, что могут существовать различные алгоритмы планирования. И хотелось бы, чтобы они были универсальны, но реально этого не происходит. Чаще всего тот или иной алгоритм подходит к определенно
Параметры планирования
При планирование ОС опирается на два класса параметров объекта. Первый класс отражает статистические параметры, второй – динамические. Статистические параметры не изменяются в ходе функционирования
Вытесняющее и невытесняющее планирование
Процесс планирования осуществляется частью ОС, называемой планировщиком. Он может принимать решения о выборе для исполнения нового процесса из числа находящихся в состоянии готовность в следующих 4
Алгоритм планирования процессов First-Come, First-Served (FCFS)
Реально существует множество разнообразных алгоритмов планирования. Каждый из них эффективен для определенного класса задач. Существуют алгоритмы, которые можно применять на различных уров
Алгоритм планирования процессов Round Robin (RR)
Отмеченные недостатки устраняются в следующем алгоритме: Round Robin (RR). В целом он похож на предыдущий алгоритм, но дополнительно вводится механизм вытесняющего планирования.
Алгоритм планирования процессов Shortest-Job-First (невытесняющий)
При рассмотрении алгоритмов FCFS и RR мы видели, насколько существенным для них является порядок расположения процессов в очереди процессов, готовых к исполнению. Если короткие задачи расположены в
Алгоритм планирования процессов Shortest-Job-First (вытесняющий)
При вытесняющем SJF-планировании учитывается появление новых процессов в очереди готовых к исполнению (из числа вновь родившихся или разблокированных) во время работы выбранного процесса.
Многоуровневые очереди в планировании процессов (без обратной связи и с обратной связью)
(Multilevel Queue) Для систем, в которых процессы могут быть легко рассортированы по
Потоки. Мультипрограммирование на уровне потоков
Чтобы поддерживать мультипрограммирование (многозадачность), ОС должна определить и оформить для себя те внутренние единицы работы, между которыми будет разделяться процессор и другие ресурсы компь
Общие характеристики связи между процессами
* направление связи. Связь бывает однонаправленная (симплексная) и двунаправленная (полудуплексная для поочередной передачи информации и дуплексная с возможностью одновременной передачи да
Семафоры, мьютексы. Использование семафоров для синхронизации процессов
Обобщением блокирующих переменных являются так называемые семафоры Дийкстры. Вместо двоичных переменных Дийкстра (Dijkstra) предложил использовать переменные, которые могут принимать целые
Организация физической памяти компьютера
Со времен создания ЭВМ фон Неймана основная память в компьютерной системе организована как линейное (одномерное) адресное пространство, состоящее из последовательности слов, а позже байтов. Аналог
Виртуальная память
Объем оперативной памяти существенно сказывается на характере протекания вы- числительного процесса, так как он ограничивает число одновременно выполняющихся программ, т. е. урове
Методы структуризации виртуального адресного пространства
Большинство систем виртуальной памяти используют технику, называемую страничной организацией памяти. Любой процесс, реализуемый в компьютере, может обратиться к множеству адресов в памяти. Адреса м
Страничная организация виртуальной памяти
При страничной организации виртуальное адресное пространство каждого процесса делится на части одинакового, фиксированного для данной системы размера, называемые виртуальными страницами (Virtual
Сегментация виртуальной памяти
При страничной организации виртуальное адресное пространство делится на равные части механически без учета смыслового значения данных. Для многих задач наличие двух и более отдельных виртуальных ад
Программная поддержка механизмов виртуальной памяти
52. Общая характеристика устройств ввода – вывода Внешние устройства, выполняющие операции ввода-вывода, можно разделить на три группы: · устройства, работающие с
Драйверы устройств ввода вывода
Первоначально термин «драйвер» применялся в достаточно узком смысле; под драйвером понимается программный модуль, который: · входит в состав ядра ОС, работая в привилегированном режиме;
Многослойная модель подсистемы ввода-вывода
При большом разнообразии устройств ввода-вывода, обладающих существенно различными характеристиками, иерархическая структура подсистемы ввода-вывода позволяет соблюсти баланс между двумя противоре
Архитектура файловой системы
Классическая схема организации программного обеспечения файловой системы представлена на рис.
Логическая организация файлов
Логический ввод-вывод предоставляет приложениям и пользователям доступ к записям. Метод доступа Наиболее близкий пользователю уровень файловой системы. Он обеспечивает стандартный
Каталоговые системы
Связующим звеном между системой управления файлами и набором файлов служит файловый каталог. Простейшая форма системы каталогов состоит в том, что имеется один каталог, в котором содержатся все ф
Физическая организация файловой системы
Информационная структура магнитных дисков Представление пользователей о файловой системе как об иерархически организованном множестве информационных блоков имеет мало общего с порядком хр
S – номер сектора
На каждой стороне каждой пластины размечены тонкие концентрические кольца дорожки (tracks), на которых хранятся данные. Нумерация дорожек начинается с 0 от внешнего края к
Физическая организация и адресация файла
Физическая организация выделяет способ размещения файлов на диске и учет соответствия блоков диска файлам. Основными критериями эффективности физической организации файлов являются:
Физическая организация FAT
Для обеспечения доступа приложений к файлам операционная система с файловой системой FAT использует следующие структуры: · загрузочные сектора главного и дополнительных разде
Основные этапы развития операционных систем корпорации Microsoft
Операционные системы корпорации Microsoft для настольных и переносныхкомпьютеров можно разделить на три семейства: MS DOS, Consumer Windows (Windows95/98/Me) и Professional (Windows NT/2000/2003/.
Общая характеристика структуры ОС Windows 2000,основные изменения в ней по сравнению с ОС Windows NT
Операционная система 2000 состоит из двух основных частей: самой операционной системы, работающей в режиме ядра, и подсистем окружения, работающих в режиме пользователя. Ядро является
Основные функции, выполняемые уровнем HAL ОС Windows 2000
Над уровнем HAL располагается уровень, содержащий ядро ОС, а также драйверы устройств. Существуют четыре вида драйверов: (1) аппаратных средств, (2) файловойсистемы, (3) фильтров и (4) сетевых уст
Общая характеристика исполняющей подсистемы ОС Windows 2000
Над ядром и драйверами устройств располагается исполняющая система. Она написана на языке С, не зависит от архитектуры машины и может быть перенесена на новые машины относительно просто. Исп
Основные особенности файловой системы NTFS 5 по сравнению с предыдущими файловыми системами Microsoft
Файловая система NTFS была полностью разработана заново и достаточно сложна. Каждый том NTFS (т. е. дисковый раздел) содержит файлы, каталоги, битовые массивы и другие структуры данных. Каждый том
Основные принципы работы шифрующей файловой системы в ОС Windows 2000
Файловая система NTFS поддерживает прозрачное сжатие файлов. Файл может быть создан в сжатом режиме. Это значит, что файловая система NTFS будет автоматически пытаться сжать блоки этого файла при з
Набор API для Win 32
Этот набор интерфейсов прикладного программирования позволяет выполнять шифрование файлов, дешифрование и восстановление зашифрованных файлов, а также их импорт и экспорт (без предварительного деши
Архитектура, назначение и функции операционных систем
1.6. Классификация операционных систем
Все многообразие существующих (и ныне не использующихся) ОС можно классифицировать по множеству различных признаков. Остановимся на основных классификационных признаках.
По назначению ОС делятся на универсальные и специализированные. Специализированные ОС, как правило, работают с фиксированным набором программ (функциональных задач). Применение таких систем обусловлено невозможностью использования универсальной ОС по соображениям эффективности, надежности, защищенности и т.п., а также вследствие специфики решаемых задач [10].
Универсальные ОС рассчитаны на решение любых задач пользователей, но, как правило, форма эксплуатации вычислительной системы может предъявлять особые требования к ОС, т.е. к элементам ее специализации.
Поддержка многозадачности (многопрограммности). По числу одновременно выполняемых задач ОС делятся на 2 класса: однопрограммные (однозадачные) – например, MS-DOS, MSX, и многопрограммные (многозадачные) – например, ОС ЕС ЭВМ, OS/360, OS/2, UNIX, Windows разных версий.
Поддержка многопользовательского режима. По числу одновременно работающих пользователей ОС делятся: на однопользовательские (MS-DOS, Windows 3х, ранние версии OS/2) и многопользовательские (UNIX, Windows NT/2000/2003/XP/Vista).
Главное отличие многопользовательских систем от однопользовательских – наличие средств защиты информации каждого пользователя от несанкционированного доступа других пользователей. Следует заметить, что может быть однопользовательская мультипрограммная система.
Виды многопрограммной работы. Специфику ОС во многом определяет способ распределения времени между несколькими одновременно существующими в системе процессами (или потоками). По этому признаку можно выделить 2 группы алгоритмов: не вытесняющая многопрограммность (Windows3.x, NetWare) и вытесняющая многопрограммность (Windows 2000/2003/XP, OS/2, Unix).
В первом случае активный процесс выполняется до тех пор, пока он сам не отдает управление операционной системе. Во втором случае решение о переключении процессов принимает операционная система. Возможен и такой режим многопрограммности, когда ОС разделяет процессорное время между отдельными ветвями (потоками, волокнами) одного процесса.
Многопроцессорная обработка. Важное свойство ОС – отсутствие или наличие средств поддержки многопроцессорной обработки. По этому признаку можно выделить ОС без поддержки мультипроцессирования (Windows 3.x, Windows 95) и с поддержкой мультипроцессирования (Solaris, OS/2, UNIX, Windows NT/2000/2003/XP).
Многопроцессорные ОС классифицируются по способу организации вычислительного процесса на асимметричные ОС (выполняются на одном процессоре, распределяя прикладные задачи по остальным процессорам) и симметричные ОС (децентрализованная система).
Первые предназначались для решения задач в основном вычислительного характера, не требующих быстрого получения результатов. Критерий создания таких ОС – максимальная пропуская способность при хорошей загрузке всех ресурсов компьютера. В таких системах пользователь отстранен от компьютера.
Системы разделения времени обеспечивают удобство и эффективность работы пользователя, который имеет терминал и может вести диалог со своей программой.
Системы реального времени предназначены для управления техническими объектами (станок, спутник, технологический процесс, например доменный и т.п.), где существует предельное время на выполнение программ, управляющих объектом.
1.7. Эффективность и требования, предъявляемые к ОС
Эффективность. Под эффективностью вообще любой технической (да и не только технической) системы понимается степень соответствия системы своему назначению, которая оценивается некоторым множеством показателей эффективности [10].
Поскольку ОС представляет собой сложную программную систему, она использует для собственных нужд значительную часть ресурсов компьютера. Часто эффективность ОС оценивают ее производительностью (пропускной способностью) – количеством задач пользователей, выполняемых за некоторый промежуток времени, временем реакции на запрос пользователя и др.
На все эти показатели эффективности ОС влияет много различных факторов, среди которых основными являются архитектура ОС, многообразие ее функций, качество программного кода, аппаратная платформа (компьютер) и др.
Надежность и отказоустойчивость. Операционная система должна быть, по меньшей мере, так же надежна, как компьютер, на котором она работает. Система должна быть защищена как от внутренних, так и от внешних сбоев и отказов. В случае ошибки в программе или аппаратуре система должна обнаружить ошибку и попытаться исправить положение или, по крайней мере, постараться свести к минимуму ущерб, нанесенный этой ошибкой пользователям.
Надежность и отказоустойчивость ОС, прежде всего, определяются архитектурными решениями, положенными в ее основу, а также отлаженностью программного кода (основные отказы и сбои ОС в основном обусловлены программными ошибками в ее модулях). Кроме того, важно, чтобы компьютер имел резервные дисковые массивы, источники бесперебойного питания и др., а также программную поддержку этих средств.
Безопасность (защищенность). Ни один пользователь не хочет, чтобы другие пользователи ему мешали. ОС должна защищать пользователей и от воздействия чужих ошибок, и от попыток злонамеренного вмешательства (несанкционированного доступа). С этой целью в ОС как минимум должны быть средства аутентификации – определения легальности пользователей, авторизации – предоставления легальным пользователям установленных им прав доступа к ресурсам, и аудита – фиксации всех потенциально опасных для системы событий.
Свойства безопасности особенно важны для сетевых ОС. В таких ОС к задаче контроля доступа добавляется задача защиты данных, передаваемых по сети.
Следует заметить, что в зависимости от области применения конкретной операционной системы может изменяться и состав предъявляемых к ней требований.
Производители могут предлагать свои ОС в различных, различающихся ценой и производительностью, конфигурациях. Например, Microsoft продает [10]: