Te whakaputanga o te punaha whakahaere ToaruOS 1.14 me te reo hotaka Kuroko 1.1

Ko te tukunga o te kaupapa ToaruOS 1.14 e waatea ana, e whakawhanake ana i te punaha whakahaere rite Unix i tuhia mai i te wahanga me tana ake kaarai, uta uta, whare pukapuka C paerewa, kaiwhakahaere kete, waahanga mokowā kaiwhakamahi me te atanga kauwhata me te kaiwhakahaere matapihi hiato. I te wahanga whanaketanga o naianei, he rawaka nga kaha o te punaha ki te whakahaere i te Python 3 me te GCC. Ka tuhia te waehere kaupapa ki te C ka tohatohahia i raro i te raihana BSD. Ko te ahua ora o te 14 MB te rahi kua rite mo te tango, ka taea te whakamatautau ki te QEMU, VMware, VirtualBox ranei.

Te whakaputanga o te punaha whakahaere ToaruOS 1.14 me te reo hotaka Kuroko 1.1

I timata te kaupapa i te tau 2010 i te Whare Wananga o Illinois, a, i te tuatahi i whakawhanakehia hei mahi rangahau mo te hanga atanga kauwhata hiato hou. Mai i te tau 2012, kua huri te whanaketanga ki te punaha whakahaere ToaruOS, i whakawhanakehia i te tuatahi hei kaupapa tauira, katahi ka tipu hei whakangahau i nga wiki, i kohia e te hapori i hanga huri noa i te kaupapa. I roto i tona ahua o naianei, kua rite te punaha ki te kaiwhakahaere matapihi hiato, e tautoko ana i nga konae hono hono i roto i te whakatakotoranga ELF, te mahi maha, nga whakairoiro me nga kohinga whatunga.

Kei roto i te kete he tauranga o te reo hootaka Python 3.6, e whakamahia ana i roto i te whakawhanaketanga o etahi tono kauwhata motuhake a ToaruOS, penei i te kaiwhakahaere kete, te ētita whakairoiro, te kaitirotiro PDF, te tatauranga, me nga keemu ngawari. Ko nga kaupapa-tuatoru e kawe ana ki ToaruOS ko Vim, GCC, Binutils, FreeType, MuPDF, SDL, Cairo, Doom, Quake, Super Nintendo emulator, Bochs, etc.

Ko te ToaruOS i ahu mai i te kakano e whakamahi ana i te hoahoanga tauira ranu e whakakotahi ana i te anga monolithic me nga taputapu mo te whakamahi i nga waahanga ka taea te utaina, e hanga ana i te nuinga o nga taraiwa taputapu e waatea ana, penei i nga taraiwa kōpae (PATA me ATAPI), EXT2 me nga punaha konae ISO9660, framebuffer. , papapātuhi, kiore , kāri whatunga (AMD PCnet FAST, Realtek RTL8139 me Intel PRO/1000), maramara tangi (Intel AC'97), me nga taapiri VirtualBox mo nga punaha manuhiri.

Ko nga mea tuatahi e whakaratohia ana e te kernel ko nga miro Unix, TTY, te punaha konae mariko, multithreading, IPC, te mahara tiritiri, te mahi maha me etahi atu waahanga paerewa. Ka whakamahia te ext2 hei punaha konae. Hei taunekeneke me te kernel, ka whakaratohia he whakatinanatanga pseudo-FS / proc, i hangaia ma te whakataurite me Linux.

Ko nga mahere mo te tau 2021 ko nga mahi mo te hoahoanga 64-bit x86-64 (mo tenei wa, kei te hangaia nga huihuinga mo nga punaha 32-bit x86 anake) me te tautoko mo nga punaha tukatuka maha (SMP). Ko etahi atu whainga ko te whakapai ake i te hototahi ki nga whakaritenga POSIX i roto i te waahi o te tukatuka tohu me nga tikanga tukutahi, te kawe i te whare pukapuka C paerewa ki te taumata Newlib, me te whakatinana i tana ake kaitoha reo C me nga taputapu whanaketanga.

Kei te whakawhanake ano te kaupapa i tana ake reo hotaka hihiri, Kuroko, i hangaia hei whakakapi i te Python i te wa e whakawhanake ana i nga taputapu me nga tono ritenga mo te punaha. Ka tautokohia e te reo te whakahiato me te whakamaoritanga bytecode, he rite tonu tana wetereo ki te Python (kua tuuhia hei reo poto o Python me te whakamaramatanga o nga taurangi) he tino totika te whakatinanatanga. Ka whakaratohia e te kaiwhakamaori bytecode he kaikohi paru me te tautoko i te miro maha me te kore e whakamahi i te raka o te ao. Ka taea te whakahiato te kaikoipi me te kaiwhakamaori i roto i te ahua o te whare pukapuka iti tiritahi (~500KB), whakaurua ki etahi atu papatono me te whakawhanui ma te C API. I tua atu i a ToaruOS, ka taea te whakamahi i te reo ki runga Linux, macOS, Windows me te whakahaere i nga kaitirotiro e tautoko ana i te WebAssembly.

Ko te tukunga hou o ToaruOS i aro ki te whanaketanga o te whare pukapuka C paerewa me te reo hotaka Kuroko. Hei tauira, ko nga mahi pangarau e tika ana mo te tatau tika o nga tawhā rama i roto i te keemu Quake kua taapirihia ki te libc. Ko te kaha ki te peke ki VirtualBox i roto i te aratau EFI kua pai ake. Kua whakaitihia te rahi o te atahanga iso ma te whakamahi i te kopiri o te whakaahua kōpae hipi.

Ko te tukunga hou o te reo Kuroko 1.1 he taapiri tautoko mo te tukutahi me te tatari, ka whakatinana i te miro maha, te whakapai ake i te hototahi ki te Python 3, te tautoko i nga taumahi uara maha, te whakawhänui i nga taputapu mo nga kaikawe tuhi i te reo C, te taapiri i te tautoko mo nga momo tuhipoka mo nga mahi, taapiri te kupu matua "tuku" me te "hua mai", kua whakauruhia nga os, dis, fileio, me nga waahanga wa, kua whakatinanahia nga tikanga hou i roto i te str, rarangi, dict me nga paita, kua taapirihia te tautoko mo te whakaurunga ki roto i te bytecode, kua whakauruhia te raihana. kua hurihia ki te MIT (i mua he huinga o te MIT me te ISC).

Source: opennet.ru

Tāpiri i te kōrero