KR20030052015A - System and Method for Process Recovery in Multiprocess Operating System - Google Patents

System and Method for Process Recovery in Multiprocess Operating System Download PDF

Info

Publication number
KR20030052015A
KR20030052015A KR1020010081815A KR20010081815A KR20030052015A KR 20030052015 A KR20030052015 A KR 20030052015A KR 1020010081815 A KR1020010081815 A KR 1020010081815A KR 20010081815 A KR20010081815 A KR 20010081815A KR 20030052015 A KR20030052015 A KR 20030052015A
Authority
KR
South Korea
Prior art keywords
failure
processes
tree structure
recovery
deleted
Prior art date
Application number
KR1020010081815A
Other languages
Korean (ko)
Other versions
KR100395071B1 (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 KR10-2001-0081815A priority Critical patent/KR100395071B1/en
Publication of KR20030052015A publication Critical patent/KR20030052015A/en
Application granted granted Critical
Publication of KR100395071B1 publication Critical patent/KR100395071B1/en

Links

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/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/0721Error 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 within a central processing unit [CPU]
    • G06F11/0724Error 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 within a central processing unit [CPU] in a multiprocessor or a multi-core unit
    • 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/0766Error or fault reporting or storing
    • G06F11/0772Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9027Trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Debugging And Monitoring (AREA)

Abstract

PURPOSE: A system and a method for recovering a process on a multi-process OS(Operating System) are provided to fast recover a trouble by constructing and managing the information related to all processes on the multi-process OS, and to debug the trouble easily through the trouble occurring particulars. CONSTITUTION: A database(12) stores the generation information and the state information for each process dynamically generated and deleted on the multi-process OS. Management processes(11-1¯11-n) manage respective processes by using the information stored in the database(12), and recover the trouble by deleting and regenerating the corresponding process when the trouble is occurred on a specific process. The database(12) is configured by tree structure nodes matched with each process. A tree structure node includes the process generation information such as a process ID, a process priority, and a process name, and the process management information such as a recover flag, a no-signal flag, and a transmission signal number.

Description

멀티프로세스 운영체계에서의 프로세스 복구 시스템 및 방법{System and Method for Process Recovery in Multiprocess Operating System}System and Method for Process Recovery in Multiprocess Operating System

본 발명은 멀티프로세스 운영체계에서 프로세스 복구에 관한 것으로, 특히 시스템 운영 시 특정 프로세스에 장애가 발생하는 경우 해당되는 프로세스들을 삭제 및 재생성하여 장애를 복구하는 멀티프로세스 운영체계에서의 프로세스 복구 시스템 및 방법에 관한 것이다.The present invention relates to a process recovery in a multi-process operating system, and more particularly, to a process recovery system and method in a multi-process operating system for recovering a failure by deleting and regenerating the corresponding process when a specific process failure occurs when operating the system. will be.

멀티프로세스 운영체계에서는 메인 프로세스에서 서브 프로세스를 생성하고 그 프로세스들이 서로 통신하면서 시스템이 동작하는데, 시스템 동작중 특정 프로세스에 장애가 발생한 경우에 시스템 자체적으로 장애를 복구할 수 있는 방법은 매우 제한적이다.In a multiprocess operating system, the system operates while creating subprocesses from the main process and communicating with each other. However, when a specific process fails during the operation of the system, the system itself can recover from the failure.

또한, 시스템 동작중 특정 프로세스에 장애 발생시 시스템 운용자나 소프트웨어 개발자는 시스템 디버깅에 어려움을 겪을 뿐만 아니라 신속한 장애 복구를 위해 시스템을 재구동시켰을 경우 모든 프로세스 정보가 삭제되어 장애 발생 내역에 대한 운용 기록조차 찾을 수 없는 경우가 많다.In addition, if a particular process fails during system operation, the system operator or software developer may not only have difficulty debugging the system but also if the system is restarted for quick failure recovery, all process information will be deleted, and even the operation record of the failure history can be found. There are many cases that cannot be.

다시 말하면, 종래의 멀티프로세스 운영체계에서는 프로세스를 생성하고 삭제하는 방법들은 제시하고 있으나 프로세스에 장애가 발생한 경우 장애 발생 프로세스를 복구하는 방법을 제시하지는 못하고 있다.In other words, the conventional multi-process operating system proposes a method of creating and deleting a process, but fails to suggest a method of recovering a failed process when the process fails.

왜냐하면, 시스템 동작중 발생하는 장애는 소프트웨어 개발자의 소프트웨어적인 문제로 인해 발생하는 경우가 많은 반면, 소프트웨어 개발자가 생성한 프로세스에 대한 정보를 운영체계에서 모두 가지고 있을 수 없기 때문이다.This is because failures that occur during system operation are often caused by software problems of software developers, but the operating system cannot have all information about processes created by software developers.

따라서, 시스템 동작중 특정 프로세스가 무한 루프에 빠지거나 운영체계에서 해당 프로세스를 삭제하는 등 특정 프로세스에 장애가 발생한 경우, 시스템 운용자나 소프트웨어 개발자가 프로세스의 상황을 모니터링 하는 장치를 통해 직접 명령어를 입력하여 복구시키거나 또는 시스템 전체를 재구동 시켜야만 한다.Therefore, when a specific process fails in an infinite loop or deletes the process from the operating system during system operation, the system operator or software developer can directly input a command through the device that monitors the process status. Either the system must be restarted or the entire system must be restarted.

그러나, 프로세스 모니터링 장치를 통해 직접 명령어를 입력하여 장애를 복구하는 경우에는 실제로 시스템이 현장에 설치되어 있을 때에는 모니터링을 하는 장치들을 사용할 수 없을 뿐만 아니라 장애를 복구하는데 많은 시간이 소요되어 시스템의 안정성에 치명적인 영향을 미치게 되는 문제가 발생하고, 장애의 신속한 복구를 위해 시스템 운용자가 시스템을 재구동시키는 경우에는 발생한 장애에 대한 운용 기록조차 찾을 수 없는 상황이 되어 시스템 운용자나 소프트웨어 개발자가 장애를 디버깅하는데 상당한 어려움을 겪게되는 문제가 발생한다.However, in case of recovering a failure by directly inputting a command through the process monitoring device, when the system is actually installed in the field, the monitoring devices cannot be used and the system takes a long time to recover from the failure. If a catastrophic problem occurs and the system operator restarts the system to recover quickly from the failure, the operating records for the failure may not be found. The problem arises that causes difficulties.

본 발명은 전술한 바와 같은 문제점을 해결하기 위한 것으로 그 목적은, 멀티프로세스 운영체계에서 모든 프로세스에 대한 관련 정보를 구축하여 관리하도록 하여 특정 프로세스에 장애가 발생한 경우 신속하게 장애를 복구하게 하고, 장애 발생 내역을 통해 용이하게 장애를 디버깅하게 하는데 있다.The present invention is to solve the problems as described above, the purpose is to build and manage the relevant information for all processes in the multi-process operating system to quickly recover from a failure when a specific process failure, failure occurs The history makes it easy to debug the fault.

도 1은 본 발명에 따른 멀티프로세스 운영체계에서의 프로세스 복구 시스템의 구성 블록도.1 is a block diagram of a process recovery system in a multiprocess operating system according to the present invention;

도 2는 도 1에 있어, 데이터베이스의 내부 구조를 도시한 도면.FIG. 2 is a diagram showing the internal structure of a database in FIG. 1; FIG.

도 3은 도 2에 있어, 트리 구조 노드를 나타낸 도면.3 is a diagram showing a tree structure node in FIG.

도 4는 멀티프로세스 운영체계에서의 프로세스 복구 동작을 나타내는 플로우챠트.4 is a flowchart illustrating a process recovery operation in a multiprocess operating system.

* 도면의 주요 부분에 대한 부호의 설명 *Explanation of symbols on the main parts of the drawings

11-1~11-n : 프로세스 12 : 데이터베이스11-1 ~ 11-n: Process 12: Database

12-1~12-n : 트리 구조 노드 13 : 프로세스 관리 프로세스12-1 ~ 12-n: Tree Structure Node 13: Process Management Process

상술한 바와 같은 목적을 달성하기 위한 본 발명의 특징은, 멀티프로세스 운영체계에서 동적으로 생성되고 삭제되는 각 프로세스에 대한 생성 정보 및 상태 정보를 저장하는 데이터베이스와; 상기 데이터베이스에 저장된 정보를 이용하여 각 프로세스들을 관리하고, 특정 프로세스에 장애가 발생하는 경우 해당되는 프로세스들을 삭제 및 재생성하여 장애를 복구하는 관리 프로세스를 포함하여 이루어지는 것을 특징으로 하는 멀티프로세스 운영체계에서의 프로세스 복구 시스템을 제공하는데 있다.A feature of the present invention for achieving the above object is a database for storing the creation information and status information for each process that is dynamically created and deleted in the multi-process operating system; Processes in the multi-process operating system, characterized in that for managing each process using the information stored in the database, and if a specific process failure occurs, the management process for recovering the failure by deleting and regenerating the corresponding processes To provide a recovery system.

여기서, 상기 데이터베이스는, 트리 구조 데이터베이스로서 각 프로세스에대응하는 트리 구조 노드들로 구성되는 것을 특징으로 하고, 상기 트리 구조 노드는, 프로세스 ID, 프로세스 우선순위, 프로세스 네임 등의 프로세스 생성 정보와, 특정 프로세스에 장애 발생시 삭제 및 재생성 할 프로세스를 결정하는 복구 플래그, 해당 프로세스가 관리 프로세스의 상태 확인 요청 신호를 수신할 수 있는지 여부를 결정하는 수신 거부 플래그, 장애 발생 프로세스가 관리 프로세스의 상태 확인 요청 신호를 수신한 횟수를 나타내는 송신 신호 넘버등의 프로세스 관리 정보를 포함하여 이루어지는 것을 특징으로 한다.Here, the database is a tree structure database, characterized in that composed of tree structure nodes corresponding to each process, the tree structure node, the process creation information such as process ID, process priority, process name, and the like, A recovery flag to determine which process to delete and recreate in the event of a process failure, a complaint flag to determine whether the process can receive a health check request signal from the managed process, and a failed process to signal a health check request from the management process And process management information such as a transmission signal number indicating the number of times of reception.

그리고, 상기 관리 프로세스는, 특정 프로세스에 장애가 발생하는 경우 장애 발생 프로세스에 대응하는 트리 구조 노드의 복구 플래그의 셋팅 값을 확인하여, 상기 플래그 셋팅 값이 '0'인 경우 장애 발생 프로세스와 그 자식 프로세스 및 장애 발생 프로세스의 부모 프로세스와 그 부모 프로세스의 다른 자식 프로세스를 모두 삭제한 후 삭제된 부모 프로세스를 재생성하고, 상기 플래그 셋팅 값이 '1'인 경우 장애 발생 프로세스와 그 자식 프로세스를 삭제한 후 장애가 발생했던 프로세스를 재생성하여, 장애 발생시 삭제한 프로세스들을 재생성하게 하는 것을 특징으로 한다.The management process checks a setting value of a recovery flag of a tree structure node corresponding to a failure process when a failure occurs in a specific process, and if the flag setting value is '0', the failure process and its child processes. And deleting both the parent process of the failing process and other child processes of the parent process, and regenerating the deleted parent process. If the flag setting value is '1', the failing process and the child process are deleted after deleting the failing process and the child process. By regenerating the process that occurred, it is possible to recreate the processes deleted in the event of a failure.

또한, 상기 관리 프로세스는, 특정 프로세스에 장애가 발생하는 경우 장애 발생 내역을 보조 기억 장치에 저장하여 디버깅하게 하는 것을 특징으로 한다.In addition, the management process is characterized in that when a failure occurs in a specific process, the failure occurrence history is stored in the auxiliary storage device for debugging.

나아가, 본 발명의 또다른 특징은, 멀티프로세스 운영체계에서 관리 프로세스가 각 프로세스에 상태 확인 요청 신호를 송신한 후 일정 시간내에 정상 상태 신호가 수신되는지 여부를 확인하는 과정과; 상기 정상 상태 신호가 수신되지 않은프로세스에 장애가 발생하였음을 감지하고, 데이터베이스에서 장애가 발생한 프로세스에 대응하는 트리 구조 노드의 복구 플래그를 확인하는 과정과; 상기 트리 구조 노드의 복구 플래그의 셋팅 값에 따라 장애 복구 범위를 결정하여, 해당되는 프로세스들을 삭제 및 재생성하여 장애를 복구하는 과정을 포함하여 이루어지는 것을 특징으로 하는 멀티프로세스 운영체계에서의 프로세스 복구 방법을 제공하는데 있다.Further, another aspect of the present invention, the process of the management process in the multi-process operating system to check whether the steady state signal is received within a certain time after sending a status check request signal to each process; Detecting that a failure has occurred in a process for which the steady state signal is not received, and checking a recovery flag of a tree structure node corresponding to the failed process in a database; The process for recovering a process in a multi-process operating system comprising determining a failure recovery range according to a setting value of a recovery flag of the tree structure node, recovering a failure by deleting and regenerating corresponding processes. To provide.

여기서, 상기 상태 확인 요청 신호는, 관리 프로세스가 데이터베이스에서 각 프로세스에 대응하는 트리 구조 노드의 수신 거부 플래그를 확인하여, 상기 상태 확인 요청 신호를 수신할 수 있는 프로세스에만 송신하는 것을 특징으로 한다.The status check request signal may be transmitted only to a process in which a management process checks a reception rejection flag of a tree structure node corresponding to each process in a database and receives the status check request signal.

또한, 상기 프로세스들을 삭제 및 재생성하여 장애를 복구하는 과정은, 장애 발생 프로세스에 대응하는 트리 구조 노드의 복구 플래그의 셋팅 값이 '0'인 경우 장애 발생 프로세스와 그 자식 프로세스 및 장애 발생 프로세스의 부모 프로세스와 그 부모 프로세스의 다른 자식 프로세스를 모두 삭제하는 단계와; 장애 복구를 위하여 상기 삭제된 부모 프로세스를 재생성하여 장애 발생시 삭제한 프로세스들을 재생성하게 하는 단계를 포함하여 이루어지는 것을 특징으로 하고, 장애 발생 프로세스에 대응하는 트리 구조 노드의 복구 플래그의 셋팅 값이 '1'인 경우 장애 발생 프로세스와 그 자식 프로세스를 삭제하는 단계와; 장애 복구를 위하여 상기 삭제된 장애가 발생했던 프로세스를 재생성하여 장애 발생시 삭제한 프로세스들을 재생성하게 하는 단계를 포함하여 이루어지는 것을 특징으로 한다.In addition, the process of recovering a failure by deleting and regenerating the processes may be performed when the setting value of the recovery flag of the tree structure node corresponding to the failure process is '0', and the parent of the failed process, its child processes, and the failed process. Deleting both the process and other child processes of the parent process; Regenerating the deleted parent process to recover the failure, and regenerating the deleted processes when the failure occurs. The setting value of the recovery flag of the tree structure node corresponding to the failure process is '1'. Deleting the failing process and its child processes; And regenerating the deleted process to recover the failure, thereby recreating the deleted processes when the failure occurs.

이하, 본 발명에 따른 실시예를 첨부한 도면을 참조하여 상세하게 설명하면 다음과 같다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

본 발명에 따른 멀티프로세스 운영체계에서 프로세스 복구 시스템은 첨부된 도면 도 1에 도시된 바와 같이 다수의 프로세스(11-1~11-n)와 데이터베이스(12) 및 프로세스 관리 프로세스(이하 '관리 프로세스'라고 함)(13)로 구성된다.In the multi-process operating system according to the present invention, the process recovery system includes a plurality of processes 11-1 to 11-n, a database 12, and a process management process (hereinafter, referred to as 'management process') as shown in FIG. 13).

