Rilis sistem operasi ToaruOS 1.14 lan basa pemrograman Kuroko 1.1

Rilis proyek ToaruOS 1.14 kasedhiya, ngembangake sistem operasi kaya Unix sing ditulis saka awal kanthi kernel dhewe, boot loader, perpustakaan C standar, manajer paket, komponen ruang pangguna lan antarmuka grafis kanthi manajer jendela gabungan. Ing tataran saiki pembangunan, kemampuan sistem cukup kanggo mbukak Python 3 lan GCC. Kode proyek ditulis ing C lan disebarake miturut lisensi BSD. Gambar urip kanthi ukuran 14 MB wis disiapake kanggo diundhuh, sing bisa diuji ing QEMU, VMware utawa VirtualBox.

Rilis sistem operasi ToaruOS 1.14 lan basa pemrograman Kuroko 1.1

Proyek kasebut diwiwiti ing 2010 ing Universitas Illinois lan wiwitane dikembangake minangka karya riset ing bidang nggawe antarmuka grafis komposit anyar. Wiwit 2012, pembangunan wis rubah menyang sistem operasi ToaruOS, kang pisanan dikembangakΓ© minangka proyek mahasiswa, lan banjur tuwuh dadi hobi akhir minggu, dijupuk dening masyarakat sing kawangun watara project. Ing wangun saiki, sistem dilengkapi manager jendhela gabungan, ndhukung mbosenke disambung file eksekusi ing format ELF, mbukak akeh tugas, grafis lan tumpukan jaringan.

Paket kasebut kalebu port saka basa pamrograman Python 3.6, sing digunakake ing pangembangan sawetara aplikasi grafis khusus ToaruOS, kayata manajer paket, editor grafis, panampil PDF, kalkulator, lan game sing prasaja. Program pihak katelu sing ditransfer menyang ToaruOS kalebu Vim, GCC, Binutils, FreeType, MuPDF, SDL, Cairo, Doom, Quake, emulator Super Nintendo, Bochs, lsp.

ToaruOS adhedhasar kernel sing nggunakake arsitektur modular hibrida sing nggabungake kerangka monolitik lan piranti kanggo nggunakake modul sing bisa dimuat, sing dadi mayoritas driver piranti sing kasedhiya, kayata driver disk (PATA lan ATAPI), sistem file EXT2 lan ISO9660, framebuffer. , keyboard, mouse, kertu jaringan (AMD PCnet FAST, Realtek RTL8139 lan Intel PRO/1000), chip swara (Intel AC'97), uga tambahan VirtualBox kanggo sistem tamu.

Primitif sing diwenehake dening kernel kalebu benang Unix, TTY, sistem file virtual, multithreading, IPC, memori bareng, mbukak akeh tugas lan fitur standar liyane. ext2 digunakake minangka sistem file. Kanggo sesambungan karo kernel, implementasi pseudo-FS / proc diwenehake, digawe kanthi analogi karo Linux.

Rencana kanggo 2021 kalebu karya ing arsitektur 64-bit x86-64 (saiki, rakitan digawe mung kanggo sistem 32-bit x86) lan dhukungan kanggo sistem multiprosesor (SMP). Tujuan liyane kalebu ningkatake kompatibilitas karo spesifikasi POSIX ing bidang pangolahan sinyal lan metode sinkronisasi, nggawa perpustakaan C standar menyang level Newlib, lan ngleksanakake kompiler basa C dhewe lan alat pangembangan.

Proyèk iki uga ngembangake basa pemrograman dinamis dhewe, Kuroko, sing dirancang kanggo ngganti Python nalika ngembangake utilitas lan aplikasi khusus kanggo sistem kasebut. Basa kasebut ndhukung kompilasi lan interpretasi bytecode, sintaks kasebut meh padha karo Python (dipanggonke minangka dialek Python sing disingkat kanthi definisi variabel sing jelas) lan nduweni implementasine sing kompak banget. Juru bytecode nyedhiyakake pengumpul sampah lan ndhukung multithreading tanpa nggunakake kunci global. Compiler lan interpreter bisa disusun ing wangun perpustakaan cilik (~500KB), Integrasi karo program liyane lan extensible liwat C API. Saliyane ToaruOS, basa kasebut bisa digunakake ing Linux, macOS, Windows lan mbukak ing browser sing ndhukung WebAssembly.

Rilis anyar ToaruOS fokus ing pangembangan perpustakaan C standar lan basa program Kuroko. Contone, fungsi matématika perlu kanggo pitungan bener saka paramèter cahya ing game Quake wis ditambahake menyang libc. Kemampuan kanggo boot menyang VirtualBox ing mode EFI wis apik. Ukuran gambar iso dikurangi kanthi nggunakake kompresi gambar disk ram.

Rilis anyar saka basa Kuroko 1.1 nambahake dhukungan kanggo async lan ngenteni, ngetrapake multithreading, nambah kompatibilitas karo Python 3, ndhukung macem-macem tugas nilai, nggedhekake alat kanggo nulis panangan ing basa C, nambah dhukungan kanggo anotasi jinis kanggo fungsi, nambahake tembung kunci "ngasilake" lan "ngasilake saka", modul os, dis, fileio, lan wektu wis terintegrasi, metode anyar wis dileksanakake ing str, dhaptar, dict lan byte, dhukungan kanggo precompilation menyang bytecode wis ditambahake, lisensi wis wis diganti dadi MIT (sadurunge ana kombinasi MIT lan ISC).

Source: opennet.ru

Add a comment