KR102057524B1 - 위성 관제 시스템이 수행하는 실행 시점 복원 방법 - Google Patents

위성 관제 시스템이 수행하는 실행 시점 복원 방법 Download PDF

Info

Publication number
KR102057524B1
KR102057524B1 KR1020160168478A KR20160168478A KR102057524B1 KR 102057524 B1 KR102057524 B1 KR 102057524B1 KR 1020160168478 A KR1020160168478 A KR 1020160168478A KR 20160168478 A KR20160168478 A KR 20160168478A KR 102057524 B1 KR102057524 B1 KR 102057524B1
Authority
KR
South Korea
Prior art keywords
satellite
procedure information
information
control system
operation procedure
Prior art date
Application number
KR1020160168478A
Other languages
English (en)
Other versions
KR20180067093A (ko
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 KR1020160168478A priority Critical patent/KR102057524B1/ko
Publication of KR20180067093A publication Critical patent/KR20180067093A/ko
Application granted granted Critical
Publication of KR102057524B1 publication Critical patent/KR102057524B1/ko

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64GCOSMONAUTICS; VEHICLES OR EQUIPMENT THEREFOR
    • B64G3/00Observing or tracking cosmonautic vehicles
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64GCOSMONAUTICS; VEHICLES OR EQUIPMENT THEREFOR
    • B64G5/00Ground equipment for vehicles, e.g. starting towers, fuelling arrangements
    • 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/1446Point-in-time backing up or restoration of persistent data

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Remote Sensing (AREA)
  • Astronomy & Astrophysics (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Theoretical Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Radio Relay Systems (AREA)

Abstract

본 발명은 위성 관제 시스템이 수행하는 실행 시점 복원 방법에 관한 것이다.
실행 시점 복원 방법은 다중의 위성 운영 절차 정보의 실행을 통한 위성 운영 중에 시스템 크래시가 발생할 경우, 위성 관제 시스템의 복원 후 시스템 크래시가 발생한 시점으로부터 위성 운용의 흐름을 연계하기 위해 시스템 크래시의 발생 시점에 대응하는 위성 관제 시스템의 위성 운용에 대한 실행 시점을 복원한다.

Description

위성 관제 시스템이 수행하는 실행 시점 복원 방법{EXECUTION POINT RESTORATION MTEHOD FOR PERFORMING THE SATELLITE CONTROL SYSTEM}
아래의 설명은 위성 관제 시스템이 수행하는 실행 시점 복원 방법으로 구체적으로는 다중의 위성 운용 절차 정보가 실행되는 환경에서 발생 가능한 시스템 오류로부터 위성 운용의 연속성을 보장하기 위한 실행 시점 복원 방법에 관한 것이다.
위성 관제 시스템은 위성 운용 절차서(FOP: Flight Operation Procedure)를 활용하여 인공 위성을 운용한다. 위성 운용 절차서는 위성운용 흐름을 미리 규정하는 스크립트로서 이의 실행을 통하여 운영자 개입을 최소화하고, 운영의 신뢰도를 높일 수 있다는 장점이 있다.
위성 관제 시스템은 단일 형태의 위성 운용 절차서를 실행하여 인공 위성을 운용하였다. 최근에는 인공 위성의 운용 방법이 복잡해짐에 따라 다중 형태의 위성 운용 절차서(Multi-FOP)의 실행이 요구되고 있다. 예를 들어, 인공 위성을 운용하기 위해 3 개의 위성 운용 절차서가 필요하다고 가정할 때, 위성 운용 절차서 A는 인공 위성의 운용과 관련된 필요에 의해 위성 운용 절차서 B를 호출하고, 위성 운용 절차서 B는 인공 위성의 운용과 관련된 필요에 의해 위성 운용 절차서 C를 호출하는 형태로 다중 형태의 위성 운용 절차서(Multi-FOP)의 실행이 요구되고 있다.
이러한 다중 형태의 위성 운용 절차서는 위성 관제 시스템을 관리하는 운영자가 모니터링하는 FOP 실행 화면 상에 표시될 수 있으며, 위성 운용 절차서 A, 위성 운용 절차서 B 및 위성 운용 절차서 C는 서로 간의 호출 관계에 기초하여 동시에 실행 가능하다.
이 때, 동시에 실행 중이 위성 운용 절차서 A, 위성 운용 절차서 B 및 위성 운용 절차서 C 중 어느 하나의 위성 운용 절차서에 시스템 트래시가 발생하는 경우, 위성 관제 시스템은 3개의 위성 운용 절차서에 따른 자동 복구가 가능해야 한다.
그러나, 기존의 위성 관제 시스템은 시스템 트래시가 발생한 위성 운용 절차서 또는 시스템 트래시의 발생 여부를 판단할 뿐, 다중 형태의 위성 운용 절차서 전반에 걸친 시스템 트래시의 발생 시점을 고려하지 않는다.
따라서, 시스템 크래시 발생에 따른 다중 형태의 위성 운용 절차서 각각에 대한 시스템 트래시의 발생 시점을 추적하고, 이를 통해 인공 과제 시스템의 수행 시점을 자동적으로 복구할 수 있는 방법이 필요하다.
본 발명은 다중의 위성 운영 절차 정보의 실행을 통한 위성 운영 중에 시스템 크래시가 발생할 경우, 위성 관제 시스템의 복원 후 시스템 크래시가 발생한 시점으로부터 자동으로 위성 운영을 재개할 수 있는 실행 시점 복원 방법을 제공할 수 있다.
일실시예에 따른 위성 관제 시스템이 수행하는 실행 시점 복원 방법은 다중의 위성 운용 절차 정보(FOP: Flight Operation Procedure)가 실행되는 상기 위성 관제 시스템의 위성 운용 중에 시스템 크래시(System Crash)가 발생하였는지 여부를 확인하는 단계; 상기 시스템 크래시가 발생한 경우, 상기 다중의 위성 운용 절차 정보 각각에 대응하여 상기 시스템 크래시의 발생 시점에 대한 시점 정보(Asrun)를 저장하는 단계; 상기 시스템 크래시에 의한 시스템 복구를 수행한 후, 상기 저장된 시점 정보를 로드하는 단계; 및 상기 로드된 시점 정보에 기초하여 상기 시스템 크래시의 발생 시점에 대응하는 상기 위성 관제 시스템의 위성 운용에 대한 실행 시점을 복원하는 단계를 포함할 수 있다.
일실시예에 따른 다중의 위성 운용 절차 정보는 상기 위성 관제 시스템의 위성 운용의 흐름을 기반으로 위성 운용 절차 정보 간에 호출 관계를 포함할 수 있다.
일실시예에 따른 시점 정보를 저장하는 단계는 상기 위성 운용 절차 정보 간에 호출 관계에 기초하여 상기 시스템 크래시의 발생 시점에 대응하는 각 위성 운용 절차 정보에서 1) 실행 대기 중인 호출 구문이거나, 또는 2) 실행 완료되지 않은 호출 구문에 대한 시점 정보를 저장할 수 있다.
일실시예에 따른 실행 시점을 복원하는 단계는 상기 호출 관계에 기초한 최상위의 위성 운용 절차 정보의 시점 정보를 통해 하위의 위성 운용 절차 정보와 연계하여 상기 위성 관제 시스템의 위성 운용에 대한 실행 시점을 복원할 수 있다.
일실시예에 따른 실행 시점을 복원하는 단계는 상기 하위의 위성 운용 절차 정보의 시점 정보로부터 상기 위성 관제 시스템의 위성 운용을 실행하기 위한 실행 시점을 복원할 수 있다.
일실시예에 따른 실행 시점을 복원하는 단계는 상기 하위의 위성 운용 절차 정보의 실행이 완료되면, 상기 하위의 위성 운용 절차 정보에 대한 호출 구문이 리턴되어 연속적으로 상기 위성 관제 시스템의 위성 운용이 실행될 수 있다.
본 발명의 일실시예에 따른 위성 관제 시스템이 수행하는 실행 시점 복원 방법은 다중의 위성 운용 절차 정보를 실행하는 도중에 발생하는 시스템 크래시 등의 문제로부터 위성 관제 시스템을 복구한 후 위성 운용의 흐름을 연계함으로써, 1) 위성 운용의 안정성 확보 2) 운영자의 휴먼에러 방지를 위하여 유용하게 사용될 수 있다.
도 1은 일실시예에 따른 위성 관제 시스템과 인공 위성 간의 구성도를 도시한 도면이다.
도 2는 일실시예에 따른 다중의 위성 운용 절차 정보를 이용한 위성 관제 시스템의 실행 환경을 설명하기 위한 도면이다.
도 3은 일실시예에 따른 다중의 위성 운용 절차 정보에 기초한 시점 정보 간의 관계 체계를 나타낸 도면이다.
도 4는 일실시예에 따른 실행 시점 복원 방법을 설명하기 위한 흐름도이다.
이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 일실시예에 따른 위성 관제 시스템과 인공 위성 간의 구성도를 도시한 도면이다.
도 1을 참고하면, 위성 관제 시스템(101)은 인공 위성(102)을 운용하기 위해 지상에 위치하며, 인공 위성(102)으로 원격 명령(TC: Telecommand)을 전달할 수 있다. 그리고, 위성 관제 시스템(101)은 인공 위성(102)으로부터 원격 명령에 대응하는 원격 결과(TM: Telemetry)를 수신할 수 있다.
여기서, 위성 관제 시스템(101)은 관리자에 의해 수동으로 원격 명령과 원격 결과가 송수신되도록 구동될 수 있다. 이에 최근에는 인공 위성(102)을 운용하기 위한 운용 과정 및 운용 개념이 복잡해짐에 따라 인공 위성을 운용하기 위해 스크립트 형태로 위성 운용의 절차가 미리 기술되고, 이를 실행하는 엔진을 통해 위성을 관제하는 자동과 기술을 활용할 수 있다.
일례로, 위성 운용의 절차는 인공 위성의 버스에서 구동이 가능한 고유한 언어를 통해 제작되고, 인공 위성의 절차를 기술하는 고유한 언어는 분기문, 루프문, 각종 연산문 등을 포함하는 프로그래밍 언어를 통해 제작될 수 있다. 또한, 프로그래밍 언어는 관리자의 가독성(readability)을 고려하여 프로그래밍 지식이 없는 위성운영 인력들이 접근하기 용이할 수 있다.
위에서 상술한 내용에 기초하여 위성 관제 시스템(101)은 인공 위성의 운용을 보다 자동화하기 위해 위성 운용 절차 정보(FOP: Flight Operation Procedure)를 이용하여 인공 위성과의 원격 명령과 원격 결과를 송수신할 수 있다. 즉, 위성 운용 절차 정보는 복잡해진 인공 위성의 운용 과정 및 운용 개념에 기초하여 프로그램 언어 기반의 스크립트 형태로 기술된 인공 위성의 운용 순서에 관한 정보일 수 있다.
위성 관제 시스템(101)은 인용 위성을 운영하기 위한 절차가 복잡해짐에 따라 단일 형태의 위성 운용 절차 정보보다는 다중 형태의 위성 운용 절차 정보를 활용하여 인공 위성을 운용할 수 있다. 이 때, 위성 관제 시스템(101)은 다중 형태의 위성 운용 절차 정보에 기초해 시스템이 실행되는 도중에 예기치 않은 문제가 발생될 수 있다. 일례로, 위성 관제 시스템(101)은 다중 형태의 위성 운용 절차 정보에 기초해 시스템이 실행되는 도중에 시스템으로의 전원 차단 등의 다양한 문제가 발생될 수 있다.
이러한 경우, 위성 관제 시스템(101)은 시스템 내 문제가 발생한 지점 또는 시점으로부터 정확히 재 실행이 가능해야 하며, 그렇지 않을 경우, 인공 위성으로 동일한 원격 명령이 중복으로 전송되거나, 특정한 원격 명령이 인공위성으로 불 전송 등의 문제가 야기될 수 있다.
따라서, 본 발명의 위성 관제 시스템(101)은 다중의 위성 운용 절차 정보가 실행되는 환경에서 발생 가능한 시스템 오류 즉, 시스템 크래시(System Crash)로부터 인공 위성에 대한 운용 흐름을 연계할 수 있는 방안을 제안할 수 있다. 구체적으로, 위성 관제 시스템(101)은 다중의 위성 운용 절차 정보가 실행되는 위성 운용 중에 시스템 크래시가 발생하였는지 여부를 확인할 수 있다. 위성 관제 시스템(101)은 시스템 크래시가 발생한 경우, 다중의 위성 운용 절차 정보 각각에 대응하여 시스템 크래시의 발생 시점에 대한 시점 정보(Asrun)를 저장할 수 있다.
그리고, 위성 관제 시스템(101)은 시스템 크래시에 의한 시스템 복구를 수행한 후, 상기 저장된 시점 정보를 로드할 수 있다. 위성 관제 시스템(101)은 로드된 시점 정보에 기초하여 상기 시스템 크래시의 발생 시점에 대응하는 상기 위성 관제 시스템의 위성 운용에 대한 실행 시점을 복원할 수 있다.
결국, 위성 관제 시스템(101)은 위성 운용 중에 발생한 시스템 크래시에 대한 시점 정보에 대응하여 시스템 복구 이후에 위성 관제 시스템의 위성 운용에 대한 실행 시점을 복원함으로써, 인공 위성에 대한 위성 운용의 연속성을 보장할 수 있다.
도 2는 일실시예에 따른 다중의 위성 운용 절차 정보를 이용한 위성 관제 시스템의 실행 환경을 설명하기 위한 도면이다.
본 발명의 위성 관제 시스템은 인용 위성을 운영하기 위한 절차가 복잡해짐에 따라 다중 형태의 위성 운용 절차 정보(Multi-FOP)를 활용하여 인공 위성이 운용될 수 있다. 여기서, 도 2를 살펴보면, 위성 관제 시스템이 다중 형태의 위성 운용 절차 정보를 이용하는 경우, 위성 운용 절차 정보 간에는 다음과 같은 호출 관계를 나타낼 수 있다.
다시 말해, 다중 형태의 위성 운용 절차 정보는 위성 운용 절차 정보 간에 invoke를 통해 수행될 수 있으며, 최상위의 위성 운용 절차 정보를 mother 위성 운용 절차 정보라 정의할 수 있다. 여기서, mother 위성 운용 절차 정보는 필요에 따라 child 위성 운용 절차 정보를 invoke 하게 되며, child 위성 운용 절차 정보 또한, 다른 child 위성 운용 절차 정보를 invoke 할 수 있다. 이때 최하위의 위성 운용 절차 정보를 leaf 위성 운용 절차 정보라고 정의할 수 있다.
일례로, 위성 운용 절차 정보 A(201)는 최상위의 위성 운용 절차 정보인 mother 위성 운용 절차 정보로, 인공 위성의 운용과 관련된 필요에 의해 위성 운용 절차 정보 B(202)를 호출할 수 있다. 위성 운용 절차 정보 B는 mother 위성 운용 절차 정보에 의해 호출된 child 위성 운용 절차 정보일 수 있으며, 인공 위성의 운용과 관련된 필요에 의해 또 다른 child 위성 운용 절차 정보인 위성 운용 절차 정보 C(203)를 호출할 수 있다. 그리고, 위성 운용 절차 정보 C(203)는 최하위의 위성 운용 절차 정보인 leaf 위성 운용 절차 정보일 수 있다. 또한, 위성 운용 절차 정보 A(201), 위성 운용 절차 정보 B(202) 및 위성 운용 절차 정보 C(203)는 서로 간의 호출 관계에 기초하여 위성 관제 시스템 내 동시에 실행이 가능할 수 있다.
여기서, 다중 형태의 위성 운용 절차 정보 간의 호출 관계를 정의하기 위해, 각각의 위성 운용 절차 정보는 서로 다른 위성 운용 절차 정보를 호출하기 위한 호출 구문(204)을 포함할 수 있다. 일례로, 위성 운용 절차 정보 A(201)는 필요에 의해 운용 절차 정보 B(202)를 호출하기 위한 invoke(B)로 정의된 호출 구문(204)을 포함할 수 있으며, 위성 운용 절차 정보 B(202)는 필요에 의해 위성 운용 절차 정보 C(203)를 호출하기 위한 invoke(C)로 정의된 호출 구문(205)을 포함할 수 있다.
그리고, 위성 관제 시스템은 위와 같은 호출 관계에 기초하여 위성 운용 절차 정보 간 호출에 따른 인공 위성에 관한 위성 운용을 실행할 수 있다. 다시 말해, 위성 관제 시스템은 다중 형태의 위성 운용 절차 정보 간의 호출 관계에 기초하여 최상위의 위성 운용 절차 정보를 시작으로, 위성 운용 절차 정보에 정의된 원격 명령에 따라 인공 위성에 관한 위성 운용을 실행할 수 있다.
그리고, 위성 운용 절차 정보에 스크립트를 통해 호출 구문(204)이 정의된 경우, 위성 관제 시스템은 호출 구문(204)에 정의된 위성 운용 절차 정보를 호출하여, 호출된 위성 운용 절차 정보를 이용해 인공 위성에 대한 위성 운용을 수행할 수 있다. 즉, 위성 관제 시스템은 위성 운용 절차 정보 간의 호출 관계에 기초하여 위성 운용에 대한 제어를 수행할 수 있다.
일례로, 본 발명에서 제안하는 다중 형태의 위성 운용 절차 정보 간에는 1) 위성 운용 절차 정보 A(201)에서 위성 운용 절차 정보 B(202)를 호출하고, 2) 위성 운용 절차 정보 B(202)에서 위성 운용 절차 정보 C(203)를 호출하는 형태의 호출 관계가 이루어 졌다고 가정할 수 있다. 이에, 위성 관제 시스템은 위성 운용 절차 정보 A(201)에 의해 인공 위성이 운용되다가 위성 운용 절차 정보 A(201) 내 정의된 호출 구문(204)에 따라 위성 운용 절차 정보 B(202)를 호출 함으로써, 인공 위성을 제어하기 위한 제어권이 운용 절차 정보 A(201)에서 위성 운용 절차 정보 B(202)로 이동될 수 있다.
그리고, 위성 관제 시스템은 인공 위성을 제어하기 위한 제어권이 위성 운용 절차 정보 B(202)으로 이동 됨에 따라 위성 운용 절차 정보 B(202)에 의해 인공 위성이 운용될 수 있다. 여기서, 위성 운용 절차 정보 A(201)는 호출 구문(201)에 의해 호출된 위성 운용 절차 정보 B(202)로부터 제어권이 복귀되지 않았음에 위성 운용 절차 정보 B(202)에서의 실행이 완료될 때까지 호출 구문(204)에서 대기하고 있는 상태일 수 있다.
위성 관제 시스템은 위성 운용 절차 정보 B(202)에 의해 인공 위성이 운용되다가 위성 운용 절차 정보 B(202) 내 정의된 호출 구문(204)에 따라 위성 운용 절차 정보 C(203)를 호출 함으로써, 인공 위성을 제어하기 위한 제어권이 위성 운용 절차 정보 B(202)에서 위성 운용 절차 정보 C(203)로 이동될 수 있다. 위성 운용 절차 정보 B(202)는 위성 운용 절차 정보 A(201)와 마찬가지로, 위성 운용 절차 정보 C(203)에서의 실행이 완료될 때까지 호출 구문(205)에서 대기하고 있는 상태일 수 있다.
위성 관제 시스템은 위성 운용 절차 정보 C(203)에 의해 인공 위성에 대한 위성 운용을 수행할 수 있으며, 시스템이 실행되는 도중에 시스템으로의 전원 차단 등의 시스템 크래시(206)가 발생될 수 있다. 이에 위성 관제 시스템은 위성 운용 중에 발생한 시스템 크래시에 대한 시점 정보에 대응하여 인공 위성에 대한 위성 운용의 연속성을 보장하기 위해, 각각의 위성 운용 절차 정보에 대응하여 시스템 크래시의 발생 시점에 대한 시점 정보를 저장할 수 있다. 이에, 시점 정보는 다음의 정보를 포함할 수 있다.
1) 호출 관계
위성 관제 시스템은 위성 운용 절차 정보 간에 호출이 이루어진 시점이 기록 및 저장할 수 있다. 다시 말해, 위성 관제 시스템은 위성 운용 절차 정보 A(201) -> 위성 운용 절차 정보 B(202) -> 위성 운용 절차 정보 C(203)로의 invoke가 이루어졌다는 기록이 저장될 수 있다.
2) 호출 구문
위성 관제 시스템은 시스템 크래시의 발생 시점에 대응하는 각 위성 운용 절차 정보에서 1) 실행 대기 중인 호출 구문이거나, 또는 2) 실행 완료되지 않은 호출 구문에 대한 시점 정보를 저장할 수 있다. 다시 말해, 위성 관제 시스템은 위성 운용 절차 정보 A(201)에 대하여 호출 구문(204)인 invoke(B) 구문에서 멈추어 대기하고 있는 상태임을 저장할 수 있다. 위성 관제 시스템은 위성 운용 절차 정보 B(202)에 대하여 호출 구문(205)인 invoke(C) 구문에서 멈추어 대기하고 있는 상태임을 저장할 수 있다. 그리고, 위성 관제 시스템은 위성 운용 절차 정보 C(203)에 대하여 시스템 크래시가 발생하였음을 저장할 수 있으며, 이 때, 위성 관제 시스템은 시스템 크래시가 발생한 위성 운용 절차 정보 C(203)에 대하여 crash point 즉 크래시 발생 지점을 추가적으로 저장할 수 있다.
그리고, 이러한 위성 운용 절차 정보들 각각은 실시간으로 시점 정보(asrun)에 해당하는 파일로 저장될 수 있다.
이 때, 다중 형태의 위성 운용 절차 정보가 수행 중이라 할지라도, 실제적으로 제어권을 갖는 위성 운용 절차 정보는 항상 최하위의 위성 운용 절차 정보인 leaf 위성 운용 절차 정보일 수 있다. 다시 말해, leaf 위성 운용 절차 정보가 아닌 위성 운용 절차 정보는 위에서도 설명한 바와 같이 자신이 invoke한 child 위성 운용 절차 정보가 끝날 때까지 호출 문구(invoke 구문)에서 대기를 하게 되기 때문이다. 이러한 상황을 활용하면 본 발명은 시점 정보를 통해 다음과 같은 복원 시점을 정의할 수 있다.
구체적으로 본 발명은 최하위의 위성 운용 절차 정보가 아닌 경우, 현재 실행중인 호출 구문으로 복구되어야 한다. 다시 말해, 본 발명은 최하위의 위성 운용 절차 정보가 아닌 위성 운용 절차 정보 내에서 실행 중인 호출 구문이 실행 완료되지 않은 상태라 할 지라도 호출 구문에서부터 복구가 시작될 수 있다.
또한, 본 발명은 최하위의 위성 운용 절차 정보인 경우, 시스템 크래쉬 직전에 기록된 구문에서 복구가 시작될 수 있다.
즉, 본 발명은 위의 조건에 기초하여 시스템 크래시 발생한 위성 운용 절차 정보에 기초하여 위성 운용의 흐름을 연계함으로써, 1) 위성 운용의 안정성 확보 2) 운영자의 휴먼에러 방지를 위하여 유용하게 사용될 수 있다.
도 3은 일실시예에 따른 다중의 위성 운용 절차 정보에 기초한 시점 정보 간의 관계 체계를 나타낸 도면이다.
도 3을 참고하면, 위성 관제 시스템은 시스템 크래시가 발생도기 직전에서의 각각의 위성 운용 절차 정보에 대한 시점 정보를 별도로 저장할 수 있다. 여기서, 위성 운용 절차 정보 간에는 호출 관계(또는 호출 체계, hierarchy)가 저장되어 있기 때문에 실제적으로 시스템 크래시의 복구 시 관리자는 최상위의 위성 운용 절차 정보인 mother 위성 운용 절차 정보의 시점 정보를 로드할 수 있다.
다시 말해, 위성 관제 시스템은 최상위의 위성 운용 절차 정보인 mother 위성 운용 절차 정보의 시점 정보로부터 child 이하 위성 운용 절차 정보의 시점 정보가 탐색될 수 있다. 그리고, 이러한 시점 정보 간에 호출 관계는 도 3에 도시된 바와 같이 서브 폴더 형식으로 저장되게 된다.
일례로, 위성 관제 시스템을 관리하는 관리자는 Asrun_FOP_A(301)만 로드한다고 할 지라도, 하위에 있는 Asrun_FOP_B(302) 또는 Asrun_FOP_C(303) 까지 자동으로 로드됨에 따라 인공 위성을 운용하기 위한 실행 준비 상태가 될 수 있다.
도 4는 일실시예에 따른 실행 시점 복원 방법을 설명하기 위한 흐름도이다.
단계(401)에서 위성 관제 시스템은 다중의 위성 운용 절차 정보가 실행되는 위성 관제 시스템의 위성 운용 중에 시스템 크래시가 발생하였는지 여부를 확인할 수 있다. 여기서, 위성 운용 절차 정보는 위성 관제 시스템의 위성 운용의 흐름을 기반으로 위성 운용 절차 정보 간에 호출 관계를 포함할 수 있다.
단계(402)에서 위성 관제 시스템은 시스템 크래시가 발생한 경우, 다중의 위성 운용 절차 정보 각각에 대응하여 시스템 크래시의 발생 시점에 대한 시점 정보(Asrun)를 저장할 수 있다. 이 때, 위성 관제 시스템은 위성 운용 절차 정보 간에 호출 관계에 기초하여 시스템 크래시의 발생 시점에 대응하는 각 위성 운용 절차 정보에서 1) 실행 대기 중인 호출 구문이거나, 또는 2) 실행 완료되지 않은 호출 구문에 대한 시점 정보를 저장할 수 있다.
단계(403)에서 위성 관제 시스템은 시스템 크래시에 의한 시스템 복구를 수행한 후, 저장된 시점 정보를 로드할 수 있다. 이 때, 위성 관제 시스템은 위성 운용 절차 정보 간의 호출 관계를 고려하여 최상위의 위성 운용 절차 정보인 mother 위성 운용 절차 정보의 시점 정보를 로드할 수 있다.
단계(404)에서 위성 관제 시스템은 로드된 시점 정보에 기초하여 시스템 크래시의 발생 시점에 대응하는 위성 관제 시스템의 위성 운용에 대한 실행 시점을 복원할 수 있다. 구체적으로, 위성 관제 시스템은 호출 관계에 기초한 최상위의 위성 운용 절차 정보의 시점 정보를 통해 하위의 위성 운용 절차 정보와 연계하여 위성 관제 시스템의 위성 운용에 대한 실행 시점을 복원할 수 있다.
여기서, 위성 관제 시스템은 시점 정보를 활용하여 최하위의 위성 운용 절차 정보인 leaf 위성 운용 절차 정보로부터 실행이 시작될 수 있다. 다시 말해, 도 2의 호출 관계를 고려하면, 위성 관제 시스템은 시스템 크래시에 따른 위성 운용의 흐름을 연계함에 있어, 위성 운용 절차 정보 C(203)의 crash point 로부터 수행이 시작되어야 한다.
다만, 위성 운용 절차 정보 A(201)와 위성 운용 절차 정보 B(202)는 시스템 크래시가 발생할 당시의 호출 구문(204), (205)인 invoke 포인트에서 대기하고 있어야 한다. 그리고, Leaf 위성 운용 절차 정보, 즉, 위성 운용 절차 정보 C(203)의 수행이 끝나면 호출 구문(205)에서 대기 중이던 위성 운용 절차 정보 B(202)가 제어를 넘겨받아 위성 운용을 위한 수행을 진행할 수 있다. 위성 운용 절차 정보 B(202)의 수행이 끝나면 역시 호출 구문(205)에서 대기 중이던 위성 운용 절차 정보 A(201)가 제어를 넘겨받아 위성 운용을 위한 수행을 진행할 수 있다. 이후, 위성 운용 절차 정보 A(201)는 최상위의 mother 위성 운용 절차 정보이므로 위성 운용 절차 정보 A의 종료를 통해 전체 다중 위성 운용 절차 정보 의 수행이 종료될 수 있다.
실시예들에서 설명된 구성요소들은 하나 이상의 DSP (Digital Signal Processor), 프로세서 (Processor), 컨트롤러 (Controller), ASIC (Application Specific Integrated Circuit), FPGA (Field Programmable Gate Array)와 같은 프로그래머블 논리 소자 (Programmable Logic Element), 다른 전자 기기들 및 이것들의 조합 중 하나 이상을 포함하는 하드웨어 구성 요소들(hardware componests)에 의해 구현될 수 있다. 실시예들에서 설명된 기능들(functions) 또는 프로세스들(processes) 중 적어도 일부는 소프트웨어(software)에 의해 구현될 수 있고, 해당 소프트웨어는 기록 매체(recording medium)에 기록될 수 있다. 실시예들에서 설명된 구성요소들, 기능들 및 프로세스들은 하드웨어와 소프트웨어의 조합에 의해 구현될 수 있다
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운용 체제(OS) 및 상기 운용 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
101: 위성 관제 시스템
102: 인공 위성

