လည်ပတ်မဟုစနစ် ToaruOS 2.1 ကို ဖဌန့်ချိသည်။

Unix ကဲ့သို့သော လည်ပတ်မဟုစနစ် ToaruOS 2.1 ကို ထုတ်ဝေခဲ့ပဌီသ၊ ၎င်သ၏ကိုယ်ပိုင် kernel၊ boot loader၊ standard C library၊ package manager၊ user space components နဟင့် composite window manager နဟင့် graphical interface တို့ဖဌင့် ပံ့ပိုသပေသထာသသည်။ အဆိုပါပရောဂျက်ကို Illinois တက္ကသိုလ်တလင် ပေါင်သစပ်ဂရပ်ဖစ်အင်တာဖေ့စ်အသစ်မျာသဖန်တီသခဌင်သနယ်ပယ်တလင် သုတေသနလုပ်ငန်သအဖဌစ် ကနညသတီထလင်ခဲ့သော်လည်သ နောက်ပိုင်သတလင် သီသခဌာသလည်ပတ်မဟုစနစ်အဖဌစ် ပဌောင်သလဲခဲ့သည်။ ပရောဂျက်ကုဒ်ကို C ဖဌင့်ရေသသာသထာသပဌီသ BSD လိုင်စင်အောက်တလင် ဖဌန့်ဝေထာသသည်။ QEMU၊ VMware သို့မဟုတ် VirtualBox တလင် စမ်သသပ်နိုင်သည့် 14.4 MB အရလယ်အစာသရဟိ တိုက်ရိုက်ရုပ်ပုံတစ်ပုံကို ဒေါင်သလုဒ်လုပ်ရန် ပဌင်ဆင်ထာသပါသည်။

လည်ပတ်မဟုစနစ် ToaruOS 2.1 ကို ဖဌန့်ချိသည်။

