Linux有' cpu hotplug '启用/禁用cpu的功能。
我想禁用其中一台电脑'来自C程序的cpus,所以我的问题是 - 如何?可能吗 ?
Here我发现了以下内容:
问:我如何在逻辑上离线CPU?
答:执行以下操作: #echo 0> / SYS /装置/系统/ CPU / cpuX /在线
Coudlnt在本文档中找到了有关系统调用的任何信息,所以希望有人可以对此有所了解,谢谢!
答案 0 :(得分:1)
在Linux中没有用于禁用cpu的系统调用。你找到的文章是唯一的方法。但您可以将shell脚本重写为以下内容:
static void set_cpu_online(int cpu, int online)
{
int fd;
int ret;
char path[256];
snprintf(path, sizeof(path) - 1,
"/sys/devices/system/cpu/cpu%d/online", cpu);
fd = open(path, O_RDWR);
assert(fd > 0);
ret = write(fd, "0" + (online ? 1 : 0), 1);
assert(ret == 1);
}