我可以調用哪些庫函數來獲取進程映射到內核或給出進程ID告訴我它正在運行的是哪個核心,它上次運行還是計劃運行。所以像這樣:如何在C中獲得核心映射的進程?
core 1: 14232,42323
core 2: 42213,63434,434
core 3: 34232,34314
core 4: 42325,6353,1434,4342
core 5: 43432,64535,14345,34233
core 6: 23242,53422,4231,34242
core 7: 78789
core 8: 23423,23124,5663
我sched_getcpu
返回調用進程的核心號碼。如果有一個給定進程ID的函數,會返回一個很好的核心數字,但我沒有找到一個。 sched_getaffinity
也沒有用;它只是告訴你給定一個過程什麼核心它可以運行哪個不是我感興趣的。
在給定的時刻CPU核心運行最多一個進程... –
爲什麼要問?想用這些無用的信息做什麼? –
我編輯它。我有一個倉庫和有限數量的流程。知道在哪些內核上運行哪些進程對我來說非常重要。另外,不要忘記,你可以在一個核心上設置進程,以便它只能在該核心上運行。 – theRealWorld