Claims (7)

  1. 위성 관제 시스템이 수행하는 실행 시점 복원 방법에 있어서,
    인공 위성과의 원격 명령 및 원격 결과를 자동으로 송수신하기 위한 다중의 위성 운용 절차 정보를 통해 상기 인공 위성을 운용하는 과정에서 상기 위성 관제 시스템에 발생 가능한 시스템 오류인 시스템 크래시(System Crash)가 발생하였는지 여부를 확인하는 단계;
    상기 시스템 크래시가 발생한 경우, 상기 다중의 위성 운용 절차 정보 각각에 대응하여 상기 시스템 크래시의 발생 시점에 대한 시점 정보(Asrun)를 저장하는 단계;
    상기 시스템 크래시에 의한 상기 위성 관제 시스템의 시스템 복구를 수행한 후, 상기 저장된 시점 정보를 로드하는 단계; 및
    상기 로드된 시점 정보에 기초하여 상기 시스템 크래시의 발생 시점에 대응하는 상기 위성 관제 시스템의 위성 운용에 대한 실행 시점을 복원하는 단계
    를 포함하는 실행 시점 복원 방법.
  2. 제1항에 있어서,
    상기 다중의 위성 운용 절차 정보는,
    상기 위성 관제 시스템의 위성 운용의 흐름을 기반으로 위성 운용 절차 정보 간에 호출이 이루어진 시점이 기록된 관계를 나타내는 호출 관계를 포함하는 실행 시점 복원 방법.
  3. 제2항에 있어서,
    상기 시점 정보를 저장하는 단계는,
    상기 위성 운용 절차 정보 간에 호출 관계에 기초하여 상기 시스템 크래시의 발생 시점에 대응하는 각 위성 운용 절차 정보에서 1) 실행 대기 중인 호출 구문이거나, 또는 2) 실행 완료되지 않은 호출 구문에 대한 시점 정보를 저장하는 실행 시점 복원 방법.
  4. 제1항에 있어서,
    상기 저장된 시점 정보를 로드하는 단계는,
    상기 위성 운용 절차 정보 간의 호출 관계를 고려하여 최상위의 위성 운용 절차 정보의 시점 정보를 로드하는 실행 시점 복원 방법.
  5. 제2항에 있어서,
    상기 실행 시점을 복원하는 단계는,
    상기 호출 관계에 기초한 최상위의 위성 운용 절차 정보의 시점 정보를 통해 하위의 위성 운용 절차 정보와 연계하여 상기 위성 관제 시스템의 위성 운용에 대한 실행 시점을 복원하는 실행 시점 복원 방법.
  6. 제5항에 있어서,
    상기 실행 시점을 복원하는 단계는,
    상기 하위의 위성 운용 절차 정보의 시점 정보로부터 상기 위성 관제 시스템의 위성 운용을 실행하기 위한 실행 시점을 복원하는 실행 시점 복원 방법.
  7. 제5항에 있어서,
    상기 실행 시점을 복원하는 단계는,
    상기 하위의 위성 운용 절차 정보의 실행이 완료되면, 상기 하위의 위성 운용 절차 정보에 대한 호출 구문이 리턴되어 연속적으로 상기 위성 관제 시스템의 위성 운용이 실행되는 실행 시점 복원 방법.
