Por que o Windows sempre travará

artigo original retirado de: http://www.forumpcs.com.br/coluna.php?b=178705

escrito por Laercio Vasconcelos

Por mais melhoramentos que o Windows sofra, sempre travará. Isso é óbvio para quem acompanhou o surgimento do Windows e a sua evolução, mas pode ser menos óbvio para quem já começou em informática na era “Windows”. Aliás isso não é uma particularidade do Windows, é de qualquer sistema operacional para PC. O próprio Linux também tem lá os seus travamentos.

O lado bom
Quase todo mundo fala mal do Windows, alguns brincando, outros com seriedade, outros com emoções até exageradas. O ódio de práticas comerciais da Microsoft resultou nisso. Mas é preciso reconhecer que o Windows foi o primeiro a introduzir facilidades que antes não estavam disponíveis:

1) Roda em um computador genérico chamado “PC”, de baixo custo graças ao grande número de fabricantes para suas diversas peças. De certa forma viabilizou a popularização. O Windows faz sucesso porque existem muitos PCs, e existem muitos PCs porque ficaram baratos graças à alta disponibilidade de programas no padrão Windows. É claro que o Linux tem tudo para seguir a mesma trilha, e num futuro próximo poderá até mesmo se tornar mais popular que o Windows, mas isso depende de inúmeras outras coisas, como melhorar as facilidades de uso e a disponibilidade de programas – coisas que já vêm acontecendo e por isso observamos um expressivo aumento no uso do Linux.

2) Tornou universal o uso de recursos de hardware diferentes, coisa que antes era impossível. No tempo do DOS, cada editor de textos precisava ter as suas próprias fontes de caracteres. No Windows as fontes são do sistema e estão disponíveis para todos os editores. No tempo do DOS era preciso que cada programa gráfico acessasse diretamente os recursos das placas gráficas em alta resolução. Era comum ter uma placa que operava com 1024×768 com 24 bits mas sermos obrigados a operar com 640×480 com 4 bits porque nossos programas não “reconheciam” a nossa placa gráfica. Os jogos eram obrigados a operar com 320×240 com 8 bits (256 cores), que pelo menos era um modo universal que todas as placas de vídeo aceitavam. Durante a instalação de um jogo ou programa gráfico, era preciso indicar a placa de vídeo a partir de uma lista imensa com dezenas de placas, menos a sua.

Quanto ao som, a esmagadora maioria dos jogos operavam apenas com placas Sound Blaster ou compatíveis, e em muitos caso ainda era preciso configurar cada jogo para usar o IRQ, endereço de E/S e canal de DMA apropriado. Instalar um scanner ou qualquer dispositivo incomum era um grande desafio mesm para usuários avançados, pois era preciso descobrir os recursos de hardware em uso (somente consultando os jumpers das placas já instaladas e checando em seus manuais). Com o Windows 95, o padrão Plug and Play melhorou bastante, hoje um usuário não técnico consegue (quase sempre) instalar uma câmera digital, webcam, impressora, etc.

Nos tempos do DOS, a maioria dos programas operava apenas com impressoras em modo texto, ou então gráficas em padrão EPSON/IBM. Era preciso ter sorte para o editor de textos ter seu próprio “driver” para a impressora em uso. Uma das melhores inovações do Windows foi criar comandos padronizados para acesso a todos os dispositivos de hardware, permitindo que todos os programas tenham pleno acesso. Os drivers são agora relacionados ao Windows e aos dispositivos de hardware, e não como era antes: cada programa precisava ter drivers para cada tipo de hardware, o que era impossível para qualquer fabricante de software.

Arquitetura variável
Mas apesar desses melhoramentos, o Windows sempre travará. Porque o software que roda dentro do seu telefone celular nunca trava? Porque os jogos para PlayStation e outros consoles também não travam, não apresentam problemas de compatibilidade? Porque um computador da Apple (MACs) funciona melhor e praticamente não trava? Porque é muito mais fácil e seguro desenvolver um software para funcionar em um hardware conhecido. Um PS2 sempre será um PS2, terá o mesmo processador (ou compatível), o mesmo vídeo, a mesma velocidade. Não é preciso fazer testes de compatibiliade com milhões de plataformas diferentes.

Um programa para funcionar no Windows, do ponto de vista do fabricante do software, e também do ponto de vista da Microsoft, vai sempre rodar em um hardware desconhecido. Apesar de existir o “padrão PC” e inúmeros padrões para seu hardware (USB, PCI, AGP, PCI-E, DDR, ATAPI, SATA, IDE, etc), nunca é possível garantir com 100% de certeza que um programa ou sistema funcionará em qualquer PC. Se levarmos em conta quantas opções de processadores, chipsets, placas de som e vídeo, a questão de outros programas que também estão em uso concorrendo pela utilização do processador, enfim, as possibilidades de bugs são infinitas.

Nas empresas é mais fácil
No ambiente profissional, o número de programas em uso é bem reduzido. Um sistema operacional e um conjunto de utilitários e aplicativos fixos e conhecidos (MS Office, por exemplo), e as chances de tudo funcionar são bem maiores. Existe uma equipe de TI para testar o funcionamento de novos programas e dar suporte a eventuais incompatibilidades. É um ambiente controlado, a possibilidade de existir um programa X que trava ao ser usado com um hardware Y é muito menor. Apenas para citar como um ambiente empresarial é altamente controlado, soube recentemente que um funcionário de em uma grande organização bancária foi demitido porque baixou e executou um programa. A norma lá é usar somente programas permitidos, testados e homologados pela equipe de TI. O sistema bancário não pode parar porque um programa de shareware travou e atrapalhou a execução de outros programas vitais.

