Студопедия  
Главная страница | Контакты | Случайная страница

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Архитектура ОС

Читайте также:
  1. Cостав и архитектура компьютеров
  2. Hub-архитектура
  3. IV. Архитектура Древнего Новгорода X - XIV веков.
  4. V. Архитектура Владимира
  5. Архитектура
  6. АРХИТЕКТУРА
  7. Архитектура
  8. Архитектура
  9. АРХИТЕКТУРА
  10. Архитектура

Основные компоненты ОС

 

12. Многозадачные ОС. Архитектура многозадачных ОС

Архитектура ОС

Модульный состав и организация межмодульного взаимодействия и составляют архитектуру ОС.

Самый нижний уровень иерархии составляет реальная машина с ее интерфейсом оборудования.

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

На основе этого интерфейса строится абстрактная машина второго уровня и т.д. Последовательным наращиванием слоев программного обеспечения интерфейс абстрактной машины доводится до уровня интерфейса процессов.

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

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

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

Реальные ОС, как правило, сочетают в себе комбинацию различных архитектурных подходов.

 

13. Ядро многозадачных ОС.

Все современные ОС предполагают выполнение программных задач на аппаратной платформе, обеспечивающей по крайней мере 2 режима функционирования процессора:

· Режим ядра (супервизора) – в котором программа может выполнять все команды процессора

· Режим процесса (задачи) – программа может выполнять лишь некоторое подмножество команд, в которое не входят команды управления системой.

Под процессом подразумевается загруженная в память и готовая к исполнению программа.

Та часть ОС, которая работает в режиме ядра, так и называется ядром. Процессы пользователей работают в режиме процесса. Большая (количественно) часть модулей ОС также работает в режиме процесса.

На ядро, как правило, возлагаются такие основные функции:

· обработка прерываний;

· создание и уничтожение процессов;

· переключение процессов из одного состояния в другое;

· синхронизация и взаимодействие процессов;

· поддержка операций ввода-вывода;

· поддержка файловой системы;

· учет работы системы и использования ресурсов пользователями;

 

14. Проблема возникновения коллизий при формировании таблиц идентификаторов

Проблема выбора хэш-функции не имеет универсального решения. Хэширо­вание обычно происходит за счет выполнения над цепочкой символов неко­торых простых арифметических и логических операций. Самой простой хэш-функцией для символа является код внутреннего представления в компьюте­ре литеры символа. Эту хэш-функцию можно использовать и для цепочки символов, выбирая первый символ в цепочке.

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

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

Для полного исключения коллизий хэш-функция должна быть взаимно одно­значной: каждому элементу из области определения хэш-функции должно соответствовать одно значение из ее множества значений, и наоборот — ка­ждому значению из множества значений этой функции должен соответствовать только один элемент из ее области определения. Тогда любым двум произвольным элементам из области определения хэш-функции будут всегда соответствовать два различных ее значения. Теоретически для идентификаторов такую хэш-функцию построить можно, так как и область определения хэш-функции (все возможные имена идентификаторов), и область ее значений (целые неотрицательные числа) являются бесконечными счетными множествами, поэтому можно организовать взаимно однозначное отображение одного множества на другое.

Но на практике существует ограничение, делающее создание взаимно однознач­ной хэш-функции для идентификаторов невозможным. Дело в том, что в реаль­ности область значений любой хэш-функций ограничена размером доступного адресного пространства компьютера. Множество адресов любого компьюте­ра с традиционной архитектурой может быть велико, но всегда конечно, то есть ограничено. Организовать взаимно однозначное отображение бесконечного множества на конечное даже теоретически невозможно.

 

15. Основные виды Windows (3.х, 9x, NT, XP)

Windows 3.x

   

Windows 3.x (3.1, 3.11) фирмы Microsoft (3.1 - 1987г.) представляет собой надстройку над MS DOS. Фактически, Windows «перехватывает» у DOS управление большинством ресурсов (кроме файловой системы).

Основным нововведением Windows, обеспечившим ее популярность, является полноэкранный графический интерфейс пользователя.

Windows for Workgroups 3.11 расширена средствами совместного использования ресурсов локальной сети (файлы, принтеры).

Windows 9.x Windows 95 (95 OSR2) и Windows 98 (98 SE, ME) во всех их реализациях. В отличие от Windows 3.x, Windows 95 является полнофункциональной ОС, код DOS в нее встроен только для поддержки приложений, выполняющихся на виртуальной машине DOS.  

Интерфейс Windows 95 графический, документо-ориентированный.

