انتشار سیستم عامل مشابه یونیکس ToaruOS 2.0 منتشر شده است که از ابتدا نوشته شده است و با هسته خود، بوت لودر، کتابخانه استاندارد C، مدیر بسته، اجزای فضای کاربر و یک رابط گرافیکی با یک مدیر پنجره ترکیبی عرضه شده است. کد پروژه به زبان C نوشته شده و تحت مجوز BSD توزیع شده است. تصویر زنده با حجم 14.4 مگابایت برای دانلود آماده شده است که در QEMU، VMware یا VirtualBox قابل تست می باشد.
این پروژه در سال 2010 در دانشگاه ایلینوی آغاز شد و در ابتدا به عنوان کار تحقیقاتی در زمینه ایجاد رابط های گرافیکی ترکیبی جدید توسعه یافت. از سال 2012، توسعه به سیستم عامل ToaruOS تبدیل شده است که توسط یک جامعه علاقه مند به توسعه توسعه یافته است. در شکل فعلی، این سیستم مجهز به یک مدیر پنجره ترکیبی است، از فایلهای اجرایی مرتبط با پیوند پویا در قالب ELF، چند وظیفهای، پشته گرافیکی پشتیبانی میکند و میتواند پایتون 3 و GCC را اجرا کند.
ToaruOS مبتنی بر هستهای است که از یک معماری مدولار ترکیبی استفاده میکند که چارچوب یکپارچه و ابزارهایی را برای استفاده از ماژولهای قابل بارگذاری ترکیب میکند، که اکثر درایورهای دستگاه موجود، مانند درایورهای دیسک (PATA و ATAPI)، سیستمهای فایل EXT2 و ISO9660، فریمبافر را تشکیل میدهد. ، صفحه کلید، ماوس، کارت شبکه (AMD PCnet FAST، Realtek RTL8139 و Intel PRO/1000)، تراشههای صدا (Intel AC'97)، و همچنین افزودنیهای VirtualBox برای سیستمهای مهمان. هسته از رشته های Unix، TTY، سیستم فایل مجازی، سیستم فایل شبه /proc، multithreading، IPC، ramdisk، ptrace، حافظه مشترک، چند وظیفه ای و سایر ویژگی های استاندارد پشتیبانی می کند.
ext2 به عنوان سیستم فایل استفاده می شود. بوت لودر از BIOS و EFI پشتیبانی می کند. پشته شبکه امکان استفاده از APIهای سوکت به سبک BSD را می دهد و از رابط های شبکه، از جمله لوپ بک، پشتیبانی می کند. برنامه هایی مانند Vim، GCC، Binutils، FreeType، MuPDF، SDL، Cairo، Doom، Quake، شبیه ساز Super Nintendo، Bochs و غیره به ToaruOS منتقل شده اند. در میان برنامه های بومی، ویرایشگر کد Vi-like Bim متمایز است که در چند سال اخیر برای توسعه برنامه های خاص ToaruOS مانند مدیر فایل، شبیه ساز ترمینال، پنل گرافیکی با پشتیبانی ویجت، مدیریت بسته و همچنین استفاده شده است. به عنوان کتابخانه هایی برای پشتیبانی از تصاویر (PNG، JPEG) و فونت های TrueType.
این پروژه همچنین در حال توسعه زبان برنامه نویسی پویا خود به نام Kuroko است که برای جایگزینی پایتون در هنگام توسعه ابزارهای کاربردی و برنامه های کاربردی سفارشی برای سیستم طراحی شده است. این زبان در نحو یادآور پایتون است (به عنوان یک گویش کوتاه شده پایتون با تعریف صریح متغیرها قرار گرفته است) و پیاده سازی بسیار فشرده ای دارد. کامپایل و تفسیر بایت کد پشتیبانی می شود. مفسر بایت کد جمعآوری زباله را فراهم میکند و از multithreading بدون استفاده از قفل جهانی پشتیبانی میکند. کامپایلر و مفسر را می توان در قالب یک کتابخانه مشترک کوچک (~500 کیلوبایت) کامپایل کرد که با برنامه های دیگر یکپارچه شده و از طریق C API قابل توسعه است. علاوه بر ToaruOS، این زبان را می توان در لینوکس، macOS، ویندوز استفاده کرد و در مرورگرهایی اجرا کرد که از WebAssembly پشتیبانی می کنند.
در نسخه جدید ToaruOS:
- هسته Misaka عملکردی را اضافه کرده است تا امکان اجرای ابزارهای سفارشی top، strace، dbg، ping و cpuwidget را فراهم کند.
- قابلیتهای کتابخانه گرافیکی، از جمله افزودن تبدیلهای افینی گسترش یافته است.
- بهبود عملکرد چارچوب پنجره.
- اضافه شدن شطرنج ساز متن با پشتیبانی از فرمت TrueType.
- یک کتابخانه برای قالب بندی متن با نشانه گذاری اضافه شده است.
- بوت لودر BIOS با پشتیبانی گسترده از تنظیمات سخت افزاری بهبود یافته است. بوت لودر EFI بازنویسی شد. پشتیبانی از ویرایش توسط دستور خط هسته به هر دو بوت لودر اضافه شده است.
- طراحی پانل مدرن شده است. ویجتها اکنون از کتابخانههای قابل دانلود، طرحبندی پویا عناصر و پاپآپهای جدید پشتیبانی میکنند.
- بیننده بازنویسی شده و پالت های جدیدی اضافه شده است.
- یک پیاده سازی جدید از ماشین حساب اضافه شده است.
- پشتیبانی منطقه زمانی به کتابخانه استاندارد اضافه شده است.
- درایور اضافه شده برای چیپست Ensoniq ES1371 شبیه سازی شده در VMware.
- انتظار می رود نسخه اصلی بعدی 2.1 از دستگاه های AHCI، xHCI، USB HID پشتیبانی کند. در شاخه 2.2 برنامه ریزی شده است که از معماری AArch64 پشتیبانی شود.
منبع: opennet.ru