quinta-feira, 17 de dezembro de 2009

edit config.sys autoexec.bat

Não faz tanto tempo assim...


Floppy Disk 5 1/4" DD - 360 KB


Floppy Disk 3 1/2" HD - 1.44 MB

... e estas eram as opções de tecnologia disponíveis para transportar dados entre computadores. Por serem mídias magnéticas havia muitas maneiras de perder o conteúdo armazenado, o que acontecia com frequência. Empiricamente, 1 a cada 10 disquetes dava problema!

Como alguns softwares ocupavam muito mais espaço do que os 1.44 MB, a solução era utilizar um compactador. O melhor deles naquela época era o famoso ARJ (Archived by Robert Jung). Aquele dos intermináveis parâmetros:

ARJ A -R -VVA -I2 -JM1 -JT1 A:DOOM.ARJ *.*

E lá ia você, disquete após disquete: doom.arj, doom.a01, doom.a02, ..., doom.a97. ;)  Isso tudo porque a porcaria do PKZip não mantinha compatíbilidade entre suas próprias versões. Sem falar que era toda uma família de executáveis: PKZip, PKUnzip, PKSFX, ... e todos sofriam do mesmo mal.


A informática era mais divertida naqueles dias! Além de ter que dominar todos os comandos do sistema operacional MS-DOS, que eu gostava tanto, eram necessários outros conhecimentos para que ele funcionasse adequadamente. Não havia a moleza das atuais placas Plug N' Play. A grande maioria era para barramento ISA e tinha que ser jumpeada corretamente para que não houvesse conflito. Para este trabalho era necessário que se conhecesse sobre IRQ e DMA, pois além de utilizá-los nas placas, os softwares também tinham que ser configurados com estes valores. Quem teve seu 486 DX4/100, 486 DX2/66, 386 e afins certamente se lembra.



A diversão não termina ai. Os computadores normalmente eram montados com 4 MB de memória EDO ou FPM, alguns com 8 MB e outros poucos com 16 MB, como era meu caso. Mas isso não era suficiente para que os aplicativos e jogos rodassem. A grande dificuldade morava nos malditos 640 KB que Bill Gates disse serem suficientes para qualquer um.


Devido à arquitetura dos primeiros PCs só era possível endereçar 1024 KB (1 MB) de memória. Com esta limitação convencionou-se que os primeiros 640 KB (memória convencional) seriam para RAM e os outros 384 KB (Upper Memory Area - UMA) ficariam reservados para hardwares (ROM BIOS, video RAM, portas de E/S). Estes 640 KB eram compartilhados pelo DOS e seus aplicativos que, com o passar do tempo, ficaram mais complexos e maiores.



Mais memória era necessária e nem toda a que havia sido reservada para hardware estava sendo utilizada. Estes espaços não utilizados (Upper Memory Blocks - UMB) foram pegos para complementar a RAM. Eventualmente, mesmo alguns espaços reservados eram utilizados! A soma destes espaços foi batizada de memória expandida (Expanded Memory Specification - EMS) que, para ser acessada, dependia de um software (EMM386.EXE).



Além disso, por um detalhe na forma de endereçamento e com o driver (HIMEM.SYS), era possível acessar diretamente mais 46 KB (High Memory Area - HMA) além dos 1024 KB. Isto permitia carregar pedaços do sistema operacional para a EMS e para a HMA, liberando boa parte da memória convencional para os aplicativos. Esta área acima de 1 MB era chamada de memória estendida (eXtended Memory Specification - XMS) e não podia ser acessada diretamente, em modo real, a não ser a pequena HMA.



A tarefa de liberar espaço nos 640 KB não era simples. Mesmo com o surgimento do MEMMAKER da Microsoft e do QEMM da Quarterdeck, que faziam otimização da memória, muita coisa tinha que ser feita manualmente. O maior desafio que encontrei na época era fazer rodar, com som, o Ultima VII: The Black Gate da Origin Systems. Ele precisava de no mínimo 548 KB da memória convencional, e já devia estar em memória o driver de mouse e o de som. Ah, sem usar EMM386!



Para ter esta configuração especial para o Ultima VII, mais uma para jogos normais e outra ainda para rodar aplicativos, eu utilizava o recurso de menu de boot, o qual permitia criar várias combinações de carregamento de sistema nos arquivos CONFIG.SYS e AUTOEXEC.BAT {1995}. O backup mais recente dos dois arquivos que encontrei foi o que está abaixo. Infelizmente acredito ter perdido a versão mais atualizada deles. De qualquer forma vai ser divertido relembrar aquele tempo...
Se você não sabia, o comando do título do post funciona! Ele coloca o CONFIG.SYS em edição. Ao terminar basta dar close que o AUTOEXEC.BAT entra em edição. ;)

Um comentário:

  1. voce sabe me dizer os tipos de memoria convencional ? :DD

    ResponderExcluir

Você se diverte lendo meus posts e eu lendo seus comentários! ;)