Por que o desligamento do ubuntu é tão rápido comparado ao Windows 7?

6

Instalei o Windows 7 de 64 bits e o Ubuntu 10.10 de 32 bits na minha máquina. Os tamanhos das partições são de 400 GB e 100 GB de forma receptiva. Eu sempre quis saber como o Ubuntu desliga tão rápido? Leva apenas 5 segundos ou menos, enquanto o Windows 7 leva muito mais tempo.

Embora, eu tenha mais programas instalados no Windows 7, mas ainda assim seu tempo de desligamento foi muito maior do que o do Ubuntu durante o primeiro mês de instalação. Foi 10-15 seg aprox. Eu não estou contando o tempo usado para instalar atualizações, às vezes, quando o desligamento é clicado no Windows 7.

O que torna o encerramento e a inicialização do Ubuntu (mais rápido que o Windows 7, mas não por ampla margem) tão rápido. É o sistema de arquivos? será diferente se eu tivesse trocado espaços de partições (não pode tentar isso agora)? Desculpe eu não tenho conhecimento em Ciência da Computação, então não conheço estrutura detalhada e arquitetura do sistema operacional. Qualquer indicação disso ajudará a curar minha curiosidade.

    
por 9ikhan 29.04.2011 / 07:39

1 resposta

1

<p rant="on"> Well, to be honest, I don't think understand why will do programming any good. In addition, I don't honestly understand why this is migrated to SU in the first place (Other than SU being a rubbish bin for all irrelevant questions for many stackoverflow users</p>

O processo de desligamento do Windows pode ser visto como um processo de duas etapas:

  • de "Conectado" a "Ninguém logado" (daqui em diante "Parte 1")
  • de "Ninguém logado" para "Desligamento" (daqui em diante "Parte 2")

Na parte 1:

ExitWindowsEx(uFlags,dwReason) é chamado - isso é realmente tratado por winlogon . Ele envia WM_QUERYENDSESSION para todos os aplicativos - e cada um dos aplicativos deve executar os procedimentos necessários antes do desligamento e retornar true . Em seguida, ele recebe WM_ENDSESSION e é finalizado. Isso está relacionado a todo o processo na sessão 1 (a chamada "sessão interativa")

Então:

  • o perfil do usuário é atualizado e descarregado
  • a conexão de rede (incluindo conexões VPN, se houver) é encerrada
  • Os processos COM são finalizados

Na parte 2:

A sessão não interativa (sessão 0) também teria seu aplicativo terminado de maneira semelhante (representando a conta de usuário do sistema local) e os serviços seriam encerrados.

Depois de tudo isso, o sistema seria desligado.

    
por 29.04.2011 / 08:10