800x6001024x768Auto Width
05-Jan-2009
Menu Principal
Início
Revista
Pó de Chá (PodCast)
IRC
Downloads
Orkut
Artigos
Login





Esqueceu a senha?
Sem conta? Criar Conta!
Feeds

O Fantasma de Redmond

Imprimir E-mail
Escrito por André Ferreira Machado   
09-Out-2007
Windows
Windows
Descubra o que está por trás dos erros do Windows.
Ontem, nosso amigo Erick mais uma vez nos surpreendeu com um tópico onde xingava seu Windows Vista. O motivo seria a imagem abaixo:

 

 Como um erro de MS-DOS, o arcaico sistema de linha de comando fabricado pela Microsoft antes do Windows, poderia estar presente no avançadíssimo Windows Vista?

O que a maioria das pessoas não sabe é que, na década de 90, a Microsoft não fizera um mas, sim, dois Windows.

Dois Windows

O aspecto arcaido do Windows 3.11. Alguma semelhança com a instalação do Windows 98? Tudo começou quando a Microsoft descobriu que seu Windows 3.11 já havia conquistado o mercado doméstico, mas era insignificante no ambiente corporativo. Isso porque as empresas simplesmente consideravam-no instável demais. Assim, a Microsoft contratou um profissional que, anteriormente, trabalhava no sistema Open VMS. Ele definiu algumas metas para que o sistema crescesse e, assim, nasceu o Windows NT.

Oficialmente, NT significa New Tecnology, mas algumas teorias conspiratórias sugerem que o nome Windows NT seja uma referência ao projeto Open VMS, pois WNT são as letras que seguem o nome do projeto original.

Nunvca houve um Windows NT 1.0; a primeira versão foi a Windows NT 3.11, com a mesma aparência do Windows 3.11  "normal", mas com a tela de boot cinza, ao invés do ciano. Engana-se, você, porém, se pensar que era apenas uma mudança estética: enquanto o Windows 3.11 era uma mera interface que rodava em cima do MS-DOS (era necessário digitar WIN para iniciá-lo), o Windows NT era um sistema operacional completo. O DOS fora reduzido a apenas um prompt, para manter a compatibilidade com os softwares para esse sistema. O sistema de arquivos fora substituído pelo NTFS, oriundo do OS/2, que seria mais estável que o FAT.

Tela inicial do Windows NT 4.0 Assim, a Microsoft definiu a sua política: Windows para usuários domésticos e Windows NT para empresas. Em 95, ela lançou a famosa versão de seu sistema e, no ano seguinte, fora lançado o Windows NT 4.0, com a mesma interface do seu irmão 95, mas com algumas coisas mais "cruas", por exemplo: ele não tem uma tela de boot com nuvens, o que aparecem são duas telas em modo texto com uma linha pontilhada e, depois disso, ele já entra na janela de login. Aliás, se você quiser entrar numa rede corporativa, basta ter um computador com Windows 98 e apertar ESC na tela de identificação do usuário: ele entra de qualquer forma, o que não ocorre no NT. Devido ao seu foco nitidamente empresarial, a maioria dos usuários nem tomou conhecimento da sua existência.

Ano novo, milênio novo. Windows tinha DOS, Windows NT, não. Então, a Microsoft atualizou o NT 4, lançando o Windows 2000. Para os usuários domésticos, e para evitar se confundir com sua versão corporativa, surgiu o Windows Millenium, que nada mais era do que o Windows 98 com o núcleo NT. No entanto, essa fusão foi um desastre completo. De outro lado, em sua época, o 2000 era visto apenas em laptops destinados a empresas; a maioria dos computadores tinham o Millenium. Enquanto nós passávamos SCANDISK depois de cada desligamento acidental, as empresas usavam o CHKDSK. E o sistema era muito, muito estável. 

Entretanto, o Linux crescia cada vez mais. E o que antes Ballmer ignorava agora era uma sombra para a Microsoft. Então, Bill Gates tomou uma decisão ousada: ele acabou com o Windows.

O Windows morreu! Viva o Windows!

Opa! Como assim? Quer dizer que o Windows acabou? Então o que é esse cd que eu comprei a R$ 5,00 no camelô do centro? 

Calma. Como eu disse antes, havia o Windows e o Windows NT. Gates percebeu que o Linux era mais estável que o Windows, e ele estava ganhando espaço no desktop doméstico.

Então, ao invés de lançar um Windows para usuários domésticos e um Windows NT para empresas, a Microsoft lançou o Windows XP, em duas versões, Home, para usuários domésticos, e Professional, para empresas (embora todos os usuários domésticos que eu conheça usem Professional).

