Linux x86_64Escalonamento#251
ioprio_set
Define a prioridade de E/S (I/O scheduling class/priority) de um processo ou thread.
Descrição
Ajusta como o escalonador de E/S do bloco (ex.: CFQ/BFQ) prioriza requisições de disco de um processo, de forma análoga a `nice` para CPU — útil para reduzir o impacto de tarefas de baixa prioridade (ex.: backups) em cargas interativas.
man 2
Assinatura
int ioprio_set(int which, int who, int ioprio);Parâmetros
| Parâmetro | Tipo | Descrição |
|---|---|---|
| which | int | IOPRIO_WHO_PROCESS, IOPRIO_WHO_PGRP ou IOPRIO_WHO_USER. |
| who | int | PID, PGID ou UID alvo, conforme `which`. |
| ioprio | int | Valor combinando classe (IOPRIO_CLASS_RT/BE/IDLE) e prioridade dentro da classe. |
Registradores (x86_64)
| Registrador | Papel | Argumento |
|---|---|---|
| rax | número da syscall (chamada) / valor de retorno (após SYSCALL) | — |
| rdi | argumento 1 | whichint |
| rsi | argumento 2 | whoint |
| rdx | argumento 3 | ioprioint |
Valor de retorno
0 em sucesso; -1 em erro, com errno definido.
Códigos de erro (errno)
- EINVAL(22)
- Argumento inválido.
- EPERM(1)
- Operação não permitida (falta de privilégio).
- ESRCH(3)
- Processo inexistente.