Создание раздела ext2 на FreeBSD 10.1, работающем на платформе x86 с разделением MBR

Глядя прямо на исходный код ядра, вы можете просматривать задачи, подобные приведенным ниже.

struct task_struct *process, *thread;
int cnt = 0;

rcu_read_lock();
for_each_process_thread(process, thread) {
    task_lock(thread);

/* do something with the task properties:

     thread->state;
     thread->wake_cpu;
     thread->pid;
     thread->comm;
*/

    task_unlock(thread);
    cnt++;
}
rcu_read_unlock();

Самая важная часть - заблокировать задачи RCU при входе и разблокировать при выходе. Вы запрограммируете этот дамп в модуле ядра и предоставите среднее для получения списка в команде пользовательского пространства.

Я предлагаю вам прочитать и улучшить мой пример в GitHub @ dumptask

2
11.09.2017, 13:35
0 ответов

Теги

Похожие вопросы