Bem-vindo ao repositório UNIX da 1ª Edição. Aqui você encontrará o código-fonte do kernel e os binários do ambiente de usuário que permitirão executar o 1e UNIX em um simulador PDP-11.
Salvo indicação em contrário, os nomes de arquivos e diretórios referem-se a este repositório.
Baixe o código-fonte do simulador Simh aqui: http://simh.trailing-edge.com/. Certifique-se de baixar a versão 3.8-0 ou posterior; versões anteriores precisam de patches para funcionar.
Desempacote Simh em algum lugar. Coloque o diretório BIN/ em Simh no nível superior. Faça make pdp11 para criar o simulador pdp11 no diretório BIN/. Copie o executável BIN/pdp11 para o diretório tools/.
Retorne ao diretório de nível superior da 1ª Edição. Faça uma make. Isso fará várias coisas. Ele irá construir ferramentas/mkfs, ferramentas/ml e ferramentas/apout/apout. Essas ferramentas são necessárias para construir os sistemas de arquivos para 1e UNIX e o kernel. Ele criará fontes de kernel com alguns patches necessários, montará o kernel e construirá uma imagem de memória Simh inicializável que é instalada no diretório de imagens. Finalmente, o make construirá as imagens rf0.dsk, rk0.dsk e fita e as instalará no diretório de imagens. Você também pode fazer um "make clean" para limpar os diretórios images/ e build/. Um "make clobber" limpará os diretórios images/, build/ e tools/.
Execute ./simh.cfg que inicia o simulador pdp11. Você deveria ver isto:
Simulador PDP-11 V3.8-0 ./simh2.cfg> #!tools/pdp11 Comando desconhecido Desativando CR Desativando XQ RF: armazenando arquivo em buffer na memória TC0: formato 16b, armazenando arquivo em memória Escutando na porta 5555 (soquete 7)
Você receberá um prompt de login::
Digite root seguido de . Você deve receber um prompt #.
Digite um comando ls -l. Você deverá ver algo assim:
total 6 43 sdrwr- 2 raiz 620 1º de janeiro 00:00:00 bin 42 sdrwr- 2 raiz 250 1º de janeiro 00:00:00 dev 104 sdrwr- 2 raiz 110 1º de janeiro 00:00:00 etc 114 sdrwr- 2 raiz 50 1º de janeiro 00:00:00 tmp 41 sdrwr- 7 root 70 1º de janeiro 00:00:00 usr
Para alterar diretórios, use chdir, por exemplo, chdir /usr. O único editor instalado é o `ed'. Você pode encontrar um tutorial ed em notas/edtut.txt.
Para efetuar login várias vezes, faça telnet para a porta localhost 5555. O sistema está configurado para permitir 8 logins remotos.
Para desligar o sistema, digite ctrl-E para parar o simulador e q para sair. Você não precisa sincronizar o sistema antes de desligar.
Os manuais para a 1ª edição do UNIX estão disponíveis aqui: https://www.bell-labs.com/usr/dmr/www/1stEdman.html e http://www.bitsavers.org/pdf/bellLabs/unix/UNIX_ProgrammersManual_Nov71 .pdf
Alguma documentação interna da 1ª Edição UNIX está disponível aqui: http://www.bitsavers.org/pdf/bellLabs/unix/PreliminaryUnixImplementationDocument_Jun72.pdf
Detalhes da arquitetura PDP-11/20 e seus periféricos podem ser encontrados em: http://www.bitsavers.org/pdf/dec/pdp11/handbooks/PDP1120_Handbook_1972.pdf http://www.bitsavers.org/pdf/ dez/pdp11/handbooks/PDP11_PeripheralsHbk_1972.pdf
O compilador C da 2ª Edição UNIX também está instalado e funciona, mas a linguagem é um dialeto muito antigo de C. A referência mais próxima à linguagem neste momento é esta, mas provavelmente é 2 anos tarde demais: https:/ /www.bell-labs.com/usr/dmr/www/cman74.pdf
Os binários userland vêm de um período entre a 1ª e a 2ª edição do UNIX. Você também pode achar os manuais 2e úteis: http://www.bitsavers.org/pdf/bellLabs/unix/Unix_2nd_Edition_Manual_Jun72.pdf
páginas/ - páginas com OCR do documento PreliminaryUnixImplementation reconstruídas/ - fonte do kernel reconstruída a partir das páginas com OCR, como arquivos asm patches/ - patches para reconstruídos/ arquivos para fazer o kernel rodar fs/ - binários e arquivos do userland, usados para make rf0.dsk e rk0.dsk src/ - código fonte para a área do usuário: não há muitas ferramentas disponíveis/ - ferramentas e scripts para construir o kernel e o sistema de arquivos build/ - build área: arquivos de kernel corrigidos, imagens de sistemas de arquivos corrigidos/ - imagens finais de disco e fita a serem usadas pelo simulador Simh misc/ - misc. arquivos, por exemplo, o patch Simh para notas de suporte KE11A/ - notas sobre o trabalho feito para fazer o 1e UNIX rodar novamente diffs/ - Diferenças entre páginas/* e o OCR de alta qualidade feito por James Markevitch. Inclui cabeçalhos e rodapés.