1. A system, comprising: a hardware unit; at least one computer coupled to the hardware unit, the at least one computer having software agents that utilize a function provided by the hardware unit; and a consensus module coupled to the hardware unit and the at least one computer, the consensus module is configured to detect an event that changes a state of the hardware unit, notify the software agents of the event before the state changes, and selectively permit the state to change based on responses from the software agents.