Hardware versus Software Model Checking
Explain Hardware versus Software Model Checking?
Expert
Model checking can be applied to both hardware and software. In fact, at the system level it can be applied to both at the same time. The Intel Pentium bug in 1994 was the “disaster” that inspired the hardware industry to pursue formal verification of hardware designs by trying new techniques such as model checking, with the goal of preventing such expensive mistakes in the future. Since that time, model checking has been used extensively in the industry for hardware verification.
Model checking can also be applied to software systems at different stages of the development lifecycle. Used early in the lifecycle, it can analyze software requirements specifications (e.g., Holzmann 1990; Atlee and Gannon 1993; Chan et al. 1998; Chan et al.1999; Heitmeyer et al. 1998) and software design models (e.g., Allen, Garlan, and Ivers 1998; Dang and Kemmerer 1999; Holzmann 1997). This can work well because these models can be both interesting and small enough to avoid model checking’s performance limitations. Early use of model checking is effective since many safety-critical software defects are introduced early in the lifecycle (Lutz et al. 1998) and are expensive to correct later.While early lifecycle analysis has its clear benefits, some software errors cannot be discovered in the requirements and design stages. Sometimes the details of the system are not sufficiently elaborated to reveal problems until implementation. Also, many errors are introduced during implementation.
NASA has encountered a number of software problems that were traced to implementation issues. For example, in 1999 the Mars Polar Lander (MPL) was lost during its final descent to the Martian surface at an estimated cost of $165 million. The most likely cause of failure was identified as a software-related problem—a single bad line of code. A variable that was not re-initialized after a spurious sensor signal associated with the craft’s legs falsely indicated that the craft had touched down when in fact it was some 130 feet above the surface. This caused the descent engines to shut down prematurely; MPL was destroyed in the subsequent impact.
Such errors result from software becoming a pervasive component of aerospace systems. There are similar trends in other industries, such as the growing use of Integrated Modular Avionics (IMA) in civil aviation, which allows applications of varying criticality levels to execute on a shared computing platform. The increased scope and complexity of software naturally make it more difficult to design and validate. This suggests that changes need to be made in how aerospace systems are verified and validated (Rushby 1999).
Normal 0 false false
Domino theory: The reason for war during 1950s to 1980s started by US, that kept a look on states coming under the influence of communism. In any case some country came under communism influence then all other countries surrounding it would follow the
Define the term Internet Engineering Task Force or IETF?
Need of the concept of process: Processes are inert. We know that process is fundamentally the active state of a program which is the set of instruction intended to execute some specific job. Preceding to execution, the instructions should be converte
Model Construction: The initial research projects which applied model checking to real source code built models by hand based on relatively small parts of programs (Penix et al. 2000; Havelund, Lowry, and Penix 2001). This was a lot of work. Manual mo
18,76,764
1955318 Asked
3,689
Active Tutors
1436854
Questions Answered
Start Excelling in your courses, Ask an Expert and get answers for your homework and assignments!!