Um momento
Todos os artigos
Programação 18 min de leitura

O Que É o DOS? Um Guia Simples do Sistema Operacional Que Começou a Era do PC

Um guia simples e sem jargão sobre o DOS, o sistema operacional só de texto dos primeiros computadores pessoais. Veja como ele funcionava, por que os nomes de arquivo tinham 8 letras, o que era o limite de 640 KB e onde o DOS ainda vive no Windows.

nbkhope
Nesta página

Imagine ligar um computador e ver... quase nada. Nenhuma imagem, nenhum ponteiro de mouse, nenhum ícone. Só uma tela preta, algumas letras e um tracinho piscando:

C:\>_

Para milhões de pessoas nos anos 1980 e no começo dos anos 1990, era assim que se usava um computador. O programa por trás daquele tracinho piscando era o DOS, o sistema que levou o computador pessoal para mesas de escritórios, escolas e casas no mundo todo. Este artigo explica, em linguagem simples, o que era o DOS, como as pessoas o usavam, por que ele tinha alguns limites estranhos e por que ainda existem pedaços dele dentro do seu computador com Windows.

O que é o DOS?

DOS quer dizer Disk Operating System, ou "sistema operacional de disco". O nome vem do seu trabalho principal: cuidar dos arquivos guardados em discos, que no começo eram finos e flexíveis disquetes.

Existiram várias versões do DOS feitas por empresas diferentes, mas a mais famosa, de longe, foi o MS-DOS, da Microsoft. A IBM vendia a sua própria edição, chamada PC DOS. Quando alguém fala "DOS" hoje, quase sempre quer dizer o MS-DOS ou um parente próximo dele.

O DOS tinha três características marcantes:

  • Só texto. Você comandava o computador digitando comandos no teclado. Não havia mouse (no começo) nem janelas.
  • Um programa por vez. Você abria um programa, usava, fechava e só então abria outro.
  • Pequeno e simples. O sistema inteiro cabia num único disquete, com espaço de sobra.

Esta é uma sessão real do DOS, executada para este artigo no DOSBox, um programa gratuito que imita um computador antigo com DOS:

Como era usar o DOS: uma sessão real no emulador DOSBox, mostrada num monitor bege. O usuário digita DIR e o DOS lista quatro arquivos: CARTA.TXT com 45 bytes, FOTOSD1.TXT com 38 bytes, LISTAD1.TXT com 18 bytes e OLA.COM com 26 bytes, num total de 127 bytes. Depois, TYPE CARTA.TXT mostra "Querida tia Ana, Obrigado pelos biscoitos!", e OLA mostra "Olá do DOS!". Notas explicam que "C:>" é o prompt esperando um comando no drive C, que todo nome de arquivo tem no máximo 8 letras, um ponto e mais 3, e que OLA.COM é um programa completo com apenas 26 bytes. Sem mouse, sem janelas, sem ícones: só texto

A famosa história de origem

O DOS nasceu de um dos negócios mais famosos da história.

Em 1980, a IBM, na época a gigante do mundo dos computadores, corria para lançar o seu primeiro computador pessoal, o IBM PC. Ela precisava de um sistema operacional e pediu ajuda a uma pequena empresa chamada Microsoft, de Bill Gates e Paul Allen. A IBM tinha procurado antes a Digital Research, criadora de um sistema popular chamado CP/M, mas esse negócio não saiu (os motivos ainda são discutidos).

A Microsoft também não tinha um sistema operacional. Mas um programador chamado Tim Paterson, de uma pequena empresa de Seattle chamada Seattle Computer Products, tinha acabado de escrever um em poucos meses. Ele o chamou de 86-DOS, e o apelido de trabalho era QDOS: o "Quick and Dirty Operating System", algo como "sistema operacional rápido e malfeito". A Microsoft comprou os direitos, segundo os relatos por cerca de 75 mil dólares no total, melhorou o sistema e o licenciou para a IBM.

O IBM PC foi lançado em agosto de 1981 com o PC DOS 1.0. E aí vem a parte esperta: a Microsoft manteve o direito de vender a sua própria versão, o MS-DOS, para outros fabricantes. Quando empresas como a Compaq começaram a fabricar os seus próprios PCs "compatíveis com IBM", todas precisavam do MS-DOS. Esses PCs compatíveis dominaram o mundo, e a Microsoft virou uma das maiores empresas do planeta.

Como o DOS funciona

O DOS é feito de algumas peças pequenas, empilhadas umas sobre as outras:

