IBM®
Перейти к тексту
    в России и странах СНГ [изменить]    Условия использования
 
 
   
    Главная страница    Продукты    Услуги и решения    Поддержка и загрузка    Мой профиль    
Перейти к тексту

developerWorks Россия  >  Linux  >

Экзамен LPI 201: Ядро Linux

Администрирование, средний уровень (LPIC-2) тема 201

developerWorks
На предыдущую страницуСтраница 2 из 8 На предыдущую страницу

Опции документа

Обсудить


Выскажите мнение об этом учебном пособии

Помогите нам улучшить содержание


Компоненты ядра

В этом разделе мы рассматриваем материал по теме 2.201.1 экзамена 201 Администрирование, средний уровень (LPIC-2). Рейтинг темы 1.

Из чего состоит ядро?

В ядро Linux входит базовое ядро как таковое плюс некоторое количество модулей ядра. В большинстве случаев базовое ядро и большая коллекция модулей ядра, компилируемые одновременно и устанавливаемые или распространяемые вместе, основаны на коде, созданном Линусом Торвальдсом или измененном производителями дистрибутивов Linux. Базовое ядро всегда загружается в ходе загрузки системы и остается загруженным во время работы постоянно. Модули ядра первоначально могут быть загружены, а могут нет (хотя как правило часть из них загружена) и могут подгружаться или выгружаться во время работы.

Модульная структура ядра позволяет подключать дополнительные модули, скомпилированные позднее или отдельно от базового ядра. Дополнительные модули могут создаваться, когда вы добавляете оборудование к уже работающей системе Linux, а иногда могут поставляться третьими лицами. Модули ядра иногда распространяются в виде бинарных файлов, в результате чего ваши способности, как системного администратора, настраивать модули ядра оказываются не востребованы. В любом случае, загруженный модуль становится частью работающего ядра до тех пор, пока он не будет выгружен. Вопреки некоторым представлениям, модуль ядра не просто является интерфейсом прикладного программирования (API) для общения с базовым ядром, а становится частью работающего ядра.



В начало


Соглашения о наименовании ядра

Ядра Linux следуют соглашениям о наименовании/нумерации, что позволяет быстро получить важную информацию о загруженном ядре. В соглашении определены обозначения для major номера, minor номера, редакция и в некоторых случаях включена строка, описывающая производителя/настройки. Эти соглашения применяются для нескольких типов файлов, в том числе к архивам исходников ядра, патчам и, возможно, нескольким базовым ядрам (если вы запускаете то одно, то другое ядро).

Как и обычная разделенная точками последовательность, ядро Linux следует соглашению по разделению стабильной и экспериментальной веток. Для стабильных веток используется четный minor номер, тогда как для экспериментальных веток -- нечетный minor номер. Редакция -- просто последовательная нумерация, отражающая исправления ошибок и перенос нововведений в старые версии ядра. Кроме того, номер часто характеризует производителя или специальные возможности. Например:

  • linux-2.4.37-foo.tar.gz: обозначает архив исходников для стабильной ветки ядра 2.4 от компании "Foo Industries"
  • /boot/bzImage-2.7.5-smp: обозначает собранное экспериментальное базовое ядро 2.7 с возможностью поддержки SMP
  • patch-2.6.21.bz2: обозначает патч для обновления более ранней стабильной версии 2.6 до редакции 21


В начало


Файлы ядра

Базовое ядро Linux может быть двух версий: zImage, ограниченной 508 Кбайт, и bzImage для более крупных ядер (приблизительно до 2.5 Мбайт). Как правило, современные дистрибутивы Linux используют ядро формата bzImage, что позволяет включать множество компонент. Вы можете предположить, что так как "z" в zImage означает сжатие с помощью gzip, то "bz" в bzImage может означать сжатие с помощью bzip2. Однако, "b" просто обозначает "big", а для сжатия по-прежнему используется gzip. В обоих случаях в каталоге /boot/ базовое ядро часто переименовывается в vmlinuz. Как правило файл /vmlinuz является символьной ссылкой на файл с полным именем ядра, включающим номер версии, например, /boot/vmlinuz-2.6.10-5-386.

В каталоге /boot/ есть несколько файлов, связанных с базовым ядром, которые вам уже знакомы (иногда они могут располагаться вместо этого в корневом каталоге файловой системы). System.map -- это таблица, отображающая адреса символов ядра. initrd.img иногда используется базовым ядром для создания упрощенной файловой системы на ram-диске, подключаемом на этапе загрузки для монтирования основной файловой системы.



В начало


Модули ядра

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

  • Драйверы устройств (Device drivers): поддержка специфических типов оборудования
  • Драйверы файловой системы (File system drivers): предоставляют необязательную возможность чтения и/или записи специфической файловой системы
  • Системные вызовы (System calls): большинство поддерживается базовым ядром, но модули могут добавлять или изменять системные службы
  • Сетевые драйверы (Network drivers): реализуют соответствующие сетевые протоколы
  • Загрузчики исполняемых файлов (Executable loaders): анализируют и загружают исполняемые дополнительные форматы


В начало



На предыдущую страницуСтраница 2 из 8 На предыдущую страницу
    IBM в России Конфиденциальность Контакты