KR102438148B1 - 임베디드 컴퓨팅 모듈의 이상을 감지하는 이상 감지 장치, 시스템 및 방법 - Google Patents

임베디드 컴퓨팅 모듈의 이상을 감지하는 이상 감지 장치, 시스템 및 방법 Download PDF

Info

Publication number
KR102438148B1
KR102438148B1 KR1020220061715A KR20220061715A KR102438148B1 KR 102438148 B1 KR102438148 B1 KR 102438148B1 KR 1020220061715 A KR1020220061715 A KR 1020220061715A KR 20220061715 A KR20220061715 A KR 20220061715A KR 102438148 B1 KR102438148 B1 KR 102438148B1
Authority
KR
South Korea
Prior art keywords
computing module
embedded computing
abnormality
signal
determining whether
Prior art date
Application number
KR1020220061715A
Other languages
English (en)
Inventor
강재우
김기태
박지원
Original Assignee
(주)플루토솔루션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by (주)플루토솔루션 filed Critical (주)플루토솔루션
Priority to KR1020220061715A priority Critical patent/KR102438148B1/ko
Application granted granted Critical
Publication of KR102438148B1 publication Critical patent/KR102438148B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/0757Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1438Restarting or rejuvenating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3013Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is an embedded system, i.e. a combination of hardware and software dedicated to perform a certain function in mobile devices, printers, automotive or aircraft systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3072Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
    • G06F11/3075Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting the data filtering being achieved in order to maintain consistency among the monitored data, e.g. ensuring that the monitored data belong to the same timeframe, to the same system or component

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Burglar Alarm Systems (AREA)
  • Arrangements For Transmission Of Measured Signals (AREA)
  • Testing Electric Properties And Detecting Electric Faults (AREA)

Abstract

본 발명에 따른 독립적으로 동작하는 적어도 하나 이상의 임베디드 컴퓨팅 모듈에 대한 이상을 감지하는 이상 감지 시스템을 이용한 이상 감지 방법은, 적어도 하나 이상의 임베디드 컴퓨팅 모듈로부터 독립 프로그램의 실행 신호를 수신하는 단계; 상기 실행 신호가 수신되면, 상기 임베디드 컴퓨팅 모듈이 전송하는 런타임 신호의 수신 빈도를 이용하여 각 임베디드 컴퓨팅 모듈의 이상 여부를 판단하는 단계; 및 임베디드 컴퓨팅 모듈에 이상이 발생한 것으로 판단한 경우, 해당 임베디드 컴퓨팅 모듈에 재시작 신호를 전송하는 단계를 포함한다.

Description

임베디드 컴퓨팅 모듈의 이상을 감지하는 이상 감지 장치, 시스템 및 방법 {ABNORMALITY DETECTION APPARATUS, SYSTEM AND METHOD FOR DETECTING ABNORMALITY OF EMBEDDED COMPUTING MODULE}
본 발명은 마이크로 컨트롤러를 이용한 시스템 모듈(System On Module)의 상태 감시(Watchdog) 기술에 관한 것으로, 보다 상세하게는 시스템 모듈의 런타임 신호를 이용하여 시스템 모듈의 이상을 감지하는 장치, 시스템 및 방법에 관한 것이다.
임베디드 시스템이란 어떤 장치가 다른 시스템에 의존하지 않고 독립적으로 특정 목적을 수행하기 위해 설계된 컴퓨팅 시스템이다. 예를 들어, 첨단 기능이 들어 있는 컴퓨터, 가전제품, 공장 자동화 시스템, 엘리베이터, 휴대폰과 같은 특정 목적을 수행하는 현대의 각종 전자·정보·통신 기기 자체를 임베디드 시스템으로 볼 수 있다.
현재, 임베디드 시스템은 다양한 분야에 이용되는 만큼 고가용성을 보장해야 하는 분야이고, 고가용성(High Availability)을 보장하기 위해 다양한 기술들이 적용되고 있다. 이때, 고가용성은 시스템이 장애 없이 오랜 기간 동안 지속적으로 정상운영 가능한 특성을 의미한다. 고가용성을 보장하기 위한 대표적인 기술로는 스위치 오버(SwitchOver), 부하 분산(LoadBalancing), 액티브-스탠바이(Active-Standby), 액티브-액티브(Active-Active) 등이 있다.
그런데, 위와 같은 고가용성을 보장하기 위한 기술들은 2개 이상의 임베디드 시스템을 구성하여 구현되기 때문에, 시스템 복잡도가 높아져 시스템을 구축하는데 많은 비용이 발생된다. 따라서, 이를 극복하기 위해 시스템 복잡도가 낮지만 장애를 자동으로 복구할 수 있는 기술이 요구된다.
본 발명은 전술한 문제점을 해결하기 위하여, 독립적으로 동작하는 적어도 하나 이상의 임베디드 컴퓨팅 모듈의 런타임 신호를 이용하여 이상을 감지하는 이상 감지 장치, 시스템 및 방법을 제공하는 것을 기술적 과제로 한다.
다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상술한 기술적 과제를 해결하기 위한 기술적 수단으로서, 본 발명의 일 실시예에 따른 이상 감지 장치는, 이상 감지 프로그램이 저장된 메모리; 상기 이상 감지 프로그램을 실행하여 상기 적어도 하나 이상의 임베디드 컴퓨팅 모듈을 감지하는 프로세서를 포함하되, 상기 이상 감지 프로그램은 상기 임베디드 컴퓨팅 모듈에서 프로그램이 실행된 후 주기적으로 전송하는 런타임 신호의 수신 빈도를 이용하여 각 임베디드 컴퓨팅 모듈의 이상 여부를 판단하고, 상기 임베디드 컴퓨팅 모듈에 이상이 발생한 것으로 판단한 경우, 해당 임베디드 컴퓨팅 모듈에 대한 재시작 신호를 전송하는 것이다.
또한, 본 발명의 일 실시예에 따른 이상 감지 시스템은, 소정의 운영체제를 포함하고, 독립 프로그램을 실행하는 적어도 하나 이상의 임베디드 컴퓨팅 모듈; 및 이상 감지 프로그램을 실행하여 상기 적어도 하나 이상의 임베디드 컴퓨팅 모듈의 이상을 감지하는 프로세서를 포함하되, 상기 임베디드 컴퓨팅 모듈은, 상기 독립 프로그램의 실행 후 주기적으로 런타임 신호를 생성하여 출력하고, 상기 이상 감지 프로그램은, 각 임베디드 컴퓨팅 모듈로부터 전송되는 런타임 신호의 수신 빈도를 이용하여 각 임베디드 컴퓨팅 모듈의 이상 여부를 판단하고, 상기 임베디드 컴퓨팅 모듈에 이상이 발생한 것으로 판단한 경우, 해당 임베디드 컴퓨팅 모듈로 재시작 신호를 전송하는 것이다.
또한, 본 발명의 일 실시예에 따른 이상 감지 방법은, 적어도 하나 이상의 임베디드 컴퓨팅 모듈로부터 독립 프로그램의 실행 신호를 수신하는 단계; 상기 실행 신호가 수신되면, 상기 임베디드 컴퓨팅 모듈이 전송하는 런타임 신호의 수신 빈도를 이용하여 각 임베디드 컴퓨팅 모듈의 이상 여부를 판단하는 단계; 및 임베디드 컴퓨팅 모듈에 이상이 발생한 것으로 판단한 경우, 해당 임베디드 컴퓨팅 모듈에 재시작 신호를 전송하는 단계를 포함한다.
전술한 본 발명의 과제 해결 수단에 따르면, 임베디드 컴퓨팅 모듈의 런타임 신호를 이용하여 자동적으로 에러 상태를 복구할 수 있고, 이를 통해 시스템의 가용성을 높일 수 있다.
임베디드 시스템의 에러 상태를 자동적으로 복구함으로써 시스템 관리에 투입되는 시간과 비용을 절약할 수 있다.
도 1은 본 발명의 일 실시예에 따른 이상 감지 장치를 개략적으로 나타낸 블럭도이다.
도 2는 본 발명의 일 실시예에 따른 이상 감지 시스템을 개략적으로 나타낸 블럭도이다.
도 3은 실행 시작 신호와 런타임 신호의 예시도이다.
도 4는 재시작 신호의 예시도이다.
도 5는 본 발명의 일 실시예에 따른 이상 감지 방법을 설명하기 위한 흐름도이다.
도 6은 도 5에 도시된 임베디드 컴퓨팅 모듈의 이상 여부를 판단하는 과정을 설명하기 위한 흐름도이다.
도 7은 도 5에 도시된 재시작 신호를 전송하는 과정을 설명하기 위한 흐름도이다.
도 8은 본 발명을 설명하기 위한 런타임 신호의 예시도이다.
이하에서는 첨부한 도면을 참조하여 본 발명을 상세히 설명하기로 한다. 다만, 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며, 여기에서 설명하는 실시예들로 한정되는 것은 아니다. 또한, 첨부된 도면은 본 이하에서는 첨부한 도면을 참조하여 본 발명을 상세히 설명하기로 한다. 다만, 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며, 여기에서 설명하는 실시예들로 한정되는 것은 아니다. 또한, 첨부된 도면은 본 명세서에 개시된 실시예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않는다. 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 도면에 나타난 각 구성요소의 크기, 형태, 형상은 다양하게 변형될 수 있다. 명세서 전체에 대하여 동일/유사한 부분에 대해서는 동일/유사한 도면 부호를 붙였다.
이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부" 등은 명세서 작성의 용이함만이 고려되어 부여 되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략하였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결(접속, 접촉 또는 결합)"되어 있다고 할 때, 이는 "직접적으로 연결(접속, 접촉 또는 결합)"되어 있는 경우뿐만 아니라, 그 중간에 다른 부재를 사이에 두고 "간접적으로 연결 (접속, 접촉 또는 결합)"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함(구비 또는 마련)"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 "포함(구비 또는 마련)"할 수 있다는 것을 의미한다.
본 명세서에서 사용되는 제1, 제2 등과 같이 서수를 나타내는 용어들은 하나의 구성 요소를 다른 구성요소로부터 구별하는 목적으로만 사용되며, 구성 요소들의 순서나 관계를 제한하지 않는다. 예를 들어, 본 발명의 제1구성요소는 제2구성요소로 명명될 수 있고, 유사하게 제2구성요소도 제1구성 요소로 명명될 수 있다.
도 1은 본 발명의 일 실시예에 따른 이상 감지 장치를 개략적으로 나타낸 블럭도이다.
본 발명의 일 실시예에 따른 이상 감지 장치(100)는 독립적으로 동작하는 임베디드 컴퓨팅 모듈의 동작에 대한 이상을 감지한다. 도 1에 도시된 것처럼 이상 감지 장치(100)는 메모리(110), 프로세서(120), 통신 모듈(130) 및 데이터 베이스(140)를 포함한다.
메모리(120)는 이상 감지 프로그램이 저장된다. 이상 감지 프로그램은 임베디드 컴퓨팅 모듈에서 프로그램이 실행된 후 주기적으로 전송하는 런타임 신호의 수신 빈도를 이용하여 각 임베디드 컴퓨팅 모듈의 이상 여부를 판단하고, 임베디드 컴퓨팅 모듈에 이상이 발생한 것으로 판단되는 경우, 해당 임베디드 컴퓨팅 모듈에 대한 재시작 신호를 전송한다.
한편, 메모리(110)는 전원이 공급되지 않아도 저장된 정보를 계속 유지하는 비휘발성 저장장치 및 저장된 정보를 유지하기 위하여 전력을 필요로 하는 휘발성 저장장치를 통칭하는 것으로 해석되어야 한다. 메모리(110)는 프로세서(120)가 처리하는 데이터를 일시적 또는 영구적으로 저장하는 기능을 수행할 수 있다. 메모리(110)는 저장된 정보를 유지하기 위하여 전력이 필요한 휘발성 저장장치 외에 자기 저장 매체(magnetic storage media) 또는 플래시 저장 매체(flash storage media)를 포함할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.
프로세서(130)는 메모리(120)에 저장된 이상 감지 프로그램을 실행하여 적어도 하나 이상의 임베디드 컴퓨팅 모듈의 동작에 대한 이상 여부를 판단한다. 본 실시예에서, 프로세서(130)는 마이크로프로세서(microprocessor), 중앙처리장치(central processing unit: CPU), 프로세서 코어(processor core), 멀티프로세서(multiprocessor), ASIC(application-specific integrated circuit), FPGA(field programmable gate array) 등의 형태로 구현될 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.
통신 모듈(130)은 외부 컴퓨팅 장치 또는 적어도 하나 이상의 임베디드 컴퓨팅 장치와 데이터 및 신호에 대하여 통신을 수행한다. 또한, 통신 모듈(110)은 다른 네트워크 장치와 유무선 연결을 통해 제어 신호 또는 데이터를 송수신하기 위해 필요한 하드웨어 및 소프트웨어를 포함하는 장치를 포함할 수 있다.
데이터베이스(140)는 적어도 하나 이상의 임베디드 컴퓨팅 장치로부터 수신된 신호에 대한 정보를 각 임베디드 컴퓨팅 모듈 별로 분류하여 저장하고, 각 임베디드 컴퓨팅 모듈 별로 분류된 신호 정보를 로그로 남겨 저장하고 관리한다.
한편, 이상 감지 장치(100)는 외부 컴퓨팅 장치 또는 적어도 하나 이상의 임베디드 컴퓨팅 모듈로부터 동작에 대한 정보를 포함하는 신호를 수신하여 임베디드 컴퓨팅 모듈의 동작 이상을 감지하는 서버의 형태로도 동작할 수 있다.
도 2는 본 발명의 일 실시예에 따른 이상 감지 시스템을 개략적으로 나타낸 블록도이고, 도 3은 실행 신호 및 런타임 신호의 예시도이며, 도 4는 재시작 신호의 예시도이다.
도 2를 참조하면, 본 발명은 독립적으로 동작하는 적어도 하나 이상의 임베디드 컴퓨팅 모듈에 대한 이상을 감지하는 이상 감지 시스템(200)으로, 적어도 하나 이상의 임베디드 컴퓨팅 모듈(210) 및 프로세서(220)를 포함한다.
임베디드 컴퓨팅 모듈(210)은 소정의 운영체제를 포함하고, 독립 프로그램을 실행한다. 임베디드 컴퓨팅 모듈(210)은 독립 프로그램이 실행되면, 실행 신호를 출력한다. 그리고, 독립 프로그램의 실행된 후에는 주기적으로 런타임 신호를 생성하여 출력한다. 실행 신호와 런타임 신호에는 해당 임베디드 컴퓨팅 모듈(210)에 대한 고유값을 포함하여, 실행 신호와 런타임 신호를 통해 각각의 임베디드 컴퓨팅 모듈(210)을 구분할 수 있다. 여기서, 임베디드 컴퓨팅 모듈(210)은 대표적으로 SOM(System Out of Module)을 예로들 수 있고, 런타임 신호는 리눅스 운영체제에서 사용되는 heartbeat 신호로 예를 들 수 있다.
이후, 도 3을 참조하여 실행 신호와 런타임 신호에 대해서 설명한다.
먼저, 도 3의 (a)를 참조하면, 임베디드 컴퓨팅 모듈(210)이 부팅되고, 독립 프로그램이 실행되면 실행 신호가 출력되기 시작하고, 독립 프로그램이 실행되는 동안 출력된다. 실행 신호는 후술할 프로세서(220)에서 해당 임베디드 컴퓨팅 모듈(210)의 이상 감지 동작을 시작하도록 하는 이벤트 신호로 이용된다.
그리고, 런타임 신호는 임베디드 컴퓨팅 모듈(210)이 독립 프로그램을 실행하고 있는 동안 주기적으로 출력하는 신호로, 정상적으로 프로그램이 실행되고 있다는 정보를 포함하고 있다. 예를 들면, 런타임 신호는 도 3의 (b)에 도시된 것처럼 1Hz 주기를 가지며, 500ms 간격으로 하이 레벨과 로우 레벨을 갖는 펄스를 반복적으로 출력할 수 있다. 다만, 이는 예시에 해당하는 것으로서, 런타임 신호는 다양한 형태로 제공될 수 있다.
프로세서(220)는 이상 감지 프로그램을 실행하여 적어도 하나 이상의 임베디드 컴퓨팅 모듈(210)의 이상을 감지한다. 여기서, 프로세서(220)는 앞서 설명한 이상 감지 장치(100)일 수 있다.
이상 감지 프로그램에 대해 구체적으로 설명하면, 이상 감지 프로그램은 각 임베디드 컴퓨팅 모듈(210)로부터 실행 신호가 수신되면 해당 임베디드 컴퓨팅 모듈(210)에 대한 이상 감지를 시작한다. 그리고, 각 임베디드 컴퓨팅 모듈(210)로부터 전송되는 런타임 신호의 수신 빈도를 이용하여 각 임베디드 컴퓨팅 모듈(210)의 이상 여부를 판단하고, 임베디드 컴퓨팅 모듈에(210) 이상이 발생한 것으로 판단한 경우, 해당 임베디드 컴퓨팅 모듈(210)로 재시작 신호를 전송한다.
여기서, 재시작 신호는 임베디드 컴퓨팅 모듈(210)의 재부팅을 제어하는 신호이다. 도4에 도시된 것처럼, 재시작 신호는 해당 임베디드 컴퓨팅 모듈(210)로 전송되면 소정 시간 동안 로우 레벨을 유지하는 형태가 될 수 있다.
도5는 본 발명의 일 실시예에 따른 이상 감지 방법을 설명하기 위한 흐름도이다.
본 실시예는 이상 감지 시스템(200)을 이용한 이상 감지 방법(S100)으로 도 5에 도시된 것처럼, 프로세서(220)는 적어도 하나 이상의 임베디드 컴퓨팅 모듈(210)로부터 독립 프로그램의 실행 신호를 수신하고(단계 S110), 실행 신호가 수신되면, 이상 감지 프로그램을 통해 임베디드 컴퓨팅 모듈(210)이 전송하는 런타임 신호의 수신 빈도를 이용하여 각 임베디드 컴퓨팅 모듈(210)의 이상 여부를 판단한다.
이후, 임베디드 컴퓨팅 모듈(210)에 이상이 발생한 것으로 판단한 경우, 프로세서(220)는 해당 임베디드 컴퓨팅 모듈(210)에 재시작 신호를 전송한다. 여기서, 실행 신호와 런타임 신호에는 각 임베디드 컴퓨팅 모듈(210)을 구분할 수 있는 고유 정보를 포함한다.
이후, 각 단계에 대해서 구체적으로 설명한다.
먼저, 단계 S110에 대하여 설명하면, 단계 S110에서 프로세서(220)가 수신하는 실행 신호는, 임베디드 컴퓨팅 모듈(210)이 부팅되고, 임베디드 컴퓨팅 모듈(210)에서 독립 프로그램이 실행되면 출력되기 시작한다. 여기서, 실행 신호는 프로세서(220)가 이상 감지 프로그램을 통해 해당 임베디드 컴퓨팅 모듈(210)의 이상 감지 동작을 시작하도록 하는 이벤트 신호로 이용된다.
다음으로 단계 S120에 대하여 설명한다. 단계 S120에서 프로세서(220)는 소정 시간 동안 수신되는 런타임 신호를 카운트하고, 런타임 신호의 카운트 값에 따라 임베디드 컴퓨팅 모듈(210)의 이상 발생 여부를 판단한다. 여기서, 런타임 신호는, 임베디드 컴퓨팅 모듈(210)에서 독립 프로그램이 실행되고 있는 동안 주기적으로 출력되는 신호로, 프로그램의 정상적 실행에 대한 정보를 포함하고 있다.
이후, 도 6을 참조하여 임베디드 컴퓨팅 모듈의 이상 여부를 판단하는 과정(단계 S120)에 대하여 구체적으로 설명한다.
먼저, 프로세서(220)가 런타임 신호의 수신 여부를 판단하고(단계 S121), 소정 시간 동안 수신되는 런타임 신호를 카운트 한다(단계 S122). 예를 들면, 런타임 신호의 하이 레벨이 유지되는 펄스의 개수 또는 로우 레벨이 유지되는 펄스의 개수를 카운트 한다. 그리고, 소정 시간이 초과 되었는지 판단한다(단계 S123).
단계 S123에서 소정 시간이 초과된 것으로 판단되면, 런타임 신호의 카운트 값이 제1 기준값 미만인지 판단하고(단계 S124), 제1 기준값 미만인 경우, 임베디드 컴퓨팅 모듈(210)에 이상이 발생한 것으로 판단한다(단계 S125).
반면, 단계 S123에서 소정 시간을 초과하지 않았거나, 단계 S124에서 런타임 신호의 카운트 값이 제1 기준값 이상이라면, 정상 동작으로 보고 단계 S121부터 다시 수행한다.
단계 S120의 과정에 대해 예를들어 설명하면, 런타임 신호를 카운트하는 시간이 30초로, 제1 기준값이 15로 설정되어 있다면, 프로세서(220)는30초 동안 수신되는 런타임 신호의 개수를 카운트한다. 그리고, 30초 동안 카운트된 값이 15미만 인 경우, 임베디드 컴퓨팅 모듈(210)에 이상이 발생한 것으로 판단한다.
이후, 단계 S130에 대해서 설명한다. 단계 S130은, 단계 S120에서 임베디드 컴퓨팅 모듈(210)에 이상이 발생된 것으로 판단되면, 이상 발생의 횟수를 카운트하고, 이상 발생 횟수에 따라 프로세서(210)가 해당 임베디드 컴퓨팅 모듈(210)에 재시작 신호를 전송한다.
이후, 도 7을 참조하여 임베디드 컴퓨팅 모듈로 재시작 신호를 전송하는 과정(단계 S130)에 대하여 구체적으로 설명한다.
단계 S120에서 임베디드 컴퓨팅 모듈(210)에 이상이 발생된 것으로 판단되면, 프로세서(220)는 이상 발생에 대하여 카운트하고(단계 S131), 카운트 값이 제2 기준값 미만인지 판단한다(단계 S132). 단계 S132에서 카운트 값이 제2 기준값 이상이면, 해당 임베디드 컴퓨팅 모듈(210)로 재시작 신호를 전송한다(단계 S133).
반면, 단계 S132에서 카운트 값이 제2 기준값 미만인 경우, 해당 임베디드 컴퓨팅 모듈(210)에 이상이 발견될 때까지 대기하게 된다.
단계 S130의 과정에 대해 예를들어 설명하면, 제2기준값이 3으로 설정되어 있다면, 임베디드 컴퓨팅 모듈(210)에 대한 이상 발생 횟수가 1, 2 인 경우에는 대기하고, 이상 발생 횟수가 3이 되면 해당 임베디드 컴퓨팅 모듈(210)로 재시작 신호를 전송한다.
이렇게, 본 실시예의 이상 감지 방법(S100)은 이상 감지 프로그램을 통해 임베디드 컴퓨팅 모듈(210)의 런타임 신호를 이용하여 자동적으로 에러 상태를 복구할 수 있고, 나아가 시스템의 가용성을 높일 수 있다.
도 8은 본 실시예의 이상 감지 방법을 설명하기 위한 런타임 신호의 예시도이다.
도 8은 프로세서(220)가 임베디드 컴퓨팅 모듈(210)의 실행 신호를 수신한 후, 90초 동안의 런타임 신호를 나타낸다. 도8에 도시된 런타임 신호를 본 실시예의 이상 감지 방법(S100)에 적용하여 설명한다. 여기서, 런타임 신호의 수신 시간은 30초로, 제1 기준 값은 15로, 제2 기준 값은 3으로 가정한다.
도 8의 런타임 신호가 프로세서(220)에 수신되면, 처음 10초 동안은 펄스가 발생되므로 런타임 신호를 카운트한다. 하지만, 10초 ~ 30초 구간에서는 펄스가 발생되지 않으므로, 0초 ~ 30초 구간에서의 런타임 신호의 카운트 값은 10으로서, 30초 시점에서 런타임 신호의 카운트 값이 15 미만이 된다. 그러면, 프로세서(220)는 임베디드 컴퓨팅 모듈(210)에 이상이 발생된 것으로 판단하고, 이상 발생 값을 1로 카운트 한다.
이후, 90초까지 펄스가 발생되지 않으므로, 60초 시점에서 이상 발생 값이 2로 카운트되고, 90초 시점에서 이상 발생 값이 3으로 카운트되어, 90초 시점에서 임베디드 컴퓨팅 모듈(210)로 재시작 신호가 전송된다.
이러한 과정으로, 본 발명은 이상 감지 프로그램을 실행하는 프로세서(220)에 의해 관리자의 개입 없이 임베디드 컴퓨팅 모듈(210)의 에러 상태를 복구할 수 있어 시스템의 가용성을 높일 수 있다.
본 발명의 일 실시예에 따른 방법은 컴퓨터에 의해 실행되는 프로그램 모듈과 같이 컴퓨터에 의해 실행될 수 있는 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체를 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다.
또한, 본 발명의 방법 및 시스템은 특정 실시예와 관련하여 설명되었지만, 그것들의 구성 요소 또는 동작의 일부 또는 전부는 범용 하드웨어 아키텍쳐를 갖는 컴퓨터 시스템을 사용하여 구현될 수 있다.
본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 상술한 설명을 기초로 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해되어야만 한다. 본 발명의 범위는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
본원의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본원의 범위에 포함되는 것으로 해석되어야 한다.
100: 이상 감지 장치
110: 메모리
120: 프로세서
200: 이상 감지 시스템
210: 임베디드 컴퓨팅 모듈
220: 프로세서

