Ngaleupaskeun sistem operasi ToaruOS 2.3

Pelepasan sistem operasi kawas Unix ToaruOS 2.3 geus diterbitkeun, ditulis ti scratch tur disadiakeun kalawan kernel sorangan, boot loader, perpustakaan standar C, manajer pakét, komponén spasi pamaké sarta panganteur grafis jeung manajer jandela komposit. Proyék mimitina dimekarkeun di Universitas Illionis salaku karya panalungtikan dina widang nyieun interfaces grafis komposit anyar, tapi lajeng robah jadi sistem operasi misah. Kodeu proyék ditulis dina C sareng disebarkeun dina lisénsi BSD. Gambar langsung ukuranana 7.4 MB parantos disiapkeun pikeun diunduh, anu tiasa diuji dina QEMU, VMware atanapi VirtualBox.

 Ngaleupaskeun sistem operasi ToaruOS 2.3

ToaruOS dumasar kana kernel anu ngagunakeun arsitéktur modular hibrid nu ngagabungkeun kerangka monolithic sarta parabot pikeun ngagunakeun modul loadable, nu ngabentuk mayoritas drivers alat sadia, kayaning supir disk (PATA jeung ATAPI), EXT2 na ISO9660 sistem file, framebuffer. , kibor, beurit, kartu jaringan (AMD PCnet FAST, Realtek RTL8139 jeung Intel PRO/1000), chip sora (Intel AC'97), kitu ogé VirtualBox tambihan-ons pikeun sistem tamu. Kernel ngadukung benang Unix, TTY, sistem file virtual, sistem file pseudo / proc, multithreading, IPC, ramdisk, ptrace, mémori anu dibagikeun, seueur tugas sareng fitur standar anu sanés.

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

Diantara aplikasi asli, pangropéa kode Vi-kawas Bim menonjol, anu parantos dianggo sababaraha taun ka pengker pikeun ngembangkeun aplikasi khusus ToaruOS sapertos manajer file, émulator terminal, panel grafik kalayan dukungan widget, manajer pakét, ogé. salaku perpustakaan pikeun ngadukung gambar (PNG, JPEG) sareng font TrueType. Program sapertos Vim, GCC, Binutils, FreeType, MuPDF, SDL, Cairo, Doom, Quake, Super Nintendo émulator, Bochs, jsb.

Proyék ieu ogé ngembangkeun basa programming dinamis sorangan, Kuroko, dirancang pikeun ngaganti Python nalika ngamekarkeun Utiliti sarta aplikasi custom pikeun sistem. Basa éta ngingetkeun Python dina sintaksis (diposisikan salaku dialék Python anu disingget kalayan definisi variabel anu eksplisit) sareng gaduh palaksanaan anu kompak pisan. Kompilasi sareng interpretasi bytecode dirojong. Juru bytecode nyayogikeun tukang sampah sareng ngadukung multithreading tanpa nganggo konci global. The compiler jeung juru bisa disusun dina bentuk perpustakaan dibagikeun leutik (~ 500KB), terpadu kalayan program sejen tur extensible ngaliwatan C API. Salian ToaruOS, basa tiasa dianggo dina Linux, macOS, Windows sareng dijalankeun dina browser anu ngadukung WebAssembly.

Dina rilis anyar:

  • В эмулятор терминала добавлена поддержка вкладок, переключаться между которыми можно последовательностью Alt-цифра. Реализована эмуляция жирного начертания шрифтов через двойное наложение глифов. Добавлены подменю «Terminal state» для включения показа состояния различных режимов и «Send signal» для отправки сигналов фоновым процессам.
     Ngaleupaskeun sistem operasi ToaruOS 2.3
  • Реализован просмотрщик системных руководств, поддерживающий man-страницы в формате roff.
     Ngaleupaskeun sistem operasi ToaruOS 2.3
  • В контекстное меню добавлено подменю для управления мозаичной компоновкой окон.
     Ngaleupaskeun sistem operasi ToaruOS 2.3
  • В ядре реализованы новые системные вызовы, среди которых pread/pwrite, sigsuspend, sigqueue, lchown, pipe2, dup3, getrusage и fcntl. Добавлена поддержка флагов FD_CLOEXEC и FD_CLOFORK. Реализована поддержка рандомизации адреса загрузки ядра. ABI системных вызовов переведено на использование инструкций syscall/sysret.
  • Значительно расширены возможности виртуальной консоли (TTY), обеспечена эмуляция текстового режима VGA на базе фреймбуфера.
  • В версии для архитектуры Aarch64 реализована возможность запуска в виртуальных машинах на базе QEMU.
  • В сетевой стек добавлена поддержка одновременной работы с несколькими сокетами ICMP.
  • В стандартную библиотеку libc добавлены функции getdelim, getline, scandir, telldir, rewinddir, seekdir, ftruncate, fchmod, fchown, popen, pclose, sig2str, str2sig.
  • Добавлены новые стандартные утилиты rmdir, uniq, cmp, zcat, realpath, id, nohup, cksum. Добавлены новые опции в ls, grep и fgrep. Переписаны утилиты ps, top, pstree, killall и pidof, которые переведены на новую библиотеку libtoaru_procfs, унифицирующую работу с псевдо-ФС /proc. Расширен командный интерпретатор esh.
  • Добавлена утилита check-image для проверки возможности загрузки изображения графической библиотекой и вывода размера изображения.
  • Язык программирования Kuroko обновлён до версии 1.5rc2.
  • До версии 3.2 обновлён текстовый редактор Bim, созданный с оглядкой на Vim. В новой версии улучшена подсветка синтаксиса, расширена поддержка скриптов на языке Kuroko и добавлена новая система автодополнения ввода.

sumber: opennet.ru