Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Проблемы переносимости



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

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

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

Объем машинно-зависимых компонентов ОС зависит от различий в аппаратных платформах, для которых разрабатывается ОС. Чем сложнее преодолимы различия (система команд процессора, разрядность процессора, количество процессоров, на­личие или отсутствие аппаратной поддержки виртуальной памяти и др.), тем больше объем таких компонентов и вероятность переписывания ОС практически заново.

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

В итоге реально говорить не о переносимости вообще, а о переносимости в рам­ках нескольких аппаратных платформ.

Принципы обеспечения переносимости

- Большая часть кода ОС должна быть написана на языке, трансляторы с которого име­ются на всех машинах, куда предполагается переносить систему. Такими языками являют­ся стандартизованные языки высокого уровня. Большинство современных переносимых ОС написано на языке Си.

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

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

Аппаратно-зависимый код должен быть сосредоточен (локализован) в несколь­ких модулях, а не распределен по всей системе.

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

Рисунок 5.6- Иллюстрация переносимости ОС


ЛИТЕРАТУРА

1. Андреев А. Г. и др. Microsoft Windows 2000 Server и Professio-nal / Под общ. ред. А.Н. Чекмарева иД.Б. Вишнякова. - СПб.: БХВ - Петербург, 2001. - 1056 с.: ил.

2. Андреев А. Г. и др. Microsoft Windows XP. Руководство администратора/ Под общ. ред. А. Н. Чекмарева. - СПб.: БХВ - Петербург, 2003. - 848 с.: ил.

3. Бэкон Д., Харрис Т. Операционные системы. - СПб.: Питер, 2004. - 800 с.: ил.

4. Вишневский А. В. Windows Server 2003. Для профессионалов. - СПб.: Питер, 2004. - 767 с.: ил.

5. Гордеев А.В. Операционные системы. - СПб.: Питер, 2005. - 418 с.: ил.

6. Гордеев А. В., Молчанов А. Ю. Системное программное обеспечение. - СПб.: Питер, 2001. - 736 с.: ил.

7. Назаров С. В. Администрирование локальных сетей Windows NT/2000/NET: Учеб. пособие. - М.: Финансы и статистика, 2003. - 478 с.: ил.

8. Новиков Ю., Черепанов А. Персональные компьютеры: аппаратура, системы, Интернет: Учебный курс. - СПб.: Питер, 2001.- 464 с.: ил.

9. Олаф Кирх. Linux: Руководство администратора сети. - СПб.: Питер, 2000. - 242 с.: ил.

10. Олифер В.Г., Олифер Н. А. Сетевые операционные системы. - СПб.: Питер, 2001. - 544 с.: ил.

11. Основы операционных систем: Курс лекций. / В. Е. Карпов, К. А. Коньков. - М.: ИНТУИТ.РУ «Интернет-Университет Информационных Технологий», 2004. - 632 с.: ил.

12. Партыка Т. Л., Попов И. И. Операционные системы, среды и оболочки. - М.: ФОРУМ - ИНФРА-М, 2005. - 400 с.: ил.

13. ТаненбаумЭ. Современные операционные системы. - СПб.: Питер, 2004. - 1040 с.: ил.

14. Таненбаум Э., М. ван Стеен. Распределенные системы. Принципы и парадиг­мы. - СПб.: Питер, 2003. - 877 с.: ил.

15. Ханикат Дж. Знакомство с Microsoft Windows Server 2003: Пер. с англ. - М.: Издательско-торговый дом «Русская Редакция», 2003. - 464 с.: ил.

16. Чекмарев А. Н., Вишневский А. В., Кокорева О. И. Microsoft Windows Server 2003. - СПб.: БХВ - Петербург, 2003. - 1184 с.: ил.





Дата публикования: 2015-10-09; Прочитано: 457 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.007 с)...