为什么Mac OS X对内存的需求远远多于Windows?

发布于2022-01-13 06:43:02

在同价位的情况下,PC笔记本一般都是4G内存,鲜有8G,而现在的MacBook基本是8G起跳。我PC上4G内存还能跑Photoshop,开比较大的图,而在Mac上,4G内存普通应

4个回答
admin
网友回答2022-01-13

首先我的MacBook pro 和Mac book Air 都是4G内存运行很流畅,其次Mac os 系统现在都是64位系统早就不是32位的了……在windows的小伙伴都知道 64位系统至少都是4G起步,但是现在去电脑城装个系统一般都会推荐你装32位系统 因为32位系统2G内存都够用…

admin
网友回答2022-01-13

不要直接比较Windows和MacOS的内存使用,因为两个操作系统的内存管理机制完全不一样,造成两者对内存的使用情况无法直接对比。Windows系统的大致原理是应用要多少用多少,退出就释放。MacOS大致是在内存足够的时候随便用,系统只有在不够的时候才去回收内存。所以正常使用的时候,MacOS的内存余量都会少于Windows系统。当然这是一个粗略的情况,具体问题还是要具体分析。

admin
网友回答2022-01-13

你这个首先就不是在同等条件下的公平比较的最终用户结果,本质上你这种说法就是非常不准确的,为什么这么说?

第一,macOS和Windows的内存管理机制不同

当然不是说哪一个比哪一个先进,不能说macOS(基于Unix)的内存管理机制就比较先进,而Windows的内存管理机制就比较落后,只是两者在技术决策方面存在着一定的差异而已,就好比说Unix整个架构体系都是everything is a file,但Windows就不是。

macOS是内存最大化的使用,尽可能高的发挥性能,这时候你会发现在你的Mac上,8G内存好像也快用完了,但是转手到16G内存的机器好像也使用完了。但是比如你现在基础上,感觉内存已经爆了,但是你再开几个应用,但你会发现你的内存还是够用的。反过来你在Windows上试试,爆了就真的爆了,为什么有的第三方优化软件会让你点加速球,你是不是看到红色就要去点一下加速小火箭优化一下内存?

macOS的内存使用情况分为wired、active、inactive、free四种不同的状态,其中wired是系统核心占用,不会在物理内存中消失;active代表这些内存正在被使用、或者说刚刚被使用;inactive表示内存中的数据是有效的,但最近没有被使用;free代表内存中数据是无效的,这些内存空间就是随时都可以被使用的。当free的值地域某个值的时候,系统会按照顺序使用inactive的资源,通过一定的规则转变成free就可以继续使用,active的资源如果长时间没被使用,则转化为inactive状态,形成良性循环。但是在Windows里面其实inactive这部分也是当成了free在使用的,所以说你会感觉win的内存更多。

举个通俗的例子,macOS不管你用不用,先给你这么多再说,然后其他人要用你再还回来,但是windows不一样,我用多少拿多少,这就是两者在定义上的不同,已经在内存管理上的不同,这是内存管理机制上的差异而引起的,如果物理内存真的不够用了,不管macOS还是windows都一样。当然Windows有内存压缩,但是macOS也有啊。

第二点,你不能用3000的4G的Windows PC来作为佐证

MacBook(Pro)目前的起价摆在这里,你不能说只有4G内存的3000的Windows PC是有这样的电脑,而MacBook现在最低的机器8G,这样比较本身就是耍流氓。

MacBook目前起价是多少?Windows机器有4G的只是代表有这样的需求,但是MacBook定价高不代表就一定做不出来4G的本子。就好比iOS和Android一样,iPhone的硬件看上去配置远远要比Android的机器配置低,你各大厂商走一圈,现在Windows阵营8G内存的机器照样一大堆。

第三点,你装个Windows7,装个Photoshop早期版本比最新的macOS不厚道吧

就如你所说,你现在还用着windows7的电脑,谁知道你Photoshop是不是也是用得老版本,这样比较不厚道吧。

上次有个小伙伴用Windows XP跟macOS Mojave比内存消耗,说实话我当时反手就像一巴掌扇过去,这样比较有意义?用很多年前的标准来要求现在最新的平台,这本身就不合理,所以这本身就不合理。

随着技术的进步,Mac对于陈旧技术的淘汰很显然要快得多,举个例子现在用macOS的,基本上都是第一时间更新到最新版本,但是这么多年过去了,还有人在用用了近20年的Windows XP,但是windows为了兼容老旧的硬件,甚至一些特定场合的特殊需求,又不得不做这些像旧的硬件、更低的硬件妥协,但是苹果很少需要做这样的妥协。

macOS的生态更纯粹,但是windows的生态乱七八糟,这是微软有时候必须考虑的,这一点跟iOS和Android的差异是一样的。

因此,这个问题根本就是个伪命题!

admin
网友回答2022-01-13

叮铃铃~ 极果君的科技小课堂又开课啦~

先来一句话结论:因为Mac和Windows的内存使用逻辑是完全不一样的。


Windows系统的内存使用逻辑是用多少占多少,不用的内存就会赶快释放出来,等待系统进行下次分配。

mac OS的内存使用逻辑刚好相反,它和所有unix-like系统一样,都讲求最大化利用内存:计算机科学里有个局部性原则,讲的是如果一个程序被访问了,那么在它附近的内容很可能会在短时间内被再次访问。因此为了最大化提升系统流畅度,Mac会把这些可能要访问到的内容一股脑的全塞进内存里。

结果就是看上去mac的内存永远满满当当。


如果程序需要的内存不足够,那么系统会自动把这些“缓存”释放掉一部分。因此不需要担心mac内存不足会把系统卡死。

不过,手动“释放内存”在mac上是没啥用的(在安卓上其实也没用),因为你清理掉了内存之后,那些内容就需要从硬盘进行读取。跟快到不行的内存比起来,这个过程可就慢多了。清理之后反而会让软件加载的时间大大加长。


所以,并不是mac的内存占用大,而是两者对内存使用的策略不一样,你学到了吗?

回到
顶部