Se o Linux é apenas um kernel, como foram usadas suas primeiras versões (sem distribuição)?

108

O Linux é apenas um kernel, e se os usuários quiserem usá-lo, então eles precisam de uma distribuição completa. Dito isto, como foram usadas as primeiras versões do Linux quando não havia distribuições Linux?

    
por noop 07.08.2018 / 19:07

6 respostas

155

Nos primórdios do Linux, Linus lançou o código-fonte do kernel Linux em um estado "inutilizável", supostamente para sinalizar para outros que algum trabalho estava sendo feito para desenvolver um novo kernel semelhante ao Unix. Naquela época, como @RalfFriedi apontou corretamente, o kernel do Linux estava sendo compilado no Minix.

Quanto ao código "utilizável", primeiramente Linus colocou alguns utilitários junto com o kernel do Linux nos primórdios para que outros o testassem, ou seja, bash e gcc :

De História do LINUX por Linus Torvalds
Vincule os grupos do Google ao post da Usenet original .

From: [email protected] (Linus Benedict Torvalds)  
Newsgroups: comp.os.minix
Subject: What would you like to see most in minix?
Summary: small poll for my new operating system  
Message-ID: <[email protected]>
Date: 25 Aug 91 20:57:08 GMT
Organization: University of Helsinki

Hello everybody out there using minix -

I'm doing a (free) operating system (just a hobby, won't be big and professional like gnu) for 386(486) AT clones. This has been brewing since april, and is starting to get ready. I'd like any feedback on things people like/dislike in minix, as my OS resembles it somewhat
(same physical layout of the file-system (due to practical reasons) among other things).

I've currently ported bash(1.08) and gcc(1.40), and things seem to work. This implies that I'll get something practical within a few months, and I'd like to know what features most people would want. Any suggestions are welcome, but I won't promise I'll implement them :-)

Então, o Linus estava "distribuindo" o kernel e alguns programas utilitários centrais em um formato de imagem de disquete, para que alguns usuários mais avançados experimentassem e possivelmente contribuíssem.

Posteriormente, havia as imagens de disquetes de Boot-root de H J Lu. O que, se pudesse ser chamado de "distribuição", ganharia a fama de ser o primeiro capaz de ser instalado em disco, pelo menos por usuários avançados.

These were two 5¼" diskette images containing the Linux kernel and the minimum tools required to get started. So minimal were these tools that to be able to boot from a hard drive required editing its master boot record with a hex editor.

Eventualmente,onúmerodeutilitáriosdisponíveiscomeçouaaumentarmuitoaconfiguraçãododisqueteboot/rootdisquete.

MCC O Interim Linux foi então a primeira distribuição Linux já lançada capaz de ser usado por pessoas (ligeiramente) menos inclinadas técnicas, introduzindo instalação automatizada e novos utilitários, como fdisk .

MCC Interim Linux was a Linux distribution first released in February 1992 by Owen Le Blanc of the Manchester Computing Centre (MCC), part of the University of Manchester.

The first release of MCC Interim Linux was based on Linux 0.12 and made use of Theodore Ts'o's ramdisk code to copy a small root image to memory, freeing the floppy drive for additional utilities diskettes.[2]

He also stated his distributions were "unofficial experiments", describing the goals of his releases as being:

  • To provide a simple installation procedure.
  • To provide a more complete installation procedure.
  • To provide a backup/recovery service.
  • To back up his (then) current system.
  • To compile, link, and test every binary file under the current versions of the kernel, gcc, and libraries.
  • To provide a stable base system, which can be installed in a short time, and to which other software can be added with relatively little effort.

Após o precursor da MCC, SLS foi a primeira oferta de distribuição do X Window System (Maio de 1992). Notavelmente, o concorrente da SLS, o mítico Yggdrasil , saiu mais tarde (dezembro de 1992) .

Depoisvieramoutrosgrandesdistribuidores,comoosconhecemoshojeemdia,principalmente Slackware (Julho de 1993 - baseado no SLS) e Debian (de Dezembro de 1993 até o primeiro lançamento "oficial" da v1.1 - dezembro de 1995).

PS. Curiosamente, o Slackware e o Debian completam 25 anos este ano.

Créditos da imagem:
* Boot / Root diskettes image from: link
* imagem de disquete yggdrasil de: link

    
por 07.08.2018 / 19:35
17

No meu caso (c.1994), o Linux veio como imagens adequadas para disquetes de 3,5 "(1,44 MB), provavelmente a continuação das imagens de 5 1/4" mencionadas acima, e cada uma tem um conjunto específico de drivers compilado em (rede, VGA, etc.). Então você precisava saber o que precisava e esperar que tivesse um hardware adequado.