다수의 프로세스(11-1~11-n)는 메인 프로세스가 생성한 부모 프로세스에 의해 프로세스 ID, 프로세스 네임, 프로세스 우선순위등의 정보에 따라 각각 생성되어 상호 통신을 통해 동작하여 해당 서비스를 제공한다.A plurality of processes (11-1 to 11-n) are generated by the parent process generated by the main process according to information such as process ID, process name, process priority, etc., and operate through mutual communication to provide a corresponding service. .

데이터베이스(12)는 모든 프로세스(11-1~11-n)의 생성 정보 및 관리에 필요한 정보를 저장하는데, 첨부된 도면 도 2에 도시된 바와 같이 각 프로세스(11-1~11-n)에 대응하여 트리 구조로 이루어진다. 이와 같이, 데이터베이스(12)의 구조가 트리 구조인 것은 사용자 프로세스가 부모(Parent) 프로세스로부터 나무 가지처럼 자식 프로세스(Child)들을 생성하므로 트리 구조로 프로세스를 관리하는 것이 부모 프로세스 및 부모 프로세스에서 같이 생성된 형제 프로세스들을 쉽게 파악하여 장애 복구는 물론 프로세스 관리에도 용이하기 때문이다.The database 12 stores generation information and management information of all processes 11-1 to 11-n, which are shown in each process 11-1 to 11-n as shown in FIG. Corresponds to the tree structure. As such, the structure of the database 12 is that the tree structure means that the user process creates child processes like tree branches from the parent process, so managing the process in the tree structure is created in the parent process and the parent process together. This is because it is easy to identify the sibling processes that are in use and to facilitate the process of managing the failure.

