1. A method for identifying and managing unwanted programs on a computer system, the method comprising: automatically creating on a computer system a list of known user desired programs, wherein the known user desired programs are specified by a user, and include software applications previously installed and utilized by the user of the computer system; identifying one or more potentially unwanted programs by monitoring each of the programs running on the computer system to determine whether each running program satisfies a set of empirical characteristic patterns, wherein at least one empirical characteristic pattern indicates a measure of protracted amounts of processor time for programs running on the computer system, wherein a running program that is not on the list of known user desired programs and that exhibits an increase in a rate of protracted processor time use is identified as a potentially unwanted program; designating a current severity rating for each potentially unwanted program that is identified, wherein the current severity ratings indicate those potentially unwanted programs that are currently the most intrusive or most suspicious to the computer system's operations, wherein the current severity ratings reflect a user's prioritization of metrics that include the potentially unwanted programs' memory utilization, network utilization, and network processor utilization; displaying a list of potentially unwanted programs in accordance with the current severity ratings and the user's prioritization of metrics, wherein the list comprises a status of each potentially unwanted program and a recommended action for the user to take for each potentially unwanted program; prompting the user to allow each potentially unwanted program to run or to be prohibited from running; and automatically updating the list of potentially unwanted programs as a result of changes to the metrics, the prioritization of the metrics, and the status.