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

Ядро Unix



Ядро Unix представляет собой монолитную архитектуру. Главное ее св-во – высокая степень мобильности, то есть переносимости на разные платформы. Все компоненты ОС, не считая ядра, являются полностью машинно-независимыми, которые хорошо изолированы друг от друга. При компиляции ядра можно разрешить динамическую загрузку и выгрузку очень многих компонентов ядра – модулей. В момент загрузки модуля его код загружается для исполнения в привилегированном режиме и связывается с остальной частью ядра. Внутри модуля могут использоваться любые экспортируемые ядром функции.

Ядро – это постоянно функционирующая часть ОС, которая в случае Linux занимает 5-7 Мбайт. Другие программы (системные или пользовательские) являются полностью машинно-независимыми и могут общаться с ядром посредством системных вызовов, которые по сути дела являются точками входа программ на языке Си в ядро. При исполнении системного вызова программа пользователя временно переходит в привилегированный режим, получая доступ к данным или устройствам, которые недоступны при работе в режиме пользователя!

Стандартная библиотека Unix – libc – обеспечивает C-интерфейс к каждому системному вызову. Это приводит к тому, что системный вызов выглядит как функция на языке С.

Основные функции и состав ядра:

1. Инициализация системы – запуск, bootstrap – процедура раскрутки и загрузки полного ядра в память, запуск ядра;

2. Управление процессами и нитями – создание, завершение и отслеживание процессов и нитей, разделение между запущенными процессами времени процессора(-ов в SMP), распараллеливание процессов;

3. Управление памятью – создание ФС, файлов, доступ к внешним устройствам на уровне ФС;

4. Коммуникации и обмен данными между процессами локальными и сетевыми (IPC = Inter-Process Communications), а также между процессами и драйверами;

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





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



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