分配内存时,许多计算机系统会对内存的地址施加一定的规则。一般来讲,分配的内存的地址最好是K的倍数(K = 2,4,8)。这个设定的目的是简化处理器与内存系统的接口设计,这样分配内存的操作只需要用一条指令即可完成。
不同的计算机系统有不同的限制规则,道理来讲,这种K字节强制对齐虽然会浪费一些内存,但是会提高效率。
为此,微软的操作系统强制要求:
任何K字节
本文详细介绍了计算机内存对齐的规则和目的,通过实例分析了结构体在内存中的布局,探讨了不同顺序对内存浪费的影响,并提出了按照字节大小排序数据域以减少内存浪费的优化策略。
分配内存时,许多计算机系统会对内存的地址施加一定的规则。一般来讲,分配的内存的地址最好是K的倍数(K = 2,4,8)。这个设定的目的是简化处理器与内存系统的接口设计,这样分配内存的操作只需要用一条指令即可完成。
不同的计算机系统有不同的限制规则,道理来讲,这种K字节强制对齐虽然会浪费一些内存,但是会提高效率。
为此,微软的操作系统强制要求:
1300

被折叠的 条评论
为什么被折叠?