Observe que esta pergunta é específica linux
apenas. E por swap space
, quero dizer o dedicado swap partition
.
Eu fiz google
um pouco sobre isso, e encontrei estes definitions
:
Paging refers to writing portions, termed pages, of a process’ memory to disk.
Swapping, strictly speaking, refers to writing the entire process, not just part, to disk.
In Linux, true swapping is exceedingly rare, but the terms paging and swapping
often are used interchangeably.
e
page-out: The system's free memory is less than a threshold "lotsfree" and unnused / least used pages are moved to the swap area.
page-in: One process which is running requested for a page that is not in the current memory (page-fault), it's pages are being brought back to memory.
swap-out: System is thrashing and has deactivated a process and it's memory pages are moved into the swap area.
swap-in: A deactivated process is back to work and it's pages are being brought into the memory.
Agora, você pode duplicar esta pergunta com as que perguntam sobre as diferenças entre paginação e troca. Mas eu procuro um pouco mais. A qualquer momento, esses contadores são /proc/vmstat
mutuamente exclusivos? Com isso, quero dizer, o parâmetro pswpin
inclui algumas contagens pgpgin
ou vice-verso? O que exatamente acontece quando um processo é deactivated
? Se todas as suas páginas forem movidas para o swap
espaço, qual é exatamente a diferença entre várias pageouts
? Além disso, se a pagein
ocorre sempre que ocorre uma falha na página, o que se pode dizer sobre os outros dois parâmetros pgmajfault
e pgfault
com relação a esse evento? É o caso de que sempre que pagefault (major? minor?)
ocorre um correspondente pagein
também ocorre?
Seria útil se alguns exemplos de programas / referências forem sugeridos para testar esses parâmetros individuais.
PS: Eu posso continuar adicionando / editando as perguntas :)