Abstract
As embedded system has strict cost and space constraints, it is impossible to apply conventional fault-tolerant techniques directly for increasing the dependability of embedded system. In this paper, we propose software fault-tolerant mechanism which requires only minimum redundancy of system component. We define an utility metric that reflects the dependability of each embedded system component, and then measure the defined utility of each reconfiguration combinations to provide fault tolerance. The proposed utility evaluation process shows exponential complexity. However we reduce the complexity by hierachical subgrouping at the software level of each component. When some components of embedded system are tailed, reconfiguration operation changes the system state from current faulty state to pre-calculated one which has maximum utility combination.
임베디드 시스템의 신인도(Dependability)를 높이기 위해 기존 컴퓨터시스템에서 주로 사용되는 결함허용(Fault-tolerant) 기법을 그대로 적용시키는 것은 임베디드 시스템의 엄격한 비용 제약과 설치공간 부족 등을 고려할 때 적합하지 않다. 본 논문에서는 각 시스템 구성요소(Component)들의 여분(Redundancy)을 최소한도로 사용하는 임베디드 시스템에 적합한 소프트웨어 결함허용 기법을 제안한다. 이를 위하여 임베디드 시스템의 신인도를 반영하기 위한 기준인 유용도(Utility) 척도를 정의하고, 실제 시스템의 결함허용을 위해 각각의 시스템 구성요소들의 재구성(Reconfiguration) 조합에 대한 유용도 평가를 수행하였다. 이러한 유용도 평가는 일반적으로는 지수복잡성(Exponential Complexity)을 가지게 되나, 본 논문에서는 각각의 구성요소에 대한 소프트웨어 수준의 계층적 그룹화 개념을 이용하여 복잡도를 크게 감소시켰다. 이를 통해 임베디드 시스템의 일부 부품에 결함이 발생했을 시, 시스템의 고장(Failure)을 방지 할 수 있도록 전체 시스템 단계에서 가능한 최대 유용도를 제공하는 구성조합으로의 재구성 작업을 가능하게 하였다.