网站建网站建设企业电话,网站建设案例市场,台山市网站建设,淄博网站公司以下内容源于网络资源的学习与整理#xff0c;如有侵权请告知删除。
前言 Linux2.6版本的内核引入了sys文件系统。 在 proc文件系统介绍和使用 中#xff0c;介绍了sys文件系统与proc文件系统的差异。它们都是虚拟文件系统#xff0c;都是内核中的数据结构的可视化接口。它…以下内容源于网络资源的学习与整理如有侵权请告知删除。
前言 Linux2.6版本的内核引入了sys文件系统。 在 proc文件系统介绍和使用 中介绍了sys文件系统与proc文件系统的差异。它们都是虚拟文件系统都是内核中的数据结构的可视化接口。它们分别挂载在/sys目录、/proc目录下。 与proc文件系统类似通过sys文件系统可以查看系统相关的信息。 sys文件系统中与设备驱动相关的文件节点可视为 /dev 文件系统的替代者。 sys文件系统的主要作用是对系统上的设备与总线进行组织与管理以形成分级的文件。用户空间可以访问或配置这些文件进而得知系统状态或者控制系统。 目录含义 下面简述/sys目录中的目录所代表的含义。 rootubuntu:/sys# tree -L 1
.
├── block
├── bus
├── class
├── dev
├── devices
├── firmware
├── fs
├── hypervisor
├── kernel
├── module
└── power11 directories, 0 files
rootubuntu:/sys# ls1、class目录 将设备按照功能分类。 如/sys/class/net包括了所有网络接口。 其中 power_supply 可以查看充电相关的信息。 rootubuntu:/sys/class# ls
ata_device dma i2c-adapter powercap scsi_device tty
ata_link dmi input power_supply scsi_disk vc
ata_port drm leds ppdev scsi_generic virtio-ports
backlight extcon mdio_bus ppp scsi_host vtconsole
bdi firmware mem printer sound watchdog
block gpio misc pwm spi_host
bluetooth graphics mmc_host regulator spi_master
bsg hidraw net rfkill spi_transport
devfreq hwmon pci_bus rtc thermal
rootubuntu:/sys/class# cd net
rootubuntu:/sys/class/net# ls
eth0 lo
rootubuntu:/sys/class/net# ls -l
总用量 0
lrwxrwxrwx 1 root root 0 Jul 4 20:50 eth0 - ../../devices/pci0000:00/0000:00:11.0/0000:02:01.0/net/eth0
lrwxrwxrwx 1 root root 0 Aug 2 00:03 lo - ../../devices/virtual/net/lo
rootubuntu:/sys/class/net# cd eth0
rootubuntu:/sys/class/net/eth0# ls
addr_assign_type device ifalias netdev_group speed uevent
address dev_id ifindex operstate statistics
addr_len dormant iflink phys_port_id subsystem
broadcast duplex link_mode power tx_queue_len
carrier flags mtu queues type
rootubuntu:/sys/class/net/eth0# 2、block目录 每个块设备在该目录下对应一个子目录。 每个子目录中又包含一些属性文件它们描述了这个块设备的各方面的属性比如设备大小。另外loop块设备是使用文件来模拟的。 通过查看该目录下的详细信息得知它们都是链接文件指向/sys/devices/下的设备。 rootubuntu:/sys/block# ls
loop0 loop3 loop6 ram1 ram12 ram15 ram4 ram7 sda
loop1 loop4 loop7 ram10 ram13 ram2 ram5 ram8 sr0
loop2 loop5 ram0 ram11 ram14 ram3 ram6 ram9 sr1
rootubuntu:/sys/block# cd sr0
rootubuntu:/sys/block/sr0# ls
alignment_offset discard_alignment holders removable subsystem
bdi events inflight ro trace
capability events_async power size uevent
dev events_poll_msecs queue slaves
device ext_range range stat
rootubuntu:/sys/block/sr0# cat size
2097151
rootubuntu:/sys/block/sr0# cd ..
rootubuntu:/sys/block# ls -l sda
lrwxrwxrwx 1 root root 0 Jul 4 20:50 sda - ../devices/pci0000:00/0000:00:10.0/host32/target32:0:0/32:0:0:0/block/sda
rootubuntu:/sys/block# ls -l sr0
lrwxrwxrwx 1 root root 0 Aug 2 00:03 sr0 - ../devices/pci0000:00/0000:00:11.0/0000:02:05.0/ata3/host2/target2:0:0/2:0:0:0/block/sr0
rootubuntu:/sys/block# ls -l sr1
lrwxrwxrwx 1 root root 0 Aug 2 00:03 sr1 - ../devices/pci0000:00/0000:00:11.0/0000:02:05.0/ata4/host3/target3:0:0/3:0:0:0/block/sr1
rootubuntu:/sys/block# ls -l ram1
lrwxrwxrwx 1 root root 0 Aug 2 00:03 ram1 - ../devices/virtual/block/ram1
rootubuntu:/sys/block# ls -l loop1
lrwxrwxrwx 1 root root 0 Aug 2 00:03 loop1 - ../devices/virtual/block/loop1
rootubuntu:/sys/block# 3、bus目录 在内核注册的每条总线在该目录下对应一个子目录比如i2c、spi、pci、scsi、usb等等。 其中每个总线目录又包含两个子目录devices和drivers。devices目录包含了在整个系统中发现的、属于该总线类型的设备。drivers目录包含了注册到该总线的所有驱动。 rootubuntu:/sys/bus# ls
ac97 cpu hid mdio_bus platform sdio virtio
acpi eisa i2c mmc pnp serio workqueue
clockevents event_source isa pci rapidio spi xen
clocksource gameport machinecheck pci_express scsi usb xen-backend
rootubuntu:/sys/bus# cd cpu
rootubuntu:/sys/bus/cpu# ls
devices drivers drivers_autoprobe drivers_probe uevent
rootubuntu:/sys/bus/cpu# cd devices/
rootubuntu:/sys/bus/cpu/devices# ls
cpu0 cpu1
rootubuntu:/sys/bus/cpu/devices# cd cpu0
rootubuntu:/sys/bus/cpu/devices/cpu0# ls
cache crash_notes_size firmware_node power topology
crash_notes driver microcode subsystem uevent
rootubuntu:/sys/bus/cpu/devices/cpu0# cd ../../drivers
rootubuntu:/sys/bus/cpu/drivers# ls
processor
rootubuntu:/sys/bus/cpu/drivers# cd processor/
rootubuntu:/sys/bus/cpu/drivers/processor# ls
bind cpu0 cpu1 uevent unbind
rootubuntu:/sys/bus/cpu/drivers/processor# 4、devices目录 包含系统的所有设备。它和/sys/dev目录有啥区别呢 rootubuntu:/sys# ls
block bus class dev devices firmware fs hypervisor kernel module power
rootubuntu:/sys# cd dev
rootubuntu:/sys/dev# l
block/ char/
rootubuntu:/sys/dev# cd char/
rootubuntu:/sys/dev/char# ls //下面的都是一些链接指向/sys/devices相关设备
10:1 10:60 13:32 189:140 4:10 4:24 4:38 4:51 4:65 4:79 4:92
10:175 10:61 13:33 1:9 4:11 4:25 4:39 4:52 4:66 4:8 4:93
//省略部分
rootubuntu:/sys/dev/char# cd ../../devices/
rootubuntu:/sys/devices# ls
breakpoint isa pci0000:00 pnp0 rapidio system virtual
cpu LNXSYSTM:00 platform pnp1 software tracepoint
rootubuntu:/sys/devices# cd pci0000\:00/
rootubuntu:/sys/devices/pci0000:00# ls
0000:00:00.0 0000:00:15.0 0000:00:16.1 0000:00:17.2 0000:00:18.3
0000:00:01.0 0000:00:15.1 0000:00:16.2 0000:00:17.3 0000:00:18.4
0000:00:07.0 0000:00:15.2 0000:00:16.3 0000:00:17.4 0000:00:18.5
0000:00:07.1 0000:00:15.3 0000:00:16.4 0000:00:17.5 0000:00:18.6
0000:00:07.3 0000:00:15.4 0000:00:16.5 0000:00:17.6 0000:00:18.7
0000:00:07.7 0000:00:15.5 0000:00:16.6 0000:00:17.7 firmware_node
0000:00:0f.0 0000:00:15.6 0000:00:16.7 0000:00:18.0 pci_bus
0000:00:10.0 0000:00:15.7 0000:00:17.0 0000:00:18.1 power
0000:00:11.0 0000:00:16.0 0000:00:17.1 0000:00:18.2 uevent
rootubuntu:/sys/devices/pci0000:00# cd ../cpu
rootubuntu:/sys/devices/cpu# ls
events format perf_event_mux_interval_ms power rdpmc subsystem type uevent
rootubuntu:/sys/devices/cpu# 5、fs目录 描述系统中的文件系统。 6、filewire目录 描述系统中的固件。 7、power目录 描述系统中的电源选项。 8、module目录 描述系统中的模块信息。 9、kernel目录 内核中的配置参数。