ELKS, uma variante do Linux para processadores Intel de 16 bits mais antigos

Faz pouco o lançamento do projeto ELKS 0.6 foi anunciado (Subconjunto de kernel Linux incorporável), desenvolve um sistema operacional semelhante ao Linux para processadores Intel 8086, 8088, 80188, 80186, 80286 e NEC V20/V30 de 16 bits.

O sistema operacional pode ser usado em computadores mais antigos da classe IBM-PC XT/AT e SBC/SoC/FPGA que recriam a arquitetura IA16. O projeto está em desenvolvimento desde 1995 e começou como um fork do kernel Linux para dispositivos sem unidade de gerenciamento de memória (MMU).

Existem duas opções para a pilha de rede: a pilha TCP/IP normal do kernel Linux e a pilha ktcp que é executada no espaço do usuário.

das placas de rede, Adaptadores Ethernet compatíveis com NE2K e SMC são suportados. Também é possível criar canais de comunicação através da porta serial utilizando SLIP e CSLIP. Os sistemas de arquivos suportados incluem Minix v1, FAT12, FAT16 e FAT32. O processo de inicialização é configurado usando o script /etc/rc.d/rc.sys.

Além do kernel Linux adaptado para sistemas de 16 bits, o projeto desenvolve um conjunto de utilitários padrão (ps, bc, tar, du, diff, netstat, mount, sed, xargs, grep, find, telnet, meminfo, etc.). ), incluindo o shell compatível com bash, o gerenciador de janelas do console de exibição, os editores de texto Kilo e vi, o ambiente gráfico baseado no servidor Nano-X X. Muitos componentes do espaço do usuário são emprestados do Minix, incluindo o formato de arquivo executável.

Principais novos recursos do ELKS 0.6

Nesta nova versão um interpretador de linguagem BASIC foi adicionado, adequado para estações de trabalho e sistemas ROM flashed. Isso inclui comandos para trabalhar com arquivos (LOAD/SAVE/DIR) e gráficos (MODE, PLOT, CIRCLE e DRAW).

Outra mudança que se destaca é que uma biblioteca matemática foi adicionada à biblioteca C padrão e a capacidade de trabalhar com números de ponto flutuante foi fornecida nas funções printf/sprintf, strtod, fcvt, ecvt. O código da função strcmp foi reescrito e significativamente acelerado. Uma implementação mais compacta da função printf foi proposta. Adicionadas funções in_connect e in_resolv.

Destaca-se também que o kernel melhorou o suporte para o sistema de arquivos FAT, aumentou o número máximo de pontos de montagem para 6, adicionou suporte para definir o fuso horário, adicionou uname, usatfs e chamadas de sistema de alarme, reescreveu o código para funcionar com o temporizador.

Além disso um programa para trabalhar com arquivos tar foi adicionado, comandos man e eman adicionados para exibir manuais e suporte fornecido para exibir páginas man compactadas e comando "redefinição de rede" adicionado. Comando nslookup reescrito, adicionado a capacidade de exibir informações sobre partições montadas ao comando mount.

Por outro lado, também se destaca desempenho aprimorado do comando ls em partições FAT, bem como desempenho e suporte significativamente aprimorados para sistemas de 8 bits no driver de rede NE2K.

Das outras mudanças que se destacam:

  • O servidor FTP ftpd foi reescrito para suportar o comando SITE e a capacidade de definir tempos limite.
    O suporte para resolver nomes DNS por meio da chamada in_gethostbyname é implementado para todos os aplicativos de rede.
  • O comando test ("[") está embutido na implementação do bash.
  • Adicionado suporte para copiar um disco inteiro para o comando sys.
  • Um novo comando de configuração foi adicionado para configurar rapidamente o nome do host e o endereço IP.
  • Adicionadas as opções LOCALIP=, HOSTNAME=, QEMU=, TZ=, sync= e bufs= para /bootopts.
  • Suporte para discos rígidos SCSI e IDE foi adicionado à porta para o computador PC-98, um novo carregador BOOTCS foi adicionado, suporte para carregamento de um arquivo externo foi implementado, suporte para partições de disco foi expandido.
    A porta para processadores 8018X adicionou suporte para execução a partir de ROM e melhor manipulação de interrupções.

Finalmente Se você estiver interessado em saber mais sobre isso, você deve saber que o código-fonte é distribuído sob a licença GPLv2. O sistema é fornecido na forma de imagens para gravar em disquetes ou rodar no emulador QEMU, você pode consultar os detalhes no link a seguir.


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: AB Internet Networks 2008 SL
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.