暂无图片
内存对齐是什么概念?
我来答
分享
愿世间无疾无病
2022-12-21
内存对齐是什么概念?

内存对齐是什么概念?

我来答
添加附件
收藏
分享
问题补充
1条回答
默认
最新
yBmZlQzJ

许多计算机体系结构要求特定的类型必须放在特定的内存地址上。例如它可能要求指针的地址必须是4的倍数或double的地址必须是8的倍数。如果没有这个约束条件,可能会导致运行时硬件异常。有些体系结构是如果齐位条件获得满足便提供最佳效率。

数据对齐分为自然对齐和强制对齐,注意这里讲的对齐是指数据地址的对齐。 自然对齐,各个类型变量的内存地址必须是其类型本身的整数倍。结构体对齐到成员最大长度类型的整数倍。

不同的硬件平台对存储空间的处理上有很大的不同,有些平台对某些类型的数据只能从特定地址开始存取否则就会出错;另外一些平台可能不会出错但会影响处理效率,本来一个指令周期就可以完成的操作,可能需要两个指令周期还需要把数据拼在一起处理。例如,对于从奇数边界去访问unsigned short型变量,显然不符合对齐的规定。在x86上,类似的操作只会影响效率,但是在MIPS或者sparc上,可能就是一个error,因为它们要求必须字节对齐。

暂无图片 评论
暂无图片 有用 2
打赏 0
暂无图片
回答交流
Markdown


请输入正文
提交
相关推荐
linux下 nfs配置权限的问题
回答 1
可以参考https://www.modb.pro/db/58011文档里的nfs来配置vi/etc/exports/ocr1(rw,sync,nowdelay,insecurelocks,noroot
mysql 隔几个小时就需要重启,然后才能访问 需要哪里设置吗?
回答 2
问题能够隔几个小时重复出现,应该是共性问题,建议你跟踪一下主机的资源使用情况,检查出现问题时MySQL错误日志提示信息及操作系统日志信息,如果这些没有明显的问题,就需要与应用沟通,确定问题时间点有没有
linux rman 备份集 到win下还原会有坏块,linux 端 validate database 检测,又检测不到坏块,这是为什么?
回答 3
源端是哪,目标端是哪。考虑传输、操作系统编码等情况
linux安装elasticsearch 7.7.0后,容器启动后秒退,怎么解决?
回答 2
分析下日志看看什么原因
请教各位大佬,求一个查询单个进程swap使用情况的shell。谢谢!
回答 2
单个cat/proc/PID/status|grepVmSwap所有foriin/proc//status;doawk'/VmSwap/||/^Pid/||/Name/{printf"%20s",$2
linux下恢复被删除的文件
回答 3
已采纳
试试这个同学的方法https://www.modb.pro/db/126899
截取AWK输出记录
回答 4
你的原始语句只能输出一列哈:[oracle@db01]$netstatn|grep.1521tcp0011.0.1.4:1712811.0.1.4:1521ESTABLISHEDtcp60011.0.
CentOS登录卡主不动
回答 4
已采纳
/etc/profile文件有问题,询问一下同事最近有没有做什么操作就知道了
df -h中的use%列,将56%转为0.56
回答 1
已采纳
可以删除第5列的%,然后将数据除以100即可.但不建议shell操作,建议最终呈现数据的时候再做美化.df的时候仅去掉%即可dfPh|awk&x27;{sub(/\%/,"");$
Linux 复制文件到挂载的nas下提示failed to close...input/output error
回答 6
可以进去的,不慢