Ambos os Windows XP possuem núcleo NT; o que os diferencia é apenas os programas que vêm neles. O Professional é o sucessor natural do 2000, e o Home, o sucessor do Millenium, mas não é baseado neste. Com isso, a Microsoft dá o que sempre reservou às empresas aos usuários domésticos, o núcleo NT, e acaba de uma vez por todas com um sistema que dependia do MS-DOS.

Será?

O mito da retrocompatibilidade

Evidentemente, um prompt de comando fora mantido no Windows XP, o CMD.EXE, para que, através dele, possamos usar programas feitos para o ambiente MS-DOS no Windows XP. Alguns rodam, outros não. O fato é que o CMD-EXE é muito mais poderoso que o seu original COMMAND.COM, ao permitir utilização direta de nomes de arquivos longos, completação por TAB, entre outras coisas que sempre estiveram presentes no Bash.

Agora, imagine um programa da década de 80, como o Turbo Pascal. Ele é um compilador e uma IDE para desenvolvimento de programas em Pascal para MS-DOS. Nele, existe um menu chamado OS Shell. Ao selecioná-lo, ele te leva de volta para o ambiente MS-DOS. Ao digitar EXIT, você volta para o Turbo Pascal.

Mesmo com o software sendo fechado, é simples deduzir o segredo por trás desse comando: uma instrução como system("command.com"); executaria ointerpretador de comandos; o EXIT seria sua saída natural. Como o command.com é o núcleo do DOS, ele não deve existir no Windows XP, que não tem DOS e, portanto, esse menu do Turbo não deve funcionar.

