网页设计项目报告总结,整站优化全网营销,服务关系型网站怎么做,让医院做网站的策划书目录
前言
10.1 proc文件系统
10.1.1 /proc 内容 本专栏文章将有70篇左右#xff0c;欢迎关注#xff0c;查看后续文章。 前言
即存在于内存中的文件系统。如#xff1a; proc#xff1a; sysfs#xff1a; 即/sys目录。 内容不一定是ASCII文本#xff0c;可能是二进…目录
前言
10.1 proc文件系统
10.1.1 /proc 内容 本专栏文章将有70篇左右欢迎关注查看后续文章。 前言
即存在于内存中的文件系统。如 proc sysfs 即/sys目录。 内容不一定是ASCII文本可能是二进制。 收集内核对象kobject的拓扑信息。 debugfs 作用快速向应用层导出或从应用层导入值 原理使用了 libfs顺序文件。
10.1 proc文件系统
procfs即 process data filesystem。 proc 文件系统作用 1. cat 文件时动态生成相关信息。 2. echo 文件修改系统配置。
10.1.1 /proc 内容
proc 信息分为几类 1. 内存管理 2. 进程信息 3. 文件系统 4. 设备驱动 5. 系统总线 6. 电源管理 7. 系统控制参数 1. 特定于进程的数据
cat /proc/3883/ 数字为进程 PID cmdline开启该进程的命令如 ./a.out 1 2 environ该进程设置的环境变量。 maps进程本身及其使用的库的内存映射可用于定位进程crash status fd 进程打开的文件描述符都是链接文件。 如 /proc/2820/fd/1 - /dev/null /proc/2820/fd/4 - socket:[10030] cwd进程当前的工作目录。 exe链接指向进程的二进制程序。 如 /proc/2820/exe - /bin/cbsd
举例
cat /proc/906/status Name: systemd 对应可执行文件名字。 Umask: 0022 该进程创建文件的默认权限掩码。 State: S (sleeping) Tgid: 906 线程组ID。 Ngid: 0 下一个可用的线程组ID。 Pid: 906 进程ID。 PPid: 1 父进程ID。 TracerPid: 0 跟踪该进程的调试器进程ID。 Uid: 0 0 0 0 实际用户ID、有效用户ID、保存的设置用户ID、文件系统用户ID。 Gid: 0 0 0 0 进程的实际组ID、有效组ID、保存的设置组ID、文件系统组ID。 FDSize: 1024 进程的文件描述符限制大小。 Groups: NStgid: 906 NSnamespace NSpid: 906 NSpgid: 906 NSsid: 906 VmPeak: 1311540 kB 进程使用的虚拟内存峰值。 VmSize: 1071592 kB 进程使用的虚拟内存当前值。 不等于实际使用物理内存如部分数据可存储在交换区。 VmLck: 0 kB 锁定的内存区域大小。 即不被swap到磁盘也无法回收。 VmHWM: 244276 kB 进程使用的物理内存峰值。 VmRSS: 239916 kB 进程当前使用物理内存值。 RssAnon: 36428 kB 进程的匿名内存的大小如堆、栈、共享内存 RssFile: 10140 kB 进程文件缓存页大小。 RssShmem: 0 kB 进程使用的共享内存的总大小。 VmData: 628048 kB 数据段大小。 VmStk: 136 kB 栈大小。 VmExe: 32 kB 代码段大小。 VmLib: 57908 kB 库大小。 VmPTE: 2388 kB 页表的大小。 VmSwap: 0 kB 使用swap的大小。 Threads: 1 SigQ: 0/13035 当前未处理信号数量 / 进程可接收信号最大数量。 SigPnd: 0000000000000000 等待处理的信号位掩码。 ShdPnd: 0000000000000000 共享的挂起信号掩码。 SigBlk: 0000000000000000 进程阻塞信号掩码。 SigIgn: 0000000000001000 进程忽略的信号掩码。 SigCgt: 0000000000002000 进程可接收并可处理的信号。 CapInh: 00000000a80425fb 从父进程继承的能力。 CapPrm: 00000000a80425fb 进程当前的能力集合。 CapEff: 00000000a80425fb 当前实际拥有的能力集合 CapBnd: 00000000a80425fb 进程不能超出的能力集合。 CapAmb: 0000000000000000 可接受的能力集合。 NoNewPrivs: 0 是否设置Privileges位即不可增加特权。若设置execve程序不能有更高权限。 Seccomp: 0 安全计算模式限定进程可使用的系统调用 Cpus_allowed: f 允许允许的CPU掩码。 Cpus_allowed_list: 0-3 Mems_allowed: 00000000,00000001 允许使用的内存节点的掩码。 Mems_allowed_list: 0 voluntary_ctxt_switches: 397 主动放弃CPU的次数如进程阻塞I/O。 nonvoluntary_ctxt_switches: 253 被迫放弃CPU的次数如时间片用完。 mlock系统调用 作用将进程指定的虚拟内存区域锁定在物理内存中防止被交换出去。 RSS常驻集大小(Resident Set Size) 当前驻留在物理内存中的大小。不包括被换出到交换空间Swap的部分。 当一个信号被设置为阻塞后当进程收到该信号时不会立即处理而是挂起信号直到解除信号阻塞状态后才能处理。 如何阻塞SIGINT信号 sigaddset(block_set, SIGINT); sigprocmask(SIG_BLOCK, block_set, NULL); 信号在内核中状态 1. 递达Delivery。收到信号并执行信号处理函数。 2. 未决 / 挂起Pending。进程正处理一个信号时收到的其余信号被挂起。 3. 阻塞Block。进程解除信号阻塞立即执行信号处理函数。即延时接收。 运用场景 挂起信号优先处理某些紧急信号推迟处理其他信号。 阻塞信号临时忽略某信号。例如在某些关键性操作期间可防止信号干扰进程。 进程常见能力包括 CAP_CHOWN 更改文件的所有者的的能力。 即可执行chown CAP_DAC_READ_SEARCH 读取任意文件和目录的能力。 CAP_NET_RAW 使用原始网络套接字的能力。 !ns_capable(net-user_ns, CAP_NET_RAW) CAP_SYS_ADMIN 管理系统的能力 CAP_SYS_RESOURCE 允许进程配置系统资源。如nice setrlimit mlock CAP_SYS_PTRACE 跟踪其他进程的能力。 CAP_IPC_LOCK 锁定内存的能力。 内核如何判断进程的能力 与current-cred-cap_effective掩码计算。 相关命令 sudo setcap cap_net_raw ep /usr/bin/ping sudo getcap
2. 系统信息
iomem即IO内存。 IO内存的使用方法 1. request_mem_region(start, size, name); 请求一块物理地址内存区域。 2. ioremap; 将物理地址映射到虚拟地址空间。 /proc/iomem IO内存信息包括系统物理地址布局。 /proc/ioports IO端口信息。 /proc/buddyinfo 不同大小阶的页大小都有多少可用。 /proc/slabinfo slab分配器信息。 内容举例 # name : tunables : slabdata kmalloc-16 0 0 16 256 1 : tunables 0 0 0 : slabdata 0 0 0 kmalloc-192 29 30 192 30 1 : tunables 0 0 0 : slabdata 1 1 0 ext4_inode_cache 35 35 1000 7 2 : tunables 0 0 0 : slabdata 5 5 0 active_objs 该slab缓存当前活动对象数量。 num_objs 可用总对象数。 objsize 单个对象大小。 objperslab 每个slab缓存中包含对象数。 pagesperslab每个slab缓存中占用的页数。 /proc/meminfo MemTotal: 16218688 kB 实际管理的内存 物理内存 - 预留内存。 MemFree: 2576640 kB 空闲内存。 MemAvailable: 8374184 kB 可用内存。已使用但回收后仍可用所以大于MemFree。 Buffers: 50828 kB 块设备占用页缓存大小如超级块所用的缓存页。 Cached: 8665304 kB 普通文件页缓存大小。 SwapCached: 2096 kB 交换分区缓存的大小即用于匿名页换入换出的缓存。 Active: 7965496 kB active(file) active(anon) 内存页总和最近使用的内存页。 Inactive: 4651356 kB Inactive(file)和Inactive(anon)内存页总和最近未使用的页。 Active(anon): 3603464 kB 最近使用的匿名页。 Inactive(anon): 1225800 kB 最近未使用的匿名页。 Active(file): 4362032 kB 最近使用的文件页。 Inactive(file): 3425556 kB 最近未使用的文件页。 Unevictable: 25840 kB 不可回收页如内核进程或驱动使用。 Mlocked: 25840 kB 页被进程锁定不能被移动交换回收。 SwapTotal: 8388604 kB 交换分区总大小。 SwapFree: 8384060 kB 未使用的交换分区大小。 Dirty: 8 kB Writeback: 0 kB 正回写页。 AnonPages: 4198028 kB 匿名页的大小。 Mapped: 1579700 kB 驱动映射和共享内存。 Shmem: 130352 kB 共享内存。 Slab: 360424 kB slab缓存大小。 SReclaimable: 312900 kB slab中可回收内存大小。 SUnreclaim: 47524 kB slab中不可回收内存。 KernelStack: 4136 kB 当前内核线程的栈大小。 PageTables: 6812 kB 页表占用内存大小。 NFS_Unstable: 0 kB NFS客户端使用。 VmallocTotal: 34359738367 kB vmalloc虚拟地址空间大小。 VmallocUsed: 329676 kB VmallocChunk: 34359396996 kB vmalloc区域最大连续空闲块的大小。 HardwareCorrupted: 0 kB ShmemPmdMapped: 0 kB CmaTotal: 524288 kB 连续内存区域的总大小。 CmaFree: 357464 kB 连续内存区域中可用大小。 HugePages_Total: 0 大页。 Hugepagesize: 2048 kB DirectMap4k: 144344 kB DirectMap2M: 8146944 kB DirectMap1G: 8388608 kB 管理的大内存1G页对应一个页表可减少页表。 kswapd线程周期性把Active list中符合条件页移到Inactive list中。 /proc/vmstat 内存页使用统计 nr_free_pages 30248 nr_inactive_anon 0 nr_active_anon 2684 nr_inactive_file 2534 nr_active_file 1462 nr_unevictable 0 nr_mlock 0 nr_anon_pages 2689 CMAContiguous Memory Allocator 内核启动时预留CMA的内存大小和位置由内核启动参数或设备树配置。 使用方法 驱动申请使用CMA内存时内核从预留的CMA内存池中分配一块连续物理内存并返回虚拟地址供驱动设备DMA操作。 使用场景 USB网络包处理图形子系统等。 内核参数cma 256M /proc/kallsyms 内核符号表及其虚拟地址内核虚拟地址空间。 原理 编译时将所有函数和全局变量的地址组成一个数据块并链接到vmlinux。 cat /proc/kallsyms 时读取该数据块。 编译选项 CONFIG_KALLSYMS System.map文件 80004000 A swapper_pg_dir 内核虚拟地址空间中的地址。 System.map如何生成 linux-3.x/ scripts/ mksysmap该脚本中执行 nm vmlinux System.map 生成。 System.map不包含驱动模块中符号。
/proc/kallsyms包含模块等所有符号(即使没有EXPORT_SYMBOL)。 /proc/interrupts 中断统计信息包括中断号中断次数所属中断控制器。
3. 网络信息
/proc/net/udp
/proc/net/tcp 包含socket fd、本地地址和端口号、远程地址和端口号、状态发送队列等信息。 /proc/net/arp ARP表信息。 IP address HW type Flags HW address Mask Device 192.168.150.123 0x1 0x2 6c:b3:11:3f:47:fb * br0 Flags 0x2表示该ARP已验证可使用。 /proc/net/dev 所有网卡统计信息。 fifo因队列满的丢包数。 frame因帧错误的丢包数。 carrier因载波问题的丢包数。
4. 系统控制参数
/proc/sys/ 可写从而控制系统。 debug/ dev/ fs/ /kernel/ net/ vm/ cat /proc/sys/vm/swappiness 查看页交换积极程度。 文章转载自: http://www.morning.lbjdx.cn.gov.cn.lbjdx.cn http://www.morning.srgwr.cn.gov.cn.srgwr.cn http://www.morning.pzbjy.cn.gov.cn.pzbjy.cn http://www.morning.kjyfq.cn.gov.cn.kjyfq.cn http://www.morning.gjlml.cn.gov.cn.gjlml.cn http://www.morning.lmqw.cn.gov.cn.lmqw.cn http://www.morning.gfmpk.cn.gov.cn.gfmpk.cn http://www.morning.nbgfz.cn.gov.cn.nbgfz.cn http://www.morning.tzlfc.cn.gov.cn.tzlfc.cn http://www.morning.pyswr.cn.gov.cn.pyswr.cn http://www.morning.qfmns.cn.gov.cn.qfmns.cn http://www.morning.rhmpk.cn.gov.cn.rhmpk.cn http://www.morning.fylqz.cn.gov.cn.fylqz.cn http://www.morning.cjxqx.cn.gov.cn.cjxqx.cn http://www.morning.nmwgd.cn.gov.cn.nmwgd.cn http://www.morning.xzlp.cn.gov.cn.xzlp.cn http://www.morning.bmmhs.cn.gov.cn.bmmhs.cn http://www.morning.zsleyuan.cn.gov.cn.zsleyuan.cn http://www.morning.kyjpg.cn.gov.cn.kyjpg.cn http://www.morning.mcwgn.cn.gov.cn.mcwgn.cn http://www.morning.yhljc.cn.gov.cn.yhljc.cn http://www.morning.zdnrb.cn.gov.cn.zdnrb.cn http://www.morning.mqghs.cn.gov.cn.mqghs.cn http://www.morning.wbyqy.cn.gov.cn.wbyqy.cn http://www.morning.dkzrs.cn.gov.cn.dkzrs.cn http://www.morning.sfswj.cn.gov.cn.sfswj.cn http://www.morning.nthyjf.com.gov.cn.nthyjf.com http://www.morning.bbjw.cn.gov.cn.bbjw.cn http://www.morning.psxfg.cn.gov.cn.psxfg.cn http://www.morning.lfsmf.cn.gov.cn.lfsmf.cn http://www.morning.kycxb.cn.gov.cn.kycxb.cn http://www.morning.pwhjr.cn.gov.cn.pwhjr.cn http://www.morning.bkfdf.cn.gov.cn.bkfdf.cn http://www.morning.rfgkf.cn.gov.cn.rfgkf.cn http://www.morning.yxgqr.cn.gov.cn.yxgqr.cn http://www.morning.plqqp.cn.gov.cn.plqqp.cn http://www.morning.tfrlj.cn.gov.cn.tfrlj.cn http://www.morning.sftrt.cn.gov.cn.sftrt.cn http://www.morning.xmrmk.cn.gov.cn.xmrmk.cn http://www.morning.hhxpl.cn.gov.cn.hhxpl.cn http://www.morning.rxdsq.cn.gov.cn.rxdsq.cn http://www.morning.rszbj.cn.gov.cn.rszbj.cn http://www.morning.bnmfq.cn.gov.cn.bnmfq.cn http://www.morning.djlxz.cn.gov.cn.djlxz.cn http://www.morning.ztjhz.cn.gov.cn.ztjhz.cn http://www.morning.mgwdp.cn.gov.cn.mgwdp.cn http://www.morning.kgphc.cn.gov.cn.kgphc.cn http://www.morning.glwyn.cn.gov.cn.glwyn.cn http://www.morning.rnygs.cn.gov.cn.rnygs.cn http://www.morning.grlth.cn.gov.cn.grlth.cn http://www.morning.zrmxp.cn.gov.cn.zrmxp.cn http://www.morning.dlgjdg.cn.gov.cn.dlgjdg.cn http://www.morning.bqwsz.cn.gov.cn.bqwsz.cn http://www.morning.ndtmz.cn.gov.cn.ndtmz.cn http://www.morning.rcyrm.cn.gov.cn.rcyrm.cn http://www.morning.kwqt.cn.gov.cn.kwqt.cn http://www.morning.dpflt.cn.gov.cn.dpflt.cn http://www.morning.bfwk.cn.gov.cn.bfwk.cn http://www.morning.skwwj.cn.gov.cn.skwwj.cn http://www.morning.tpxgm.cn.gov.cn.tpxgm.cn http://www.morning.znlhc.cn.gov.cn.znlhc.cn http://www.morning.w58hje.cn.gov.cn.w58hje.cn http://www.morning.lnsnyc.com.gov.cn.lnsnyc.com http://www.morning.qlck.cn.gov.cn.qlck.cn http://www.morning.bnrff.cn.gov.cn.bnrff.cn http://www.morning.wlggr.cn.gov.cn.wlggr.cn http://www.morning.jrgxx.cn.gov.cn.jrgxx.cn http://www.morning.jhxtm.cn.gov.cn.jhxtm.cn http://www.morning.hkshy.cn.gov.cn.hkshy.cn http://www.morning.sjbty.cn.gov.cn.sjbty.cn http://www.morning.jpkk.cn.gov.cn.jpkk.cn http://www.morning.wkjzt.cn.gov.cn.wkjzt.cn http://www.morning.tqsmg.cn.gov.cn.tqsmg.cn http://www.morning.wxrbl.cn.gov.cn.wxrbl.cn http://www.morning.tnbsh.cn.gov.cn.tnbsh.cn http://www.morning.lsyk.cn.gov.cn.lsyk.cn http://www.morning.ryfq.cn.gov.cn.ryfq.cn http://www.morning.tpxgm.cn.gov.cn.tpxgm.cn http://www.morning.zljqb.cn.gov.cn.zljqb.cn http://www.morning.krwzy.cn.gov.cn.krwzy.cn