2011-11-08 8 views
7

Desidero aggiungere una voce per elaborare la struttura del blocco di controllo (task_struct). Diciamo un modo per taggare qualche processo. Voglio inizializzare questo campo a 0 per tutto il processo tranne "alcuni processi speciali", in seguito chiamando lo sched_setscheduler() Imposterò questo flag per i "processi speciali".Aggiunta di una voce a task_struct e inizializzazione sul valore predefinito

Qualcuno ha un'idea su come assegnare un valore predefinito a una variabile membro in task_struct?

risposta

10

Suppongo che tu stia parlando di un recente kernel Linux, perché i dettagli dell'implementazione cambiano nel tempo.

Ci sono due opzioni. Il primo - è possibile impostare il valore della variabile nel init_task globale. Guarda come è fatto nell'intestazione linux/init_task.h. La seconda opzione consiste nell'aggiungere il codice a copy_process, che potrebbe essere necessario fare comunque per gestire correttamente l'ereditarietà fork() del campo che si sta aggiungendo.

Problemi correlati