Resposta originalmente postada no Quora em 16/07/2019
Tem sempre alguma coisa que a gente faz..
Vou citar uma aqui..
Certa feita tive de instalar um dual boot, Linux e Windows.
O Windows teve um update logo depois da instalação e zoou grandão o GRUB. O computador parou de funcionar.
Saquei meu script ‘reparagrub’ e rodei ele.
Programadores entenderão:
sudo mount /dev/sdb7 /mnt
for i in /sys /proc /run /dev; do sudo mount --bind "$i" "/mnt$i"; done
sudo chroot /mnt
update-grub
grub-install /dev/sda
update-grub
exit
O
OS Kernel ou Núcleo do Sistema Operacional é um programa de computador
que é o coração do sistema operacional de um computador. Ele tem
controle completo sobre tudo que acontece no sistema.
Abaixo tem a estrutura básica de um sistema operacional Unix, situando o modo núcleo.
Fonte: TANENBAUM
E aqui tem a estrutura básica de um sistema operacional Windows 7 situando o modo núcleo do sistema operacional:
Fonte: TANENBAUM
Na
maioria dos sistemas ele é um dos primeiros programas a serem
carregados na inicialização, logo após do carregador inicial
(bootloader). Ele gerencia as demais inicializações assim como as
requisições de entrada e saída do software, traduzindo-as em instruções
de processamento de dados para o processador do computador. Ele também
manuseia a memória e periféricos como teclado, monitor, impressoras e
interface de áudio.
O Kernel faz a interface entre o software da aplicação e o hardware do computador.
A
parte crítica do código do Kernel é normalmente carregada em uma área
separada da memória a qual é protegida de ser acessada pelos programas
ou outras partes menos críticas do sistema operacional.
O
Kernel executa suas tarefas como rodar processos, gerenciar
dispositivos de hardware com o HD, fazer o gerenciamento de interrupções
dentro da área protegida do Kernel.
Por
outro lado, tudo o que o usuário faz é executado na área do usuário
(user space) como escrever um texto no editor de texto, rodar programas
em uma interface gráfica (GUI) e etc.
Essa
separação previne que os dados dos programas do usuário e os dados do
Kernel acabem interferindo um no outro o que pode causar instabilidade
no sistema, lentidão no processamento, erros nos programas e até causar
erros catastróficos no sistema operacional.
Resposta originalmente traduzida no Quora em 06/07/2019.
Sistema Operacional de Tempo Real (Real Time Operating System) é um sistema operacional especializado que é responsável por gerenciar os processos em um sistema de tempo real ( real time system.)
Ele é responsável pelo gerenciamento de processos e alocação de recursos.
O
sistema operacional em tempo real pode ser baseado em um kernel padrão
que é usado inalterado ou modificado para uma aplicação específica.
Normalmente, não inclui recursos como gerenciamento de arquivos.
Componentes do Sistema Operacional de Tempo Real:
Relógio de tempo real: (Real-time clock) Ele fornece informação para agendamento de tarefas
Gerenciador de interrupções: (Interrupt handler) Gerencia solicitações de serviços assíncronas .
Agendador: (Scheculer) Seleciona o próximo processo a ser executado.
Gerenciador de recursos: (Resource Manager) Aloca os recursos de processador e memória.
Despachante: (Dispatcher) Inicia a execução dos processos.
Os componentes de um sistema operacional de tempo real pode ser conforme abaixo:
Tem várias coisas que podem ser feitas para otimizar o Windows.
Muito do que vou falar aqui, se você não souber o que está fazendo vai dar dor de cabeça, mas é o caminho para deixar a máquina zerada se você souber COMO APLICAR as sugestões. Para deixar claro, siga POR SUA CONTA E RISCO. Se for menor de idade, esteja acompanhado de um adulto … responsável é claro.
Criar um ponto de restauração antes de começar a mexer nisso tudo.
Trocar o HD por SSD, de longe a melhor opção.
Dobrar a quantidade de memória, se der colocar o máximo de memória que seu computador suportar.
Assegurar que seu Windows 10 seja de 64 bits.
Desinstalar todos os otimizadores freeware e antivírus e deixar apenas o Windows Defender.
Instalar o gerenciador de pacotes Chocolatey e instalar os softwares a partir dele ou usar os sites oficiais de cada desenvolvedor. Nada site de downloads brasileiros. Ah, tem também o Sourceforge que tem código aberto.
Usar o MSOffice para estudantes pela escola ou assinar o pacote o MSOffice.
Zero pirataria, usar Gimp, Inkscape por exemplo. Se precisa editar vídeo compre um editor tipo CorelVideoStudio.
WinRar é pago, utilizar 7zip no lugar.
Ir no “Painel de Controle” -> “Programas e Recursos” e desinstale tudo o que você não usa, inclusive o leitor de pdf Acrobat Reader que é um saco e fica atualizando uma vez por semana.
Instale o leitor de ebook “Sumatra PDF” no lugar do Acrobat Reader. Ele é leve, open source, não fica atualizando, abre ebooks e roda bem.
Exibir no menu da barra de tarefas os ícones ocultos, ver todos programas ativos e desativar tudo o que for possível. Por exemplo Skype, Atualização do Java, Atualização do Adobe e por aí afora.
Abrir o agendador de tarefas, ir na pasta “Biblioteca do Agendador de Tarefas”, analisar quais tarefas que estão agendadas e remover as que forem desnecessárias. Por exemplo, caso você não use o Chrome, por que vai deixar ativo o Google update? Remove ele.
Abrir o gerenciador de serviços, listar os serviços em execução e tentar identificar serviços estranhos ao Windows. Normalmente esses serviços não possuem descrição alguma. Descobrir o que eles fazem e verificar se é o caso de desativá-los. Antes que alguém surte, já vou avisando que o serviço Warsaw é do Internet Banking do Banco do Brasil, há outros sem descrição, mas cabe análise antes de resolver se deve desativar o serviço ou não.
Abrir o gerenciador de tarefas, ir na aba Inicializar e verificar os aplicativos que são ligados quando o Windows é inicializado. Entender o que eles fazem e desabilitar os que forem desnecessários ou que puderem ser inicializados manualmente.
Se não falei ainda: Desinstale TODOS otimizadores de desempenho que existirem instalados na máquina.
Ele faz o gerenciamento automático e dinâmico da memória da seguinte forma:
Aloca memória do e a devolve para o sistema operacional.
Gerencia a memória para a aplicação à medida em que a aplicação requisita memória.
Determina quais partes da memória irão permanecer em uso pela aplicação.
Realoca memória não utilizada destinando-a para outra aplicação.
O Java HotSpot garbage collectors empregam várias técnicas para melhorar a eficiência dessas operações, entre elas:
Utiliza
o algoritmo de reclamação de armazenamento de memória “generational
scavenging” em conjunção com métodos de datação dos dados na memória a
fim de concentrar os esforços nas áreas que contenham mais dados
suscetíveis a serem reclamados.
Utiliza múltiplas threads para
execução de operações paralelas, ou executa operações de longo tempo de
execução em segundo plano enquanto rodando uma aplicação principal.
Procura liberar grandes blocos contíguos de memória pela compactação de objetos ativos (live objects).
Qual vantagem de se utilizar o Garbage Collector?
A
vantagem de se utilizar o garbage collector é que ele libera o
desenvolvedor de aplicações da tarefa manual de se fazer o gerenciamento
de alocação de memória.
O
desenvolvedor é liberado da necessidade de cuidar das alocações e
liberações de memória e fica livre de ter que tomar conta das tarefas
que alocam dinamicamente a memória.
Isso
elimina completamente alguns tipos de erros relacionados a
gerenciamento de memória bem como otimiza o tempo de execução da
aplicação. O Java HotSpot VM possui um conjunto de algoritmos que
executam essa tarefa.
Em tempo: Mas Renato, dá para usar macro para popular os campos da planilha junto com a desativação da GUI quando fazendo os cálculos … Isso faria o cálculo muito mais rápido =\. -> Meu caro, a ideia é mostrar que dá para resolver o caso utilizando apenas conhecimento de Excel básico. Quem manja VBA sabe que tem ferramentas muito melhores ;D