To facilitate the control of increasingly complex physical systems such as drive-by-wire automobiles and fly-by-wire airplanes, embedded and networked computer systems with numerous hardware and software components are increasingly required. However, this complexity also leads to more potential errors and faults, during both the design/implementation phase and the deployment/runtime phase. It is therefore essential to verify the system under control as well as the control system itself with the aid of mechanical verification tools. This paper surveys verification techniques using model checking, Statechart/Statemate, timed automata, timed Petri nets, timed process algebra, real-time logic and semantic rule-based analysis.