Qual é o objetivo de "C: \ swapfile.sys" no Windows 8?


61

No Windows 8, existem os dois arquivos a seguir em C: \

  1. pagefile.sys - nenhuma surpresa. É tão grande quanto eu configurei como o tamanho do meu arquivo de paginação
  2. swapfile.sys - tem 256MB de tamanho

Qual é o objetivo deste swapfile.sysarquivo adicional ?

Estou procurando uma resposta oficial sobre isso. Já existe especulação suficiente sobre isso na web.


3
As respostas aqui parecem bastante autoritárias, nomeando a suspensão / retomada dos aplicativos Metro como um dos principais usos do swapfile.sys.
Indrek

@Indrek yes. Eu estava esperando um pouco mais de detalhes. Por que dois arquivos? As respostas existentes são bastante finas em detalhes.
usr

4
O Windows 8, curiosamente, suporta troca e paginação ao mesmo tempo. O arquivo de paginação faz backup da memória física supercomprometida e mantém objetos que não foram acessados ​​por um período muito longo. O swapfile mantém as coisas ativamente ejetadas da memória porque elas não serão acessadas por um tempo. A paginação é mais eficaz em desktops de alto desempenho. A troca é mais eficaz em tablets e telefones de baixo desempenho. Se um arquivo fosse usado, ele seria fragmentado devido à mistura de páginas pequenas e de tamanho fixo para paginação e grandes pedaços para troca.
9788 David Schwartz #

É necessário haver dois arquivos, porque muitos programas assumem que o arquivo de paginação será usado SOMENTE para paginação, em vez de paginar mais .
surfasb

Respostas:


5

Vários links das respostas postadas acabam vinculando-o, mas http://blogs.technet.com/b/askperf/archive/2012/10/28/windows-8-windows-server-2012-the-new -swap-file.aspx

parece ser uma resposta mais definitiva:

Você pode perguntar: "Por que precisamos de outro arquivo de página virtual?" Com isso, o "% SystemDrive% \ swapfile.sys" nasceu.

O Windows 8 pode gravar com eficiência todo o conjunto de trabalho (privado) de um aplicativo Moderno suspenso no disco, a fim de ganhar memória adicional quando o sistema detectar pressão. Esse processo é análogo a hibernar um aplicativo específico e, em seguida, retomá-lo quando o usuário voltar ao aplicativo. Nesse caso, o Windows 8 aproveita o mecanismo de suspensão / retomada dos aplicativos modernos para esvaziar ou preencher novamente o conjunto de trabalho de um aplicativo.


39

De um membro da equipe da Microsoft nos fóruns da Technet .

Esse é um tipo especial de arquivo de paginação usado internamente pelo sistema para tornar certos tipos de operações de paginação mais eficientes. Não está relacionado à configuração de despejo automático.

 

Suspender / retomar aplicativos do estilo Metro é um cenário, pode haver outros no futuro.


3

Embora não tenha exatamente certeza de qual é o objetivo, parece que ele é usado para armazenar / armazenar em cache o conteúdo atualmente em uso.

Se você estiver curioso para ver o que há dentro, poderá adquirir arquivos bloqueados como swapfile.sys ou pagefile.sys em um sistema Windows em execução usando o FGET(Forensic Get by HBGary).

Execute o seguinte comando (como administrador):

FGET -extract% systemdrive% \ swapfile.sys OUTPUT_PATH

Após o qual você pode executar uma análise de string usando Strings. Dentro do swapfile.sys no meu sistema, entre outras coisas que encontrei:

meu endereço de e-mail, vários e-mails e endereços de e-mail, variáveis ​​de ambiente, conteúdo parcial de páginas da web que visitei, seqüências de caracteres de tipo MIME, sequências de agente de usuário, arquivos XML, URLs, endereços IP, nomes de usuários, nomes de funções de biblioteca, preferências de aplicativos, sequências de caminho, etc.

Também tentei gravar o arquivo para procurar formatos de imagem comuns e encontrei vários JPEGs e PNGs, incluindo ícones de aplicativos, recursos de páginas da web, várias fotos de perfil, recursos de imagem de aplicativos Metro, etc.


Se FGETnão funciona para você, tente usar ifinde icatde O Kit Sleuth . Você pode encontrar o número da entrada MFT para swapfile.sys usando ifindo seguinte:

ifind -n /swapfile.sys \\. \% systemdrive%

Depois de ter o número do inode, você pode recuperar o arquivo da icatseguinte maneira:

icat \\. \% systemdrive% INODE_NUMBER> OUTPUT_PATH

Por exemplo:

C: \> ifind -n /swapfile.sys \\. \% Systemdrive%
1988

C: \> icat \\. \% Systemdrive% 1988>% systemdrive% \ swapfile.dmp

NOTA: Você precisa executar os dois comandos em um prompt de comando elevado (por exemplo, executar cmdcomo Administrador)


a ferramenta falha quando eu tentei executar o comando
magicandre1981

@ magicandre1981 Você deve executá-lo como administrador. Eu esqueci de mencionar isso #
Vinayak

Eu já fiz isso.
magicandre1981

@ magicandre1981 Qual versão do Windows você está executando? Além disso, se o FGET não funcionar para você, há outras maneiras de recuperar o arquivo de troca de um sistema em execução. Verifique o primeiro link na minha resposta para algumas alternativas.
Vinayak

Eu uso o Windows 8 original (64Bit). Eu recebo c0000417 (STATUS_INVALID_CRUNTIME_PARAMETER) como código de erro
magicandre1981
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.