Claims (12)

  1. 독립적으로 동작하는 적어도 하나 이상의 임베디드 컴퓨팅 모듈의 이상을 감지하는 이상 감지 장치에 있어서,
    이상 감지 프로그램이 저장된 메모리;
    상기 이상 감지 프로그램을 실행하여 상기 적어도 하나 이상의 임베디드 컴퓨팅 모듈을 감지하는 프로세서를 포함하되,
    상기 이상 감지 프로그램은 상기 임베디드 컴퓨팅 모듈에서 프로그램이 실행된 후 주기적으로 전송하는 런타임 신호의 수신 빈도를 이용하여 각 임베디드 컴퓨팅 모듈의 이상 여부를 판단하고, 상기 임베디드 컴퓨팅 모듈에 이상이 발생한 것으로 판단한 경우, 해당 임베디드 컴퓨팅 모듈에 대한 재시작 신호를 전송하는 것인, 이상 감지장치.
  2. 제1항에 있어서,
    상기 이상 감지 프로그램은,
    (a) 상기 런타임 신호의 수신 여부를 판단하는 단계;
    (b) 상기 런타임 신호를 카운트하는 단계;
    (c) 소정 시간 초과 여부를 판단하는 단계;
    (d) 상기 런타임 신호의 카운트 값이 제1 기준값 미만인지 판단하는 단계; 및
    (e) 상기 임베디드 컴퓨팅 모듈의 이상 여부를 판단하는 단계를 수행하는 것인, 이상 감지 장치.
  3. 제2항에 있어서,
    상기 이상 감지 프로그램은,
    (f) 상기 (e) 단계에서 상기 임베디드 컴퓨팅 모듈에 이상이 발생한 것으로 판단되면, 상기 이상 발생에 대하여 카운트하는 단계;
    (g) 이상 발생 횟수가 제2 기준값을 초과하는지 판단하는 단계; 및
    (h) 상기 제2 기준 값을 초과하는 경우, 상기 재시작 신호를 상기 임베디드 컴퓨팅 모듈로 전송하는 단계를 수행하는 것인, 이상 감지 장치.
  4. 독립적으로 동작하는 적어도 하나 이상의 임베디드 컴퓨팅 모듈에 대한 이상을 감지하는 이상 감지 시스템에 있어서,
    소정의 운영체제를 포함하고, 독립 프로그램을 실행하는 적어도 하나 이상의 임베디드 컴퓨팅 모듈; 및
    이상 감지 프로그램을 실행하여 상기 적어도 하나 이상의 임베디드 컴퓨팅 모듈의 이상을 감지하는 프로세서를 포함하되,
    상기 임베디드 컴퓨팅 모듈은, 상기 독립 프로그램의 실행 후 주기적으로 런타임 신호를 생성하여 출력하고,
    상기 이상 감지 프로그램은, 각 임베디드 컴퓨팅 모듈로부터 전송되는 런타임 신호의 수신 빈도를 이용하여 각 임베디드 컴퓨팅 모듈의 이상 여부를 판단하고, 상기 임베디드 컴퓨팅 모듈에 이상이 발생한 것으로 판단한 경우, 해당 임베디드 컴퓨팅 모듈로 재시작 신호를 전송하는 것인, 이상 감지 시스템.
  5. 제4항에 있어서,
    상기 이상 감지 프로그램은,
    (a) 상기 런타임 신호의 수신 여부를 판단하는 단계;
    (b) 상기 런타임 신호를 카운트하는 단계;
    (c) 소정 시간 초과 여부를 판단하는 단계;
    (d) 상기 런타임 신호의 카운트 값이 제1 기준값 미만인지 판단하는 단계; 및
    (e) 상기 임베디드 컴퓨팅 모듈의 이상 여부를 판단하는 단계를 수행하는 것인, 이상 감지 시스템.
  6. 제5항에 있어서,
    상기 이상 감지 프로그램은,
    (f) 상기 (e) 단계에서 상기 임베디드 컴퓨팅 모듈에 이상이 발생한 것으로 판단되면, 상기 이상 발생에 대하여 카운트하는 단계;
    (g) 이상 발생 횟수가 제2 기준값을 초과하는지 판단하는 단계; 및
    (h) 상기 제2 기준 값을 초과하는 경우, 상기 재시작 신호를 상기 임베디드 컴퓨팅 모듈로 전송하는 단계를 수행하는 것인, 이상 감지 시스템.
  7. 독립적으로 동작하는 적어도 하나 이상의 임베디드 컴퓨팅 모듈에 대한 이상을 감지하는 이상 감지 시스템을 이용한 이상 감지 방법에 있어서,
    (a) 적어도 하나 이상의 임베디드 컴퓨팅 모듈로부터 독립 프로그램의 실행 신호를 수신하는 단계;
    (b) 상기 실행 신호가 수신되면, 상기 임베디드 컴퓨팅 모듈이 전송하는 런타임 신호의 수신 빈도를 이용하여 각 임베디드 컴퓨팅 모듈의 이상 여부를 판단하는 단계; 및
    (c) 임베디드 컴퓨팅 모듈에 이상이 발생한 것으로 판단한 경우, 해당 임베디드 컴퓨팅 모듈에 재시작 신호를 전송하는 단계를 포함하는, 이상 감지 방법.
  8. 제7항에 있어서,
    상기 (b) 단계는,
    소정 시간 동안 수신되는 상기 런타임 신호를 카운트하고, 상기 런타임 신호의 카운트 값에 따라 상기 임베디드 컴퓨팅 모듈의 이상 발생 여부를 판단하는, 이상 감지 방법.
  9. 제8항에 있어서,
    상기 (b) 단계는,
    (d) 상기 런타임 신호의 수신 여부를 판단하는 단계;
    (e) 상기 런타임 신호를 카운트하는 단계;
    (f) 상기 소정 시간의 초과 여부를 판단하는 단계;
    (g) 상기 런타임 신호의 카운트 값이 제1 기준값 미만인지 판단하는 단계; 및
    (h) 상기 임베디드 컴퓨팅 모듈의 이상 여부를 판단하는 단계를 포함하는, 이상 감지 방법.
  10. 제7항에 있어서,
    상기 (c) 단계는,
    상기 임베디드 컴퓨팅 모듈의 이상 발생에 대하여 카운트하고, 이상 발생 횟수에 따라 상기 재시작 신호를 전송하는, 이상 감지 방법.
  11. 제10항에 있어서,
    상기(c) 단계는,
    (i) 상기 (b) 단계에서 상기 임베디드 컴퓨팅 모듈에 이상이 발생한 것으로 판단되면, 상기 이상 발생에 대하여 카운트하는 단계;
    (j) 상기 이상 발생 횟수가 제2 기준값을 초과하는지 판단하는 단계; 및
    (k) 상기 제2 기준 값을 초과하는 경우, 상기 재시작 신호를 상기 임베디드 컴퓨팅 모듈로 전송하는 단계를 포함하는, 이상 감지 방법.
  12. 제7항에 있어서,
    상기 실행 신호 및 상기 런타임 신호는, 상기 임베디드 컴퓨팅 모듈에 대한 고유값을 포함하는, 이상 감지 방법.
