Назад | Перейти на главную страницу

Linux: proc / sys / kernel vs / sys / kernel

Я знаю, что в типичной системе Linux оба /proc, и /sys - это виртуальные файловые структуры с псевдофайлами, используемые для связи с ядром, но в чем разница между /proc/sys/kernel, и /sys/kernel?

Например, возьмите /sys/kernel/uevent_seqnum. Я уверен, что это очень эзотерический вариант, который никто не должен менять, но даже в этом случае, что это такое и для чего он нужен?

Если есть официальная или централизованная man страница для материала в /sys/kernel, (лайк man 5 proc для proc, например), то цитаты из этих источников будут приветствоваться и предпочтительнее.

По сути, / proc и / sys одинаковы.

sysfs был добавлен в ядро ​​2.5 или 2.6 из-за беспорядка в procfs

Файл procfs предназначен только для хранения информации о процессе. в конечном итоге все начало смешиваться в процессе, и это создало извилистый лабиринт с данными устройств, застрявшими в разных местах повсюду. Тем временем была реализована sysfs с целью сегментирования данных устройства из procfs.

В частности, / sys поддерживает более подробную (положение узлов фактически представляет иерархию устройства по подсистеме) информацию о процессе устройства. Для каждого объекта в модели драйвера создается каталог. Файловая структура устройства:

/sys/devices  - devices by physical layout
/sys/bus      - symbolic links to devices
/sys/block    - devices by block
/sys/class    - devices by class

В вашей локальной системе вы можете найти справочную страницу по адресу man sysfs и информацию об изменении параметров ядра в / proc / sys с помощью man sysctl

Если вам нужна дополнительная информация о / sys, вы можете просмотреть Техническая документация по файловой системе sysfs в Linux на kernel.org [pdf] и Документация / sysfs.txt в исходном коде ядра.