it167.com  设为主页
 收藏本站
 
  资讯:业界动态 | 软件动态 | 人物专栏 | 安全资讯 | 网络生活 | 电子商务 | 小游戏 | 视频 | 美女图片 | 音乐
  网络编程 | 网站运营 | 网页制作 | 图形图象 | 操作系统 | 媒体动画 | 软件教学 | 网络应用 | 邮件系统 | 网络安全 | 认证考试
asp | .net | php | jsp | Sql | java | Dreamweaver | FrontPages | Javascript | css | Coreldraw | photoshop | Flash | Coreldraw
当前位置: > 主页>操作系统>windows 2003>安腾64位技术概述
最新新闻

·机会与整合 边缘化互联
·TOM-Skype新增三大本地
·雅虎抢闸邮箱竞赛 网易
·新浪抢攻北京奥运
·洞悉网络口碑的掘金机会
·拆解网络病毒黑金交易
·木马下载器近期出现新变
·《互联网周刊》第17期文
·Web2.0是否催生自吹自擂
·三张宝宝裸照招来MSN封
热门新闻
·如何在Windows 2003中得
·微软发布WinServer2003
·Windows 2003 打sp1补丁
·远程如何修改Windows 20
·在Win 2003系统中挖掘免
·Windows 2003安全设置大
·Win Server2003常见问题
·Windows2003校园Web服务
·Windows Server 2003全
·架设Windows Server 200
推荐新闻
 
 

安腾64位技术概述 

作者:   来源:it167   点击:   日期:2007-01-27

EFI:Itanium 的 BIOS

Itanium 的 BIOS 并不是您通常熟悉的个人计算机的 BIOS。可扩展固件接口 (EFI) 是将操作系统从 BIOS 和硬件中分离出来的抽象层。EFI Shell 与 Windows 中的命令提示符很相似。在某些方面,EFI Shell 就像是一个内置的小型操作系统。从 EFI Shell,您可以访问驱动器(包括 CD-ROM)、运行可执行文件(例如 Windows 的安装程序),甚至可以执行简单的文本编辑。系统配置数据存储在非挥发性内存中,而不是存储在硬盘上,并且可以通过 EFI Shell 进行配置。

EPIC:Intel 的顺序处理器

Itanium 是一种顺序处理器,意味着它会以指令提供的顺序来执行这些指令。这与普通的 x86 处理器不同,x86 处理器在可能的情况下会在管线中重新排序指令,然后尝试并行执行指令。对于 Itanium 而言,编译器必须明确地排序指令,然后负责检查指令之间的相互依存关系。编译器还必须负责通知处理器可以并行执行的指令。Intel 有一个为此定义的新术语:EPIC。EPIC 表示明确并行指令集计算。它负责编译器执行所有优化。处理器将不会进行任何重新排序。这使得编译器责任更加重大,稍后将在本文中进行讨论。

执行单元

Itanium 由九个执行单元组成,如下所示:

两个整数单元

两个整数/负载存储单元

两个浮点单元

三个分支单元

Itanium 具有一个十阶管线,负责提取、解码和执行指令。Itanium 最多可以同时处理六条指令。

寄存器

Itanium 具有多达 328 个寄存器:128 个 64 位整数通用寄存器、128 个 82 位浮点寄存器、64 个 1 位谓词寄存器、8 个分支寄存器以及用于各种目的的其他寄存器的集合,例如 x86 后向兼容性(当运行在 x86 兼容模式中时,Itanium 会将一些 x86 寄存器映射到 64 位寄存器上,同时提供专门用于处理器的 x86 模式的其他寄存器)。

要协助管理如此大量的寄存器,Itanium 有能力同时设计和轮换寄存器。我们将通用寄存器分成两组:前 32 个寄存器是固定的、全局寄存器。后 96 个寄存器可以用于设计和轮换。

寄存器设计

ALLOC 指令用于建立寄存器框架。寄存器框架将物理寄存器(硬件)映射到逻辑寄存器(软件)上,这样当调用某个函数时,不再需要推出或弹出所有参数,编译器就可以为子例程分配一定范围的寄存器,其中的一些寄存器可能会映射到父例程的寄存器上。可以在两者之间重叠的寄存器用于传递参数。这样比将参数推出和弹出到堆栈上更为有效。当然,推出和弹出参数的传统方法仍然可以使用。

由于前 32 个寄存器是固定的,您无法设计它们。因此,可以设计的寄存器的最大数量为(其余的)96 个寄存器。另外,只有整数寄存器可以设计,浮点寄存器和谓词寄存器不能进行设计。

寄存器轮换

寄存器也可以轮换或转移到一个或多个位置。在解开循环时,这可能很有帮助,因此使用不同的物理寄存器,在不相互干预的情况下,那些周而复始地在相同的寄存器集中运行的循环可以同时运行。利用这个选项,编译器可以更进一步改进指令的并行处理。

指令集

IA-64 指令是 41 位长的指令。指定 128 个通用寄存器中之一需要使用七位,并且指定两个源寄存器和一个目标寄存器,一共是 21 位。每条指令可以指定 64 个谓词寄存器中的一个,再加上 6 位。这占用了 27 位,而我们尚未指定实际的操作代码。

指令封装到 128 位的“绑定”中。其中三条指令(123 位),再加上 5 位模板字段。然后,这些绑定会被汇编到“组”中。组是理论上可以同时执行的指令集合。组中的指令没有相互依存关系。在编译时,编译器必须对此进行计算并对绑定一起分组。处理器将不会再次检查编译器的工作,所以编译器必须保证其正确。组可以是任意的长度。模板字段中的一位表示组的结束。

绑定和组是不同的。绑定是指令分派到处理器的方式。Itanium 的总线和解码电路为 128 位宽,刚好用于 3 条指令(Itanium 实际上同时分派两个绑定)。组是指令进行交互的逻辑方式。



文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【论坛讨论

   相关文章:
·Windows Server 2003 x64版兼容性不容乐 ·微软将加大64位操作系统的开发力度
·微软宣布免费赠送虚拟服务器软件 ·最后关头:Windows Vista之变化
·微软64位技术能给开发人员提供更大的内存 ·专访微软CEO鲍尔默:Windows将走向衰落?

   文章评论:(0条)
  
 请留名: 匿名评论   点击查看所有评论 网管论坛
 

  责任编辑:it167  声明:刊登此文章是为了传递更多信息,文章内容仅供参考,转载请注明出处。