【无标题】

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/lemontree1945/article/details/124688251

目录

1. 什么是proc

2.proc目录介绍

2.1 /proc/cpuinifo CPU的信息(型号、家族、缓存大小等)

2.2 /proc/meminfo物理内存、交换空间

2.3 /proc/mounts      已加载的文件系统的列表

2.4 /proc/devices 可用设备的列表

2.5 /proc/filesystems 被支持的文件系统

2.6 /proc/modules 已加载的模块

2.7 /proc/virsion 内核版本

2.8 /proc/cmdline 系统启动时输入的内核命令行参数

2.9 /proc/uptime 获取系统的正常运行时间

2.10 /proc/sys/kernel/ostype 操作系统类型

2.11 /proc/sys/kernel/osrelease 内核版本

2.12 /proc/sys/kernel/hostname  主机名

2.13 /proc/partitions   硬盘设备分区信息

3. 进程信息查看

3.1 /proc/N pid为N的进程信息

3.2 /proc/N/cmdline 进程启动命令

3.3  /proc/N/exe 链接到进程的执行命令文件

3.4 /proc/N/cwd 链接到进程当前工作目录

3.5 /proc/N/environ 进程环境变量列表

3.6 /proc/N/fd 包含进程相关的所有的文件描述符

3.7 /proc/N/stat 进程的状态

3.8 /proc/N/status 进程状态信息,比stat/statm更具可读性

1. 什么是proc

proc是Linux系统下一个很重要的目录。 它跟/etc, /home等这些系统目录不同, 它不是一个真正的文件系统, 而是一个虚拟的文件系统。 它不存在于磁盘, 而是存在于系统内存中。 所以当你使用 ls -al /proc这条命令来查看proc目录时, 会看到其下面的所有文件的大小都为0字节。 proc以文件系统的方式为访问系统内核的操作提供接口。 很多系统的信息, 如内存使用情况, cpu使用情况, 进程信息等等这些信息,都可以通过查看/proc下的对应文件来获得。 proc文件系统是动态从系统内核读出所需信息的。

2.proc目录介绍

2.1 /proc/cpuinifo CPU的信息(型号、家族、缓存大小等)


   
   
  1. # cat /proc/cpuinfo
  2. system type : sepal_v10
  3. machine : Unknown
  4. processor : 0
  5. cpu model : Ingenic Xburst V0.0 FPU V0.0
  6. BogoMIPS : 858.52
  7. wait instruction : yes
  8. microsecond timers : no
  9. tlb_entries : 32
  10. extra interrupt vector : yes
  11. hardware watchpoint : yes, count: 1, address/irw mask: [0x0fff]
  12. isa : mips32r1
  13. ASEs implemented :
  14. shadow register sets : 1
  15. kscratch registers : 7
  16. core : 0
  17. VCED exceptions : not available
  18. VCEI exceptions : not available
  19. Hardware : sepal
  20. Serial : 00000000 00000000 00000000 00000000

2.2 /proc/meminfo物理内存、交换空间


   
   
  1. # cat /proc/meminfo
  2. MemTotal: 58720 kB
  3. MemFree: 2628 kB
  4. Buffers: 1624 kB
  5. Cached: 17120 kB
  6. SwapCached: 0 kB
  7. Active: 26260 kB
  8. Inactive: 9276 kB
  9. Active(anon): 17188 kB
  10. Inactive(anon): 2832 kB
  11. Active(file): 9072 kB
  12. Inactive(file): 6444 kB
  13. Unevictable: 0 kB
  14. Mlocked: 0 kB
  15. SwapTotal: 0 kB
  16. SwapFree: 0 kB
  17. Dirty: 0 kB
  18. Writeback: 0 kB
  19. AnonPages: 16816 kB
  20. Mapped: 10392 kB
  21. Shmem: 3228 kB
  22. Slab: 6756 kB
  23. SReclaimable: 1960 kB
  24. SUnreclaim: 4796 kB
  25. KernelStack: 816 kB
  26. PageTables: 540 kB
  27. NFS_Unstable: 0 kB
  28. Bounce: 0 kB
  29. WritebackTmp: 0 kB
  30. CommitLimit: 29360 kB
  31. Committed_AS: 471412 kB
  32. VmallocTotal: 1048372 kB
  33. VmallocUsed: 3116 kB
  34. VmallocChunk: 1044980 kB

