Внутреннее устройство ядра linux

Внутреннее устройство Linux.

Эта книга описывает все тонкости работы с ОС Линукс, системное администрирование, глубокие механизмы, обеспечивающие низкоуровневый функционал Linux. На страницах руководства вы приобретете основные знания о работе с ядром Linux и о принципах правильной эксплуатации компьютерных сетей не только на основе Open-source решений. В книге также затрагиваются вопросы программирования сценариев и обращения с языком С, освещаются темы защиты информации, виртуализации и прочие незаменимые вещи.

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

Интерес к устройству операционной системы Linux может быть вызван разными причинами. Профессионалы в сфере информационно технологического обслуживания, а также разработчики программного обеспечения для Linux найдут в этой книге практически все, что необходимо знать, чтобы использовать операционную систему наилучшим образом.

Вам не обязательно быть программистом, чтобы читать эту книгу. Понадобятся лишь основные навыки пользователя компьютера: вы должны ориентироваться в графическом интерфейсе (при установке и настройке интерфейса системы), а также иметь представление о файлах и каталогах (папках).

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

Вы будете работать главным образом в командной строке, окне терминала или в удаленном сеансе.

В начале книги дается обзор системы Linux, а затем предлагается ряд практических заданий с инструментами, которые понадобятся вам для дальнейшей работы в системе.

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

Читайте также:  Live usb с линуксом

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

Материал излагается по возможности без привязки к какомулибо дистрибу тиву системы. Было бы скучно описывать все варианты системы, поэтому я попытался рассказать о двух основных семействах дистрибутивов: Debian (включая Ubuntu) и RHEL/Fedora/CentOS.

Упор сделан на серверные версии и версии для рабочих станций. Представлены также внедренные системы, например Android и OpenWRT, но изучение отличий этих платформ предоставляется вам.

Источник

Внутреннее устройство Ядра Linux 2.4

Введение в ядро Linux 2.4. Последнюю версию данного документа всегда можно получить на: http://www.moses.uklinux.net/patches/lki.sgml Данное руководство является частью Linux Documentation Project и может быть так же получено в различных форматах на: http://www.linuxdoc.org/guides.html или, для чтения в он-лайне (последняя версия), на: http://www.moses.uklinux.net/patches/lki.html Данный документ является свободно распространяемым и может передаваться и/или изменяться в соответствии с условиями GNU General Public License, опубликованной Free Software Foundation, версии 2 или более поздней. Автор, работающий старшим инженером в VERITAS Software Ltd., написал этот документ в рамках небольшого учебного курса лекций, который он читает внутри VERITAS. Выражаю свою благодарность Juan J. Quintela (quintela@fi.udc.es) , Francis Galiegue (fg@mandrakesoft.com) , Hakjun Mun (juniorm@orgio.net) , Matt Kraai (kraai@alumni.carnegiemellon.edu) , Nicholas Dronen (ndronen@frii.com) , Samuel S Chessman (chessman@tux.org) , Nadeem Hasan (nhasan@nadmm.com) за поправки и предложения, Глава The Linux Page Cache была написана Christoph Hellwig (hch@caldera.de) . Глава The IPC Mechanisms была написана Russell Weight (weightr@us.ibm.com) и Mingming Cao (mcao@us.ibm.com)

1. Загрузка

  • 1.1 Сборка ядра Linux
  • 1.2 Загрузка: Overview
  • 1.3 Загрузка: BIOS POST
  • 1.4 Загрузка: bootsector и setup
  • 1.5 LILO в качестве загрузчика
  • 1.6 Высокоуровневая инициализация
  • 1.7 SMP Загрузка на x86
  • 1.8 Освобождение памяти после инициализации
  • 1.9 Разбор командной строки