KR1020160168478A 2016-12-12 2016-12-12 위성 관제 시스템이 수행하는 실행 시점 복원 방법 KR102057524B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160168478A KR102057524B1 (ko) 2016-12-12 2016-12-12 위성 관제 시스템이 수행하는 실행 시점 복원 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160168478A KR102057524B1 (ko) 2016-12-12 2016-12-12 위성 관제 시스템이 수행하는 실행 시점 복원 방법

Publications (2)

Publication Number Publication Date
KR20180067093A KR20180067093A (ko) 2018-06-20
KR102057524B1 true KR102057524B1 (ko) 2019-12-19

Family

ID=62769725

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160168478A KR102057524B1 (ko) 2016-12-12 2016-12-12 위성 관제 시스템이 수행하는 실행 시점 복원 방법

Country Status (1)

Country Link
KR (1) KR102057524B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101394630B1 (ko) 2012-10-31 2014-05-13 한국항공우주연구원 실행시간 순서에 따른 위성명령수행 자동화 시스템 및 방법
KR101663331B1 (ko) 2008-10-28 2016-10-06 탈레스 다양한 제어불가 시스템 영향에 의한 간섭에 영향을 받는 시간 변동을 갖는 신호값의 예측 에러들을 정정하는 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101663331B1 (ko) 2008-10-28 2016-10-06 탈레스 다양한 제어불가 시스템 영향에 의한 간섭에 영향을 받는 시간 변동을 갖는 신호값의 예측 에러들을 정정하는 방법
KR101394630B1 (ko) 2012-10-31 2014-05-13 한국항공우주연구원 실행시간 순서에 따른 위성명령수행 자동화 시스템 및 방법

