101.1 Определение и настройка аппаратной части
Студент должен разбираться в управлении основными комплектующими ПК.
Изучаем :
- включение и выключение устройств;
- настройку системы без периферийных устройств;
- устройства хранения информации;
- понятие горячей замены;
- определение параметров устройств;
- инструменты просмотра сведений об устройствах;
- инструменты управления USB;
- понятия sysfs, udev, dbus.
Термины и утилиты:
- /sys/
- /proc/
- /dev/
- modprobe
- lsmod
- lspci
- lsusb
Аппаратная часть современных компьютерных устройств — это отдельный полноценный курс. В данном уроке поверхностно рассматриваются базовые манипуляции с комплектующими ПК из ОС Linux.
При работе с устройствами Linux можно столкнуться со следующими понятиями:
- HAL – демон, представляющий слой абстрагирования от конкретной АЧ, благодаря которому ОС может обращаться к устройствам через их абстрактные представления (конкретную инструкцию устройству будет передавать драйвер), на данный момент является устаревшим;
- Dbus - шина, через которую ОС общается с HAL;
- udev - менеджер устройств, пришедший на смену HAL.
Преимущества udev :
- --работает на уровне пользователя (больше свободы действий);
- --событийно-управляемый (а не опрашивает ядро по расписанию как HAL);
- --удобные файлы конфигурации (а не xml как у HAL);
- --содержит в системе только файлы активных устройств (а не всех устройств как HAL);
- --содержит имена устройств неизменными (в HAL имя зависит от порядка подключения).
База данных подключенных устройств хранится в директории /** sys **, где они расположены по каталогам и именуются автоматически согласно идентификаторам, например:
/** sys / block** - перечень блочных устройств;
/** sys / bus **** ** - перечень шин;
Информация о состоянии ОС и всех запущенных процессах находится в директории /** proc**, например:
/** proc / cpuinfo** - информация о процессоре;
/** proc / mounts**- подключенные файловые системы;
В директории /** dev** находится информация об интерфейсах работы с драйверами ядра, например:
/** dev / sda **** ** - первый жесткий диск;
/** dev / sr0 ** - CD-ROM_;_
Примечание: в каталоге /dev, как правило, отсутствует информация о сетевых картах и видеокартах, так как работа с ними немного сложнее чем простые операции чтения-записи.
Для работы с модулями ядра (драйверами устройств) предназначены следующие команды:
- lsmod – информация о модулях ядра;
- lspci – информация об устройствах PCI;
- lspcmciа – информация об устройствах PCMCIA;
- lsusb – информация о шине USB;
- lshw – детальная информация о комплектующих;
- **rmmod ** –удалить модуль;
- **insmod ** –установить модуль;
- modprobe – установить модуль и все зависимости.
Примечание: в Centos для работы lsusb нужно установить пакет usbutils, а для работы lshw пакет lshw.
Процессор получает информацию от устройств при помощи прерываний (IRQ), номера которых можно увидеть в файле /** proc / interrupts**
При этом процессор считывает и записывает информацию через адреса устройств ввода-вывода (IO). Адресация IO бывает в оперативной памяти ( /** proc / io mem ) и по портам ( / proc / ioports**).