그리고, 리얼 타임 OS(Real time Operating System)에서는 각 프로세스들이 동적으로 생성되고 삭제되기 때문에 특정 프로세스 삭제시에는 데이터베이스(12)에서 해당 프로세스에 대한 정보를 삭제하여 데이터베이스(12)는 항상 최신의 정보를 유지할 수 있도록 한다.In the real time OS, each process is dynamically created and deleted, so when deleting a specific process, information about the process is deleted from the database 12 so that the database 12 always updates the latest information. To maintain.

데이터베이스(12)를 구성하는 각각의 트리 구조 노드(12-1~12-n)는 첨부된도면 도 3과 같다.Each tree structure node 12-1 to 12-n constituting the database 12 is as shown in FIG.

트리 구조 노드(12-1~12-n)는 프로세스(11-1~11-n) 생성시 만들어지는 프로세스 생성 정보와 프로세스 관리를 위한 정보를 가지고 만들어 지는데, 프로세스 생성 정보는 프로세스 ID, 프로세스 우선순위, 프로세스 네임 등이고, 프로세스 관리 정보는 장애 발생시 삭제 및 재생성 할 프로세스를 결정하는 장애 복구 범위 결정 플래그(Alone flag : 이하 '복구 플래그'라고 함), 해당 프로세스(11-1~11-n)가 관리 프로세스(13)의 상태 확인 요청 신호를 수신할 수 있는지 여부를 결정하는 수신 거부 플래그(No Signal Flag), 장애가 발생한 프로세스(11-1~11-n)가 관리 프로세스(13)의 상태 확인 요청 신호를 수신한 횟수를 나타내는 송신 신호 넘버(Send Signal Number)등이다.The tree structure nodes 12-1 to 12-n are created with process creation information and process management information created when the processes 11-1 to 11-n are created. The process creation information is a process ID and a process priority. Rank, process name, etc., and process management information includes a failover flag for determining a process to be deleted and regenerated (Alone flag: hereinafter referred to as a 'recovery flag'), and a corresponding process (11-1 to 11-n). A No Signal Flag that determines whether a status check request signal of the management process 13 can be received, or a process 11-1 to 11-n in which a failure occurs is the status check request of the management process 13. A Send Signal Number indicating the number of times a signal is received, and the like.

