1. A method of managing software application workloads, which comprises: starting a software application from startup script on a machine, said startup script including startup tasks, said machine including an operating system, said operating system including a kernel; requesting an application group identifier from said kernel; associating said startup tasks with said application group identifier until said startup script ends; requesting application group identifiers from said kernel; if said application group identifier is a workload, requesting said kernel to aggregate usage data for said application group identifier; if said application group identifier is not a workload, determining a set of application group identifiers that comprise a work load, and request said kernel to aggregate usage data for said set of application group identifiers; receiving said aggregated usage data from said kernel; and, using said aggregated usage data to manage said workload.