Also Published As

Publication number Publication date
KR20180067093A (ko) 2018-06-20

Similar Documents

Publication Publication Date Title
US9696988B2 (en) Upgrade processing method, apparatus and system for CPLD
US7516361B2 (en) Method for automatic checkpoint of system and application software
US8473783B2 (en) Fault tolerance in distributed systems
US10725674B2 (en) Providing service address space for diagnostics collection
US9477576B2 (en) Using application state data and additional code to resolve deadlocks
US7962736B1 (en) Interactive pre-OS firmware update with repeated disabling of interrupts
US10509646B2 (en) Software update rollbacks using file system volume snapshots
US10949307B2 (en) Executing computer instruction including asynchronous operation
US9164846B2 (en) Restarting a software system
US11983519B2 (en) Abort installation of firmware bundles
US7865883B1 (en) Parallel and asynchronous debugger and debugging method for multi-threaded programs
US9852028B2 (en) Managing a computing system crash
KR102057524B1 (ko) 위성 관제 시스템이 수행하는 실행 시점 복원 방법
US10733065B2 (en) Recovery of local resource
CN106933604A (zh) 一种***升级方法及装置
CN109558179A (zh) 程序代码在线加载方法、程序代码在线升级方法及***
US9442710B2 (en) Method for using shared installation session environment to duplicate installs
Eickhoff et al. Onboard Software Dynamic Architecture

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right