Rakirina pergala xebitandina Redox OS 0.8 ku bi Rust hatî nivîsandin

Serbestberdana pergala xebitandinê Redox 0.8, ku bi karanîna zimanê Rust û têgîna mîkrokernelê hatî pêşve xistin, hate weşandin. Pêşveçûnên projeyê di bin lîsansa MIT-a belaş de têne belav kirin. Ji bo ceribandina Redox OS, meclîsên demo yên mezinahiya 768 MB, û her weha wêneyên bi hawîrdorek grafîkî ya bingehîn (256 MB) û amûrên konsolê yên ji bo pergalên serverê (256 MB) têne pêşkêş kirin. Civîn ji bo mîmariya x86_64 têne çêkirin û ji bo pergalên bi UEFI û BIOS hene. Digel hawîrdora grafîkî ya Orbital, wêneya demo emulatora DOSBox, hilbijarkek lîstikan (DOOM, Neverball, Neverputt, sopwith, syobonaction), dersan, lîstikvana muzîkê ya rodioplay û edîtorê nivîsê Sodium vedihewîne.

Pergala xebitandinê li gorî felsefeya Unix-ê hatî pêşve xistin û hin ramanan ji SeL4, Minix û Plan 9 digire. Redox têgeha mîkrokernelê bikar tîne, ku tê de tenê pêwendiya di navbera pêvajoyan û rêveberiya çavkaniyê de di asta kernel de têne peyda kirin, û hemî yên din. fonksiyonel di pirtûkxaneyên ku hem kernel û hem jî serîlêdanên bikarhêner dikarin werin bikar anîn de têne danîn. Hemî ajokar li cîhê bikarhêner di hawîrdorên sandboxê yên veqetandî de dimeşin. Ji bo lihevhatina bi serîlêdanên heyî re, qatek taybetî ya POSIX tê peyda kirin, ku dihêle hûn gelek bernameyan bêyî barkirinê bimeşînin.

Pergal prensîba "her tişt URLek e" bikar tîne. Mînakî, URL "log: //" dikare ji bo têketinê, "bus: //" ji bo danûstendina di navbera pêvajoyan de, "tcp://" ji bo danûstendina torê, hwd. Modulên ku dikarin di forma ajoker, dirêjkirina kernel û serîlêdanên bikarhêner de bêne bicîh kirin, dikarin rêvebirên URL-ya xwe tomar bikin, mînakî, hûn dikarin modulek gihîştina porta I/O binivîsin û wê bi URL-ya "port_io:/ ", piştî ku hûn dikarin wê bikar bînin da ku bi vekirina URL-ya "port_io://60" bigihîjin porta 60.

Jîngeha bikarhêner li Redox-ê li ser bingeha şêlê grafîkî ya Orbital-ê hatî çêkirin (ne ku bi şêlek Orbital-a din a ku Qt û Wayland bikar tîne neyê tevlihev kirin) û amûra OrbTk, ku API-yek mîna Flutter, React û Redux peyda dike. Netsurf wekî gerokek webê tê bikar anîn. Di heman demê de proje rêveberê pakêtê yê xwe, komek karûbarên standard (binutils, coreutils, netutils, extrautils), şêlê fermana ion, pirtûkxaneya standard C relibc, edîtorê nivîsê ya mîna vim-a sodyûm, stûnek torê û pelek pêşve dike. sîstem. Veavakirin bi zimanê Toml hatiye danîn.

Daxuyaniya nû xebata xwe didomîne da ku pê ewle bibe ku ew li ser hardware rast dixebite. Ji bilî mîmariya x86_64, şiyana xebitandina pergalên 32-bit x86 (i686, Pentium II û nûtir) hatiye zêdekirin. Veguheztina ARM64 CPU (aarch64) berdewam e. Xebata li ser hardware ya rastîn a ARM hîn nayê piştgirî kirin, lê barkirina bi emulasyona ARM64 li QEMU gengaz e. Ji hêla xwerû, bine-pergala deng ve tê çalak kirin û piştgirîya destpêkê ji bo veavakirina pir-monîtor tê peyda kirin (li ser pergalên bi çarçoveyek UEFI). Amûrên ku di Redox OS-ê de têne piştgirî kirin çîpên dengê AC'97 û Intel HD Audio, derketina grafîkê bi VESA BIOS an UEFI GOP API, Ethernet (Intel 1/10 Gigabit Ethernet, Realtek RTL8168), cîhazên têketinê (klavye, mişk, pêlên pêlavê) hene. , SATA (AHCI, IDE) û NVMe. Piştgiriya Wi-Fi û USB hîn ne amade ye (USB tenê di QEMU de dixebite).

Nûjeniyên din:

  • Wêneyên boot ên ji bo pergalên bi BIOS û EFI hatine yek kirin.
  • Pêkanîna bangên pergala klon û exec li cîhê bikarhêner hate veguheztin.
  • Pêvajoya dakêşandinê hêsan bûye. Bernameyek bootstrap hate bicîh kirin, ku ji hêla kernel ve hatî destpêkirin û barkirina pelên ELF-ê, wekî pêvajoya destpêkê, peyda dike.
  • Ji bo piştgirîkirina bernameyên setuid ên wekî sudo bernameyek zêdekirî zêde kir.
  • Ji bo hêsankirina çêkirin û sazkirina pêvajoyên paşerojê, pakêta kratê redox-daemon hate pêşniyar kirin.
  • Pergala meclîsê ji nû ve hatî sêwirandin, ku gengaz e ku ji bo mîmariyên cihêreng di yek dara çavkaniyê de were çêkirin. Ji bo hêsankirina kombûna mîhengên cihêreng, skrîpta build.sh tê pêşniyar kirin. Piştgiriyek ji bo avakirina karanîna amûra podman-ê zêde kir. Civîna kernel, bootloader û initfs bi pakêtên din re yekgirtî ye.
  • Ji bo avakirina bernameyên nimûne yên ku di nav wêneya bingehîn a bootê de bi hawîrdorek grafîkî re ne vesazkirinek demo lê zêde kir.
  • Piştgiriya ji bo kontrolkirina volumaniya nermalavê li binepergala dengê audiod hate zêdekirin.
  • Ji bo çîpên deng li ser bingeha AC'97 ajokar hate zêdekirin. Ji bo çîpên Intel HD Audio ajokera çêtirkirî.
  • Ji bo kontrolkerên IDE ajokarek zêde kir.
  • Piştgiriya çêtirîn ji bo ajokarên NVMe.
  • PCI, PS / 2, RTL8168, USB HID, ajokarên VESA çêtir kirin.
  • Pêvajoya sazkirinê ji nû ve hate sêwirandin: bootloader, bootstrap, kernel û initfs naha di pelrêça /boot de cih digirin.
  • Kernel rêveberiya bîranînê hêsan kiriye û jêhatîbûna manîpulekirina cîhên navnîşan ji asta bikarhêner zêde kiriye.
  • Di şêla grafîkî ya Orbital de, piştgirî ji bo pergalên pir-monîtor hatiye zêdekirin, pêvajoya nîşana mişkê baştir bûye, û nîşanek ji bo guheztina dengdanê hatiye zêdekirin. Menu xwedan şiyana dabeşkirina serlêdanan li kategoriyan e.

Source: opennet.ru

Add a comment