我的M8怎么只有156M的内存啊

来源:百度知道 编辑:UC知道 时间:2024/05/23 20:22:40
我用优化精灵看我的魅族M8只有156的内存,有点纳闷,高手来帮帮忙啊

M8的内存是256的,但是魅族把其中一部分内存做显存用了!lz应该用的是092X的固件吧!以前的固件是把80M的内存作显存用,但是自从到了092X的固件后,魅族为了显示的流畅性,把80M的显存改成100M的了!

这是正常的 - -本身内存计算就有出入
出长参数 1M 是按 1000KB算的
而我们换算是 按 1024KB 折合后 256M的内存就差不多只有200多了
加上系统本身不可避免的消耗掉 30 左右

而且 不同 版本的固件 对于内存的占用也有一点细微的出入
再者 优化精灵给的内存只是参考参数

不用担心

150跟170 在使用过程中没有本质的区别

我也用M8 升级固件后显示也是150多·~运行跟原来一样

众所周知M8是基于WinCE系统的,而WinCE一开始并不是针对ARM体系设计的——WinCE实际上可以在很多不同的平台上运行,例如MIPS、ARM,甚至X86。但不同的平台有自己不同的特点,这导致CE在不同平台上的行为有着很大的区别。
X86体系下程序都是要载入内存执行的,WinCE的核心类似于WIN98,所以默认也是这样的。但ARM体系和X86有很大的区别,ARM体系下的FLASH ROM有一个XIP区,这个区的代码是直接在ROM上执行的,不需要复制到内存(实际上直接在XIP上执行速度更快)。而更由于这个区域内的代码直接具有核心级的权限,所以大部分系统核心组件和驱动程序都位于XIP区。这就和WINCE的载入内存执行的方式存在冲突——这块代码不需要载入内存,但WinCE应该是不支持这种直接ROM运行的访问。所以这里采用了一个折衷的办法,就是在系统内存中划出了一块地址空间,给每一个XIP内的执行体和驱动都分配了一段空间,一一对应,然后把所有针对该内存的访问都映射到XIP ROM区域。这就相当于一个跳转,把内存和XIP联系起来了,因此既可以保持CE的体系结构不改,也可以适应ARM的架构。唯一的问题就是,这块划分给XIP的内存空间,是纯粹处于浪费状态的,里面其实什么都没有,但又不得不存在。而且由于它的重要性,这块区域对程序来说是不可见的,就是说,程序能看到的总内存,仅限于实际物理内存总