An apparatus comprising: an embedded firmware agent having instructions that cause the embedded firmware agent to selectively operate in a management mode during which a host operating system relinquishes control of a host system in which the embedded firmware agent resides; an embedded controller agent that operates independently of the host operating system and selectively invokes the management mode and a bi-directional agent bus coupled between the embedded firmware agent and the embedded controller agent to transmit messages between the embedded firmware agent and the embedded controller agent; characterised i n that the embedded controller agent has a network interface to allow the embedded controller agent to communicate over a network independently of the host operating system; the embedded controller agent and the embedded firmware agent are operative to monitor processor performance counters and processor load of the host and, if preset thresholds are crossed, are operative to send a message to a remote device via the network connection of the embedded controller agent; in the management mode the embedded controller agent performs an integrity check including a virus scan to determine whether communication with a remote device is safe before establishing a secure connection with the remote device; i.n the management mode the embedded controller agent indicates completion of initialization to the embedded firmware agent via the bi-directional agent bus before control of the host system is given to the host operating system; and the embedded controller agent is operative to monitor the host operating system and modify security policies such that a different security policy is applied when either the operating system is running or when the host system is in system management mode. an embedded firmware agent having instructions that cause the embedded firmware agent to selectively operate in a management mode during which a host operating system relinquishes control of a host system in which the embedded firmware agent resides; an embedded controller agent that operates independently of the host operating system and selectively invokes the management mode and a bi-directional agent bus coupled between the embedded firmware agent and the embedded controller agent to transmit messages between the embedded firmware agent and the embedded controller agent; characterised i n that the embedded controller agent has a network interface to allow the embedded controller agent to communicate over a network independently of the host operating system; the embedded controller agent and the embedded firmware agent are operative to monitor processor performance counters and processor load of the host and, if preset thresholds are crossed, are operative to send a message to a remote device via the network connection of the embedded controller agent; in the management mode the embedded controller agent performs an integrity check including a virus scan to determine whether communication with a remote device is safe before establishing a secure connection with the remote device; i.n the management mode the embedded controller agent indicates completion of initialization to the embedded firmware agent via the bi-directional agent bus before control of the host system is given to the host operating system; and the embedded controller agent is operative to monitor the host operating system and modify security policies such that a different security policy is applied when either the operating system is running or when the host system is in system management mode.