Para trabalhar com dispositivos de armazenamento, precisamos de um sistema de arquivos, e o espaço de troca?
Se ele não possui um sistema de arquivos, como o sistema operacional funciona com ele? Como os dados (da RAM) são gravados no disco e como são acessados novamente?
partitioning
filesystem
swap
Sinoosh
fonte
fonte
Respostas:
Swap tecnicamente não possui um sistema de arquivos específico. Todo o objetivo do sistema de arquivos é estruturar os dados de certa maneira. A partição de swap em particular não possui estrutura, mas possui um cabeçalho específico, criado pelo
mkswap
programa. Em particular, isso (extraído do kernel.org ):Cada partição possui um código específico associado a ela e de acordo com o TLDP :
Quando o arquivo de troca está envolvido, essa é uma história um pouco diferente. O kernel deve respeitar o fato de que o sistema de arquivos pode ter sua própria maneira de estruturar dados. No mesmo link do kernel.org:
Em conclusão, tecnicamente, você poderia chamar o espaço de troca de um sistema de arquivos de seu próprio tipo, mas não é tão comparável com sistemas de arquivos como NTFS ou ext4
Você também perguntou
A rigor, não há necessidade de estruturar a RAM. No entanto, partes da RAM podem ser estruturadas como tmpfs em sistemas operacionais semelhantes ao Unix. Há também ramfs e initramfs, que é o que é carregado durante o processo de inicialização. Mas tecnicamente os dados da RAM devem ser apenas 1s e 0s, portanto, não há necessidade de estruturá-los de qualquer maneira.
fonte
O espaço de troca é usado pelo kernel para armazenar temporariamente as páginas da memória do sistema (RAM) à medida que elas ficam cheias. O kernel usa suas próprias tabelas internas para "lembrar" exatamente onde, no disco de troca, colocou a página. Como resultado, os discos de troca não contêm um sistema de arquivos adequado e geralmente são apenas partições em branco no disco.
O que você pode estar interessado é em um disco RAM, que é um pequeno sistema de arquivos armazenado na memória do sistema. Se mais memória for necessária, o kernel irá enviá-la (e outros conteúdos) para o espaço de troca. Veja aqui para obter instruções sobre como configurar um.
fonte
O espaço de troca é dividido em blocos do mesmo tamanho das páginas de memória (geralmente 4 kB), e um registro do mapeamento dessas páginas na memória do aplicativo forma uma extensão do subsistema de memória virtual na CPU e no SO.
Ou seja, já existe um sistema de mapeamento entre os espaços de memória do aplicativo e o endereço de memória física real. Um aplicativo recebe um grande espaço de endereço de memória que ele pode usar o máximo ou o mínimo possível. À medida que mais desse espaço de endereço de memória é realmente usado, a memória física é mapeada para esse aplicativo para servir como meio de armazenamento.
Quando a memória é trocada para o disco, um sistema relacionado mantém esse mapeamento do espaço de memória de um aplicativo para o bloco no disco.
A tabela de mapeamento em si não é armazenada no disco e os dados restantes no disco são inúteis após uma reinicialização.
fonte