相关疑难解决方法(0)

当仍然存在“非活动”内存时,如何禁用 Mac OS X 使用交换?

我在 OS X 的日常使用中(以及根据互联网上的各种帖子显示的其他几种情况)中的一个常见现象,只要没有更多“可用”内存可用,系统似乎就会变慢。据称,这是由于交换造成的,因为明显的磁盘活动很重,并且 vm_stat 报告了许多页面输出。(纠正我的错误)

但是,当交换开始/发生/结束时,“非活动”内存的数量通常约为所有可用内存 (^1.) 的 12.5%-25%。

根据http://support.apple.com/kb/ht1342

非活动内存

内存中的这些信息没有被积极使用,但最近被使用过。

例如,如果您一直在使用 Mail 然后退出它,Mail 使用的 RAM 将被标记为非活动内存。此非活动内存可供其他应用程序使用,就像空闲内存一样。但是,如果在其他应用程序使用其非活动内存之前打开 Mail,Mail 将打开得更快,因为它的非活动内存被转换为活动内存,而不是从较慢的硬盘加载邮件。

根据http://developer.apple.com/library/mac/#documentation/Performance/Conceptual/ManagingMemory/Articles/AboutMemory.html

非活动列表包含当前驻留在物理内存中但最近未被访问的页面。这些页面包含有效数据,但可能随时从内存中释放

所以,基本上:当一个程序退出时,它的内存被标记为 Inactive 并且应该可以随时声明。尽管如此,每当“可用”内存变低时,OS X 更愿意开始将内存换出到交换文件,而不是仅仅声明这块内存。

为什么?这种行为比立即释放非活动内存甚至不触及交换文件的优势是什么?一些消息来源 (^2.) 表明 OS X 会在释放“非活动”内存之前将其分页以进行交换,但是如果内存可能随时从内存中释放,现在这样做没有意义吗?交换很贵,释放很便宜,对吧?

可以使用某些偏好或已知的 hack 来改变这种行为吗?(最好是不包括完全禁用 swap/dynamic_pager 和重新启动...)

我很欣赏清除命令,以及修复磁盘权限以强制释放一些可用内存的概念,但这些是痛苦地强制更多可用内存而不是实际修复交换/释放决策逻辑的方法......

顺便说一句类似的问题在这里问:http://forums.macnn.com/90/mac-os-x/434650/why-does-os-x-swap-when/这里:HTTP://hintsforums.macworld .com/showthread.php?t=87688但即使 OP 重新询问了核心问题,但没有任何回复给出了答案......

^1。2012 年 3 月 17 日更新自从我第一次发布这个问题以来,我已经从 4gb 到 8gb 的已安装内存,问题仍然存在。“非活动” ram 的数量以前是 0.5gb-1.0gb,现在在交换开始/发生/结束时通常约为 1.0-2.0GB,即似乎大约 12.5%-25% 的 ram 被 osx 保留为非活动状态内核逻辑。 …

memory swap osx-snow-leopard memory-management macos

68
推荐指数
1
解决办法
5万
查看次数

没有交换分区的缺点

我最近在我的笔记本电脑上安装了 Ubuntu 10.04。由于SSD的空间限制,我没有为操作系统设置交换分区,我有1.5GB的RAM。

安装过程中有警告,但我认为这没什么大不了的,因为一切都很顺利。

从长远来看,没有交换分区会有什么缺点吗?

linux ssd swap partitioning ubuntu

8
推荐指数
2
解决办法
4055
查看次数