Lansarea sistemului de operare ToaruOS 2.1

Опубликован выпуск Unix-подобной операционной системы ToaruOS 2.1, написанной с нуля и поставляемой со своим ядром, загрузчиком, стандартной Си-библиотекой, пакетным менеджером, компонентами пространства пользователя и графическим интерфейсом с композитным оконным менеджером. Изначально проект развивался в Иллинойсском университете как исследовательская работа в области создания новых композитных графических интерфейсов, но затем трансформировался в отдельную операционную систему. Код проекта написан на языке Си и распространяется под лицензией BSD. Для загрузки подготовлен live-образ, размером 14.4 МБ, который можно протестировать в QEMU, VMware или VirtualBox.

Lansarea sistemului de operare ToaruOS 2.1

ToaruOS se bazează pe un nucleu care utilizează o arhitectură modulară hibridă care combină un cadru monolitic și instrumente pentru utilizarea modulelor încărcate, care formează majoritatea driverelor de dispozitiv disponibile, cum ar fi driverele de disc (PATA și ATAPI), sistemele de fișiere EXT2 și ISO9660, framebuffer , tastaturi, mouse-uri, plăci de rețea (AMD PCnet FAST, Realtek RTL8139 și Intel PRO/1000), cipuri de sunet (Intel AC'97), precum și suplimente VirtualBox pentru sistemele oaspeților. Nucleul acceptă fire Unix, TTY, sistem de fișiere virtual, pseudo sistem de fișiere /proc, multithreading, IPC, ramdisk, ptrace, memorie partajată, multitasking și alte caracteristici standard.

Cистема снабжена композитным оконным менеджером, поддерживает динамически связываемые исполняемые файлы в формате ELF, многозадачность, графический стек, может выполнять Python 3 и GCC.В качестве файловой системы применяется ext2. Загрузчик поддерживает BIOS и EFI. Сетевой стек позволяет использовать API сокетов в стиле BSD-систем и поддерживает сетевые интерфейсы, включая loopback.

Из собственных приложений выделяется похожий на Vi редактор кода Bim, который используется последние несколько лет для разработки специфичных для ToaruOS приложений, таких как файловый менеджер, эмулятор терминала, графическая панель с поддержкой виджетов, пакетный менеджер, а также библиотеки для поддержки изображений (PNG, JPEG) и TrueType-шрифтов. Для ToaruOS выполнено портирование таких программ, как Vim, GCC, Binutils, FreeType, MuPDF, SDL, Cairo, Doom, Quake, Super Nintendo emulator, Bochs и т.п.

Proiectul dezvoltă, de asemenea, propriul limbaj de programare dinamic, Kuroko, conceput pentru a înlocui Python atunci când dezvoltă utilități și aplicații personalizate pentru sistem. Limbajul amintește de Python în sintaxă (poziționat ca un dialect scurt al lui Python cu definiție explicită a variabilelor) și are o implementare foarte compactă. Compilarea și interpretarea bytecode este acceptată. Interpretul bytecode oferă un colector de gunoi și acceptă multithreading fără a utiliza blocarea globală. Compilatorul și interpretul pot fi compilate sub forma unei mici biblioteci partajate (~500KB), integrate cu alte programe și extensibile prin API-ul C. Pe lângă ToaruOS, limbajul poate fi folosit pe Linux, macOS, Windows și rulat în browsere care acceptă WebAssembly.

În noua versiune:

  • Добавлена начальная поддержка архитектуры AArch64 (ARMv8), в том числе с экспериментальной возможностью использования ToaruOS на плате Raspberry Pi 400 и в эмуляторе QEMU.
  • Переработана обработка и передача сигналов процессам в пространстве пользователя. Реализованы вызовы sigaction, sigprocmask, sigwait и sigsuspend.
  • Улучшено управление памятью в пространстве пользователя. Добавлен системный вызов munmap.
  • В композитном менеджере реализован эффект размытия и переработана обработка событий при изменении размера окна.
  • Улучшена отрисовка терминала, реализована отложенная отрисовка и добавлен кэш глифов для шрифтов TrueType.
  • Расширены возможности компоновщика.
  • Добавлены механизмы для установки часов, в том числе реализован системный вызов settimeofday и расширены возможности утилиты date.
  • Улучшен сетевой стек. В утилиту ifconfig добавлена поддержка установки адресов IPv4 и настроек маршрутизации. Обеспечена работа сокетов ICMP. Добавлена поддержка функции recvfrom для сокетов UDP и ICMP.
  • В загрузчике добавлена возможность работы с USB-клавиатурами.
  • В контекстное меню файлового менеджера добавлен пункт для удаления файлов.
  • Улучшено отображение графиков в системном мониторе.
  • Добавлена утилита grep с поддержкой регулярных выражений.
  • Улучшен вывод команды ps (добавлены дополнительные столбцы).

Lansarea sistemului de operare ToaruOS 2.1


Sursa: opennet.ru

Adauga un comentariu