Como o DOS é montado, como uma pilha de camadas. No topo, você digita um comando, como DIR ou JOGO. O COMMAND.COM, o interpretador de comandos, lê o que você digita e executa. O MSDOS.SYS, o núcleo, cuida de arquivos, pastas, memória e de iniciar programas. O IO.SYS junto com a BIOS conversam com o hardware: discos, tela, teclado e impressora. Na base está o próprio hardware: drives de disquete, disco rígido, monitor e teclado. Ao lado, o seu programa, como um jogo, um editor de texto ou uma planilha, pode pedir ajuda ao DOS ou pular o DOS e falar direto com o hardware. No IBM PC esses arquivos se chamavam IBMBIO.COM e IBMDOS.COM. Só um programa rodava por vez, e ele podia tomar conta da máquina inteira
  • COMMAND.COM é a parte com quem você conversa. Ele mostra o prompt C:\>, lê o que você digita e executa.
  • MSDOS.SYS é o núcleo. Ele controla arquivos e pastas, distribui a memória e inicia os programas.
  • IO.SYS e a BIOS, que vem embutida no computador, fazem o trabalho de baixo nível de conversar com os discos, a tela e o teclado.

Diferente dos sistemas modernos, o DOS não se protegia dos programas. Um jogo podia ignorar o DOS completamente e desenhar direto na tela ou tocar sons direto pelo hardware, o que deixava os jogos rápidos, mas também tornava os travamentos comuns. Se um programa dava problema, a solução de sempre era reiniciar o computador.

Conversando com o DOS: comandos e letras de drive

Usar o DOS significava aprender alguns comandos. Estes são alguns dos mais comuns:

ComandoO que fazExemplo
DIRLista os arquivos da pasta atualDIR
CDEntra em outra pasta ("change directory")CD JOGOS
COPYCopia um arquivoCOPY CARTA.TXT A:
DELApaga um arquivoDEL VELHO.TXT
TYPEMostra o conteúdo de um arquivo de textoTYPE CARTA.TXT
MDCria uma pasta nova ("make directory")MD FOTOS
CLSLimpa a telaCLS
FORMATPrepara um disco para uso (e apaga tudo nele!)FORMAT A:

Se você digitasse um comando errado, o MS-DOS respondia com uma mensagem que muita gente ainda lembra: Bad command or file name ("comando ou nome de arquivo inválido").

O C: no prompt é uma letra de drive. Os primeiros PCs tinham um ou dois drives de disquete, chamados A: e B:. Quando os discos rígidos chegaram, o primeiro virou C:. É por isso que, mais de 40 anos depois, o disco principal de um computador com Windows ainda se chama C:, mesmo que a maioria dos computadores nem tenha mais drive de disquete.

A regra 8.3 dos nomes de arquivo

O DOS tinha uma regra rígida para nomes de arquivo: um nome de até 8 caracteres, um ponto e uma extensão de até 3 caracteres, como CARTA.TXT ou JOGO.EXE. Sem espaços, sem acentos e sem diferença entre maiúsculas e minúsculas. Isso ficou conhecido como a regra 8.3.

A extensão dizia a você (e ao DOS) que tipo de arquivo era aquele. .COM, .EXE e .BAT eram programas que você podia executar. .TXT era texto simples. .SYS era arquivo do sistema.

Testamos a regra colocando arquivos com nomes longos numa pasta e pedindo ao DOS para listá-los:

A regra 8.3 dos nomes de arquivo. Um nome tem até 8 letras, um ponto e uma extensão de até 3, como ABCDEFGH.TXT. Extensões comuns: .COM, .EXE e .BAT para programas, .TXT para texto, .SYS para arquivos do sistema. Resultados reais do DOS no emulador DOSBox: CARTA.TXT continua CARTA.TXT porque cabe na regra; "fotos das ferias de verao.txt" vira FOTOSD~1.TXT, cortado em 6 letras mais 1; e "lista de compras.txt" vira LISTAD1.TXT, porque espaços não são permitidos. O Windows 95 depois permitiu nomes longos, guardando discretamente um nome curto para programas antigos

O DOS não conseguia ver os nomes longos. Ele mostrava versões encurtadas, cortadas em seis letras e seguidas de ~1 para que não se repetissem. Esse truque veio do Windows 95, que trouxe os nomes longos em 1995, mas guardava discretamente um nome 8.3 para cada arquivo, para que os programas antigos do DOS ainda conseguissem abri-los.

Arquivos batch: pequenos roteiros

Um arquivo batch (terminado em .BAT) é um arquivo de texto com uma lista de comandos do DOS, executados um depois do outro. Era o jeito mais simples de automatizar uma tarefa. O arquivo batch que usamos para a sessão acima era assim (a parte > D:\DIR.TXT guarda o resultado de cada comando num arquivo em vez de mostrá-lo na tela):

