Dasturiy ta'minot

UnoDOS – 64‑bit PClarda o‘zini mustaqil ravishda ishlaydigan grafik operatsion tizim

30-sentabr, 2026, 08:274 ko'rish6 daqiqa o'qish
UnoDOS – 64‑bit PClarda o‘zini mustaqil ravishda ishlaydigan grafik operatsion tizim

Bir floppy diskda joylashgan to‘liq grafik operatsion tizim tasavvurini hech kim kutmagan bo‘lishi mumkin. UnoDOS buni amalga oshiradi – 1,44 MB floppyda yadro, oynalar menejeri, fayl tizimlari, hamkor multitasking va ofis paketini birlashtirgan 16‑bit real‑mode OS. Bugungi kunda esa bu loyiha 64‑bit PClarda, konsollarda, qo‘l qurilmalarida va hatto telefonlarda ham ishlaydigan, o‘z drayverlari, tarmoq stacki, brauzer, kompilator va gipervizorga ega bo‘lgan kengaytirilgan oilaga aylandi.

Kelib chiqishi va rivojlanish bosqichlari

UnoDOS dastlab 2010‑yillarda x86 assemblerda yozilgan, 8088 protsessoriga mo‘ljallangan grafik tizim sifatida boshlangan. Birinchi versiyada yadro, ikkita fayl tizimi (FAT16 va o‘ziga xos mini‑FS), hamda bir necha oddiy ilovalar 1,44 MB floppyga sig‘ar edi. Loyiha “GUI‑first” tamoyiliga asoslangan bo‘lib, foydalanuvchi interfeysi birinchi darajali element sifatida yaratilgan.

License

Keyingi yillarda loyiha “contract‑driven” modeliga o‘tib, turli platformalar uchun portlar yaratildi: eski uy kompyuterlari, retro konsollar (NES, SNES), qo‘l kompyuterlari (Raspberry Pi, Arduino‑ishlab chiqarilgan SBC), hamda Android‑ga o‘xshash telefonlar. Har bir port o‘zining apparat drayverlari, tarmoq stacki va foydalanuvchi interfeysi bilan mustaqil ishlashga mo‘ljallangan.

pc64 – zamonaviy 64‑bit platforma uchun flagman

UnoDOSning hozirgi flagmani pc64 deb ataladi. Bu versiya har qanday x86‑64 PCda, 2007‑yildan beri ishlab chiqarilgan, UEFI yoki legacy BIOS orqali yuklanadi. UEFI firmware’dan framebuffer, klaviatura va boot hajmini oladi, so‘ngra ExitBootServices chaqirilib, operatsion tizim o‘z drayverlari bilan mustaqil ishlashni boshlaydi.

Release

Hybrid ISO/USB tasvirlari Windows va macOS foydalanuvchilari uchun bir‑bosqichli USB flasher ilovalari bilan birga taqdim etiladi. Emulyator ichida bir daqiqadan kamroq vaqt ichida yuklanadi, lekin haqiqiy apparatga o‘rnatish ham bir necha bosqichda amalga oshiriladi.

Grafik muhit va foydalanuvchi tajribasi

UnoDOS unoui deb nomlangan kross‑platforma widget to‘plamiga asoslangan. Desktopda taskbar, virtual desktoplar, oynalarni “snap” qilish, animatsiyali Alt‑Tab o‘tkazgich, ish stoli ikonkalari va dastur menyusi mavjud. O‘nta tema bir vaqtning o‘zida almashtirilishi mumkin: Aurora (yangi flat dizayn, yorug‘ va qorong‘u rejimlar), Mac OS 7, Windows 3.1, Amiga Workbench, C64, Apple II, NeXTSTEP kabi retro ko‘rinishlar.

Manual

Matnlar TrueType shriftlari bilan anti‑aliased tarzda ko‘rsatiladi, har bir kontrol klaviatura yoki sichqoncha orqali boshqarilishi mumkin. Bu yondashuv foydalanuvchi interfeysini zamonaviy operatsion tizimlarga yaqinlashtiradi, lekin retro estetikani ham saqlab qoladi.

Ilova ekotizimi

UnoDOS o‘z ichiga bir nechta asosiy ofis dasturlarini oladi:

The pc64 desktop
  • UnoWord, UnoCalc, UnoShow – Office 97‑ga o‘xshash paket, .doc, .xls, .ppt formatlarini o‘qiydi va yozadi.
  • Browser – HTML, Markdown, CSS render qiluvchi, cookie, cache, qidiruv, saqlash funksiyalari, TLS 1.2 HTTPS qo‘llab‑quvvatlaydi. JavaScript dvigatellari sifatida ichki unojs bytecode VM va tashqi quickjs‑ng mavjud.
  • Studio – IDE, sintaksis yoritish, “build‑and‑run” sikli, AI yordamchi, va UnoC kompilyatori – tizimda C kodini to‘g‘ridan‑to‘g‘ri kompilyatsiya qiladi.
  • Python – MicroPython muhitida PYRT.UNO modul orqali shell, fayl tizimi va tarmoqqa kirish imkoniyati.
  • Audio, video, rasm, SSH, fayl menejeri, chizuvchi, soat, tizim loglari, va bir nechta klassik o‘yinlar (Dostris, Pac‑Man, OutLast, Runner3D) ham mavjud.

Ilovalar .UNO modul sifatida paketlanadi, APPS\ katalogiga qo‘shilganda avtomatik ravishda shell tomonidan aniqlanadi – qayta qurish yoki qayta yuklash shart emas.

Apparat darajasidagi drayverlar

UnoDOS drayverlar qatlamini bir xil blok qatlamiga birlashtiradi. Ular quyidagilarni qo‘llab‑quvvatlaydi:

