Android Task Killers: How do killing background tasks and services actually help? Should you kill tasks at all?

Introduction

Android Marketplace has a dozen different task killers that will kill programs resident in memory, and promises to make your phone use less power and be more responsive. Do they actually work? Or are they just placebo? To answer the question, first we have to know how Android OS works.

Advanced Task Killer by ReChild
Advanced Task Killer by ReChild | Source

Mobile OS vs. Desktop OS

In a desktop OS, such as Windows, when you run a program, the OS will search the "prefetch" cache, and load from that if available. If the program is not in the prefetch, then it will be loaded from the hard drive, with a copy loaded into prefetch. When you quit the program, the program unloads from RAM, but stays in the prefetch, so it can be retrieved quickly if you want it again. Prefetch also predicts what you will want to use next, and prefetches some of that, to improve response speed.

In later versions of Windows, such as Vista and Win7, the main memory is used as much as possible to help with the prefetch.

A mobile OS, such as Android, do something very similar. The difference is in Android OS, program that 'ended' are not actually unloaded from operating memory, until other programs actually request more memory. By keeping program in memory, it can be immediately accessed again. If a request for more memory is made, THEN existing programs are killed, based on the use frequency, to make more room for the new program.

Most Android programs do NOT have a "quit" function at all. As the not-running programs *do* remain in memory, but NOT accessed, they cannot slow down the system.

Furthermore, since Android system powers all memory at once, not selectively, killing programs not being used actively will not save any power at all.

Thus, killing regular running process does NOT make your system more responsive, nor does it save power. Any claims that they do so is a myth.

Where did the Myth Came From?

The myth that you need Task Killers came from the days when Android phones come with VERY little memory. The original TMobile G1 had only 192 MB of RAM. The Motorola Droid came with 256 MB of RAM. Modern Android phones like Samsung Galaxy S series or HTC Evo / Incredible have 512 MB of RAM.

Consider that the system itself needs 50-100 MB of RAM to run, and each "service" (used to power widgets, inputs, and background apps) needs another 2-15 MB of RAM, AND the apps are stored into RAM, there really isn't much memory left on a phone with 256 MB of RAM. The situation is much smoother on 512 MB of RAM.

The Android OS will kill off programs that are not immediately needed when it needs to load another app (such as receiving email, making or receiving calls, and such). However, you can't control what was killed. You can't specify "kill this, but not that".

Task Killers allow you to anticipate the automatic killing process by killing off programs except those in the "ignore list". If there's enough space, no automatic killing need to take place.  However, if that is not sufficient, apps and services will still get killed.

If you kill an existing component that the OS still needs because there are other programs calling it, Android OS will simply restart it immediately. If it is needed later, the task will be killed now, but restarted when it is called. However, not all services and other programs will gracefully accept the "lag" which the OS needs to restart the program. That's why sometimes you will see this "Force Close / Wait" dialog box, when the Activity (UI) calls the other parts of the app, but did not get a response back.

If there is enough memory, then Task Killer will only slow the system down as takes stuff OUT of memory only to see them loaded back in when they are called again.

Thus, Task Killers are NOT needed on phones with 384 MB or more memory.

Is the program still running?

A game that runs in "real-time" would have multiple portions: an activity to detect user input, a broadcast receiver to receive tilt sensor and button messages, a service to do background processing, and so on.

In contrast, a web browser has no more activity to perform upon the end of the surf session, until it receives another user command.

Thus, if you exit out of a web browser, the app will be deactivated (i.e. not unloaded, just no longer run). However, if you exit out of a game, all of the ancillary processes, such as broadcast receiver, service, and so on will need to be killed in addition to the "activity" UI. That's why some apps (esp. those that run in the background, like Pandora, or Google Navigation) have their own "Quit" or "Exit" button, and most apps do not. Then you hit "back" and you ended up on the "desktop" or workspace, the app is considered " inactive".

Yet you *can* task switch out of active games and such, and those apps, with still running services and such, can eat up battery. And because there is no "task manager" in Android, such processes can be "hidden".This is the instance where task killer can wipe out such processes, and prevent the battery from running down. However, it is a "scorched earth" solution, when there are "smart bomb" solutions.

By using a "task manager" such as AppSwipe!, which lets you choose among running apps, so you can quit them from within, you can kill apps without using task killer indiscriminately.

Conclusion

You have learned a little about how Android OS works, and why a task killer may not be the optimum solution to a slow phone or battery drain. This is not to say that all task killers are bad. I use Advanced Task Killer myself, occasionally. So it does have its uses. However, you don't need more than one, and running them more than once a day is unnecessary unless you deal with VERY buggy apps.

More by this Author


Comments 23 comments

Anany 6 years ago

thank you for the information.

why is the force scrren appear and says application terminated.

please explain this error in detail.


kschang profile image

kschang 6 years ago from San Francisco, CA, USA Author

The error pops up when the system kernel decides that the program has 1) accessed memory it was NOT supposed to or 2) it did not respond to the system kernel queries.

In windows, the corresponding message would be "access violation" and "_____ is not responding".


Ananya 6 years ago

Thank you for the answer

is there a solution to solve this error


6 years ago

That users feel they need Task Killer applications is a fault in Android design. Going against the grain of over half a century of expected program behavior was a terrible move on Google's part. Users want programs to start, do something, then end. Any lingering, real or perceived, is an annoyance. The average user doesn't know which apps are consuming resources in the background after they think they closed it -- nor should they have to figure it out.


kschang profile image

kschang 6 years ago from San Francisco, CA, USA Author

@Ananya -- not really, you have to wait for the author to fix the program itself.