Coitados dos micros não corporativos
No ambiente doméstico, instalamos programas como “quem troca de camisa”. Baixou, instalou, rodou. Se travar, control-alt-del, desinstala, etc. Parar o trabalho para remover vírus, formatar e instalar o sistema, é tudo aceitável em aplicações não críticas. Xingamos o computador e o sistema operacional porque ocorreram travamentos devido a incompatibilidades. Mas o micro de uso pessoal, doméstico, educacional, para jogos e Internet, está o tempo todo sendo usado ao extremo e com grande quantidade de programas que não foram depurados por seus fabricantes para funcioanr em uma infinidade de combinações de hardware.

Todo PC sempre será um “Frankenstein” (aproveito para lembrar que Frankenstein não é o nome da criatura, e sim do cientista que a criou, mas na memória de todos o nome acabou sendo associado à criatura). Sendo assim, qualquer PC, por mais “de grife” que seja, sempre será formado por peças teoricamente compatíveis, mas vindas de inúmeras fábricas diferentes. A probabilidade de todas elas funcionarem jungas é quase 100%, graças aos padrões de software e hardware que a indústria segue. Mas sempre existem os casos de incompatibilidades, e cabe ao “integrador de hardware” checar o bom funcionamento das peças escolhidas. É o que fazem os grandes fabricantes. Se um usuário comprar por conta própria as peças para montar o micro, ele estará fazendo o papel do integrador. É pouco provável, mas existem os casos tristes em que o usuário integrador descobre que a sua placa de vídeo X não funciona corretamente com a placa mãe Y, somente depois de uma atualização de BIOS, ou uma troca de fonte, etc.

A culpa também é do hardware
Além dos travamentos decorrentes da dificuldade de um software fixo ser obrigado a operar com uma infinidade de combinações de hardware, existem ainda os casos de travamentos que são culpa do próprio hardware. Peças incompatíveis, micros mal montados, descuidos com a questão da temperatura, uma fonte e alimentação que não consegue aumentar a corrente na saída de 12 volts de 4 ampères para 10 ampères em apenas 16 milésimos de segundo (demorou 50 milésimos de segundo, mas aí já era tarde, o processador já havia travado, mas quem perceberá este tipo de problema em uma fonte?)

O Windows 95 travava muito. Na época foi publicado que existiam cerca de 3.000 bugs. O Windows 95 era uma “colcha de retalhos”, na qual foram aproveitadas partes de versões antigas do Windows (como 3.x). Foram feitas atualizações costantes, até o Windows 98 segunda edição, no qual a maioria dos bugs originais foram corrigidos. Ficou quase um sistema operacional estável. Depois foi degenerado em Windows ME, que serviu basicamente para testar novas “facilidades de uso” que seriam introduzidas no Windows XP.

O Windows NT não é uma “colcha de retalhos”. É um sistema operacional criado a partir do zero, já nasceu operando em 32 bits, e era bastante mais estável, mas voltado para o ambiente corporativo. O Windows XP Professional nada mais é que o Windows NT Workstation (cliente) versão 6.0. Por isso teoricamente trava menos que o Windows 98 e ME, mas nem assim foi atingida a tão sonhada eliminação de travamentos (alguém por acaso usa o botão “Enviar relatório” durante um travamento de programa?). O único grande melhoramento é que um travamento afeta apenas o programa travado (normalmente), e não mais derruba a máquina.

Travemos felizes para sempre
Só será tecnicamente viável eliminar completamente os travamentos no dia em que o PC não for mais um “Frankenstein”, coisa que provavelmente nunca vai ocorrer. O Windows sempre travará. Aliás, os PCs sempre travarão.

O que pode ocorrer nos próximos anos, e provavelmente ocorrerá, é a substituição dos PCs para fins de entretenimento por aparelhos específicos para cada fim. Por exemplo, jogar em um PlayStation, ao invés de jogar em um micro.

Antes da grande popularização dos micros nos anos 90, seu uso era quase sempre profissional. Os PCs eram usados em empresas para edição de textos, planilhas, editoração eletrônica, etc. Os micros domésticos eram diferentes: Apple II, TRS-80, MSX, etc. Chegou então a multimídia, a proliferação dos jogos, a Internet. Vamos agora fazer tudo no PC: jogar, ouvir música, organizar fotos, conversar, trocar mensagens… Todas esssa novas aplicações de entretenimento, para o grande público, reforçaram as receitas de empresas como Microsoft, Intel e AMD. Mas o micro não vai fazer esse papel para sempre. Para jogos, será muito melhor usar consoles como PlayStation, XBOX e outros. Para acesso à Internet, que tal a TV digital? Que tal fazer em celulares e portáteis coisas que antes eram feitas em micros? Com certeza esses aparelhos travarão menos. E os micros voltarão a assumir o seu papel original, de uso mais profissional, ou para aqueles que fazem questão de dominar a máquina. Mas lembre-se, ele sempre travará.

Quando comecei a escrever este artigo, sabia que a culpa é em parte do sistema operacional, e em parte do hardware, mas muitos tendem a pensar que a maior parte da culpa é do Windows. Sem intenção alguma de defender a Microsoft, coloco agora, no final e de maneira incomum, o título que considero mais correto para este artigo:

Por que o PC sempre travará…

____________________________________________________________________________

artigo original retirado de: http://www.forumpcs.com.br/coluna.php?b=178705

Anúncios