Основное отличие Windows 98 – в организации интерфейса. Используется три вида пользовательского интерфейса: Web-подобный (который может быть реализован через броузер Internet Explorer), классический и смешанный.

В Windows 98 имеется множество других новаций и усовершенствований, суммарно это все-таки другая ОС, хотя и близкая к своей предшественнице.

Можно выделить расширенные возможности работы с файлами, улучшенные сетевые возможности, усовершенствованные и дополнительные средства мультимедиа, улучшенную поддержку устройств и технических средств, включая установку и обслуживание ОС.

Windows NT

  Windows NT явилась продолжением Microsoft проекта OS/2, пред­принятым фирмой после того, как разошлись ее пути с IBM. С самого начала Windows NT планировалась как полностью 32-разрядная ОС с объектно-ориентированной структурой, предназначенная выполнять функции сервера.  

Windows XP

ОС Windows XP (от английского eXPerience – опыт), (первые продажи – 25 октября 2001г.) ОС семейства Windows, созданной на базе технологии NT.

возможность настройки ОС через Internet. Вырос интеллект системы в различных ситуациях, например, системе Help можно задавать вопросы на «человеческом языке» и получать развернутые ответы по существу.

Реестр ОС Windows

Реестр Windows – это конфигурационная база данных (БД) (депозитарий) ОС. Эта БД – иерархическая, любой параметр можно обнаружить, воспользовавшись представлением, аналогичным понятию пути в ФС той же Windows. Каждый параметр представляет собой упорядоченную пару имени и значения.

 

16. ОС Unix

UNIX разрабатывалась, как многопользовательская интерактивная ОС. В 1972г. к работе над UNIX подключился Д. Ритчи, переписавший большую часть ОС на языке C.

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

Драйверы устройств включаются в ядро ОС, но представляются также и в ФС как специальные файлы.

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

17. Операционные системы рабочих станций, коммуникационных компьютеров, мейнфреймов

Мы рассматриваем систему AS/400 совместно: аппаратное и программное обеспечение, поскольку они тесно связаны между собой.

Эта система интересна объектно-ориентированной структурой и архитектурой на базе микроядра, одноуровневой моделью памяти, мощными средствами защиты.

Системное программное обеспечение AS/400 двухуровневое: нижний уровень выполняется Лицензионным Внутренним Кодом (LIC), играющим роль микроядра и обеспечивает аппаратную независимость верхнего уровня, который составляет собственно ОС OS/400.

Интерфейс LIC со всем лежащим выше него ПО, в т.ч. и с ОС - машинный интерфейс (MI) представляет собой полнофункциональный язык команд некоторой виртуальной машины.

AS/400 отличается значительной степенью системной интеграции и высоким уровнем системных интерфейсов. Так, многие функции, традиционно выполняемые ОС, здесь реализованы на уровне LIC (защита, ввод-вывод, управление памятью); многие функции, традиционно обеспечиваемые утилитами и отдельными приложениями, интегрированы в OS/400 (база данных, пользовательский интерфейс).

Одной из наиболее примечательных особенностей AS/400 является одноуровневая модель памяти. 64-разрядный (в старых моделях - 48-разрядный) адрес позволяет адресовать виртуальное адресное пространство, в котором может поместиться и оперативная, и внешняя память. В связи с этим в AS/400 отпадает необходимость в использовании понятия "файл", оно заменено понятием "постоянный объект". Это позволяет значительно улучшить защиту объектов (например, если объект "программа" не может рассматриваться как "файл", то в него нельзя ничего записать, что делает невозможным существование вирусов). Все процессы разделяют одно и то же виртуальное адресное пространство и потенциально могут иметь доступ ко всем объектам в системе. Взаимная изоляция процессов достигается за счет контроля прав доступа к объектам и поддерживается некоторыми аппаратными средствами, делающими невозможным доступ к объектам в обход установленных API (система контроля доступа встроена в LIC).

Основным средством взаимодействия между процессами являются сообщения. Операции ввода-вывода также оформляются в виде сообщений процессорам ввода-вывода. (В AS/400 с самого начала используется асимметричная многопроцессорная конфигурация).

Вычислительная система AS/400 развивается и сегодня. На базе столь мощного и многофункционального микроядра, которым является LIC возможно строить любые операционные системы, возможно, в ближайшее время таким образом на AS/400 будет реализован Linux.




Дата добавления: 2015-01-29; просмотров: 26 | Поможем написать вашу работу | Нарушение авторских прав




lektsii.net - Лекции.Нет - 2014-2024 год. (0.008 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав