Buckminster
(usa Debian)
Enviado em 04/12/2023 - 22:55h
É isso que está procurando?
1.4 What are exclusive cpusets ?
If a cpuset is cpu or mem exclusive, no other cpuset, other than a direct ancestor or descendant, may share any of the same CPUs or Memory Nodes.
A cpuset that is cpuset.mem_exclusive or cpuset.mem_hardwall is "hardwalled", i.e. it restricts kernel allocations for page, buffer and other data commonly shared by the kernel across multiple users. All cpusets, whether hardwalled or not, restrict allocations of memory for user space. This enables configuring a system so that several independent jobs can share common kernel data, such as file system pages, while isolating each job's user allocation in its own cpuset. To do this, construct a large mem_exclusive cpuset to hold all the jobs, and construct child, non-mem_exclusive cpusets for each individual job. Only a small amount of typical kernel memory,
such as requests from interrupt handlers, is allowed to be taken outside even a mem_exclusive cpuset.
https://docs.kernel.org/admin-guide/cgroup-v1/cpusets.html
Nesse link acima tem mais coisas interessantes.
E provavelmente tu teria que incluir algo como
#define TASK_INTERRUPTIBLE 1 <<< o valor que você deseja.
no sched.h.
Tem também:
#define TASK_RUNNING 0
#define TASK_UNINTERRUPTIBLE 2
#define __TASK_STOPPED 4
#define __TASK_TRACED 8
Aí você vê.
_________________________________________________________
Always listen the Buck!
Enquanto o cursor estiver pulsando, há vida!