2 Answers
2

First, I strongly caution against messing with this. If an app is hogging system resources or otherwise being a problem, uninstall it. Android is designed to manage running services and apps automatically, and manual interference is tricky and can cause various problems.

There are apps that claim to allow you to edit start-up processes (example), but I don't trust them. Many of them either do nothing or simply force close the app every time it starts. Many services auto-restart so your phone will never sleep, the services will just be run and closed over and over. Many of these apps don't require root, so I'd be surprised if they could do anything at all.

With root, you can use an app like Autostarts to manage which apps are triggered by events. This isn't quite the same as preventing apps from running at startup, but it can help prevent them from restarting after they've been killed.

I recommend Titanium Backup for uninstalling system apps. Make sure you don't remove actual Android OS apps/services, just third-party apps that have been protected (e.g. bundled software like you'd get on Windows). Some of these apps are more important than they appear (I hear Motorola phones have a lot of "useless" apps that the system relies on for no good reason), so use the backup feature of Titanium first. (Note that if you break something badly, you may not be able to get into the phone to restore and fix it!)

Be very careful how you use all of these tools. If you remove or disable a system process, you can make your phone unusable.

An Android App should have a good reason to start at system boot. To discover the Apps that are able to start at system boot, install Aspotcat and list all apps that are able to receive the "boot completed" intent. If you believe that an App of this list should not start at system boot AND if this App does not provide an option to disable this behavior, uninstall that app.