Глава 3 Работаем в командной строке

Глава 3

Работаем в командной строке

3.1. Как устроен Linux: ядро и процессы

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

Рис. 3.1. Устройство ОС Linux

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

Начальная загрузка системы состоит в том, что файл с образом ядра считывается в оперативную память, начиная с нулевого адреса. Этот файл находится в каталоге /boot и называется vmlinuz-x.y.z, где x.y.z — это номер версии ядра. На текущий момент большинство дистрибутивов основано на ядре версии 2.4, хотя уже вышло ядро 2.6 (Fedora Core 3) и кое-где еще встречается версия 2.2.

Примечание

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

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

Этих компонент ОС Линус Торвальдс не создавал: они поступили из проекта GNU (http://www.gnu.org), участники которого с 1984 года работают над созданием полноценной UNIX-подобной ОС, целиком состоящей из свободно распространяемого программного обеспечения. К 1991 году им не хватало только ядра, и эту-то прореху и заполнил Торвальдс. Так что ОС, которой посвящена эта книга, правильнее называть не Linux, а «операционной системой GNU, основанной на ядре Linux», или просто GNU/Linux.

Итак, ядро обслуживает запросы процессов. Что же такое процесс? Это понятие является базовым в UNIX-подобных системах. Процесс можно представить себе как виртуальную машину, отданную в распоряжение одной задачи. Каждый процесс считает, что он на машине один и может распоряжаться всеми ее ресурсами. На самом же деле процессы надежно изолированы друг от друга, так что крушение одного не может повредить всей системе (сколько раз вы наблюдали в Windows, как сбой одной программы приводил к общему зависанию?).

Каждый процесс выполняется в собственной виртуальной памяти (см, рис. 3.2), в которую никакой другой процесс вмешаться не может. Этим и обеспечивается устойчивость всей системы.

Рис. 3.2. Виртуальная память процесса

Напоминаю, что такое виртуальная память. Каждому процессу разрешено считать, что его адреса начинаются с нулевого адреса и от него наращиваются. Таким образом, в 32-разрядной ОС процесс может адресовать 4 гигабайта оперативной памяти. Механизм виртуальной памяти позволяет процессу думать, что именно столько ему и выделено, хотя физически объем ОЗУ вашей машины — какие-то жалкие 256 Мбайт. Недостающую память заменяет жесткий диск путем записи временно не используемых страниц памяти в раздел подкачки (свопинга).

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

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

Ввод запроса в строке поиска

Из книги Windows Vista без напряга автора Жвалевский Андрей Валентинович

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


Глава 13 Использование MS Word: работаем с документами

Из книги Самоучитель работы на компьютере автора Колисниченко Денис Николаевич

Глава 13 Использование MS Word: работаем с документами 13.1.Окно MS Word Знакомство с Word начнем с главного окна. Понимаю, тут много разных кнопок, которые сразу хочется понажимать. Однако для начала изучим основные элементы окна (рис. 108):Заголовок окна — в нем выводится имя вашего


Глава 14 МS Excel: работаем с электронными таблицами

Из книги Программирование на языке Ruby [Идеология языка, теория и практика применения] автора Фултон Хэл

Глава 14 МS Excel: работаем с электронными таблицами 14.1. Что такое электронная таблица Что же такое электронная таблица? Как и обычная таблица, электронная состоит из ячеек, которые находятся на пересечении строчек и колонок, из которых формируется сама таблица. Ячейка


Глава 17 Работаем с электронной почтой: программа Outlook Express

Из книги XSLT автора Хольцнер Стивен

Глава 17 Работаем с электронной почтой: программа Outlook Express 17.1. Как работает электронная почта Принцип работы электронной почты практически аналогичен почте обычной. Предположим, что вам нужно написать письмо. Вы берете чистый лист бумаги, пишете текст, запечатываете лист


2.14. Поиск в строке

Из книги Ководство автора Лебедев Артём Андреевич

2.14. Поиск в строке Помимо различных способов доступа к подстрокам, есть и другие методы поиска в строке. Метод index возвращает начальную позицию заданной подстроки, символа или регулярного выражения. Если подстрока не найдена, возвращается nil:str = "Albert Einstein"pos1 = str.index(?E)     #


14.2. Флаги и аргументы в командной строке

Из книги Разработка приложений в среде Linux. Второе издание автора Джонсон Майкл К.

14.2. Флаги и аргументы в командной строке Слухи о кончине командной строки сильно преувеличены. Хоть мы и живем в век графических интерфейсов, ежедневно тысячи и тысячи программистов по тем или иным причинам обращаются к командным утилитам.Мы уже говорили, что корнями


14.2.1. Разбор флагов в командной строке

Из книги Наглядный самоучитель работы на нетбуке автора Сенкевич Г. Е.

14.2.1. Разбор флагов в командной строке Для разбора командной строки чаще всего применяется библиотека getoptlong (библиотека getopts.rb, обладающая менее развитой функциональностью, считается устаревшей). Она понимает однобуквенные и длинные флаги и распознает двойной дефис (--)


§ 50. О статусной строке

Из книги Искусство программирования на языке сценариев командной оболочки автора Купер Мендель

§ 50. О статусной строке — Каков ваш статус, Лена? Проще говоря, каков ваш социум эр актум? С. Довлатов. Наши 22 апреля 2000Произошло следующее: в машине спидометр закрыт газетой; на мобильном телефоне дисплей залеплен изолентой; телевизор не показывает, на какой канал


Глава 26 Синтаксический анализ параметров командной строки

Из книги Интернет-маркетинг. Полный сборник практических инструментов автора Вирин Федор Юрьевич

Глава 26 Синтаксический анализ параметров командной строки Многие Linux-программы позволяют задавать параметры командной строки. Эти параметры выполняют самые разнообразные функции, однако имеют практически одинаковую синтаксическую структуру. Короткие параметры


Глава 19 Работаем с документами всерьез

Из книги C++ для начинающих автора Липпман Стенли

Глава 19 Работаем с документами всерьез Из этой главы вы узнаете:© Как открывать и создавать документы в веб-приложениях Google.© Что такое PDF.© Как пользоваться онлайн-переводчиками Google и Bing.Самыми богатыми возможностями обладают редакторы, входящие в офисные пакеты


Глава 4 Работаем с папками и файлами

Из книги Самоучитель работы на компьютере: быстро, легко, эффективно автора Гладкий Алексей Анатольевич

Глава 4 Работаем с папками и файлами


Глава 20. Ограниченный режим командной оболочки

Из книги автора

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


Глава 3 Интернет-маркетинг: с кем мы работаем

Из книги автора

Глава 3 Интернет-маркетинг: с кем мы работаем • Где взять результаты исследований Интернета.• Какие данные можно получить.• Пользователь Интернета с точки зрения интернет-маркетинга.• Сколько пользователей Интернета в России и кто они.• Мифы про пользователей