@J -- somewhat agree with that statement. Android was designed from ground up as multi-tasking system, yet there's no dedicated "task switcher/manager" in the OS, so I agree it is a problem. On the other hand, modern computer OS cache all programs any way. In Windows, it's known as the prefetch. So it's NOT really something, or something Android messed up.


danatheteacher profile image

danatheteacher 6 years ago from Pacific Northwest

Nice job!


vince 5 years ago

do i need a task killer for 127mb phone ??


kschang profile image

kschang 5 years ago from San Francisco, CA, USA Author

@vince -- there is such a thing as 127MB Android phone? The first phone, HTC Magic, i.e. TMobile G1, has 192MB of RAM. Original Motorola Droid (i.e. Milestone) has 256MB. I don't believe a 128MB Android phone exists.


Mike 5 years ago

Is it true that if I kill an app, it won't get those automatic updates or "update available" that seem to come from the Android Market? I still want my apps to update even if they're not running.


kschang profile image

kschang 5 years ago from San Francisco, CA, USA Author

@Mike -- false. Update is managed by the Market app, not by the app itself. And Market app looks at what you have installed, not what's running.


Bruce 4 years ago

my galaxy y got 200+ mb ram, do i nid a task killer in auto?


kschang profile image

kschang 4 years ago from San Francisco, CA, USA Author

@Bruce -- probably not. Galaxy Y is of relatively recent vintage.


Bruce 4 years ago

okay okay, i uninstalled my task killer :) thanks

uhm bro, do u know the reason why day by day my juice defenders performance drops?

before it gave my battery X1.8 then the next day X1.56 yesterday it was only X1.1 and now its already X1.1

was it bec. the task killer back then killed the app?

thanks for the help! i really need my phone to last longer


Alan 4 years ago

I keep reading articles like this and I must be missing something. I don't use a task-killer to free up memory, I use it to kill a task. It is too easy for a task to just shift to "the background" yet continue using processing time, which in turn consumes power, thereby effecting my battery life. Power is the most precious resource on mobile devices, and I like to know what is consuming it. The screen will always be #1 by a large margin, but when a phone gets hot because it is doing do much processing, that heat is literally burning up amp-hours. The whole OS design seems to prioritize perceived responsiveness over power efficiency. But I personally would rather have all my apps take 2 seconds longer to load if I could get 50% more time out of my battery.


kschang profile image

kschang 4 years ago from San Francisco, CA, USA Author

@Alan -- background task *can* take up power, but not that much, unless they're hogging the CPU. What I do is I run an app called Watchdog (also available in free light version) and it alerts you when it finds an app that is running too long, or uses up too much CPU (you define the threshold, default is like 50%) for longer time.

And that is NOT what's holding back battery life. Apple iOS emphasizes responsiveness even MORE than Android (iOS puts all onscreen interactions on "real-time" priority, which Android merely uses "high") yet their devices are common perceived to be more power efficient than Androids. There are things that can be done better.

Until then, I'd say, as I did above, uninstall the apps that refused to quit.


Alan 4 years ago

My point is _any_ power consumption for a backup task is "too much" if I am done with the app. I run an app called "Task Controll", it allows be to wishlist apps (like phone and swype) and it shows you a list of everything else, with a button that will kill them all with a long-press. Each time I finish with an app that didn't need to be running anymore, I jump into task control and kill it. More available memory, less processor, more battery life. Theoretically.

I'll believe iPhones have better power management when we can compare the amp-hours of the batteries.


kschang profile image

kschang 4 years ago from San Francisco, CA, USA Author

@Alan -- if you kill something that you need later, the amount of CPU usage that is needed to reload the app and related services is wasted, as well as read from SD card and whatnot. In general, the system does a pretty good job predicting what you will use later.

The battery capacity of iPhones are pretty well known. :) It's the USAGE PATTERN that is impossible to compare.


xperia 4 years ago

Hi, i have 100 mb of ram available at the moment and the phone is very laggy or it kicks me to the home screen while playing a 3d game(asphalt 6). I am using xperia neo, and i don't know what to do, where's the problem, thank you.


kschang profile image

kschang 4 years ago from San Francisco, CA, USA Author

@Xperia -- You are NOT using any task killers, right? Sony's website says Xperia Neo has 512MB of RAM, which should be enough.

One possibility is to run task killer on manual once BEFORE the game, and see if that helps.


glassmint 4 years ago

My Ram usage is 238/274mb...sud i b worried? Wat does clearin RAM actually do?


kschang profile image

kschang 4 years ago from San Francisco, CA, USA Author

RAM usage is NOT important, except a game needs enough RAM to load and run. For multitasking the OS handles swapping to SD card and such. Clearing the RAM just pushes other apps out of RAM so the game has enough time to load without waiting for the OS to do the same thing. It may or may not help.


Hired Mind 2 years ago

I'm sooooo sick of articles like this. This article is theory, while I live in real life.

I have several tablets, both Win8 and Android. I get a good 8-10 battery life out of all of them (while actively using them), so I really don't care about saving battery. But I do care about responsiveness.

Invariably, whenever my Android tablet becomes unresponsive, I pop open the task killer, and there are several apps which have restarted: Twitter, Youtube, Feedly, etc., none of which I've used in days or weeks. The moment I kill them, the system becomes responsive again. Every. Single. Time.


kschang profile image

kschang 2 years ago from San Francisco, CA, USA Author

Did you actually read the conclusion?

Sounds like you need to use Greenify or Bootmanager to prevent those apps from starting in the first place, rather than kill them with task killer.

    Sign in or sign up and post using a HubPages Network account.

    0 of 8192 characters used
    Post Comment

    No HTML is allowed in comments, but URLs will be hyperlinked. Comments are not for promoting your articles or other sites.


    Click to Rate This Article
    working