چرا دستگاههای iOS نسبت به دستگاههای اندرویدی به رم کمتری نیاز دارند؟
بهترین گوشیهای اندرویدی در سال ۲۰۱۷ را با بهترین گوشیهای شرکت اپل به مبارزه طلبیدهایم. در یک سوی میدان، مبارزان اپل به نامهای آیفون ۷، آیفون ۸، آیفون ۸ پلاس و آیفون ۱۰ و در سوی دیگر گلادیاتورهای اندروید، گلکسی نوت ۸ سامسونگ، گلکسی S۸ پلاس، پیکسل ۲XL گوگل و سرانجام وانپلاس ۵T قرار گرفتهاند.
کد خبر :
780543
آی تی رسان: امروزه جنگ بین سیستم عامل اندروید و iOS وارد مراحل حساستر و شدیدتری شده است. هر دو نیز برای اثبات قدرت و تواناییهای خود دلایل منطقی و مستندی را ارایه میدهند. اما این دلیل نمیشود که مردم و حتی خود ما به مقایسه بیپایان بین برتریهای این دو سیستم عامل پایان دهیم. ما همواره از خود میپرسیم که کدام یک از این دو سیستم عامل امنتر هستند؟ و یا اینکه اپلیکیشنهای کدام یک بهتر کار میکنند؟ اما هیچ وقت به این نکته دقت نکردهایم که چرا دستگاههای دارای سیستم عامل iOS نسبت به دستگاههای اندرویدی از میزان رم کمتری برخوردار هستند؟ مقایسه رم دستگاههای اندرویدی با دستگاههای iOS در این مقاله ما میخواهیم به بررسی علت این تفاوت بپردازیم. برای شروع مقایسه، بهترین گوشیهای اندرویدی در سال ۲۰۱۷ را با بهترین گوشیهای شرکت اپل به مبارزه طلبیدهایم. در یک سوی میدان، مبارزان اپل به نامهای آیفون ۷، آیفون ۸، آیفون ۸ پلاس و آیفون ۱۰ و در سوی دیگر گلادیاتورهای اندروید، گلکسی نوت ۸ سامسونگ، گلکسی S۸ پلاس، پیکسل ۲XL گوگل و سرانجام وانپلاس ۵T قرار گرفتهاند. در حقیقت بهترین
گوشیهای هوشمند سال ۲۰۱۷ به جنگ بهترین گوشیهای iOS دنیا آمدهاند. شما میتوانید مشخصات و میزان رم مورد استفاده در این گوشیهای اندرویدی را مشاهده کنید. البته این همه قدرت و حافظه سبب شده است که هزینه ۶۵۰ تا ۱۰۰۰ دلار را نیز بر روی دست مشتریان خود بگذارند. در ابتدای مقایسه برای اینکه ذهنیت شما را نیز نسبت به میزان بالای این مقدار رم به کار رفته در گوشیهای اندرویدی روشنتر کنیم، باید یادآور شویم که حتی امروزه در لپتاپهای موجود در بازار، هشت گیگابایت رم نیز کمتر به چشم میخورد. برای مثال در کرومبوکهای سال ۲۰۱۷ تنها چهار گیگابایت رم استفاده شده است و تنها در صورتی که به طور سفارشی درخواست شود، از رم هشت گیگابایتی بر روی آنها استفاده خواهد شد. با این حال، حتی یک کرومبوک با هشت گیگابایت رم و عملکرد بالا، باز هم هزینه و قیمت کمتری نسبت به این گوشیهای اندرویدی دارد. البته اگر جانب انصاف را رعایت کنیم، در بین گوشیهای اندرویدی اشاره شده در بالا، تنها وان پلاس ۵T دارای هشت گیگابایت رم است. اما نکته اینجاست که، اگر گوشیهای اندرویدی به این مقدار رم، نیاز ندارند چرا باید رمی با این مقدار حجم زیاد عرضه شود؟
در هر حال در این مقایسه دستگاههای اندرویدی موجود بین چهار تا هشت گیگابایت رم دارند، خب، پس حالا ببینیم سیبهای موجود در جعبه شرکت مرحوم استیو جابز، از چه میزان رم استفاده میکنند؟ یک لحظه صبر کنید، واقعا چه خبر است؟ نکند گاز، از قسمت رم سیبها گرفته شده است؟ در بین اپلهای موجود ۲۰۱۷، آیفون ۸ با رم دو گیگابایتی به چشم میخورد و یک رده بالاتر از آن آیفون ۸ پلاس با تنها سه گیگابایت رم و حتی بهترین و باشکوهترین گوشی اپل یعنی آیفون ۱۰ نیز همان سه گیگابایت رم را دارد. مقدار رم بالاترین گوشی اپل از پایینترین میزان رم گوشیهای اندروید نیز یک گیگابایت کمتر است! تازه حتی این مقدار رم نیز جدید نیست و در گذشته ژتوسط اپل در مدلهای دیگر مورد استفاده قرار گرفته است. برای مثال آیفون ۷ پلاس نیز در سال ۲۰۱۶ با سه گیگابایت رم عرضه شد. آیفون ۷، آیفون ۶s پلاس و آیفون ۶s نیز همگی با دو گیگابایت رم کار میکردند. حتی آیفون ۶ نیز که امروزه از سیستم عامل iOS ۱۱ به راحتی استفاده میکند، تنها یک گیگابایت رم دارد. واقعا چه خبر است؟ چطور چنین چیزی امکان پذیر است که آیفون ۶ مانند دیگر گوشیهای جدید اپل، از جدیدترین سیستم عامل
عرضه شده در سال ۲۰۱۷ استفاده میکند و تنها یک گیگابایت رم دارد و گوشیهای اندرویدی به هشت برابر آن نیاز دارند؟!
چرا دستگاههای اندرویدی به این مقدار رم نیازمند هستند؟ خب برای پاسخ به این سوال باید به گذشته برگردیم. اساسا سیستم عامل اندروید طوری طراحی شده است که بتواند با انواع پردازندهها با مشخصات مختلف و سختافزارهای متنوع از شرکتهای متفاوت، به خوبی و بدون هیچ مشکلی کار کند. به طور معمول نرمافزارهایی که برای یک نوع خاص از سختافزارها و سیستمها نوشته میشوند، دیگر نمیتوانند بر روی یک سیستم و سخت افزار دیگر کار کنند و برای اینکه دستگاههای دیگر بتوانند از آن نرمافزار استفاده کنند باید فرایند انتقال (Ported) و بازنویسی بیتهای ناسازگار انجام گردد تا سیستم یا دستگاههای متفاوت بتواند آن نرمافزار را مورد استفاده قرار دهد. برای این منظور، جهت اطمینان از اینکه سیستم عامل و برنامههای اندروید بدون مشکل میتوانند بر روی همه نوع دستگاه و سختافزاری به خوبی کار کنند، اندروید را بر روی پلتفرم جاوا طراحی کردهاند. جاوا یک ماشین مجازی بینظیر است. شما میتوانید برنامه خود را یکبار در جاوا بنویسید و بعد از آن خود ماشین مجازی جاوا کار ترجمه و هماهنگی کد نوشته شده را در زمان اجرا در سیستم مورد استفاده،
بر عهده میگیرد؛ که این یعنی شما دیگر نیاز ندارید که برای هر سیستم متفاوت از اول کدنویسی را انجام دهید و به طور خودکار، ماشین مجازی جاوا اینکار را برای شما انجام خواهد داد. اما این کار هزینههایی نیز در بر دارد. ماشین مجازی جاوا و فعالیتهایش بسیار پیچیده هستند و نیاز به مقدار زیادی رم دارند. در حقیقت این مقدار رم تنها برای مدیریت فرایندهای کاری خود جاوا مورد نیاز نیست، بلکه برای نگهداری و استفاده کد جاوا اسکریپ اصلی برای ترجمه و اجرای آن در هر کدام از برنامهها و همچنین اجرای کدهای ترجمه شده در سیستم است. البته از طرف دیگر در طی این سالها کارایی ماشین مجازی جاوا بهبود یافته است و نیازی به این مقدار رم ندارد. اما به دلیل گسترش اپلیکیشنها که همواره در حال پیشرفت و ارتقا هستند، به منابع رم بیشتری برای کارکرد بهتر و بدون مشکل و همچنین منابع رم برای انجام فعالیتهای پس زمینه و پشت پرده برنامهها، که در سیستم عامل اندروید معمول بهنظر میرسد، نیاز است. اما نکته آخر در این رابطه، علت نحوه کارکرد و طراحی سیستم عامل اندروید نیز هست، چرا که اندروید از روشی که به متد Garbage Collection مشهور شده است، برای
مدیریت حافظه رم سیستم استفاده میکند. در این روش، اپلیکیشنها، تشویق میشوند که به هر میزان از منابع رم که برای کارکرد خود نیاز دارند، دسترسی حداکثری داشته باشند و هر زمان نیاز آنها از رم برطرف شد، سیستم عامل اندروید اقدام به پاکسازی اطلاعات به درد نخور (زبالهها) موجود در رم که دیگر مورد استفاده قرار نمیگیرند، میکند، تا فضای رم برای استفاده توسط دیگر اپلیکیشنها، آزاد شود. این یک روش بسیار خوب است، اما تنها در زمانی که به مقادیر زیادی از رم دسترسی داشته باشیم، در غیر این صورت سیستم عامل اندروید بیشتر وقت و انرژی خود را برای جمعآوری و پاکسازی زبالههای اطلاعاتی انباشته شده در رم، صرف خواهد کرد. به همین علت است که ما به شما توصیه میکنیم، اگر به کارایی و عملکرد بالای سیستم اهمیت میدهید، گوشی اندرویدتان حداقل دارای چهار گیگابایت رم باشد. در غیر این صورت، حداقل دو گیگابایت رم برای جلوگیری از تلنباشت زبالهها در رم و پر شدن و در نهایت کند شدن سیستم اندرویدی نیاز است. اما چرا سیستم عامل iOS به این مقدار رم نیاز ندارد؟ شرکت اپل با کنترل و مدیریت دیکتاتوروار خود بر روی کل سیستم iOS
توانسته است به خوبی بر میزان رم مصرفی گوشیهایش مسلط شود. اگر شما میخواهید از سیستم عامل iOS استفاده کنید تنها یک گزینه در پیش رو دارید: گوشی آیفون. اگر شما میخواهید یک اپلیکیشن iOS بنویسید نیز باز مجبورید از ابزارهای اپل استفاده کنید و آن کار را به روش و استاندارد تعریف شده اپل انجام دهید. یعنی در یک کلام اگر شما میخواهید اپلیکیشن iOSتان نفس بکشد، ملزم به رعایت قوانین سفت و سخت اپل هستید. البته این قوانین ناخوشایند مزایایی نیز دارند. اپل به خوبی مشخصات، نیاز و تواناییهای سختافزاری دستگاههای تولیدی خود را میشناسد و به طور دقیق میداند که چه تصمیماتی را برای طراحی و کدنویسیهای خود اتخاذ کند تا محصولاتش با کمترین میزان رم، بهترین عملکرد ممکن را داشته باشند. برای بهتر مشخص شدن این مسئله، باید در نظر بگیرید که سیستم عامل اندروید باید از انواع مختلف پردازندهها پشتیبانی کند در حالی که سیستم عامل iOS در تمام محصولات اپل، در سختافزارهای مبتنی بر ARM اجرا میشوند. از طرف دیگر وقتی سیستم عامل iOS تنها یک نوع مشخص از سختافزارها را پوشش میدهد، برخلاف اندروید، دیگری نیازی به داشتن ماشین مجازی ترجمه و
مدیریت کدها نیست. تمام اپلیکیشنها براساس همان کدهای بومی و اصلی نوشته شده، به خوبی و به طور مستقیم بر روی سختافزار موجود اجرا خواهند شد و زمانی که ماشین مجازی هم در کار نباشد، به رم بیشتری نیاز نخواهد بود، که مساوی است با رم کمتر! به علاوه شرکت اپل از روش متفاوتی برای مدیریت حافظه رم بهره میگیرد. برخلاف سیستم عامل اندروید که کنترل و مدیریت را خود بر روی رم اعمال میکند و به هر اپلکیشن به هر مقدار رم که دلش بخواهد دسترسی میدهد، در سیستم عامل iOS برنامهها تابع قانون و مقرارت مشخصی هستند. به طوری که برنامهها خود به مدیریت حافظه رم موجود میپردازند و منابع رم بین اپلیکیشنها جیرهبندی شده است و هر برنامه تنها به مقدار از پیش مشخص شده حافظه رم دسترسی دارد و باید بقیه رم موجود را برای استفاده سایر برنامهها در اختیار آنها قرار دهد. در انتها به طور خلاصه باید گفت که پایین بودن رم موجود در گوشیهای شرکت اپل به معنای ضعیفتر بودن عملکرد آنها نیست بلکه iOS از روش متفاوتی برای مدیریت رم سیستم استفاده میکند. همچنین بر خلاف سیستم عامل اندروید نیازی به ماشین مجازی برای ترجمه و اجرای کدها ندارد، پس به رم
کمتری نیازمند است. اما سوالی که مطرح میشود این است که با این وجود چرا هنوز اینقدر گران هستند؟ البته برای بهبود اندروید نیز در طی سالهای اخیر کارهای خوبی انجام گرفته است. گوگل به عنوان مالک و توسعه دهنده سیستم عامل اندروید، در سال ۲۰۱۴ با عرضه گوشیهای اندروید وان (Android One) و سپس با ارایه نسخه بهینه شده اندروید اوریو با نام اندروید گو (Android Go) در سال ۲۰۱۷، گامی بلند در راستای کاهش نیاز و وابستگی سیستم عامل اندروید به سخت افزار و منابع بالای رم برداشته است. به طوری که در اندروید گو، میزان مصرف منابع به کمتر از نصف رسیده است. هر چند هدف از این کار چیز دیگری بیان شده، اما نشان از عزم گوگل برای بهبود وضع موجود دارد.