当前位置: 首页 > news >正文

向谷歌提交网站wordpress密码重设链接无效

向谷歌提交网站,wordpress密码重设链接无效,网站开发 手把手,wordpress p接着前面的文章#xff0c;这篇文章就来说说menory alignment -- 内存对齐. 一、为什么需要内存对齐#xff1f; 无论做什么事情#xff0c;我都习惯性的问自己#xff1a;为什么我要去做这件事情#xff1f; 是啊#xff0c;这可能也是个大家都会去想的问题#xff0c;…接着前面的文章这篇文章就来说说menory alignment -- 内存对齐.   一、为什么需要内存对齐   无论做什么事情我都习惯性的问自己为什么我要去做这件事情 是啊这可能也是个大家都会去想的问题 因为我们都不能稀里糊涂的或者。那为什么需要内存对齐呢这要从cpu的内存访问机制说起.   为了了解清楚cpu的内存访问机制昨天整晚都在查找资料但是还是找不到很好的介绍资料.后来只是找到了相关 的一些介绍的博客。 这些博客中大多都是以介绍内存对齐为主要目的然后顺带着说一下cpu的内存访问机制,所以 找不到权威的资料后来听说汇编语言编程艺术这本书里面有关于x86的系统介绍就下载了一份PDF但是 也还是没有找到.   所以呢下面的一些关于x86的内存访问方面的只是很多都是来源于一些比较好的博客.在文章的最后我会注明参考的 博客链接作为扩展阅读.   简单介绍x86的内存访问机制: 1.内存的写入操作: cpu把需要写入的地址放入地址总线, 把需要写入的数据放入数据总线, 把控制总线置为写入操作.          然后内存子系统根据地址总线选定内存单元, 检查控制总线发现是写入操作,则入去数据总线数据, 写入相关内存          单元.   2.内存的读入操作: cpu把需要读入的地址放入地址总线, 把控制总线置为读入操作. 内存子系统根据地址总线选定内存          单元, 检查控制总线发现是读入操作, 则读取内存单元中的数据, 写入数据总线.    16bit数据总线: 每个内存周期cpu只能读取一个偶单元和一个奇单元地址总线的地址是偶单元的地址所以地址总线的地址永远是2对齐的.         每个内存周期可以读取一个字也就是16bit.    1.读取一个字如果是以2对齐的则只需要一个内存周期即可完成.如果数据不是以2对齐的则需要2个内存周期.    2.读取双字: 如果是以2对齐的则只需要2个内存周期即可完成,如果数据不是以2对齐的则需要3个内存周期完成.   32bit数据总线: 每个内存周期,读取的数据地址都是以4对齐的.一个内存周期可以读取一个双字也就是32bit.     1.如果读取一个双字地址是以4对齐的话则只需要一个内存周期即可完成.如果不是以4对齐,则需要2个内存周期完成.     2.如果读取一个字地址是对4取模余3的话那么需要2个内存周期完成对数据的读取.地址如果对4去模不余3的话则        只需要一个内存周期即可完成数据读取.     3. 对于字节, 任何字节地址读取只需要一个内存周期.   通过上面可以看得出,为什么16bit数据总线cpu是以2对齐的,而32bit数据总线cpu是以4对齐的. 最主要的原因是能够在最小的 内存周期内完成对地址的访问提高cpu的效率.   二、内存对齐的作用    如果不采用内存对齐机制的话有些地址的访问需要在多个内存周期内完成而且还需要多次内存周期读取的高低字节 进行拼凑然后得到32bit数据.  如果使用内存对齐机制不仅可以减少对地址访问过程中需要的内存周期而且还避免了 高低字节的数据拼凑提高了cpu的工作效率.   三、编译器是如何处理内存对齐的   struct mem_alignment {char a;int b;char c; };在32位x86机器上面它的大小是12. 另外一个问题如果结构体中的成员变量顺序不一样会导致该结构在内存中的长度  也不一样就像上面如果改成下面这个样子   struct mem_alignment {char a;char c;int b; };那么它的大小就变成了8.    如果我们使用紧凑的对齐方式 __attribute__((packed)) or  __attribute__((aligned (1)))的话  那么struct mem_alignment的大小应该是6. 或者是使用伪指令#pragma pack (1).   #pragma pack (1)struct mem_alignment {char a;char c;int b; };#pragma pack () 上面最后一句的作用是恢复编译器默认的对齐方式.  关于内存对齐方面的知识就总结到这里. 也算是对前面文章的交代了~   参考资料:           从80X86结构看内存对齐问题 http://my.unix-center.net/~Simon_fu/?p262           oschina 内存对齐的问题  http://www.oschina.net/question/234345_48055           Thinking in linux C/C字节对齐详解 http://www.linuxsong.org/2010/09/c-byte-alignment/  转载于:https://www.cnblogs.com/respawn/archive/2012/07/10/2585334.html
http://www.pierceye.com/news/417314/

相关文章:

  • 圣诞节网站模板大兴企业官网网站建设
  • 法国化妆品进口报关做网站贵州两学一做网站
  • 青海环保网站建设公司wordpress版权怎
  • 砀山网站建设大凤号 网站建设
  • 汕头站什么是网站优化主要包括那几个
  • 买了一个域名如何做网站做歌手的网站
  • 制作精美网站建设服务周到外贸没有公司 如何做企业网站
  • jsp手机销售网站的建设做网站的收钱不管了
  • 购物分享网站流量排名帮忙做ppt的网站
  • 网站建设分几步易语言 wordpress
  • 网站备案申请模板网页制作软件手机版
  • 深圳网站开发企业建一个网站怎么赚钱吗
  • 购物网站开发小结自己搭建局域网云桌面终端
  • 做ssp用什么建网站vps搭建asp网站
  • 顺义网站建设网站认证值不值得做
  • 怎么做网站用dreamwer环球影城排队太热了
  • 台州网站建设技术外包网站创建教程
  • 发布设计任务的网站什么页游好玩人多
  • 增加网站关键词库中国建设银行黄陂支行网站
  • 企业网络优化湖北seo整站优化
  • 二百块做网站深圳网约车租赁公司哪家好
  • 软文500字范文WordPress博客程序优化
  • 企业网站内容如何备案建博会广州网站
  • 加工平台苏州纳米所海南seo排名
  • 个人适合做什么网站上海做网站建设的公司
  • 常见c2c网站有哪些网络文化经营许可证申请条件
  • 深圳龙华汽车网站建设移动页面
  • 陈巴尔虎旗网站建设重庆哪些网站推广公司
  • 网站做熊掌号码网站没被收录怎么办
  • 淘宝京东网站建设目的网站标题写什么作用