免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: send_linux
打印 上一主题 下一主题

系统程序员之---x86x64体系探索及编程实践经验谈(获奖名单已公布2013-1-7) [复制链接]

论坛徽章:
0
51 [报告]
发表于 2012-11-16 18:20 |只看该作者
Intel先专注的是IA64,一种完全摒弃X86的架构,但这不太符合现实需求,因为这样会导致太多的陈旧资源无法兼容使用,而AMD搞了一个AMD64,可以完全兼容之前的X86架构,在实践中获得成功,进而Intel才弄了一个EMT64,这个与AMD64完全兼容。

没有具体的问题,所以也不好说什么具体的东东,但根据我的个人经验,对于这些底层的细节,一般的程序员不会去了解,正如前面几个网友所说,工作中也很难用到,不过有几个地方也许大多数的程序员都会用得到:

1,X64程序的调用规约,即ABI,这参考的是AMD的文档:
http://www.x86-64.org/documentation.html
为什么这个会用得到,是因为c程序员太多了,而c底层比较清楚的话,那么提供的寄存器、c函数的参数传递、程序加载连接等,看这本手册是必须的;了解这些对于查c程序的问题(比如踩栈、溢出等)还是非常有帮助的。

2,虚拟化的兴起,那么对于这方面的关注肯定会越来越多:
我之前做过一段时间的Intel CPU虚拟化开发,查看的手册是:Intel? 64 and IA-32 Architectures Software Developer's Manual Volume 3B System Programming Guide,这在Intel官方下载得到。

3,Linux kernel 3.4提供了一个有意思的东东叫做X32 ABI,感兴趣的可以看看这里:http://lenky.info/tag/x32-abi/

PS:之前看过mik的站点,很赞。

论坛徽章:
0
52 [报告]
发表于 2012-11-16 22:35 |只看该作者
本帖最后由 superwiles 于 2012-11-16 22:51 编辑

回复 47# amarant


现在的x86(自 Pentium 4之后 除了 atom)  本质上都是risc, 上层保留的那都是为了向后兼容,有专门的decode layer, 下面全是uops,纯risc了,



   

论坛徽章:
0
53 [报告]
发表于 2012-11-17 12:56 |只看该作者

对于不是搞底层开发的我也说说我的一些看法:

记得学校里边学过的就是8088,8086这些,要想深入对x86体系结构的了解,先对那些cpu结构是8位,16位的一定要掌握。

基础打牢了,再深入了解32位的,甚至64位的。

一般说的bios,也就是主板上的一块ROM存储芯片,像网卡,显卡也有自己的ROM装有自己的BIOS。

BIOS中存储硬件设备的一些信息,完成对设备的基本输入输出功能。

其他的一些芯片如主板上的RAM,内存条的RAM,显存的RAM或ROM,网卡ROM等等........就多了去了。

不过总的说来,这些存储器芯片共同特点:都和cpu总线相连,cpu对他们读写都是通过那三大总线去操作。





论坛徽章:
0
54 [报告]
发表于 2012-11-17 13:28 |只看该作者
发现图书作者就是mik版主,作为cuer,这贴得支持,得顶上去!

论坛徽章:
2
程序设计版块每日发帖之星
日期:2015-06-17 22:20:00每日论坛发贴之星
日期:2015-06-17 22:20:00
55 [报告]
发表于 2012-11-17 17:47 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
3
15-16赛季CBA联赛之山东
日期:2016-10-30 08:47:3015-16赛季CBA联赛之佛山
日期:2016-12-17 00:06:31CU十四周年纪念徽章
日期:2017-12-03 01:04:02
56 [报告]
发表于 2012-11-17 20:27 |只看该作者
回复 51# lenky0401


    感谢斑竹提供的链接。

论坛徽章:
0
57 [报告]
发表于 2012-11-19 00:42 |只看该作者
希望大家发表自己的看法!我先赞成一下

论坛徽章:
5
丑牛
日期:2014-01-21 08:26:26卯兔
日期:2014-03-11 06:37:43天秤座
日期:2014-03-25 08:52:52寅虎
日期:2014-04-19 11:39:48午马
日期:2014-08-06 03:56:58
58 [报告]
发表于 2012-11-20 09:48 |只看该作者
只有经过全方位的测试才是最为真实可靠的,关键是工作中用不上。

论坛徽章:
0
59 [报告]
发表于 2012-11-20 11:05 |只看该作者
回复 12# mik

前两章试读章节已经完全读完,感触颇深,它不同于大学时候学习的那些所谓的教材,简单概括的介绍一下就行了,而是写的很详细而且很注重细节内容,希望能够有机会品读本书的其它章节内容,期望作者能够出更多的技术类图书,供广大开发者学习和参考。非常感谢!


   

论坛徽章:
2
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:53:17
60 [报告]
发表于 2012-11-20 13:14 |只看该作者
superwiles 发表于 2012-11-16 22:35
回复 47# amarant


不是从Pentium 4开始的,是从P6开始的。

Pentium 4是产品,其microarch是NetBurst

P6是microarch,其第一款产品是Pentium Pro -- 从这就开始了uops。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP