当前位置: 技术问答>linux和unix
LINUX内核高手帮帮忙
来源: 互联网 发布时间:2016-04-06
本文导语: 请问LINUX核心到底能否实现真正的多线程(并行处理), 也就是A,B两个程序真正的同时运行(多CPU情况下)。 感觉介绍的所有多线程函数都需要睡眠才能运行,所以内核根本不能真正的多线程。 如果真的能,那么...
请问LINUX核心到底能否实现真正的多线程(并行处理),
也就是A,B两个程序真正的同时运行(多CPU情况下)。
感觉介绍的所有多线程函数都需要睡眠才能运行,所以内核根本不能真正的多线程。
如果真的能,那么如何使用,请大体的介绍下。
也就是A,B两个程序真正的同时运行(多CPU情况下)。
感觉介绍的所有多线程函数都需要睡眠才能运行,所以内核根本不能真正的多线程。
如果真的能,那么如何使用,请大体的介绍下。
|
好像不能,在2.6的内核上,线程是不能在两个CPU上进行调度的,也就是只能在一个CPU上分时调用,如果你一定要用多CPU的优势的话,就用多进程处理,用并行计算的思路
|
2.6上可以的,用set_cpu_allow() (函数名可能有点忘了)将线程绑定到不同的CPU上运行。
|
可以。
楼主问的如何使用是什么意思?set_cpu_affinity?
楼主问的如何使用是什么意思?set_cpu_affinity?
|
可以用sched_getaffinity获取,sched_setaffinity设置。
能不能并行,跟应用实现有关。
能不能并行,跟应用实现有关。
|
2.6后是可以的,不用设置,绑定cpu只是说只在他在指定的cpu上运行.
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。