نگاهی به پروژه Treble و آینده آپدیت های اندرویدی
یکی از مشکلاتی که اغلب کاربران اندروید از آن شکایت دارند، روال کند ارائه آپدیت از سوی تولید کنندگان و بدتر از آن توقف کامل این روند طی یک یا دو سال است. حالا اما به نظر می رسد که پس از چندین و چند سال گوگل با معرفی پروژه « Treble » قصد تغییر این روند را دارد.
این پروژه که به همراه اندروید اوریو عرضه شده تغییرات عمده ای را در معماری فریم ورک سیستم عامل ایجاد کرده و هدف از آن ارائه سریعتر بروزرسانی ها به تولیدکنندگان است.
پروژه Treble را به جرات می توان یکی از بزگترین تغییرات ایجاد شده در اوریو دانست اما آنچه کاربران از آن غافل مانده اند تاثیری است که این سرویس بر آینده اندروید خواهد گذاشت.
چرا به پروژه Treble نیاز داریم؟
همانطور که گفتیم یکی از دغدغه های اصلی کاربران اندروید سرعت پایین انتشار بروزرسانی و توقف سریع ارائه آنها است، در حالی که کاربران آیفون تا چند سال از بروزرسانی های اپل بهره مند می شوند.
از طرف دیگر برخی از موبایل های میان رده و اقتصادی اندروید از نعمت دریافت نسخه های جدید اندروید بی بهره هستند. اگرچه عدم دریافت برخی امکانات جانبی نسخه های جدید اندروید مایه تاسف است، اما نگرانی اصلی بروز نشدن قابلیت های امنیتی موبایل است.
با افزایش نقش اسمارت فون ها در تراکنش های مالی و انتقال داده های شخصی و کاری، پیاده سازی راهکارهای امنیتی به روز در آنها اهمیت بیشتری پیدا کرده است.
با این حال در این زمینه تنها نمی توان تولیدکنندگان را مقصر دانست چرا که مساله اپدیت کند اندروید به روش برقراری ارتباط لایه های نرم افزاری با سخت افزار موبایل هم مرتبط می شود.
به عبارت دیگر برای اجرای اپلیکیشن ها در CPU یا استفاده از دوربین، سیستم عامل باید از طریق «لایه انتزاعی سخت افزار» (HAL) با سخت افزار ارتباط برقرار کند. این لایه انتزاعی در سطح پایین و بدون وابستگی به سیستم طراحی شده بنابرین اپلیکیشن های مختلف می توانند با انواع سخت افزار به کار رفته در موبایل و فارغ از سازنده آنها سازگاری داشته باشند.
در زیر این لایه کرنل لینوکس قرار گرفته که سخت افزار مختص به برقراری ارتباط بین HAL و قطعه مورد نظر در موبایل را مدیریت می کند. گفتنی است کرنل بخشی از یک سیستم عامل است که دستورات ورودی – خروجی را از لایه اپلیکیشن دریافت کرده و به آنها اجازه می دهد با سخت افزار ارتباط برقرار کنند.
مشکل اندروید نوقا و نسخه های پیش از آن این است که بین کد سخت افزار سطح پایین فروشنده و کد سیستم عامل AOSP سطح بالاتر که گوگل آنرا توسعه می دهد هیچ تفاوتی وجود ندارد.
به عبارت دیگر فروشنده در هر بروزرسانی ناچار است بخش های متعددی از کد اندروید را اپدیت کند. علاوه بر این شرکت هایی از قبیل سامسونگ و الجی باید منتظر ارائه بروزرسانی های سخت افزاری از سوی تولیدکنندگان قطعاتی از قبیل چیپست هم بمانند.
متاسفانه اندروید با سخت افزار سطح پایین سازگاری چندانی ندارد و با هر تغییر باید کدهای آن را کاملا بهنیه سازی کرد که به زمان، هزینه و آزمایشات زیادی نیاز دارد.
حالا اما گوگل از طریق پروژه Treble قصد دارد چارچوب سیستم عامل اندورید را از مسائل مرتبط به کد سخت افزار فروشنده جدا کرده و امکان بروزسانی سیستم عامل بدون پیکربندی مجدد بخش های مرتبط به سخت افزار را فراهم کند.
با این وجود تولیدکنندگان هنوز به دنبال اضافه کردن قابلیت ها و ویژگی های سخت افزاری و نرم افزاری خود هستند که باعث افزایش زمان توسعه و تست می شود.
با این حال Treble بار سنگینی را از دوش فروشنده ها و تولیدکننده های سخت افزارها به ویژه چیپست ها برخواهد داشت.
بروزرسانی جدید چگونه ارائه می شوند؟
همانطور که می دانید اندروید بر پایه کرنل لینوکس توسعه داده شده است، با این حال برای تغییر نحوه برقراری ارتباط در اندروید باید تغییرات مهمی در کارکرد کرنل پیاده سازی می شد. در اندروید اوریو برای حل مساله لایه انتزاعی سخت افزار، زیرسیستم های سخت افزاری مثل صدا، دوربین و غیره را از هم جداسازی کرده است.
موبایل های اندروید سازگار با Project Treble تا شش سال پس از عرضه هم بروزرسانی های مهم را دریافت خواهند کرد
این تقسیم بندی جدید رابط کاربری بین HAL و کاربران را مشخص می کند. حالا حدود 60 رابط کاربری رسمی برای اجزای مختلف سخت افزار وجود دارد که به عنوان HIDL شناخته می شوند.
با جداسازی رابط کاربران و HALها، امکان جایگزینی فریمورک بدون نیاز به بازسازی HAL فراهم می شود. توسعه دهندگان به منظور بروزرسانی دستگاه هایی که از اندروید 7 و نسخه های پایینتر از آن استفاده می کنند، می توانند HAL های قبلی و فعلی را در یک رابط کاربری HIDL ارائه کنند.
نکته مهم دیگر این است که در Project Treble پشتیبانی طولانی مدت کرنل لینوکس از 2 به 6 سال افزایش پیدا کرده است. به عبارت دیگر موبایل های اندروید سازگار با Project Treble تا شش سال پس از عرضه هم بروزرسانی های مهم را دریافت خواهند کرد. پیش از این یک موبایل اندروید در بهترین حالت تا یک یا دو سال پس از عرضه بروزرسانی ها را دریافت می کرد.
راه اندازی Project Treble مستلزم همکاری تولیدکنندگان است و پس از آماده سازی کامل این برنامه، فروشندگان بدون نیاز به تغییر کدهای مرتبط به سخت افزار می توانند بروزرسانی های گوگل را مستقیما در اختیار کاربران قرار دهند.
یکی از نکاتی که گوگل بر آن تاکید کرده این است که پروژه Treble در اسمارت فون هایی که به صورت پیش فرض با اندروید اوریو عرضه می شوند، وجود دارد. این نکته بدین معنی است که ممکن است موبایل های بروز شده به اوریو از این سرویس بی بهره باشند.
برای مثال اسمارت فون وان پلاس 5T با اندروید نوقا عرضه شد اما حتی در صورت بروزرسانی به اندروید اوریو هم از این سرویس برخوردار نمی شود. در عین حال گوگل همزمان با ارائه اوریو برای موبایل پیکسل، پروژه Treble را هم به آن اضافه کرد.
برای اطمینان از اینکه سیستم عامل بروز شده با تنطیمات سخت افزار سازگار است، در اندروید اوریو رابط کاربری فروشنده از طریق «مجموعه تست فروشنده» (VTS) تائید می شود.
از آنجایی که در پروژه Treble هم بروزرسانی ها به صورت مستقیم از طریق گوگل ارائه نمی شوند و دست تولیدکننده ها در انجام تغییرات ظاهری و کارکردی در اندروید باز است، ممکن است انتشار نهایی آنها مدتی طول بکشد.
با این حال با خارج کردن توسعه دهندگان شخص ثالث سخت افزار از این بازی، فرایند ارائه بروزرسانی ها شتاب بیشتری به خود گرفته و ساده خواهد شد.
نتایج پروژه Treble
از دید کاربر بروزرسانی های نرم افزاری دقیقا مثل سابق و از طریق تولید کننده انجام می شوند با این حال امیدواریم که سرعت انتشار آنها بیشتر شده و در بازه طولانی تری ارائه شوند.
این پروژه برای توسعه دهندگان رام های کاستوم هم می تواند خبر خوشی به حساب بیاید چرا که الزامات همگام سازی سخت افزار و نرم افزار را کاهش می دهد.
با پیاده سازی این برنامه تعداد روزهایی که یک توسعه دهنده باید صرف پورت کردن AOSP برای یک موبایل دارای Treble کند، از چند هفته یا ماه به چند روز کاهش پیدا می کند و به همین دلیل است که اعضای انجمن XDA از آن استقبال کرده اند.
برخی توسعه هندگان تاکید کرده اند که حالا یک ایمیج سیستمی را می توان روی موبایل های با پردازنده های مختلف فلش کرد.
هرچند در حال حاضر هدف پروژه Treble افزایش سرعت و بازه زمانی انتشار بروزرسانی ها است اما ممکن است در آینده امکان پیاده سازی اندروید روی محدوده گسترده ای از دستگاه ها فراهم شود، همانطور که در ویندوز شاهد آن هستیم.
نتیجه گیری
پروژه Treble بسیار نوید بخش به نظر می رسد، با این همه باید در نظر داشت که این پروژه نیز محدودیت های مختص به خود را دارد. نخست آنکه مسئولیت بروز رسانی گجت ها مستقیما متوجه گوگل نیست و در مقابل تولیدکنندگانشان (از جمله سامسونگ، هوآوی و ال جی) هستند که وظیفه ارائه به روز رسانی را بر عهده دارند و فاصله این شرکت ها تا گوگل و پیکسل هایش ابدا قابل چشم پوشی نیست.
در مقابل Treble را به نوعی می توان بهینه سازی ساختاری برای سیستم عامل دانست که طراحی شده تا فرایند ارائه آپدیت توسط تولید کننده ها را سرعت ببخشد. به بیان دیگر گوگل سهم خود را ادا نموده و حالا نوبت شرکت های تولید کننده است تا وارد عمل شوند.
دوم آنکه صرفا موبایل های بهره مند از اندروید اوریو یا نسخه های جدیدتر باید از پروژه Treble پشتیبانی کنند و دستگاه هایی که از نوقا به اوریو ارتقاء یافته اند نیازی به پشتیبانی کامل از آن ندارند، هرچند شرکت های سازنده موبایل می توانند در صورت تمایل این امکان را برای محصولاتشان فراهم نمایند.
در حال حاضر پیکسل های گوگل، اسنشال فون، میت 9، میت 10، آنر 8 پرو و آنر 9 از Treble پشتیبانی می کنند
با در نظر داشتن آنچه گفته شد باید منتظر ماند و دید که شرکت ها در زمان عرضه آپگرید اوریو چه وعده ای می دهند. از طرفی بعید به نظر می رسد که رام های سفارشی سازی شده بتوانند پشتیبانی از Treble را برای انبوه دستگاه های قدیمی فراهم نمایند چراکه این قبیل سخت افزارها عموما متن باز نیستند.
پس اگر به دنبال دستگاهی هستید که همین حالا از Treble پشتیبانی کند می توانید به سراغ پیکسل های گوگل، اسنشال فون، میت 9، میت 10، آنر 9 و آنر 8 پرو بروید. نکته دیگر آنکه هنوز مشخص نیست چه شرکت هایی در نظر دارند پشتیبانی از این پروژه را به موبایل های فعلی شان بیاورند هرچند که پرچمداران سال آینده (آنها که از ابتدا با اوریو عرضه می شوند) پشتیبانی کامل از Treble خواهند داشت تا آپدیت ها با کمترین سرعت در اختیار کاربران قرار داده شود.