首页 > 其他分享 >QNX-19—QNX Proc文件

QNX-19—QNX Proc文件

时间:2024-03-04 13:55:39浏览次数:30  
标签:选项 prio 19 proc QNX 线程 Proc 对应 restart


一、/proc/pid

# ls /proc/12310
as    cmdline    ctl    exefile    mappings    pmap    vmstat


1. as

包含进程整个内存空间的地址空间。

2. cmdline

传递给进程的参数,以空字符分隔。 例如:

# pidin -p 1130602 arg //查看参数
     pid Arguments
 1130602 m.samsung.home
# cat /proc/1130602/cmdline
m.samsung.home

3. ctl
可用于 devctl() 命令来访问进程及其线程的文件。


4. exefile
进程的可执行文件的路径。 例如:

# echo `cat /proc/28687/exefile`
/sbin/io-pkt-v6-hc

5. mappings
进程地址空间中每个页面的详细视图。

6. pmap
进程映射的详细视图。

7. vmstat
进程虚拟内存的视图。

8. /proc/self
应该指示当前线程。


二、/proc/ham

# ls i2c_service/
attached    death       restart
# ls i2c_service/attached/
notify-pulse-attached
# ls i2c_service/death/
notify-pulse-death    restart-self    waitfor-restart-delay-500ms    waitfor-restart-enable
# ls i2c_service/restart/
notify-pulse-restarted


1. notify-pulse-attached

2. notify-pulse-death

3. restart-self

4. waitfor-restart-delay-500ms

5. waitfor-restart-enable

6. notify-pulse-restarted


三、/proc/vm

# ls vm/
stats

1. stats

系统中虚拟内存状态的全局视图。


四、/proc/boot

# ls /proc/boot/
el2-save-restore    ifs    ksh    libsecpol.so.1    mnt    procnto-smp-instr


五、/proc/config

# cat /proc/config
align_fault:off
fd_close_timeout:30
fpustate:4
ker_verbose:0
maxfds:4000
nohalt:0
nonlazy_stack:1
nopreempt:0
pregrow_size:524288
priv_prio.prio:64
priv_prio.saturate:0
procfs_ctl_umask:022
procfs_umask:066
shutdown_stack_len:128/0
safe_shared_mutexes:0
thread_timer_prealloc:0
clockcycles_offset_max:0xFFFFFFFFFFFFFFFF
allow_unregistered_events:0
pathtrust:0
small_msg_max:256
proc_thread_pool:3,10,75
thread_stack_prot:NOEXEC
mm_cleanup_prio:10
mmflags:0x219 (BACKWARDS_COMPAT,LOCKALL,SUPERLOCKALL,RANDOMIZE)


1. 成员解释

align_fault: 对应选项 -ad, -ae, -as,指示未对齐访问是否导致故障; 关闭或打开。 使用命令行选项禁用未对齐访问模拟会在未对齐访问上生成故障。
fd_close_timeout: 对应选项 -T,进程终止时等待 close() 成功的时间(以秒为单位)
fpustate: 对应选项 -f*,浮点标志;见下文。
ker_verbose: 对应选项 -V,详细程度
maxfds: 对应选项 -F, 可以同时打开的文件描述符的最大数量。
nohalt: 对应选项 -h, -~h,空闲线程中是否禁用CPU暂停; 0 或 1。
nonlazy_stack: 对应选项 -n,(QNX Neutrino 7.0.4 或更高版本)是否正在使用非惰性堆栈分配; 0 或 1
nopreempt: 对应选项 -p,是否禁用内核抢占; 0 或 1。使用 procnto-smp-instr -p 关闭内核中的抢占。 ###############
pregrow_size: 对应选项 -H,procnto 的初始堆大小,以字节为单位。
priv_prio.prio: 对应选项 -P,特权优先级范围的下限。
priv_prio.saturate: 对应选项 -P,超出范围的优先级请求是否使用最大允许值(达到“最大饱和点”)而不是导致错误
procfs_ctl_umask: 对应选项 -d,文件创建掩码,八进制,用于 /proc/pid/ctl 条目。
procfs_umask: 对应选项 -u,文件创建掩码,八进制,用于 /proc/pid/as 条目。 ===>实看,两个都对应不上
shutdown_stack_len: 对应选项 -S,要包含在内核转储中的堆栈指针前后的字节数。
safe_shared_mutexes: 对应选项 -s,内核是否拒绝任何锁定影响优先级的互斥体的尝试,这些互斥体的所有者不为内核所知,并且锁定线程声称来自不同的进程; 0 或 1
thread_timer_prealloc: 对应选项 -t,内核是否在线程创建时分配线程的软件计时器(1),或者第一次需要计时器时分配线程的软件计时器(0)
clockcycles_offset_max: 对应选项 -c,系统CPU时钟周期中允许的最大偏移(差异)
allow_unregistered_events: 对应选项 -U,默认情况下是否允许 (1) 或不允许 (0) 未注册的事件。
pathtrust:
small_msg_max:
proc_thread_pool: 没有对应选项,查看PROC_THREAD_POOL环境变量,procnto的线程池的配置,包括低水位线、高水位线、最大线程数。
thread_stack_prot: 对应选项 -mx, -m~x,是否为系统分配的线程启用 PROT_EXEC 标志; 执行或无执行。
mm_cleanup_prio:
mmflags: 见下文


2. fpustate 成员

fpustate 字段指示设置了哪些 FPU 标志。 其中包括以下内容:

位    选项        说明
-------------------------------------------------------------------------------
0x1   —           至少一个内核上未设置 CPU_FLAG_FPU 位(即至少一个内核没有浮点单元)
0x4   -fl, -~fl   启用惰性 FPU 上下文切换策略
0x8   -fa, -~fa   为每个新线程预先分配 FPU 上下文结构


