Android Open Source Project(پروژه متن باز اندروید)
پروژه متن باز اندروید
در حین خواندن اخبار اندروید، ، یا تحقیق در مورد سیستم عامل موبایل اندروید، ممکن است با حروف اول AOSP برخورد کرده باشید. پشت مخفف AOSP چه چیزی پنهان شده است؟
AOSP مخفف Android Open Source Project است. این توضیح یک پاسخ ساده و سریع به این سوال است که “AOSP چیست؟”. با این حال، به نظر می رسد هنوز چیزی در مورد AOSP یاد نگرفته اید. بیایید نگاه دقیق تری داشته باشیم.
AOSP چیست؟
Android یک نرم افزار منبع باز است که برای تلفن های همراه و سایر دستگاه ها ایجاد شده است. پروژه منبع باز اندروید (AOSP) به رهبری گوگل وظیفه نگهداری و توسعه بیشتر اندروید را بر عهده دارد. بسیاری از سازندگان دستگاهها دستگاههای دارای اندروید را به بازار آوردهاند و به راحتی در سراسر جهان در دسترس هستند.هدف اصلی ما ایجاد یک پلت فرم نرم افزاری عالی برای کاربران روزمره است. تعدادی از شرکت ها مهندسان زیادی را برای رسیدن به این هدف متعهد کرده اند و نتیجه یک محصول مصرفی با کیفیت کامل تولید است که منبع آن برای سفارشی سازی و انتقال باز است.
همچنین لازم به ذکر است که تقریباً هر سازنده گوشی نسخه AOSP خود را از فروشنده چیپست مانند کوالکام دریافت می کند. این به این دلیل است که اندروید باید از طریق درایورها با سخت افزارهای سطح پایین سازگار شود. در نتیجه، بهروزرسانیهای اندروید اغلب به تعویق میافتند یا فقط برای چند سال پشتیبانی میشوند. این رویکرد برای گوگل سودمند است. تعداد زیادی از شرکت ها تعمیرات و تغییرات سیستم عامل را با پرداخت هزینه انجام می دهند. این یک وضعیت برد-برد برای همه طرف های درگیر است.
چه کسی از AOSP استفاده می کند؟
پروژه متن باز اندروید توسط هر سازنده گوشی هوشمندی که دستگاه اندرویدی ارائه می دهد استفاده می شود. صادقانه بگویم، تقریباً همه کسانی که امروزه گوشی هوشمندی تولید می کنند که آیفون نیست، از کد AOSP استفاده می شود. سامسونگ، الجی، اچتیسی، هوآوی، شیائومی، زد تیای، آنر، وان پلاس و تعداد زیادی برند دیگر از جمله آنها هستند. فرقی نمیکند نسخه اندروید سامسونگ (با نام Samsung Experience)، نسخه اندروید شیائومی (موسوم به MIUI)، نسخه اندروید هواوی (موسوم به EMUI)، نسخه اندروید HTC (به نام Sense UI) یا حتی نسخه خود گوگل باشد. از اندروید.
همه این نسخههای اندروید ظاهر، احساس و عملکرد متفاوتی دارند، اما همه آنها بر اساس مجموعهای از کدها هستند که به عنوان پروژه منبع باز Android (AOSP) شناخته میشوند. Google پایگاه کد اندروید را حفظ می کند و سالی یک بار تغییراتی را در مخزن پروژه منبع باز Android ارائه می دهد. این به همه این تولیدکنندگان گوشیهای هوشمند اجازه میدهد تا با یک پایه کد تمیز شروع کنند و سپس تغییرات خود را اضافه کنند. این تغییرات ممکن است شامل تنظیمات ظاهری، عملکرد اصلی، یا روش اصلی تعامل اجزای نرم افزار با یکدیگر باشد.
وقتی صحبت از این می شود که چه چیزی در مخزن پروژه متن باز اندروید می رود و چه چیزی نمی رود، گوگل حرف آخر را می زند. آنها احتمالاً نمی توانند همه چیز را در یک نسخه گنجانده باشند، بنابراین معمولاً با چشم انداز نسخه اصلی اندروید بعدی شروع می کنند. آنها سپس روی معرفی تعداد کمی API به پایگاه کد AOSP (معمولاً یک یا دو) کار می کنند. این APIها برای برنامهنویسان شخص ثالث و همچنین شرکتهای OEM Google و گوشیهای هوشمند برای برنامهها و بازیها در فروشگاه Google Play در دسترس هستند.
در حالی که برخی از ویژگی های جدید معمولاً تغییرات جزئی هستند، برخی دیگر پیشرفت های قابل توجهی دارند. بسیاری از آنها این پتانسیل را دارند که نحوه استفاده از دستگاه های مبتنی بر اندروید مانند گوشی های هوشمند را به طور اساسی تغییر دهند.
همانطور که انتظار دارید، سیستم عامل ها برای ایجاد و نگهداری پیچیده هستند. اندروید نیز از این قاعده مستثنی نیست. AOSP چندین لایه نرم افزاری را در داخل سیستم عامل در بر می گیرد و به توسعه دهندگان سخت افزار و نرم افزار، نقاط دسترسی و ابزارها را می دهد. سازندگان دستگاه، سیستم عامل را برای عملکرد با سخت افزار جداگانه خود در لایه های “سطح پایین” کدگذاری می کنند.
به عنوان مثال، هسته لینوکس نرم افزار اصلی است که منابع CPU، حافظه سیستم، شبکه و سایر جنبه های سیستم عامل را مدیریت می کند تا برنامه ها و سرویس ها بتوانند کار کنند. لایه Hardware Abstraction Layer (HAL) بلوتوث، صدا و سایر APIهای معمول برنامه را به میکروفون، بلندگوها و سایر ویژگی های دستگاه متصل می کند.
توسعه دهندگان برنامه از لایه های “سطح بالاتر” بهره می برند. کتابخانه های بومی به توسعه دهندگان این امکان را می دهند که با استفاده از کتابخانه های سطح پایین مانند OpenGL ES، Webkit و غیره محتوا ایجاد کنند. علاوه بر این، Android Frameworks به توسعهدهندگان برنامهها برای ویژگیهای رایج سیستمعامل که همه ما روزانه از آنها استفاده میکنیم، قلابهایی ارائه میدهد.
داده های موقعیت مکانی، هشدارهای فشاری، و برقراری تماس های تلفنی تنها چند نمونه هستند. Android Runtime به عنوان یک مترجم عمل می کند و کد برنامه را به دستورالعمل های سخت افزاری اصلی تبدیل می کند.
با این حال، AOSP چیزی بیش از مجموعه ای از کدهای همیشه در حال گسترش است. به عنوان بخشی از این ابتکار، Google همچنین منابع طراحی و توسعه، مانند اسناد سازگاری، بهترین شیوههای امنیتی و اصول طراحی اپلیکیشن را فراهم میکند. Google همچنین تعدادی مجموعه آزمایشی را برای کمک به توسعه دهندگان ارائه می دهد تا تأیید کنند که دستگاه های آنها API ها و ویژگی ها را به درستی پیاده سازی می کنند.
چرا پروژه مهم است؟
سیستم عامل های متن باز برای اهداف مختلفی استفاده می شوند. و در حالی که برنامهها و خدمات تجاری میآیند و میروند، نرمافزار منبع باز همچنان ادامه دارد زیرا توسط یک جامعه فعال پشتیبانی میشوند.
سیستم عامل های رایگان می توانند جان تازه ای به سخت افزاری ببخشند که به خوبی کار می کند اما توسط شرکت های بزرگ رها شده است. دلایل اخلاقی زیادی برای پروژه های منبع باز وجود دارد. تصمیم گیری در مورد اینکه چه کسی باید در نرم افزاری که روی چه سخت افزاری اجرا می شود نقش داشته باشد یکی از آنهاست.
صداهای منتقد AOSP گوگل را به عنوان یک تجربه تجاری و پر از تبلیغات توصیف می کنند. اما اندروید بهترین گزینه سیستم عامل برای کسانی است که به نرم افزار منبع باز متکی هستند. این سیستم عامل به لطف جامعه توسعه دهندگان عظیم خود پتانسیل باورنکردنی ارائه می دهد و در آینده نیز به گسترش خود ادامه خواهد داد. امروزه به دلیل استفاده در دستگاه های تجاری شناخته شده است، اما در آینده بیشتر و بیشتر به عنوان یک سیستم عامل برای کاربردهای صنعتی مورد استفاده قرار خواهد گرفت. دلیل اصلی این امر را از حوزه مصرف می دانیم – قابلیت استفاده!
آینده AOSP
به لطف ساعت ها مشارکت توسعه دهندگان از سراسر جهان، پروژه متن باز اندروید همچنان سنگ بنای موفقیت اندروید است. در حالی که دستگاههای اندرویدی به این زودیها از بین نمیروند، Google فعالانه در حال برنامهریزی آینده است.
در آگوست 2016، یک پروژه منبع باز جدید در GitHub – Fuchsia ظاهر شد. از آن زمان، ما چیز زیادی نشنیده ایم. برخلاف سیستمعاملهای اندروید و کروم که قبلاً توسعه داده شده بود، که مبتنی بر هسته لینوکس هستند، Fuchsia مبتنی بر هسته جدید زیرکون است. ما هنوز چیز زیادی در مورد فوشیا نمی دانیم، از جمله اینکه چه زمانی در دسترس مشتریان قرار می گیرد یا نه. به نظر می رسد که برای طیف وسیع تری از دستگاه ها نسبت به اندروید در حال توسعه است.
خلاصه
اندروید در هسته خود پلتفرمی است که هر کسی میتواند برنامهها را روی آن اجرا کند و همچنین قطعات و اجزای مورد نیاز برای برقراری ارتباط با سختافزار سنتی. ما اغلب اندروید را به عنوان یک سیستم عامل برای گوشی ها و تبلت ها در نظر می گیریم، اما موارد استفاده دیگری نیز برای این سیستم عامل وجود دارد، مانند استفاده از آن در سیستم های POS، راه حل های سرگرمی یا برنامه های کاربردی