2. Управление процессами и прерываниями

  • 2.1 Структура задачи и таблица процессов
  • 2.2 Создание и завершение задач и потоков ядра
  • 2.3 Планировщик
  • 2.4 Реализация связанных списков в Linux
  • 2.5 Очереди ожидания (Wait Queues)
  • 2.6 Таймеры
  • 2.7 Нижние половины (Bottom Halves)
  • 2.8 Очереди задач
  • 2.9 Tasklets
  • 2.10 «Мягкие» IRQ
  • 2.11 Как реализуются системные вызовы в архитектуре i386?
  • 2.12 Атомарные (неделимые) операции
  • 2.13 Блокировки (Spinlocks), Read-write блокировки и Big-Reader блокировки;
  • 2.14 Семафоры
  • 2.15 Поддержка загружаемых модулей
Читайте также:  Img как установить linux

3. Virtual Filesystem (VFS)

  • 3.1 Кеши Inode и взаимодействие с Dcache
  • 3.2 Регистрация/Дерегистрация файловых систем.
  • 3.3 Управление файловыми дескрипторами
  • 3.4 Управление файловой структурой
  • 3.5 Управление Суперблоком и точкой монтирования
  • 3.6 Пример виртуальной файловой системы: pipefs
  • 3.7 Пример дисковой файловой системы: BFS
  • 3.8 Домены исполнения и двоичные форматы

4. Кэш страниц в Linux

5. Механизмы IPC

Источник

Внутреннее устройство Ядра Linux 2.4

Введение в ядро Linux 2.4. Последнюю версию данного документа всегда можно получить на: http://www.moses.uklinux.net/patches/lki.sgml Данное руководство является частью Linux Documentation Project и может быть так же получено в различных форматах на: http://www.linuxdoc.org/guides.html или, для чтения в он-лайне (последняя версия), на: http://www.moses.uklinux.net/patches/lki.html Данный документ является свободно распространяемым и может передаваться и/или изменяться в соответствии с условиями GNU General Public License, опубликованной Free Software Foundation, версии 2 или более поздней. Автор, работающий старшим инженером в VERITAS Software Ltd., написал этот документ в рамках небольшого учебного курса лекций, который он читает внутри VERITAS. Выражаю свою благодарность Juan J. Quintela ([email protected]) , Francis Galiegue ([email protected]) , Hakjun Mun ([email protected]) , Matt Kraai ([email protected]) , Nicholas Dronen ([email protected]) , Samuel S Chessman ([email protected]) , Nadeem Hasan ([email protected]) за поправки и предложения, Глава The Linux Page Cache была написана Christoph Hellwig ([email protected]) . Глава The IPC Mechanisms была написана Russell Weight ([email protected]) и Mingming Cao ([email protected])

1. Загрузка

  • 1.1 Сборка ядра Linux
  • 1.2 Загрузка: Overview
  • 1.3 Загрузка: BIOS POST
  • 1.4 Загрузка: bootsector и setup
  • 1.5 LILO в качестве загрузчика
  • 1.6 Высокоуровневая инициализация
  • 1.7 SMP Загрузка на x86
  • 1.8 Освобождение памяти после инициализации
  • 1.9 Разбор командной строки

2. Управление процессами и прерываниями

  • 2.1 Структура задачи и таблица процессов
  • 2.2 Создание и завершение задач и потоков ядра
  • 2.3 Планировщик
  • 2.4 Реализация связанных списков в Linux
  • 2.5 Очереди ожидания (Wait Queues)
  • 2.6 Таймеры
  • 2.7 Нижние половины (Bottom Halves)
  • 2.8 Очереди задач
  • 2.9 Tasklets
  • 2.10 «Мягкие» IRQ
  • 2.11 Как реализуются системные вызовы в архитектуре i386?
  • 2.12 Атомарные (неделимые) операции
  • 2.13 Блокировки (Spinlocks), Read-write блокировки и Big-Reader блокировки;
  • 2.14 Семафоры
  • 2.15 Поддержка загружаемых модулей

