Escritos
B. Piropo
Anteriores:
< Trilha Zero >
Volte de onde veio
31/03/1997

< Levando em Conta as Diferenças >


A grande expansão da informática pessoal ocorreu nos últimos cinco anos, depois que Windows passou a dominar o mercado. Portanto, estatisticamente, a maior probabilidade é que você não conheça o DOS e não pertença àquela (hoje) minoria sofrida e curtida para quem um dia ele foi o único sistema operacional e que teve que dominar seus comandos crípticos e se acostumar com sua interface ríspida, aprendendo a conhecer suas manhas e exigências.

Se é assim, permita-me informar que naqueles dias um sistema operacional não dava muita confiança aos programas. Quer dizer: carregava-os, é claro, mantinha-os rodando e supria suas necessidades básicas, fornecendo suporte para atividades comuns como ler e gravar arquivos no disco e exibir caracteres na tela. Mas fora isto não se incomodava muito com eles. A única intimidade que lhes dava era manter uma lista de valores internos, chamados "variáveis ambientais", que os programas (e ele próprio, o DOS) podiam consultar e se ajustar de acordo. Manter estas variáveis (usadas até hoje por alguns programas DOS) ajustando seus valores com o comando SET era o máximo de colher de chá que o velho DOS concedia aos programas para levar em conta suas diferentes configurações. Coisa que até podia ser considerada natural em um sistema monotarefa, ou seja, concebido para rodar um programa de cada vez. Como em uma situação destas cada programa "toma conta" da máquina e pode ajustá-la de acordo com suas configurações particulares, não havia necessidade que o sistema operacional provesse suporte a diferentes configurações dos programas. E muito menos que um programa se preocupasse com a configuração de outro, já que em princípio jamais poderiam rodar juntos sob o DOS.

Depois veio Windows, que chamou a atenção pelo fato de ser uma interface gráfica e pelo uso abundante de ícones e mouse, grandes novidades para a época. Mas cuja característica mais revolucionária (que quase passou despercebida) foi consolidar o uso da multitarefa, ou seja, a possibilidade de manter diversos programas rodando ao mesmo tempo. Além de estender extraordinariamente os serviços prestados pelo sistema operacional aos programas. Por exemplo: enquanto Windows cuida das tarefas de impressão e gerenciamento de fontes para todos os programas e após configurá-lo para a sua impressora você nunca mais se preocupa com o assunto, nos tempos do DOS quem se entendia com a impressora era o programa, não o sistema operacional. Quer dizer: se você trocasse de impressora, teria que conseguir um driver da nova impressora para cada programa, uma empreitada que se não o deixasse doido, levava-o perto (eu mesmo acabei sendo conduzido ao desatino de passar a usar Windows regularmente depois que comprei minha primeira impressora laser e não consegui fazer com que ela se entendesse com meus programas).

O advento de Windows introduziu então não somente uma nova forma dos usuários se comunicarem com o sistema operacional como também, e sobretudo, uma forma inteiramente nova do sistema operacional se comunicar com os aplicativos. Na qual as diferentes configurações dos programas assumiam extrema importância, já que eles não apenas interagiam com o sistema operacional como ainda, com o advento de funções do tipo DDE (Dinamic Data Exchange) e OLE (Object Linking and Embedding), trocavam dados e comunicavam-se entre si. E para levar em conta tantas e tão importantes diferenças de configuração as velhas variáveis ambientais do DOS já não serviam por serem demasiadamente limitadas.

A forma pela qual Windows enfrentou o problema foi a adoção dos arquivos de inicialização, os famosos arquivos de extensão Ini dos quais os mais conhecidos são o Win.Ini e o System.Ini. Mas se você usa Windows (sobretudo, mas não apenas, Windows 3.x), vasculhe seu disco rígido para ter uma idéia do número e diversidade dos arquivos Ini que lá se escondem (em minha máquina são quase centena e meia).

A idéia é engenhosa e simples. Veja como funciona: um arquivo de inicialização é um arquivo texto formado por um conjunto de linhas que podem, por conveniência, serem grupadas em "seções". Os nomes das seções aparecem entre colchetes e apenas servem para indicar que aquele conjunto de linhas tem alguma característica em comum. Linhas precedidas por um ";" (ponto-e-vírgula) são desprezadas e servem apenas para incluir um comentário explicativo. As demais são constituídas tipicamente por duas partes separadas por um sinal de igualdade, a primeira contendo o nome de uma variável e a segunda seu valor. Estes arquivos são lidos linha a linha quando se carrega Windows e alguns programas que os usam, e cada linha é interpretada de acordo. Com eles, não apenas é possível informar Windows e todos os demais programas sobre certos detalhes de configuração de cada aplicativo como se pode carregar drivers e rodar programas auxiliares para fornecer suporte a dispositivos específicos.

Como eu disse uma idéia simples e engenhosa. Mas, como toda idéia simples e engenhosa, se mal usada pode gerar resultados desastrosos. Que discutiremos semana que vem.

B. Piropo