KR101100894B1 - error detection and recovery method of embedded System - Google Patents

error detection and recovery method of embedded System Download PDF

Info

Publication number
KR101100894B1
KR101100894B1 KR1020090108790A KR20090108790A KR101100894B1 KR 101100894 B1 KR101100894 B1 KR 101100894B1 KR 1020090108790 A KR1020090108790 A KR 1020090108790A KR 20090108790 A KR20090108790 A KR 20090108790A KR 101100894 B1 KR101100894 B1 KR 101100894B1
Authority
KR
South Korea
Prior art keywords
operating system
predetermined packet
error
embedded
application software
Prior art date
Application number
KR1020090108790A
Other languages
Korean (ko)
Other versions
KR20110051957A (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 KR1020090108790A priority Critical patent/KR101100894B1/en
Publication of KR20110051957A publication Critical patent/KR20110051957A/en
Application granted granted Critical
Publication of KR101100894B1 publication Critical patent/KR101100894B1/en

Links

Images

Classifications

    • 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/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/0706Error 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 the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0736Error 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 the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/1097Boot, Start, Initialise, Power

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

본 발명은 임베디드 장치에서 사용하는 운용체제 내에 각각의 소프트웨어 모듈에 탑재된 내용을 응용소프트웨어에 기록하여 상태값들을 사용자 포트로 전송하고, 초소형 연산 처리장치에 의하여 오류검출에 따른 복구가 가능하도록 목적하는 기능을 수행하지 않을 경우 일정의 시퀀스에 의해 시스템의 초기상태로 복구가 가능하도록 한 것으로서, 그 특징적인 구성은 운영체제 내의 각 커널들을 설치할 수 있도록 해당 레지스트리에 접근할 수 있는 MMI모듈을 이용하여 설치 및 설정하는 제1단계(S1); 운영체제 내에 별도의 목적달성용 응용소프트웨어를 탑재하여 일정 주기 또는 비주기적으로 User Port를 이용하여 소정의 패킷을 전송하는 제2단계(S2); 일정 주기 또는 비주기적으로 소정의 패킷을 전송시 목적달성용 응용소프트웨어에 내장형 및 시작번지나 해당커널들의 번지를 검색하여 소정의 패킷을 작성하여 전송하는 제3단계(S3); 운영체제와 동기되게 작동되고 그 운영체제의 감시 및 초기화 목적으로 구비된 MPU의 소정 패킷을 이용하여 오류 또는 수신 불능 상태 검출시 초기화 신호를 발생시켜 재부팅 시켜주는 제4단계(S4)를 포함하여 구성된 것이다.The present invention records the contents mounted in each software module in the operating system used in the embedded device in the application software, transmits the status values to the user port, and recovers the error detection by the micro arithmetic processing device. If you do not perform the function, it is possible to recover to the initial state of the system by a certain sequence, the characteristic configuration is installed and installed using the MMI module that can access the registry to install each kernel in the operating system Setting a first step (S1); A second step (S2) of transmitting a predetermined packet by using a user port periodically or aperiodically by installing application software for achieving the purpose in a separate operating system; A third step (S3) of creating a predetermined packet by searching a built-in and start address or address of corresponding kernels in the application software for accomplishing a predetermined packet at regular or non-periodic transmission (S3); It is configured to include a fourth step (S4) that is operated in synchronization with the operating system and generates and resets an initialization signal upon detection of an error or incapable reception state by using a predetermined packet of the MPU provided for monitoring and initialization of the operating system.

임베디드, 운영체제, 오류, 검출, 초기화 Embedded, operating system, error, detection, initialization

Description

임베디드 장치의 오류검출 및 복구방법{error detection and recovery method of embedded System}Error detection and recovery method of embedded device

본 발명은 임베디드 장치의 오류검출 및 복구방법에 관한 것으로서, 더욱 상세하게는 임베디드 장치에서 사용하는 운용체제 내에 각각의 소프트웨어 모듈 등을 탑재하고 이들의 탑재내용을 응용소프트웨어에 기록하여 상태값들을 실시간 사용자 포트(user port)로 전송하고, 별도로 구비된 감시 목적의 초소형 연산 처리장치(MPU : micro processor unit)에 의하여 오류검출에 따른 복구가 가능하도록 목적하는 기능을 수행하지 않을 경우 일정의 시퀀스에 의해 시스템의 초기상태로 복구가 가능하도록 한 임베디드 장치의 오류검출 및 복구방법에 관한 것이다. The present invention relates to a method for detecting and recovering an error of an embedded device, and more particularly, to mount each software module in an operating system used in an embedded device and record the loaded contents in an application software to record status values in real time. If you do not perform the purpose of transmission to the user (port), and to recover according to the error detection by a microprocessor unit (MPU: micro processor unit) for monitoring purpose separately provided by a certain sequence The present invention relates to a method for detecting and recovering an error of an embedded device that enables recovery to an initial state of an embedded device.

일반적으로 각종 전자기기(이하 "하드웨어"라 한다)의 내부에는 그 하드웨어의 동작을 제어하는 프로그램(이하 "소프트웨어"라 한다)이 설치되어 있는 것으로서, 상기 소프트웨어는 전자기기의 특성 및 용도에 따라서, 사용자가 설치할 수도 있다.Generally, a program (hereinafter referred to as "software") for controlling the operation of the hardware is installed inside various electronic devices (hereinafter referred to as "hardware"), and the software is according to the characteristics and uses of the electronic device. You can also install it.

또는 특정한 기능을 수행하는 하드웨어의 경우에는 그 내부에 특정 기능을 수행할 수 있는 소프트웨어가 내장되며, 이러한 장치를 임베디드 장치라 한다.Alternatively, in the case of hardware that performs a specific function, software capable of performing a specific function is embedded therein. Such a device is called an embedded device.

상기 임베디드 시스템(Embedded System, 내장형 시스템)은 시스템을 동작시키는 소프트웨어를 하드웨어에 내장하여 특수한 기능만을 가진 컴퓨터 시스템이며, 개인용 컴퓨터(PC)와는 달리 특정한 요구 사항을 가지고 있으며, 미리 정의된 작업(task)만을 수행한다.The embedded system (embedded system) is a computer system having only a special function by embedding the software for operating the system in hardware, and has a specific requirement, unlike a personal computer (PC), a predefined task Only carry.

일예로 PDA와 같이 RAM(Random Access Memory)을 이용하여 데이터를 백업(back-up)하는 임베디드 장치에서는, RAM을 작업영역과 저장영역으로 구분하여 사용하고 있다. For example, in an embedded device that backs up data by using random access memory (RAM), such as a PDA, RAM is divided into a work area and a storage area.

작업영역은 OS(Operating System) 및 어플리케이션 프로그램이 로드되며, 사용자로부터 입력된 데이터가 임시로 기록되는 영역이며, 저장영역은 응용프로그램의 설치 및 사용자 입력데이터가 백업되는 영역이다.The work area is an area in which an OS (Operating System) and an application program are loaded, in which data input from a user is temporarily recorded, and a storage area is an area in which an application program is installed and user input data is backed up.

또한, 임베디드 장치는, 작업수행 중 시스템의 동작이 중단된 경우, 시스템을 재가동시키기 위한 리셋(reset)모드를 구비한다. In addition, the embedded device includes a reset mode for restarting the system when the operation of the system is interrupted while performing a task.

리셋모드는 소프트리셋(soft reset)과 하드리셋(hard reset)으로 구분할 수 있다. The reset mode may be classified into a soft reset and a hard reset.

하드리셋은 RAM에 기록된 내용을 모두 삭제하면서 최초 전원 투입시와 마찬가지로 부팅(booting)동작을 수행하는 데 반해, 소프트 리셋은 RAM에 기록된 작업영역의 데이터만을 삭제하고, 저장영역의 기록 내용은 보존하면서 부팅을 수행하도록 설계되어 있다. Hard reset deletes all the contents recorded in RAM and performs the booting operation as in the initial power-up, whereas soft reset deletes only the data of the working region recorded in RAM and writes the contents of the storage region. It is designed to boot while preserving.

하드리셋 및 소프트리셋에 따른 부팅동작을 각각 콜드(cold)부팅과 웜(warm)부팅이라 한다.The boot operation according to hard reset and soft reset is called cold boot and warm boot, respectively.

도 1은 종래 임베디드 장치의 소프트리셋 및 하드리셋 동작을 설명하는 순서도이다. 1 is a flowchart illustrating a soft reset and a hard reset operation of a conventional embedded device.

임베디드 장치는, 작업수행 중 현재 작업 프로그램이 무한루프에 빠지거나 응용프로그램들끼리의 충돌 또는 커널(kernel)이상 등이 발생하여 시스템이 헹(Hang)된 상태에서(S110), 사용자로부터 하드리셋 및 소프트리셋 중 어느 한 리셋명령이 선택적으로 지시되면(S120), 선택된 리셋명령에 따라 해당하는 리셋동작을 수행한다(S130). In the embedded device, when the current work program falls into an endless loop or a collision between applications or a kernel error occurs while performing a task, the system is hung (S110). If any one of the soft reset commands is selectively instructed (S120), a corresponding reset operation is performed according to the selected reset command (S130).

소프트리셋명령이 입력되어 소프트리셋 인터럽트가 발생되면(S122), OS 영역의 커널인터럽트 핸들러에서 소프트리셋 인터럽트 발생에 따른 소프트리셋 루틴을 수행한다. When the soft reset command is input and a soft reset interrupt is generated (S122), the kernel interrupt handler of the OS region performs a soft reset routine according to the soft reset interrupt.

즉, 소프트리셋 루틴에 따라 웜부팅을 수행한다(S132). 또한, 임베디드 장치는, 시스템이 헹된 상태에서(S110), 사용자로부터 외부입력핀을 통해 하드리셋명령이 입력되는 경우에는(S124), OS의 커널인터럽트 핸들러를 거치지 않고, 곧 바로 최초 전원 투입시와 마찬가지로 하드웨어적인 초기화를 수행한다. That is, a warm boot is performed according to the soft reset routine (S132). In addition, the embedded device, when the system is rinsed (S110), when a hard reset command is input from the user through an external input pin (S124), and immediately after the initial power-on without going through the kernel interrupt handler of the OS Similarly, hardware initialization is performed.

다시 말해 외부입력핀에 의한 하드리셋명령에 따라 콜드부팅을 수행한다(S134). In other words, the cold boot is performed according to the hard reset command by the external input pin (S134).

위와 같은 임베디드 장치의 리셋제어방법에서 사용자는 일반적으로 소프트리셋을 먼저 시도한 후, 장치로부터 아무런 응답이 없는 경우에, 하드리셋을 시도하게 된다. 이는, RAM에 기록된 데이터를 보존하면서 시스템을 재가동시키기 위한 행동이며, 소프트리셋의 시도에 대해서 시스템에서 응답이 없으면, 커널이 죽은 경우 이므로, 즉, 커널 이상이 발생한 경우이므로, 사용자는 장치를 다시 이용하기 위하여 어쩔 수 없이 하드리셋을 시도하게 되는 것이다.In the reset control method of the embedded device as described above, a user generally attempts a soft reset first, and then attempts a hard reset when there is no response from the device. This is an action to restart the system while preserving the data recorded in RAM, and if there is no response from the system for the soft reset attempt, the kernel is dead, that is, the kernel error has occurred. In order to use it, you have to try hard reset.

그러나 데스크탑형 개인용 컴퓨터에 익숙한 사용자들은 임베디드 장치에서는 하드리셋에 의해 RAM에 기록된 데이터가 모두 삭제되는 것을 미쳐 숙지하지 못한 상태에서 하드리셋을 수행하는 경우도 종종 발생한다. However, users who are accustomed to desktop personal computers often perform hard resets without knowing that the embedded device deletes all data written to RAM by hard reset.

그러나 상기와 같은 종래 임베디드 장치의 초기화 방법에 있어서는, 사용자가 실수로 또는 기기의 재가동을 위하여 하드리셋을 수행하게 되면, RAM에 기억된 데이터가 모두 삭제되므로, 즉, PDA와 같은 휴대용 기기에 있어서는, 하드리셋이 수행되면, 공장 출하시의 상태로 시스템이 복귀되므로, 사용자는 이전 설정하였던 이용환경 데이터, 응용프로그램 및 백업데이터까지 모두 잃게되어 낭패를 보게 되는 경우가 발생할 수 있었다.However, in the initialization method of the conventional embedded device as described above, when the user performs a hard reset by mistake or to restart the device, all data stored in the RAM is deleted, that is, in a portable device such as a PDA, When the hard reset is performed, the system is returned to the factory state, and thus, the user may lose all of the previously used environment data, application programs, and backup data, and may see a failure.

상술한 바와 같이 임베디드 시스템은 초기 전원이 투입되면 부팅이 이루어지며 자가진단 과정을 거쳐 운영체제에 접근하는 것이며, 운영체제의 설치환경에 따라서 다양한 응용프로그램을 구동시킬 수 있는 임베디드 시스템을 4비트, 8비트, 16비트 등과 같은 MPU를 탑재한 소규모 장치부터 고속 대용량 셋탑박스 등 다양하다.As described above, the embedded system is booted when the initial power is turned on, and accesses the operating system through a self-diagnosis process. The embedded system capable of driving various applications according to the installation environment of the operating system is a 4-bit, 8-bit, They range from small devices with MPUs, such as 16-bit, to high-speed, high-capacity set-top boxes.

첨부도면 도 2는 종래의 임베디드시스템의 운영체제내의 소프트웨어의 모듈상태감시의 간략한 블록도 및 부팅 순서도이다.2 is a simplified block diagram and boot flow diagram of a module state monitoring of software in an operating system of a conventional embedded system.

여기에서 참조되는 바와 같이 보편적으로 임베디드 시스템에서의 운영체제는 그 핵심역할을 하는 소프트웨어의 모듈을 포함한 커널들로 구성되어 있다.As referenced here, an operating system in an embedded system is typically made up of kernels containing modules of software that play a key role.

상기한 커널은 메모리가 인터럽 타이머 및 스케쥴 초기화 등에 관한 관리 기능 등을 수행한다. The kernel performs a management function such as memory related to an interrupt timer and schedule initialization.

그러나 상기한 기능을 보유한 임베디드 시스템에서 다양한 하드웨어나 소프트웨어를 적접 다루고 있기 때문에 목적 달성을 위한 응용프로그램은 항상 알 수 없는 불안정 상태에 노출되어 있는 문제점이 있다.However, since the embedded system having the above functions deal directly with various hardware or software, there is a problem that an application program for achieving the purpose is always exposed to an unknown instability state.

본 발명은 상기한 문제점을 해결하기 위한 것으로서, 그 목적은 운영체제 내에 별도의 목적 달성용 응용소프트웨어를 탑재 실행하여 일정 주기적 실행상태를 User Port를 통하여 감시하며, 별도로 구비된 초기화 목적의 MPU에 전송하여 오류검출에 따른 시스템의 결함을 복구하여 신뢰성을 향상시킬 수 있는 임베디드 장치의 오류검출 및 복구방법을 제공함에 있다.The present invention is to solve the above problems, the purpose is to install and execute the application software for achieving a separate purpose in the operating system to monitor the periodic execution state through the User Port, and to transmit to the MPU of the initialization purpose provided separately The present invention provides an error detection and recovery method for an embedded device that can improve reliability by recovering a system defect due to error detection.

상기 목적을 달성하기 위한 본 발명의 특징적인 구성을 설명하면 다음과 같다.Referring to the characteristic configuration of the present invention for achieving the above object is as follows.

본 발명에 따른 임베디드 장치의 오류검출 및 복구방법은 운영체제 내의 각 커널들을 설치할 수 있도록 해당 레지스트리에 접근할 수 있는 MMI(Man-Machine Interface)모듈을 이용하여 설치 및 설정하는 제1단계; 운영체제 내에 별도의 목적 달성용 응용소프트웨어를 탑재하여 일정 주기 또는 비주기적으로 User Port를 이용하여 소정의 패킷을 전송하는 제2단계; 일정 주기 또는 비주기적으로 소정의 패킷을 전송시 목적달성용 응용소프트웨어에 내장형 및 시작번지나 해당커널들의 번지를 검색하여 소정의 패킷을 작성하여 전송하는 제3단계; 운영체제와 동기되게 작동되고 그 운영체제의 감시 및 초기화 목적으로 구비된 MPU(마이크로프로세서)의 소정의 패킷을 이용하여 오류 또는 수신 불능 상태 검출시 초기화 신호를 발생시켜 재부팅 시켜주는 제4단계로 구성된 것이다.Error detection and recovery method of the embedded device according to the present invention comprises the first step of installing and setting using a MMI (Man-Machine Interface) module that can access the registry to install each kernel in the operating system; A second step of transmitting a predetermined packet using a user port periodically or aperiodically by installing application software for achieving a separate purpose in an operating system; A third step of creating a predetermined packet by searching for a built-in and start address or addresses of corresponding kernels in the application software for accomplishing a predetermined packet at regular or non-periodic transmission; It is composed of a fourth step of generating and rebooting an initialization signal when an error or an unreceivable state is detected by using a predetermined packet of an MPU (microprocessor) that operates in synchronization with an operating system and is provided for monitoring and initialization of the operating system.

본 발명은 운영체제 내에 별도의 목적 달성용 응용소프트웨어를 탑재 실행하여 일정 주기적 실행상태를 User Port를 통하여 감시하며, 별도로 구비된 초기화 목적의 MPU에 전송하여 오류검출에 따른 시스템의 결함을 복구하여 신뢰성을 향상시킬 수 있는 특유의 효과가 있다.The present invention monitors a certain periodic execution state through a user port by installing and executing application software for achieving a separate purpose in an operating system, and transmits to an MPU for initialization purpose separately to recover a system defect due to an error detection and to improve reliability. There are unique effects that can be improved.

기존의 임베디드시스템에 있어서는 일반적으로 워치독(Watch-Dog)IC를 사용하여 마이크로프로세서의 오류여부를 판단하였으나, 본 발명에 따르면 운영체제에 접근하여 형성한 패킷을 주고 받는 방식이므로 회로가 간단해지고 부품도 줄어 들어 하드웨어적인 비용이 절감되는 효과가 있다.In a conventional embedded system, a watchdog IC is generally used to determine whether a microprocessor has an error. However, according to the present invention, a circuit is simplified and a part is simplified because a packet is formed by accessing an operating system. This reduces the hardware cost.

운영체제로부터 어시스트된 패킷은 통상적인 하드웨어적인 방법인 마이크로프로세서 및 워치독IC가 수행하는 오류체크 보다 더 신속하며 기존의 워치독IC의 오류체크 플레그(Flag)와 연동시키면 시스템의 신뢰성과 안정성을 높이는 효과가 있다. Packets assisted by the operating system are faster than the error checking performed by microprocessors and watchdog ICs, which are conventional hardware methods, and can be combined with the error check flags of existing watchdog ICs to increase the reliability and stability of the system. There is.

본 발명에 따른 오류검출 방법은 마이크로프로세서를 채택하는 일반적인 임베디드 시스템에도 쉽게 적용가능하다. 통상적으로 PC의 MMI와 마이크로프로세스간에 데이터를 주고 받기 위해서는 통신규격이 필요하고 통신에 따르는 속도로 인한 문제는 물론 통신이 이루어지는 과정에서의 문제가 될 수 있으나 이러한 통신자체가 필요 없이 오류를 판별하므로 오류판단의 속도가 향상되고 효율성이 높아지는 효과가 있다.The error detection method according to the present invention can be easily applied to a general embedded system employing a microprocessor. In general, a communication standard is required to send and receive data between the MMI and the microprocessor of the PC, and the problem due to the speed of communication may be a problem in the course of communication, but the error is determined because the communication itself is not necessary. This speeds up judgment and increases efficiency.

임베디드 시스템에 있어서도 MMI가 요구된다면 통상적으로 Windows, Vista 등의 운영체제(OS)가 필요한데 이러한 MMI가 플레이(Play)되는 임베디드 시스템이라면 본 발명에 따른 오류검출 방법을 적용할 수 있어 호환성이 뛰어나며 상품가치도 크다.If MMI is required in an embedded system, an operating system (OS) such as Windows or Vista is generally required. However, if the MMI is an embedded system in which Play is performed, the error detection method according to the present invention can be applied. Big.

과거에는 임베디드 시스템을 사용하는 환경이 매우 열악하여 하드웨어적 고장이나 오류가 많았으나 최근에는 소프트웨어적 오류가 주류를 이루고 있다. 이는 네트워크환경과 인터넷의 발달로 이에 따른 외부바이러스의 영향을 들 수 있고 또한 각종 인터넷 사이트에서 제공되는 유틸리티(Utility), Active-X 등과의 충돌도 무시할 수 없다. 기존의 방법으로는 이러한 정보를 임베디드 시스템이 판단할 길이 없었다. 본 발명에 따른 오류검출방법은 이러한 문제에 매우 효율적으로 대처하고 임베디드 시스템과 MMI를 보호하므로 유지보수를 위한 비용을 절감하는 효과가 있다.In the past, the environment using embedded systems was so poor that there were many hardware failures and errors, but recently, software errors have become mainstream. This is due to the development of the network environment and the Internet, which can be influenced by external viruses, and also can not ignore the conflict with the utility (Activity), Active-X, etc. provided by various Internet sites. Traditionally, there was no way for embedded systems to determine this information. The error detection method according to the present invention can effectively cope with these problems and protect the embedded system and the MMI, thereby reducing the cost for maintenance.

본 발명을 나타낸 첨부도면을 참조하여 설명하면 다음과 같다.When described with reference to the accompanying drawings showing the present invention.

도 3은 본 발명에 따른 임베디드 장치의 오류검출 및 복구방법을 설명하기 위한 흐름도이고, 도 4는 본 발명에 따른 방법을 구현하기 위한 장치의 블록 구성도이며, 도 5는 본 발명에 따른 방법을 구현하기 위한 전원관계 계통도이고, 도 6은 본 발명에 따른 방법을 구현하기 위한 MMI모듈의 설치 및 설정과정을 설명하기 위한 흐름도이다.3 is a flowchart illustrating an error detection and recovery method of an embedded device according to the present invention, FIG. 4 is a block diagram of an apparatus for implementing the method according to the present invention, and FIG. 5 is a method according to the present invention. FIG. 6 is a flowchart illustrating a process of installing and configuring an MMI module for implementing a method according to the present invention.

여기에서 참조되는 바와 같이 본 발명은 운영체제 내의 각 커널들을 설치할 수 있도록 해당 레지스트리에 접근할 수 있는 MMI(Man-Machine Interface)모듈을 이용하여 설치 및 설정하는 제1단계(S1)와, 운영체제 내에 별도의 목적달성용 응용소프트웨어를 탑재하여 일정 주기 또는 비주기적으로 User Port를 이용하여 소정의 패킷을 전송하는 제2단계(S2)와, 일정 주기 또는 비주기적으로 소정의 패킷을 전송시 목적달성용 응용소프트웨어에 내장형 및 시작번지나 해당커널들의 번지를 검색하여 소정의 패킷을 작성하여 전송하는 제3단계(S4) 및 운영체제와 동기되게 작동되고 그 운영체제의 감시 및 초기화 목적으로 구비된 MPU(마이크로프로세서)의 소정의 패킷을 이용하여 오류 또는 수신 불능 상태 검출시 초기화 신호를 발생시켜 재부팅 시켜주는 제4단계(S4)로 구성되는 것이다.As referred to herein, the present invention provides a first step (S1) of installing and configuring using an MMI (Man-Machine Interface) module that can access a corresponding registry to install respective kernels in an operating system, and separately in the operating system. A second step (S2) of transmitting a predetermined packet using a user port periodically or aperiodically by using application software for achieving the purpose of the purpose, and an application for achieving a purpose when transmitting a predetermined packet periodically or aperiodically. The third step (S4) of searching for the built-in and start address of the software or the address of the corresponding kernels and writing a predetermined packet and transmitting the predetermined packet. In the fourth step S4 of generating an initialization signal and rebooting upon detecting an error or incapable reception state using a predetermined packet of It will be.

본 발명에 따른 방법을 구현하기 위한 장치의 구성은 도 4에 나타낸 바와 같다.The arrangement of the apparatus for implementing the method according to the invention is as shown in FIG. 4.

여기에서 참조되는 바와 같이 자동결함 복구장치(100)에는 User Port(111)와 주외부 I/O(140)가 마련되어 있고, Power ON시 입력신호(114) 및 Power ON시 완료신호(113)를 수신하는 타겟 임베디드 보드(110)와 USB 또는 외부메모리(130)가 구비된다.As described herein, the automatic fault recovery apparatus 100 includes a user port 111 and a main external I / O 140, and inputs an input signal 114 at power ON and a completion signal 113 at power ON. A receiving target embedded board 110 and a USB or external memory 130 is provided.

그리고, 감시 및 초기화 목적의 I/O를 갖는 MPU(120)와 부수적 목적을 갖는 부외부 I/0(150)을 포함한다. And an MPU 120 having I / O for monitoring and initialization purposes, and a negative external I / 0 150 having ancillary purposes.

따라서, 사용자나 외부 시퀀스에 의해 PS ON(160)에 신호가 입력되면 MPU(120)는 임베디드보드(110)의 Power ON 완료신호(113)와 목적달성용 소프트웨어의 소정의 패킷전송신호를 감시한다. Therefore, when a signal is input to the PS ON 160 by a user or an external sequence, the MPU 120 monitors the power ON completion signal 113 of the embedded board 110 and a predetermined packet transmission signal of the software for achieving the purpose. .

임베디드 보드(110)내에 설치된 운영체제의 종류에 따라 다소의 차이는 있겠지만 운영체제내의 커널하에서 실행되는 목적달성용 소프트웨어는 어떠한 경우에도 소정의 시간에 소정의 패킷을 전송해 주어야 하는 기능을 제공하여야 한다.Although there may be some differences depending on the type of OS installed in the embedded board 110, the software for achieving the purpose of running under the kernel of the OS should provide a function of transmitting a predetermined packet at a predetermined time in any case.

이는 부가적인 기능을 수행하는 전송패킷의 수신 내용보다 전송패킷의 수신 유무가 더 중요한 목적을 가지고 있기 때문이다.This is because the presence or absence of the transmission packet is more important than the reception contents of the transmission packet that performs additional functions.

도 5는 본 발명의 목적을 달성하기 위한 전원관계 계통으로써 도 4의 임베디드보드(110)의 주외부 I/O(140)와 MPU(120)의 부외부 I/O(150)의 역할들을 서로 견제하여 사용할 수 있도록 하여 상시 전원계통을 달리하는 것이 바람직하다.5 illustrates the roles of the main external I / O 140 of the embedded board 110 and the external external I / O 150 of the MPU 120 as a power supply system for achieving the object of the present invention. It is desirable to change the power system at all times by using it as a check.

한편, 도 6은 본 발명의 목적을 달성하기 위한 운영체제내의 각각의 커널들을 설치할 수 있도록 해당 레지스터리를 접근할 수 있는 MMI모듈을 이용하여 설치 및 설정하는 과정을 설명하기 위한 흐름도로서, MMI모듈내에 포함되어야 할 부트메모리 관리용 일례의 코드들이며 이는 사용목적, 환경, 사용자의 수준 등 다양한 여 건에 따라 USB 또는 외부메모리(130)에 존재할 수도 있다.On the other hand, Figure 6 is a flow chart for explaining the process of installation and configuration using the MMI module that can access the corresponding registry to install the respective kernels in the operating system for achieving the object of the present invention, included in the MMI module Exemplary codes for boot memory management that should be present may be present in the USB or the external memory 130 according to various conditions such as the purpose of use, environment, and user level.

상술함 바와 같은 본 발명에 의하면 임베디드 시스템의 일반적인 사용 범주인 특수목적 또는 전용기기로써 기능이외에 사용자의 의지와 무관하게 인터넷망 등을 포함한 외부의 바이러스성 악성 프로그램 및 코드들은 목적달성용 소프트웨어에 어떠한 영향을 주게 되어 MPU(120)로부터 초기화 신호를 요청받게 되면, 초기화되어 초기설치 및 설정된 내용이외의 내용은 초기화 되므로 오류로 인한 기기의 오작동을 미연에 방지할 수 있는 것이다.According to the present invention as described above, as a special purpose or dedicated device that is a general use category of the embedded system, regardless of the user's intention, external viral malicious programs and codes including the Internet network have no effect on the purpose accomplishment software. When the initial signal is received from the MPU 120, the initialization and initial installation and the contents other than the set contents are initialized, thereby preventing a malfunction of the device due to an error.

도 1은 종래 임베디드 장치의 소프트리셋 및 하드리셋 동작을 설명하는 순서도. 1 is a flow chart illustrating a soft reset and hard reset operation of a conventional embedded device.

도 2는 종래의 임베디드시스템의 운영체제내의 소프트웨어의 모듈상태감시의 간략한 블록도 및 부팅 순서도.Figure 2 is a simplified block diagram and boot flow diagram of the module state monitoring of the software in the operating system of the conventional embedded system.

도 3은 본 발명에 따른 임베디드 장치의 오류검출 및 복구방법을 설명하기 위한 흐름도.Figure 3 is a flow chart for explaining the error detection and recovery method of the embedded device according to the present invention.

도 4는 본 발명에 따른 방법을 구현하기 위한 장치의 블록 구성도.4 is a block diagram of an apparatus for implementing the method according to the present invention.

도 5는 본 발명에 따른 방법을 구현하기 위한 전원관계 계통도.5 is a power supply relationship diagram for implementing the method according to the present invention.

도 6은 본 발명에 따른 방법을 구현하기 위한 MMI모듈의 설치 및 설정과정을 설명하기 위한 흐름도.6 is a flow chart for explaining the installation and configuration of the MMI module for implementing the method according to the present invention.

Claims (1)

운영체제 내의 각 커널들을 설치할 수 있도록 해당 레지스트리에 접근할 수 있는 MMI(Man-Machine Interface)모듈을 이용하여 설치 및 설정하는 제1단계(S1);A first step (S1) of installing and configuring using a Man-Machine Interface (MMI) module that can access a corresponding registry to install respective kernels in an operating system; 운영체제 내에 별도의 목적달성용 응용소프트웨어를 탑재하여 일정 주기 또는 비주기적으로 User Port를 이용하여 소정의 패킷을 전송하는 제2단계(S2);A second step (S2) of transmitting a predetermined packet by using a user port periodically or aperiodically by installing application software for achieving the purpose in a separate operating system; 일정 주기 또는 비주기적으로 소정의 패킷을 전송시 목적달성용 응용소프트웨어에 내장형 및 시작번지나 해당커널들의 번지를 검색하여 소정의 패킷을 작성하여 전송하는 제3단계(S3);A third step (S3) of creating a predetermined packet by searching a built-in and start address or address of corresponding kernels in the application software for accomplishing a predetermined packet at regular or non-periodic transmission (S3); 운영체제와 동기되게 작동되고 그 운영체제의 감시 및 초기화 목적으로 구비된 MPU(마이크로프로세서)의 소정의 패킷을 이용하여 오류 또는 수신 불능 상태 검출시 초기화 신호를 발생시켜 재부팅 시켜주는 제4단계(S4)를 포함하여 구성됨을 특징으로 하는 임베디드 장치의 오류검출 및 복구방법.A fourth step (S4) is performed in which the initialization signal is generated and rebooted when an error or an unreceiving state is detected by using a predetermined packet of an MPU (microprocessor) which is operated in synchronization with the operating system and provided for the purpose of monitoring and initializing the operating system. Error detection and recovery method of the embedded device, characterized in that configured to include.
KR1020090108790A 2009-11-11 2009-11-11 error detection and recovery method of embedded System KR101100894B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090108790A KR101100894B1 (en) 2009-11-11 2009-11-11 error detection and recovery method of embedded System

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090108790A KR101100894B1 (en) 2009-11-11 2009-11-11 error detection and recovery method of embedded System

Publications (2)

Publication Number Publication Date
KR20110051957A KR20110051957A (en) 2011-05-18
KR101100894B1 true KR101100894B1 (en) 2012-01-02

Family

ID=44362142

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090108790A KR101100894B1 (en) 2009-11-11 2009-11-11 error detection and recovery method of embedded System

Country Status (1)

Country Link
KR (1) KR101100894B1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111857846A (en) * 2020-06-22 2020-10-30 珠海格力电器股份有限公司 Embedded system control method and device, storage medium and embedded controller
KR102360725B1 (en) * 2020-12-15 2022-02-08 현대오토에버 주식회사 Contrloller for vehicle and error management method thereof
CN113341870B (en) * 2021-06-24 2022-08-16 上海交通大学宁波人工智能研究院 System and method for recognizing control code exception

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040040778A (en) * 2002-11-08 2004-05-13 주식회사 정소프트 Method for Automatic Recovery and Operation of Software
KR20080016228A (en) * 2006-08-18 2008-02-21 현대자동차주식회사 Software-based fault recovery method in embedded control system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040040778A (en) * 2002-11-08 2004-05-13 주식회사 정소프트 Method for Automatic Recovery and Operation of Software
KR20080016228A (en) * 2006-08-18 2008-02-21 현대자동차주식회사 Software-based fault recovery method in embedded control system

Also Published As

Publication number Publication date
KR20110051957A (en) 2011-05-18

Similar Documents

Publication Publication Date Title
JP6530774B2 (en) Hardware failure recovery system
KR100430468B1 (en) Initializing and restarting operating systems
US9158628B2 (en) Bios failover update with service processor having direct serial peripheral interface (SPI) access
US10387261B2 (en) System and method to capture stored data following system crash
US10922413B2 (en) Methods and apparatus to apply a firmware update to a host processor
US9846616B2 (en) Boot recovery system
US7143275B2 (en) System firmware back-up using a BIOS-accessible pre-boot partition
US7146512B2 (en) Method of activating management mode through a network for monitoring a hardware entity and transmitting the monitored information through the network
US20040034816A1 (en) Computer failure recovery and notification system
US20120110378A1 (en) Firmware recovery system and method of baseboard management controller of computing device
US7318171B2 (en) Policy-based response to system errors occurring during OS runtime
US9417886B2 (en) System and method for dynamically changing system behavior by modifying boot configuration data and registry entries
US20080244302A1 (en) System and method to enable an event timer in a multiple event timer operating environment
US20190004818A1 (en) Method of UEFI Shell for Supporting Power Saving Mode and Computer System thereof
KR101100894B1 (en) error detection and recovery method of embedded System
US6904546B2 (en) System and method for interface isolation and operating system notification during bus errors
Intel
Intel
TWI461905B (en) Computing device capable of remote crash recovery, method for remote crash recovery of computing device, and computer readable medium
US20240012651A1 (en) Enhanced service operating system capabilities through embedded controller system health state tracking
US20240086288A1 (en) Privacy and security assurance during operating system crash events
CN116627702A (en) Method and device for restarting virtual machine in downtime

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20141222

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160107

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170123

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20171226

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee