بي‌ترديد سیستم‌عامل اندروید یکی از برترین سیستم‌عامل‌های موبایل در چند سال اخیر به شمار مي‌رود و چندین شرکت بزرگ ساخت موبایل جهان گوشی‌های خود را با این سیستم‌عامل اپن‌سورس عرضه می‌کنند. اپن‌سورس بودن اندروید این امکان را به کاربران می‌دهد، بتوانند به جزئیات بیشتری از گوشی خود مسلط باشند که این امر، برای کاربران حرفه‌ای‌تر بسیار خوشایند است. اما از طرف دیگر، افرادی هم هستند که داراي اطلاعات فنی کافی نبوده و این مسئله باعت سردرگمی آن‌ها خواهدشد. اما شاید به جرأت بتوان گفت، بزرگ‌ترین مشکل سیستم‌عامل اندروید کند شدن گوشی بعد از نصب تعداد زیادی برنامه است و این مشکل دست‌کم در سه مورد نمایان می‌شود. زمانی که شما در حال دانلود یا به‌روز‌رساني یک برنامه هستید و دانلود ناگهان قطع می‌شود، زمانی که برنامه موردنظر شما به سرعت اجرا می‌شد اما حالا سرعت اجراي آن بسیار کند شده و در نهایت، عمر باتری نیز نسبت به روزهای اول بسیار کم شده‌است.

 مشکل کجاست؟

این امر چند دليل عمده دارد. اول این‌که، ساختار سیستم‌عامل اندروید به‌گونه‌ای است که حتی اگر برنامه‌ها روی حافظه موقت دستگاه نباشند، بازهم برای اجرا چند مگابایت از حافظه داخلی را اشغال می‌کنند. همچنین تعدادی زیادی از برنامه‌ها مانند وایبر و فیس‌بوک حتی با زدن دکمه خروج، بازهم در پشت صحنه فعال هستند و چندین مگابایت از حافظه گوشی را اشغال می‌کنند، بدون این‌که شما مطلع باشید. این امر می‌تواند به ساختار نرم‌افزار یا سیستم‌عامل اندروید مربوط شود که مجوز اجرای برنامه‌ها را در پشت صحنه و بدون اطلاع شما صادر مي‌کند. در نهایت، سومین دليل زمانی رخ می‌دهد که حافظه‌های داخلی دستگاه‌های اندرویدی کم باشد. در اين شرايط فضای باقیمانده، برای اجرای نرم‌افزارها به‌کار گرفته خواهدشد و محدودیت بعدی زمانی خود را نشان می‌دهد که بدانیم حافظه داخلی قابل ارتقا نیست! این داستان وقتی جالب‌تر می‌شود که بعضی از برنامه‌ها مانند بازار، تویتر، یوتيوب و... نیز فقط روی حافظه اصلی نصب می‌شوند و قابل انتقال به کارت‌حافظه جانبی نیستند. با توجه به مواردی که گفته شد، اکنون بايد درک بهتری از پشت صحنه موبایل اندرویدی خود در ذهن داشته‌باشيد و می‌توانید حدس بزنید چه مواردی می‌تواند باعث کند شدن گوشی شود.

 

مدیریت حافظه در اندروید

