Что такое ядро операционной системы?
Что такое ядро операционной системы и за что оно отвечает в работе вашего компьютера? Разберемся подробнее.
- Ядро – это согласующее звено между графическим интерфейсом, программным и аппаратным обеспечением. Ядро постоянно используется в работе компьютера и является центральным модулем операционной системы.
- Ядро имеет разные слои. Нижний уровень формирует интерфейс к системному оборудованию, например, сетевым контроллерам или контроллерам PCI Express.
- Следующий уровень отвечает за управление памятью и выделяет ее каждому процессу. Ваше программное обеспечение обычно включает в себя несколько таких процессов.
- Уровень «управления процессами» позволяет параллельно запускать несколько задач на вашем компьютере. Ядро обрабатывает все запросы, поступающие от программ, упорядочивает их во времени и прерывает, если возникают проблемы.
- Верхний уровень — файловая система. Здесь процессам назначаются области на HDD (жестком диске) и в основной памяти компьютера.
- Таким образом, ядро регулирует весь путь от системного оборудования до прикладного программного обеспечения, которым управляет пользователь через графический интерфейс (GUI). Но сама пользовательская область не является частью ядра и называется «shell», «ring» или «userland».
- Компьютерная программа отправляет системные вызовы «System Calls» в ядро. Затем оно делает фактический запрос на машинном языке СPU. Ядро знает полный набор команд центрального процессора, то есть все машинные инструкции, которые он может выполнить. Такие системные вызовы запускаются, например, при чтении или записи файлов на компьютер. Эта простая задача постоянно решается даже в фоновом режиме.
- В многопользовательских системах ядро также контролирует доступ к файлам и аппаратным компонентам.
Конфигурирование, сборка и установка ядра Linux
- Диспетчер задач следит за всеми процессами, управляемыми ядром. Если вы завершаете задачу, диспетчер задач отправляет ядру команду прервать определенный процесс и освободить выделенное пространство.
- Поскольку ядро используется постоянно, оно первым загружается в основную память после запуска системы. Обычно это происходит в защищенной области, которая препятствует ее изменению или удалению.
- Многоядерные операционные системы могут использовать различные ядра многоядерного процессора, такие как сеть независимых CPU.
- Ядро также не является API или фреймворком, например, как NET-фреймворк.