A system and method for a processor thread acting as a system service
provider is presented. A computer system boots up and initiates a service
thread. The service thread is responsible for service related tasks, such
as ECC checks and hardware log error checks. The service provider invokes
a second thread which is used as an operational thread. The operational
thread loads an operating system, a kernel, and runs various
applications. While the operational thread executes, the service thread
monitors the operational thread for proper functionality as well as
monitoring service events. When the service thread detects a problem with
either one of the service events or the operational thread, the service
thread may choose to store operational data corresponding to the
operational thread and terminates the operational thread.