PID/ProcessInfoRec -> användare?

Tråden skapades och har fått 2 svar. Det senaste inlägget skrevs .
1
  • Oregistrerad
  • 2006-10-05 15:18

Hur får man ut vilken användare som startat en viss process på ett snyggt sätt (dvs inte använda sig av t ex ps)? C++ är språket jag använder. Nu använder jag ProcessInfoRec för att plocka ut info om processer.. men hittar ingenstanns om hur jag kan knyta en process till en användare. Kommandot ps lyckas bra med det.. men det gör inte jag

Du borde kunna använda kvm_getprocs() med KERN_PROC_PID och din pid för att få en struct kinfo_proc som innehåller uid. Alternativt använda sysctl() med CTL_KERN/KERN_PROC/KERN_PROC_PID, men jag tror det blir samma effekt som kvm_getprocs(). Den gör skillnad på real user id och effective user id (p->e_pcred.p_ruid respektive p->e_ucred->cr_uid).

  • Oregistrerad
  • 2006-10-06 15:17

Schysst! Det fixade sig! Tackar!

1
Bevaka tråden