Rhyddhau system weithredu ToaruOS 1.14 ac iaith raglennu Kuroko 1.1

Mae rhyddhau'r prosiect ToaruOS 1.14 ar gael, gan ddatblygu system weithredu debyg i Unix wedi'i hysgrifennu o'r dechrau gyda'i gnewyllyn, cychwynnydd, llyfrgell safonol C, rheolwr pecyn, cydrannau gofod defnyddiwr a rhyngwyneb graffigol gyda rheolwr ffenestri cyfansawdd. Ar y cam datblygu presennol, mae galluoedd y system yn ddigonol i redeg Python 3 a GCC. Mae cod y prosiect wedi'i ysgrifennu yn C a'i ddosbarthu o dan y drwydded BSD. Mae delwedd fyw o 14 MB o faint wedi'i pharatoi i'w lawrlwytho, y gellir ei phrofi yn QEMU, VMware neu VirtualBox.

Rhyddhau system weithredu ToaruOS 1.14 ac iaith raglennu Kuroko 1.1

Dechreuodd y prosiect yn 2010 ym Mhrifysgol Illinois a datblygodd i ddechrau fel gwaith ymchwil ym maes creu rhyngwynebau graffigol cyfansawdd newydd. Ers 2012, mae'r datblygiad wedi trawsnewid i system weithredu ToaruOS, a ddatblygwyd i ddechrau fel prosiect myfyrwyr, ac yna tyfodd yn hobi penwythnos, a godwyd gan y gymuned a ffurfiodd o amgylch y prosiect. Yn ei ffurf bresennol, mae gan y system reolwr ffenestri cyfansawdd, mae'n cefnogi ffeiliau gweithredadwy sydd wedi'u cysylltu'n ddeinamig ar ffurf ELF, amldasgio, graffeg a staciau rhwydwaith.

Mae'r pecyn yn cynnwys porthladd o iaith raglennu Python 3.6, a ddefnyddir wrth ddatblygu rhai cymwysiadau graffigol penodol i ToaruOS, megis rheolwr pecyn, golygydd graffig, gwyliwr PDF, cyfrifiannell, a gemau syml. Mae rhaglenni trydydd parti sy'n cael eu trosglwyddo i ToaruOS yn cynnwys Vim, GCC, Binutils, FreeType, MuPDF, SDL, Cairo, Doom, Quake, efelychydd Super Nintendo, Bochs, ac ati.

Mae ToaruOS yn seiliedig ar gnewyllyn sy'n defnyddio pensaernΓ―aeth fodwlar hybrid sy'n cyfuno fframwaith monolithig ac offer ar gyfer defnyddio modiwlau y gellir eu llwytho, sy'n ffurfio mwyafrif y gyrwyr dyfeisiau sydd ar gael, megis gyrwyr disg (PATA ac ATAPI), systemau ffeiliau EXT2 ac ISO9660, byffer ffrΓ’m. , bysellfyrddau, llygod, cardiau rhwydwaith (AMD PCnet FAST, Realtek RTL8139 ac Intel PRO/1000), sglodion sain (Intel AC'97), yn ogystal ag ychwanegion VirtualBox ar gyfer systemau gwesteion.

Mae'r cyntefigau a ddarperir gan y cnewyllyn yn cynnwys edafedd Unix, TTY, system ffeiliau rhithwir, multithreading, IPC, cof a rennir, amldasgio a nodweddion safonol eraill. defnyddir ext2 fel y system ffeiliau. I ryngweithio Γ’'r cnewyllyn, darperir gweithrediad ffug-FS / proc, wedi'i greu trwy gyfatebiaeth Γ’ Linux.

Mae cynlluniau ar gyfer 2021 yn cynnwys gwaith ar y bensaernΓ―aeth 64-bit x86-64 (am y tro, dim ond ar gyfer systemau 32-did x86 y mae cynulliadau'n cael eu cynhyrchu) a chefnogaeth ar gyfer systemau amlbrosesydd (SMP). Mae nodau eraill yn cynnwys gwella cydnawsedd Γ’ manylebau POSIX ym maes prosesu signal a dulliau cydamseru, dod Γ’'r llyfrgell C safonol i lefel Newlib, a gweithredu ei chasglwr iaith C ei hun a'i offer datblygu.

Mae'r prosiect hefyd yn datblygu ei iaith raglennu ddeinamig ei hun, Kuroko, a gynlluniwyd i gymryd lle Python wrth ddatblygu cyfleustodau a chymwysiadau personol ar gyfer y system. Mae'r iaith yn cefnogi casglu a dehongli cod byte, mae ei chystrawen yn debyg i Python (mae wedi'i gosod fel tafodiaith fyrrach o Python gyda diffiniad penodol o newidynnau) ac mae ganddi weithrediad cryno iawn. Mae'r dehonglydd bytecode yn darparu casglwr sbwriel ac yn cefnogi aml-threading heb ddefnyddio cloi byd-eang. Gellir llunio'r casglwr a'r dehonglydd ar ffurf llyfrgell fach a rennir (~500KB), wedi'i hintegreiddio Γ’ rhaglenni eraill ac yn estynadwy trwy'r API C. Yn ogystal Γ’ ToaruOS, gellir defnyddio'r iaith ar Linux, macOS, Windows a'i rhedeg mewn porwyr sy'n cefnogi WebAssembly.

Roedd datganiad newydd ToaruOS yn canolbwyntio ar ddatblygiad y llyfrgell safonol C ac iaith raglennu Kuroko. Er enghraifft, mae swyddogaethau mathemategol sy'n angenrheidiol ar gyfer cyfrifo paramedrau goleuo'n gywir yn y gΓͺm Quake wedi'u hychwanegu at libc. Mae'r gallu i gychwyn i VirtualBox yn y modd EFI wedi'i wella. Mae maint y ddelwedd iso wedi'i leihau trwy ddefnyddio cywasgu delwedd y ddisg hwrdd.

Mae datganiad newydd yr iaith Kuroko 1.1 yn ychwanegu cefnogaeth ar gyfer async ac aros, yn gweithredu multithreading, yn gwella cydnawsedd Γ’ Python 3, yn cefnogi aseiniadau gwerth lluosog, yn ehangu'r offer ar gyfer ysgrifennu trinwyr yn yr iaith C, yn ychwanegu cefnogaeth ar gyfer anodiadau math ar gyfer swyddogaethau, yn ychwanegu'r allweddeiriau β€œcynnyrch” a β€œcynnyrch o”, mae'r modiwlau OS, dis, fileio, ac amser wedi'u hintegreiddio, mae dulliau newydd wedi'u gweithredu mewn str, rhestr, dict a beit, mae cefnogaeth ar gyfer rhag-grynhoi i god beit wedi'i ychwanegu, mae'r drwydded wedi'i rhoi ar waith. wedi'i newid i MIT (yn flaenorol roedd cyfuniad o MIT ac ISC).

Ffynhonnell: opennet.ru

Ychwanegu sylw