Guest dwallersv Posted November 12, 2009 Report Posted November 12, 2009 Well... almost :) I asked a while ago looking for an app to do this, and nothing came up. Couldn't find anything searching the internet either. So I made one. My first Windows Mobile app! The "almost" is this: The app is fully functional except for one thing (the one that matters): Doesn't actually change priority on processes yet. The code is in there, but commented out, because it's not working, and as far as I can tell I implemented it properly. So, I'm waiting for some help from the developer community. Should be able to get this fully working in the next day or so. Anyway, I'm posting the almost working version to get feedback on the concept, features/operation, user interface, etc. I'm very interested in people's suggestions. Here's a screenshot straight from the Visual Studio Omnia emulator: So, what does this do? Here's the only "help" that exists at this point:The purpose is to easily adjust the priority of running processes on a pocket PC / smartphone. The reason you might want to do this is to improve responsiveness and performance. Windows Mobile starts processes by default at the "Normal" priority value (251), and unless the process itself or some other tool changes it, everything pretty much runs at the same priority. As such, when you have a lot of different things running, as most of us do with heavily customized configurations, some processes that sleep most of the time, but need high priority access to the CPU when they wake up (usually briefly), can seem unresponsive and sluggish, competing with background processes that may be active. Bumping up the priority of these processes (shells, locks, task managers, etc.) can vastly improve the usability of the device, without adverse side-effects -- as long as you're careful about what you bump up. For example, I like to bump SPB Mobile Shell, WkTask, and S2U2 up a notch (Above Normal). This makes the volume control from S2U2 work instantaneously always, lock the device on wakeup immediately, etc. WkTask becomes instantly responsive at all times. And of course the shell...The UIMain list pane: All running processes, listed with their executable name, base priority, and delta priority. The base priority shows its numerical value and an alpha moniker translating the numerical priority into one of the WinCE standard priority descriptors. For more info on what base and delta priority mean, go read about it on MSDN -- its involved, and this is not meant to be a primer on WinCE priority and thread management.Priority setting slider: On the lower right. This will change to reflect the priority of any selected process in the upper pane. Note that selected does not = checked! The checkboxes will be covered below. Also, the selected process' priority will also be filled in the textbox to the right of the slider.Priority text field and "set" button: This is used to change priority to one or more processes to a precise numerical value. This should not be used unless you really know what you're doing. For example, outside the "regular" priorities there is a range reserved for "realtime" processes; a range below that (higher priority) reserved for drivers; and other reserved ranges. So, setting a priority too high (i.e. low value) could hang your device because you aced out a driver or something that needs to be higher priority than anything else running. Stick to the slider to change priority (more on that in a moment).Base/delta radio buttons: Not implemented yet. Still mulling this one over. I might put a "Basic/Advanced" switch in to enable these controls, and the Set button, to save people from themselves. I always hate that sort of thing, being generally libertarian in my views, but I can see the value of it in some situations. Give me feedback.Auto checkbox: Version 1.0 will have a store/automate feature so that you can asign priorities once, then click Auto, and forget it. This will put the app in the Startup folder to run minimized, and it will sit in the background and wake up every second or so, check the running processes for anything it has saved away as a custom value, and adjust the process automatically.Usage:Pretty simple: To change priority of one or more processes, check them in the process list, and then move the slider on the bottom left to the new priority you desire. You will see their base priority values change.To automate these changes as processes start and stop, rebooting the phone, etc., check the Auto checkbox.Clicking the Exit softkey will do a true exit -- the app will quit and it's process will terminate. Minimize does just that -- puts it in the background. That's what you want to do if you check auto (next release). Okay, CAB attached. First application from DaveSoft. Now that I've finally dived into this mobile app development forest, you can expect to see me cranking out stuff to enhance the platform for all the things that bug me about it, neat features/capabilities that I'd like to have, etc. Future project will be hacking up a complimentary app to the native camera, which has some limitations that really annoy me.ProcPrio.CAB
Guest amb123 Posted November 12, 2009 Report Posted November 12, 2009 I like the idea. Trying it now. It would be nice if you implement a confirmation message... Something like "if you like to keep your changes click minimize not a close button". In case you accidentally hit close instead of minimize. I'll also check on battery life and the effect on the non-prioritized programs as well. Keep it up. Looks promising. Regards amb123
Guest Troobador Posted January 13, 2010 Report Posted January 13, 2010 This is exactly what I'm looking for... Thanks for developing it. In the mean time, you mention that you like to bump up the priorities of Mobile Shell and S2U2... I would love to know how to do exactly the same thing... would you mind telling me how please?
Guest JaCoL Posted January 13, 2010 Report Posted January 13, 2010 is there any limit process beging change?
Guest N_M_S Posted January 30, 2010 Report Posted January 30, 2010 I liked the concept and would like to test it as I have some issues with some apps. this could solve them.
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now