Qual è la migliore pratica per la creazione di un demone con launchd che viene eseguito con priorità inferiore a quella predefinita

5

Ho un demone che vorrei parallelizzare fino al numero di core sulla macchina di un utente, ma non voglio interferire con le attività in primo piano. Tradizionalmente, in Unix, eseguivo semplicemente questo daemon su nice = 1, ad es.

nohup nice -n 1 MyDaemon &

La documentazione di Apple launchd plist include diversi elementi che parlano di problemi prioritari, ma sono vagamente definiti, in particolare,

ProcessType=Background
LowPriorityIO=true
Nice=N

Esiste un luogo in cui è definito il comportamento esatto di ProcessType = Background? Sembrerebbe che potrebbe essere "più intelligente" rispetto all'impostazione di Nice e LowPriorityIO.

    
posta Steve Broberg 10.10.2014 - 15:05
fonte

1 risposta

2

Riepilogato da man launchd.plist :

LowPriorityBackgroundIO : specifica se il kernel deve considerare questo demone come a bassa priorità quando esegue l'I / O del file system quando il processo viene limitato con la classificazione in background di Darwin.

ProcessType : questa chiave opzionale descrive, ad alto livello, lo scopo previsto del lavoro. Il sistema applicherà limiti di risorse in base al tipo di lavoro. Se non specificato, il sistema applicherà limiti di risorse di luce al lavoro, limitando il suo utilizzo della CPU e la larghezza di banda I / O.

ProcessType = Background : i lavori in background sono generalmente processi che svolgono attività che non sono state richieste direttamente dall'utente. I limiti di risorse applicati allo Sfondo hanno lo scopo di impedire che interrompano l'esperienza utente.

    
risposta data 10.10.2014 - 15:42
fonte

Leggi altre domande sui tag