Sempre que a Microsoft aparece com um novo sistema operacional, a reação natural da maioria dos usuários é ficar com um pé atras. Afinal, já presenciamos o aparecimento de pelo menos quatro sistemas operacionais domésticos “made in M$”, sempre com os
mesmos problemas de instabilidade.
O primeiro foi o Windows 3.1, que ainda rodava sobre o MS-DOS e possuía uma forte tendência a instabilidade, devido ao uso da multitarefa preemptiva; além das limitações inerentes a um sistema de 16 bits.
Depois de muita piadas, surgiu o Windows 95, que prometia ser um sistema definitivo. De fato, comparado com o Windows 3.1, ele trouxe várias vantagens, tanto em termos de interface, quanto em termos de desempenho, devido ao uso de drivers de dispositivos
de 32 bits. Porém, os problemas de instabilidade continuaram.
Depois de mais alguns anos de piadinhas, foi lançado o Windows 98. Novamente houveram avanços, o Win 98 trás um nível de compatibilidade muito maior com os dispositivos atuais graças aos novos drivers, trás vários programas complementares e trouxe
solucionados vários dos problemas da versão antiga. Foi lançado em seguida o Win 98 Second Edition (SE), que trouxe alguns bugs corrigidos e o Internet Conection Sharing, recurso para compartilhar a mesma conexão a Internet entre vários micros ligados em
rede.
Porém, apesar dos avanços, temos algo em comum entre todas estas versões: a instabilidade.
Você sempre ouviu dizer que o Windows é um sistema operacional multitarefa. Existem basicamente dois tipos de multitarefa, denominadas multitarefa preemptiva e multitarefa cooperativa, que diferem justamente pelo uso ou
não da proteção de memória.
O Windows 3.x, apesar de ser considerado um sistema operacional multitarefa, não é capaz de usar o recurso de proteção de memória. Nele é usada a multitarefa cooperativa, que consiste em cada aplicativo usar os recursos do processador por um certo tempo,
passar para outro programa e esperar novamente chegar sua vez para continuar executando suas tarefas. A alternância entre os programas neste caso não é comandada pelo processador, e sim pelos próprios aplicativos. Neste cenário, um aplicativo mal
comportado poderia facilmente monopolizar o sistema, consumindo todos os recursos do processador por um longo período, ou mesmo invadir áreas de memória ocupadas por outros aplicativos, causando em qualquer um dos casos o famoso GPF, (“General Protection
Falt”, ou “falha geral de proteção”) que tanto atormentava os usuários do Windows 3.x.
Experimente tentar fazer dois irmãos dividirem os mesmo brinquedo; pode funcionar durante um certo tempo, mas uma hora um não vai querer deixar o outro brincar e vai sair briga, exatamente como acontece com os aplicativos dentro da multitarefa cooperativa
:-).
O Windows 95/98 por sua vez, usa a multitarefa preemptiva, isolando as áreas de memória ocupadas pelos aplicativos. Isto garante uma estabilidade bem maior do que a que temos no Windows 3.11. Porém, o modo como a multitarefa preemptiva é implementada no
Windows 95 assim como do Windows 98 e como será no futuro Windows Millennium, que são baseados no mesmo kernel (núcleo) do Windows 95, ainda possui dois problemas graves:
O primeiro é que, quando é executado um programa de 16 bits, o Windows 95 cai em multitarefa cooperativa para poder rodar o programa, deixando de proteger as áreas de memória e tornando-se tão vulnerável quanto o Windows 3.11.
Mesmo usando apenas aplicativos de 32 bits os travamentos ainda são comuns, pois o Windows 95 os serviços do sistema não tem prioridade sobre os aplicativos. Isto significa que caso um aplicativo qualquer entre em loop, poderá consumir todos os recursos
do processador, neste caso o sistema operacional ficará paralisado, simplesmente sem ter como fechar o aplicativo e restaurar o sistema, obrigando o usuário a resetar o micro e perder qualquer trabalho que não tenha sido salvo. Na verdade costuma-se dizer
que o Windows 95/98 utiliza multitarefa semi-preemptiva, pois não utiliza todos os recursos de uma verdadeira multitarefa.
Concordo que o fabricante do sistema operacional não tem como fiscalizar o trabalho de todas as empresas que desenvolvem aplicativos para ele. Mesmo desenvolvendo um sistema operacional que funcione bem este ainda poderá cair vítima de aplicativos mal
escritos.
A solução para este problema veio com o Windows NT. Desde suas primeiras versões, o Windows NT é bem estável neste aspecto, pois implementa a multitarefa preemptiva de forma completa. As tarefas executadas pelo sistema operacional, são priorizadas sobre
as de qualquer outro aplicativo. Isto significa que em nenhuma situação, um aplicativo terá como passar por cima do sistema operacional e consumir todos os recursos do processador como acontece no Windows 95/98.
Na prática, significa que o sistema até pode travar devido a algum bug, mas se algum aplicativo travar ou tentar invadir uma área de memória não designada para ele, simplesmente será fechado, permitindo que todos os demais aplicativos continuem
trabalhando sem problemas. Você logo notará quais aplicativos costumam dar problemas, bastando substituí-los por versões mais recentes que corrijam seus bugs ou mesmo passar a usar um programa concorrente.
O Windows 2000 é baseado no Kernel do Windows NT e mantém o mesmo sistema de funcionamento. Apesar de ser um pouco mais pesado que o Windows 98, principalmente em termos de quantidade de memópria RAM, e ser incompatível com alguns jogos, eu recomendo
fortemente um upgrade. Existe a opção de manter os dois sistemas instalados em dual boot, escolhendo qual será usado cada vez que o micro for inicializado. Assim você poderá usar o Windows 2000 para aplicativos em geral e usar o Windows 98 para os jogos
que por ventura não rodem, ou fiquem mais lentos no Windows 2000.
Deixe seu comentário