我有 sun os 以下命令不可用
prtconf
prtdiag
psrinfo
唯一有效的命令是kstat
.
任何人都可以帮我kstat
在这台机器上仅使用命令来查找总内存大小吗?
答案1
physmem
统计信息中的值将为system_pages
您提供操作系统看到的页面数。您需要将此数字乘以默认页面大小,默认页面大小可以是 4K 或 8K,具体取决于您的架构:
$ kstat -n system_pages -p -s physmem |
nawk -v pagesize=$(pagesize) '{print $2*pagesize/1024/1024 "MB"}'
4017.64MB
请注意,这可能与安装的 RAM 的实际大小不匹配,因为在操作系统启动之前,硬件可能已经占用了 RAM 的一部分。
答案2
您也许可以使用:
echo "::memstat" |mdb -k
答案3
还有lgrpinfo
(手册页):
描述
lgrpinfo
打印有关位置组 (lgroup
) 层次结构及其内容的信息。An
lgroup
表示一组 CPU 和类似内存的硬件设备,它们之间最多有一定的距离(延迟)。lgroups
系统中的 所有 内容均由称为lgroup
ID 的唯一整数来标识。
lgroups
组织成层次结构,以便于查找最近的资源。每个叶子lgroups
都包含一组彼此最接近(本地)的资源。层次结构中的每个父级都lgroup
包含其子级的资源lgroups
以及其下一个最近的资源。最后,根lgroup
包含域中最大延迟内的所有资源。统一内存访问(UMA)机器简单地由根表示
lgroup
。非统一内存访问 (NUMA) 机器由 的层次结构表示,lgroups
以显示相应的局部性级别。例如,具有两种延迟(本地和远程)的 NUMA 计算机具有lgroup
由两个级别(叶和根)组成的层次结构。...
在 Intel x86 机器上(统一内存访问),lgrpinfo
不带任何参数将产生类似于
bash-4.1$ lgrpinfo
lgroup 0 (root):
Children: none
CPUs: 0-15
Memory: installed 48G, allocated 15G, free 33G
Lgroup resources: 0 (CPU); 0 (memory)
Load: 0.0445
Latency: 0
答案4
你有或者swap
吗mdb
?
也许kstat :::physmem
,这应该给你页数。 (大多数情况下,SPARC 上为 8K,x86 上为 4K)