Библиотека knigago >> Литература по изданиям >> Современные российские издания >> Внутреннее устройство Linux


"Пусть этот мир прогнется под нас" Сергея Богдашова - это захватывающая книга в жанре боевой фантастики, которая переносит читателя в динамичный и опасный мир. Сюжет книги вращается вокруг группы подростков, которые оказываются в ловушке в исследовательском центре, где проводятся секретные эксперименты. Когда неизвестный вирус вырывается на свободу, они вынуждены объединиться, чтобы выжить и найти выход из этого ужасающего ада. Автор искусно создает атмосферу напряжения и страха,...

СЛУЧАЙНАЯ КНИГА

Дело было так. Меир Шалев
- Дело было так

Жанр: Современная проза

Год издания: 2011

Серия: Проза еврейской жизни

Брайан Уорд - Внутреннее устройство Linux

Внутреннее устройство Linux
Книга - Внутреннее устройство Linux.  Брайан Уорд  - прочитать полностью в библиотеке КнигаГо
Название:
Внутреннее устройство Linux
Брайан Уорд

Жанр:

Сети, Современные российские издания, Литература ХXI века (эпоха Глобализации экономики), Linux, Системное программирование

Изадано в серии:

Издательство:

Питер

Год издания:

ISBN:

978-5-496-01952-1

Отзывы:

Комментировать

Рейтинг:

Поделись книгой с друзьями!

Помощь сайту: донат на оплату сервера

Краткое содержание книги "Внутреннее устройство Linux"

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

Читаем онлайн "Внутреннее устройство Linux" (ознакомительный отрывок). [Страница - 6]

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

1. Процессор (реальное аппаратное средство) прерывает текущий процесс, опираясь на внутренний таймер, переключается в режим ядра и возвращает ему управление.

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

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

4. Теперь ядро готово к запуску другого процесса. Оно анализирует список процессов, готовых к запуску, и выбирает какой-либо из них.

5. Ядро готовит память для нового процесса, а затем подготавливает процессор.

6. Ядро сообщает процессору, сколько будет длиться квант времени для нового процесса.

7. Ядро переводит процессор в режим пользователя и передает процессору управление.

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

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


1.3.2. Управление памятью

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

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

• каждому пользовательскому процессу необходима своя область памяти;

• какой-либо пользовательский процесс не должен иметь доступ к области памяти, предназначенной для другого процесса;

• пользовательские процессы могут совместно использовать память;

• некоторые участки памяти для пользовательских процессов могут быть предназначены только для чтения;

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

У ядра есть помощник. Современные процессоры содержат модуль управления памятью (MMU), который активизирует схему доступа к памяти под названием «виртуальная память». При использовании виртуальной памяти процесс не обращается к памяти напрямую по ее физическому расположению в аппаратных средствах. Вместо этого ядро настраивает каждый процесс таким образом, словно в его распоряжении находится вся машина. Когда процесс получает доступ к памяти, модуль MMU перехватывает такой запрос и применяет карту адресов памяти, чтобы перевести местоположение памяти, полученное от процесса, в физическое положение памяти на компьютере. Однако ядро все же должно инициализировать, постоянно поддерживать и изменять эту карту адресов. Например, во время переключения контекста ядро должно изменить карту после отработавшего процесса и подготовить его для наступающего.


Примечание

Реализация карты адресов памяти называется таблицей страниц.

О том, как отслеживать производительность памяти, вы узнаете из главы 8.


1.3.3. Драйверы устройств и управление ими

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

--">

Оставить комментарий:


Ваш e-mail является приватным и не будет опубликован в комментарии.

Книги схожие с «Внутреннее устройство Linux» по жанру, серии, автору или названию:

Linux-сервер своими руками. Денис Николаевич Колисниченко
- Linux-сервер своими руками

Жанр: Сети

Год издания: 2002

Серия: Секреты мастерства

Linux. Алексей Александрович Стахнов
- Linux

Жанр: Сети

Серия: Наиболее полное руководство