1@ECHO OFF
2C:
3DIR > D:\DIR.TXT
4TYPE CARTA.TXT > D:\TYPE.TXT
5OLA > D:\OLA.TXT
6MEM > D:\MEM.TXT
7EXIT

Dois arquivos de inicialização eram especialmente importantes. Toda vez que o computador ligava, o DOS lia o CONFIG.SYS (que configurava a memória e os dispositivos) e executava o AUTOEXEC.BAT (que rodava os seus comandos de inicialização preferidos). Editar esses dois arquivos para liberar um pouco mais de memória para um jogo novo era um rito de passagem para toda uma geração de usuários.

Os famosos 640 KB

O IBM PC original podia usar no máximo 1 MB (1.024 KB) de memória. Os projetistas reservaram a parte de cima para coisas como a memória de vídeo e a BIOS, o que deixava 640 KB para o DOS e os seus programas. Essa área se chamava memória convencional.

Os famosos 640 KB. Como o IBM PC original dividia o primeiro 1 MB de memória, sendo que 1 KB é cerca de 1.000 letras de texto. De 0 a 640 KB fica a memória convencional, onde o DOS e o seu programa tinham que caber. De 640 KB a 1.024 KB fica a memória superior, reservada para a memória de vídeo, a BIOS e placas extras. O comando MEM, executado para este artigo, informa 632 Kb de memória convencional livre. Um notebook típico hoje tem 16 GB, mais de 25.000 vezes 640 KB. Truques posteriores, como memória estendida e expandida e blocos de memória superior, deixaram os programas ir além de 1 MB, mas espremer tudo abaixo de 640 KB era um quebra-cabeça diário para quem usava DOS

Em 1981, 640 KB parecia enorme: muitos dos primeiros PCs eram vendidos com apenas 16 ou 64 KB. Mas os programas cresceram rápido, e o limite de 640 KB virou uma das maiores dores de cabeça da era do DOS. Versões posteriores do DOS e programas extras inventaram jeitos espertos de usar a memória além do limite, com nomes como memória estendida, memória expandida e blocos de memória superior. Jogos grandes como o Doom (1993) usavam um programa auxiliar chamado DOS extender para escapar totalmente do limite.

Quando rodamos o comando MEM no DOSBox, ele informou 632 KB de memória convencional livre. (O DOSBox ajuda bastante os programas nos bastidores; num PC real dos anos 1990, com os drivers do mouse, da placa de som e do CD-ROM carregados, conseguir mais de 600 KB livres dava bastante trabalho.)

Como os programas do DOS eram pequenos

O DOS rodava em computadores com pouquíssima memória e espaço, então os programas tinham que ser minúsculos. Medimos alguns:

Como os programas do DOS eram pequenos, numa escala em que cada degrau é 10 vezes maior, medidos para este artigo. Um programa que mostra uma saudação: para DOS, em assembly, 26 bytes; em C para Linux, 16 KB; em C para Windows 11, 117 KB. O programa que lê os seus comandos: COMMAND.COM do MS-DOS 1.25, 5,0 KB; COMMAND.COM do MS-DOS 2.0, 15 KB; cmd.exe no Windows 11, 340 KB; bash no Ubuntu 24.04, 1,4 MB. Não é uma disputa justa: programas modernos têm muito mais recursos, verificações de segurança e suporte a idiomas e hardware. Mas mostra quanto o DOS fazia com tão pouco

O nosso programa de saudação para DOS tinha só 26 bytes: menos do que esta frase. Aqui está ele, escrito em linguagem assembly, que dá as instruções ao processador uma por uma:

1org 100h
2    mov dx, mensagem
3    mov ah, 9
4    int 21h
5    mov ax, 4C00h
6    int 21h
7mensagem db 'Ol', 0A0h, ' do DOS!', 13, 10, '$'

Em português claro: "coloque aqui o endereço da mensagem, peça ao DOS para mostrá-la (função número 9) e depois peça ao DOS para encerrar o programa". A linha int 21h é como um programa pede ajuda ao DOS. Todo programa do DOS, de um utilitário minúsculo a uma planilha gigante, usava essa linha. (E o 0A0h? É o código da letra "á" na tabela de caracteres do DOS, que não usava a mesma numeração de hoje.)

