CPU是如何管理 分布在多个核上运行的代码块的

cancyjimmy 2008-04-28 04:05:00
总问题:CPU是如何管理 分布在多个核上运行的代码块的?
如下三个子问题
1.Thread Join
T1在Core1上运行, T2在Core2上运行,并且T2执行一个长耗时的操作,
在T1 runnable代码块中,有如下的伪代码:
T2.join();
哪么,是如何做到分布运行在两个核上的线程保持联合的?有什么内幕?

2.Wait/Notify 和Thread DeadLock
场景同问题1,T1开始sleep();
T2中,如何保证唤醒T1,
...全文
109 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
cancyjimmy 2008-05-04
  • 打赏
  • 举报
回复
多谢2楼关于“多核中线程调度的方式”的简述。
AtomII 2008-04-30
  • 打赏
  • 举报
回复
线程调度是操作系统的事情,关于多核中线程调度的方式,一般有以下几种比较突出的方式:
1.加载共享
2.组调度
3.专用处理器调度
4.动态调度
如果楼主想要具体了解内幕就先了解以上几种方式看看
intel_jeff 2008-04-29
  • 打赏
  • 举报
回复
硬件上并没有、也不需要考虑的这么复杂,线程调度是由OS来完成的,线程管理需要程序员来做。
cpu上的每个核只需要自己完成自己的工作就可以了。线程间事件的传递有OS帮你完成。

567

社区成员

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

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