Введение в разработку приложений на платформе Atom/MeeGo. Граничин О.Н - 60 стр.

UptoLike

60
6. ОС MeeGo изнутри
Ядро ОС MeeGo и состав компонент. MeeGo 1.0 release. Состав и функции ядра
(Setting Database [GConf], System Libraries [glibc, glib, …], Message Bus [D-Bus],
Platform Info [libudev]). Сборка, загрузка, инсталляция.
6.1. Введение
Эта лекция посвящена начальному знакомству с архитектурой
операционных систем семейства Linux, в частности, с архитектурой
MeeGo. Архитектура современной операционной системы чаще всего устроена так, что
разработчикам пользовательских приложений не приходится использовать знания о ней. Но в то же
время для выполнения различных тонких настроек кода, его оптимизации такие знания нередко
оказываются ключевыми.
Сегодня мы кратко рассмотрим архитектуру ядра ОС Linux, историю создания его основных
компонент и подсистем; обсудим важные подсистемы ОС MeeGo, такие как D-Bus и графическую
оболочку.
6.2. Ядро операционной системы Linux
Проект Linux занимается разработкой ядра операционной системы, которое используется
соместно с инструментами, разработанными в рамках проекта GNU, образуя, таким образом, полную
ОС, знакомую нам как ОС GNU/Linux. Ядро операционной системы представляет из себя
центральную часть ОС, абстракцию над аппаратурой системы, выполняется в привилегированном
режиме и в отдельном адресном пространстве. Зачастую определение ядра как программы,
выполняющейся в привелигированном режиме является верным. Пользовательские приложения при
этом выполняются в другом адресном пространстве и контролируются ядром. Основные компоненты
ядра Linux – это системы управления памятью, управления аппаратной частью (управление
драйверами устройств), управления процессами, файловой системой, диспетчер процессов,
позволяющий справедливо разделять процессорное время между процессами.
Рис. 6.2.1.
В Linux взаимодействие пользовательских приложений и ядра происходит по интерфейсу SCI
(System call interface), при этом в большинстве случаев пользовательские приложения напрямую к
ядру не обращаются, так как интерфейс взаимодействия с ядром достаточно сложен. Для