错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Testing, Checking and Hardware Syndrome

  • Igor Schagaev,
  • Jürg Gutknecht

摘要

In previous chaptersHardware syndrome we introduced the processes of checkingChecking and testingTesting, the first of the three main processes of generalized algorithm of fault toleranceGeneralized algorithm of fault tolerance—GAFT. In this chapter we further discuss the process of checkingChecking hardware, at first software-based hardware checkingChecking and at second hardware-based checkingChecking. For the software-based hardware checkingChecking, we show what a software-based test should include, when they are the preferred choice over hardware-based checkingChecking schemes and especially how such tests can be scheduled in the system without interfering with ongoing real-time tasks. Further to support handling of hardware-based checkingChecking we introduce a new system condition descriptor—so-called a syndrome, and illustrate how it can be used as a mechanism to signal to the operating system in the hardware condition, including manifestation of detected error. We then show the steps the runtime system performs to eliminate the fault and in case of permanent errors how the software can reconfigure the hardware to exclude the faulty element. We also explain in which cases software has to adapt to the new hardware topology. We start by explaining how software-based checks can be used to detect hardware faultsHardware faults. Runtime systems use online or offline scheduling mechanisms for task management of programs—own—system softwareSystem software ones and user application ones. Since (Kirby et al. in Softw Pract Exper 15:87–103, 1985 [1], Serlin in Computer C 7:19–30, 1984 [2], Blazewicz in Handbook on scheduling, from theory to applications. Springer, Berlin, 2007 [3], Ingo in Linux kernel archive. World Wide Web Electronic Publication, 2002 [4]) it is expected that runtime system provides a special session of tasks scheduling (offline or online during execution) for the purposes of diagnostic of hardware conditions—recall Apple and Microsoft system starting delays. Later for systems that operate in domain of real-time monitoring critical in time hardware availability and efficiency of process scheduling become crucial. In turn testingTesting itself becomes “hot” in terms of required time and coverage of hardware. Thus in this chapter we initially analyze simple sequences of testingTesting of hardware elements of computer systems. Further we introduce a concept of transparent for user application procedure of hardware testingTesting. This enables to prove an integrity of computer system hardware and guarantee it within reasonable time, without delays of service of execution of user tasks.