در اندروید سه بخش حافظه اصلی وجود دارد. حافظه RAM برای اجرای برنامه‌ها، حافظه ذخیره‌سازی نرم‌افزارها که برنامه‌ها در آن ذخیره می‌شوند و حافظه SD کارت به‌عنوان یک حافظه جانبی که می‌توان عکس‌ها، فایل‌های موسیقی و تصویری را در آن ذخیره کرد. بعضی از گوشی‌های اندرویدی دارای حافظه SD Card داخلی و جانبی هستند که در اندروید به ترتیب با نام‌های /sdcard و /sdcard-ext شناخته‌می‌شوند. مدیریت حافظه RAM در سیستم‌عامل اندروید، به دليل استفاده از هسته لینوکس پیچیده است. شاید برایتان جالب باشد که بدانید، پس از آزمایش‌هاي مختلف به اين نتيجه رسيدند که سخت‌افزار گوشی موبایل به تنهایی 32 مگابایت از حافظه RAM را اشغال می‌کند و پس از روشن شدن گوشی، اجزاي ثابت سیستم‌عامل اندروید مانند System، Google Apps، Phone و Acore نیز بین 65 تا 80 مگابایت از حافظه RAM را در اختیار می‌گیرند. پس اگر شما حتی برنامه‌ای را هم اجرا نکنید، به صورت پیش‌فرض 90 تا 110 مگابایت از حافظه RAM گوشی اشغال مي‌شود (این در حالی است که هیچ نرم‌افزاری اجرا نشده‌است). اجرای نرم‌افزار Launcher نیز خود می‌تواند 8 تا 30 مگابایت حافظه RAM را به خود اختصاص دهد. بيشتر نرم‌افزارها دارای چندین بخش مختلف هستند. رابط کاربری با نام Process و بخش پشت صحنه آن سرويس‌ها هستند. بر حسب نوع نرم‌افزار، هر یک از آن‌ها می‌توانند دست‌کم سه مگابایت از حافظه RAM را اشغال کنند. اگر به بخش Services سر بزنید می‌بینید، هر سرویس بین دو تا پنج مگابایت و شاید هم بیشتر از حافظه RAM را اشغال کرده‌است. این مسئله به خصوص در زمان‌هایی که سرویس‌ها به‌طور خودکار اجرا می‌شوند، باعث می‌شود، فضای کافی در حافظه داخلی برای اجراي برنامه‌های دیگر وجود نداشته‌باشد. هرچه برنامه بیشتری اجرا شود، حافظه RAM کمتری برای سیستم باقي می‌ماند. هر Widget روی Homescreen دارای یک سرویس پشتیبان است. اگر پنج Widget روی صفحه داشته‌باشید، حدود بيست مگابایت یا بیشتر از حافظه RAM اشغال خواهدشد. به این موارد، تصاوير پس‌زمينه متحرک را نیز اضافه کنید که در مجموع و بدون آن‌که نرم‌افزاری را اجرا کرده‌باشید، بیش از 160 مگابایت از حافظه RAM اشغال خواهدشد. گوشی‌های اولیه اندروید با کمبود شدید حافظه RAM روبه‌رو بوده‌اند. موبایل‌هایی مانند T-Mobile G1 تنها 192 مگابایت حافظه داخلی داشتند که این مقدار در گوشی Motorola Droid به 256 مگابایت می‌رسید و با توجه به مواردی که گفته شد، تقریباً فضای دیگری برای نرم‌افزارهای جانبی باقی نمی‌ماند. خوشبختانه با گذشت زمان و ارائه گوشی‌هایی همچون Samsung Galaxy S مقدار حافظه RAM افزایش یافت که در جدید‌ترین مدل‌ها به دو گیگابایت نیز می‌رسد. ممکن است بپرسید، با حدود هشتاد تا نود مگابایت حافظه RAM به چه صورت می‌توان صد تا دویست مگابایت نرم‌افزار را اجرا کرد؟ موبایل اندرویدی سعی می‌کند، بیشتر از حجم حافظه RAM، نرم‌افزارها را اجرا کند و در مواقع لازم، سرویس‌ها و نرم‌افزارهای با اولویت کم را از کار می‌اندازد تا فضای لازم برای دیگر نرم‌افزارها باز شود. البته برخی نرم‌افزارها ممکن است دوباره درخواست بازگشت به حافظه را داشته‌باشند که در این حالت، پردازنده مجبور است زمان حضور در حافظه RAM را بین دو نرم‌افزار تقسیم کند. براي مثال، نرم‌افزار یک را در حافظه قرار داده و پس از انجام کار، آن را با نرم‌افزار دو عوض کند تا کار آن نرم‌افزار نیز انجام شود. تمام این موارد در پشت صحنه سیستم‌عامل و به صورت مداوم در حال انجام است. مقدار حافظه ذخیره‌سازی نرم‌افزارها نیز بعد از حافظه RAM از درجه اهمیت دوم برخوردار است. هر نرم‌افزار برای اجرا شدن علاوه بر حافظه RAM، به مقداری فضای ذخیره‌سازی برای اطلاعات در حال کار با آن نیز نیاز دارد و ممکن است چندین مگابایت از فضای حافظه ذخیره‌سازی را به خود اختصاص دهد. مرورگرهای وب یکی از این موارد هستند که برای ذخیره‌سازی فایل‌های موقت به حافظه داخلی گوشی نیاز مبرم دارند. اگر می‌خواهید بدانید چقدر حافظه برنامه خالی دارید، به قسمتsettings> SD card > phone storage مراجعه کرده و پایین صفحه زیر بخشinternal phone storage حجم باقیمانده را مشاهده کنید

 

 

 چه کسی می‌رود، چه کسی می‌ماند

