Съдържание:
Определение - Какво означава монолитно ядро?
Монолитно ядро е софтуерна рамка за операционна система, която съдържа всички привилегии за достъп до входно / изходни (I / O) устройства, памет, хардуерни прекъсвания и стека на процесора. Монолитните ядра обикновено са по-големи от другите ядра, тъй като се справят с толкова много аспекти на компютърната обработка на най-ниското ниво и затова трябва да включват код, който взаимодейства с много устройства, I / O и прекъсващи канали и други хардуерни оператори.
Тази форма на ядрото е основата за Linux, Unix, MS-DOS и Mac OS. По-новите операционни системи обикновено използват хибридно ядро, за да позволят по-лесна поддръжка и подобрения на операционната система.
Техопедия обяснява монолитно ядро
Монолитните ядра запазват пълен привилегирован достъп до различните компоненти под техен контрол. Те включват:
- Файлови системи
- Междупроцесова комуникация
- I / O и управление на устройства
- Основно управление на процесите
- железария
Причината, поради която се предпочитат по-новите архитектури на ядрото като microkernel или хибриден дизайн на ядрото, е, че колкото по-голямо става ядрото, толкова повече функции трябва да поеме. Това прави кода тромав и бавен за зареждане. Друг недостатък на монолитния дизайн на ядрото е, че кодът на ядрото трябва да бъде променен, за да добави функции или да коригира грешки. Това обикновено изисква рекомпилация на кода на ядрото и хардуерните драйвери; това дори може да означава цялостно надграждане на операционната система, което е скъпо и намалява доверието на потребителите.
По-новите архитектури на ядрото запазват достъп само до ограничени привилегии и предават привилегиите до потребителското пространство чрез сървъри, които предоставят управление на ресурсите независимо с привилегии от тях. Тези сървъри работят извън пространството на паметта на ядрото, което позволява много по-малки размери на ядрото и много по-ефективен маршрут за надграждане.
Монолитна архитектура на ядрото все още се използва за системи като базирани на Linux системи, където развиващото се ядро, което непрекъснато се обновява и заменя, е част от културата на операционната система. Усъвършенстваната природа на Linux поддържаше монолитното си ядро до приемлив размер, което улеснява добавянето на функции.