관리 프로세스(13)는 데이터베이스(12)에 저장된 정보를 이용하여 시스템의 모든 프로세스(11-1~11-n)들을 관리하고, 장애가 발생한 특정 프로세스(11-1~11-n)를 복구하며 또한 특정 프로세스(11-1~11-n)에 발생한 장애 내역을 별도의 보조 기억 장치(도면에 도시되어있지 않음)에 저장하여 시스템 운용자나 소프트웨어 개발자가 장애에 대한 디버깅(Debugging)할 때 참고할 수 있도록 한다.The management process 13 manages all the processes 11-1 to 11-n of the system by using the information stored in the database 12, recovers the specific process 11-1 to 11-n which has failed, and also The failure history of a specific process (11-1 to 11-n) is stored in a separate auxiliary memory (not shown) so that the system operator or software developer can refer to it when debugging the failure. do.

다시 말하면, 관리 프로세스(13)는 주기적으로 데이터베이스(12)를 읽어서 프로세스(11-1~11-n)의 상태를 판단하기 위해 상태 확인 요청 신호를 프로세스(11-1~11-n)로 송신하고 일정 시간내에 상태 확인 요청 신호를 수신한 프로세스(11-1~11-n)로부터 정상 상태 신호가 수신되는지 여부를 확인한다.In other words, the management process 13 periodically reads the database 12 and sends a status check request signal to the processes 11-1 to 11-n to determine the status of the processes 11-1 to 11-n. Then, it is checked whether or not the steady state signal is received from the processes 11-1 to 11-n which have received the state check request signal within a predetermined time.

이때, 상태 확인 요청 신호는 프로세스의 동작 특성상 상태 확인 신호를 수신할 수 없는 프로세스(11-1~11-n)도 있기 때문에 해당 트리 구조 노드(12-1~12-n)의 수신 거부 플래그를 확인하여, 수신 거부 플래그가 '1'로 셋팅된 해당 프로세스(11-1~11-n)에는 상태 확인 요청 신호를 송신하지 않고 프로세스(11-1~11-n)가 삭제되었는지 여부만을 점검한다.At this time, since the status check request signal may not receive the status check signal due to the operation characteristics of the process, the reception check flag of the corresponding tree structure nodes 12-1 to 12-n may be changed. By checking, only the processes 11-1 to 11-n have been deleted without transmitting a status check request signal to the corresponding processes 11-1 to 11-n having the rejection flag set to '1'. .

관리 프로세스(13)는 특정 프로세스(11-1~11-n)로부터 일정 시간내에 정상 상태 신호를 수신하지 못하는 경우 해당 프로세스(11-1~11-n)에 장애가 발생하였음을 감지하고 장애 복구 루틴을 동작시킨다.If the management process 13 does not receive a steady state signal from a specific process 11-1 to 11-n within a predetermined time period, the management process 13 detects that the corresponding process 11-1 to 11-n has failed and performs a failure recovery routine. To operate.

예컨대, 관리 프로세스(13)는 트리 구조 노드(12-1~12-n)의 수신 거부 플래그가 '0'으로 셋팅된 모든 프로세스(11-1~11-n)에 30초 마다 상태 확인 요청 신호를 송신하고 상태 확인 요청 신호를 수신한 프로세스(11-1~11-n)로부터 정상 상태 신호가 수신되는지 여부를 확인하는데, 상태 확인 요청 신호를 수신한 프로세스(11-1~11-n)가 20초 동안에 정상 상태 신호를 송신하지 않으면 해당 프로세스(11-1~11-n)에 대응하는 트리 구조 노드(12-1~12-n)의 송신 신호 넘버를 1씩 증가시킨다. 그리고, 송신 신호 넘버가 '3' 이상이면 해당 프로세스(11-1~11-n)에 장애가 발생하였음을 감지하고 장애 복구 루틴을 동작시킨다.For example, the management process 13 signals the status check request every 30 seconds to all the processes 11-1 to 11-n whose reception flags of the tree structure nodes 12-1 to 12-n are set to '0'. To confirm whether a steady state signal is received from the processes 11-1 to 11-n that have received the status check request signal, and the processes 11-1 to 11-n that have received the status check request signal If no steady state signal is transmitted for 20 seconds, the transmission signal numbers of the tree structure nodes 12-1 to 12-n corresponding to the corresponding processes 11-1 to 11-n are increased by one. If the transmission signal number is '3' or more, it detects that a failure has occurred in the corresponding processes 11-1 to 11-n and operates a failure recovery routine.