برای آن‌که سیستم‌عامل بداند کدام نرم‌افزار باید در حافظه باقی بماند و کدام یک را می‌توان حذف کرد، آن‌ها را در شش گروه طبقه‌بندی کرده و به هر یک اولویت خاصی می‌دهد.

Foreground App: این نرم‌افزار روی صفحه دیده شده و در حال اجراست. System و Phone نیز در این گروه قرار می‌گیرند.

Visible App: نرم‌افزاری که اجرا شده و قابل مشاهده است، اما به دليل قابلیت‌های Multi Tasking در حال حاضر روی صفحه‌نمایش قرار ندارد. پیغام‌ها و ابزارهای موجود در Notification Area نیز در این گروه قرار می‌گیرند.

Secondary Server: شامل سرویس‌هایی هستند که در پشت صحنه قرار دارند و نرم‌افزارهایی همچون Launcher (یا دیگر موارد مشابه که جایگزین صفحه Home می‌شوند). بيشتر سرویس‌هایی همچون پخش‌کننده موسیقی، ساعت، سیستم Sync و موارد دیگر که جزء موارد اصلی سیستم‌عامل نیستند نیز در این گروه قرار دارند.

Hidden Application: نرم‌افزارهایی که دیده‌نمی‌شوند اما در پشت صحنه در حال اجرا هستند. Content Provider: یک Process که محتوا را به پشت صحنه منتقل می‌کند. این گروه با نام Storage نیز شناخته می‌شود.

Empty App: نرم‌افزاری که در حالت Standby قرار دارد و استفاده نمی‌شود اما همچنان در حافظه مانده است. در هر گروه سیستم به هر نرم‌افزار براساس این‌که چه زماني به آن نرم‌افزار رجوع شده، اولویت داده‌می‌شود. آخرین نرم‌افزارهای اجراشده بیشترین اولویت را دارند. زمانی که سیستم‌عامل با کمبود حافظه روبه‌رو شده و باید نرم‌افزار جدیدی را اجرا کند، نخست به سراغ نرم‌افزارهای موجود در گروه Empty App می‌رود و نرم‌افزارهای با کمترین اولویت را خارج می‌کند. اگر همچنان به حافظه نیاز داشته‌باشد، نرم‌افزارهای گروه Content Provider را از رده خارج مي‌کند و اگر بازهم به حافظه نیاز داشته‌باشد، به ترتیب به سراغ گروه‌های Hidden App، Secondary Server، Visible App و Foreground App خواهدرفت. بسیاری از مشکلات نرم‌افزاری که ممکن است با آن روبه‌رو شوید، زمانی رخ می‌دهد که سیستم‌عامل، پروسه‌های موردنیاز دیگر نرم‌افزارها در Secondary Server را از حافظه خارج می‌کند و عامل بروز اشکال در برخی سرویس‌ها و نرم‌افزارهای وابسته می‌شود. راهکار برای دستیابی به حافظه بیشتر چند روش وجود دارد. در اینجا شش روش ساده و چهار روش حرفه‌ای را به شما پیشنهاد می‌دهیم تا بتوانید سرعت گوشی خود را افزایش دهید.

 

راهکار 1