Bem, eu quero mostrar uma coisa pra você que usa Windows. Pressione Winkey + R, digite cmd e aperte Enter. O que você vai ver é o prompt do Windows:

 Microsoft Windows XP [versão 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Documents and Settings\Andre>

Perfeito, você tem o nome e a versão do Windows e o suporte a um nome longo de pastas. Você pode fechá-lo normalmente pressionando o X na barra de títulos. 

Agora, eu quero que você volte ao Executar e digite Command. A janela que você verá vai assustá-lo: 

Microsoft(R) Windows DOS
(C)Copyright Microsoft Corp 1990-2001.

C:\DOCUME~1\ANDRE>

OPA! O que é isso? O que seria mais contraditório que algo chamado Windows DOS? E note o nome da pasta: não é um nome longo! Tente fechar esse janela misteriosa pelo X na barra de títulos. Oh! Que aviso é esse? Não, cancele e digite EXIT. Ufa!

Isso que você acabou de presenciar não foi uma experiência sobrenatural mas, sim, a verdade. A Microsoft ainda mantém o MS-DOS no Windows XP, mesmo ele sendo baseado no Windows NT e mesmo ele não sendo mais o centro do sistema, ele está lá, como você viu agora. Não é o mesmo programa, você viu pelo jeito que ele escreveu o nome da pasta e pelo ano da nota de Copyright.

Por que ela faria isso? Porque algum programa antigo ainda poderia querer acessar o MS-DOS.

Calma, esse não é o lado mais sombrio. Antes de existir o WordPad, o Windows 3.11 tinha um editor arcaico chamado Write. Com ele, você podia escrever textos com formatação complexa, até com imagens, mas não podia mudar a cor da fonte, talvez essa fosse uma limitação do seu formato WRI, que fora descontinuado com o aparecimento do WordPad, que usa o RTF.

Mas vá para a pasta C:\Windows\System32. Vá até o final e... OH! Está lá! Um aplicativo chamado Write,exe, com o mesmo ícone! Vamos clicá-lo e... ufa, ele abre o WordPad.

Esse programa deve ser apenas uma instrução para iniciar o WordPad. Por que a Microsoft colocaria um aplicativo chamado Write que abre o WordPad?

Simples: se você tentar rodar no XP um programa feito em 1994 que chama o Write, ele vai ter o que fazer.

Aliás, você sabia que, no Windows 3.11, não havia barra de tarefas ou menu Iniciar? O que existia era uma janela chamada Gerenciador de Programas, que continha Grupos, arquivos binários com a extensão GRP que continham itens, ou atalhos de programas.

Quer saber como ele era? Aproveite que está na System32 e procure o Progman.exe. Voila. Aproveite e veja outro programa do 3.11, o Packager.exe, que eu nunca soube pra que servia. 

O exemplo do Word

Por que a Microsoft mantém versões 32-bit de programas obsoletos que você nunca vai usar em seus sistemas mais modernos? Para que você possa, é claro, se quiser, rodar um programa antigo no Windows.

Vamos ver o exemplo do Microsoft Word. Se você tiver o Word 2007, voc~e pode abrir e salvar documentos nos formatos do Word 2007, 2003, XP, 2000, 97, 95, 6.0 e, até, Word para DOS (você sabia que a primeira versão do Word era para DOS?). Agora, se você tem o Word 97 e recebe de seu cliente um documento do Word 2007, você não vai conseguir abrir o arquivo do seu cliente. Evidentemente, seu cliente poderia ter salvo o arquivo com o formato da versão antiga, mas essa não é a opção padrão e ele não sabe que aquele menu "Salvar Arquivo como do Tipo" tem uma funcionalidade além de deixar a caixa mais bonitinha.

Convenhamos: se o formato fosse sempre o mesmo, por que eu atualizaria para uma nova versão? A substituição do Word 97 pelo 2007 existe um novo sistema e, também, um novo equipamento.

Logo, concluímos que a Microsoft sempre mantém uma compatibilidade descendente, ou seja, versões atuais são compatíveis com versões antigas, mas o inverso não é verdadeiro.

 O jeito GNU/Linux de resolver as coisas

Se você tem um aplicativo que usa uma versão antiga, mas compatível com uma versão atual, ele rodará em um GNU/Linux. Pode ser que o nome que o aplicativo exija da biblioteca seja diferente do seu nome atual.

Para resolver isso, basta usar o comando ln para criar um link simbólico da biblioteca que aponte para o arquivo com o nome que o programa espera encontrar. Isso também é muito útil, por exemplo, se você vai instalar um pacote feito para uma distribuição A em uma distribuição B e ele não encontra as bibliotecas que você sabe que tem instalados. A idéia do ln é tão útil que a Microsoft copiou implementou isso no Windows Vista, com o comamdo MKSYMLINK.

Mas, até o XP, não temos isso e, portanto, pelo sim, pelo não, ela tem que manter os programas antigos e obsoletos, enquanto o mais sensato seria criar um link para o cmd.exe chamado de command.com e um link para o wordpad chamado write.exe mas, ela não consegue fazer isso, e você tem que conviver com coisas escondidad, que você nunca usou, nunca vai usar, não sabe para que serve, mas que estão lá, ocupando espaço, e causando erros.

No caso do Erick, compartilho da opinião que o Vista tentou copiar o arquivo de todas as formas possíveis, pelo driver da gravadora, pelo driver genérico, por PIO e, por fim, pelo método do MS-DOS. Como todos falharam, esse último foi o que colocou a boca no trombone.

Logo, o DOS permanece e talvez sempre permanecerá como um fantasma para a Microsoft, como algo que eles jamais conseguirão se livrar por completo. Aliás, seria muito melhor se o Windows fosse o que ele sempre foi: uma simples interface gráfica.

Sabedorize este link no WebSapiensAdicionar este links no eu curti!Adicionar esta notícia no LinkkLink TOdiHITTAdicionar ao favorito do BlogBlogsDel.icio.us!Google!Technorati!Yahoo!
Trackback(0)
Comentarios (3)add comment

caiofs diz:

  Opa... essa eu posso ajudar a responder... isso serve apenas em carater de compatibilidade, manter o prompt (cmd) é necessário para utilização de arquivos em linha de comando, batch´s e afins,... já o command serve para o seguinte... antigamente, os softwares eram pensados e escritos com o hardware que existia, logo, com 16bit´s, aguentando toda e somente as limitações do FAT16 e afins, logo, quando veio o fat32, ntfs e tudo mais, podendo conter mais que 8 caracteres por nome de pasta ou arquivo, isso acarreta em problemas para o software que não consegue interpretar...
em grandes empresas que ainda usam sistemas muito antigos, isso é uma mão na roda e normalmente a única solução para o problema. =D

Abraços.
www.caiofs.com.br/blog
outubro 10, 2007

Get diz:

  excelente!!
Caraca, se não o melhor..... um dos melhores, parabéns andré!
outubro 10, 2007

felipemendes diz:

  Bobagem, se não existe demanda não há porque manter.

Isso acontece com todas as empresas desenvolvedoras de hardware e software. É sempre mantida a compatibilidade com a versão anterior. Só quando a tecnologia se torna depreciada ela é mantida por um tempo determinado para os desenvolvedores atualizarem e logo depois a tecnologia é removida.
outubro 10, 2007

Escreva seu Comentario
Voce precisa estar logado para postar um comentario. Por favor registre-se se caso nao tenha uma conta

Copyright 2007. All Rights Reserved.
busy
 
< Anterior   Seguinte >