KR1020220061715A 2022-05-20 2022-05-20 임베디드 컴퓨팅 모듈의 이상을 감지하는 이상 감지 장치, 시스템 및 방법 KR102438148B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220061715A KR102438148B1 (ko) 2022-05-20 2022-05-20 임베디드 컴퓨팅 모듈의 이상을 감지하는 이상 감지 장치, 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220061715A KR102438148B1 (ko) 2022-05-20 2022-05-20 임베디드 컴퓨팅 모듈의 이상을 감지하는 이상 감지 장치, 시스템 및 방법

Publications (1)

Publication Number Publication Date
KR102438148B1 true KR102438148B1 (ko) 2022-08-31

Family

ID=83061931

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220061715A KR102438148B1 (ko) 2022-05-20 2022-05-20 임베디드 컴퓨팅 모듈의 이상을 감지하는 이상 감지 장치, 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR102438148B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116521419A (zh) * 2023-05-16 2023-08-01 山东铂金动力科技有限公司 一种嵌入式操作系统的控制方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008287643A (ja) * 2007-05-21 2008-11-27 Mitsubishi Electric Corp 電子コントロールユニットの監視装置
JP2016038620A (ja) * 2014-08-05 2016-03-22 日立オートモティブシステムズ株式会社 電子制御装置
KR101826777B1 (ko) * 2016-09-12 2018-03-22 현대오트론 주식회사 마이크로컨트롤러 유닛 감시 장치 및 방법
KR20210083869A (ko) * 2019-12-27 2021-07-07 주식회사 빅솔론 시스템 장애 감시방법 및 이를 수행하는 장치

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008287643A (ja) * 2007-05-21 2008-11-27 Mitsubishi Electric Corp 電子コントロールユニットの監視装置
JP2016038620A (ja) * 2014-08-05 2016-03-22 日立オートモティブシステムズ株式会社 電子制御装置
KR101826777B1 (ko) * 2016-09-12 2018-03-22 현대오트론 주식회사 마이크로컨트롤러 유닛 감시 장치 및 방법
KR20210083869A (ko) * 2019-12-27 2021-07-07 주식회사 빅솔론 시스템 장애 감시방법 및 이를 수행하는 장치

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116521419A (zh) * 2023-05-16 2023-08-01 山东铂金动力科技有限公司 一种嵌入式操作系统的控制方法
CN116521419B (zh) * 2023-05-16 2024-05-28 山东铂金动力科技有限公司 一种嵌入式操作系统的控制方法