2.3 /proc/mounts      已加载的文件系统的列表


   
   
  1. # cat /proc/mounts
  2. rootfs / rootfs rw 0 0
  3. /dev/root / squashfs ro,relatime 0 0
  4. devtmpfs /dev devtmpfs rw,relatime,size=29224k,nr_inodes=7306,mode=755 0 0
  5. proc /proc proc rw,relatime 0 0
  6. sysfs /sys sysfs rw,relatime 0 0
  7. tmpfs /tmp tmpfs rw,relatime 0 0
  8. /dev/ubi0_0 /data ubifs rw,relatime 0 0
  9. devpts /dev/pts devpts rw,relatime,mode=600,ptmxmode=000 0 0
  10. tmpfs /dev/shm tmpfs rw,relatime 0 0
  11. /dev/mtdblock6 /home squashfs ro,relatime 0 0

2.4 /proc/devices 可用设备的列表


   
   
  1. # cat /proc/devices
  2. Character devices:
  3. 1 mem
  4. 2 pty
  5. 3 ttyp
  6. 4 /dev/vc/0
  7. 4 tty
  8. 4 ttyS
  9. 5 /dev/tty
  10. 5 /dev/console
  11. 5 /dev/ptmx
  12. 7 vcs
  13. 10 misc
  14. 13 input
  15. 89 i2c
  16. 90 mtd
  17. 108 ppp
  18. 116 alsa
  19. 128 ptm
  20. 136 pts
  21. 153 spi
  22. 180 usb
  23. 188 ttyUSB
  24. 189 usb_device
  25. 246 USB printer gadget
  26. 247 tph
  27. 248 ubi0
  28. 249 bsg
  29. 250 watchdog
  30. 251 ptp
  31. 252 pps
  32. 253 rtc
  33. 254 hwinfo
  34. Block devices:
  35. 259 blkext
  36. 8 sd
  37. 50 mtdblock
  38. 65 sd
  39. 66 sd
  40. 67 sd
  41. 68 sd
  42. 69 sd
  43. 70 sd
  44. 71 sd
  45. 128 sd
  46. 129 sd
  47. 130 sd
  48. 131 sd
  49. 132 sd
  50. 133 sd
  51. 134 sd
  52. 135 sd
  53. 179 mmc

2.5 /proc/filesystems 被支持的文件系统


   
   
  1. # cat /proc/filesystems
  2. nodev sysfs
  3. nodev rootfs
  4. nodev bdev
  5. nodev proc
  6. nodev cgroup
  7. nodev cpuset
  8. nodev tmpfs
  9. nodev devtmpfs
  10. nodev debugfs
  11. nodev sockfs
  12. nodev pipefs
  13. nodev anon_inodefs
  14. nodev configfs
  15. nodev devpts
  16. squashfs
  17. nodev ramfs
  18. vfat
  19. fuseblk
  20. nodev fuse
  21. nodev fusectl
  22. nodev mqueue
  23. nodev mtd_inodefs
  24. nodev ubifs

2.6 /proc/modules 已加载的模块


   
   
  1. # cat /proc/modules
  2. usb_f_printer 10416 3 - Live 0xc034c000
  3. g_printer 1872 0 - Live 0xc0342000
  4. libcomposite 27010 2 usb_f_printer,g_printer, Live 0xc0334000
  5. thermal_printer_nt310 1932531 1 - Live 0xc014b000

2.7 /proc/virsion 内核版本


   
   
  1. # cat /proc/version
  2. Linux version 3.10.14 (lizj@SM2534) (gcc version 4.7.2 (Ingenic r2.3.3 2016.12) ) #1 PREEMPT Wed Mar 23 16:52:34 CST 2022

2.8 /proc/cmdline 系统启动时输入的内核命令行参数


   
   
  1. # cat /proc/cmdline
  2. console=ttyS1,115200n8 mem=65504K@0x0 rmem=32K@0x3FF8000 ip=off init=/linuxrc ubi.mtd=8 root=/dev/mtdblock5 rootfstype=squashfs ro

2.9 /proc/uptime 获取系统的正常运行时间


   
   
  1. # cat /proc/uptime
  2. 14985.88 11766.31

2.10 /proc/sys/kernel/ostype 操作系统类型


   
   
  1. # cat /proc/sys/kernel/ostype
  2. Linux

2.11 /proc/sys/kernel/osrelease 内核版本


   
   
  1. # cat /proc/sys/kernel/osrelease
  2. 3.10.14

2.12 /proc/sys/kernel/hostname  主机名


   
   
  1. # cat /proc/sys/kernel/hostname
  2. alex

2.13 /proc/partitions   硬盘设备分区信息


   
   
  1. # cat /proc/partitions
  2. major minor #blocks name
  3. 50 0 1024 mtdblock0
  4. 50 1 1024 mtdblock1
  5. 50 2 4096 mtdblock2
  6. 50 3 4096 mtdblock3
  7. 50 4 8192 mtdblock4
  8. 50 5 8192 mtdblock5
  9. 50 6 4096 mtdblock6
  10. 50 7 4096 mtdblock7
  11. 50 8 227328 mtdblock8

3. 进程信息查看

3.1 /proc/N pid为N的进程信息


   
   
  1. # ls /proc/
  2. 1 46 。。。。。。

3.2 /proc/N/cmdline 进程启动命令


   
   
  1. # cat /proc/153/cmdline
  2. APP1

3.3  /proc/N/exe 链接到进程的执行命令文件


   
   
  1. # ls -al /proc/153/exe
  2. lrwxrwxrwx 1 root root 0 Aug 21 2014 /proc/153/exe -> /home/bin/APP1

3.4 /proc/N/cwd 链接到进程当前工作目录


   
   
  1. # ls /proc/153/cwd/
  2. bin etc lib32 mnt root sys var
  3. data home linuxrc opt run tmp
  4. dev lib media proc sbin usr

3.5 /proc/N/environ 进程环境变量列表


   
   
  1. # cat /proc/153/environ
  2. USER=rootSHLVL=2LD_LIBRARY_PATH=.:/home/libHOME=/TERM=vt102PATH=/sbin:/usr/sbin:/bin:/usr/bin:/home/bin:/data/binSHELL=/bin/shPWD=/

3.6 /proc/N/fd 包含进程相关的所有的文件描述符


   
   
  1. # ls /proc/153/fd
  2. 0 1 2 3 4 5 6

3.7 /proc/N/stat 进程的状态


   
   
  1. # cat /proc/153/stat
  2. 153 (APP1) S 1 152 152 0 -1 1077960960 448 0 4 0 84 182 0 0 20 0 2 0 454 14049280 394 2147483647 4194304 4228320 2147352704 2147352312 2002778740 0 0 4102 0 4294967295 0 0 18 0 0 0 0 0 0 4296704 4297032 4300800 2147356509 2147356514 2147356514 2147356653 0

3.8 /proc/N/status 进程状态信息,比stat/statm更具可读性


   
   
  1. # cat /proc/153/status
  2. Name: APP1
  3. State: S (sleeping)
  4. Tgid: 153
  5. Pid: 153
  6. PPid: 1
  7. TracerPid: 0
  8. Uid: 0 0 0 0
  9. Gid: 0 0 0 0
  10. FDSize: 32
  11. Groups:
  12. VmPeak: 13720 kB
  13. VmSize: 13720 kB
  14. VmLck: 0 kB
  15. VmPin: 0 kB
  16. VmHWM: 1584 kB
  17. VmRSS: 1576 kB
  18. VmData: 8376 kB
  19. VmStk: 136 kB
  20. VmExe: 36 kB
  21. VmLib: 4300 kB
  22. VmPTE: 16 kB
  23. VmSwap: 0 kB
  24. Threads: 2
  25. SigQ: 1/456
  26. SigPnd: 00000000000000000000000000000000
  27. ShdPnd: 00000000000000000000000000000000
  28. SigBlk: 00000000000000000000000000000000
  29. SigIgn: 00000000000000000000000000001006
  30. SigCgt: 00000000000000000000000180000000
  31. CapInh: 0000000000000000
  32. CapPrm: 0000001fffffffff
  33. CapEff: 0000001fffffffff
  34. CapBnd: 0000001fffffffff
  35. Seccomp: 0
  36. Cpus_allowed: 1
  37. Cpus_allowed_list: 0
  38. Mems_allowed: 1
  39. Mems_allowed_list: 0
  40. voluntary_ctxt_switches: 16359
  41. nonvoluntary_ctxt_switches: 284

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值