Window snapping
  • Saqlash – AHCI, NVMe, SDHCI/eMMC, USB mass‑storage, FAT16/FAT32, GPT/ESP yaratish.
  • USB – xHCI host stack, hub, HID klaviatura/mouse, mass‑storage, USB‑Ethernet (ASIX AX88179, Realtek RTL8152).
  • Tarmoq – Intel e1000/e1000e/igb, Realtek r8169, Wi‑Fi drayverlari (Intel, Realtek, Marvell), WPA2, to‘liq TCP/IP stack (ARP, IPv4, ICMP, UDP, TCP, DHCP, DNS, TLS via BearSSL, socket, syslog).
  • Kirish – PS/2, I2C‑HID (laptop trackpad), USB HID.
  • Audio – Intel HDA, AC'97 fallback, 48 kHz DMA.
  • ACPI – ichki AML interpreter (unoacpi).

Bu drayverlar birgalikda “bare‑metal” muhitda, firmwaredan mustaqil ishlashni ta’minlaydi.

Virtualizatsiya va xavfsizlik

UnoDOS unovirt komponenti Intel VMX (VT‑x) va AMD SVM (AMD‑V) texnologiyalarini qo‘llab, EPT/virtio qurilmalar orqali mehmon operatsion tizimlarni ishga tushiradi. Misol uchun, Ubuntu kernelini UnoDOS ostida ishga tushirish, ext4 diskni UnoDOS hajmidan fayl sifatida ulash mumkin. Bu imkoniyat test muhitini yaratish va platforma barqarorligini tekshirishda foydalidir.

UnoWord

Xavfsizlik nuqtai nazaridan unosecure modulida lokal hisoblar, RBAC (rolga asoslangan kirish nazorati) va audit loglari joriy qilingan. URC (remote‑control channel) esa “fail‑closed” mexanizmi bilan real mashinalarni klaviatura yoki monitorsiz boshqarish, testlarni avtomatlashtirish va ekranni oqim qilish imkonini beradi.

Taqqoslash va cheklovlar

UnoDOSni boshqa “lightweight” OSlar, masalan, KolibriOS yoki MenuetOS bilan solishtirishda bir nechta farqlar ko‘rinadi. KolibriOS ham assemblerda yozilgan, lekin u asosan 32‑bit real‑mode va ko‘proq minimalistik interfeysga ega. UnoDOS esa 64‑bit drayverlar, to‘liq tarmoq stacki, brauzer, IDE va AI yordamchi kabi zamonaviy komponentlarni o‘z ichiga oladi.

Browser

Boshqa tomondan, UnoDOS hali ham “real‑hardware” tasdiqlash ro‘yxatida ba’zi platformalar uchun “emulator‑only” belgilanishi mavjud. Masalan, ba’zi eski konsollar yoki ba’zi ARM‑asosli SBClarda to‘liq drayverlar yo‘q, shuning uchun ularni emulyator orqali sinash kerak bo‘ladi.

Rivojlanish jarayoni va jamiyat

Loyiha GitHubda hmofet/unodos repozitoriyasida faol rivojlanadi. Har bir platforma uchun PLATFORMS.md faylida real apparatda boot qilingan yoki faqat emulyatorda sinovdan o‘tgan holatlar ro‘yxati keltirilgan. Release sahifasida ISO, USB, ROM, SD‑card tasvirlari mavjud, shuningdek Windows va macOS uchun bir‑bosqichli USB flasher ilovalari ham taqdim etilgan.

Studio

Yo‘riqnoma pc64/README.md va pc64/DEVELOPMENT.md fayllarida Linux va Windows muhitida qurish, QEMU+OVMF yordamida test qilish, hamda drayverlar qo‘shish bo‘yicha batafsil ko‘rsatmalar berilgan. Qurish uchun faqat standart paketlar (gcc‑mingw‑w64‑x86‑64, qemu‑system‑x86, ovmf, python3, python3‑pil) yetarli, EDK2 kabi qo‘shimcha komponentlar talab qilinmaydi.

Kelajak yo‘nalishlari

Hozirgi vaqtda UnoDOS 3.1 versiyasi “contract‑driven” model asosida yangi platformalar qo‘shilishini davom ettiradi. Rejalashtirilgan yo‘nalishlar:

  • ARM64 porti – yangi server va mobil qurilmalarga moslashish.
  • Qo‘shimcha tarmoq protokollari – IPv6, QUIC.
  • AI yordamchi funksiyalarini kengaytirish – kodni avtomatik tahlil qilish, tavsiyalar.
  • Ko‘proq fayl tizimlari – Btrfs, ZFS kabi zamonaviy tizimlar uchun drayverlar.

Bu yo‘nalishlar UnoDOSni faqat “retro‑hobbist” platforma emas, balki zamonaviy, kengaytirilgan va xavfsiz operatsion tizim sifatida ko‘rsatadi.

Umuman olganda, UnoDOS – bir necha avlod kompyuter arxitekturalarini birlashtirgan, o‘z drayverlari, tarmoq stacki, brauzer va IDEga ega bo‘lgan noyob grafik operatsion tizim. Uning ochiq manbali yondashuvi, keng platformali qo‘llab‑quvvatlashi va hamjamiyat tomonidan doimiy yangilanib borishi texnologik eksperimentlar, ta'lim va hatto kichik ishlab chiqarish muhitlari uchun qiziqarli imkoniyatlar yaratadi.

Asl manba: github.com

Manba: Hacker News
#UnoDOS #operatsion tizim #x86 #open source #grafik interfeys
Telegram da muhokama qilish