感谢您到目前为止的所有回答!
我有一个双核处理器,我希望所有进程都在运行 在 core1 但一个。我现在知道我可以使用 taskset 将所有当前运行的设置为 例如,绑定(bind)到处理器 1。现在我希望我的 OWN 应用程序被安排 用于在启动应用程序后立即在处理器 2 上执行。换句话说, 有什么方法可以告诉我的应用程序中的操作系统我想让这个特定程序在 2 号处理器上执行吗?
非常感谢, 马雷卡
最佳答案
看看这篇文章:
http://www.linuxjournal.com/article/6799
详细介绍了主题。
简而言之,确保“init”开始时对一个过程有亲和性(它的 child 将继承),然后你会想要使用:
// (Declaration got via 'man sched_setaffinity')
int sched_setaffinity(pid_t pid, size_t cpusetsize,
cpu_set_t *mask);
在程序启动后立即设置进程亲和性。
关于linux - Linux 上的处理器亲和性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2149463/