Depois que você inicializou, e pôde se conectar à LAN ou ao dial-up via modem, você foi e encontrou o software que precisava (FTP, gopher etc. - isso foi logo no início da "web" e dos mecanismos de busca realmente não existia ainda, então você tinha que saber para onde ir ou a quem perguntar) e construiu você mesmo.

Eu estava em êxtase quando consegui inicializar o 486DX e discar para a rede da minha universidade (56k!) e montar um compartilhamento do AFS na máquina em casa ... esses eram os dias. ;)

    
por 08.08.2018 / 02:31
12

A versão curta

No momento em que o Linus iniciou seu kernel, o projeto do Gnu tinha um sistema operacional em funcionamento, exceto por um kernel funcional. Então, quando as pessoas olharam em volta, encontraram todas as ferramentas de que precisavam: gcc (e amigo: binutils), bash (e amigos gnu-utils), emacs,…

Eles então construiriam seu próprio sistema, a partir das partes.

É de onde vem essa piada: “Se o MS-Windows fosse um avião, ele subiria a 10 mil pés e explodiria matando todo mundo na lateral, mas pelo menos você não teria que construir sua própria aeronave antes de você partem. ”

    
por 08.08.2018 / 12:51
11

Em seu livro " Just for Fun " Linus Torvalds mencionou que o kernel do Linux era inicialmente um simples emulador de terminal para conexão remota Máquina Unix através de um modem:

So ultimately I was able to change the two threads, the AAAAAAAA and BBBBBBB, so that one read from the modem and wrote to the screen, and the other read from the keyboard and wrote to the modem. I had my own terminal emulation program.

When I wanted to read news, I would put in my floppy and reboot the machine, and I would read news from the university computer using my program. If I wanted to make changes to improve the terminal emulation package, I would boot into Minix and use it for programming...

And because I wanted to save files to my Minix file system — and because the Minix file system was well-documented anyway — I made my file system compatible with the Minix file system...

By the time I did this it was clear the project was on its way to becoming an operating system. So I shifted my thinking of it as a terminal emulator to thinking of it as an operating system.

    
por 10.08.2018 / 00:00
10

Editado: Removido embaraçoso falta de compreensão de como funcionam os kernels e deixou a parte importante.

A área de usuário GNU existia antes do kernel do Linux.

link

link

Peter MacDonald é amplamente reconhecido por ter criado a primeira distribuição GNU / Linux 'utilizável'.

link

link

Da memória de algumas discussões que tive com ele: Peter estava trabalhando como administrador de sistemas Unix para o governo e indo para a Universidade de Victoria para um mestrado. Peter queria uma maneira de trabalhar em casa, mas os custos de licença de desktop do Unix eram proibitivos. Ele já estava familiarizado com as ferramentas GNU userland, então quando ele viu a mensagem de Linus Torvalds na rede da Universidade, ele aproveitou ao máximo as ferramentas GNU para o novo kernel. Então, realmente, o problema inicial foi o inverso da sua pergunta: o userland já existia e tudo o que era necessário era um kernel.

Algumas outras informações históricas:

  • Peter não distribuiu o SLS Linux e não cobrou nenhuma taxa pelo software. O SLS foi distribuído por sua esposa Colleen e a taxa foi pelo processo caro e demorado de gravar CDs para serem enviados pelo correio.
  • Peter fez várias contribuições enormes para o kernel que nunca foram reconhecidas, incluindo o carregamento de módulos dinâmicos e o gerenciamento de memória aprimorado.
  • O software era 'buggy' porque ele estava trabalhando, indo à escola, criando dois filhos e tentando manter os usuários de Linux felizes. Todos nós sabemos como é fácil manter os usuários do Linux felizes ...
  • Peter não se lembra do 'argumento' / 'desacordo' sobre os scripts do instalador que outros alegaram ter causado uma falha que iniciou o Slackware e o Debian.
por 09.08.2018 / 22:57
2

O Linux foi iniciado como um substituto aprimorado para o Minix e para entender a programação em modo protegido em um i386. Minix veio com a fonte, e na época havia os utilitários GNU userland e os utilitários BSD userland. Ambos estavam disponíveis com a fonte. O Linux tentou ser compatível com POSIX, então a portabilidade não foi tão difícil. Um dos primeiros passos foi executar o bash no Linux. Você pode considerar os primeiros dias do Linux como compilação cruzada, o kernel teve que ser compilado em outro sistema.

    
por 07.08.2018 / 19:22