diff --git a/101_1.md b/101_1.md new file mode 100644 index 0000000..9979af8 --- /dev/null +++ b/101_1.md @@ -0,0 +1,77 @@ +**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**). \ No newline at end of file diff --git a/docx/101_1.docx b/docx/101_1.docx index d2627f3..d1069e9 100644 Binary files a/docx/101_1.docx and b/docx/101_1.docx differ