Выпуск аперацыйнай сістэмы ToaruOS 2.1

Апублікаваны выпуск Unix-падобнай аперацыйнай сістэмы ToaruOS 2.1, напісанай з нуля і якая пастаўляецца са сваім ядром, загрузнікам, стандартнай Сі-бібліятэкай, пакетным мэнэджарам, кампанентамі прасторы карыстача і графічным інтэрфейсам з кампазітным аконным мэнэджарам. Першапачаткова праект развіваўся ў Ілінойскім універсітэце як даследчая праца ў вобласці стварэння новых кампазітных графічных інтэрфейсаў, але затым трансфармаваўся ў асобную аперацыйную сістэму. Код праекту напісаны на мове Сі і распаўсюджваецца пад ліцэнзіяй BSD. Для загрузкі падрыхтаваны live-выява, памерам 14.4/XNUMX МБ, які можна пратэставаць у QEMU, VMware або VirtualBox.

Выпуск аперацыйнай сістэмы ToaruOS 2.1

У аснове ToaruOS ляжыць ядро, якое выкарыстоўвае гібрыдную модульную архітэктуру, якая спалучае маналітную аснову і сродкі для выкарыстання загружаных модуляў, у выглядзе якіх аформлена большасць наяўных драйвераў прылад, такіх як драйверы дыска (PATA і ATAPI), ФС EXT2 і ISO9660, framebuffer, клавішы. , сеткавых карт (AMD PCnet FAST, Realtek RTL8139 і Intel PRO/1000), гукавых чыпаў (Intel AC'97), а таксама дадаткаў VirtualBox для гасцявых сістэм. Ядро падтрымлівае Unix-струмені, TTY, віртуальную ФС, псеўда-ФС /proc, шматструменнасць, IPC, ramdisk, ptrace, падзяляную памяць, шматзадачнасць і іншыя тыпавыя магчымасці.

Сістэма забяспечаная кампазітным аконным мэнэджарам, падтрымлівае дынамічна злучаныя выкананыя файлы ў фармаце 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 і да т.п.

Праектам таксама развіваецца ўласная дынамічная мова праграмавання Kuroko, разлічаны на замену Python пры распрацоўцы ўтыліт і карыстацкіх прыкладанняў для сістэмы. Мова па сінтаксісе нагадвае Python (пазіцыянуецца як скарочаны дыялект Python з відавочным вызначэннем зменных) і адрозніваецца вельмі кампактнай рэалізацыяй. Падтрымліваецца кампіляцыя і інтэрпрэтацыя байткода. Інтэрпрэтатар байткода падае зборшчык смецця, падтрымлівае шматструменнасць без ужывання глабальнага блакавання. Кампілятар і інтэрпрэтатар могуць быць сабраны ў форме невялікай падзялянай бібліятэкі (~500КБ), інтэграванай з іншымі праграмамі і якая пашыраецца праз C API. Акрамя ToaruOS мова можа выкарыстоўвацца ў Linux, macOS, Windows і запускацца ў браўзэрах з падтрымкай WebAssembly.

У новым выпуску:

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

Выпуск аперацыйнай сістэмы ToaruOS 2.1


Крыніца: opennet.ru

Дадаць каментар