uninstall کردن برنامه‌هایی که به ندرت استفاده می‌کنید. راهکاری است آشکار و در عین حال درست! هرچه برنامه‌هاي کمتري اجرا کنید، موبایل شما سریع‌تر به عملکردها پاسخ می‌دهد. چون دارای فضای خالی و حافظه بیشتری است، برنامه‌های دیگر را بهتر و سریع‌تر اجرا خواهدکرد. اگر می‌خواهید بدانید، کدام برنامه‌ها حجم زیادی از حافظه شما را اشغال کرده‌اند، به این بخش بروید، settings>applications>manage applications>menu>sort by size که در آن برنامه‌ها به‌طور پیش‌فرض از بیشترین حجم تا کمترین دسته‌بندی شده‌اند

 

راهکار 2

برنامه‌ها را از حافظه داخلی گوشی به SD کارت انتقال دهید. به‌طور معمول، برنامه‌های اندرویدی طوری طراحی شده‌اند که با حافظه داخلی گوشی کار کنند. اما این امکان وجود دارد، بسیاری از آن‌ها را به کارت‌حافظه SD منتقل کرد. این مزیت عالی به شما کمک می‌کند، حافظه داخلی گوشی را بیشتر آزاد کنید. برای این‌کار می‌توانید از نرم‌افزارهایی همچون App 2 SD یا برنامه ZD Box استفاده کنید. البته حافظه‌های داخلی گوشی سرعت انتقال اطلاعات بیشتری دارند و بهتر است ابزارهایی را که به صورت مداوم استفاده می‌کنید، روی حافظه داخلی گوشی باقی بمانند.

 

راهکار 3

تعداد Widget‌های روی صفحه را به حداقل برسانید. هر Widget یک تا دو Service اجرا می‌کند تا خودش را به‌روز نگه دارد و هرService نیز بین دو تا چهار مگابایت فضا اشغال می‌کند. با نگاهی به صفحه Services می‌بینیم، برای مثال Jet Audio Basic حدود 37 مگابایت و ابزار Maps حدود3/5 مگابایت از RAM را اشغال کرده‌اند

 

راهکار 4

از عکس‌های پس‌زمینه ثابت استفاده کنید عکس‌های پس‌زمینه متحرک حداقل دو مگابایت از حافظه شما را اشغال مي‌کنند و آن‌هایی که حرفه‌ای‌تر ساخته شده‌اند حتی تا سقف بیست مگابایت از حافظه RAM را در اختيار خود مي‌گيرند. این کار به صورت مداوم انجام شده و تأثیر منفی روی قدرت پردازشی پردازنده و باتری دارد.

راهکار 5

بعضی از سرویس‌ها را به صورت دستی از کار بیاندازید. این‌طور که به نظر می‌رسد، برنامه‌های امروزی هر یک به همراه یک سرویس روی گوشی نصب می‌شوند و حتی هنگامي که اجرا نشده‌اند نیز بخشی از حافظه را اشغال می‌کنند. سرویس Places از برنامه google Maps یا سرویس Youtube از اين دست برنامه‌ها هستند. پس در مواقع لزوم می‌توانید به صفحه Running Services (بخش Setting در قسمت Applications) مراجعه کرده و آن‌ها را به صورت دستی از کار بیاندازید.

راهکار 6

Task killersها را روی حالت خودکار قرار ندهید. برنامه‌های Advance task killer و مشابه آن ممکن است در ساختار مدیریت حافظه موبایل دخالت ‌کنند. حافظه‌هایی که آن‌ها خالی می‌کنند موقت هستند و پس از چند لحظه خود سیستم‌عامل آن برنامه‌ها را دوباره اجرا خواهدکرد. بهتر است از همان ابتدا خودتان نرم‌افزارهای کمتری را اجرا کنید تا دچار چنین مشکلاتي نشوید یا اين‌که از چنین نرم‌افزارهایی به صورت دستی استفاده کنید.

چهار راهکار پیشرفته برای گوشی‌های Root شده

راهکارهای پیشرفته‌ای نیز برای گوشی‌های روت‌شده وجود دارند. در حالت روت شما می‌توانید در تمامی بخش‌های گوشی حتی System دخل و تصرف کرده و اطلاعات آن را بخوانید و روی آن بنویسید (در حالت عادی این دسترسی وجود ندارد). بيشتر گوشی‌های اندرویدی قابلیت روت شدن دارند. اما به احتمال زیاد روت کردن، گارانتی گوشی شما را باطل خواهدکرد که البته مسئولیت انجام آن با خودتان است. اگر شش راهکاری که قبلاً ذکر کردیم، برای شما کافی نیست، می‌توانید از این چهار راهکار استفاده کنید.