3. mmflags 成员

mmflags 字段指示设置了哪些内存管理标志。 您可以使用 -m 命令行选项来设置一些。 这些标志包括以下内容:

标志              选项        说明
------------------------------------------------------------------------
BACKWARDS_COMPAT  -mb        启用向后兼容性
CACHEOP_NOCACHE   None       由于特定芯片勘误,无法在不可缓存内存上执行缓存操作
LOCKALL           -ml,-mL    所有内存均被锁定
RANDOMIZE         -mr        正在使用地址空间布局随机化 (ASLR)
REQUIRE_EXEC      -mX        如果文件没有客户端进程的执行权限,则 mmap() 或 mprotect() 为内存映射文件映射打开 PROT_EXEC 的任何尝试都会失败
SHMEM_GUARD       -mg        在任何共享内存分配之前添加一个保护页
SUPERLOCKALL      -mL        所有内存都被超级锁定


六、/proc/dumper

当进程异常终止时接收通知的特殊条目。 dumper实用程序监视此条目。


七、/proc/mount

路径名空间挂载点。
如果列出 /proc 目录的内容,则不会显示 /proc/mount,但可以列出 /proc/mount 的内容。

 

 

参考:
https://www.qnx.com/developers/docs/7.1/index.html#com.qnx.doc.neutrino.utilities/topic/p/procnto.html
https://www.qnx.com/developers/docs/7.1/index.html#com.qnx.doc.neutrino.prog/topic/process_proc_filesystem.html

 

标签:选项,prio,19,proc,QNX,线程,Proc,对应,restart
From: https://www.cnblogs.com/hellokitty2/p/18051663

相关文章

  • P8681 [蓝桥杯 2019 省 AB] 完全二叉树的权值
    做这道题的时候混淆了满二叉树和完全二叉树的概念:满二叉树:顾名思义,就是塞满了完全二叉树:除了最后一层之外,每一层都必须是满的,且最后一层如果不满,则所有节点都尽可能靠左。#include<iostream>#include<stdio.h>#include<algorithm>#include<string>#defineFor(i,j,n......
  • 如何使用/proc文件系统监控Linux系统?
    如何使用/proc文件系统监控Linux系统?原创 漫谈君 运维漫谈 2024-02-2909:58 江苏/proc是Linux系统中的一个虚拟文件系统,提供了对运行中内核和进程的实时访问。这个目录下包含了很多以数字命名的目录,每个目录代表一个运行中的进程或者系统信息。每个进程目录下有许多......
  • [GWCTF 2019]pyre
    首先是简单的pyc-py这题唯一要注意的一个点就是遇到%务必进行爆破爆破exp`code=['\x1f','\x12','\x1d','(','0','4','\x01','\x06','\x14','4',',','\x1......
  • [极客大挑战 2019]BabySQL 1
    [极客大挑战2019]BabySQL1审题还是SQL注入和之前的是一个系列的。知识点联合注入,双写绕过解题输入万能密码发现回显中没有or,猜测是使用正则过滤了or。尝试双写绕过登录成功使用联合查询,本题中过滤了from,where,or,by,union,select。看到4没有注入点,2和3都......
  • P5322 [BJOI2019] 排兵布阵
    原题链接题解巧妙的背包问题我可以用按顺序遍历城堡,顺便表示出遍历到当前城堡时用掉了多少兵力,这样是可以穷尽所有兵力派送情况的同时把这个城堡里的敌方兵力升序排序,然后遍历,表示为了消灭所有兵力小于等于ta的敌人所加的分code#include<bits/stdc++.h>usingnamespacestd......
  • Living-Dream 系列笔记 第19期
    ProblemT1/*思路:对于每一对L,R,标记[L,R)(注意左闭右开!),并且求出最小的L(minl)和最大的R-1(maxr);循环maxl~maxr,若被标记则最长连续挤奶时间+1,最长无人挤奶时间=0;否则最长连续挤奶时间=0,最长无人挤奶时间+1,同时更新最大值。*/#include<bits/stdc++.h>usingnamespacestd;intn......
  • 如何使用/proc文件系统监控Linux系统
    如何使用/proc文件系统监控Linux系统?原创 漫谈君 运维漫谈 2024-02-2909:58 江苏 听全文/proc是Linux系统中的一个虚拟文件系统,提供了对运行中内核和进程的实时访问。这个目录下包含了很多以数字命名的目录,每个目录代表一个运行中的进程或者系统信息。每个进程目录......
  • CF1931G One-Dimensional Puzzle 题解
    CF1931GOne-DimensionalPuzzle题解题意传送门思路考虑一下怎么入手,发现一个拼图只能接一些拼图(废话但是有用),所以我们可以简单地画出一个链接关系的图,\(u\tov\)表示编号为\(u\)的拼图后面能够接编号为\(v\)的拼图。然后我们发现问题转换为:......
  • CF1934题解
    题解首先拜谢波叔呀,一眼看上去没思路,直到看见了四重循环,大彻大悟。Solution没什么好说的,暴力四重题意大意就是给你一个数,在1,3,6,10,15中取数,使取出的数等于输入的数,求出至少需要用多少个数。求数代码: for(longlongi=0;i<=2;i++){ for(longlongj=0;j<=1;j++){ for(lo......
  • AT_nikkei2019_2_qual_d Shortest Path on a Line 题解
    我们发现,brute-force的复杂度的优化瓶颈主要在建图上。于是我们有一个巧妙的转化:因为所有满足\(L\leS,T\leR\)的所有边\((S,T)\)的长度均为\(C\)。然后题目要求的是\(1\simN\)的最短路。那么在边权相等的情况下,走到的点的编号一定越大越好。于是在所有点对\((......