论操作系统对双核和多路CPU的支持

celineshi 2006-11-08 09:25:08
简单地说,双核就是将两个计算内核集成在一个硅晶元上,从而提高计算能力;多核就是将多个计算内核集成到一个硅晶元上。事实上,双核和多核处理器并不是什么新概念。IBM、惠普公司早在上个世纪末就提出了双核处理器概念,并推出了相应的产品。比如IBM的 Power 处理器、惠普的PA - 8800 处理器。去年底,Sun还推出了8内核的Sparc UltraSPARC T1处理器。目前,双核技术已被普遍运用于X86处理器中,比如英特尔和AMD最新推出的处理器均采用了双核。与此同时,众多OEM厂商也先后推出了基于双核X86处理器的服务器、台式机和笔记本产品。2006年,基于双核的产品成为市场主流已成为事实。

而多路对称(英文缩写为 SMP)则是采用两颗相同型号并且能够支持SMP技术的CPU组成的一套系统。SMP的全称是“对称多处理 ” (Symmetrical Multi-Processing)技术,是指在一个计算机上汇集了一组处理器(多CPU),各CPU之间共享内存子系统以及总线结构。它是相对非对称多处理技术而言的、应用十分广泛的并行技术。在这种架构中,同时由多个处理器运行操作系统的单一复本,并共享内存和一台计算机的其他资源,系统将任务队列对称地分布于多个CPU之上,从而极大地提高了整个系统的数据处理能力。所有的处理器都可以平等地访问内存、I/O和外部中断。在对称多处理系统中,系统资源被系统中所有CPU共享,工作负载能够均匀地分配到所有可用处理器之上。我们平时所说的双路CPU系统,实际上是对称多处理系统中最常见的一种形式,常用于主流的X86服务器和图形工作站领域。

最简单的说法,双核=1颗CPU两个核心,双路=两个对称的CPU(这颗CPU也可以是双核的CPU),但是使用一颗双核的CPU并不能就认为已经构成双路系统,这两者之间仍然存在一些差异。

而大部分用户所面对的疑惑就是:假如我购买了一套双核的服务器系统或者双路的服务器系统,那么我要安装什么操作系统才是支持这种服务器的呢?
双核多路服务器与操作系统

首先,双核虽然是近2年才热起来的一项技术,但是操作系统对于双核的支持却非常容易解决,因为双核不同于64位,它和操作系统没什么联系,大家平时一边下载东西,一边聊天,一边听音乐就是一种多任务处理,而双核就可以理解为对于同时做多个任务有优化,当然更好的解释是,只要操作系统支持多任务操作,那么双核就能发挥作用,我们日常用的操作系统是都支持多任务的,从经典的 Windows 98 到 现在主流的 Windows XP 都可以,用户甚至不需要安装服务器版的操作系统就能够良好的支持双核处理器,只有 DOS 这种比较古典的单任务操作系统不能支持双核。所以,与其说双核需要什么操作系统来支持,倒不如多关系一下什么主板支持双核处理器更有实际意义。

那么,为什么网上有不少报道说XX软件开发商推出支持 Intel、AMD 双核处理器的操作系统,其实这种说法带点歧义,因为 AMD 和 Intel 的双核处理器都是64位的,在以前的操作系统上无法以64位模式运行,只能跑32位兼容模式,因此软件开发商推出新的操作系统是为了对64位的处理器提供支持,当然,也不排除开发商会对多任务的执行效率进行改进,从而更好的支持双核技术。

接下来就是多路的问题了。要支持双路以及多路的服务器,必须安装相应的操作系统才行。例如用户如果安装Windows 2000 Professional,那么将无法获得双路SMP的支持,必须选择Windows 2000 Server,当然选择Windows 2000 Advanced Server也可以,但是价钱比较昂贵。

如果从文字上表述会比较复杂,大家查看下表就非常清楚了:

操作系统 2 路 4 路 8 路 32 路
Windows 2000 Professional × × × ×
Windows 2000 Server √ × × ×
Windows 2000 Advanced Server √ √ × ×
Windows 2000 Datacenter Server √ √ √ √
Windows XP Home Edition × × × ×
Windows XP Professional Edition √ × × ×
Windows Server 2003 Web Edition √ × × ×
Windows Server 2003 Standard Edition √ √ × ×
Windows Server 2003 Enterprise Edition √ √ √ ×
Windows Server 2003 Datacenter Edition √ √ √ √


如果是Linux做操作系统,那么情况就比较复杂,因为Linux是开源的,被不同的软件开发商改制出若干个版本,因此不同开发商的不同版本能够支持的 SMP数量也不同,具体情况可以在购买时咨询销售人员,另外需要特别指出的是,Linux在购买服务器版的时候有一个单独的类似于License(认证)的东西,用户可以根据自己服务器的处理器数量选择购买相应的License,一般是以物理CPU为标准,不过双核推出之后,License的计算方式也有些争议,一些软件开发商就坚持要把双核处理器按照两个CPU的价格收费。

虽然双核不像SMP系统那样需要操作系统的良好支持,但是,选择高效的 OS 还是能够更好的发挥服务器的性能,因此,不管您是打算购买双核服务器还是双路服务器,对操作系统的选择也是非常重要的。
...全文
2755 25 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
25 条回复
切换为时间正序
请发表友善的回复…
发表回复
mikebomb 2006-12-01
  • 打赏
  • 举报
回复
误人子弟
熊孩子开学喽 2006-11-30
  • 打赏
  • 举报
回复
楼主的帖子自相矛盾。
前面说:
...只要操作系统支持多任务操作,那么双核就能发挥作用,我们日常用的操作系统是都支持多任务的,从经典的 Windows 98 到 现在主流的 Windows XP 都可以,用户甚至不需要安装服务器版的操作系统就能够良好的支持双核处理器...
后面给出的例子又说:
操作系统 2 路 4 路 8 路 32 路
Windows 2000 Professional × × × ×
...
Windows XP Home Edition × × × ×
难道这两个是单任务系统啊
nwafeng 2006-11-23
  • 打赏
  • 举报
回复
给INTEL搞晕了,推陈出新的速度太快了,快得跟不上了.
threenewbee 2006-11-18
  • 打赏
  • 举报
回复
扯淡,我的双 PIII450 双 PIII800,Athlon64 X2,Pentium D 和 Pentium 4 C HT 都可以在 2000 Profreesional 下认成双 CPU! Professional 支持 2 Socket 处理器,如果搭配带 HT 的双核至强双处理器,在 XP Professional 下,8 个逻辑 CPU 都可以被识别!
zyl910 2006-11-16
  • 打赏
  • 举报
回复
双核跟双CPU在接口技术层次是一样的
甚至包括超线程,每个逻辑CPU都有一个本地APIC

操作系统就是通过对APIC的管理来实现SMP的
它并不知道芯片的物理实现
middle 2006-11-16
  • 打赏
  • 举报
回复
“虽然双核不像SMP系统那样需要操作系统的良好支持”

这个?不能这么说吧。应用双核最简单的方式就是SMP,所以至少对双核需要同SMP一样需要OS的良好支持。再者,如果要进一步发挥双核的效率,就必须让OS对双核的CPU拓扑进行优化,这就是说,双核需要比SMP*更好*的OS支持。
_V_ 2006-11-12
  • 打赏
  • 举报
回复
比如英特尔和AMD最新推出的处理器均采用了双核
===========================================
...
无语
AMD的是64位
INTEL的是双核



=================================================================
我更无语!
dgcergo 2006-11-11
  • 打赏
  • 举报
回复
双核的不都是64位的,比如T2050所属CoreDuo。
tigerwithwing 2006-11-10
  • 打赏
  • 举报
回复
期待牛人来博LZ
bachelor2001 2006-11-09
  • 打赏
  • 举报
回复
有没有牛人再纠正并系统总结一下?
pjie131 2006-11-09
  • 打赏
  • 举报
回复
收藏
Fenris 2006-11-09
  • 打赏
  • 举报
回复
有错误 但仍是篇好文章
wangkai_6662004 2006-11-09
  • 打赏
  • 举报
回复
hao
rikee19810706 2006-11-09
  • 打赏
  • 举报
回复
mark~
小雨绿茶 2006-11-08
  • 打赏
  • 举报
回复
好贴子,顶啊
kingse 2006-11-08
  • 打赏
  • 举报
回复

比如英特尔和AMD最新推出的处理器均采用了双核
===========================================
...
无语
AMD的是64位
INTEL的是双核
zyl910 2006-11-08
  • 打赏
  • 举报
回复
x86体系是靠APIC(高即可编程中断控制器)实现SMP的:
每个CPU有个 本地APIC
北桥芯片有个 IO APIC,负责仲裁
dealmax 2006-11-08
  • 打赏
  • 举报
回复
多了解点东西
BadEnglish 2006-11-08
  • 打赏
  • 举报
回复
Windows 98 并不支持多处理器
“一边下载东西,一边聊天,一边听音乐” 这种事一个CPU就够了,
让多个CPU做一件事才是难点
DNCSLW 2006-11-08
  • 打赏
  • 举报
回复
我看的不是很明白
加载更多回复(5)

568

社区成员

发帖
与我相关
我的任务
社区描述
英特尔® 边缘计算,聚焦于边缘计算、AI、IoT等领域,为开发者提供丰富的开发资源、创新技术、解决方案与行业活动。
社区管理员
  • 英特尔技术社区
  • shere_lin
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