1. A method of terminating a computer application program executing on a computer, the method comprising: identifying computer application programs executing on the computer; assigning a priority value to each of the identified computer application programs, wherein the priority value is determined based on a plurality of characteristics of the identified computer application programs, wherein each characteristic of the plurality of characteristics has a parameter value associated with a weighting factor; automatically terminating the computer application program with the smallest priority value, including determining whether the computer application program being terminated is in a modal state in which it waits for a response from a user; if the computer application being terminated is in a modal state, then providing a default response to the computer application program in lieu of a response from a user, wherein the default response takes the computer application program out of its modal state; and terminating the computer application program, wherein core applications are not terminated, regardless of priority value, wherein a unique code is assigned to the application's priority indicating that the application is a core application, and wherein the method is executed on a palmtop computing device.