انتشار سیستم عامل Redox OS 0.8 که به زبان Rust نوشته شده است

انتشار سیستم عامل Redox 0.8 که با استفاده از زبان Rust و مفهوم میکروکرنل توسعه یافته است، منتشر شد. توسعه های پروژه تحت مجوز رایگان MIT توزیع می شود. برای آزمایش سیستم عامل Redox، مجموعه‌های نمایشی با حجم 768 مگابایت و همچنین تصاویری با محیط گرافیکی اولیه (256 مگابایت) و ابزارهای کنسول برای سیستم‌های سرور (256 مگابایت) ارائه می‌شوند. مجموعه ها برای معماری x86_64 تولید شده اند و برای سیستم هایی با UEFI و BIOS در دسترس هستند. علاوه بر محیط گرافیکی Orbital، تصویر دمو شامل شبیه ساز DOSBox، مجموعه ای از بازی ها (DOOM، Neverball، Neverputt، sopwith، syobonaction)، آموزش، پخش کننده موسیقی rodioplay و ویرایشگر متن Sodium است.

سیستم عامل مطابق با فلسفه یونیکس توسعه یافته است و برخی از ایده ها را از SeL4، Minix و Plan 9 به عاریت گرفته است. Redox از مفهوم میکروکرنل استفاده می کند که در آن فقط تعامل بین فرآیندها و مدیریت منابع در سطح هسته ارائه می شود و همه موارد دیگر. قابلیت در کتابخانه‌هایی قرار می‌گیرد که می‌توانند هم از هسته و هم از برنامه‌های کاربر استفاده کنند. همه درایورها در فضای کاربر در محیط های sandbox ایزوله اجرا می شوند. برای سازگاری با برنامه های موجود، یک لایه POSIX ویژه ارائه شده است که به شما امکان می دهد بسیاری از برنامه ها را بدون پورت اجرا کنید.

این سیستم از اصل "همه چیز یک URL است" استفاده می کند. به عنوان مثال، URL "log://" را می توان برای ورود به سیستم، "bus://" برای تعامل بین فرآیندها، "tcp://" برای تعامل شبکه و غیره استفاده کرد. ماژول‌هایی که می‌توانند در قالب درایورها، پسوندهای هسته و برنامه‌های کاربردی کاربر پیاده‌سازی شوند، می‌توانند مدیریت کننده‌های URL خود را ثبت کنند، برای مثال، می‌توانید یک ماژول دسترسی پورت I/O بنویسید و آن را به URL "port_io://" متصل کنید. "، پس از آن می توانید با باز کردن URL "port_io://60" از آن برای دسترسی به پورت 60 استفاده کنید.

محیط کاربری در Redox بر اساس پوسته گرافیکی خود Orbital (نباید با پوسته Orbital دیگری که از Qt و Wayland استفاده می کند اشتباه گرفته شود) و جعبه ابزار OrbTk ساخته شده است که یک API مشابه Flutter، React و Redux ارائه می دهد. Netsurf به عنوان یک مرورگر وب استفاده می شود. این پروژه همچنین در حال توسعه مدیریت بسته خود، مجموعه ای از ابزارهای استاندارد (binutils، coreutils، netutils، extrautils)، پوسته فرمان یون، کتابخانه استاندارد C relibc، ویرایشگر متنی شبیه به vim، یک پشته شبکه و یک فایل است. سیستم. تنظیمات به زبان Toml تنظیم شده است.

نسخه جدید به کار خود ادامه می دهد تا اطمینان حاصل شود که روی سخت افزار واقعی کار می کند. علاوه بر معماری x86_64، قابلیت کار بر روی سیستم های 32 بیتی x86 (i686، Pentium II و جدیدتر) اضافه شده است. انتقال به CPU ARM64 (aarch64) در حال انجام است. اجرای بر روی سخت افزار واقعی ARM هنوز پشتیبانی نمی شود، اما بارگیری با شبیه سازی ARM64 در QEMU امکان پذیر است. به طور پیش فرض، زیرسیستم صوتی فعال می شود و پشتیبانی اولیه از تنظیمات چند مانیتور ارائه می شود (در سیستم هایی با فریم بافر UEFI). تجهیزات پشتیبانی شده در سیستم عامل Redox شامل تراشه های صوتی AC'97 و Intel HD Audio، خروجی گرافیک از طریق VESA BIOS یا UEFI GOP API، اترنت (اینتل 1/10 گیگابیتی اترنت، Realtek RTL8168)، دستگاه های ورودی (صفحه کلید، ماوس، پد لمسی) است. ، SATA (AHCI، IDE) و NVMe. پشتیبانی از Wi-Fi و USB هنوز آماده نیست (USB فقط در QEMU کار می کند).

سایر نوآوری ها:

  • تصاویر بوت برای سیستم های دارای BIOS و EFI ادغام شده اند.
  • اجرای فراخوانی سیستم کلون و exec به فضای کاربر منتقل شده است.
  • فرآیند بارگذاری ساده شده است. یک برنامه بوت استرپ پیاده سازی شده است که توسط هسته راه اندازی می شود و بارگذاری بیشتر فایل های ELF مانند فرآیند init را فراهم می کند.
  • برنامه افزایش یافته برای پشتیبانی از برنامه های setuid مانند sudo اضافه شده است.
  • برای ساده‌سازی ایجاد و نصب فرآیندهای پس‌زمینه، پکیج جعبه ردوکس-دیمون پیشنهاد شده‌است.
  • سیستم مونتاژ مجدداً طراحی شده است و امکان ساخت برای معماری های مختلف در یک درخت منبع را فراهم می کند. برای ساده سازی مونتاژ پیکربندی های مختلف، اسکریپت build.sh پیشنهاد شده است. پشتیبانی برای ساخت با استفاده از جعبه ابزار podman اضافه شده است. اسمبلی هسته، بوت لودر و initfs با بسته های دیگر یکپارچه شده است.
  • یک پیکربندی آزمایشی برای ساختن برنامه‌های نمونه اضافه شده است که در تصویر اولیه بوت با یک محیط گرافیکی گنجانده نشده‌اند.
  • پشتیبانی از نرم افزار کنترل صدا به زیر سیستم صوتی audiod اضافه شده است.
  • درایور برای تراشه های صوتی مبتنی بر AC'97 اضافه شد. درایور بهبود یافته برای تراشه های Intel HD Audio.
  • درایور برای کنترلرهای IDE اضافه شده است.
  • پشتیبانی بهبود یافته از درایوهای NVMe.
  • درایورهای PCI، PS/2، RTL8168، USB HID، VESA بهبود یافته است.
  • فرآیند نصب مجدداً طراحی شده است: بوت لودر، بوت استرپ، کرنل و initfs اکنون در پوشه /boot قرار دارند.
  • هسته مدیریت حافظه را ساده کرده و توانایی دستکاری فضاهای آدرس را از سطح کاربر اضافه کرده است.
  • در پوسته گرافیکی Orbital، پشتیبانی از سیستم های چند مانیتور اضافه شده است، پردازش مکان نما ماوس بهبود یافته است و یک نشانگر برای تغییر صدا اضافه شده است. منو این قابلیت را دارد که برنامه ها را به دسته ها تقسیم کند.

منبع: opennet.ru

اضافه کردن نظر