راهکار 1

باAutoStarts یاAutorun Manager اجرای خودکار نرم‌افزارها را غیرفعال کنید. برنامه‌های خوب را می‌توان طوری تنظیم کرد که در زمان روشن شدن گوشی اجرا نشوند اما برنامه‌های نه‌چندان جالب بدون دادن پیغام خود به خود اجرا خواهندشد. نرم‌افزارهایی همچون AutoStarts (یا Autorun manager امکان غیرفعال کردن نرم‌افزارهایی را که به‌طور خودکار اجرا می‌شوند، دارند. همچنینAutoStarts مي‌تواند از اجراي برنامه‌ها در موقعیت‌های مختلف سیستم موبایل جلوگیری کند. برای مثال، شاید گوشی شما طوری تنظیم شده‌باشد که با روشن شدن بلوتوث، نرم‌افزار خاصي اجرا شود که دلخواه شما نیست. بنابراين به برنامه Autostarts رفته و از آنجا پیگیر می‌شوید که برای این رویداد چه برنامه‌هایی اجازه فعال شدن دارند و کدام‌یک ندارند.

 

راهکار 2

برنامه‌های Auto Memory Manager یا AutoKiller می‌توانید از برنامه‌های Auto Memory Manager (یا AutoKiller برای افزایش کارایی بخش مدیریت داخلی حافظه موبایل استفاده کنید. تأثیر این نرم‌افزارها به خوبی قابل مشاهده است و می‌تواند تا حدودی شما را از نرم‌افزارهای Task killer بی‌نیاز کند.

 

راهکار 3

Overclock پردازنده با تغییر Kernel گوشی موبایل می‌توانید پردازنده را اورکلاک کرده و فرکانس نهایی آن را بیشتر از مقدار پیش‌فرض قرار دهید. بهتر است قبل از انجام هر کاری سری به فروم‌ها زده و تجربیات دیگران را در این زمینه بررسی کنید تا ایمن‌ترین و بهینه‌ترین راه‌حل را برای گوشی خود بیابید. به‌عنوان مثال، پردازندهOMAP در گوشی Motorola Droid دارای پردازنده 600 مگاهرتزی با سقف فرکانس 550 مگاهرتز (برای صرفه‌جویی در باتری) بود. با فعال‌کردن یکKernel جدید در این گوشی می‌توان به راحتی فرکانس پردازنده را به 800 مگاهرتز رساند.

راهکار 4

ازROM های سفارشی استفاده کنید. Custom ROMها اغلب اوقات سریع‌تر از نسخه استاندارد نصب‌شده روی گوشی هستند و به همین دليل نيز طرفداران زیادی دارند. Custom ROM می‌تواند یک شروع دوباره برای گوشی باشد که شما را جان به لب کرده‌است. تقریباً در هر مدل از گوشی‌های اندروید (حداقل آن مدل‌هایی که معروفند)، برنامه‌نویسان ROMهای سفارشی زیادی طراحی کرده‌اند که از معروف‌ترین آن‌ها می‌توان به رام‌های Cyanogen Mod یا MIUI (و... اشاره کرد. برای جابه‌جایی بینROM های مختلف می‌توانید از برنامه‌هایROM Manager استفاده کنید که سختی این کار را آسان می‌کند.

 

نتیجه‌گيری

سیستم مدیریت حافظه در سیستم‌عامل اندروید تا حدودی پیچیده است و نحوه طراحی حافظه نیز باعث شده، تقابل با محدودیت‌های حافظه مشکل‌تر شود. با این حال، این راهکارها و آشنایی با نحوه مدیریت حافظه اندروید می‌تواند به ما کمک کند تا اوقات بهتری را با گوشی اندرویدی خود سر کنیم و کمتر از بابت کاهش سرعت آن کلافه شویم.