장애 복구 루틴은 관리 프로세스(13)가 장애가 발생한 프로세스(11-1~11-n)에 대한 트리 구조 노드(12-1~12-n)의 복구 플래그를 분석함으로써 이루어진다.The failure recovery routine is made by the management process 13 analyzing the recovery flags of the tree structure nodes 12-1 through 12-n for the failed processes 11-1 through 11-n.

다시 말하면, 관리 프로세스가(13) 해당 트리 구조 노드(12-1~12-n)의 복구 플래그를 분석하여 장애 복구 범위를 결정한 후 그 장애 복구 범위에 따라 장애를 복구하는데, 복구 플래그가 '1'로 셋팅된 경우에는 장애가 발생한 프로세스와 장애발생 프로세스의 자식 프로세스를 삭제한 후 장애가 발생했던 프로세스를 재생성 함으로써 프로세스의 장애를 복구하고, 복구 플래그가 '0'으로 셋팅된 경우에는 장애가 발생한 프로세스와 그 부모 프로세스 및 부모 프로세스의 다른 자식 프로세스(즉, 형제 프로세스)를 모두 삭제한 후 삭제한 부모 프로세스를 재생성하여 장애 발생시 삭제한 프로세스들을 재생성하게 함으로써 장애를 복구한다. 이때, 부모 프로세스의 복구 플래그 또한 '0'으로 셋팅된 경우에는 부모 프로세스의 부모 프로세스와 부모 프로세스의 부모 프로세스로부터 파생된 프로세스를 삭제한 후 부모 프로세스의 부모 프로세스를 재생성 한다.In other words, the management process (13) analyzes the recovery flags of the corresponding tree structure nodes (12-1 to 12-n) to determine the recovery range and then recovers the failure according to the recovery range, where the recovery flag is '1'. If set to ', the failed process is repaired by deleting the failed process and the child process of the failed process, and regenerating the failed process. If the recovery flag is set to' 0 ', the failed process and its The failure is recovered by deleting both the parent process and other child processes of the parent process (that is, sibling process) and then regenerating the deleted parent process to regenerate the deleted processes in case of failure. In this case, when the recovery flag of the parent process is also set to '0', the parent process of the parent process and the process derived from the parent process of the parent process are deleted, and then the parent process of the parent process is regenerated.

프로세스의 복구 플래그에 셋팅되는 '0' 또는 '1'의 값은 소프트웨어 개발자가 결정하여 복구 플래그를 셋팅한다.The value of '0' or '1' set in the recovery flag of the process is determined by the software developer to set the recovery flag.

또한, 관리 프로세스(13)는 프로세스에 장애가 발생한 경우 장애 발생 프로세스 네임, 장애 발생 시간, 장애 발생 횟수 등의 장애 발생 내역을 별도의 메모리에 저장하여 시스템 운용자나 소프트웨어 개발자의 요구시 장애 내역을 출력해 준다.In addition, the management process 13 stores a failure history such as a failure process name, a failure time, and the number of failures in a separate memory when the process fails, and outputs a failure history when requested by a system operator or software developer. give.

장애 발생 내역은 장애 복구 루틴 동작 시에는 장애가 바로 복구되기 때문에 시스템 운용자나 소프트웨어 개발자의 요구시 출력 가능하지만, 시스템이 재 시동 될 경우에는 소멸되기 때문에 이를 방지하기 위하여 별도의 보조 기억 장치에 저장한다.The failure history can be printed at the request of the system operator or the software developer because the failure is recovered immediately during the operation of the failure recovery routine, but it is destroyed when the system is restarted and stored in a separate auxiliary memory device to prevent it.

상기와 같은 구성을 가지는 멀티프로세스 운영체계에서 프로세스 복구 동작을 첨부된 도면 도 4를 참조하여 상세하게 설명하면 다음과 같다.A process recovery operation in the multi-process operating system having the above configuration will be described in detail with reference to FIG. 4 as follows.

먼저, 관리 프로세스(13)는 데이터베이스(12)에 저장된 각 트리 구조 노드(12-1~12-n)를 읽어 수신 거부 플래그가 '0'으로 셋팅된 해당 프로세스(11-1~11-n)로 상태 확인 요청 신호를 송신하고(스텝 S41), 일정 시간내에 상태 확인 요청 신호를 수신한 프로세스(11-1~11-n)로부터 정상 상태 신호가 수신되는지 여부를 확인한다(스텝 S42).First, the management process 13 reads each tree structure node 12-1 to 12-n stored in the database 12, and the corresponding process 11-1 to 11-n in which the complaint flag is set to '0'. The low status check request signal is transmitted (step S41), and it is checked whether or not the steady state signal is received from the processes 11-1 to 11-n that have received the status check request signal within a predetermined time (step S42).

상기 확인 결과 일정 시간내에 관리 프로세스(13)가 상태 확인 요청 신호를 수신한 프로세스(11-1~11-n)로부터 정상 상태 신호를 수신하지 못하면, 관리 프로세스(13)는 해당 프로세스(11-1~11-n)의 장애를 감지하고 해당 프로세스(11-1~11-n)에 대응하는 트리 구조 노드(12-1~12-n)의 복구 플래그를 분석하여(스텝 S43), 복구 플래그에 셋팅된 값이 '0'인지 여부를 확인한다(스텝 S44).If the management process 13 does not receive a steady state signal from the processes 11-1 to 11-n that have received the status check request signal within a predetermined time as a result of the checking, the management process 13 performs the corresponding process 11-1. 11-n), a failure flag of the tree structure nodes 12-1 to 12-n corresponding to the corresponding processes 11-1 to 11-n is analyzed (step S43), and the recovery flag is analyzed. It is checked whether the set value is '0' (step S44).