Similar Documents

Publication Publication Date Title
EP2518627B1 (en) Partial fault processing method in computer system
US11334468B2 (en) Checking a correct operation of an application in a cloud environment
US11848889B2 (en) Systems and methods for improved uptime for network devices
WO2018095107A1 (zh) 一种bios程序的异常处理方法及装置
US7672247B2 (en) Evaluating data processing system health using an I/O device
CN104079454A (zh) 一种设备异常检测方法和设备
US20160197809A1 (en) Server downtime metering
KR102438148B1 (ko) 임베디드 컴퓨팅 모듈의 이상을 감지하는 이상 감지 장치, 시스템 및 방법
CN112099412B (zh) 一种微控制单元的安全冗余架构
JPS61163447A (ja) 非作動状態検出装置
CN115617550A (zh) 处理设备、控制单元、电子设备、方法和计算机程序
CN113535448B (zh) 一种多重看门狗控制方法及其控制系统
JP6504610B2 (ja) 処理装置、方法及びプログラム
US10891180B2 (en) Multiple-processor error detection system and method thereof
US8099637B2 (en) Software fault detection using progress tracker
KR20130075807A (ko) 백업 하드디스크 드라이브가 구비된 금융자동화기기 및 금융자동화기기의 부팅 방법
JP2012150661A (ja) プロセッサ動作検査システム、及びその検査方法
JP6187508B2 (ja) 制御装置、バス回路、方法、及び、プログラム
KR20120138488A (ko) 리셋 이력 관리 기능을 갖는 광전송로 종단장치 및 그 방법
TWM556046U (zh) 網路切換控制系統
CN103518188A (zh) 监控系统恢复控制
CN116820837A (zh) 一种关于系统组件的异常处理方法及装置
JPH041831A (ja) プログラム暴走監視方式
CN112084049A (zh) 用于监控基板管理控制器的常驻程序的方法
JP2012198728A (ja) プログラム実行装置及び情報保管装置及び情報処理方法及びコンピュータプログラム

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant