Ядро Линукс Управление процессами Процесс — это основная единица исполнения программного кода в операционной системе. Основные характеристики процесса: - Исполняет код программы.
- Оперирует системными ресурсами (файлы, память, устройства).
- Работает с виртуальной памятью.
- Может быть разбит на потоки (threads), которые позволяют исполняться параллельно на нескольких ядрах процессора. Каждый процесс (как и поток) описывается специальной структурой task_struct. Пример (упрощённый фрагмент): struct task_struct {
struct thread_info thread_info; // информация о потоке
long state; // текущее состояние процесса
void *id650111 (*stack); // указатель на стек
unsigned int cpu; // номер ядра, на котором исполняется
atomic_t usage; // статистика использования CPU
int prio; // приоритет
struct mm_struct *mm; // виртуальная память процесса
int exit_state; // состояние завершения
int exit_code; // код завершения
int exit_signal; // сигнал, который будет отправлен при завершении
pid_t pid; // идент