Voltar à lista
Linux x86_64Memória#216Depreciada

remap_file_pages

Reorganizava páginas dentro de um mapeamento de arquivo sem chamadas mmap adicionais.

Descrição

Otimização de uma época em que o kernel tinha limites baixos no número de VMAs (Virtual Memory Areas) por processo; hoje esses limites não são mais um problema prático e a chamada é desencorajada.

man 2

Depreciada

Deprecada desde o kernel 3.16; a implementação atual é apenas um wrapper lento em torno de mmap/munmap comuns. Não use em código novo.

Assinatura

int remap_file_pages(
    void * addr,
    size_t size,
    int prot,
    size_t pgoff,
    int flags
);

Parâmetros

ParâmetroTipoDescrição
addrvoid *Início da região dentro de um mapeamento existente.
sizesize_tTamanho da região.
protintIgnorado desde a depreciação — mantido apenas por compatibilidade de assinatura.
pgoffsize_tNovo deslocamento de página dentro do arquivo mapeado.
flagsintIgnorado desde a depreciação.

Registradores (x86_64)

RegistradorPapelArgumento
raxnúmero da syscall (chamada) / valor de retorno (após SYSCALL)
rdiargumento 1addrvoid *
rsiargumento 2sizesize_t
rdxargumento 3protint
r10argumento 4pgoffsize_t
r8argumento 5flagsint

Valor de retorno

0 em sucesso; -1 em erro, com errno definido.

Códigos de erro (errno)

EINVAL(22)
Argumento inválido.

Relacionadas