A mesma saudação escrita em C (veja O Que É a Linguagem de Programação C?) ficou com 16 KB no Linux e 117 KB no Windows 11, porque programas modernos incluem código extra para iniciar, tratar erros e funcionar com os sistemas de hoje. O interpretador de comandos inteiro do MS-DOS 1.25, o COMMAND.COM, tinha menos de 5 KB.

O código-fonte, agora livre para ler

Durante décadas, o código do MS-DOS foi um segredo bem guardado. Até que a Microsoft o abriu: compartilhou o código das primeiras versões com o Computer History Museum em 2014, publicou-o no GitHub sob a licença aberta MIT em 2018 e acrescentou o MS-DOS 4.0 em 2024. Qualquer pessoa pode lê-lo. Baixamos o código e contamos as linhas:

O código-fonte do MS-DOS, agora livre para ler. Linhas nos arquivos-fonte que a Microsoft liberou, contadas para este artigo. MS-DOS 1.25, de 1982: 13.580 linhas em 7 arquivos. MS-DOS 2.0, de 1983: 51.686 linhas em 100 arquivos. MS-DOS 4.0, de 1988: 506.848 linhas em 1.065 arquivos. Para comparar, o Linux 7.0, de 2026, tem 42,3 milhões de linhas, cerca de 83 vezes o MS-DOS 4.0. A Microsoft compartilhou as primeiras versões em 2014, colocou-as sob a licença aberta MIT em 2018 e acrescentou a versão 4.0 em 2024. A maior parte é linguagem assembly, escrita à mão para o processador 8086

O MS-DOS 1.25 tem cerca de 13.600 linhas em 7 arquivos (incluindo algumas ferramentas que a empresa de Tim Paterson usava para montá-lo). O MS-DOS 4.0 tem cerca de 507.000 linhas, porque inclui dezenas de programas e utilitários extras. Para comparar, a versão mais recente do kernel Linux tem mais de 42 milhões de linhas. A maior parte do código do MS-DOS é linguagem assembly, escrita à mão, instrução por instrução, para a família de processadores Intel 8086.

Do DOS ao Windows

O Windows começou como um programa que rodava em cima do DOS. Do Windows 1.0 (1985) até o 3.11, você ligava o computador no DOS e depois digitava WIN para abrir o Windows.

Do DOS ao Windows, como uma linha do tempo de 1980 até hoje. MS-DOS sozinho: de 1981 a 1994, com a 6.22 como última versão. Windows 1.0 a 3.11: a partir de 1985, rodava em cima do DOS, e você digitava WIN para abri-lo. Windows 95, 98 e ME: de 1995 a 2000, construídos sobre o DOS, escondido por baixo. A família Windows NT, de 1993 até hoje, incluindo NT, 2000, XP, Vista, 7, 10 e 11, não tem DOS dentro. O Windows XP, em 2001, levou a família NT aos computadores de casa e encerrou o Windows baseado em DOS. Seu Prompt de Comando ainda entende DIR, CD, COPY e TYPE
  • O MS-DOS 6.22 (1994) foi a última versão do MS-DOS vendida separadamente.
  • O Windows 95, 98 e ME ainda tinham o DOS escondido por baixo. O computador ligava no DOS e logo passava para o Windows.
  • O Windows XP (2001) levou aos computadores de casa a família separada Windows NT, construída do zero sem DOS. Todos os Windows desde então, incluindo o Windows 11, fazem parte dessa família.

Mas o DOS não sumiu completamente. O Prompt de Comando do Windows (cmd.exe) não é o DOS, mas foi feito para parecer com ele: DIR, CD, COPY, DEL e TYPE continuam funcionando. E algumas regras antigas do DOS ainda estão vivas. Tentamos criar uma pasta chamada CON num notebook com Windows 11:

mkdir CON
The directory name is invalid.

CON (o console), PRN (a impressora), AUX, NUL, COM1 e LPT1 eram nomes especiais de dispositivos no DOS, e o Windows ainda se recusa a criar uma pasta com esses nomes, mais de 40 anos depois. (A mensagem quer dizer "o nome do diretório é inválido".)

O DOS e os jogos

Para muita gente, DOS sempre vai significar jogos. Como um jogo de DOS podia tomar conta do computador inteiro, os desenvolvedores conseguiam tirar até a última gota de velocidade da máquina. Clássicos como Prince of Persia, SimCity, The Secret of Monkey Island, Wolfenstein 3D e Doom eram jogos de DOS, e fazê-los funcionar (com as configurações certas de memória e as opções certas de placa de som) fazia parte da aventura.

As versões modernas de 64 bits do Windows não conseguem rodar programas antigos do DOS diretamente. É por isso que existem emuladores como o DOSBox: eles imitam um PC antigo com DOS dentro de um computador moderno. Muitas lojas de jogos vendem clássicos do DOS já acompanhados do DOSBox, e o Internet Archive deixa você jogar milhares deles direto no navegador.

