Что такое ядро Linux

 

 

 

 

ядро linux
Ядро Linux® является основным компонентом операционной системы (ОС) Linux и основным интерфейсом между аппаратным обеспечением компьютера и его процессами. Оно обменивается данными между двумя, максимально эффективно управляя ресурсами.

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

Что делает ядро

В ядре 4 задания:

Управление памятью: отслеживайть, сколько памяти используется для хранения чего и где
Управление процессами: определить, какие процессы могут использовать центральный процессор (ЦП), когда и как долго
Драйверы устройств: действуют как посредник / интерпретатор между оборудованием и процессами
Системные вызовы и безопасность: получение запросов на обслуживание от процессов
Ядро, если оно реализовано правильно, невидимо для пользователя, работая в своем собственном маленьком мире, известном как пространство ядра, где оно выделяет память и отслеживает, где все хранится. То, что видит пользователь, например веб-браузеры и файлы, называется пространством пользователя. Эти приложения взаимодействуют с ядром через интерфейс системных вызовов (SCI).

Подумайте об этом так. Ядро – это занятый персональный помощник для мощного руководителя (оборудования). Задача помощника – передавать сообщения и запросы (процессы) от сотрудников и общественности (пользователей) руководителю, помнить, что и где хранится (память), и определять, кто имеет доступ к руководителю в любой момент времени.

Место ядра в ОС

Чтобы поместить ядро ​​в контекст, вы можете представить себе машину Linux как имеющую 3 уровня:

Аппаратное обеспечение: физическая машина – нижняя часть или основание системы, состоящая из памяти (RAM) и процессора или центрального процессора (CPU), а также устройств ввода / вывода (I / O), таких как хранилище , сеть. , и графика. ЦП выполняет вычисления, читает из памяти и записывает в нее.
Ядро Linux: ядро ОС. (Видите? Это прямо посередине.) Это программное обеспечение, находящееся в памяти, сообщает процессору, что делать.
Пользовательские процессы: это запущенные программы, которыми управляет ядро . Пользовательские процессы – это то, что вместе составляет пользовательское пространство. Пользовательские процессы также известны как просто процессы . Ядро также позволяет этим процессам и серверам взаимодействовать друг с другом (так называемое межпроцессное взаимодействие или IPC).
Код, выполняемый системой, выполняется на процессорах в одном из двух режимов: режиме ядра или пользовательском режиме. Код, работающий в режиме ядра, имеет неограниченный доступ к оборудованию, а пользовательский режим ограничивает доступ к процессору и памяти для SCI. Аналогичное разделение существует для памяти (пространство ядра и пространство пользователя). Эти две небольшие детали составляют основу для некоторых сложных операций, таких как разделение привилегий для безопасности , создание контейнеров и виртуальных машин .

Это также означает, что в случае сбоя процесса в пользовательском режиме ущерб ограничен и может быть восстановлен ядром. Однако из-за доступа к памяти и процессору сбой процесса ядра может привести к сбою всей системы. Поскольку существуют меры безопасности и требуются разрешения для пересечения границ, сбои пользовательских процессов обычно не могут вызвать слишком много проблем.

Перейти к верхней панели