سلام
من به اندازه ی کافی درباره ی سیستم عامل اندروید اطلاعات ندارم اما سعی می کنم اونچه رو که می دونم، به حضور دوستان، برسونم.
یه App همون برنامه ای هست که اجرا می کنیم؛ یعنی رابط کاربری اونو می بینیم و با اون تعامل داریم.
هر App می تونه یکی یا چنتا دونه Process داشته باشه؛ یعنی اگه وقتی اپ رو اجرا می کنیم، به مدیر وظیفه مراجعه کنیم، می بینیم که یه پروسه با همون نام برنامه مون داره اجرا میشه.
حالا هر App ممکنه یه پروسه داشته باشه که، در پس زمینه ی سیستم عامل اجرا میشه؛ این پروسه که در Background سیستم اجرا میشه، همون service اپ مورد نظر ماس.
خب حالا می ریم سراغ خود سوال شما..
با این تعاریفی که داشتیم، تکلیف running serviceمشخصه؛ همون طور که گفتیم، یه برنامه وقتی اجرا میشه، یک یا چنتا پروسه ی متعلق به خودش رو، همزمان اجرا میکنه. حالا اگه این پروسه در پس زمینه ی سیستم اجرا بشه، میشه یه service.
اما حالا cached process چیه؟ اگه یه app داشته باشیم که، فقط process داشته باشه و نه service، می تونیم این موضوع رو درموردش بررسی کنیم. برای این منظور، میایم app رو اجرا میکنیم، بعد که کاملا اجرا شد، بر می گردیم و مثلا یه بازی رو اجرا میکنیم. در این وضعیت، چون app مورد نظر ما، هیچ سرویسی نداره(یعنی فقط پروسه داره) و البته چون دیگه به بکگراند سیستم رفته، سیستم عامل اندروید، میاد پروسه ی این app ما رو، داخل حافظه ی رم نگه می داره.
چرا این کار رو می کنه؟ برای اینکه اگه دوباره خواستیم اون اپ رو اجرا کنیم، بتونیم خیلی سریع تر اونو اجرا کنیم.