2. Структура ос. Что такое монолитная структура
2. Структура ос
2.1. Понятие ядра, способы построения ос (Лекция 4)
2.1.1. Типы архитектур ядер ос
2.1.1.1. Понятие ядра, монолитные системы
Ядро́ — центральная часть операционной системы, обеспечивающая приложениям координированный доступ к ресурсам компьютера, таким как процессорное время, оперативная память, внешнее оборудование. Обычно предоставляет сервисы файловой системы. Как основополагающий элемент ОС, ядро представляет собой наиболее низкий уровень абстракции для доступа приложений к ресурсам системы, необходимым для его работы. Как правило, ядро предоставляет такой доступ исполняемым процессам соответствующих приложений за счет использования механизмов межпроцессного взаимодействия и обращения приложений к системным вызовам ОС.
К монолитным системам относятся системы с монолитным ядром. Все части монолитного ядра работают в одном адресном пространстве.
Недостатки: Поскольку всё ядро работает в одном адресном пространстве, сбой в одном из компонентов может нарушить работоспособность всей системы.
В рассматриваемом случае компоненты операционной системы являются не самостоятельными модулями, а составными частями одной большой программы. Такая структура операционной системы называется монолитным ядром (monolithic kernel). Монолитное ядро представляет собой набор процедур, каждая из которых может вызвать каждую. Все процедуры работают в привилегированном режиме.
Таким образом, монолитное ядро — это такая схема операционной системы, при которой все ее компоненты являются составными частями одной программы, используют общие структуры данных и взаимодействуют друг с другом путем непосредственного вызова процедур. Для монолитной операционной системы ядро совпадает со всей системой.
Во многих операционных системах с монолитным ядром сборка ядра, то есть его компиляция, осуществляется отдельно для каждого компьютера, на который устанавливается операционная система. При этом можно выбрать список оборудования и программных протоколов, поддержка которых будет включена в ядро. Так как ядро является единой программой, перекомпиляция — это единственный способ добавить в него новые компоненты или исключить неиспользуемые. Присутствие в ядре лишних компонентов крайне нежелательно, так как ядро всегда полностью располагается в оперативной памяти. Кроме того, исключение ненужных компонентов повышает надежность операционной системы в целом.
Монолитное ядро — старейший способ организации операционных систем. Примером систем с монолитным ядром является большинство Unix-систем.
В монолитном ядре выделяются вкрапления сервисных процедур, соответствующих системным вызовам. Сервисные процедуры выполняются в привилегированном режиме, пользовательские программы — в непривилегированном. Для перехода с одного уровня привилегий на другой иногда может использоваться главная сервисная программа, определяющая, какой именно системный вызов был сделан, корректность входных данных для этого вызова и передающая управление соответствующей сервисной процедуре с переходом в привилегированный режим работы.
Монолитным ядром является также Linux. Оно оптимизировано для более высокой производительности с минимальными контекстными переключениями. Такая архитектура упрощает поддержку кода ядра для разработчиков, но требует перекомпиляции ядра при добавлении новых устройств. На практике монолитные ядра могут поддерживать модульность.
studfiles.net
монолитный - это... Что такое монолитный?
монолитный — единый, целый, цельный, целостный, неделимый, нераздельный, неразделимый; спаянный, нерасчленимый, монолитовый, сплоченный, неразрывный, слитный, неразделенный. Ant. разрозненный, раздельный, неоднородный Словарь русских синонимов. монолитный см … Словарь синонимов
МОНОЛИТНЫЙ — (этимол. см. монолит). Состоящий из одного цельного камня. Словарь иностранных слов, вошедших в состав русского языка. Чудинов А.Н., 1910. МОНОЛИТНЫЙ этимологию см. монолит. Состоящий из одного цельного камня. Объяснение 25000 иностранных слов,… … Словарь иностранных слов русского языка
монолитный — ая, ое. monolithique adj. 1. Отн. к монолиту, являющийся монолитом. Милорадович советовал Витбергу толстые колонны нижнего храма сделать монолитные из гранита. Герц. Былое. 2. перен. Как бы высеченный из одного куска; крепко сплоченный. БАС 1.… … Исторический словарь галлицизмов русского языка
МОНОЛИТНЫЙ — МОНОЛИТНЫЙ, монолитная, монолитное; монолитен, монолитна, монолитно (книжн.). 1. Являющийся монолитом. Монолитная колонна. 2. перен. Мощный и цельный. Монолитная фигура. Монолитная, личность. Толковый словарь Ушакова. Д.Н. Ушаков. 1935 1940 … Толковый словарь Ушакова
МОНОЛИТНЫЙ — МОНОЛИТНЫЙ, ая, ое; тен, тна. 1. см. монолит. 2. перен. Представляющий собой единство, цельный, сплочённый (высок.). Монолитная партия. | сущ. монолитность, и, жен. Толковый словарь Ожегова. С.И. Ожегов, Н.Ю. Шведова. 1949 1992 … Толковый словарь Ожегова
монолитный — Вопрос Правильно ли: «из монолитного камня»? Прилагательное монолитный имеет несколько значений: 1) сделанный из цельной каменной глыбы; 2) относящийся к монолиту, твердым материалам, слитым в единый массив; 3) перен.: представляющий собой… … Словарь трудностей русского языка
Монолитный — I прил. 1. соотн. с сущ. монолит I, связанный с ним 2. Свойственный монолиту [монолит I 1., 2.], характерный для него. 3. перен. Единый, сплочённый. II прил. 1. соотн. с сущ. монолит II, связанный с ним 2. Свойственный монолиту [монолит II],… … Современный толковый словарь русского языка Ефремовой
монолитный — монолитный, монолитная, монолитное, монолитные, монолитного, монолитной, монолитного, монолитных, монолитному, монолитной, монолитному, монолитным, монолитный, монолитную, монолитное, монолитные, монолитного, монолитную, монолитное, монолитных,… … Формы слов
монолитный — монол итный; кратк. форма тен, тна … Русский орфографический словарь
монолитный — кр.ф. моноли/тен, моноли/тна, тно, тны; моноли/тнее … Орфографический словарь русского языка
монолитный — ‘обладающий внутренним единством’ Syn: единый, целый, цельный, целостный, неделимый, нераздельный (приподн.), неразделимый Ant: разрозненный, раздельный, неоднородный … Тезаурус русской деловой лексики
dic.academic.ru
Монолитное ядро - это... Что такое Монолитное ядро?
В этой статье не хватает ссылок на источники информации. Информация должна быть проверяема, иначе она может быть поставлена под сомнение и удалена. Вы можете отредактировать эту статью, добавив ссылки на авторитетные источники. Эта отметка установлена 13 мая 2011. |
Моноли́тное ядро́ — классическая и, на сегодняшний день, наиболее распространённая архитектура ядер операционных систем. Монолитные ядра предоставляют богатый набор абстракций оборудования. Все части монолитного ядра работают в одном адресном пространстве.
Монолитные ядра имеют долгую историю развития и усовершенствования и, на данный момент, являются наиболее архитектурно зрелыми и пригодными к эксплуатации. Вместе с тем, монолитность ядер усложняет их отладку, понимание кода ядра, добавление новых функций и возможностей, удаление «мёртвого», ненужного, унаследованного от предыдущих версий кода. «Разбухание» кода монолитных ядер также повышает требования к объёму оперативной памяти, требуемому для функционирования ядра ОС. Это делает монолитные ядерные архитектуры малопригодными к эксплуатации в системах, сильно ограниченных по объёму ОЗУ, например, встраиваемых системах, производственных микроконтроллерах и т. д.
Альтернативой монолитным ядрам считаются архитектуры, основанные на микроядрах.
Подгружаемые модули
Старые монолитные ядра требовали перекомпиляции при любом изменении состава оборудования. Большинство современных ядер, такие как OpenVMS, Linux, FreeBSD, NetBSD и Solaris, позволяют во время работы динамически (по необходимости) подгружать и выгружать модули, выполняющие часть функций ядра. Модульность ядра осуществляется на уровне бинарного образа, а не на архитектурном уровне ядра, так как динамически подгружаемые модули загружаются в адресное пространство ядра и в дальнейшем работают как интегральная часть ядра. Модульные монолитные ядра не следует путать с архитектурным уровнем модульности, присущим микроядрам и гибридным ядрам. Практически, динамическая загрузка модулей - это просто более гибкий способ изменения образа ядра во время выполнения — в отличие от перезагрузки с другим ядром. Модули позволяют легко расширить возможности ядра по мере необходимости. Динамическая подгрузка модулей помогает сократить размер кода, работающего в пространстве ядра, до минимума, например, свести к минимуму отпечаток ядра для встраиваемых устройств с ограниченными аппаратными ресурсами.
dic.academic.ru