3. Virtual Filesystem (VFS)

  • 3.1 Кеши Inode и взаимодействие с Dcache
  • 3.2 Регистрация/Дерегистрация файловых систем.
  • 3.3 Управление файловыми дескрипторами
  • 3.4 Управление файловой структурой
  • 3.5 Управление Суперблоком и точкой монтирования
  • 3.6 Пример виртуальной файловой системы: pipefs
  • 3.7 Пример дисковой файловой системы: BFS
  • 3.8 Домены исполнения и двоичные форматы
Читайте также:  Check if port is being used linux

4. Кэш страниц в Linux

5. Механизмы IPC

Источник

Внутреннее устройство Ядра Linux 2.4

Введение в ядро Linux 2.4. Последнюю версию данного документа всегда можно получить на: http://www.moses.uklinux.net/patches/lki.sgml Данное руководство является частью Linux Documentation Project и может быть так же получено в различных форматах на: http://www.linuxdoc.org/guides.html или, для чтения в он-лайне (последняя версия), на: http://www.moses.uklinux.net/patches/lki.html Данный документ является свободно распространяемым и может передаваться и/или изменяться в соответствии с условиями GNU General Public License, опубликованной Free Software Foundation, версии 2 или более поздней. Автор, работающий старшим инженером в VERITAS Software Ltd., написал этот документ в рамках небольшого учебного курса лекций, который он читает внутри VERITAS. Выражаю свою благодарность Juan J. Quintela (quintela@fi.udc.es) , Francis Galiegue (fg@mandrakesoft.com) , Hakjun Mun (juniorm@orgio.net) , Matt Kraai (kraai@alumni.carnegiemellon.edu) , Nicholas Dronen (ndronen@frii.com) , Samuel S Chessman (chessman@tux.org) , Nadeem Hasan (nhasan@nadmm.com) за поправки и предложения, Глава The Linux Page Cache была написана Christoph Hellwig (hch@caldera.de) . Глава The IPC Mechanisms была написана Russell Weight (weightr@us.ibm.com) и Mingming Cao (mcao@us.ibm.com)

1. Загрузка

  • 1.1 Сборка ядра Linux
  • 1.2 Загрузка: Overview
  • 1.3 Загрузка: BIOS POST
  • 1.4 Загрузка: bootsector и setup
  • 1.5 LILO в качестве загрузчика
  • 1.6 Высокоуровневая инициализация
  • 1.7 SMP Загрузка на x86
  • 1.8 Освобождение памяти после инициализации
  • 1.9 Разбор командной строки

2. Управление процессами и прерываниями

  • 2.1 Структура задачи и таблица процессов
  • 2.2 Создание и завершение задач и потоков ядра
  • 2.3 Планировщик
  • 2.4 Реализация связанных списков в Linux
  • 2.5 Очереди ожидания (Wait Queues)
  • 2.6 Таймеры
  • 2.7 Нижние половины (Bottom Halves)
  • 2.8 Очереди задач
  • 2.9 Tasklets
  • 2.10 «Мягкие» IRQ
  • 2.11 Как реализуются системные вызовы в архитектуре i386?
  • 2.12 Атомарные (неделимые) операции
  • 2.13 Блокировки (Spinlocks), Read-write блокировки и Big-Reader блокировки;
  • 2.14 Семафоры
  • 2.15 Поддержка загружаемых модулей

3. Virtual Filesystem (VFS)

  • 3.1 Кеши Inode и взаимодействие с Dcache
  • 3.2 Регистрация/Дерегистрация файловых систем.
  • 3.3 Управление файловыми дескрипторами
  • 3.4 Управление файловой структурой
  • 3.5 Управление Суперблоком и точкой монтирования
  • 3.6 Пример виртуальной файловой системы: pipefs
  • 3.7 Пример дисковой файловой системы: BFS
  • 3.8 Домены исполнения и двоичные форматы

4. Кэш страниц в Linux

5. Механизмы IPC

Источник

Оцените статью
Adblock
detector