상기 복구 플래그의 셋팅 값을 확인한 결과, 장애 발생 프로세스(11-1~11-n)에 대한 트리 구조 노드(12-1~12-n)의 복구 플래그가 '0'으로 셋팅된 경우에는 장애가 발생한 프로세스와 그 자식 프로세스, 장애 발생 프로세스의 부모 프로세스 및 그 부모 프로세스의 다른 자식 프로세스를 모두 삭제한 후 부모 프로세스를 재생성 하고(스텝 S45, S46, S47), 해당 복구 플래그가 '1'로 셋팅된 경우에는 장애가 발생한 프로세스와 장애 발생 프로세스의 자식 프로세스를 삭제한 후 장애가 발생했던 프로세스를 재생성 한다(스텝 S48, S49).As a result of checking the setting value of the recovery flag, when the recovery flag of the tree structure nodes 12-1 to 12-n for the failure process 11-1 to 11-n is set to '0', a failure occurs. If you delete the process and its child processes, the parent process of the failing process, and all other child processes of that parent process, then recreate the parent process (steps S45, S46, S47), and the recovery flag is set to '1'. Next, after deleting the failed process and the child processes of the failed process, the failed process is regenerated (steps S48 and S49).

예컨대, 프로세스 네임이 'C'인 프로세스(11-3)(이하, '프로세스 'c')에 장애가 발생하였음을 가정하여 설명하면 다음과 같다.For example, assuming that a failure occurs in the process 11-3 (hereinafter, 'process' c') whose process name is' C ', it will be described below.

관리 프로세스(13)는 프로세스 'c'(11-3)에 장애가 발생하였음을 감지하면데이터베이스(12)에서 프로세스 'c'(11-3)에 대한 트리 구조 노드(12-3)(이하 트리 구조 노드 'c')의 복구 플래그를 확인하여, 장애가 발생한 프로세스 'c'(11-3)와 관련 프로세스를 삭제한 후 해당되는 프로세스들을 재생성 하여 장애를 복구한다.When the management process 13 detects that process 'c' 11-3 has failed, the tree structure node 12-3 (hereinafter tree structure) for process 'c' 11-3 in the database 12 is detected. After checking the recovery flag of the node 'c', the failure process is deleted by deleting the failed process 'c' (11-3) and the related process and regenerating the corresponding processes.

이때, 트리 구조 노드 'c'(12-3)의 복구 플래그가 '0'으로 셋팅된 경우에는 프로세스 'c'(11-3)의 자식 프로세스(11-4)에 대한 트리 구조 노드인 트리 구조 노드 'd'(12-4)와, 프로세스 'c'(11-3)의 부모 프로세스(11-2)에 대한 트리 구조 노드인 트리 구조 노드 'b'(12-2) 및 그 부모 프로세스(11-2)에서 생성된 다른 자식 프로세스(11-5)에 대한 트리 구조 노드인 트리 구조 노드 'e'(12-5)에 저장된 프로세스 정보를 이용하여 장애가 발생한 프로세스 'c'(11-3)와 프로세스 'b'(11-2), 프로세스 'd'(11-4) 및 프로세스 'e'(11-5)를 모두 삭제한다.At this time, when the recovery flag of the tree structure node 'c' (12-3) is set to '0', the tree structure which is a tree structure node for the child process 11-4 of the process 'c' (11-3) Node 'd' 12-4 and tree structure node 'b' 12-2, which is the tree structure node for parent process 11-2 of process 'c' 11-3, and its parent process ( A failed process 'c' (11-3) using the process information stored in the tree structure node 'e' (12-5), which is a tree structure node for another child process 11-5 created in 11-2). And deletes process 'b' 11-2, process 'd' 11-4 and process 'e' 11-5.

이후, 관리 프로세스(13)는 장애가 발생한 프로세스 'c'의 부모 프로세스인 프로세스 'b'(11-2)를 재생성 한다. 그러면, 부모 프로세스가 다시 차례로 자식 프로세스들을 생성함으로써 프로세스 'c'(11-3)에 발생된 장애는 복구된다.Thereafter, the management process 13 regenerates the process 'b' 11-2 which is the parent process of the failed process 'c'. Then, the failure caused to process 'c' 11-3 is repaired by the parent process generating child processes in turn.

한편, 트리 구조 노드 'c'(12-3)의 복구 플래그가 '1'로 셋팅된 경우에는 장애가 발생한 프로세스 'c'(11-3)의 자식 프로세스(11-4)에 대한 트리 구조 노드인 트리 구조 노드 'd'(12-4)에 저장된 프로세스 정보를 이용하여 프로세스 'c'(11-3)와 프로세스 'd'(11-4)를 삭제한 후에 프로세스 'c'(11-3)를 재생성 하여 장애를 복구한다.On the other hand, when the recovery flag of the tree structure node 'c' (12-3) is set to '1', the tree structure node for the child process 11-4 of the failed process 'c' (11-3) Process 'c' (11-3) after deleting process 'c' (11-3) and process 'd' (11-4) using process information stored in tree structure node 'd' (12-4) Regenerate the error to recover from the failure.

또한, 본 발명에 따른 실시예는 상술한 것으로 한정되지 않고, 본 발명과 관련하여 통상의 지식을 가진자에게 자명한 범위내에서 여러 가지의 대안, 수정 및변경하여 실시할 수 있다.In addition, the embodiment according to the present invention is not limited to the above-mentioned, and can be implemented by various alternatives, modifications, and changes within the scope apparent to those skilled in the art.