O DOS ainda é usado?

Surpreendentemente, sim, um pouco:

  • O FreeDOS, um DOS livre e de código aberto iniciado em 1994 por Jim Hall, ainda é mantido por voluntários. Ele roda a maioria dos programas antigos do DOS em hardware moderno.
  • Algumas empresas e fábricas ainda usam programas antigos de DOS que controlam máquinas ou guardam registros, porque eles funcionam e substituí-los é arriscado ou caro.
  • Alguns fabricantes de computadores já usaram pequenos sistemas DOS para tarefas como atualizar o firmware embutido do computador.
  • Fãs de jogos retrô usam o DOSBox e o FreeDOS para jogar e preservar os clássicos.

As desvantagens

O DOS era simples, rápido e pequeno, mas tinha limites de verdade:

  • Um programa por vez. Não dava para deixar um documento aberto enquanto se consultava algo em outro programa (pelo menos não sem complementos especiais).
  • Nenhuma proteção. Qualquer programa podia travar o computador inteiro, ou até estragar arquivos, por acidente ou de propósito.
  • Dores de cabeça com memória. O limite de 640 KB obrigava os usuários a mexer no CONFIG.SYS e no AUTOEXEC.BAT.
  • Difícil de aprender. Era preciso decorar comandos e digitá-los exatamente certo. Um prompt vazio não diz a um iniciante o que fazer.
  • Sem usuários nem senhas. Qualquer pessoa sentada diante do computador podia ler ou apagar qualquer coisa.

Foram exatamente esses problemas que o Windows, o Mac e os sistemas parecidos com o Unix resolveram, com janelas, mouse, vários programas ao mesmo tempo e memória protegida.

Uma breve história

Uma breve história do DOS, como linha do tempo. 1980: Tim Paterson escreve o 86-DOS, apelidado de QDOS. 1981: o IBM PC chega com o PC DOS 1.0. 1983: o MS-DOS 2.0 traz pastas e discos rígidos. 1985: o Windows 1.0 roda sobre o DOS. 1991: o MS-DOS 5.0 traz o editor de texto EDIT e o QBasic. 1993: chega o Doom. 1994: MS-DOS 6.22, e começa o projeto FreeDOS. 2001: Windows XP, sem DOS por baixo. 2024: o código-fonte do MS-DOS 4.0 é liberado

Um pequeno glossário

  • DOS: Disk Operating System, um sistema operacional simples, baseado em texto, para os primeiros computadores pessoais.
  • MS-DOS / PC DOS: a versão do DOS da Microsoft e a edição que a IBM vendia com os seus PCs.
  • Prompt: o texto C:\> que mostra que o DOS está esperando um comando.
  • Comando: uma palavra que você digita para dizer ao DOS o que fazer, como DIR ou COPY.
  • Letra de drive: uma letra que dá nome a uma unidade de disco; A: e B: para os drives de disquete, C: para o primeiro disco rígido.
  • Nome 8.3: um nome de até 8 caracteres, um ponto e uma extensão de até 3.
  • Extensão: a parte depois do ponto que diz o tipo do arquivo, como .TXT ou .EXE.
  • Arquivo batch: um arquivo .BAT com uma lista de comandos para executar um depois do outro.
  • AUTOEXEC.BAT / CONFIG.SYS: arquivos que o DOS lia toda vez que o computador ligava.
  • Memória convencional: os primeiros 640 KB de memória, onde o DOS e os programas rodavam.
  • COMMAND.COM: o programa que lê e executa os seus comandos.
  • Emulador: um programa que imita outro computador, como o DOSBox imitando um PC antigo com DOS.
  • FreeDOS: um DOS livre e de código aberto que ainda é mantido hoje.

Para encerrar

O DOS era pequeno, simples e às vezes frustrante, mas foi o sistema que transformou o computador pessoal de um hobby em algo presente em toda mesa de escritório. Ele começou como um programa "rápido e malfeito", escrito em poucos meses, virou a base do sucesso da Microsoft e carregou o PC pelos seus primeiros 15 anos.

Da próxima vez que você vir "C:" no seu computador, ou digitar dir no Prompt de Comando, estará olhando para um pedacinho do DOS que nunca foi embora.

Obrigado pela leitura!

Conhece alguém que vai gostar? Mande para essa pessoa.

Mais artigos

Read next

Comentários

Be kind and specific. Comments with links from new accounts appear after a moderator reviews them.