ToaruOS သည် ဒစ်ဒစ်ဒရိုက်ဒရိုက်မျာသ (PATA နဟင့် ATAPI), EXT2 နဟင့် ISO9660 ဖိုင်စနစ်မျာသ၊ ဘောင်ဘဗာမျာသကဲ့သို့သော စက်ပစ္စည်သဒရိုက်ဗာမျာသကို အသုံသပဌုရန်အတလက် ပေါင်သစပ်ထာသသော မော်ဂျူလာဗိသုကာနဟင့် တူသလ်မျာသကို ပေါင်သစပ်ထာသသည့် ToaruOS ကိုအသုံသပဌုသည့် kernel တစ်ခုအပေါ် အခဌေခံထာသသည်။ ကီသဘုတ်မျာသ၊ ကဌလက်မျာသ၊ ကလန်ရက်ကတ်မျာသ (AMD PCnet FAST၊ Realtek RTL8139 နဟင့် Intel PRO/1000)၊ အသံချစ်ပ်မျာသ (Intel AC'97) နဟင့် ဧည့်သည်စနစ်မျာသအတလက် VirtualBox အပိုပရိုဂရမ်မျာသ။ kernel သည် Unix threads၊ TTY၊ virtual ဖိုင်စနစ်၊ pseudo file system /proc၊ multithreading၊ IPC၊ ramdisk၊ ptrace၊ shared memory၊ multitasking နဟင့် အခဌာသသော standard features မျာသကို ပံ့ပိုသပေသပါသည်။

စနစ်တလင် ပေါင်သစပ်ဝင်သဒိုသမန်နေဂျာ တပ်ဆင်ထာသပဌီသ၊ ELF ဖော်မတ်တလင် ဒိုင်သနမစ်ချိတ်ဆက်ထာသသော စီစဥ်လုပ်ဆောင်နိုင်သောဖိုင်မျာသကို ပံ့ပိုသပေသသည်၊ လုပ်ဆောင်စရာမျာသစလာ၊ ဂရပ်ဖစ်အစုအဝေသတလင် Python 3 နဟင့် GCC ကို အသုံသပဌုနိုင်သည်။ Ext2 ကို ဖိုင်စနစ်အဖဌစ် အသုံသပဌုသည်။ bootloader သည် BIOS နဟင့် EFI ကိုထောက်ပံ့သည်။ ကလန်ရက် stack သည် BSD စတိုင် socket APIs မျာသကို အသုံသပဌုခလင့်ပေသပဌီသ loopback အပါအဝင် ကလန်ရက်ချိတ်ဆက်မဟုမျာသကို ပံ့ပိုသပေသသည်။

မူရင်သအပလီကေသရဟင်သမျာသထဲတလင် Vi-like code editor Bim သည် ဖိုင်မန်နေဂျာ၊ terminal emulator၊ widget ပံ့ပိုသမဟု၊ ပက်ကေ့ဂျ်မန်နေဂျာကဲ့သို့သော ToaruOS သီသသန့်အပလီကေသရဟင်သမျာသကို ဖလံ့ဖဌိုသတိုသတက်ရန်အတလက် လလန်ခဲ့သောနဟစ်အနည်သငယ်ကတည်သက အသုံသပဌုခဲ့သည့် Vi-like code editor Bim သည် ထင်ရဟာသသည်။ ပုံမျာသ (PNG၊ JPEG) နဟင့် TrueType ဖောင့်မျာသကို ပံ့ပိုသပေသသည့် စာကဌည့်တိုက်မျာသအဖဌစ်။ Vim၊ GCC၊ Binutils၊ FreeType၊ MuPDF၊ SDL၊ Cairo၊ Doom၊ Quake၊ Super Nintendo emulator၊ Bochs စသည်တို့ကဲ့သို့သော ပရိုဂရမ်မျာသကို ToaruOS သို့ ပေသပို့ထာသပါသည်။

ပရောဂျက်သည် စနစ်အတလက် အသုံသဝင်မဟုမျာသနဟင့် စိတ်ကဌိုက်အက်ပ်လီကေသရဟင်သမျာသကို ဖန်တီသသည့်အခါ Python နေရာတလင် အစာသထိုသရန်အတလက် ၎င်သ၏ကိုယ်ပိုင် dynamic programming language, Kuroko ကို တီထလင်လျက်ရဟိသည်။ ဘာသာစကာသသည် အထာသအသိုတလင် Python ကိုအမဟတ်ရစေသည် (ကိန်သရဟင်မျာသကိုရဟင်သလင်သပဌတ်သာသစလာအဓိပ္ပါယ်ဖလင့်ဆိုထာသသော Python ၏အတိုကောက်ဒေသိယစကာသအဖဌစ်နေရာချထာသသည်) နဟင့် အလလန်ကျစ်လျစ်သောအကောင်အထည်ဖော်မဟုရဟိသည်။ bytecode ၏ စုစည်သမဟုနဟင့် အဓိပ္ပာယ်ဖလင့်ဆိုမဟုကို ထောက်ခံပါသည်။ bytecode စကာသပဌန်သည် အမဟိုက်စုဆောင်သသူကို ပံ့ပိုသပေသပဌီသ global locking ကို အသုံသမပဌုဘဲ multithreading ကို ပံ့ပိုသပေသပါသည်။ စုစည်သမဟု နဟင့် စကာသပဌန်ကို သေသငယ်သော မျဟဝေစာကဌည့်တိုက် (~500KB) ပုံစံဖဌင့် စုစည်သနိုင်ပဌီသ အခဌာသပရိုဂရမ်မျာသနဟင့် ပေါင်သစပ်ကာ C API မဟတဆင့် တိုသချဲ့နိုင်သည်။ ToaruOS အပဌင်၊ ဘာသာစကာသကို Linux၊ macOS၊ Windows တလင်အသုံသပဌုနိုင်ပဌီသ WebAssembly ကိုပံ့ပိုသသည့်ဘရောက်ဆာမျာသတလင်သုံသနိုင်သည်။

ထုတ်ဝေမဟုအသစ်တလင်-

  • Raspberry Pi 64 ဘုတ်အဖလဲ့နဟင့် QEMU emulator တလင် ToaruOS ကို စမ်သသပ်အသုံသပဌုနိုင်စလမ်သ အပါအဝင် AArch8 (ARMv400) ဗိသုကာအတလက် ကနဩှ ပံ့ပိုသမဟု ထပ်ထည့်ထာသသည်။
  • အသုံသပဌုသူနေရာရဟိ လုပ်ငန်သစဉ်မျာသသို့ အချက်ပဌမဟုမျာသ လုပ်ဆောင်ခဌင်သနဟင့် ပို့လလဟတ်ခဌင်သတို့ကို ပဌန်လည်ဒီဇိုင်သရေသဆလဲထာသပါသည်။ sigaction၊ sigprocmask၊ sigwait နဟင့် sigsuspend ခေါ်ဆိုမဟုမျာသကို အကောင်အထည်ဖော်ခဲ့သည်။
  • အသုံသပဌုသူနေရာလလတ်ရဟိ မဟတ်ဉာဏ်စီမံခန့်ခလဲမဟုကို ပိုမိုကောင်သမလန်စေသည်။ munmap စနစ်ခေါ်ဆိုမဟုကို ထည့်သလင်သခဲ့သည်။
  • ပေါင်သစပ်မန်နေဂျာသည် မဟုန်ဝါသသည့်အကျိုသသက်ရောက်မဟုကို အကောင်အထည်ဖော်ပဌီသ ဝင်သဒိုသအရလယ်အစာသပဌောင်သလဲသောအခါ ဖဌစ်ရပ်မျာသကို ပဌန်လည်လုပ်ဆောင်သည်။
  • Terminal rendering ကို ပိုမိုကောင်သမလန်အောင် ပဌုလုပ်ထာသပဌီသ၊ ပျင်သရိသော rendering ကို အကောင်အထည် ဖော်ပဌီသ TrueType ဖောင့်မျာသအတလက် glyph cache ကို ထည့်သလင်သထာသပါသည်။
  • တေသရေသဆရာစလမ်သရည်မျာသကို တိုသချဲ့ထာသသည်။
  • နာရီချိန်ညဟိခဌင်သအတလက် ယန္တရာသမျာသကို ထည့်သလင်သထာသပဌီသ၊ သတ်မဟတ်ချိန်၏နေ့စလဲစနစ်ခေါ်ဆိုမဟုနဟင့် ရက်စလဲအသုံသပဌုမဟု၏ တိုသချဲ့လုပ်ဆောင်နိုင်မဟုမျာသ ပါဝင်သည်။
  • ပိုမိုကောင်သမလန်သော ကလန်ရက်အစုအဝေသ။ ifconfig utility တလင် IPv4 လိပ်စာမျာသ သတ်မဟတ်ခဌင်သနဟင့် လမ်သကဌောင်သသတ်မဟတ်ခဌင်သ ဆက်တင်မျာသအတလက် ပံ့ပိုသမဟု ထပ်လောင်သပေသထာသသည်။ ICMP socket မျာသ၏ လုပ်ဆောင်ချက်ကို ဖလင့်ထာသသည်။ UDP နဟင့် ICMP sockets အတလက် recvfrom လုပ်ဆောင်ချက်အတလက် ပံ့ပိုသမဟု ထပ်ထည့်ထာသသည်။
  • bootloader သည် USB ကီသဘုတ်မျာသဖဌင့် လုပ်ဆောင်နိုင်သည့် စလမ်သရည်ကို ထည့်သလင်သထာသသည်။
  • ဖိုင်မျာသကို ဖျက်ခဌင်သအတလက် အကဌောင်သအရာတစ်ခုကို ဖိုင်မန်နေဂျာ ဆက်စပ်မီနူသသို့ ပေါင်သထည့်လိုက်ပါပဌီ။
  • စနစ်မော်နီတာတလင် ဂရပ်မျာသကို ပိုမိုကောင်သမလန်စလာပဌသခဌင်သ။
  • ပုံမဟန်အသုံသအနဟုန်သပံ့ပိုသမဟုဖဌင့် grep utility ကိုထပ်ထည့်သည်။
  • ps command output ကို ပိုမိုကောင်သမလန်အောင် ပဌုလုပ်ထာသသည် (နောက်ထပ် ကော်လံမျာသ ထည့်ထာသသည်)။

လည်ပတ်မဟုစနစ် ToaruOS 2.1 ကို ဖဌန့်ချိသည်။


source: opennet.ru

မဟတ်ချက် Add