Intereting Posts
Могу ли я получить wget -x для загрузки структуры папок, но не создать каталог домена? «Виртуальная» оболочка, т.е. лишение пользователя внутри процесса после входа в систему (SSH) Как я могу дистанционно разблокировать рабочую станцию ​​RHEL7? Как использовать wget или другой инструмент для загрузки файла, для которого ссылка скрыта (активируется только при щелчке) Добавление XFCE в Linux Mint 15 Cinnamon? разность между двумя строками csum-ошибки на btrfs, содержащие виртуальный диск Сделать sudo запрос пароля bash error find: -printf: неизвестный первичный или оператор Единая установка CD для RHEL-подобного дистрибутива? разрешить зарегистрированному пользователю включить чашечный принтер с помощью cupsenabler Вставить строку или строку после последнего экземпляра определенной переменной поиска в цикле несколько виртуальных профилей для одного и того же пользователя Нет устройства вывода по умолчанию -9996: воспроизведение звука через Django Как исправить загрузчик GRUB (Windows 10 не работает)

где lspci собирает свою информацию?

В документации kernel.org по proc я обнаружил: «[ Последняя версия этого документа доступна в Интернете ». Там я говорю: «… lspci – синоним для cat /proc/pci ».

Что здесь не так, в системе Crunchbang 10 (на основе Debian). Нет такой директории. Я получаю основную идею и, насколько мне известно, содержание proc (главным образом) создается во время выполнения. (Неправильно?). Мне было любопытно:

Вопрос : Откуда lspci собирает информацию? И где это документировано? (Где я что-то пропустил?)

Еще одно отличие, которое я нашел: в документации kernel.org, в разделе « Таблица 1-5: Информация о ядре в /proc »,

pci Устаревшая информация о шине PCI (новый способ -> /proc/bus/pci/ , разделенный на `lspci)

lspci является частью pciutils, который переносится на множество Unix-подобных ОС и окон, поэтому он, по-видимому, использует разные методы в зависимости от платформы.

Вы должны быть в состоянии сказать, где он получает информацию от вашего дела через strace lspci . После того, как преамбула доступа к библиотекам и т. Д., Я (используя fedora linux) получаю много вызовов open() + pread() в /sys/bus/pci/ , например:

 open("/sys/bus/pci/devices/0000:00:1c.7/config", O_RDONLY) = 3 pread(3, "\206\200\36\36\7\0\20\0\304\0\4\6\20\0\201\0\0\0\0\0\0\0\0\0\0\7\7\0\360\0\0 \0"..., 64, 0) = 64 close(3) 

Это двоичные данные. После этого он читает в /usr/share/hwdata/pci.ids , который является статическим универсальным списком, распространяемым вместе с пакетом pciutils. Это четырехзначные коды, которые, по-видимому, соответствуют информации из /sys .

/ Proc

Я считаю, что он был перемещен в /proc/bus/pci , так что все автобусы можно было сохранить в одном месте.

 $ pwd /proc/bus/pci 

пример

Выход lspci :

 $ lspci | tail -10 03:00.0 Network controller: Intel Corporation Centrino Wireless-N 1000 0d:00.0 SD Host controller: Ricoh Co Ltd Device e822 (rev 01) 0d:00.1 System peripheral: Ricoh Co Ltd Device e230 (rev 01) 0d:00.3 FireWire (IEEE 1394): Ricoh Co Ltd Device e832 (rev 01) ff:00.0 Host bridge: Intel Corporation Core Processor QuickPath Architecture Generic Non-core Registers (rev 02) ff:00.1 Host bridge: Intel Corporation Core Processor QuickPath Architecture System Address Decoder (rev 02) ff:02.0 Host bridge: Intel Corporation Core Processor QPI Link 0 (rev 02) ff:02.1 Host bridge: Intel Corporation Core Processor QPI Physical 0 (rev 02) ff:02.2 Host bridge: Intel Corporation Core Processor Reserved (rev 02) ff:02.3 Host bridge: Intel Corporation Core Processor Reserved (rev 02) 

Соответствующее дерево под /proc/bus/pci :

 $ tree . | tail -10 |-- devices `-- ff |-- 00.0 |-- 00.1 |-- 02.0 |-- 02.1 |-- 02.2 `-- 02.3 

/ SYS

Другое место, где хранятся данные устройства, находится под /sys . Если вы соритесь там, вы увидите этот каталог:

 $ ls -l /sys/bus/pci total 0 drwxr-xr-x 2 root root 0 Dec 1 09:43 devices drwxr-xr-x 23 root root 0 Nov 30 16:27 drivers -rw-r--r-- 1 root root 4096 Dec 1 10:59 drivers_autoprobe --w------- 1 root root 4096 Dec 1 10:59 drivers_probe --w--w---- 1 root root 4096 Dec 1 10:59 rescan -rw-r--r-- 1 root root 4096 Dec 1 10:59 resource_alignment drwxr-xr-x 3 root root 0 Dec 1 10:36 slots --w------- 1 root root 4096 Nov 30 16:27 uevent