Por que alguns sistemas operacionais exigem reinicializações para determinadas tarefas? [duplicado]

2

O Windows sempre requer uma reinicialização após a instalação de atualizações ou grandes programas. O Linux geralmente não requer reinicializações, mas ocasionalmente requer.

Parece-me que o sistema operacional deve ser capaz de tocar / editar qualquer coisa que precise enquanto está em execução ou, no mínimo, encerrar um processo, atualizá-lo e iniciá-lo novamente com o mínimo de interrupção para o usuário. / p>

  1. O que o computador está fazendo tecnicamente que requer uma reinicialização?
  2. Por que não é possível atualizar ou instalar programas sem reinicializar?
  3. Pergunta retórica: Por que a Microsoft ou outros não descobriram como atualizar / instalar programas sem reinicializações?
por tbenz9 29.09.2013 / 23:40

2 respostas

1

Basicamente A reinicialização dependeria das alterações feitas pelo software . Para responder às suas perguntas:

What is the computer doing technically that requires a reboot?

Se o Software estiver instalado no Windows, normalmente, a reinicialização corrigirá as alterações no registro do software.

Why can't it update or install programs without rebooting?

Deixe-me dizer que seu software de instalação cria uma nova conta de usuário, isso não pode ser feito sem afetar / interromper as ações do kernel. Essas são as alterações feitas no software que interrompem as propriedades básicas do sistema operacional. Para suavizar o processo, os fornecedores de software forçam você a reinicializar.

Why hasn't Microsoft or others figured out how to update/install programs without reboots?

É a arquitetura principal deles. Você pode perceber que as máquinas Linux não precisam ser reinicializadas desde:

De resposta do booby :

The major reason for this behavior is that Linux doesn't lock executed files and libraries, which allows direct replacement of those files and does only require the applications to restart. For installations is the reason the package-management-systems, while in Windows every program installs all needed libraries (even if they're already installed, but when they are in use they are locked, which needs a restart to clear the situation) in Linux an application only references the needed packages which are installed once (and never again), reducing the overhead.

    
por 30.09.2013 / 08:16
0

Aqui está uma boa explicação analógica:

Digamos que você tenha um monte de pessoas e um monte de carros que eles compartilham. Você tem um lugar onde guarda as chaves quando alguém não está usando um carro. Então você vai até a área de armazenamento, pega uma chave, dirige o carro e coloca a chave de volta.

Agora, suponha que você queira alterar onde você guarda as chaves. Você não pode simplesmente ter pessoas mudando uma de cada vez, porque você pode acabar com as chaves do carro deixadas onde ninguém as encontrará. A maneira mais fácil e segura é destruir todas as pessoas e carros e recomeçar com todos usando o novo local. (Ok, a analogia se quebra um pouco.)

A versão curta é isso - você não pode mudar para criar um tipo de rastreamento de uma maneira nova até que tudo que possa acessar esse rastreamento entenda o novo caminho. Isso significa uma reinicialização ou um plano de migração muito complexo.

    
por 30.09.2013 / 10:20