Liberasyon sistèm operasyon ToaruOS 2.1

Yo te pibliye piblikasyon sistèm operasyon ki sanble ak Unix ToaruOS 2.1, li te ekri nan grafouyen epi li te apwovizyone ak pwòp nwayo li yo, loader bòt, bibliyotèk C estanda, manadjè pake, eleman espas itilizatè yo ak yon koòdone grafik ak yon manadjè fenèt konpoze. Pwojè a okòmansman devlope nan University of Illinois kòm travay rechèch nan jaden an nan kreye nouvo entèfas grafik konpoze, men Lè sa a, transfòme nan yon sistèm opere separe. Kòd pwojè a ekri an C epi distribye anba lisans BSD. Yo prepare yon imaj ap viv nan gwosè 14.4 MB pou telechaje, ki ka teste nan QEMU, VMware oswa VirtualBox.

Liberasyon sistèm operasyon ToaruOS 2.1

ToaruOS baze sou yon nwayo ki sèvi ak yon achitekti ibrid modilè ki konbine yon kad monolitik ak zouti pou itilize modil chaje, ki fòme majorite chofè aparèy ki disponib, tankou chofè disk (PATA ak ATAPI), sistèm fichye EXT2 ak ISO9660, framebuffer. , klavye, sourit , kat rezo (AMD PCnet FAST, Realtek RTL8139 ak Intel PRO/1000), chips son (Intel AC'97), osi byen ke VirtualBox ajoute-ons pou sistèm envite. Kernel la sipòte fil Unix, TTY, sistèm fichye vityèl, pseudo sistèm fichye /proc, multithreading, IPC, ramdisk, ptrace, memwa pataje, Multitech ak lòt karakteristik estanda.

Sistèm nan ekipe ak yon manadjè fenèt konpoze, sipòte dosye ègzèkutabl ki lye dinamik nan fòma ELF, multitach, yon pil grafik, ka kouri Python 3 ak GCC.Ext2 yo itilize kòm sistèm nan dosye. Bootloader la sipòte BIOS ak EFI. Pile rezo a pèmèt itilizasyon API priz BSD-style ak sipòte koòdone rezo, ki gen ladan loopback.

Pami aplikasyon natif natal yo, Vi-tankou editè kòd Bim la kanpe deyò, ki te itilize pou dènye ane yo pou devlope aplikasyon espesifik ToaruOS tankou yon manadjè fichye, emulateur tèminal, panèl grafik ak sipò widje, manadjè pake, osi byen. kòm bibliyotèk pou sipòte imaj (PNG, JPEG) ak polis TrueType. Pwogram tankou Vim, GCC, Binutils, FreeType, MuPDF, SDL, Cairo, Doom, Quake, Super Nintendo Emulator, Bochs, elatriye yo te pote nan ToaruOS.

Pwojè a ap devlope tou pwòp langaj pwogramasyon dinamik li yo, Kuroko, ki fèt pou ranplase Python lè y ap devlope sèvis piblik ak aplikasyon koutim pou sistèm nan. Lang nan okoumansman de Python nan sentaks (pozisyone kòm yon dyalèk pi kout nan Python ak definisyon klè nan varyab) epi li gen yon aplikasyon trè kontra enfòmèl ant. Konpilasyon ak entèpretasyon bytecode sipòte. Entèprèt bytecode a bay yon pèseptè fatra epi li sipòte multithreading san yo pa itilize bloke global. Konpile a ak entèprèt la ka konpile sou fòm yon ti bibliyotèk pataje (~500KB), entegre ak lòt pwogram ak ekstansibl atravè C API la. Anplis ToaruOS, lang lan ka itilize sou Linux, macOS, Windows epi kouri nan navigatè ki sipòte WebAssembly.

Nan nouvo lage a:

  • Te ajoute sipò inisyal pou achitekti AArch64 (ARMv8), ki gen ladan kapasite eksperimantal pou itilize ToaruOS sou tablo Raspberry Pi 400 ak nan Emulation QEMU la.
  • Pwosesis ak transmisyon siyal nan pwosesis nan espas itilizatè yo te reamenaje. Aplike sigaction, sigprocmask, sigwait ak sigsuspend apèl yo.
  • Amelyore jesyon memwa nan espas itilizatè. Te ajoute apèl sistèm munmap.
  • Manadjè a konpoze aplike yon efè flou ak retravay manyen evènman yo lè gwosè fenèt la chanje.
  • Rann tèminal yo te amelyore, rann parese yo te aplike, epi yo te ajoute yon kachèt glif pou polis TrueType.
  • Kapasite konpozitè yo te elaji.
  • Yo te ajoute mekanis pou mete revèy la, ki gen ladan apèl sistèm settimeofday ak kapasite elaji sèvis piblik dat la.
  • Pile rezo amelyore. Sèvis piblik ifconfig la te ajoute sipò pou mete adrès IPv4 ak anviwònman routage. Pèmèt operasyon nan priz ICMP. Te ajoute sipò pou fonksyon recvfrom pou sockets UDP ak ICMP.
  • Bootloader la te ajoute kapasite nan travay ak klavye USB.
  • Yon atik pou efase fichye yo te ajoute nan meni kontèks manadjè fichye a.
  • Amelyore ekspozisyon graf nan monitè sistèm lan.
  • Te ajoute sèvis piblik grep ak sipò ekspresyon regilye.
  • Amelyore pwodiksyon lòd ps (te ajoute kolòn adisyonèl).

Liberasyon sistèm operasyon ToaruOS 2.1


Sous: opennet.ru

Add nouvo kòmantè