이상과 같이, 본 발명은 멀티프로세스 운영체계에서 모든 프로세스에 대한 관련 정보를 트리 구조로 구축하여 관리함으로써, 이를 통해 특정 프로세스에 장애 발생시 신속하게 장애를 복구하게 하고, 장애 발생 내역을 통해 용이하게 장애를 디버깅하게 하는 효과가 있다.As described above, the present invention builds and manages related information about all processes in a multi-process operating system in a tree structure, thereby quickly recovering a failure in the event of a failure in a specific process, and easily through a failure history. This has the effect of debugging.

Claims (9)

멀티프로세스 운영체계에서 동적으로 생성되고 삭제되는 각 프로세스에 대한 생성 정보 및 상태 정보를 저장하는 데이터베이스와;A database for storing creation information and state information for each process that is dynamically created and deleted in a multi-process operating system; 상기 데이터베이스에 저장된 정보를 이용하여 각 프로세스들을 관리하고, 특정 프로세스에 장애가 발생하는 경우 해당되는 프로세스들을 삭제 및 재생성하여 장애를 복구하는 관리 프로세스를 포함하여 이루어지는 것을 특징으로 하는 멀티프로세스 운영체계에서의 프로세스 복구 시스템.Processes in the multi-process operating system, characterized in that for managing each process using the information stored in the database, and if a specific process failure occurs, the management process for recovering the failure by deleting and regenerating the corresponding processes Recovery system. 제 1항에 있어서,The method of claim 1, 상기 데이터베이스는, 트리 구조 데이터베이스로서 각 프로세스에 대응하는 트리 구조 노드들로 구성되는 것을 특징으로 하는 멀티프로세스 운영체계에서의 프로세스 복구 시스템.The database is a tree structure database, process recovery system in a multi-process operating system, characterized in that composed of tree structure nodes corresponding to each process. 제 1항 또는 제 2항에 있어서,The method according to claim 1 or 2, 상기 트리 구조 노드는, 프로세스 ID, 프로세스 우선순위, 프로세스 네임 등의 프로세스 생성 정보와, 특정 프로세스에 장애 발생시 삭제 및 재생성 할 프로세스를 결정하는 복구 플래그, 해당 프로세스가 관리 프로세스의 상태 확인 요청 신호를 수신할 수 있는지 여부를 결정하는 수신 거부 플래그, 장애 발생 프로세스가 관리 프로세스의 상태 확인 요청 신호를 수신한 횟수를 나타내는 송신 신호 넘버등의 프로세스 관리 정보를 포함하여 이루어지는 것을 특징으로 하는 멀티프로세스 운영체계에서의 프로세스 복구 시스템.The tree structure node receives process creation information such as process ID, process priority, and process name, a recovery flag for determining a process to be deleted and regenerated when a specific process fails, and a process request signal for checking the status of a management process by the corresponding process. In the multi-process operating system, characterized in that it comprises a process management information, such as a reception rejection flag for determining whether or not it is possible, a transmission signal number indicating the number of times the failure process has received the status check request signal of the management process. Process recovery system. 제 1항에 있어서,The method of claim 1, 상기 관리 프로세스는, 특정 프로세스에 장애가 발생하는 경우 장애 발생 프로세스에 대응하는 트리 구조 노드의 복구 플래그의 셋팅 값을 확인하여, 상기 플래그 셋팅 값이 '0'인 경우 장애 발생 프로세스와 그 자식 프로세스 및 장애 발생 프로세스의 부모 프로세스와 그 부모 프로세스의 다른 자식 프로세스를 모두 삭제한 후 삭제된 부모 프로세스를 재생성하고, 상기 플래그 셋팅 값이 '1'인 경우 장애 발생 프로세스와 그 자식 프로세스를 삭제한 후 장애가 발생했던 프로세스를 재생성하여, 장애 발생시 삭제한 프로세스들을 재생성하게 하는 것을 특징으로 하는 멀티프로세스 운영체계에서의 프로세스 복구 시스템.The management process checks the setting value of the recovery flag of the tree structure node corresponding to the failing process when a specific process fails, and if the flag setting value is '0', the failing process and its child processes and failures. After deleting both the parent process of the originating process and other child processes of the parent process, regenerate the deleted parent process, and if the flag setting value is '1', the failure process and the child process are deleted after deleting the failing process and its child processes. A process recovery system in a multi-process operating system, wherein the process is regenerated to regenerate deleted processes in the event of a failure. 제 1항 또는 제 4항에 있어서,The method according to claim 1 or 4, 상기 관리 프로세스는, 특정 프로세스에 장애가 발생하는 경우 장애 발생 내역을 보조 기억 장치에 저장하여 디버깅하게 하는 것을 특징으로 하는 멀티프로세스 운영체계에서의 프로세스 복구 시스템The management process is a process recovery system in a multi-process operating system, characterized in that when a failure occurs in a specific process, the failure history is stored in the auxiliary storage device for debugging. 멀티프로세스 운영체계에서 관리 프로세스가 각 프로세스에 상태 확인 요청 신호를 송신한 후 일정 시간내에 정상 상태 신호가 수신되는지 여부를 확인하는 과정과;Confirming whether a steady state signal is received within a predetermined time after the management process sends a status check request signal to each process in the multi-process operating system; 상기 정상 상태 신호가 수신되지 않은 프로세스에 장애가 발생하였음을 감지하고, 데이터베이스에서 장애가 발생한 프로세스에 대응하는 트리 구조 노드의 복구 플래그를 확인하는 과정과;Detecting that a failure has occurred in a process for which the steady state signal is not received, and checking a recovery flag of a tree structure node corresponding to the failed process in a database; 상기 트리 구조 노드의 복구 플래그의 셋팅 값에 따라 장애 복구 범위를 결정하여, 해당되는 프로세스들을 삭제 및 재생성하여 장애를 복구하는 과정을 포함하여 이루어지는 것을 특징으로 하는 멀티프로세스 운영체계에서의 프로세스 복구 방법.And determining a failure recovery range according to a setting value of a recovery flag of the tree structure node, deleting and regenerating corresponding processes, and recovering from the failure. 제 6항에 있어서,The method of claim 6, 상기 상태 확인 요청 신호는, 관리 프로세스가 데이터베이스에서 각 프로세스에 대응하는 트리 구조 노드의 수신 거부 플래그를 확인하여, 상기 상태 확인 요청 신호를 수신할 수 있는 프로세스에만 송신하는 것을 특징으로 하는 멀티프로세스 운영체계에서의 프로세스 복구 방법.The status check request signal is a multi-process operating system, characterized in that the management process checks the rejection flag of the tree structure node corresponding to each process in the database, and transmits only to the process that can receive the status check request signal. To recover a process in Windows. 제 6항에 있어서,The method of claim 6, 상기 프로세스들을 삭제 및 재생성하여 장애를 복구하는 과정은, 장애 발생 프로세스에 대응하는 트리 구조 노드의 복구 플래그의 셋팅 값이 '0'인 경우 장애 발생 프로세스와 그 자식 프로세스 및 장애 발생 프로세스의 부모 프로세스와 그 부모 프로세스의 다른 자식 프로세스를 모두 삭제하는 단계와;The process of recovering from a failure by deleting and regenerating the processes may include: a failure process, its child processes, and a parent process of the failure process when the setting value of the recovery flag of the tree structure node corresponding to the failure process is '0'; Deleting all other child processes of the parent process; 장애 복구를 위하여 상기 삭제된 부모 프로세스를 재생성하여 장애 발생시 삭제한 프로세스들을 재생성하게 하는 단계를 포함하여 이루어지는 것을 특징으로 하는 멀티프로세스 운영체계에서의 프로세스 복구 방법.Regenerating the deleted parent process to recover the failure, thereby regenerating the deleted processes when the failure occurs. 제 6항에 있어서,The method of claim 6, 상기 프로세스들을 삭제 및 재생성하여 장애를 복구하는 과정은, 장애 발생 프로세스에 대응하는 트리 구조 노드의 복구 플래그의 셋팅 값이 '1'인 경우 장애 발생 프로세스와 그 자식 프로세스를 삭제하는 단계와;The process of recovering from a failure by deleting and regenerating the processes may include: deleting the failing process and its child processes when a setting value of a recovery flag of a tree structure node corresponding to the failing process is '1'; 장애 복구를 위하여 상기 삭제된 장애가 발생했던 프로세스를 재생성하여 장애 발생시 삭제한 프로세스들을 재생성하게 하는 단계를 포함하여 이루어지는 것을 특징으로 하는 멀티프로세스 운영체계에서의 프로세스 복구 방법.And regenerating the deleted process to recover the failure, thereby recreating the deleted processes when the failure occurs.
KR10-2001-0081815A 2001-12-20 2001-12-20 System and Method for Process Recovery in Multiprocess Operating System KR100395071B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2001-0081815A KR100395071B1 (en) 2001-12-20 2001-12-20 System and Method for Process Recovery in Multiprocess Operating System

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2001-0081815A KR100395071B1 (en) 2001-12-20 2001-12-20 System and Method for Process Recovery in Multiprocess Operating System

