6 #ifndef UTILS_UTL_ISOLCPUS_H
7 #define UTILS_UTL_ISOLCPUS_H
13 namespace mcx::utils {
17 std::string proc_path;
18 std::string proc_name;
21 void isolateCpuList(
const std::vector<uint32_t>& cpu_list);
23 std::vector<ProcessInfo> getProcessId(
const std::vector<std::string>& proc_list);
25 bool bindIrqList(
const std::vector<uint32_t>& cpu_list,
const std::vector<uint32_t>& irq_list);
27 bool bindProcList(
const std::vector<uint32_t>& cpu_list,
const std::vector<std::string>& proc_list);
29 void resetIsolateCpu();
31 std::vector<uint32_t> getAllCpu();
33 std::vector<uint32_t> getAvailableCpu();
35 std::vector<uint32_t> getIsolatedCpu();
37 cpu_set_t toCpuSet(
const std::vector<uint32_t>& cpu_list);
39 std::vector<uint32_t> fromCpuSet(
const cpu_set_t& cpuset);
43 #endif // UTILS_UTL_ISOLCPUS_H