Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Уровень аппаратных абстракций




Физическая структура операционной системы

 

Операционная система Windows состоит из двух основных частей: самой операционной системы и подсистем окружения и для поддержки своей эффективности и целостности использует 2 режима

­ режим ядра - в нем работает сама операционная система;

­ режим пользователя - в нем работают подсистемы окружения.

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

Структура операционной системы разделена на несколько уровней, каждый из которых пользуется службами лежащего ниже уровня, как показано на рисунке 5.2. Два нижних уровня программного обеспечения, уровень аппаратных абстракций (HAL, Hardware Abstraction Layer) и ядро написаны на языке С и ассемблере и являются частично машинно-зависимыми. Верхние уровни написаны исключительно на С и почти полностью машинно-зависимы. Драйверы написаны на С или, в некоторых случаях, на С++.

Одна из целей создания Windows 2000 и Windows NT заключалась в возможности переносить систему на другие платформы. Но нижние уровни ОС работают с регистрами устройств, прерываниями, DMA и другими аппаратными особенностями, которые очень сильно отличаются на разных машинах. По этому корпорация Microsoft скрыла многие из аппаратных различий в тонком уровне на самом дне системы, н6азванном уровнем аппаратных абстракций (HAL, Hardware Abstraction Layer).

 

 

Рисунок 5.2 – Упрощенная структура Windows 2000

 

Работа уровня HAL заключается в том, чтобы предоставлять всей остальной системе абстрактные аппаратные устройства (без индивидуальных отличительных особенностей, которыми так богато реальное аппаратное обеспечение). Эти устройства представляются в виде машинно-зависимых служб (процедурные вызовы и макросы), которые могут использоваться остальной ОС и драйверами. Драйверы и ядро пользуются службами HAL и не обращаются напрямую к устройствам. По этому требуется значительно меньше изменений для их переноса на другую платформу. А перенос самого уровня HAL довольно прост, т.к. весь код сконцентрирован в одном месте и цель переделки четко определена. Уровень HAL разработан, для того чтобы скрывать различия между материнскими платами различных производителей, а не различия между процессорами. К службам уровня HAL относят:

­ доступ к регистрам устройств;

­ адресация к устройствам, независящим от шины;

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

­ операции DMA;

­ управление таймерами, часами реального времени.

Уровень HAL не представляет абстракций или служб для специфических устройств ввода \ вывода (клавиатур, мышей или дисков). Поскольку HAL должен в совершенстве соответствовать системе, на которой установлен, поэтому набор различных уровней HAL поставляется на диске вместе с ОС. При установке системы из них выбирается подходящий уровень и копируется на HDD в системный каталог \winnt\system32 в виде файла hal.dll. При всех последующих загрузках ОС используется эта версии уровня HAL. Если удалить этот файл, то система загрузиться не сможет.

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

 




Поделиться с друзьями:


Дата добавления: 2014-12-17; Просмотров: 1672; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.009 сек.