我有一个拥有大约64G内存和大约24G交换空间的系统。我意外地在我的程序中分配了大量的共享内存,令我惊讶的是它起了作用。以下是/dev/shm中的文件
-rw-r--r-- 1 user user 191G Aug 7 10:06 myShm
当我的RAM和交换加起来只占内存的一小部分时,系统如何管理191 to的共享内存?
我使用jsvc作为守护进程在centos5.5上安装了tomcat版本6。在运行了几个小时或几天之后,tomcat jsvc进程在那里休眠,并使用了%100的CPU资源,如顶部的命令输出屏幕所示。以下是输出屏幕的详细信息。
PID USER PR NI VIRT RES SHR S %CPU %MEM COMMAND
8670 root 18 0 33.3g 32g 10m S 100.0 51.5 jsvc
我已经将jvm的最大内存值设置为32G,而服务器机箱的内存为64G,所以不要对VIRT值感到惊讶。正如您在输出消息中看到的,进程状态是S,这意味着休眠。我的猜测是,jvm