KR100231775B1 - 이동통신 교환기의 응용프로그램 에러 처리 및 복구 방법 - Google Patents

이동통신 교환기의 응용프로그램 에러 처리 및 복구 방법 Download PDF

Info

Publication number
KR100231775B1
KR100231775B1 KR1019970053848A KR19970053848A KR100231775B1 KR 100231775 B1 KR100231775 B1 KR 100231775B1 KR 1019970053848 A KR1019970053848 A KR 1019970053848A KR 19970053848 A KR19970053848 A KR 19970053848A KR 100231775 B1 KR100231775 B1 KR 100231775B1
Authority
KR
South Korea
Prior art keywords
damaged
text area
program
checksum value
error
Prior art date
Application number
KR1019970053848A
Other languages
English (en)
Other versions
KR19990032731A (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 KR1019970053848A priority Critical patent/KR100231775B1/ko
Publication of KR19990032731A publication Critical patent/KR19990032731A/ko
Application granted granted Critical
Publication of KR100231775B1 publication Critical patent/KR100231775B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q3/00Selecting arrangements
    • H04Q3/42Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker
    • H04Q3/54Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised
    • H04Q3/545Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised using a stored programme
    • H04Q3/54575Software application
    • H04Q3/54591Supervision, e.g. fault localisation, traffic measurements, avoiding errors, failure recovery, monitoring, statistical analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q3/00Selecting arrangements
    • H04Q3/0016Arrangements providing connection between exchanges
    • H04Q3/0062Provisions for network management
    • H04Q3/0087Network testing or monitoring arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/05Software aspects

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Retry When Errors Occur (AREA)

Abstract

본 발명은 이동통신 교환기 등 실시간 운영 체제를 사용하는 시스템에서 항상 실행되어야 하는 중요한 기능을 수행하는 응용 프로그램의 에러 처리 및 복구 방법에 관한 것으로, 특히 응용 프로그램의 자식 프로세스를 생성한 아웃모스트 프로세스를 종료시키지 않고 계속 실행시켜서, 자식 프로세스가 에러 발생으로 인해 비정상적으로 종료되었을 경우 아웃모스트 프로세스에서 즉각적으로 이를 감지하고 비정상적으로 종료된 자식 프로세스를 재실행시키도록 하여 전체 시스템의 동작에 최소한의 영향을 주도록 하며, 응용 프로그램의 택스트 영역 파손 여부를 검사하기 위해 체크섬 값을 계산하고 이 체크섬 값으로 택스트 영역 파손 여부를 검사하여, 택스트 영역이 파손되었다고 판단되면 해당 프로그램을 재로딩시켜, 아웃모스트 프로세스의 계속적인 재시작(restart) 동작을 방지할 수 있도록 한다.

Description

이동통신 교환기의 응용프로그램 에러 처리 및 복구 방법
본 발명은 이동통신 교환기에 관한 것으로, 특히 실행중인 응용 프로그램이 예기치 못한 에러 발생으로 인해 실행이 종료될 경우 전체 시스템에 주는 피해를 최소화할 수 있는 응용 프로그램의 에러 처리 및 복구 방법에 관한 것이다.
일반적인 이동 통신 교환기의 주 프로세서는 도1과 같이, 가입자의 데이터를 받아들이고 가입자에게 데이터를 전달하는 맨-머신 프로세서(10)와, 상기 맨-머신 프로세서(10)로부터 전달받은 가입자 데이터를 처리하는 상위 프로세서(30)와, 상기 상위 프로세서(30)에서 처리된 데이터로 교환기의 운영 및 유지보수 기능을 수행하는 운영/유지보수 프로세서(20)와, 상기 맨-머신 프로세서(10)와 상기 상위 프로세서(30) 및 상기 운영/유지 보수 프로세서(20)간에 통신이 이루어지도록 프로세서간 데이터를 송수신하는 프로세서간 통신부(40)로 구성된다.
이와 같이 구성된 이동통신 교환기의 주 프로세서에서는 이동전화 서비스를 제공하기 위해 필요한 응용 프로그램이 실행되는데, 이러한 하나의 응용 프로그램은 한 개의 아웃모스트(outmost) 프로세스와 다수개의 자식(child) 프로세스로 구분된다.
이와 같은 이동통신 교환기내 주프로세서의 응용 프로그램 실행 동작을 설명하면, 먼저 아웃모스트 프로세스를 생성하여 해당 동작의 준비 상태가 되도록 초기화 동작을 수행한다(ST1-ST2). 이후 자식 프로세스를 생성하여 응용 프로그램에서 처리될 동작을 수행하게 한다(ST3). 이렇게 해당 동작이 모두 수행되도록 자식 프로세스를 생성하면, 아웃모스트 프로세스를 종료시킨다(ST4). 이리하여 하나의 응용 프로그램은 하나의 아웃모스트 프로세스를 생성하고, 그 아웃모스트 프로세스에서 다수개의 자식 프로세스를 생성하여 해당 동작이 수행되도록 하는 것이다.
그러나 이러한 종래 이동통신 교환기의 응용 프로그램 실행 방법은, 초기화 과정을 거친 아웃 모스트 프로세스가 필요한 자식 프로세스를 생성한 후 종료되므로, 자식 프로세스가 해당 동작을 수행하지 못하고 에러 발생으로 인해 비정상적으로 종료되었을 경우, 계속적으로 실행되어야 하는 프로세스일 경우에도 불구하고 즉각적으로 필요한 조치를 취하지 못하는 문제점이 있었다.
또한 실시간 운영체제는 비정상적으로 자식 프로세스가 종료되었을 경우 단지 자식 프로세스가 종료된 사실만을 감지하므로, 시스템 운용자가 직접 프로세스의 이상 종료를 감지하여 필요한 조치를 취해야 하는 단점이 있었다.
그리고 에러가 발생되어 종료된 프로세스가 과금 처리 등 중요한 기능을 담당하는 프로세스일 경우 즉각적인 대처가 이루어지지 않으므로 전체 시스템의 동작에 큰 영향을 주는 문제가 있었다.
본 발명의 목적은 상기와 같은 종래의 문제점을 해소하기 위한 것으로, 특히, 실행중인 응용 프로그램에서 에러 발생된 프로세스는 즉각적으로 재실행하고 택스트 영역이 파손된 프로세서는 재로딩함으로써 오류가 발생된 응용 프로그램으로 인해 전체 시스템에 주는 피해를 최소화해주는 이동통신 교환기의 응용프로그램 에러 처리 및 복구 방법을 제공하는 데 있다.
상기와 같은 목적을 달성하기 위하여 본 발명은,
응용 프로그램의 택스트 영역 파손 여부를 검사하기 위한 체크섬 값을 계산하고, 프로세스가 아웃모스트 프로세스인가를 검사하는 제1 단계와; 상기 검사 결과 아웃모스트 프로세스이면 상기 계산된 체크섬값을 검사하여 택스트 영역의 파손 여부를 조사하는 제2 단계와; 상기 조사 결과 택스트 영역이 파손되었으면 프로그램 로더에게 해당 프로그램을 다시 로딩하라는 신호를 전송하고 파손된 해당 프로그램의 프로세스를 모두 종료시키고 메모리에서 제거하는 제3 단계와; 상기 조사 단계 결과 택스트 영역이 파손되지 않았으면 리스타트 플래그를 셋팅하고 해당 프로그램의 프로세스를 모두 종료시킨 후 에러가 발생된 자식 프로세스의 비정상적인 종료를 감지하도록 다시 실행시키는 제4 단계와; 상기 단계의 검사 결과 아웃모스트 프로세스가 아니면 상기 단계에서 계산된 체크섬 값을 검사하여 택스트 영역의 파손 여부를 조사하는 제5 단계와; 상기 조사 결과 택스트 영역이 파손되었으면 아웃 모스트 프로세스의 정보를 구하고 프로그램 로더로 해당 프로그램의 재로딩 신호를 전달하는 제 6단계와; 상기 조사 결과 택스트 영역이 파손되지 않았으면 아웃 모스트 프로세스의 정보를 구하며, 자식 프로세스가 에러 발생으로 비정상적인 종료를 하면 아웃모스트 프로세스에게 에러 처리를 하도록 정보를 전송하는 제 7단계로 이루어짐을 그 방법적 구성상의 특징으로 한다.
도 1 은 일반적인 이동통신 교환기의 주프로세서 블록 구성도,
도 2 는 일반적인 이동통신 교환기의 응용 프로그램 실행 동작을 보인 흐름도,
도 3 은 본 발명에 의한 이동통신 교환기의 응용프로그램 에러 처리 및 복구 방법을 보인 흐름도,
도 4 는 도3의 응용 프로그램의 체크섬 값을 계산하는 방법을 보인 흐름도.
<도면의 주요 부분에 대한 부호의 설명>
10:맨-머신 프로세서 20:운영/유지보수 프로세서
30:상위 프로세서 40:프로세서간 통신부
이하, 상기와 같이 구성된 본 발명 "이동통신 교환기의 응용프로그램 에러 처리 및 복구 방법"의 기술적 사상에 따른 일 실시예를 들어 구성 및 동작 방법을 첨부된 도면에 의거 상세히 설명하면 다음과 같다.
<실시예>
먼저, 이동통신 교환기내 주프로세서에서 실행되는 응용 프로그램의 에러 처리 및 복구 방법의 실시예 구성은, 응용 프로그램의 택스트 영역 파손 여부를 검사하기 위한 체크섬 값을 계산하고, 프로세스가 아웃모스트 프로세스인가를 검사하는 제1 단계(ST10-ST14)와; 상기 검사 결과 아웃모스트 프로세스이면 상기 계산된 체크섬값을 검사하여 택스트 영역의 파손 여부를 조사하는 제2 단계(ST15)와; 상기 조사 결과 택스트 영역이 파손되었으면 프로그램 로더에게 해당 프로그램을 다시 로딩하라는 신호를 전송하고 파손된 해당 프로그램의 프로세스를 모두 종료시키고 메모리에서 제거하는 제3 단계(ST16-ST17)와; 상기 조사 단계(ST15)결과 택스트 영역이 파손되지 않았으면 리스타트(restart) 플래그를 셋팅하고 해당 프로그램의 프로세스를 모두 종료시킨 후 에러가 발생된 자식 프로세스의 비정상적인 종료를 감지하도록 다시 실행시키는 제4 단계(ST18-ST19)와; 상기 단계(ST14)의 검사 결과 아웃모스트 프로세스가 아니면 상기 단계(ST14)에서 계산된 체크섬 값을 검사하여 택스트 영역의 파손 여부를 조사하는 제5 단계(ST20)와; 상기 조사 결과 택스트 영역이 파손되었으면 아웃 모스트 프로세스의 정보를 구하고 프로그램 로더로 해당 프로그램의 재로딩 신호를 전달하는 제 6단계(ST21-ST23)와; 상기 조사 결과 택스트 영역이 파손되지 않았으면 아웃 모스트 프로세스의 정보를 구하며, 자식 프로세스가 에러 발생으로 비정상적인 종료를 하면 아웃모스트 프로세스에게 에러 처리를 하도록 정보를 전송하는 제 7단계(ST24-ST26)로 이루어진다.
상기 제1 단계(ST10-ST14)에서 응용 프로그램의 체크섬 값을 계산하는 단계(ST13)는, 컴파일 및 링크 실행 파일을 생성하고 그 파일의 포맷이 올바르면, 파일 포인터를 체크섬 값의 삽입 위치로 이동하여 플래그 값을 판독하는 단계(ST13a-ST13e)와; 체크섬 값을 삽입할 코드 영역이 생성되었음을 알리는 값으로 상기 플래그 값이 설정되었으면 체크섬 값을 계산하여 상기 코드 영역에 삽입하는 단계(ST13f-ST13g)로 이루어진다.
이와 같이 이루어진 본 발명에 의한 이동통신 교환기의 응용 프로그램 에러 처리 및 복구 방법을 설명하면 다음과 같다.
먼저, 프로세스의 종류를 판단하여(ST10) 시스템 프로세스이면 종료시킨 후 곧바로 재시작되도록 한다(ST11). 그리고 운영/유지 보수 프로세서내 디스크(24)(25)나 마그네틱 테이프(23)를 사용중인 프로세스를 종료시키면 시스템에 치명적인 영향을 줄 수 있으므로, 디스크(24)(25)나 마그네틱 테이프(23)를 사용하지 않는 프로세스인지 검사한다. 이리하여 시스템 프로세스도 아니고 디스크(24)(25)나 마그네틱 테이프(23)를 사용하지 않는 프로세스이면, 해당 프로그램의 체크섬 값을 계산한다(ST13).
즉, 컴파일 및 링크 실행 파일을 생성하고(ST13a) 이 파일을 열어(ST13b) 파일 헤더를 읽는다(ST13c). 그리하여 파일 포맷이 올바르면 파일 포인터를 체크섬 값의 삽입 위치로 이동하여 플래그 값을 판독한다(ST13e). 이 플래그 값이 체크섬 값을 삽입할 코드영역이 실행 파일 생성시에 추가되었음을 알리는 값으로 설정되었으면 체크섬 값을 계산하여 코드 영역에 삽입한다(ST13g).
이후 응용 프로그램내 임의의 프로세스가 아웃모스트(outmost) 프로세스인지를 판단하고(ST14), 이 판단 결과 아웃모스트 프로세스이면, 상기 계산되어 삽입된 체크섬 값으로 택스트 영역의 파손 여부를 검사하게 된다(ST15). 이 검사 결과 택스트 영역이 파손되었으면 운영체제는 프로그램 로더로 해당 프로그램을 다시 로딩하라는 신호를 전달한다(ST16). 그런 후 택스트 영역이 파손된 프로세스는 종료시킴과 동시에 메모리에서 제거시키게 되는 것이다(ST17).
상기 택스트 영역의 파손 여부 검사(ST15) 결과 택스트 영역이 파손되지 않았으면, 아웃 모스트 프로세스는 종료되지 않고 자식 프로세스의 비정상적인 종료를 감지하게 된다(ST18-ST19).
한편 상기 임의의 프로세스의 판단(ST14) 결과 아웃모스트 프로세스가 아닌 자식 프로세스이면, 이 프로세스의 체크섬 값으로 택스트 영역의 파손 여부를 검사하게 된다(ST20). 이 검사 결과 택스트 영역이 파손되었으면 파일 테이블을 조사하여 아웃모스트 프로세스의 정보를 구하게 된다(ST21). 그리고 택스트 영역이 파손된 프로그램을 다시 로딩하도록 프로그램 로더로 신호를 전달하게 되며(ST22), 택스트 영역이 파손된 프로세스를 종료시킴과 동시에 메모리에서 제거시키게 된다(ST23).
상기 자식 프로세스의 택스트 영역의 파손 여부 검사(ST20) 결과, 파손되지 않았으면 파일 테이블을 조사하여 아웃 모스트 프로세스의 정보를 구한다(ST24). 이후 자식 프로세스는 해당 동작을 수행하다가 예기치 못한 에러가 발생되면 비정상적으로 종료된다(ST25). 이 자식 프로세스가 과금 처리 등 종료되지 않고 계속 수행되어야 하는 중요한 기능을 수행하는 프로세스일 경우에는 즉각적인 재수행이 요구된다. 그리하여 운영체제는 상기에서 구한 아웃 모스트 프로세스의 정보를 통해 아웃 모스트 프로세스로 자식 프로세스의 비정상적인 종료를 알리게 된다. 이에 아웃 모스트 프로세스는 자식 프로세스의 에러 발생으로 인한 비정상적인 종료를 감지하고 해당 프로세스를 재시작하도록 하게 되는 것이다(ST26).
이리하여 운영체제는 응용 프로그램의 코드영역에 삽입된 체크섬 값으로 택스트 영역의 파손을 감지함으로써 프로그램을 다시 로딩하여 실행시킬 수 있어 아웃 모스트 프로세스의 계속적인 재시작 동작을 방지하게 된다.
그리고 아웃 모스트 프로세스는 초기화 단계를 거치고 자식 프로세스를 생성한 후 종료되지 않고 계속 실행되어, 중요한 기능을 수행하는 자식 프로세스의 비정상적인 종료를 감지하여, 에러가 발생된 자식 프로세스가 재시작되도록 즉각적으로 동작함으로써 전체 시스템의 동작에 최소한의 영향을 주게 되는 것이다.
이상에서 살펴본 바와 같이, 본 발명 "이동통신 교환기의 응용 프로그램 에러 처리 및 복구 방법"은, 특히, 아웃모스트 프로세스가 종료되지 않고 계속 실행되어 자식 프로세스의 비정상적인 종료를 감지하고, 비정상적으로 종료된 프로세스를 즉각적으로 재수행시킴으로써 전체 시스템의 동작에 최소한의 영향을 주게 되어 시스템의 안정성을 향상하는 효과가 있게 되는 것이다.
또한 본 발명은 응용 프로그램에 체크섬 값을 추가함으로써 프로그램의 파손시 다시 로딩하여 실행시킴으로써 아웃모스트 프로세스의 계속적인 재시작(restart) 동작을 방지할 수 있는 효과가 있게 되는 것이다. 따라서 프로세스의 오버로드(overload)를 방지하여 시스템의 안정성을 도모할 수 있게 되는 것이다.

Claims (2)

  1. 이동통신 교환기에서 응용 프로그램의 에러 처리 및 복구 방법에 있어서,
    응용 프로그램의 택스트 영역 파손 여부를 검사하기 위한 체크섬 값을 계산하고, 프로세스가 아웃모스트 프로세스인가를 검사하는 제1 단계(ST10-ST14)와;
    상기 검사 결과 아웃모스트 프로세스이면 상기 계산된 체크섬값을 검사하여 택스트 영역의 파손 여부를 조사하는 제2 단계(ST15)와;
    상기 조사 결과 택스트 영역이 파손되었으면 프로그램 로더에게 해당 프로그램을 다시 로딩하라는 신호를 전송하고 파손된 해당 프로그램의 프로세스를 모두 종료시키고 메모리에서 제거하는 제3 단계(ST16-ST17)와;
    상기 조사 단계(ST15) 결과 택스트 영역이 파손되지 않았으면 리스타트(restart) 플래그를 셋팅하고 해당 프로그램의 프로세스를 모두 종료시킨 후 에러가 발생된 자식 프로세스의 비정상적인 종료를 감지하도록 다시 실행시키는 제4 단계(ST18-ST19)와;
    상기 단계(ST14)의 검사 결과 아웃모스트 프로세스가 아니면 상기 단계(ST14)에서 계산된 체크섬 값을 검사하여 택스트 영역의 파손 여부를 조사하는 제5 단계(ST20)와;
    상기 조사 결과 택스트 영역이 파손되었으면 아웃 모스트 프로세스의 정보를 구하고 프로그램 로더로 해당 프로그램의 재로딩 신호를 전달하는 제 6단계(ST21-ST23)와;
    상기 조사 결과 택스트 영역이 파손되지 않았으면 아웃 모스트 프로세스의 정보를 구하며, 자식 프로세스가 에러 발생으로 비정상적인 종료를 하면 아웃모스트 프로세스에게 에러 처리를 하도록 정보를 전송하는 제 7단계(ST24-ST26)로 이루어짐을 특징으로 하는 이동통신 교환기의 응용프로그램 에러 처리 및 복구 방법.
  2. 제 1항에 있어서, 상기 제1 단계(ST13)는,
    컴파일 및 링크 실행 파일을 생성하고 그 파일의 포맷이 올바르면, 파일 포인터를 체크섬 값의 삽입 위치로 이동하여 플래그 값을 판독하는 단계(ST13a-ST13e)와; 체크섬 값을 삽입할 코드 영역이 생성되었음을 알리는 값으로 상기 플래그 값이 설정되었으면, 택스트 영역의 파손 여부를 검사하도록 체크섬 값을 계산하여 상기 코드 영역에 삽입하는 단계(ST13f-ST13g)로 이루어짐을 특징으로 하는 이동통신 교환기의 응용 프로그램 에러 처리 및 복구 방법.
KR1019970053848A 1997-10-20 1997-10-20 이동통신 교환기의 응용프로그램 에러 처리 및 복구 방법 KR100231775B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970053848A KR100231775B1 (ko) 1997-10-20 1997-10-20 이동통신 교환기의 응용프로그램 에러 처리 및 복구 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970053848A KR100231775B1 (ko) 1997-10-20 1997-10-20 이동통신 교환기의 응용프로그램 에러 처리 및 복구 방법

Publications (2)

Publication Number Publication Date
KR19990032731A KR19990032731A (ko) 1999-05-15
KR100231775B1 true KR100231775B1 (ko) 1999-11-15

Family

ID=19523083

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970053848A KR100231775B1 (ko) 1997-10-20 1997-10-20 이동통신 교환기의 응용프로그램 에러 처리 및 복구 방법

Country Status (1)

Country Link
KR (1) KR100231775B1 (ko)

Also Published As

Publication number Publication date
KR19990032731A (ko) 1999-05-15

Similar Documents

Publication Publication Date Title
EP0972245B1 (en) A method and system for fault isolation for pci bus errors
US5386565A (en) Method and system for controlling/monitoring computer system having plural operating systems to run thereon
CN100504792C (zh) 在用户空间中进行系统调用截取的方法和系统
EP0479230B1 (en) Recovery method and apparatus for a pipelined processing unit of a multiprocessor system
EP0505706A1 (en) Alternate processor continuation of the task of a failed processor
CN112965908B (zh) 通信测试方法、装置、通信设备及存储介质
US7805634B2 (en) Error accumulation register, error accumulation method, and error accumulation system
KR100231775B1 (ko) 이동통신 교환기의 응용프로그램 에러 처리 및 복구 방법
CN111931191A (zh) Linux平台二进制软件堆溢漏洞动态检测方法及系统
CN109254856B (zh) 智能pos服务端提供接口给客户端的方法
CN115328690B (zh) 异常处理方法、计算机可读介质及电子设备
CN110609822B (zh) 数据流处理方法、设备和计算机程序产品
GB2551574A (en) An apparatus and method for generating and processing a trace stream indicative of instruction execution by processing circuitry
US7415560B2 (en) Method of automatically monitoring computer system debugging routine
CN115756935A (zh) 嵌入式软件系统的异常故障定位方法、装置及设备
US6745213B2 (en) Method and apparatus to facilitate testing of garbage collection implementations
WO1988007239A1 (en) Apparatus and method for synchronization of arithmetic exceptions in parallel pipelined execution units
US6795879B2 (en) Apparatus and method for wait state analysis in a digital signal processing system
JP2002312240A (ja) マイクロコントローラにおけるアクセス妨害を検出する回路装置及び方法
JP7207519B2 (ja) 情報処理装置、情報処理方法及びプログラム
EP0112672B1 (en) System for processing machine check interruption
CN116893928A (zh) 故障内存的监管方法、系统、终端及存储介质
KR100258095B1 (ko) 칠에서의 초기화되지 않은 이름의 발견방법
CN118227486A (zh) 发行版本的调试方法、调试装置、电子设备及存储介质
CN112416833A (zh) 通信设备、方法、装置、电子设备和存储介质

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: 20060824

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee