12.1 Управление аппаратным обеспечением ПК (Managing PC Hardware)¶
Совет к экзамену
Для сдачи экзамена LPIC-1/Linux+ вам необходимо хорошо знать задачи и процедуры, связанные с управлением аппаратным обеспечением ПК. Ожидайте несколько вопросов о загрузке модулей ядра и командах, используемых для управления ими. Убедитесь, что вы знаете, где в системе хранятся модули ядра.
Для экзамена LPIC-1/Linux+ вам необходимо хорошо знать задачи и процедуры, связанные с управлением аппаратным обеспечением ПК. Здесь предполагается, что у вас уже есть достаточно хорошее понимание основ аппаратного обеспечения ПК и нет необходимости в его повторении. В рамках данной главы предполагается, что, открыв корпус ПК, вы могли бы указать на различные компоненты системы, в том числе:
- Материнская плата
- Процессор (CPU)
- Оперативная память (RAM)
- Жёсткий диск
- Оптический привод
- Слоты расширения
- Блок питания
- Различные разъёмы материнской платы
- И так далее...
Соответственно, в этой главе мы сосредоточимся на навыках и задачах, связанных с аппаратным обеспечением, которые заданы в целях экзамена LPIC-1/Linux+. Будут рассмотрены следующие темы:
- Идентификация устройств хранения данных
- Работа со съёмными аппаратными интерфейсами
- Управление системными ресурсами
- Управление встроенными устройствами
- Управление системами без внешних периферийных устройств
Начнём с изучения того, как идентифицировать различные типы устройств хранения данных.
Идентификация устройств хранения данных (Identifying Mass Storage Devices)¶
Как вам уже известно, оперативная память (random access memory, RAM) — это место в компьютерной системе, где хранятся используемые в текущий момент программы и данные. Главное преимущество RAM состоит в её высокой скорости работы. Данные в RAM могут быть получены очень быстро, потому что процессор способен напрямую обращаться к любой ячейке памяти в любое время. Это делает её идеальным устройством хранения для данных, которые должны обрабатываться процессором.
Например, предположим, что вы хотите создать документ в текстовом редакторе. Первое, что нужно сделать, — открыть приложение. При этом программный код приложения загружается с жёсткого диска в RAM. Когда вы открываете файл в приложении, данные, с которыми вы работаете, также загружаются в RAM.
Несмотря на высокую скорость работы, RAM имеет один существенный недостаток: её необходимо постоянно обновлять электрическим током каждые несколько миллисекунд. Если система не делает этого, данные и программы, хранящиеся в RAM, безвозвратно теряются. Используемая в качестве системной памяти DRAM работает очень быстро, но она не является энергонезависимой. Чтобы PC-система была по-настоящему работоспособной, необходим какой-либо долгосрочный энергонезависимый носитель, который будет хранить данные даже при отключении питания.
В этом разделе мы рассмотрим несколько устройств хранения данных с такими свойствами. Мы изучим следующие типы:
- Жёсткие диски
- Твердотельные накопители
- Оптические устройства хранения
- Флеш-накопители
Начнём с жёстких дисков.
Жёсткие диски (Hard Disk Drives)¶
Жёсткие диски являются основным типом энергонезависимого хранилища в PC-системах. Они быстры, вмещают огромные объёмы данных и достаточно надёжны.
Жёсткие диски считывают и записывают магнитную информацию на вращающиеся алюминиевые диски, называемые пластинами (platters). Они показаны на рис. 12-1.

Рис. 12-1. Пластины жёсткого диска.
В большинстве жёстких дисков используется несколько пластин. Пластины покрыты магнитным материалом, который позволяет головкам жёсткого диска считывать и записывать магнитную информацию.
Внимание
Не вскрывайте жёсткий диск, как это сделано на рис. 12-1. Жёсткие диски являются герметичными устройствами, содержащими исключительно чистый воздух. Если вы вскроете диск, в систему попадёт пыль, которая может поцарапать поверхность пластин и тем самым привести их в негодность.
Каждая пластина имеет две головки. Одна считывает верхнюю сторону пластины, другая — нижнюю. Сами головки фактически не касаются поверхности пластин. По мере вращения пластин на их поверхности образуется тонкая воздушная подушка. Головки фактически опираются на эту воздушную подушку.
Пластины жёсткого диска вращаются очень быстро. Диск низшей ценовой категории вращается со скоростью около 5400 об/мин. Большинство рабочих станций оснащены жёсткими дисками со скоростью вращения 7200 об/мин. Высокопроизводительные серверные диски вращаются со скоростью 10 000 об/мин и более. Чем быстрее вращаются пластины, тем быстрее диск может считывать или записывать данные.
У каждого жёсткого диска есть несколько параметров, которые в совокупности называются геометрией диска (drive geometry). Эти параметры используются системой для определения способа доступа к диску и мест хранения данных. К параметрам геометрии диска относятся:
- Головки (Heads) — количество головок чтения/записи в диске.
- Цилиндры (Cylinders) — концентрические параллельные дорожки на всех сторонах всех пластин жёсткого диска. Представьте себе полый цилиндр, проходящий через все пластины диска. В зависимости от его ширины в пределах пластин можно разместить определённое количество цилиндров со всё большим диаметром, начиная от центра пластин и двигаясь к их краям.
- Секторов на дорожку (Sectors Per Track) — количество секторов, на которые разделены пластины. Помимо воображаемых цилиндров в диске, каждую пластину можно условно разрезать на воображаемые секторы в форме клиньев пирога.
Параметры геометрии диска часто называют просто CHS (цилиндры, головки и секторов на дорожку). Раньше эти параметры приходилось настраивать в программе настройки CMOS вручную при каждом добавлении нового диска. Сегодня это уже не так актуально. Система по-прежнему должна знать эти параметры для адресации диска, однако большинство систем опрашивают жёсткий диск при каждой загрузке и автоматически обновляют геометрию диска.
В настоящее время для использования в PC-системах доступны два семейства жёстких дисков: SATA и SCSI. Вначале кратко рассмотрим SATA.
Жёсткие диски SATA (SATA Hard Disk Drives)¶
В настоящее время жёсткие диски с интерфейсом Serial ATA (SATA) являются наиболее распространённым типом устройств хранения данных в большинстве настольных компьютеров. Диски SATA работают значительно быстрее, чем более ранние типы жёстких дисков, поскольку каждый диск SATA в системе имеет собственный выделенный канал, что существенно повышает скорость и пропускную способность.
Устройства SATA подключаются к материнской плате с помощью 7-контактного разъёма. Для передачи и приёма информации они используют последовательную шинную архитектуру, что требует двух каналов:
- Один путь сигнала для последовательной побитовой передачи данных
- Второй последовательный канал для возврата подтверждений получения отправителю
Поскольку SATA использует топологию соединения «точка–точка», каждое устройство имеет собственный кабель. Каждый канал работает независимо от других, поэтому между дисками нет конкуренции и совместного использования полосы пропускания интерфейса. Устройства SATA могут передавать данные со скоростью от 150 МБ/с (для ранних устройств) до максимальных 1969 МБ/с.
Совет
Большинство современных операционных систем, включая Linux, воспринимают устройства SATA как устройства SCSI.
Обратите внимание, что диск SATA, подключённый к разъёму SATA0 на материнской плате, по умолчанию будет использоваться системой как загрузочный, поскольку ему будет присвоен идентификатор 0. (Диску, подключённому к разъёму SATA1, будет присвоен идентификатор 1, и так далее.) Если вы хотите использовать другой диск для загрузки, необходимо вручную указать нужный диск.
Жёсткие диски SCSI (SCSI Hard Disk Drives)¶
SCSI расшифровывается как Small Computer System Interface (интерфейс малых компьютерных систем). В отрасли его обычно произносят как «скази». SCSI — это универсальный интерфейс, который можно использовать для подключения к PC-системе широкого спектра различных устройств, в том числе:
- Жёстких дисков
- Оптических приводов
- Стримеров
- Сканеров
- Массивов RAID
- Принтеров
SCSI очень мощный и гибкий. Однако в настольных PC-системах вы вряд ли встретите много жёстких дисков SCSI, поскольку они значительно дороже сопоставимых дисков SATA. Реализации жёстких дисков SCSI обычно применяются в высокопроизводительных серверных системах.
SCSI реализует коммуникационную цепочку, соединяющую последовательно несколько устройств. Цепочка SCSI прокладывает кабели от устройства к устройству. Устройства могут быть реализованы как внутри сервера и соединены плоским кабелем, так и снаружи с помощью внешних кабелей. В любом случае контроллер SCSI (SCSI controller) управляет всеми устройствами в цепочке. Контроллер SCSI обычно реализован в виде платы расширения в слоте расширения материнской платы и, как правило, имеет два разъёма:
- Внутренний (Internal) — для подключения внутренних устройств SCSI с помощью плоского кабеля SCSI.
- Внешний (External) — для подключения внешних устройств SCSI к контроллеру.
Старые контроллеры SCSI поддерживали до восьми устройств (включая сам контроллер) в цепочке. Многие современные контроллеры SCSI поддерживают до 16 устройств (также включая контроллер). Контроллер определяет, какие данные должны быть отправлены тому или иному устройству в цепочке, используя идентификатор SCSI (SCSI ID). Каждое устройство в цепочке SCSI должно иметь уникальный идентификатор от 0 до 7 (от 0 до 15 на новых контроллерах).
Важно понимать, что идентификатор SCSI, присвоенный устройству, никак не связан с его физическим расположением в цепочке SCSI. Это просто логический номер. Тем не менее идентификатор SCSI выполняет важную функцию: он определяет приоритет устройства в цепочке. Чем выше идентификатор SCSI, присвоенный устройству, тем выше его приоритет. По умолчанию контроллерам SCSI присваивается высокоприоритетный идентификатор 7. Жёстким дискам SCSI обычно присваивается низкоприоритетный идентификатор 0 или 1. Оптическим приводам обычно присваивается низкоприоритетный идентификатор SCSI 4 или 5.

Рис. 12-2. Идентификаторы SCSI и порядок загрузки в BIOS.
Однако идентификатор устройства также используется для определения порядка загрузки, причём в обратном порядке: чем ниже идентификатор, тем выше приоритет при загрузке. Например, если у вас есть жёсткий диск SCSI с идентификатором 0, подключённый к контроллеру SCSI, и второй жёсткий диск на той же шине с идентификатором 1, BIOS попытается загрузиться с устройства с идентификатором 0 первым. Это показано на рис. 12-2.
Обратите внимание, что каждое устройство SCSI имеет двухкомпонентный идентификатор в формате x:n. Параметр x идентифицирует идентификатор контроллера SCSI, к которому подключено устройство. Первый контроллер в системе имеет идентификатор 0, второй — 1, и так далее. Параметр n идентифицирует идентификатор устройства на шине данного контроллера. Таким образом, 0:0 означает, что диск является первым устройством SCSI на первом контроллере SCSI (и по умолчанию будет первым загрузочным устройством). Для изменения порядка загрузки можно вручную изменить порядок загрузки или изменить идентификатор SCSI, присвоенный устройству, с которого требуется выполнять загрузку.
Совет
Помните: никакие два устройства SCSI на одной шине не могут иметь одинаковый идентификатор.
Способ установки идентификатора SCSI варьируется от устройства к устройству. В большинстве жёстких дисков SCSI для задания идентификатора используются три перемычки со следующими значениями:
- Перемычка 1 = 1
- Перемычка 2 = 2
- Перемычка 3 = 4
Идентификатор SCSI определяется суммированием значений всех перемычек с установленными шунтами. Например, если не установлено ни одного шунта (то есть все перемычки разомкнуты), идентификатор SCSI равен 0 + 0 + 0 = 0. Если установить шунт на перемычку 2, идентификатор SCSI равен 0 + 2 + 0 = 2. Если установить шунты на перемычки 2 и 3, идентификатор SCSI равен 0 + 2 + 4 = 6.
Примечание
Идентификатор SCSI также может быть задан программно — в зависимости от устройства.
Помимо идентификатора SCSI, при настройке цепочки SCSI необходимо уделить внимание терминированию (termination). Каждый конец цепочки SCSI должен быть оснащён согласующим резистором (terminating resistor) для поглощения сигналов данных. Это предотвращает отражение сигнала обратно по шине.
Терминирование в цепочке SCSI может быть реализовано по-разному. Для внутренних устройств терминатор может быть присоединён к концу плоского кабеля SCSI. Для внешних устройств терминатор может представлять собой специальную заглушку, вставляемую во второй разъём SCSI последнего внешнего устройства в цепочке.
Терминирование также может быть реализовано непосредственно на самих устройствах SCSI одним из следующих способов:
- Наборы резисторов (Resistor packs) — наборы резисторов, устанавливаемые в плату устройства SCSI для включения терминирования.
- Перемычки (Jumpers) — замкнутая перемычка часто используется для включения терминирования на устройстве.
- Программные средства (Software) — платы контроллеров SCSI обычно включают программу настройки, запускаемую из BIOS платы, которую можно использовать для включения и отключения терминирования.
- Активное терминирование (Active termination) — многие устройства SCSI используют активное терминирование. При активном терминировании устройство проверяет, является ли оно последним в цепочке, и если да — автоматически включает согласующий резистор.
При настройке терминирования SCSI важно помнить: оба конца шины SCSI должны быть терминированы, но ничего в середине терминировать нельзя. Устройства, расположенные после терминатора в цепочке SCSI, будут невидимы для контроллера.
Примечание
Практика показывает, что около 95 процентов проблем при работе с SCSI обусловлены неправильно настроенными идентификаторами SCSI или терминаторами.
За прошедшие годы было введено большое количество стандартов SCSI. Подробное рассмотрение всех стандартов выходит за рамки данного раздела. Для наших целей достаточно убедиться, что все устройства в цепочке SCSI, включая контроллер, используют один и тот же стандарт SCSI. Например, если вы используете жёсткие диски Wide Ultra SCSI III, необходимо применять контроллер Wide Ultra SCSI III.
Существует новый высокопроизводительный стандарт SCSI, используемый почти исключительно в серверных системах, — Serial Attached SCSI (SAS). SAS сохраняет многие лучшие особенности традиционных стандартов SCSI. Вместе с тем он также перенимает многие лучшие свойства стандарта SATA. Например, вместо шины SCSI SAS использует топологию соединения «точка–точка», очень похожую на SATA. Это сходство настолько велико, что некоторые устройства SATA можно даже подключать к разъёму SAS. Поскольку шины SCSI нет, отпадает необходимость в терминировании устройств SAS, что устраняет множество проблем конфигурирования.
SAS также преодолевает ограничения по количеству устройств, присущие традиционному SCSI. Вместо 8 или 16 устройств SAS теоретически поддерживает до 65 535 устройств. SAS также быстрее: он поддерживает скорость передачи данных до 6 Гбит/с.
Твердотельные накопители (Solid-State Drives)¶
В последнее время твердотельные накопители (solid-state drives, SSD) всё активнее завоёвывают рынок настольных PC-систем. Твердотельный накопитель — это устройство хранения, которое функционирует во многом как обычный жёсткий диск, используя те же блочные операции ввода-вывода. Однако в отличие от традиционных жёстких дисков, SSD используют флеш-память для хранения данных. Традиционные жёсткие диски являются механическими устройствами, использующими электродвигатели, вращающиеся пластины и подвижные головки чтения/записи на рычагах. SSD же используют флеш-память и не имеют движущихся частей.
Благодаря отсутствию движущихся частей SSD менее подвержены повреждениям от физических ударов и работают значительно тише, чем традиционные жёсткие диски. Кроме того, SSD считаются значительно более быстрыми, чем обычные жёсткие диски. К сожалению, эти преимущества имеют свою цену: SSD также значительно дороже жёстких дисков.
Одна из удобных особенностей SSD состоит в том, что они используют тот же интерфейс SATA, что и традиционные жёсткие диски. Это делает переход на данный тип накопителей в типичной PC-системе весьма простым. При этом к SSD применяются те же правила в отношении идентификаторов и порядка загрузки, что и к жёстким дискам SATA.
Оптические устройства хранения (Optical Storage Devices)¶
Помимо жёстких дисков, для хранения данных в PC-системе можно использовать оптические носители. В настоящее время доступны оптические устройства CD, DVD и Blu-ray.
Оптические носители хранят двоичные данные так же, как и любые другие устройства хранения, однако способ их хранения принципиально отличается. В отличие от жёстких дисков, оптические приводы не используют магнетизм. Вместо этого они хранят данные в виде отражённого света. Нижняя поверхность оптического диска закодирована с помощью серии впадин (pits) и площадок (lands). Впадины не отражают свет, площадки — отражают. Отражая лазерный луч от нижней поверхности оптического диска и фиксируя отражения и их отсутствие, создаваемые впадинами и площадками, можно восстановить двоичные данные в виде нулей и единиц.
Компакт-диски (Compact Discs, CD) имеют диаметр 120 мм и толщину 1,2 мм. Диск CD вмещает от 650 до 700 МБ двоичных данных или 74 минуты цифрового звука. Цифровые универсальные диски (Digital Versatile Discs, DVD) имеют те же физические размеры, что и CD. Однако поскольку дорожки на DVD тоньше и расположены ближе друг к другу, DVD может хранить значительно больше данных, чем CD (4,7 ГБ). Диски Blu-ray также имеют те же физические размеры, что и CD. Однако они используют синий лазер вместо красного, применяемого в CD и DVD. Поскольку синий лазер использует световые лучи с более высокой частотой и более коротким длиной волны, он способен хранить значительно больше данных в том же физическом пространстве (до 25 ГБ на слой). Некоторые диски Blu-ray реализуют несколько слоёв, что позволяет хранить очень большой объём информации.
Основные преимущества использования оптических носителей для хранения данных в ПК:
- Возможность хранения относительно большого объёма данных.
- Высокая мобильность.
- Очень низкая стоимость производства.
Первоначально оптические диски были введены в использование в ПК как носители только для чтения. Для нанесения впадин и площадок, хранящих двоичные данные, оптический диск приходилось прессовать на производственном предприятии. После прессования добавить данные на диск было уже невозможно.
Сегодня всё изменилось. В современных PC-системах можно использовать записываемые и перезаписываемые оптические приводы (их обычно называют записывающими приводами, или «прожигателями»). Они реализуют второй высокоинтенсивный лазер помимо стандартного лазера чтения. Этот второй лазер используется для записи информации на нижнюю поверхность записываемого диска. Однократно записываемые диски используют специальный светочувствительный краситель на нижней поверхности. Когда высокоинтенсивный лазер записывающего привода воздействует на этот краситель, он изменяет его пигмент на более тёмный цвет. Таким образом, можно закодировать двоичные данные на диске с помощью светлых и тёмных пятен, которые работают аналогично впадинам и площадкам на фабрично изготовленном оптическом диске.
При записи с помощью оптического привода CD-R, DVD-R или BD-R данные становятся постоянными сразу после записи: стереть или изменить их уже нельзя. Для возможности модификации данных необходимо использовать перезаписываемый оптический привод (CD-RW, DVD-RW или BD-RE). Перезаписываемый привод использует высокоинтенсивный вторичный лазер, как и в случае CD-R, DVD-R или BD-R. Однако нижняя поверхность диска RW или RE покрыта светочувствительным кристаллическим покрытием. На эти диски можно наносить светлые и тёмные пятна, как и на диски -R, а также стирать их. Используя лазер с нужной интенсивностью и частотой, привод RW может сбросить кристаллы на нижней поверхности диска в исходное состояние, позволяя записать новые данные.
Флеш-накопители (Flash Drives)¶
Последний тип устройств хранения, который необходимо рассмотреть, — это флеш-накопители (flash drives). Вместо магнитных пластин или оптических дисков флеш-накопители используют микросхему памяти. Как и SSD, флеш-накопители используют флеш-память. Флеш-память можно электронно стирать и перепрограммировать. Кроме того, флеш-память является энергонезависимой: записанные данные сохраняются даже при отключении питания.
Это сочетание свойств делает флеш-накопители очень удобным и мощным решением для хранения данных в ПК. Они могут хранить большие объёмы данных в очень компактном корпусе. Большинство флеш-накопителей настолько малы, что их можно носить на связке ключей. Нередко их называют «флешками» или «thumb drive» именно из-за их небольшого размера.
По сути, флеш-накопитель — это не что иное, как печатная плата с установленной микросхемой флеш-памяти, подключённой к интерфейсу USB. После подключения флеш-накопителя к порту USB компьютера система может считывать и записывать данные на него так же, как на небольшой жёсткий диск.
На этом рассмотрение основных компонентов ПК завершено. Далее мы рассмотрим съёмное аппаратное обеспечение.
Работа со съёмными аппаратными интерфейсами (Working with Removable Hardware Interfaces)¶
В последние годы для ПК появились новые аппаратные интерфейсы, которые произвели революцию в способах подключения внешних устройств. До появления этих интерфейсов внешние устройства подключались к системе через последовательные и параллельные порты, порты клавиатуры и мыши. Однако для того чтобы большинство таких устройств работало корректно, их нужно было правильно подключить и включить (при необходимости) ещё до включения самого ПК. В противном случае система, как правило, не распознавала подключённое устройство. Кроме того, нельзя было отключить одно внешнее устройство и подключить другое в работающей системе — подобное изменение обычно требовало полной перезагрузки.
Съёмные аппаратные интерфейсы изменили это положение дел. Теперь можно добавлять или удалять внешние устройства при работающей системе, и ПК автоматически распознаёт изменение. В этом разделе мы рассмотрим следующие съёмные аппаратные интерфейсы:
- Universal Serial Bus (USB)
- IEEE 1394 (например, FireWire)
Начнём с USB.
Universal Serial Bus¶
Universal Serial Bus (USB) — это высокоскоростной съёмный аппаратный интерфейс, который практически вытеснил последовательные, параллельные порты, а также порты мыши и клавиатуры в ПК. В большинстве современных PC-систем интерфейс USB интегрирован в материнскую плату. USB можно использовать для подключения широкого спектра внешних устройств, в том числе:
- Внешних жёстких дисков
- Внешних приводов CD и DVD
- Принтеров
- Сканеров
- Цифровых фотокамер
- Мышей
- Клавиатур
- Флеш-накопителей
USB объединяет эти устройства в шину. Одна шина USB может включать до 127 внешних устройств. Все устройства на шине делятся на три категории:
- Концентраторы (Hubs) — центральные точки подключения устройств USB. USB использует топологию «звезда». Все устройства на шине подключаются к концентратору USB. Интерфейс USB в вашем ПК — как плата расширения, так и встроенный в материнскую плату — функционирует как корневой концентратор (root hub) шины USB. Удобная особенность USB заключается в том, что несколько концентраторов можно объединять в каскад для подключения дополнительных устройств к шине, просто подключив один концентратор USB к порту другого. Это делает USB исключительно масштабируемым.
- Функции (Functions) — отдельные внешние устройства USB, такие как принтеры, сканеры, жёсткие диски, клавиатуры и мыши.
- Концентратор и функция (Hub and function) — некоторые устройства USB одновременно являются и функцией, и концентратором. Например, многие USB-клавиатуры имеют несколько портов USB для подключения дополнительных устройств. Такое устройство является одновременно функцией и концентратором.
Поскольку все устройства USB в конечном счёте подключаются к ПК через корневой концентратор интерфейса USB, USB устраняет необходимость в нескольких отдельных интерфейсах для поддержки нескольких внешних устройств. Раньше для каждого подключаемого устройства требовался отдельный интерфейс. Например, для подключения двух параллельных принтеров к одному ПК нужно было приобрести и установить дополнительную плату параллельного порта для второго принтера. С USB эта проблема исчезает: один интерфейс USB поддерживает множество устройств. Некоторые USB-устройства, например флеш-накопители, могут даже получать питание непосредственно от шины USB. Другие USB-устройства, например внешние приводы DVD, требуют собственного блока питания с подключением к розетке.
Кроме того, USB-устройства являются самонастраивающимися, самоидентифицирующимися и горячезаменяемыми (hot-swappable). Устройство можно подключить к работающей системе, после чего оно объявит о своём присутствии ПК, который назначит необходимые ресурсы для его работы. По окончании работы устройство можно остановить и отключить, не прерывая работу системы.
USB реализован в нескольких версиях. Наиболее важные из них:
- USB 1.1 — самая старая версия USB. Передаёт данные со скоростью 12 Мбит/с.
- USB 2.0 — значительно быстрее USB 1.1 и по-прежнему широко используется. Скорость передачи данных — 480 Мбит/с.
- USB 3.0 — последняя версия USB. Работает очень быстро: скорость передачи данных составляет до 5 Гбит/с, что в десять раз быстрее USB 2.0. USB 3.0 обратно совместим с более старыми устройствами: USB-устройство стандарта 2.0 можно подключить к разъёму USB 3.0, и оно будет работать, однако на скорости USB 2.0.
Важно помнить, что общая скорость всей шины устанавливается по скорости самого медленного устройства. Например, при наличии интерфейса USB 2.0 и подключении жёсткого диска USB 1.1 вся система замедлится до 12 Мбит/с.
IEEE 1394¶
IEEE 1394 очень похож на USB. Он разработан для поддержки высокоскоростной передачи данных между внешними устройствами и PC-системой. IEEE 1394 был первоначально разработан компанией Apple: компьютеры Macintosh оснащались IEEE 1394 ещё до появления USB. Сегодня IEEE 1394 менее распространён, чем USB. Большинство современных PC-систем не имеют встроенного интерфейса IEEE 1394. Для использования устройств IEEE 1394, вероятно, потребуется установить плату расширения IEEE 1394 в слот расширения материнской платы.
Примечание
IEEE 1394 также называется FireWire (Apple), i.Link (Sony) и Lynx (Texas Instruments).
Как и USB, устройства IEEE 1394 поддерживают технологию Plug and Play (PnP) и являются горячезаменяемыми. Они часто используются для подключения:
- Внешних жёстких дисков
- Внешних оптических приводов
- Цифровых фотокамер
- Цифровых видеокамер
IEEE 1394 работает очень быстро: скорость передачи данных — до 3,2 Гбит/с. В отличие от USB, IEEE 1394 не использует топологию «звезда». Вместо этого устройства IEEE 1394 соединяются по принципу шины: кабель проходит от устройства к устройству, образуя цепочку. Таким образом можно объединить в цепочку не более 63 устройств.
Управление системными ресурсами (Managing System Resources)¶
Для сдачи экзамена LPIC-1/Linux+ необходимо понимать процедуру управления системными ресурсами. Каждое устройство в PC-системе должно быть настроено с набором системных ресурсов, определяющих коммуникационные каналы и адреса, которые оно может использовать. Для эффективного администрирования Linux-системы необходимо твёрдо понимать, что такое системные ресурсы и как они работают. В этой части главы мы рассмотрим:
- Каналы запросов прерывания
- Адреса ввода-вывода
- Каналы DMA
- Plug and Play
Начнём с прерываний.
Каналы запросов прерывания (Interrupt Request Channels)¶
Первый системный ресурс, с которым необходимо познакомиться, — канал запроса прерывания (interrupt request channel). Каналы запросов прерывания также называются IRQ или просто прерываниями.
При установке устройства в PC-систему необходим механизм, позволяющий устройству сообщить процессору о необходимости его обслуживания. Многие устройства требуют значительного процессорного времени; другим оно нужно лишь изредка. Необходимо обеспечить должное внимание занятым устройствам, не тратя время на устройства, которые в нём не нуждаются. Для этого используются прерывания.
Процессор имеет один провод, называемый проводом прерывания (interrupt, INT). При подаче тока на этот провод процессор прекращает выполнение текущей задачи и обслуживает устройство, подавшее ток. Если тока на проводе нет, процессор продолжает выполнять назначенную ему задачу обработки.
Система прерываний в ПК очень напоминает обычную обстановку в классе. Преподаватель излагает подготовленный материал студентам. Если у студента есть вопрос, он может поднять руку и прервать изложение. После ответа преподаватель продолжает изложение.
Прерывания в ПК работают примерно так же. Как и преподаватель, процессор занимается своим делом, пока его не прервут. Получив прерывание, процессор переключает своё внимание на устройство, которое подало сигнал прерывания. Удовлетворив запрос устройства, процессор возвращается к выполнению прерванной задачи.
Преимущество использования прерываний состоит в том, что процессор обслуживает устройства только тогда, когда они в этом нуждаются, не тратя время на простаивающие устройства.
Однако описанный сценарий порождает проблему. В PC-системе много разных устройств, которым периодически требуется внимание процессора. При этом у процессора только один провод INT. Для того чтобы множество устройств могли использовать этот провод, применяется микросхема программируемого контроллера прерываний (programmable interrupt controller, PIC).
Микросхема PIC подключена как к проводу INT процессора, так и к проводам прерываний в шине расширения материнской платы. Когда устройству требуется внимание, оно подаёт ток на свой провод прерывания. PIC фиксирует это событие и подаёт ток на провод INT процессора. Процессор подтверждает прерывание, и PIC сообщает процессору, какой номер прерывания был активирован. После этого процессор может обслужить устройство.
Ранние ПК имели только восемь прерываний и один PIC. Современные ПК имеют значительно больше прерываний. Новые системы используют микросхему Advanced Programmable Interrupt Controller (APIC), поддерживающую до 255 линий IRQ.
При работе с прерываниями следует помнить следующее:
- Каждое устройство в ПК должно иметь назначенное прерывание.
- Два устройства PCI могут использовать одно прерывание совместно.
- Некоторые системные устройства имеют прерывания, назначенные по умолчанию; некоторые из них можно изменить или отключить, многие — нельзя:
- IRQ 0 — системный таймер
- IRQ 1 — клавиатура
- IRQ 3 — COM 2
- IRQ 4 — COM 1
- IRQ 5 — LPT 2
- IRQ 6 — дисковод
- IRQ 7 — LPT 1
- IRQ 8 — часы реального времени
- Прерывания 0, 1 и 8 являются аппаратно зафиксированными. Ни при каких обстоятельствах нельзя использовать эти прерывания для других устройств в системе.
- Если устройство с назначенным по умолчанию прерыванием не установлено в системе или отключено, его прерывание можно использовать для другого устройства.
Помимо прерываний, для работы в PC-системе устройствам также требуется адрес ввода-вывода.
Адреса ввода-вывода (Input/Output Addresses)¶
Адреса ввода-вывода (Input/Output, I/O) в PC-системе имеют множество названий. Их также называют I/O-портами, адресами портов или просто портами.
Адреса ввода-вывода обеспечивают обмен данными между устройствами ПК и операционной системой. Они очень напоминают почтовые ящики. Чтобы отправить письмо кому-то, нужно знать его почтовый адрес. Вы пишете адрес на письме, и почтальон доставляет его в ящик с этим адресом. Аналогично, адресат может ответить вам и оставить письмо в своём ящике для почтальона.
Адреса ввода-вывода работают точно так же: они служат почтовыми ящиками для устройств, установленных в системе. Данные для устройства можно оставить в его адресе ввода-вывода. Данные от устройства могут быть оставлены в адресе ввода-вывода для считывания операционной системой.
На персональном компьютере для использования устройствами доступно 65 535 адресов портов.
Совет к экзамену
Адреса ввода-вывода записываются в шестнадцатеричной нотации. Десятичная система счисления, используемая в повседневной жизни, — это система с основанием 10: при счёте начинают с 0 и продолжают до 9, после чего начинают заново с 10. Шестнадцатеричная система — это система с основанием 16. Как и в десятичной системе, шестнадцатеричный счёт начинается с 0 и продолжается до 9. Однако затем следуют ещё шесть символов, представленных буквами от A до F. Таким образом, в шестнадцатеричной системе счёт выглядит следующим образом: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F. Чтобы избежать путаницы между шестнадцатеричными и десятичными числами, перед шестнадцатеричным числом или после него обычно добавляют букву h.
При работе с адресами ввода-вывода следует помнить:
- Все устройства должны иметь назначенный адрес ввода-вывода.
- Большинство устройств используют диапазон адресов ввода-вывода.
- Устройства должны использовать уникальные порты ввода-вывода.
- Назначения адресов портов по умолчанию включают следующие:
0000h— контроллер DMA0020h— PIC 10030h— PIC 20040h— системный таймер0060h— клавиатура0070h— CMOS-часы00C0h— контроллер DMA00F0h— математический сопроцессор0170h— вторичный контроллер жёсткого диска IDE01F0h— первичный контроллер жёсткого диска IDE0200h— джойстик0278h— LPT202E8h— COM402F8h— COM20378h— LPT103E8h— COM303F0h— контроллер дисковода03F8h— COM1
Каналы прямого доступа к памяти (Direct Memory Access Channels)¶
Помимо прерываний и адресов ввода-вывода, некоторые устройства также требуют канала прямого доступа к памяти (direct memory access, DMA). Каналы DMA используются высокопроизводительными устройствами для прямого обмена данными с RAM в обход процессора. Такой обход позволяет существенно повысить скорость передачи данных устройства.
Не все устройства нуждаются в DMA. Однако для некоторых устройств отсутствие DMA стало бы серьёзным ограничением. К таким устройствам относятся:
- Звуковые платы
- Некоторые жёсткие диски
DMA реализован на материнской плате с помощью микросхемы контроллера DMA (DMA controller chip, DCC). DCC очень похож на рассмотренную ранее микросхему PIC. DCC имеет четыре вывода, соединяющих его с микросхемой контроллера памяти (memory controller chip, MCC) и слотами шины расширения. Каждый из этих выводов называется каналом DMA. Данные из слота расширения передаются через DCC в MCC, обеспечивая тем самым прямой доступ к системной памяти.
При работе с DMA следует помнить:
- Никакие два устройства не могут использовать один и тот же канал.
- Современные системы используют каскадные контроллеры DMA для увеличения количества доступных каналов DMA.
Plug and Play¶
В «старые времена» эпохи ISA системные ресурсы платы расширения в слоте приходилось настраивать вручную. Большинство плат ISA имело перемычки или DIP-переключатели для настройки прерывания, адреса ввода-вывода и канала DMA. В теории это не звучало слишком сложно, но на практике могло вызывать большие затруднения.
Проблема состояла в том, что большинство плат расширения, в целях снижения производственных затрат, не могли быть настроены для использования любого из доступных прерываний или адресов портов. Вместо этого большинство плат предлагали выбор из двух-трёх прерываний и диапазонов адресов ввода-вывода, причём производители, как правило, делали одни и те же выборы. Это легко приводило к нехватке ресурсов. Например, в системе могли быть доступны прерывания 2 и 3, однако устанавливаемая плата могла быть настроена только на прерывания 4, 5 или 7. Для установки платы приходилось вручную перенастраивать другие устройства системы, пытаясь освободить нужное прерывание.
Всё изменилось с появлением стандарта Plug and Play (PnP) в конце 1990-х годов. PnP по-прежнему используется сегодня. Стандарт PnP предназначен для автоматической настройки системных ресурсов, используемых платами расширения, при каждом включении системы. Это значительно облегчает жизнь системного администратора: достаточно установить плату в доступный слот и включить систему — никаких перемычек, DIP-переключателей и дискет с конфигурацией.
При включении системы PnP-совместимая система согласовывает с PnP-платой расширения, какие прерывания, адреса ввода-вывода и каналы DMA она будет использовать. При необходимости операционная система также может внести свой вклад в то, какие ресурсы, по её мнению, должны быть назначены.
Примечание
В самых ранних версиях PnP система не всегда работала корректно. Системные администраторы называли её «plug-n-pray» (включи и молись).
Управление встроенными устройствами (Managing Integrated Devices)¶
В прошлом материнская плата типичного ПК была достаточно скромной по составу: разъём процессора, компоненты чипсета, слоты расширения и немного более. Для подключения последовательных или параллельных устройств необходимо было установить соответствующую плату в слот расширения. Для вывода видеосигнала также требовалась видеоплата в слоте расширения. Для подключения к сети — сетевая плата в слоте расширения. И ещё нужна была плата контроллера диска для жёсткого диска.
Сегодня всё иначе. Большинство материнских плат включают множество встроенных устройств, в том числе:
- Порты ввода-вывода (последовательные, параллельные, USB и FireWire)
- Видеоинтерфейсы
- Сетевые интерфейсы
- Звуковые платы
- Контроллеры хранения данных
- И так далее...
Встроенные периферийные устройства удобны: они снижают общую стоимость сборки системы, так как эти устройства не нужно покупать отдельно. Они также упрощают управление, поскольку компоненты, как правило, хорошо совместимы друг с другом, а все необходимые драйверы включены в поставку платы.
Однако если встроенные видеосистема, сеть или звук вас не устраивают? Возможно, вы игрок и вам нужна производительная видеоплата. Или система будет использоваться как сетевой сервер и требует конкретного сетевого интерфейса для поддержки операционной системы или приложения.
Примечание
Например, гипервизоры VMware ESX и ESXi на базе Linux требуют наличия определённых сетевых плат и контроллеров дисков, прежде чем их можно установить.
Кроме того, требования безопасности некоторых организаций (особенно государственных) могут предписывать отключение определённых типов периферийных устройств. Хороший пример — интерфейс USB. Несмотря на удобство USB-интерфейса, он также представляет серьёзную угрозу для организаций с высокими требованиями к безопасности. Представьте, какой объём данных можно вынести с помощью флешки при доступе к оставленной без присмотра системе!
К счастью, встроенные периферийные устройства не обязательно должны быть в включённом состоянии. Их можно достаточно легко включить или отключить. После отключения можно установить любое замещающее периферийное устройство в слот расширения или порт USB.
Обычно при загрузке системы отображается сообщение с указанием сочетания клавиш для доступа к программе настройки системы. Войдя в программу настройки, найдите соответствующий пункт меню для доступа к меню встроенных периферийных устройств. После внесения необходимых изменений нажмите соответствующую клавишу (или выберите соответствующий пункт меню), чтобы сохранить изменения. Изменённые периферийные устройства будут включены или отключены на материнской плате соответствующим образом.
Обратите внимание, что многие новые компьютеры больше не используют микросхему BIOS на материнской плате. Вместо неё применяется Unified Extensible Firmware Interface (UEFI) — микропрограмма, подобная BIOS, но функционирующая иначе. UEFI был разработан для устранения многих недостатков традиционного BIOS, таких как ограничения по объёму памяти и размеру жёсткого диска. Он также разработан для предотвращения загрузки неавторизованных операционных систем — это защита от вредоносных программ, называемых руткитами (rootkits) или буткитами (bootkits), которые внедряются в корневой сектор жёстких дисков. Это приводит к их загрузке ещё до загрузки реальной операционной системы, что делает их обнаружение антивирусным программным обеспечением крайне затруднительным. UEFI не позволяет загружать операционную систему, если она не имеет цифровой подписи, которая обычно выполняется производителем системы.
Это создаёт значительные трудности в контексте Linux. Вполне распространена ситуация, когда Linux устанавливается вместо Windows. На системах с BIOS этот процесс работал нормально. Однако на системах с UEFI он вызывает серьёзные проблемы, поскольку микропрограмма UEFI для Windows не содержит цифровых сертификатов для всех возможных дистрибутивов Linux. На некоторых аппаратных платформах эту проблему можно обойти, отключив параметр SecureBoot в микропрограмме UEFI.
Управление системами без внешних периферийных устройств (Managing Systems Without External Peripherals)¶
В зависимости от вашей роли вам может потребоваться управлять системами без каких-либо внешних периферийных устройств, включая клавиатуру. Многие серверы управляются именно таким образом, как и многие виртуализированные системы, работающие на гипервизоре.
Для управления такими системами существует несколько вариантов. Если система имеет встроенный интерфейс управления (integrated management interface) — как это бывает на высокопроизводительных серверных системах — к нему обычно можно получить доступ через веб-браузер и выполнять различные задачи управления, включая доступ к дисплею системы, завершение её работы и даже включение питания.
Если система не имеет встроенного интерфейса управления, доступны два других варианта:
- SSH — с помощью SSH можно безопасно получить доступ к командной строке системы и выполнять команды, как если бы вы находились перед ней. Через SSH-соединение также можно пробросить трафик X-сервера, что позволяет безопасно получить доступ к графическому рабочему столу системы.
- VNC — можно также использовать Virtual Network Computing (VNC) для удалённого доступа к графическому рабочему столу системы. VNC удобен, однако уступает SSH в плане безопасности, поэтому обычно применяется только в защищённых сетях.
Настройку SSH мы рассмотрим в одной из следующих глав. Там же будет рассмотрена настройка xinetd для включения VNC в системе Linux. Пока просто знайте, что это варианты доступа к системе без внешних периферийных устройств.
Разобравшись с аппаратной частью, рассмотрим далее принципы работы драйверов Linux.