Publications (2)

Publication Number Publication Date
KR20030052015A true KR20030052015A (en) 2003-06-26
KR100395071B1 KR100395071B1 (en) 2003-08-19

Family

ID=29576818

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0081815A KR100395071B1 (en) 2001-12-20 2001-12-20 System and Method for Process Recovery in Multiprocess Operating System

Country Status (1)

Country Link
KR (1) KR100395071B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8984345B2 (en) 2010-10-04 2015-03-17 Samsung Electronics Co., Ltd. Fault restoration apparatus and method for use in a virtual environment

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR940023092A (en) * 1993-03-18 1994-10-22 양승택 Interprocessor Communication Method in a Redundant Multiprocessor System
KR950029968A (en) * 1994-04-12 1995-11-24 양승택 Failover Systems in Multiprocessor Systems
JP3750146B2 (en) * 1994-05-26 2006-03-01 株式会社日立製作所 Horizontally distributed network system
JP3120033B2 (en) * 1996-03-19 2000-12-25 株式会社東芝 Distributed memory multiprocessor system and fault recovery method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8984345B2 (en) 2010-10-04 2015-03-17 Samsung Electronics Co., Ltd. Fault restoration apparatus and method for use in a virtual environment

Also Published As

Publication number Publication date
KR100395071B1 (en) 2003-08-19

Similar Documents

Publication Publication Date Title
US8775387B2 (en) Methods and systems for validating accessibility and currency of replicated data
US7093013B1 (en) High availability system for network elements
JP5531625B2 (en) Communication system and failure detection method thereof
CN101854263B (en) Method, system and management server for analysis processing of network topology
CN111309515A (en) Disaster recovery control method, device and system
JP2003032253A (en) In-advance countermeasure on-line diagnosis in manageable network
KR100395071B1 (en) System and Method for Process Recovery in Multiprocess Operating System
CN111078454A (en) Cloud platform configuration recovery method and device
Morgan et al. A survey of methods for improving computer network reliability and availability
Cisco Informational Traps
Cisco Informational Traps
Cisco Informational Traps
Cisco Informational Traps
Cisco Informational Traps
Cisco Informational Traps
Cisco Informational Traps
Cisco Operational Traps
Cisco Informational Traps
Cisco Informational Traps
JP3019789B2 (en) Monitoring device
JPH1127266A (en) Structural information management method for network management device and management object device
US8181162B2 (en) Manager component for checkpoint procedures
US20050278578A1 (en) Manager component that causes first software component to obtain information from second software component
CN111682964B (en) Rapid recovery method for combined Web service failure
CN100401260C (en) Method for automatically overcoming a failure in an eml server and computer product adapted to perform such a method

Legal Events

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

Payment date: 20130716

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20140715

Year of fee payment: 12

LAPS Lapse due to unpaid annual fee