Evaluation of Embedded Operating System by a Software Method *
|
|
- Douglas York
- 5 years ago
- Views:
Transcription
1 Jan. 2006, Volume 3, No.1 (Serial No.14) Journal of Communication and Computer, ISSN , USA * Junjie Peng 1, Jun Ma 2, Bingrong Hong 3 (1,3 School of Computer Science & Engineering, Harbin Institute of Technology, Harbin , China; 2 Department of Computer, Jiaozuo University, Jiaozuo , China) Abstract: In this paper, software faults are emulated by Software Implemented Fault Injection (SWIFI) to evaluate embedded operating system. The method is based on the fact that the source codes of the operating system are mapped into the code segment in the target memory and it is easy to inject kinds of faults in the memory by SWIFI. Faults are emulated by injecting faults at assembly level instead of source code level. Using the software faults emulated by this method, the dependability of an embedded operating system is studied. The experimental results show that software faults have many effects on the software behavior and dependability, and to increase the dependability of software, exclusion of software faults is very important. Key words: Fault Injection; Dependability; Embedded Operating System; Coverage 1. Introduction In modern society, software has been widely used in many fields and software dependability requirements have become increasingly important. In many fields, especially in onboard aircrafts, nuclear power plant control and radiation therapy machines, etc., high safety and reliability are more critical. To ensure the system safety and reliability, software test is needed, so that faults are excluded from the system and environment as possibly [1]. Software test is the most widely used technique to eliminate the faults and make sure the safety and dependability of software, in which specifications test, * Acknowledgments: This work is supported by the Tenth-five Years Research Program of National Defense (No ). Junjie Peng, PhD candidate; main research fields: embedded real time operating system, dependability, fault injection, etc. Jun Ma, lecturer; main research fields: embedded operating system. Bingrong Hong, professor; main research fields: multi-agent, robots, embedded real time system, fault tolerance and so on. reviews and inspection, formal entry and exit criteria test, functional test, etc. are among the most used methods. All these methods can be classified into two kinds: manual test and automated test. Manual test is that testers can find and correct the faults or errors in the software source codes in time when it is under test. However, many efforts are needed for manual test, especially when software is very big [1]. So automated test is a promising research direction in software testing. The goal of automated test is to minimize the amount of manual work involved in test and gain larger coverage with a large number of test cases. It can decrease the efforts of testers greatly. In this paper, a method using Software Implemented Fault Injection (SWIFI) technique is presented to emulate software faults and evaluate the dependability of software system. Using the method, software faults are emulated at assembly level instead of source code level when the operating system runs. The advantage of the method is that the dependability of the operating system can be evaluated with manual effort being decreased greatly. The structure of this paper is organized as follows: After the introduction in section 1, related research is presented in section 2. In section 3, software faults emulated by SWIFI in embedded system under test are introduced. In section 4, the experimental results are given and analyzed. In section 5, the conclusions are given. 2. Related Work Evaluation of software is a complex thing. It is 79
2 often related with software testing, software reliability modeling, software reliability risk analysis and so on. No matter which technique is considered, specific software faults will be discussed. However, at the different phases, software faults have different forms and characteristic s. So to estimate the reliability of software and predict software faults for risk assessment, the fault history during the different phases should be cons idered. In this paper, software faults are not considered at all kinds of phases, but emulated by SWIFI just in the real execution environment. Through the emulated software faults, the effects of actual software faults on the dependability of the embedded operating system running in the real environment are studied. Fault injection is an effective technique to study the behavior of the target system by faults to determine whether the system behaves properly or not. Several fault injection techniques have been proposed and many fault injection studies have been published. According to the difference of implementation, fault injection methods can be classified into three kinds: Hardware Implemented Fault Injection (HWIFI), Simulation-based Fault Injection (SBFI) and Software Implemented Fault Injection (SWIFI) [2,3]. HWIFI is a method injecting faults directly into the target system hardware by physical means. Though these methods are used, faults injected may be close to the faults in realistic environment and no models are needed to develop, they require specially designed hardware devices for fault injection which are generally dedicated to a specific target system and may damage the target hardware if there are no enough care during the experiment. SBFI is implemented by injecting faults into a simulation model of the target system, which are usually designed with Hardware Description Language. The advantages of these methods are that no other special hardware is needed and the injected faults can be accurately controlled. However, enormous development efforts and much time are required when an accurate simulation model is developed. SWIFI emulates the error state of the target system hardware and software through special programs. It is the most promising method for its low development cost, well flexibility and no damage to the target system, etc. compared with other fault injection methods [3,4]. For its advantages, SWIFI is a widely used method to emulate the faults of computer systems, which is used to evaluate the dependability of the systems. However, most of researches focus on emulating hardware faults by SWIFI, few researches focus on emulating software faults by SWIFI. It is because that the knowledge on the software faults experienced in computer systems is limited, which makes it hard to define meaningful fault sets. 3. Software Faults Emulated by SWIFI 3.1 Fault Types A software fault can be characterized by the change in the codes that is necessary to correct it. To trigger a software fault, trigger conditions must be met, which make the fault exposed. And to make the result convincing, the type represents the faults in the source codes. In ODC, six fault types related to code are proposed [5], which are in assignment, checking, algorithm, timing, interface and function. 3.2 Parameters During the process of fault injection experiment, besides specific fault model, some other parameters are also needed. (1) Location. Location is the place where the fault is injected. The location of fault injection must be in the code segment area in the system, where the source codes of the operating system are mapped. (2) Fault mask. Fault mask is a data that determines which bit or bits of the target data is/are affected. For instance, if the fault mask is 0x2B (high bit low bit) and fault model is bit-flip fault, only bits 2, 4, 6 of the value of the original location are flipped while other bits have no effect. 80
3 (3) Fault duration. Fault duration refers to how long a fault lasts, different faults have different fault duration. For bit-flip fault, only one flip is enough, while for stuck-at faults, fault duration must be considered. When a stuck-at fault is being injecting, the continuous monitoring of the location where fault is injected is needed during the whole process of fault duration. Once the content of the location is used in the fault duration, corresponding fault injection operation works. (4) Trigger condition. Trigger condition is a condition to trigger fault injection process. It includes two kinds of triggering schemes, temporal trigger and spatial trigger. Temporal trigger refers to all kinds of time related events or conditions. Any of these conditions which is met, will trigger fault injection process. For example, injection can be triggered when: (a) a random time since the application begins to run in experiments, (b) a given event occurs. Spatial trigger refers to all kinds of workload or location related states or conditions. For instance, some specific memory units are read /written, the data in tran_ah:test ah,01h jz tr_ah_1 mov ah,80h tr_ah_1:test ah,02h jz tr_ah_2 mov ah,40h tr_ah_2:test ah,04h jz tr_ah_3 mov ah,20h tr_ah_3:test ah,08h jz tr_ah_4 mov ah,10h Fig. 1 The Segment of Source Code some specific address units are operated, or some special instructions are executed and so on, all may trigger fault injection process. Usually, during the actual fault injection experiment, temporal trigger and spatial trigger are combined. A purely spatial or temporal trigger can be viewed as a special case of the combined trigger. 3.3 Emulation of Software Faults To emulate software faults of the embedded operating system at assembly level, bit-flip fault model and stuck-at fault model are used. The target operating system is programmed with assembly language. Fig. 1 presents a segment of the source codes of the embedded operating system. To emulate software faults of the embedded operating system, a commercial system simulator named TRACE32 from Lauterbach GmbH is used, which is used to simulate the architecture of the target CPU. Through the simulator, the tester can determine the location in memory allocated to the target source codes, the addresses of the variables, program branches and so on C F6 C4 01 tran_ah:test ah,01h F jz tr_ah_ B4 80 mov ah,80h EB F6 C4 02 tr_ah_1:test ah,02h jz tr_ah_ B B4 40 mov ah,40h D EB 3A F6 C4 04 tr_ah_2:test ah,04h jz tr_ah_ B4 20 mov ah,20h EB A F6 C4 08 tr_ah_3:test ah,08h D jz tr_ah_ F B4 10 mov ah,10h EB Fig. 2 The Compiled Code Fig. 2 presents the segment codes in compiled file fios.lst, which is the corresponding part in Fig. 1. According to the file fios.lst, the location where faults are injected into can be determined from the simulator. For example, the numbers such as 1893, 1894, 1895, etc. in the fist column in Fig. 2 are the numbers of line. The hexadecimal numbers such as 080C, 080F, 0811, etc. in second column are the offset addresses of the corresponding codes, according to which, the location of the codes in the target system can be attained. Take the second line in Fig. 2 as an example, it shows that the offset address of the line is 080F. This means that if the starting address of code segment in the target system is 5000:0, the codes jz 81
4 tr_ah_1 in line 1894 in fios.lst is stored in the memory address of 5000:080F in the target system. At this moment, if software faults occurre in these codes are needed to emulate, only is fault needed to inject into 5000:080F. From the simulator, it can be seen that the codes in the address of 5000:080F have become jz [0864]. This means that if a fault is injected into 5000:080F, the program will not jump to 5000:0864 as the correct program does, while it may jump to 5000:12B0 as shown in Fig. 3. By this operation, a program branch fault is emulated. Fig. 3 Example for Injecting a Fault in Program In the process of emulation of software faults, several steps are needed to follow. Step 1: Compile the source codes of the target system (fios.asm) with Microsoft macro assembler and get the complied files (fios.lst and fios.bin). Step 2: Load the compiled file fios.bin from the simulator, which connects the target system with serial lines. Step 3: According to the compiled file fios.lst, find the location and addresses where faults will be injected from the simulator. Step 4: Write the location and addresses with other parameters into a configuration file, which is used for fault injection. Step 5: Execute fault injection program and carry out experiment using the script file as fault injection parameters. The code after injection tran_ah: test ah,01h jz [12B0] mov ah,80h jmp [08E6] Should be jz [0864] 4. Experimental Results and Analysis 4.1 Experiment Description The target operating system under test is an embedded operating system that will be used for some space projects in China. It is programmed with assembly language, about 7600 lines of source codes, 188KiloByte in size for source codes, 11.3 KiloByte in size after compilation. It runs on a special micro-computer from CASTC (Chinese Astronautic Science & Technology Corporation), which is used for software test, and nearly has no fault tolerance mechanisms. The micro-computer has 25MHz frequency clock, 1M bytes of RAM memory, 2 RS-422 serial I/O channels, and includes many build-in Error Detection Mechanisms (EDM). And it is connected with TRACE32 system simulator on one end, while the other end is connected with a host computer, which is served by a PC computer. To inject faults for evaluation of the embedded operating system, a SWIFI tool developed by our research group is used [6]. 4.2 Re sults and Analysis Using the method put forward in this paper, times fault injection experiments are carried out in all. All faults are injected randomly when the target system normally runs. All of these faults are classified into three kinds: branches, variables and others. Branches mean that faults are injected to the places where there are jump condition. Variables mean faults are injected into the variables initialization conditions. Others include all other faults injected into the code area except branches and variables. The distribution of the three kinds of faults is presented in table 1. Table 1 Activated Faults and Non-activated Faults Fault Percent (%) Total Activated faults No activated faults Table 1 shows that all faults injected are not activated, that is, 6.46% of faults injected are not activated. This is because that these injections do not cause any fault or error, or are injected into the place where the operating system does not access. Table 3 presents the distribution of failure modes for activated faults, which are classified into four categories: Correct: The operating system normally runs and 82
5 gives correct results when these faults are injected into the target system. Incorrect: The operating system can run normally but give error results when these faults are injected into the target system. Hang: The operating system hangs or enters a dead loop, where users have to stop or reset it after timeout. Crash: The operating system terminates abnormally, and there occurs an exception, which is detected by the system. Among the three kinds of emulated software faults, branches faults have the highest fault percentage. That is because when faults are injected into the branches of the operating system, the operating system will enter a completely wrong running state or path, even a place out of code area, which makes the system more easy to hang or crash than other cases. When faults are injected into variables, there are more incorrect results than other cases. This can be explained that the variables are more sensitive to faults than other parts of the code area when the operating system runs. Table 2 Distribution of Different Faults Fault Percent (%) Branches Variables Others Fig. 4 presents the final results of the experiments. It shows that most of the faults injected into the system cause wrong results. In fact, 79.82% of faults have made the system give wrong results, 5.28% and 1.54% of faults have caused the system to hang and crash respectively. Only 13.36% of faults have no effect on the output of the system. It means that excluding software faults in software is very important to improve the software dependability. Table 3 Failure Modes for Activated Faults Failure modes (%) Correct Incorrect Hang Crash Branches Variables Others Conclusions Percent (%) Correct Incorrect Hang Crash Fig. 4 Final Results of Failure Modes In this paper, a new method using SWIFI technique to emulate software faults is presented. The method emulates software faults by injecting faults into the code area of the target computer system, where the source codes of software are mapped. Using the method put forward, an embedded operating system is evaluated. The experimental results show that software faults have many effects on the software behavior and dependability, and faults in the entrance of the program branches and jumps can more easily cause the operating system to hang and crash. To increase the dependability of software, it is very important to get rid of software faults as possible. References: [1] D. Hamlet, Connecting Test Coverage to Software Dependability, Proc. 5th International Symposium on Software Reliability Engineering, 1994: pp [2] M. C. Hsueh, T. K. Tsai, R. K. Iyer, Fault Injection Techniques and Tools, IEEE Transactions on Computers, 1997, 30(4): pp [3] Y. Y. Yu, A Perspective on the State of Research on Fault Injection Techniques, University of Virginia, USA, Research report (UVA -CSCS-FIT-001), [4] J. Carreira, H. Madeira, J. G. Silva, Xception: Software Fault Injection and Monitoring in Processor Functional Units, IEEE Trans on Software Engineering, 1998, 24(2): pp [5] R. Chillarege, Software Testing Best Practices, IBM research, technical report RC 21457, [6] J. J. Peng, B. R. Hong, C. J. Yuan, Software Implemented Dependability Evaluation System for Evaluation of Onboard System, Proc. 10th Joint International Computer Conference (JICC 2004), Kun Ming, China, 2004: pp (Editors: Brick, Susan, Xiao Wu) 83
A Low-Cost Correction Algorithm for Transient Data Errors
A Low-Cost Correction Algorithm for Transient Data Errors Aiguo Li, Bingrong Hong School of Computer Science and Technology Harbin Institute of Technology, Harbin 150001, China liaiguo@hit.edu.cn Introduction
More informationMATERIALS AND METHOD
e-issn: 2349-9745 p-issn: 2393-8161 Scientific Journal Impact Factor (SJIF): 1.711 International Journal of Modern Trends in Engineering and Research www.ijmter.com Evaluation of Web Security Mechanisms
More informationHigh Speed Fault Injection Tool (FITO) Implemented With VHDL on FPGA For Testing Fault Tolerant Designs
Vol. 3, Issue. 5, Sep - Oct. 2013 pp-2894-2900 ISSN: 2249-6645 High Speed Fault Injection Tool (FITO) Implemented With VHDL on FPGA For Testing Fault Tolerant Designs M. Reddy Sekhar Reddy, R.Sudheer Babu
More informationAn Efficient Method for Multiple Fault Diagnosis
An Efficient Method for Multiple Fault Diagnosis Khushboo Sheth Department of Electrical and Computer Engineering Auburn University, Auburn, AL Abstract: In this paper, failing circuits are analyzed and
More informationEvaluating the Fault Tolerance Capabilities of Embedded Systems via BDM
Evaluating the Fault Tolerance Capabilities of Embedded Systems via BDM M. Rebaudengo, M. Sonza Reorda Politecnico di Torino Dipartimento di Automatica e Informatica Torino, Italy Abstract * Fault Injection
More informationSAVIE: An environment for identifying vulnerabilities in software
May 2007, Volume 4, No.5 (Serial No.30) Journal of Communication and Computer, ISSN1548-7709, USA LI Ai-guo 1, HONG Bing-rong 1, WAN Si 2 (1. School of Computer Science and Technology, Harbin Institute
More informationFault-Tolerant Computer System Design ECE 60872/CS Topic 9: Validation
Fault-Tolerant Computer System Design ECE 60872/CS 59000 Topic 9: Validation Saurabh Bagchi ECE/CS Purdue University ECE/CS 1 Outline Introduction Validation methods Design phase Fault simulation Prototype
More informationReal-Time Component Software. slide credits: H. Kopetz, P. Puschner
Real-Time Component Software slide credits: H. Kopetz, P. Puschner Overview OS services Task Structure Task Interaction Input/Output Error Detection 2 Operating System and Middleware Application Software
More informationA Failure Testing System with March C- Algorithm for Single Event Upset
, pp.95-2 http://dx.doi.org/.4257/ijhit.24.7.2. A Failure Testing System with March C- Algorithm for Single Event Upset Peng Wang, Zhen Li 2, Chengxiang Jiang 2, Wei Shao 2 and Qiannan Xue * Tianjin Key
More informationPractical Malware Analysis
Practical Malware Analysis Ch 4: A Crash Course in x86 Disassembly Revised 1-16-7 Basic Techniques Basic static analysis Looks at malware from the outside Basic dynamic analysis Only shows you how the
More informationIntroduction to Operating Systems Prof. Chester Rebeiro Department of Computer Science and Engineering Indian Institute of Technology, Madras
Introduction to Operating Systems Prof. Chester Rebeiro Department of Computer Science and Engineering Indian Institute of Technology, Madras Week 05 Lecture 18 CPU Scheduling Hello. In this lecture, we
More informationIntroduction to Software Fault Tolerance Techniques and Implementation. Presented By : Hoda Banki
Introduction to Software Fault Tolerance Techniques and Implementation Presented By : Hoda Banki 1 Contents : Introduction Types of faults Dependability concept classification Error recovery Types of redundancy
More informationScan-Based BIST Diagnosis Using an Embedded Processor
Scan-Based BIST Diagnosis Using an Embedded Processor Kedarnath J. Balakrishnan and Nur A. Touba Computer Engineering Research Center Department of Electrical and Computer Engineering University of Texas
More informationTesting Error Handling Code in Device Drivers Using Characteristic Fault Injection
1 Testing Error Handling Code in Device Drivers Using Characteristic Fault Injection Jia-Ju Bai, Yu-Ping Wang, Jie Yin, Shi-Min Hu Department of Computer Science and Technology Tsinghua University Beijing,
More informationFROM TIME-TRIGGERED TO TIME-DETERMINISTIC REAL-TIME SYSTEMS
FROM TIME-TRIGGERED TO TIME-DETERMINISTIC REAL-TIME SYSTEMS Peter Puschner and Raimund Kirner Vienna University of Technology, A-1040 Vienna, Austria {peter, raimund}@vmars.tuwien.ac.at Abstract Keywords:
More informationData Hiding on Text Using Big-5 Code
Data Hiding on Text Using Big-5 Code Jun-Chou Chuang 1 and Yu-Chen Hu 2 1 Department of Computer Science and Communication Engineering Providence University 200 Chung-Chi Rd., Shalu, Taichung 43301, Republic
More informationGOOFI : Generic Object-Oriented Fault Injection Tool
GOOFI : Generic Object-Oriented Fault Injection Tool Joakim Aidemark, Jonny Vinter, Peter Folkesson, and Johan Karlsson Laboratory for Dependable Computing Department of Computer Engineering Chalmers University
More informationMulti-dimensional database design and implementation of dam safety monitoring system
Water Science and Engineering, Sep. 2008, Vol. 1, No. 3, 112-120 ISSN 1674-2370, http://kkb.hhu.edu.cn, e-mail: wse@hhu.edu.cn Multi-dimensional database design and implementation of dam safety monitoring
More informationIn examining performance Interested in several things Exact times if computable Bounded times if exact not computable Can be measured
System Performance Analysis Introduction Performance Means many things to many people Important in any design Critical in real time systems 1 ns can mean the difference between system Doing job expected
More informationBy V-cubed Solutions, Inc. Page1. All rights reserved by V-cubed Solutions, Inc.
By V-cubed Solutions, Inc. Page1 Purpose of Document This document will demonstrate the efficacy of CODESCROLL CODE INSPECTOR, CONTROLLER TESTER, and QUALITYSCROLL COVER, which has been developed by V-cubed
More informationFeasibility of Testing to Code. Feasibility of Testing to Code. Feasibility of Testing to Code. Feasibility of Testing to Code (contd)
Feasibility of Testing to Code (contd) Feasibility of Testing to Code (contd) An incorrect code fragment for determining if three integers are equal, together with two test cases Flowchart has over 10
More informationLCCI (Large-scale Complex Critical Infrastructures)
LCCI (Large-scale Complex Critical Infrastructures) 1 LCCIs are Internet-scale constellations of heterogeneous systems glued together into a federated and open system by a data distribution middleware.
More informationCS 136: Advanced Architecture. Review of Caches
1 / 30 CS 136: Advanced Architecture Review of Caches 2 / 30 Why Caches? Introduction Basic goal: Size of cheapest memory... At speed of most expensive Locality makes it work Temporal locality: If you
More informationCertified Automotive Software Tester Sample Exam Paper Syllabus Version 2.0
Surname, Name: Gender: male female Company address: Telephone: Fax: E-mail-address: Invoice address: Training provider: Trainer: Certified Automotive Software Tester Sample Exam Paper Syllabus Version
More informationAccurate Analysis of Single Event Upsets in a Pipelined Microprocessor
Accurate Analysis of Single Event Upsets in a Pipelined Microprocessor M. Rebaudengo, M. Sonza Reorda, M. Violante Politecnico di Torino Dipartimento di Automatica e Informatica Torino, Italy www.cad.polito.it
More information_ V Renesas R8C In-Circuit Emulation. Contents. Technical Notes
_ V9.12. 225 Technical Notes Renesas R8C In-Circuit Emulation This document is intended to be used together with the CPU reference manual provided by the silicon vendor. This document assumes knowledge
More informationKeywords Digital IC tester, Microcontroller AT89S52
Volume 6, Issue 1, January 2016 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Digital Integrated
More informationSOFT 437. Software Performance Analysis. Ch 7&8:Software Measurement and Instrumentation
SOFT 437 Software Performance Analysis Ch 7&8: Why do we need data? Data is required to calculate: Software execution model System execution model We assumed that we have required data to calculate these
More informationBasic Concepts of Reliability
Basic Concepts of Reliability Reliability is a broad concept. It is applied whenever we expect something to behave in a certain way. Reliability is one of the metrics that are used to measure quality.
More informationInternational Journal of Computer Engineering and Applications, Volume XII, Special Issue, April- ICITDA 18,
International Journal of Computer Engineering and Applications, Volume XII, Special Issue, April- ICITDA 18, www.ijcea.com ISSN 2321-3469 SOFTWARE TESTING Rajat Galav, Shivank Lavania Student, Department
More informationHow to get to 100% code coverage
How to get to 100% code coverage Intelligent Testing 2015 Bristol, 18 th June 2015 Dr Guillem Bernat bernat@rapitasystems.com Introduction Code coverage is important Sometimes 100% is difficult What do
More informationDescription of the Simulator
Description of the Simulator The simulator includes a small sub-set of the full instruction set normally found with this style of processor. It includes advanced instructions such as CALL, RET, INT and
More informationTools and Methods for Validation and Verification as requested by ISO26262
Tools and for Validation and Verification as requested by ISO26262 Markus Gebhardt, Axel Kaske ETAS GmbH Markus.Gebhardt@etas.com Axel.Kaske@etas.com 1 Abstract The following article will have a look on
More informationLecture #2 January 30, 2004 The 6502 Architecture
Lecture #2 January 30, 2004 The 6502 Architecture In order to understand the more modern computer architectures, it is helpful to examine an older but quite successful processor architecture, the MOS-6502.
More informationSoftware Error Early Detection System based on Run-time Statistical Analysis of Function Return Values
Software Error Early Detection System based on Run-time Statistical Analysis of Function Return Values Alex Depoutovitch and Michael Stumm Department of Computer Science, Department Electrical and Computer
More informationDual Redundant Flight Control System Design for Microminiature UAV Xiao-Lin ZHANG 1,a, Hai-Sheng Li 2,b, Dan-Dan YUAN 2,c
2nd International Conference on Electrical, Computer Engineering and Electronics (ICECEE 2015) Dual Redundant Flight Control System Design for Microminiature UAV Xiao-Lin ZHANG 1,a, Hai-Sheng Li 2,b, Dan-Dan
More informationTrace Getting Started V8.02
Trace Getting Started V8.02 1. Introduction This paper helps the user to entirely exploit the trace and troubleshoot most often situations that the developer is confronted with while debugging the application.
More informationResearch on the Simulation-based Fault Injection Design with Consideration of Board-level Built-In Test
A publication of CHEMICAL ENGINEERING TRANSACTIONS VOL. 33, 2013 Guest Editors: Enrico Zio, Piero Baraldi Copyright 2013, AIDIC Servizi S.r.l., ISBN 978-88-95608-24-2; ISSN 1974-9791 The Italian Association
More informationTU Wien. Fault Isolation and Error Containment in the TT-SoC. H. Kopetz. TU Wien. July 2007
TU Wien 1 Fault Isolation and Error Containment in the TT-SoC H. Kopetz TU Wien July 2007 This is joint work with C. El.Salloum, B.Huber and R.Obermaisser Outline 2 Introduction The Concept of a Distributed
More informationTesting Digital Systems I
Testing Digital Systems I Lecture 6: Fault Simulation Instructor: M. Tahoori Copyright 2, M. Tahoori TDS I: Lecture 6 Definition Fault Simulator A program that models a design with fault present Inputs:
More informationLLFI: An Intermediate Code-Level Fault Injection Tool for Hardware Faults
LLFI: An Intermediate Code-Level Fault Injection Tool for Hardware Faults Qining Lu, Mostafa Farahani, Jiesheng Wei, Anna Thomas, and Karthik Pattabiraman Department of Electrical and Computer Engineering,
More informationSimulated 16-bit Intel Microprocessor
8086 Simulated 16-bit Intel Microprocessor Hollinsky, Paul - Kozera, Stefanie Electrical and Computer Engineering Department School of Engineering and Computer Science Oakland University, Rochester, MI
More informationBasic Definitions: Testing
Basic Definitions: Testing l What is software testing? Running a program In order to find faults a.k.a. defects a.k.a. errors a.k.a. flaws a.k.a. faults a.k.a. BUGS 1 Bugs Hopper s bug (moth stuck in a
More informationChapter 14 - Processor Structure and Function
Chapter 14 - Processor Structure and Function Luis Tarrataca luis.tarrataca@gmail.com CEFET-RJ L. Tarrataca Chapter 14 - Processor Structure and Function 1 / 94 Table of Contents I 1 Processor Organization
More informationInternational Journal of Computer Engineering and Applications, Volume XII, Special Issue, September 18, ISSN SOFTWARE TESTING
International Journal of Computer Engineering and Applications, Volume XII, Special Issue, September 18, www.ijcea.com ISSN 2321-3469 SOFTWARE TESTING Rajat Galav 1, Shivank Lavania 2, Brijesh Kumar Singh
More informationEB-51 Low-Cost Emulator
EB-51 Low-Cost Emulator Development Tool for 80C51 Microcontrollers FEATURES Emulates 80C51 Microcontrollers and Derivatives Real-Time Operation up to 40 MHz 3.3V or 5V Voltage Operation Source-Level Debugger
More informationA Real-time Detection for Traffic Surveillance Video Shaking
International Conference on Mechatronics, Control and Electronic Engineering (MCE 201) A Real-time Detection for Traffic Surveillance Video Shaking Yaoyao Niu Zhenkuan Pan e-mail: 11629830@163.com e-mail:
More informationDistributed Shared Memory Consistency Object-based Model
Journal of Computer Science 3 (1): 57-61, 27 ISSN1549-3636 27 Science Publications Corresponding Author: Distributed Shared Memory Consistency Object-based Model Abdelfatah Aref Yahya and Rana Mohamad
More informationNEWS 2018 CONTENTS SOURCE CODE COVERAGE WORKS WITHOUT CODE INSTRUMENTATION. English Edition
NEWS 2018 English Edition WORKS WITHOUT CODE INSTRUMENTATION SOURCE CODE COVERAGE CONTENTS Trace-based MCDC Coverage Code Coverage Live Tracing via PCI Express Transition Wind River to TRACE32 RISC-V Debugger
More informationChanging the Embedded World TM. Module 3: Getting Started Debugging
Changing the Embedded World TM Module 3: Getting Started Debugging Module Objectives: Section 1: Introduce Debugging Techniques Section 2: PSoC In-Circuit Emulator (ICE) Section 3: Hands on Debugging a
More informationWhat is Mutation Testing? Mutation Testing. Test Case Adequacy. Mutation Testing. Mutant Programs. Example Mutation
What is Mutation Testing? Mutation Testing Breaking the application to test it n Mutation Testing is a testing technique that focuses on measuring the adequacy of test cases n Mutation Testing is NOT a
More informationImplementation Ids for Web Security Mechanism against Injection and Multiple Attacks
Implementation Ids for Web Security Mechanism against Injection and Multiple Attacks Ms. Anupriya Mishra SDCOE, Selulake, Wardha pleasureanu@gmail.com Ms.Megha Bhalkar SDCOE,Selukate, Wardha Meghabhlkar1993@gmail.com
More informationFinding Firmware Defects Class T-18 Sean M. Beatty
Sean Beatty Sean Beatty is a Principal with High Impact Services in Indianapolis. He holds a BSEE from the University of Wisconsin - Milwaukee. Sean has worked in the embedded systems field since 1986,
More informationDesign and Implementation of LED Display Screen Controller based on STM32 and FPGA Chi Zhang 1,a, Xiaoguang Wu 1,b and Chengjun Zhang 1,c
Applied Mechanics and Materials Online: 2012-12-27 ISSN: 1662-7482, Vols. 268-270, pp 1578-1582 doi:10.4028/www.scientific.net/amm.268-270.1578 2013 Trans Tech Publications, Switzerland Design and Implementation
More informationFault Injection for Embedded Microprocessor-based Systems
Journal of Universal Computer Science, vol. 5, no. 10 (1999), 693-711 submitted: 13/4/99, accepted: 22/10/99, appeared: 28/10/99 Springer Pub. Co. Fault Injection for Embedded Microprocessor-based Systems
More informationAssembly Language Fundamentals
Topics (Chapters 2 and 4) Mnemonics, OP codes Assembler Assembler Directives Assembly Process Object program Linker Loader Debugger 1 Turning C into Assembly C Program Compiler Assembly File Program in
More informationImproving the Fault Tolerance of a Computer System with Space-Time Triple Modular Redundancy
Improving the Fault Tolerance of a Computer System with Space-Time Triple Modular Redundancy Wei Chen, Rui Gong, Fang Liu, Kui Dai, Zhiying Wang School of Computer, National University of Defense Technology,
More informationTest design techniques
INF3121 : Software Testing 12. 02. 2015 Lecture 4 Test design techniques Lecturer: Raluca Florea INF3121/ 12.02.2015 / Raluca Florea 1 Overview 1. The test development process 2. Categories of test design
More informationWorkload Characterization using the TAU Performance System
Workload Characterization using the TAU Performance System Sameer Shende, Allen D. Malony, and Alan Morris Performance Research Laboratory, Department of Computer and Information Science University of
More informationOne Bit is (Not) Enough: An Empirical Study of the Impact of Single and Multiple. Bit-Flip Errors
One Bit is (Not) Enough: An Empirical Study of the Impact of Single and Multiple Bit-Flip Errors Behrooz Sangchoolie *, Karthik Pattabiraman +, Johan Karlsson * * Department of Computer Science and Engineering,
More informationIntegration of information security and network data mining technology in the era of big data
Acta Technica 62 No. 1A/2017, 157 166 c 2017 Institute of Thermomechanics CAS, v.v.i. Integration of information security and network data mining technology in the era of big data Lu Li 1 Abstract. The
More informationLocality and Data Accesses video is wrong one notes when video is correct
Cache Review This lesson is a review of caches. Beginning with the structure of the cache itself, including set associative and direct mapped caches. Then the lesson discusses replacement policies, specifically
More informationThe Study of Register s Window Exception and Vulnerability Analysis Based on SPARC V8
2016 2 nd International Conference on Mechanical, Electronic and Information Technology Engineering (ICMITE 2016) ISBN: 978-1-60595-340-3 The Study of Register s Window Exception and Vulnerability Analysis
More informationFault Localization for Firewall Policies
Fault Localization for Firewall Policies JeeHyun Hwang 1 Tao Xie 1 Fei Chen Alex X. Liu 1 Department of Computer Science, North Carolina State University, Raleigh, NC 7695-86 Department of Computer Science
More informationIBM PC Hardware CPU 8088, Pentium... ALU (Arithmetic and Logic Unit) Registers. CU (Control Unit) IP.
IBM PC Hardware CPU 8088, 8086 80286 80386 80486 Pentium... ALU (Arithmetic and Logic Unit) Registers CU (Control Unit) IP Memory ROM BIOS I/O RAM OS Programs Video memory BIOS data Interrupt Vectors Memory
More informationF28HS Hardware-Software Interface: Systems Programming
F28HS Hardware-Software Interface: Systems Programming Hans-Wolfgang Loidl School of Mathematical and Computer Sciences, Heriot-Watt University, Edinburgh Semester 2 2017/18 0 No proprietary software has
More informationWorld Scientific Research Journal (WSRJ) ISSN: Design and Implementation of Stepper Motor Control System Based on 52 MCU
World Scientific Research Journal (WSRJ) ISSN: 2472-3703 www.wsr-j.org Design and Implementation of Stepper Motor Control System Based on 52 MCU Xinglan Zhang a, Xianda Zhang b, * and Xin Zhong c School
More informationToward (SOS) Self-stabilizing Operating System
Toward (SOS) Self-stabilizing Operating System Shlomi Dolev and Reuven Yagel, Ben-Gurion University, Israel Sep. 1st SAACS 04 Workshop, Zaragoza Outline Motivation: current operating systems do not stabilize!
More informationTutorial on Memory Management, Deadlock and Operating System Types
Operating Systems and Systems Integration Tutorial on Memory Management, Deadlock and Operating System Types 1 Background 1.1 Memory management Virtual memory: is a method of managing memory automatically
More informationCritical Systems. Objectives. Topics covered. Critical Systems. System dependability. Importance of dependability
Objectives Critical Systems To explain what is meant by a critical system where system failure can have severe human or economic consequence. To explain four dimensions of dependability - availability,
More informationResearch on Automotive UDS Diagnostic Protocol Stack Test System
Journal of Automation and Control Engineering Vol. 4, No. 5, October 2016 Research on Automotive UDS Diagnostic Protocol Stack Test System Jinghua Yu and Feng Luo Clean Energy Automotive Engineering Center,
More informationSoftware Security IV: Fuzzing
1 Software Security IV: Fuzzing Chengyu Song Slides modified from Dawn Song 2 Administrivia Homework1 Due: Friday Oct 27 11:59pm Questions regarding reading materials Talk Security R&D in a Security Company:
More informationVLSI Testing. Fault Simulation. Virendra Singh. Indian Institute of Science Bangalore
VLSI Testing Fault Simulation Virendra Singh Indian Institute of Science Bangalore virendra@computer.org E0 286: Test & Verification of SoC Design Lecture - 4 Jan 25, 2008 E0-286@SERC 1 Fault Model - Summary
More informationContents. Slide Set 1. About these slides. Outline of Slide Set 1. Typographical conventions: Italics. Typographical conventions. About these slides
Slide Set 1 for ENCM 369 Winter 2014 Lecture Section 01 Steve Norman, PhD, PEng Electrical & Computer Engineering Schulich School of Engineering University of Calgary Winter Term, 2014 ENCM 369 W14 Section
More informationSelf Checking Network Protocols: A Monitor Based Approach
Self Checking Network Protocols: A Monitor Based Approach Gunjan Khanna, Padma Varadharajan, Saurabh Bagchi Dependable Computing Systems Lab School of Electrical and Computer Engineering Purdue University
More informationFaultprog: Testing the Accuracy of Binary-Level Software Fault Injection
IEEE TRANSACTIONS ON DEPENDABLE AND SECURE COMPUTING 1 Faultprog: Testing the Accuracy of Binary-Level Software Fault Injection Domenico Cotroneo, Anna Lanzaro, and Roberto Natella Abstract Off-The-Shelf
More informationEast Tennessee State University Department of Computer and Information Sciences CSCI 4717 Computer Architecture TEST 3 for Fall Semester, 2005
Points missed: Student's Name: Total score: /100 points East Tennessee State University Department of Computer and Information Sciences CSCI 4717 Computer Architecture TEST 3 for Fall Semester, 2005 Section
More informationDevelopment and Debugging of FPGA-Based Hardware-in-the-Loop Simulation Systems
Development and Debugging of FPGA-Based Hardware-in-the-Loop Simulation Systems Dr. Martin Panevsky Embedded System Applications Manager Zeve Akerling Advanced Degree Fellow Xingui Zhao Engineering Specialist
More informationDesign For High Performance Flexray Protocol For Fpga Based System
IOSR Journal of VLSI and Signal Processing (IOSR-JVSP) e-issn: 2319 4200, p-issn No. : 2319 4197 PP 83-88 www.iosrjournals.org Design For High Performance Flexray Protocol For Fpga Based System E. Singaravelan
More informationFIFTH SEMESTER DIPLOMA EXAMINATION IN ENGINEERING/ TECHNOLOGY-MARCH 2014 EMBEDDED SYSTEMS (Common for CT,CM) [Time: 3 hours] (Maximum marks : 100)
(Revision-10) FIFTH SEMESTER DIPLOMA EXAMINATION IN ENGINEERING/ TECHNOLOGY-MARCH 2014 EMBEDDED SYSTEMS (Common for CT,CM) [Time: 3 hours] (Maximum marks : 100) PART-A (Maximum marks : 10) I. Answer all
More informationOPERATING SYSTEMS. After A.S.Tanenbaum, Modern Operating Systems 3rd edition Uses content with permission from Assoc. Prof. Florin Fortis, PhD
OPERATING SYSTEMS #8 After A.S.Tanenbaum, Modern Operating Systems 3rd edition Uses content with permission from Assoc. Prof. Florin Fortis, PhD MEMORY MANAGEMENT MEMORY MANAGEMENT The memory is one of
More informationFast FPGA-Based Fault Injection Tool for Embedded Processors
Fast FPGA-Based Fault Injection Tool for Embedded Processors Mohammad Shokrolah Shirazi, Brendan Morris, Henry Selvaraj Department of Electrical and Computer Engineering, University of Nevada, Las Vegas
More informationExMAn: A Generic and Customizable Framework for Experimental Mutation Analysis 1
ExMAn: A Generic and Customizable Framework for Experimental Mutation Analysis 1 Jeremy S. Bradbury, James R. Cordy, Juergen Dingel School of Computing, Queen s University Kingston, Ontario, Canada {bradbury,
More informationDesign of Decode, Control and Associated Datapath Units
1 Design of Decode, Control and Associated Datapath Units ECE/CS 3710 - Computer Design Lab Lab 3 - Due Date: Thu Oct 18 I. OVERVIEW In the previous lab, you have designed the ALU and hooked it up with
More informationIntegration Testing. Conrad Hughes School of Informatics. Slides thanks to Stuart Anderson
Integration Testing Conrad Hughes School of Informatics Slides thanks to Stuart Anderson 19 February 2010 Software Testing: Lecture 10 1 Unit Test vs Integration Testing 1 The ideal in unit testing is
More informationFault Isolation for Device Drivers
Fault Isolation for Device Drivers 39 th International Conference on Dependable Systems and Networks, 30 June 2009, Estoril Lisbon, Portugal Jorrit N. Herder Vrije Universiteit Amsterdam ~26% of Windows
More information1 Visible deviation from the specification or expected behavior for end-user is called: a) an error b) a fault c) a failure d) a defect e) a mistake
Sample ISTQB examination 1 Visible deviation from the specification or expected behavior for end-user is called: a) an error b) a fault c) a failure d) a defect e) a mistake 2 Regression testing should
More informationAn Abnormal Data Detection Method Based on the Temporal-spatial Correlation in Wireless Sensor Networks
An Based on the Temporal-spatial Correlation in Wireless Sensor Networks 1 Department of Computer Science & Technology, Harbin Institute of Technology at Weihai,Weihai, 264209, China E-mail: Liuyang322@hit.edu.cn
More informationSOLUTION. Midterm #1 February 26th, 2018 Professor Krste Asanovic Name:
SOLUTION Notes: CS 152 Computer Architecture and Engineering CS 252 Graduate Computer Architecture Midterm #1 February 26th, 2018 Professor Krste Asanovic Name: I am taking CS152 / CS252 This is a closed
More informationComputer Hardware Requirements for Real-Time Applications
Lecture (4) Computer Hardware Requirements for Real-Time Applications Prof. Kasim M. Al-Aubidy Computer Engineering Department Philadelphia University Real-Time Systems, Prof. Kasim Al-Aubidy 1 Lecture
More informationGetting Started with Code Coverage/Eclipse
Getting Started with Code Coverage/Eclipse Code Coverage/Eclipse is the modernized GUI for Compuware s Xpediter/Code Coverage product. With it, users can create reports detailing testing efficiency and
More informationA Privacy Preserving Model for Ownership Indexing in Distributed Storage Systems
A Privacy Preserving Model for Ownership Indexing in Distributed Storage Systems Tiejian Luo tjluo@ucas.ac.cn Zhu Wang wangzhubj@gmail.com Xiang Wang wangxiang11@mails.ucas.ac.cn ABSTRACT The indexing
More informationSH69P48A EVB. Application Notes for SH69P48A EVB SH69V48A JP2 J4(ICE_J4) S1 IDD TEST JP1 74HC273 JP4 JP3 74HC273 JP6 STKOVE JP7 SW1 J5(ICE_J5)
SH69P48A EVB Application Notes for SH69P48A EVB The SH69P48A EVB is used to evaluate the SH69P48A chip's function for the development of application program. It contains of a SH69V48A chip to evaluate
More informationBinary Code Analysis: Concepts and Perspectives
Binary Code Analysis: Concepts and Perspectives Emmanuel Fleury LaBRI, Université de Bordeaux, France May 12, 2016 E. Fleury (LaBRI, France) Binary Code Analysis: Concepts
More informationVLSI Testing. Virendra Singh. Bangalore E0 286: Test & Verification of SoC Design Lecture - 7. Jan 27,
VLSI Testing Fault Simulation Virendra Singh Indian Institute t of Science Bangalore virendra@computer.org E 286: Test & Verification of SoC Design Lecture - 7 Jan 27, 2 E-286@SERC Fault Simulation Jan
More informationDual-System Warm Standby of Remote Sensing Satellite Control System Technology
2016 3 rd International Conference on Materials Science and Mechanical Engineering (ICMSME 2016) ISBN: 978-1-60595-391-5 Dual-System Warm Standby of Remote Sensing Satellite Control System Technology Fei
More informationEfficient Algorithm for Test Vector Decompression Using an Embedded Processor
Efficient Algorithm for Test Vector Decompression Using an Embedded Processor Kamran Saleem and Nur A. Touba Computer Engineering Research Center Department of Electrical and Computer Engineering University
More informationComputer Architecture 2/26/01 Lecture #
Computer Architecture 2/26/01 Lecture #9 16.070 On a previous lecture, we discussed the software development process and in particular, the development of a software architecture Recall the output of the
More informationBEng (Hons.) Telecommunications. BSc (Hons.) Computer Science with Network Security
BEng (Hons.) Telecommunications BSc (Hons.) Computer Science with Network Security Cohorts: BTEL/15B/FT BCNS/16B/FT Examinations for 2016-2017 / Semester 2 Resit Examinations for BTEL/13B/FT & BTEL/15B/FT
More informationA Global-State-Triggered Fault Injector for Distributed. System Evaluation
A Global-State-Triggered Fault Injector for Distributed System Evaluation Ramesh Chandra +, Ryan M. Lefever, Kaustubh Joshi, Michel Cukier, and William H. Sanders + Department of Computer Science, Stanford
More information