O sistema de arquivos é swap no Linux

13

No Linux, você pode escolher coisas como ext3 e reiserfs para partições. Para a partição swap, basta escolher "swap". Qual sistema de arquivos é esse, na verdade? Você pode simplesmente criar uma partição ext3 e torná-la uma partição swap? Como isso seria diferente?

    
por tony_sid 06.08.2010 / 12:09

4 respostas

22

Trocar não é um sistema de arquivos real. É apenas uma parte reservada do disco que é uma memória endereçável sem estrutura especial.

O mkswap cria um cabeçalho para a área de troca com algumas informações adicionais. De swapheader.h do pacote util-linux-ng:

struct swap_header_v1 {
    char         bootbits[1024];    /* Space for disklabel etc. */
    unsigned int version;
    unsigned int last_page;
    unsigned int nr_badpages;
    unsigned int padding[125];
    unsigned int badpages[1];
};

A versão 1 do cabeçalho é a usada atualmente. Isso é sobre toda a mágica por trás da estrutura bruta do swap.

    
por 06.08.2010 / 14:14
6

Eu acho que a partição swap não precisa de um sistema de arquivos porque não há arquivos e diretórios nela. A partição de swap é o local da RAM virtual.

    
por 06.08.2010 / 12:17
3

O Linux tem duas formas de espaço de troca: a partição de troca e o arquivo de troca. A partição swap é uma seção independente do disco rígido usada exclusivamente para troca; nenhum outro arquivo pode residir lá. O arquivo de troca é um arquivo especial no sistema de arquivos que reside entre o sistema e os arquivos de dados.

A troca é necessária por dois motivos importantes. Primeiro, quando o sistema requer mais memória do que a fisicamente disponível, o kernel troca páginas menos usadas e dá memória ao aplicativo (processo) atual que precisa da memória imediatamente. Segundo, um número significativo de páginas usadas por um aplicativo durante sua fase de inicialização só pode ser usado para inicialização e nunca usado novamente. O sistema pode trocar essas páginas e liberar a memória para outros aplicativos ou mesmo para o cache de disco.

    
por 06.08.2010 / 12:17
-1

Existem duas maneiras de criar espaço de troca: troca de sistema de arquivos e troca de dispositivo (ou não). Com o swap do sistema de arquivos, você está criando um arquivo em um sistema de arquivos e o usando como espaço de troca (muito parecido com o que você veria no windows com o pagefile.sys). Com a troca de dispositivos, você está trocando para uma partição que você criou especificamente para troca.

Qual é o melhor:

Esse debate costumava ser muito mais interessante nos "velhos" dias porque:

Por que a troca de dispositivos é "melhor": Como você está trocando para uma partição bruta, ela é mais rápida porque você não precisa lidar com toda a sobrecarga extra de um sistema de arquivos com inodes e outras sobrecargas do sistema de arquivos

Hoje, no entanto, esse argumento não é válido. Com a evolução da rapidez com que o acesso ao disco é feito atualmente, a troca de dispositivos não lhe dá muito mais tempo que a troca de arquivos.

Por que a troca de arquivos é "melhor": Muito mais fácil mudar tamanhos. Quando você altera os tamanhos das partições, é muito mais difícil do que apenas criar novos arquivos.

Hoje, porém, com muitas pessoas usando o LVM em vez de partições brutas, é fácil reduzir e aumentar o espaço de troca

HOJE, é ainda mais discutível: A maioria dos servidores nos dias de hoje por razões de desempenho vale a pena o custo apenas para ligá-lo cheio de memória. (Este debate costumava ser muito mais popular quando a RAM era mais difícil de encontrar e era comum colocar apenas 4GB a 8GB de RAM em um servidor)

PORQUE USO O SWISS FILESYSTEM SWAP (e troco em geral)

Hoje eu instruo nossos caras a instalarem com o 4gig swap onl e usamos a mesma config / image para todas as nossas instalações do Linux. A instalação do Oracle requer um maior uso de swap, portanto, para sistemas que terão o Oracle I, criarão o restante com a troca de sistema de arquivos. É possível que seu aplicativo tenha um requisito de swap, caso em que você poderá adicioná-lo posteriormente com a troca de sistema.

Isso ajuda?

Eu tenho instruções detalhadas de como fazer isso no linux aqui: link

    
por 01.03.2014 / 03:49