免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2368 | 回复: 3
打印 上一主题 下一主题

请问Linux在SMP系统中是如何实现不同处理器间通信的? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-06-11 09:03 |只看该作者 |倒序浏览
1可用积分
目前正在学习Linux SMP方面的东西
找到一些资料说现在的双核CPU,每个CPU有自己的APIC单元用来做处理器间通信
可是又有很多资料说这个功能一般是不开启的
比较困惑,请高手指点
1。Linux SMP处理器间还是通过以前的IPC机制通信么?
2。如果是,请给个详细的解释谢谢!!!

论坛徽章:
0
2 [报告]
发表于 2008-06-11 18:05 |只看该作者
>>找到一些资料说现在的双核CPU,每个CPU有自己的APIC单元用来做处理器间通信

是的

>>可是又有很多资料说这个功能一般是不开启的

不开启就没有SMP

>>1。Linux SMP处理器间还是通过以前的IPC机制通信么?

IPC和SMP处理器间通信毫无关系,SMP处理器之间通过Local APIC通讯


>>2。如果是,请给个详细的解释谢谢!!!

详细的解释见Intel的手册

论坛徽章:
0
3 [报告]
发表于 2008-06-18 15:30 |只看该作者
很感谢您的回答,也许我的问题没有问得太清楚:

1。在单CPU系统中,Linux 各个进程间是通过IPC来进行通信的
那如果在双核CPU系统中(假设分别为CPU0和CPU1),而且Linux SMP开启。 那如果进程A运行在CPU0上
而进程B运行在CPU1上,那么进程A B间的通讯方式和A B在同一个CPU上运行时有什么本质的差别么?
我个人认为是没差别的,请高手指点下!

2。这种通讯需要额外的中断(IPI)支持么?

论坛徽章:
0
4 [报告]
发表于 2008-06-18 16:28 |只看该作者
原帖由 whb2108 于 2008-6-18 15:30 发表
很感谢您的回答,也许我的问题没有问得太清楚:

1。在单CPU系统中,Linux 各个进程间是通过IPC来进行通信的
那如果在双核CPU系统中(假设分别为CPU0和CPU1),而且Linux SMP开启。 那如果进程A运行在CPU0上
...

进程间通信跟处理器没什么关系,纯软件的
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP