有人用过Fast MM这个内存fast管理员密码是多少的吗

2014年3月 C++ Builder大版内专家分月排行榜第二2014年1月 C++ Builder大版内专家分月排行榜第二2013年12月 C++ Builder大版内专家分月排行榜第二2013年8月 C++ Builder大版内专家分月排行榜第二2013年7月 C++ Builder大版内专家分月排行榜第二2013年4月 Delphi大版内专家分月排行榜第二
2013年11月 C++ Builder大版内专家分月排行榜第三2013年9月 C++ Builder大版内专家分月排行榜第三2013年6月 C++ Builder大版内专家分月排行榜第三2013年3月 Delphi大版内专家分月排行榜第三
本帖子已过去太久远了,不再提供回复功能。猜你感兴趣
1。为了达到最快的下载速度,推荐使用、等多线程下载软件进行下载。
2。如果您发现该软件不能下载,或者需要查找软件,请到版块说明,谢谢。
3。站内提供的影视、软件包含破解及注册码均是由网上搜集,相关版权归版权持有人所有,若无意中侵犯到您的版权利益,敬请联系我们。我们会在收到信息后立即处理!
4。本站为非营利性站点,所有资源均是网上搜集或私下交流学习之用,任何涉及商业盈利目的均不得使用,否则产生的一切后果将由您自己承担!本站仅仅提供一个观摩学习的环境,将不对任何资源负法律责任。所有资源请在下载后24小时内删除。如果您觉得满意,请购买正版。博客访问: 20255
博文数量: 18
注册时间:
ITPUB论坛APP
ITPUB论坛APP
APP发帖 享双倍积分
IT168企业级官微
微信号:IT168qiye
系统架构师大会
微信号:SACC2013
分类: Linux
Solaris内存管理以及判定内存是否够用的方法
Solaris内存管理的一些基本原理
首先需要对Solairs的内存管理有一个基本的了解。Solaris内存管理简单来说就是“虚拟内存管理”模型。(注:现代OS差不多都是虚拟内存管理,包括Windows,Linux)虚拟内存的定义是:
&虚拟内存的定义是基于对的重定义的,即把地址空间定义为连续的虚拟内存地址,以借此欺骗程序,使它们以为自己正在使用一大块的连续地址。(参见:)
虚拟内存也就是为了编程的方便,而为应用程序假象一个地址空间。就是对于64bit的Solaris来说,虚拟地址空间就是2^64Byte,基本就看成
无穷大吧。;对于32位的操作系统就是4G(如果内核空间独立的话,可能就是2G或者3G,如WindowsXP)。虚拟内存和实际物理内存的映射关系通
过CPU的MMU(内存管理单元)来完成。
首先,通过在root权限下执行
::memstat |mdb -k
Summary&&&&&&&&&&&&&&&
Pages&&&&&&&&&&&&&&&
------------&&&&
----------------&
----------------& ----
Kernel&&&&&&&&&&&&&&&&&&&&&
&49709&&&&&&&&&&&&&&
Anon&&&&&&&&&&&&&&&&&&&&&&
&927367&&&&&&&&&&&&&
libs&&&&&&&&&&&&&&&
5186&&&&&&&&&&&&&&&
40&&&&&&&&&
cache&&&&&&&&&&&&&&&&&
212025&&&&&&&&&&&&&
1656&& 11%
(cachelist)&&&&&&&&&&&
787615&&&&&&&&&&&&&
6153&& 39%
(freelist)&&&&&&&&&&&&&&
31964&&&&&&&&&&&&&&
Total&&&&&&&&&&&&&&&&&&&&
2013866&&&&&&&&&&&&
# echo ::memstat |mdb -k
Summary&&&&&&&&&&&&&&&
Pages&&&&&&&&&&&&&&&
------------&&&&
----------------&
----------------& ----
Kernel&&&&&&&&&&&&&&&&&&&&&
70542&&&&&&&&&&&&&&
Anon&&&&&&&&&&&&&&&&&&&&&&
950567&&&&&&&&&&&&&
7426&& 47%
libs&&&&&&&&&&&&&&&
5965&&&&&&&&&&&&&&&
cache&&&&&&&&&&&&&&&&&&
6219&&&&&&&&&&&&&&&
(cachelist)&&&&&&&&&&
978159&&&&&&&&&&&&&
7641&& 49%
(freelist)&&&&&&&&&&&&&
2414&&&&&&&&&&&&&&&
Total&&&&&&&&&&&&&&&&&&&&
2013866&&&&&&&&&&&&
这里给出了“物理内存”的分配细节
Kernel:内核占用的内存。这部分内核占用的内存一般为了保证性能是不允许被换页的。
Anon(Anonymous匿名内存):简单的理解就是用户进程分配给自己专有的内存。准确的说应该是包括用户进程堆空间、栈空间和copy-on-write页面、共享内存映射和小的内核辅助内存,诸如代表用户进程的lwp线程栈空间。这部分内存常常需要需要进行写操作的,导致换页时候,也必须完成回写操作,使得这部分内存的换页成本非常高。----这又牵涉到一个的概念。
libs:为库函数所分配的内存。差不多算是只读内存,库函数显然没有必要被修改,这部分内存在需要的时候可以被直接扔掉。
Cache:不在缓存列表上的页面缓存。可以这样理解,系统刚开始运行时,保留一部分物理内存作为文件系统缓存,但初始时并没有被任何文件系统内容使用。一般来说系统运行一段时间后,这部分就差不多变成0了。
Free(cachelist): 在空闲列表中的页面缓存大小。差不多可以认为是已经分配的文件系统缓存。(Solaris
8不认为这属于vmstat中的空闲内存,因此常常看到空闲内存为0,但是系统一样跑的很好;在Solaris9中把这部分内存也作为vmstat中的空
闲内存对待)
Free(freelist):真正空闲的内存大小。这是与任何文件或者进程没有联系的正真的空闲内存。
这里的文件系统缓存差不多就是AIX里面的“非计算内存”(参见:)
上面各种内存的顺序差不多是按照被“换页”成本进行排序的,越往上,换页成本越高。
oracleora10g (LOCAL=NO)
Address&&&&
&Kbytes&&&&&&&
&Mode&& Mapped
100128&&&&&
99208&&&&&&&&&
-&&&&&&&&&&
C6000&&&&&&&&&&
808&&&&&&&
688&&&&&&&
176&&&&&&&&&
0000&&&&&&&&&&
936&&&&&&&
920&&&&&&&
920&&&&&&&&&
&&[ heap ]
FFFFFFFF7DB06000&&&&&&&&&&&&&
56&&&&&&&&
40&&&&&&&&&&
40&&&&&&&&&
&libclsra10.so
FFFFFFFF7DB14000&&&&&&&&&&&&&&&
8&&&&&&&&&
-&&&&&&&&&
-&&&&&&&&&
&&- rwx--&
&libclsra10.so
FFFFFFFF7DB70000&&&&&&&&
64&&&&&&&&
48&&&&&&&&&&
48&&&&&&&&&
&&[ anon ]
FFFFFFFF7DB80000&&&&&&&&&&&&&
64&&&&&&&&
48&&&&&&&&&&
48&&&&&&&&&
rw---&&&&&
FFFFFFFF7DC00000&&&&&&&&&
9256&&&&&&
8200&&&&&&&&&
-&&&&&&&&&
&& libjox10.so
FFFFFFFF7EB00000&&&&&&&&&&&&&&&
8&&&&&&&&&
8&&&&&&&&&&&&
8&&&&&&&&&
&& &[ anon
FFFFFFFF7FFF0000&&&&&&&&&&&&&
64&&&&&&&&
64&&&&&&&&&
64&&&&&&&&&
&& &[ stack
---------------- ----------
---------- ---------- ----------
total Kb&&
&再来看看,对于一个应用程序来说,它的内存分配情况。举例说明,比如,为Oracle启动分配20G(也可以是200G)的内存。
虚拟内存:在分配内存时候可以不必理会物理内存有多少,只要满足两个条件:1、交换分区(swap)空间+物理内存大于20G;2、不能超过操作系统的地址空间,如64位系统就是2^64字节;从上面的例子看,为这个Oracle直接分配的就是就是分配的Kbytes虚拟内存
物理内存:由
于这20G的内存,有可能一次也不会被访问到(假设这Oracle是你自己开发的,你分配了一个20G的大数组,却忘了使用它----虽然愚蠢,但也不是
不可以)。因此OS比较聪明的做法是没必要一次性地把这20G都装入物理内存,而是在确实需要访问的时候再分次分批的装入。装入物理内存的部分就是“驻留
内存”。从上面的例子看,这个Oracle所占用的物理内存就是分配的RSS。
匿名内存:一般你的系统上有好几十个Oracle进程,显然不可能每一个Oracle都独立占用20G内存,事实上从上面例子看只有Anon所占用的3616K内存是这个Oracle所独有的,6K都是共享的部分。
缺页扫描阶段:前
提是物理内存不足20G,这时候就利用上了swap分区。如果发生需要的数据不在内存,就会进行“缺页扫描”,看看能否把啥内存换出到磁盘上(swap
out)。Solaris有“慢扫”和“快扫”两种,在缺页情况不严重的时候,一秒钟扫“页表”几十次;如果缺页情况严重,一秒钟就扫描“页表”几千次。
当然在“快速扫描”的情况下,系统性能基本上就不能保证了。
换页阶段:这个大家都理解了,这里就不说了。
判定Solaris系统内存是否够用的方法
1、prstat -mL查看进程等待内存的时间百分比(DFL值)
PID USERNAME USR SYS TRP TFL DFL LCK SLP LAT VCX ICX SCL SIG
PROCESS/LWPID
oracle&&&&&&
12 4.8& 0.0& 0.0 0.0 0.0& 83 0.0
13K&& 0 oracle/1
oracle&&&&&
5.9 7.8& 0.0& 0.0 0.0 0.0& 88 0.0
205& 19 11K&& 0
oracle&&&&&
8.3 5.0& 0.0& 0.0 0.0 0.0& 88 0.0
9K&& 0 oracle/1
DFL表示花费在等待内存的时间百分比。上述DFL=0表示没有发生换页情况,内存够用。
2、vmstat查看空闲内存(free值)和缺页扫描频率(sr值)
bash-2.05$
&kthr&&&&&
memory&&&&&&&&&&&
page&&&&&&&&&&&
disk&&&&&&&&&
faults&&&&&
free& re& mf pi po fr de sr m1 m2
sy&& cs us sy id
0& 749& 452&
841& 0& 0 100
0& 581& 297&
710& 0& 0 100
free表示空闲内存为6367384,关键的是sr=0,表示缺页扫描频率为0,也就是不发生缺页扫描。
hardswap/D|mdb -k
hardswap:&&&&&&
硬交换为0,当然是内存够用。
阅读(1557) | 评论(0) | 转发(0) |
相关热门文章
给主人留下些什么吧!~~
请登录后评论。

我要回帖

更多关于 fast管理员密码 的文章

 

随机推荐