Vydání operačního systému ToaruOS 2.3

Byla zveřejněna nová verze unixové operačního systému ToaruOS 2.3, vytvořená od nuly a dodávaná se svým vlastním jádrem, zaváděčem, standardní knihovnou C, správcem balíčků, komponenty uživatelského prostoru a grafickým rozhraním s kompozitním správce oken. Projekt byl původně vyvinut na Illinois University jako výzkumný projekt v oblasti vytváření nových kompozitních grafických rozhraní, ale poté se transformoval v samostatný operační systém. Kód projektu je napsán v jazyce C a je distribuován pod licencí BSD. K dispozici je live obraz o velikosti 7,4 MB, který lze otestovat v QEMU, VMware nebo VirtualBox. Vydání operačního systému ToaruOS 2.3

Základem ToaruOS je jádro, které využívá hybridní modulární architekturu kombinující monolitní základ a prostředky pro použití dynamicky načítaných modulů, ve kterých jsou formátovány většina existujících ovladačů zařízení, jako jsou ovladače disků (PATA a ATAPI), souborový systém EXT2 a ISO9660, framebuffer, klávesnice, myši, síťové karty (AMD PCnet FAST, Realtek RTL8139 a Intel PRO/1000), zvukové čipy (Intel AC’97) a také rozšíření VirtualBox pro hostitelské systémy. Jádro podporuje unixové proudy, TTY, virtuální souborový systém, pseudo-souborový systém /proc, vícetržení, IPC, ramdisk, ptrace, sdílenou paměť, multitasking a další standardní funkce.

Systém je vybaven kompozitním správcem oken, podporuje dynamicky spojované spustitelné soubory ve formátu ELF, multitasking, grafický zásobník a může vykonávat Python 3 a GCC. Jako souborový systém se používá ext2. Zaváděč podporuje BIOS a EFI. Síťový zásobník umožňuje používat API soketů ve stylu BSD-systémů a podporuje síťové rozhraní, včetně loopback.

Mezi vlastními aplikacemi vyniká textový editor kódu Bim, který se používá posledních několik let pro vývoj aplikací specifických pro ToaruOS, jako je správce souborů, terminálový emulátor, grafický panel s podporou widgetů, správce balíčků a také knihovny na podporu obrázků (PNG, JPEG) a fontů TrueType. Pro ToaruOS bylo portováno několik programů, jako jsou Vim, GCC, Binutils, FreeType, MuPDF, SDL, Cairo, Doom, Quake, emulátor Super Nintendo, Bochs atd.

Projekt také vyvíjí vlastní dynamický programovací jazyk Kuroko, určený k nahrazení Pythonu při vývoji utilit a uživatelských aplikací pro systém. Jazyk má syntax jako Python (je prezentován jako zkrácený dialekt Pythonu s jasně definovanými proměnnými) a vyznačuje se velmi kompaktní implementací. Podporuje kompilaci a interpretaci bytecode. Interpret bytecode poskytuje garbage collector a podporuje vícethreadovost bez použití globálního zamčení. Kompilátor a interpret mohou být sestaveny jako malá sdílená knihovna (~500KB), integrovaná s jinými programy a rozšiřitelná přes C API. Kromě ToaruOS může být jazyk použit v Linuxu, macOS, Windows a může být spuštěn v prohlížečích s podporou WebAssembly.

V novém vydání:

  • Do emulátoru terminálu byla přidána podpora záložek, mezi kterými lze přepínat pomocí kombinace Alt-číslo. Byla implementována emulace tučného písma pomocí dvojného překrytí glyfů. Byla přidána podnabídka „Stav terminálu“ pro zobrazení stavu různých režimů a „Odeslat signál“ pro posílání signálů na pozadí běžící procesy. Vydání operačního systému ToaruOS 2.3
  • Byl implementován prohlížeč systémových příruček, který podporuje man stránky ve formátu roff. Vydání operačního systému ToaruOS 2.3
  • Do kontextového menu bylo přidáno podmenu pro správu mozaikového uspořádání oken. Vydání operačního systému ToaruOS 2.3
  • V jádře byly implementovány nové systémové volání, mezi kterými jsou pread/pwrite, sigsuspend, sigqueue, lchown, pipe2, dup3, getrusage a fcntl. Byla přidána podpora příznaků FD_CLOEXEC a FD_CLOFORK. Byla implementována podpora randomizace adresy načítání jádra. ABI systémových volání byla převedena na používání instrukcí syscall/sysret.
  • Možnosti virtuální konzole (TTY) byly výrazně rozšířeny, byla zajištěna emulace textového režimu VGA na základě framebufferu.
  • Ve verzi pro architekturu Aarch64 byla implementována možnost spuštění v virtual machines na základě QEMU.
  • Do síťového zásobníku byla přidána podpora pro současnou práci s více ICMP sokety.
  • Do standardní knihovny libc byly přidány funkce getdelim, getline, scandir, telldir, rewinddir, seekdir, ftruncate, fchmod, fchown, popen, pclose, sig2str a str2sig.
  • Byly přidány nové standardní utilitky rmdir, uniq, cmp, zcat, realpath, id, nohup, cksum. Byly přidány nové možnosti do ls, grep a fgrep. Utility ps, top, pstree, killall a pidof byly přepsány, a převedeny na novou knihovnu libtoaru_procfs, která unifikuje práci s pseudo-FS /proc. Příkazový interpretátor esh byl rozšířen.
  • Byla přidána utilita check-image pro kontrolu možnosti načtení obrázku grafickou knihovnou a zobrazení velikosti obrázku.
  • Programovací jazyk Kuroko byl aktualizován na verzi 1.5rc2.
  • Textový editor Bim, který byl vytvořen s ohledem na Vim, byl aktualizován na verzi 3.2. V nové verzi byla vylepšena zvýraznění syntaxe, rozšířena podpora skriptů v jazyce Kuroko a byla přidána nová systémová automatického doplňování vstupu.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster