Реферат На Тему Микроядерные Операционные Системы

Реферат На Тему Микроядерные Операционные Системы

Ядро операционной системы. Тема Ядро операционной системы. Ядро центральная часть операционной системы ОС, обеспечивающая приложениям координированный доступ к ресурсам компьютера, таким как процессорное время, память и внешнее аппаратное обеспечение. Также обычно ядро предоставляет сервисы файловой системы и сетевых протоколов. Как основополагающий элемент ОС, ядро представляет собой наиболее низкий уровень абстракции для доступа приложений к ресурсам системы, необходимым для их работы. Как правило, ядро предоставляет такой доступ исполняемым процессам соответствующих приложений за счт использования механизмов межпроцессного взаимодействия и обращения приложений к системным вызовам ОС. Описанная задача может различаться в зависимости от типа архитектуры ядра и способа е реализации. Инструкция Для Самсунг Е210. AltDocs_unix_base_admin/images/monolith_kernel.png' alt='Реферат На Тему Микроядерные Операционные Системы' title='Реферат На Тему Микроядерные Операционные Системы' />Типы архитектур ядер операционных систем. Монолитное ядро. Монолитное ядро предоставляет богатый набор абстракций оборудования. Все части монолитного ядра работают в одном адресном пространстве. Это такая схема операционной системы, при которой все компоненты е ядра являются составными частями одной программы, используют общие структуры данных и взаимодействуют друг с другом путм непосредственного вызова процедур. Монолитное ядро старейший способ организации операционных систем. Примером систем с монолитным ядром является большинство UNIX систем. Архитектура операционных систем Семестр 2, Лекция 1. Достоинства Скорость работы, упрощнная разработка модулей. Недостатки Поскольку вс ядро работает в одном адресном пространстве, сбой в одном из компонентов может нарушить работоспособность всей системы. Вместе с тем, монолитность ядер усложняет их отладку, понимание кода ядра, добавление новых функций и возможностей, удаление мртвого, ненужного, унаследованного от предыдущих версий кода. Это делает монолитные ядерные архитектуры малопригодными к эксплуатации в системах, сильно ограниченных по объму ОЗУ, например, встраиваемых системах, производственных микроконтроллерах и т. Большинство современных ядер позволяют во время работы подгружать модули, выполняющие часть функций ядра. В этом случае компоненты операционной системы являются не самостоятельными модулями, а составными частями одной большой программы, называемой монолитным ядром monolithic kernel, которое представляет собой набор процедур, каждая из которых может вызвать каждую. Все процедуры работают в привилегированном режиме. В микроядерных операционных системах можно выделить центральный компактный модуль, относящийся к супервизорной части. Наиболее заметными представителями микроядерной архитектуры на сегодняшний день являются операционные системы QNX и Symbian OS, хотя. Альтернативой монолитным ядрам считаются архитектуры, основанные на микроядрах. Модульное ядро современная, усовершенствованная модификация архитектуры монолитных ядер операционных систем. В отличие от классических монолитных ядер, модульные ядра, как правило, не требуют полной перекомпиляции ядра при изменении состава аппаратного обеспечения компьютера. Вместо этого модульные ядра предоставляют тот или иной механизм подгрузки модулей ядра, поддерживающих то или иное аппаратное обеспечение например, драйверов. При этом подгрузка модулей может быть как динамической выполняемой на лету, без перезагрузки ОС, в работающей системе, так и статической выполняемой при перезагрузке ОС после переконфигурирования системы на загрузку тех или иных модулей. Все модули ядра работают в адресном пространстве ядра и могут пользоваться всеми функциями, предоставляемыми ядром. Поэтому модульные ядра продолжают оставаться монолитными. Модульность ядра осуществляется на уровне бинарного образа, а не на архитектурном уровне ядра, так как динамически подгружаемые модули загружаются в адресное пространство ядра и в дальнейшем работают как интегральная часть ядра. Модульные монолитные ядра не следует путать с архитектурным уровнем модульности, присущий микроядрам и гибридным ядрам. Практически, динамичная загрузка модулей, это просто более гибкий способ изменения образа ядра во время выполнения  в отличие от перезагрузки с другим ядром. Модули позволяют легко расширить возможности ядра по мере необходимости. Модульные ядра удобнее для разработки, чем традиционные монолитные ядра, не поддерживающие динамическую загрузку модулей, так как от разработчика не требуется многократная полная перекомпиляция ядра при работе над какой либо его подсистемой или драйвером. Выявление, локализация, отладка и устранение ошибок при тестировании также облегчаются. Модульные ядра предоставляют особый программный интерфейс API для связывания модулей с ядром, для обеспечения динамической подгрузки и выгрузки модулей. В свою очередь, не любая программа может быть сделана модулем ядра на модули ядра накладываются определнные ограничения в части используемых функций например, они не могут пользоваться функциями стандартной библиотеки СС и должны использовать специальные аналоги, являющиеся функциями API ядра. Кроме того, модули ядра обязаны экспортировать определнные функции, нужные ядру для правильного подключения и распознавания модуля, для его корректной инициализации при загрузке и корректного завершения при выгрузке, для регистрации модуля в таблице модулей ядра и для обращения из ядра к сервисам, предоставляемым модулем. Не все части ядра могут быть сделаны модулями. Некоторые части ядра всегда обязаны присутствовать в оперативной памяти и должны быть жстко вшиты в ядро. Также не все модули допускают динамическую подгрузку без перезагрузки ОС. Общей тенденцией развития современных модульных ядер является вс большая модуляризация кода, улучшение механизмов динамической подгрузки и выгрузки, уменьшение или устранение необходимости в ручной подгрузке модулей или в переконфигурации ядра при изменениях аппаратуры путм введения тех или иных механизмов автоматического определения оборудования и автоматической подгрузки нужных модулей, универсализация кода ядра и введение в ядро абстрактных механизмов, предназначенных для совместного использования многими модулями. Примером может служить VFS  виртуальная файловая система, совместно используемая многими модулями файловых систем в ядре Linux. Микроядро предоставляет только элементарные функции управления процессами и минимальный набор абстракций для работы с оборудованием. Решающим критерием микроядерности является размещение всех или почти всех драйверов и модулей в сервисных процессах, иногда с явной невозможностью загрузки любых модулей расширения в собственно микроядро, а также разработки таких расширений. Достоинства Устойчивость к сбоям оборудования, ошибкам в компонентах системы. Основное достоинство микроядерной архитектуры высокая степень модульности ядра операционной системы. Это существенно упрощает добавление в него новых компонентов. В микроядерной операционной системе можно, не прерывая е работы, загружать и выгружать новые драйверы, файловые системы и т. Существенно упрощается процесс отладки компонентов ядра, так как новая версия драйвера может загружаться без перезапуска всей операционной системы. Компоненты ядра операционной системы ничем принципиально не отличаются от пользовательских программ, поэтому для их отладки можно применять обычные средства. Микроядерная архитектура повышает надежность системы, поскольку ошибка на уровне непривилегированной программы менее опасна, чем отказ на уровне режима ядра. Недостатки Передача данных между процессами требует накладных расходов. Сервисные процессы в принятой в семействе UNIX терминологии демоны активно используются в самых различных ОС для задач типа запуска программ по расписанию UNIX и Windows NT, ведения журналов событий UNIX и Windows NT, централизованной проверки паролей и хранения пароля текущего интерактивного пользователя в специально ограниченной области памяти Windows NT. Тем не менее, не следует считать ОС микроядерными только из за использований такой архитектуры. Типичные задачи демонов серверы сетевых протоколов HTTP, FTP, электронная почта и др., управление оборудованием, поддержка очередей печати, управление выполнением заданий по расписанию и т. В техническом смысле демоном считается процесс, который не имеет управляющего терминала. Чаще всего но не обязательно предком демона является init корневой процесс UNIX. В системах Solaris 1.

Реферат На Тему Микроядерные Операционные Системы
© 2017