انتشار پلتفرم باز webOS Open Source Edition 2.10 معرفی شده است که می تواند در دستگاه های قابل حمل مختلف، بردها و سیستم های اطلاعات سرگرمی خودرو استفاده شود. بردهای Raspberry Pi 4 به عنوان پلتفرم سختافزار مرجع در نظر گرفته میشوند. این پلتفرم در یک مخزن عمومی تحت مجوز Apache 2.0 توسعه داده شده است و توسعه توسط جامعه نظارت میشود و از یک مدل مدیریت توسعه مشارکتی تبعیت میکند.
پلتفرم webOS در ابتدا توسط Palm در سال 2008 توسعه یافت و در تلفن های هوشمند Palm Pre و Pixie استفاده شد. در نتیجه خرید Palm در سال 2010، این پلتفرم به دست هیولت پاکارد رسید و پس از آن HP سعی کرد از این پلتفرم در چاپگرها، تبلت ها، لپ تاپ ها و رایانه های شخصی خود استفاده کند. در سال 2012، HP ترجمه webOS را به یک پروژه منبع باز مستقل اعلام کرد و در سال 2013 شروع به باز کردن کد منبع اجزای آن کرد. در سال 2013، این پلتفرم توسط ال جی از هیولت پاکارد خریداری شد و اکنون در بیش از 70 میلیون تلویزیون ال جی و دستگاه های مصرف کننده استفاده می شود. در سال 2018، پروژه webOS Open Source Edition تأسیس شد که از طریق آن الجی تلاش کرد به مدل توسعه باز بازگردد، سایر شرکتکنندگان را جذب کند و دامنه دستگاههای پشتیبانی شده در webOS را گسترش دهد.
محیط سیستم webOS با استفاده از بسته های ابزار OpenEmbedded و بسته های پایه و همچنین سیستم ساخت و مجموعه ابرداده از پروژه Yocto شکل گرفته است. اجزای کلیدی webOS عبارتند از مدیر سیستم و برنامه (SAM، System and Application Manager) که مسئول اجرای برنامه ها و خدمات است و Luna Surface Manager (LSM) که رابط کاربری را تشکیل می دهد. کامپوننت ها با استفاده از چارچوب Qt و موتور مرورگر کرومیوم نوشته شده اند.
رندرینگ از طریق یک مدیر ترکیبی که از پروتکل Wayland استفاده می کند انجام می شود. برای توسعه برنامه های کاربردی سفارشی، استفاده از فناوری های وب (CSS، HTML5 و جاوا اسکریپت) و فریم ورک Enact مبتنی بر React پیشنهاد شده است، اما امکان ایجاد برنامه ها در C و C ++ با رابط مبتنی بر Qt نیز وجود دارد. رابط کاربری و برنامه های گرافیکی تعبیه شده عمدتاً به عنوان برنامه های بومی که با استفاده از فناوری QML نوشته شده اند پیاده سازی می شوند. به طور پیش فرض، Home Launcher ارائه می شود که برای عملکرد صفحه لمسی بهینه شده است و مفهوم نقشه های متوالی (به جای ویندوز) را ارائه می دهد.
برای ذخیره سازی داده ها به شکل ساختاریافته با استفاده از فرمت JSON، از ذخیره سازی DB8 استفاده می شود که از پایگاه داده LevelDB به عنوان backend استفاده می کند. برای مقداردهی اولیه از بوت بر اساس systemd استفاده می شود. زیرسیستمهای uMediaServer و Media Display Controller (MDC) برای پردازش محتوای چندرسانهای ارائه میشوند، PulseAudio به عنوان سرور صدا استفاده میشود. برای به روز رسانی خودکار سیستم عامل، از OSTree و جایگزینی پارتیشن اتمی استفاده می شود (دو پارتیشن سیستم ایجاد می شود که یکی از آنها فعال است و دومی برای کپی کردن به روز رسانی استفاده می شود).
تغییرات اصلی در نسخه جدید:
- چارچوب دسترسی به فضای ذخیرهسازی پیادهسازی شده است و یک رابط واحد برای دسترسی به امکانات ذخیرهسازی مختلف، از جمله حافظه داخلی، درایوهای USB و سیستمهای ذخیرهسازی ابری ارائه میکند (در حال حاضر فقط Google Drive پشتیبانی میشود). این چارچوب به شما امکان می دهد اسناد، تصاویر و فایل ها را از تمام ارائه دهندگان ذخیره سازی پیکربندی شده از طریق یک رابط کاربری مشترک مشاهده و باز کنید.
- موتور مرورگر ذخیرهسازی کوکیهای جلسه و احراز هویت را به صورت رمزگذاری شده فراهم میکند.
- یک سرویس مدیریت محیطی جدید برای مدیریت دستگاه های جانبی اضافه شده است که از تعامل با دستگاه ها از طریق رابط های GPIO، SPI، I2C و UART پشتیبانی می کند. این سرویس به شما امکان می دهد مدیریت دستگاه های جدید را بدون تغییر کد منبع پلت فرم سازماندهی کنید.
- قابلیتهای مدل کنترل دسترسی ACG (گروههای کنترل دسترسی) که برای محدود کردن قدرت سرویسها با استفاده از Luna Bus استفاده میشود، گسترش یافته است. در نسخه جدید، تمام سرویس های قدیمی که قبلا از مدل امنیتی قدیمی استفاده می کردند به ACG منتقل شدند. نحو قوانین ACG تغییر کرده است.
منبع: opennet.ru