Lançamento do sistema operacional ToaruOS 2.1

O lançamento do sistema operacional semelhante ao Unix ToaruOS 2.1 foi publicado, escrito do zero e fornecido com seu próprio kernel, carregador de boot, biblioteca C padrão, gerenciador de pacotes, componentes de espaço do usuário e uma interface gráfica com um gerenciador de janelas composto. O projeto foi inicialmente desenvolvido na Universidade de Illinois como um trabalho de pesquisa na área de criação de novas interfaces gráficas compostas, mas depois foi transformado em um sistema operacional separado. O código do projeto é escrito em C e distribuído sob a licença BSD. Uma imagem ao vivo de 14.4 MB foi preparada para download, que pode ser testada em QEMU, VMware ou VirtualBox.

Lançamento do sistema operacional ToaruOS 2.1

ToaruOS é baseado em um kernel que utiliza uma arquitetura modular híbrida que combina um framework monolítico e ferramentas para utilização de módulos carregáveis, que formam a maioria dos drivers de dispositivos disponíveis, como drivers de disco (PATA e ATAPI), sistemas de arquivos EXT2 e ISO9660, framebuffer , teclados, mouses, placas de rede (AMD PCnet FAST, Realtek RTL8139 e Intel PRO/1000), chips de som (Intel AC'97), bem como complementos VirtualBox para sistemas convidados. O kernel suporta threads Unix, TTY, sistema de arquivos virtual, pseudo sistema de arquivos /proc, multithreading, IPC, ramdisk, ptrace, memória compartilhada, multitarefa e outros recursos padrão.

O sistema é equipado com um gerenciador de janelas composto, suporta arquivos executáveis ​​vinculados dinamicamente no formato ELF, multitarefa, uma pilha gráfica, pode executar Python 3 e GCC. Ext2 é usado como sistema de arquivos. O bootloader suporta BIOS e EFI. A pilha de rede permite o uso de APIs de soquete estilo BSD e suporta interfaces de rede, incluindo loopback.

Dentre as aplicações nativas, destaca-se o editor de código Vi-like Bim, que vem sendo utilizado nos últimos anos para desenvolver aplicações específicas do ToaruOS como gerenciador de arquivos, emulador de terminal, painel gráfico com suporte a widgets, gerenciador de pacotes, também como bibliotecas para suporte de imagens (PNG, JPEG) e fontes TrueType. Programas como Vim, GCC, Binutils, FreeType, MuPDF, SDL, Cairo, Doom, Quake, emulador de Super Nintendo, Bochs, etc. foram portados para ToaruOS.

O projeto também está desenvolvendo sua própria linguagem de programação dinâmica, Kuroko, projetada para substituir o Python no desenvolvimento de utilitários e aplicações customizadas para o sistema. A linguagem lembra Python em sintaxe (posicionada como um dialeto abreviado de Python com definição explícita de variáveis) e possui uma implementação muito compacta. Compilação e interpretação de bytecode são suportadas. O interpretador de bytecode fornece um coletor de lixo e suporta multithreading sem usar bloqueio global. O compilador e o interpretador podem ser compilados na forma de uma pequena biblioteca compartilhada (~500KB), integrada a outros programas e extensível através da API C. Além do ToaruOS, a linguagem pode ser usada em Linux, macOS, Windows e rodar em navegadores que suportam WebAssembly.

Na nova versão:

  • Adicionado suporte inicial para a arquitetura AArch64 (ARMv8), incluindo a capacidade experimental de usar ToaruOS na placa Raspberry Pi 400 e no emulador QEMU.
  • O processamento e a transmissão de sinais para processos no espaço do usuário foram redesenhados. Implementadas chamadas sigaction, sigprocmask, sigwait e sigsuspend.
  • Gerenciamento de memória aprimorado no espaço do usuário. Adicionada chamada de sistema munmap.
  • O gerenciador composto implementa um efeito de desfoque e reformula o tratamento de eventos quando o tamanho da janela é alterado.
  • A renderização do terminal foi melhorada, a renderização lenta foi implementada e um cache de glifo foi adicionado para fontes TrueType.
  • Os recursos do compositor foram expandidos.
  • Foram adicionados mecanismos para acertar o relógio, incluindo a chamada do sistema settimeofday e recursos expandidos do utilitário de data.
  • Pilha de rede aprimorada. O utilitário ifconfig adicionou suporte para definir endereços IPv4 e configurações de roteamento. Operação habilitada de soquetes ICMP. Adicionado suporte para a função recvfrom para soquetes UDP e ICMP.
  • O bootloader adicionou a capacidade de trabalhar com teclados USB.
  • Um item para exclusão de arquivos foi adicionado ao menu de contexto do gerenciador de arquivos.
  • Exibição aprimorada de gráficos no monitor do sistema.
  • Adicionado utilitário grep com suporte a expressões regulares.
  • Saída do comando ps aprimorada (colunas adicionais adicionadas).

Lançamento do sistema operacional ToaruOS 2.1


Fonte: opennet.ru

Adicionar um comentário