﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-Panda-随笔分类-Os</title><link>http://www.cppblog.com/Panda/category/11687.html</link><description /><language>zh-cn</language><lastBuildDate>Sun, 18 Oct 2009 05:58:46 GMT</lastBuildDate><pubDate>Sun, 18 Oct 2009 05:58:46 GMT</pubDate><ttl>60</ttl><item><title>一致与非一致性代码段</title><link>http://www.cppblog.com/Panda/archive/2009/10/18/98858.html</link><dc:creator>ChinaPanda</dc:creator><author>ChinaPanda</author><pubDate>Sat, 17 Oct 2009 18:08:00 GMT</pubDate><guid>http://www.cppblog.com/Panda/archive/2009/10/18/98858.html</guid><wfw:comment>http://www.cppblog.com/Panda/comments/98858.html</wfw:comment><comments>http://www.cppblog.com/Panda/archive/2009/10/18/98858.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/Panda/comments/commentRss/98858.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/Panda/services/trackbacks/98858.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: &nbsp;&nbsp;<a href='http://www.cppblog.com/Panda/archive/2009/10/18/98858.html'>阅读全文</a><img src ="http://www.cppblog.com/Panda/aggbug/98858.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/Panda/" target="_blank">ChinaPanda</a> 2009-10-18 02:08 <a href="http://www.cppblog.com/Panda/archive/2009/10/18/98858.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>第二章 系统架构浏览2.5</title><link>http://www.cppblog.com/Panda/archive/2009/09/27/97411.html</link><dc:creator>ChinaPanda</dc:creator><author>ChinaPanda</author><pubDate>Sun, 27 Sep 2009 15:13:00 GMT</pubDate><guid>http://www.cppblog.com/Panda/archive/2009/09/27/97411.html</guid><wfw:comment>http://www.cppblog.com/Panda/comments/97411.html</wfw:comment><comments>http://www.cppblog.com/Panda/archive/2009/09/27/97411.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/Panda/comments/commentRss/97411.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/Panda/services/trackbacks/97411.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: &nbsp;&nbsp;<a href='http://www.cppblog.com/Panda/archive/2009/09/27/97411.html'>阅读全文</a><img src ="http://www.cppblog.com/Panda/aggbug/97411.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/Panda/" target="_blank">ChinaPanda</a> 2009-09-27 23:13 <a href="http://www.cppblog.com/Panda/archive/2009/09/27/97411.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>CPU结构介绍</title><link>http://www.cppblog.com/Panda/archive/2009/09/23/96988.html</link><dc:creator>ChinaPanda</dc:creator><author>ChinaPanda</author><pubDate>Tue, 22 Sep 2009 16:10:00 GMT</pubDate><guid>http://www.cppblog.com/Panda/archive/2009/09/23/96988.html</guid><wfw:comment>http://www.cppblog.com/Panda/comments/96988.html</wfw:comment><comments>http://www.cppblog.com/Panda/archive/2009/09/23/96988.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/Panda/comments/commentRss/96988.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/Panda/services/trackbacks/96988.html</trackback:ping><description><![CDATA[<h1>64位处理器</h1>
这里的64位技术是相对于32位而言的，这个位数指的是CPU GPRs（General-Purpose
Registers，通用寄存器）的数据宽度为64位，64位指令集就是运行64位数据的指令，也就是说处理器一次可以运行64bit数据。64bit处
理器并非现在才有的，在高端的RISC（Reduced Instruction Set
Computing，精简指令集计算机）很早就有64bit处理器了，比如SUN公司的UltraSparc
Ⅲ、IBM公司的POWER5、HP公司的Alpha等。<br>
64bit计算主要有两大优点：可以进行更大范围的整数运算；可以支持更大的内存。不能因为数
字上的变化，而简单的认为64bit处理器的性能是32bit处理器性能的两倍。实际上在32bit应用下，32bit处理器的性能甚至会更强，即使是
64bit处理器，目前情况下也是在32bit应用下性能更强。所以要认清64bit处理器的优势，但不可迷信64bit。<br>
要实现真正意义上的64位计算，光有64位的处理器是不行的，还必须得有64位的操作系统以及
64位的应用软件才行，三者缺一不可，缺少其中任何一种要素都是无法实现64位计算的。目前，在64位处理器方面，Intel和AMD两大处理器厂商都发
布了多个系列多种规格的64位处理器；而在操作系统和应用软件方面，目前的情况不容乐观。因为真正适合于个人使用的64位操作系统现在就只有
Windows XP X64，而Windows XP X64本身也只是一个过渡性质的64位操作系统，在Windows
Vista发布以后就将被淘汰，而且Windows XP
X64本身也不太完善，易用性不高，一个明显的例子就是各种硬件设备的驱动程序很不完善，而且现在64位的应用软件还基本上没有，确实硬件厂商和软件厂商
也不愿意去为一个过渡性质的操作系统编写驱动程序和应用软件。所以要想实现真正的64位计算，恐怕还得等到Windows
Vista普及一段时间之后才行。<br>
目前主流CPU使用的64位技术主要有AMD公司的AMD64位技术、Intel公司的
EM64T技术、和Intel公司的IA-64技术。其中IA-64是Intel独立开发，不兼容现在的传统的32位计算机，仅用于Itanium（安
腾）以及后续产品Itanium 2，一般用户不会涉及到，因此这里仅对AMD64位技术和Intel的EM64T技术做一下简单介绍。<br>
AMD64位技术<br>
AMD64的位技术是在原始32位X86指令集的基础上加入了X86-64扩展64位X86指
令集，使这款芯片在硬件上兼容原来的32位X86软件，并同时支持X86-64的扩展64位计算，使得这款芯片成为真正的64位X86芯片。这是一个真正
的64位的标准，X86-64具有64位的寻址能力。<br>
X86-64新增的几组CPU寄存器将提供更快的执行效率。寄存器是CPU内部用来创建和储存
CPU运算结果和其它运算结果的地方。标准的32-bit
x86架构包括8个通用寄存器（GPR），AMD在X86-64中又增加了8组（R8-R9），将寄存器的数目提高到了16组。X86-64寄存器默认位
64-bit。还增加了8组128-bit
XMM寄存器（也叫SSE寄存器，XMM8-XMM15），将能给单指令多数据流技术（SIMD）运算提供更多的空间，这些128位的寄存器将提供在矢量
和标量计算模式下进行128位双精度处理，为3D建模、矢量分析和虚拟现实的实现提供了硬件基础。通过提供了更多的寄存器，按照X86-64标准生产的
CPU可以更有效的处理数据，可以在一个时钟周期中传输更多的信息。 <br>
EM64T技术<br>
Intel官方是给EM64T这样定义的：EM64T全称Extended Memory
64 Technology，即扩展64bit内存技术。EM64T是Intel IA-32架构的扩展，即IA-32e（Intel
Architectur-32
extension）。IA-32处理器通过附加EM64T技术，便可在兼容IA-32软件的情况下，允许软件利用更多的内存地址空间，并且允许软件进行
32 bit线性地址写入。EM64T特别强调的是对32 bit和64 bit的兼容性。Intel为新核心增加了8个64 bit
GPRs（R8-R15），并且把原有GRPs全部扩展为64 bit，如前文所述这样可以提高整数运算能力。增加8个128bit
SSE寄存器（XMM8-XMM15），是为了增强多媒体性能，包括对SSE、SSE2和SSE3的支持。<br>
Intel为支持EM64T技术的处理器设计了两大模式：传统IA-32模式（legacy
IA-32 mode）和IA-32e扩展模式（IA-32e
mode）。在支持EM64T技术的处理器内有一个称之为扩展功能激活寄存器（extended feature enable
register，IA32_EFER）的部件，其中的Bit10控制着EM64T是否激活。Bit10被称作IA-32e模式有效（IA-32e
mode active）或长模式有效（long mode active，LMA)。当LMA＝0时，处理器便作为一颗标准的32
bit（IA32）处理器运行在传统IA-32模式；当LMA＝1时，EM64T便被激活，处理器会运行在IA-32e扩展模式下。<br>
目前AMD方面支持64位技术的CPU有Athlon 64系列、Athlon
FX系列和Opteron系列。Intel方面支持64位技术的CPU有使用Nocona核心的Xeon系列、使用Prescott
2M核心的Pentium 4 6系列和使用Prescott 2M核心的P4 EE系列。<br><br><br>IA-32（Intel Architecture-32）称为英特尔32位结构，表示指令集结构ISA（Instruction Set Architecture）。<br><br>IA-32处理器（或称32位80x86处理器）就是指具有该指令集结构的处理器，例如英特尔公司的80386、80486以及Pentium各代处理器。AMD的32位处理器兼容这个结构。<br><br><img src ="http://www.cppblog.com/Panda/aggbug/96988.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/Panda/" target="_blank">ChinaPanda</a> 2009-09-23 00:10 <a href="http://www.cppblog.com/Panda/archive/2009/09/23/96988.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>第二章 系统架构浏览2.2-2.4小节</title><link>http://www.cppblog.com/Panda/archive/2009/09/22/96986.html</link><dc:creator>ChinaPanda</dc:creator><author>ChinaPanda</author><pubDate>Tue, 22 Sep 2009 15:59:00 GMT</pubDate><guid>http://www.cppblog.com/Panda/archive/2009/09/22/96986.html</guid><wfw:comment>http://www.cppblog.com/Panda/comments/96986.html</wfw:comment><comments>http://www.cppblog.com/Panda/archive/2009/09/22/96986.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/Panda/comments/commentRss/96986.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/Panda/services/trackbacks/96986.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: v\:* {behavior:url(#default#VML);}o\:* {behavior:url(#default#VML);}w\:* {behavior:url(#default#VML);}.shape {behavior:url(#default#VML);}Normal07.8 磅02falsefalsefalse...&nbsp;&nbsp;<a href='http://www.cppblog.com/Panda/archive/2009/09/22/96986.html'>阅读全文</a><img src ="http://www.cppblog.com/Panda/aggbug/96986.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/Panda/" target="_blank">ChinaPanda</a> 2009-09-22 23:59 <a href="http://www.cppblog.com/Panda/archive/2009/09/22/96986.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>