Я предлагаю использовать для этой цели следующую библиотеку: https://github.com/shirou/gopsutil/
Вот пример для получения общих и запущенных процессов:
package main
import (
"fmt"
"github.com/shirou/gopsutil/host"
"github.com/shirou/gopsutil/load"
)
func main() {
infoStat, _ := host.Info()
fmt.Printf("Total processes: %d\n", infoStat.Procs)
miscStat, _ := load.Misc()
fmt.Printf("Running processes: %d\n", miscStat.ProcsRunning)
}
Библиотека позволяет получить несколькодругие данные.Взгляните на документацию для получения доступной информации в соответствии с целевой операционной системой.