KR100291098B1 - 교환기의 쉘 명령어 자동 실행 방법 - Google Patents

교환기의 쉘 명령어 자동 실행 방법 Download PDF

Info

Publication number
KR100291098B1
KR100291098B1 KR1019980056892A KR19980056892A KR100291098B1 KR 100291098 B1 KR100291098 B1 KR 100291098B1 KR 1019980056892 A KR1019980056892 A KR 1019980056892A KR 19980056892 A KR19980056892 A KR 19980056892A KR 100291098 B1 KR100291098 B1 KR 100291098B1
Authority
KR
South Korea
Prior art keywords
shell
command
processor
ram disk
disk
Prior art date
Application number
KR1019980056892A
Other languages
English (en)
Other versions
KR20000041109A (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 KR1019980056892A priority Critical patent/KR100291098B1/ko
Publication of KR20000041109A publication Critical patent/KR20000041109A/ko
Application granted granted Critical
Publication of KR100291098B1 publication Critical patent/KR100291098B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • G06F9/45508Runtime interpretation or emulation, e g. emulator loops, bytecode interpretation
    • G06F9/45512Command shells
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Exchange Systems With Centralized Control (AREA)
  • Hardware Redundancy (AREA)

Abstract

본 발명은 교환기의 쉘 명령어 자동 실행 방법에 관한 것으로, 교환기 내부 하드웨어, 소프트웨어, 디바이스의 이상 징후 발생시 램 디스크, 유지 보수 프로세서(30)내 DKU(32)를 이용하여 외부 명령어를 서치하고 해당 프로세서를 램 디스크에 저장하며, 각각의 프로세서의 일정 영역에 탑재시켜 실제 쉘 명령어를 자동으로 실행시키도록 관련 기능을 제공함으로써, 교환기 시스템의 문제점에 대한 원인을 곧바고 확인할 수 있으며, 시스템 내부 장애를 신속하게 해결할 수 있는 효과가 있다.

Description

교환기의 쉘 명령어 자동 실행 방법(METHOD FOR EXECUTING SHELL COMMAND LANGUAGE AUTOMATIC IN A EXCHANGE)
본 발명은 교환기의 쉘 명령어 자동 실행 방법에 관한 것으로, 특히 새로운 기능이 추가되어도 쉘 기능을 추가하지 않고 즉시 쉘 명령어를 실행시킴으로서 시스템 내부 장애를 신속하게 조치할 수 있도록 한 교환기의 쉘 명령어 자동 실행 방법에 관한 것이다.
통상적으로, 교환기는 상/하위 프로세서 및 물리 계층간에 기본적으로 셋-업(set-up)된후, 교환기 운용 시스템이 기본적으로 동작된다. 그리고 운용 시스템이 동작되어 오랜 시간동안 특별한 장애가 발생되지 않아야 한다. 그러나 간혹 상/하위 프로세서의 불량에 의한 수리가 이루어짐에 따라 장시간 운용되어야 할 분산 시스템이 각종 장애 및 장애 내역이 발생할 때마다 보드 이상 증세 확인 및 보드 교체시 교환기 자체에서 프로세서 보드의 여러 가지 기능을 신속/정확히 확인하여 정확한 조치를 취하고자 한다
또한, 종래 교환기 내부에 모든 상/하위 프로세서들은 수십 ∼ 수백여개의 소프트웨어 블록이 DRAM에 탑재되어 있고 관련 기능들은 프로세서 단위로 수행하게 된다. 즉, 하드웨어 및 소프트웨어 장애에 의하여 프로세서 기능이 정상적으로 수행되지 못할 경우, 운용자가 해당 프로세서의 기능을 확인하기 위하여 소프트웨어 블록 내부에 기능 수행시 수행 여부를 확인 가능하도록 관련 메시지를 인서트(insert)하고, 소프트웨어 블록을 재 로딩 받아서 문제점이 발생하기를 마냥 기다리고 있었다.
이와같이, 장애 발생 여부를 확인하기 위하여 운용자에게 많은 시간동안 기다리게 해야하고, 또한 새로운 시스템의 설치 시에도 소프트웨어 패키지가 모두 구비되지 않으면 시스템 내부 어떤 기능도 시험을 할 수 없는 문제점이 있었다.
따라서, 본 발명은 상술한 문제점을 해결하기 위하여 안출한 것으로서, 그 목적은 교환기 내부 프로세서, 디바이스 등의 기능 이상시 소프트웨어 변경없이 확인 기능을 수행하는 쉘(shell) 명령어를 탑재, 수행시켜 디버깅을 할 수 있는 교환기의 쉘 명령어 자동 실행 방법을 제공함에 있다.
이러한 목적을 달성하기 위한 본 발명에서 교환기의 쉘 명령어 자동 실행 방법은 교환기내의 디바이스에서 이상 증세가 발견되면, 이상 증세 확인하기 위하여 소정의 언어로 프로그램을 작성 및 컴파일하여 소정의 실행파일로 만들어 유지보수 프로세서의 하드 디스크에 적용하는 단계와; 교환기내의 메인 프로세서 및 텔레포니 프로세서와 유지 보수 프로세서내의 쉘 블록이 러닝되면, 각각의 프로세서는 음극선관을 통하여 데이터가 전송될 때까지 대기하는 단계와; 음극선관을 통하여 입력되는 데이터 및 리턴 신호에 따라 실질적으로 쉘 기능을 수행한후, 음극선관을 통하여 입력된 데이터가 쉘 블록 내부 기능인지, 외부 기능인지를 체크하는 단계와; 체크 단계에서 데이터가 쉘 내부 명령어이면, 해당 쉘 명령어를 바로 수행하는 단계와; 체크 단계에서 데이터가 쉘 외부 명령어이면, 해당 쉘 명령어를 바로 수행하지 않고, 외부 명령어를 확인한후, 확인한 결과, 쉘 명령어가 존재하지 않으면, 에러 메시지를 음극선관을 통하여 출력하고 리턴하며, 쉘 명령어가 존재하면, 각각의 프로세서의 영역에 램 디스트로부터 전송된 데이터를 메모리로 복사한후, 쉘 명령어를 수행하는 단계를 포함한다.
본 발명의 다른 특징은 램 디스크에 쉘 명령어가 존재하는지를 확인하기 위하여 오픈 시스템 콜을 이용하여 소정의 제 1 명령어를 수행하는 단계와; 제 1 명령어 수행 결과 정상이면, 램 디스크에 저장되어 있는 파일을 해당 프로세서내 메모리의 일정 영역에 복사 및 클로즈한후, 리턴값으로 되돌려주는 반면에, 제 1 명령어 수행 결과 비정상이면, 에러 메시지를 음극선관을 통하여 출력하는 단계와; 램 디스크에 쉘 명령어가 비존재하면, 유지 보수 프로세서내 하드 디스크의 서치 과정을 수행하는 단계와; 하드 디스크의 서치 과정이 정상이면, 램 디스크를 오픈한후, 쉘 명령어를 정상적으로 실행하도록 램 디스크 및 메모리에 로드시키고, 하드 디스크의 서치 과정이 비정상이면, 램 디스크 및 유지보수 프로세서내에 쉘 명령어가 존재하지 않음에 따른 비정상값을 리턴하여 실행할 쉘 명령어가 없다고 음극선관을 통하여 통보하는 단계를 포함한다.
본 발명의 다른 특징은 쉘 명령어를 서치하기 위하여 하드 디스크를 확인하는 단계와; 확인 결과에서 하드 디스크에 존재하면, 제 2 명령어를 수행하여 오픈시키는 단계와; 오픈 결과에서 정상이면, 하드 디스크내의 데이터를 리드하고 프로세서간 통신 경로를 이용하여 해당 프로세서의 램 디스크에 라이트해 놓고 정상적으로 외부 명령어가 있음을 음극선관을 통하여 출력하는 단계와; 확인 결과에서 하드 디스크에 존재하지 않으면, 장애내역을 음극선관을 통해서 출력시키는 단계를 포함한다.
본 발명의 다른 특징은 쉘 내부 명령어가 아니고, 외부 명령어일 경우에 램 디스크를 조사하고 램 디스크에 쉘 파일이 존재하지 않으면, 하드 디스크를 조회한후, 조회한 쉘 파일을 램 디스크에 복사한후, 램 디스크에서 메모리의 일정 영역에 로드시킨 다음에 쉘 명령어를 실행하도록 콜하는 단계와; 각각의 프로세서의 운영 환경을 그대로 묘사하기 위하여 포크 시스템 콜을 사용하여 프로세스를 생성시키는 단계와; 생성 결과 페어런트 프로세스이면, 차일드 수행이 완료되기를 기다리고, 차일드 프로세스이면, 실행 시스템 콜을 이용하여 해당 데이터를 일정 영역에서 복사한 다음 실행시킴으로써, 페이런트 프로세스는 대기된 상태에서 차일드 프로세스를 수행하는 단계와; 차일드 프로세스 수행이 완료되면, 정지하라는 시스템 콜을 사용하여 해당 프로세스를 종료시키고, 대기하고 있던 페어런트 프로세스를 동작시키는 단계를 포함한다.
도 1은 본 발명에 따른 교환기의 시스템 블록 구성도,
도 2는 본 발명에 의한 교환기의 쉘 명령어 수행 과정에 대한 상세 흐름도,
도 3은 본 발명에 의한 램 디스크에서 쉘 명령어를 서치하는 과정에 대한 상세 흐름도,
도 4는 본 발명에 의한 유지 보수 프로세서내 하드 디스크 유닛에서 쉘 명령어를 서치하는 과정에 대한 상세 흐름도,
도 5는 본 발명에 의한 교환기의 쉘 명령어 실행 과정에 대한 상세 흐름도.
<도면의 주요부분에 대한 부호의 설명>
10 : 프로세서간 통신 20-0∼20-n : MP0∼MPn
30 : 유지보수 프로세서 32 : DKU
40 : 운용자 터미널 50 : CRT
60-0∼60-n : TP0∼TPn 70 : EXIT
이하, 첨부된 도면을 참조하여 본 발명의 구성 및 동작을 상세히 설명하기로 한다.
도 1 은 본 발명에 따른 교환기의 시스템 블록 구성도로서, 프로세서간 통신(Inter Processor Communication : 이하, IPC라 약칭함)(10)과, 메인 프로세서(Main Processor : 이하, MP라 약칭함)0∼MPn(20-0∼20-n)와, 유지보수 프로세서(30)와, 하드 디스크(hard DisK Unit : 이하, DKU라 약칭함)(32)와, 리무버블 디스크(Removable DisK Unit)와, 카드리지 테입(Cartridge Tape Unit)과, 마그네틱 테입(Magnetic Tape Unit)과, 운용자 터미널(40)과, 음극선관(Cathode Ray Tube : 이하, CRT라 약칭함)(50)와, 텔레포니 프로세서(Telephony Processor : TP라 약칭함)0∼TPn(60-0∼60-n)와, 이더넷 X.25 인터페이스 프로세서(Ethernet X.25 Interface Processor : EXIP라 약칭함)(70)를 포함한다.
IPC(10)는 교환기 프로세서에서 필수 불가결한 통신 수단으로, 로컬, 루프-백, 외부 IPC를 송/수신하고, MP0∼MPn(20-0∼20-n)와, 유지보수 프로세서(30)와, TP0∼TPn(60-0∼60-n)와, EXIP(70)간에 통신할수 있도록 인터페이스를 수행한다.
MP0∼MPn(20-0∼20-n)는 콘커런트 라이팅(concurrent writting) 방식을 이용한 액티브/스탠바이 이중화 구조로 구성되어 있는데, 만약 액티브측의 심각한 장애 발생시, 이중화 절환된후, 스탠바이측은 작업의 연속 수행을 가능하게 하므로, 온라인 서비스의 유실없는 서비스를 보장하는 상태이다.
또한 MP0∼MPn(20-0∼20-n)는 내부적으로 쉘(shell) 블록이 들어 있으며, IPC(10)를 통하여 TP0∼TPn(60-0∼60-n) 및 유지 보수 프로세서(30)와 접속된후, 디지털 신호 프로세서 어셈블리 보드(Digital Signal Processor Assembly board : 이하, DSPA라 약칭함)211 및 DSPA212 즉, 유지 보수 프로세서가 연동해서 운용된다.
유지 보수 프로세서(30)는 하드웨어 테스트 및 운용 시스템 초기화, 프로세서 동작 모드에 따른 로딩 수행, 정상 동작을 위한 소프트웨어 초기화를 위하여 동작하며, 액티브/스탠바이 이중화 구조로 구성되어 있는 프로세서로써, DKU(32)와 스몰 컴퓨터 시스템 인터페이스(Small Computer System Interface : 이하, SCSI라 약칭함) 버스를 이용하여 유지보수를 수행한다.
운용자 터미널(40)은 워크스테이션으로써, 유지 보수 프로세서(30)와 접속된후, 필요에 따라서 운영체계 내부에서 제공하는 시스템 콜(system call)을 사용하기 위하여 C-언어로 프로그램을 작성하고, 작성된 프로그램을 컴파일하여 하나의 실행파일(예로, a.out)로 만들어 이더넷을 통하여 유지보수 프로세서(30)의 DKU(32)에 적용한다. 이때, DKU(32)내에 실행 파일이 적용되므로, 프로세서 내부에서 수행되고 있는 쉘이 인지할 수 있도록 하는 기본 환경을 구축하게 된다.
CRT(50)는 디버깅(debugging)용으로, IPC(10)를 통하여 MP0∼MPn(20-0∼20-n) 및 TP0∼TPn(60-0∼60-n)와 유지 보수 프로세서(30)와 접속되어 있으며, 운용자에 의하여 MP0∼MPn(20-0∼20-n) 및 TP0∼TPn(60-0∼60-n)와 유지 보수 프로세서(30)의 기능 이상 등을 점검하고, 점검된 결과가 디스플레이된다.
TP0∼TPn(60-0∼60-n)는 내부적으로 쉘(shell) 블록이 들어 있으며, IPC(10)를 통하여 MP0∼MPn(20-0∼20-n) 및 유지 보수 프로세서(30)와 접속된후, 액티브/스탠바이 이중화 구조로 구성되어 통신하는 하위 프로세서로써, 각각 히트(HIT) 버스를 통해 디바이스와 접속된다. 여기서, HIT 버스는 최대 2Mbps의 속도를 갖는 하이 데이터 링크 제어(High Data Link Control) 형태의 통신 경로로써, 하위 프로세서와 디바이스간에 2Mbps의 대역폭(bandwidth)을 갖고 인터페이스한다.
EXIP부(70)는 IPC(10)와 접속되어, 액티브/스탠바이 이중화 구조로 구성된 이더넷(Ethernet) X.25 정합 프로세서이다.
도 2 의 플로우차트를 참조하여, 상술한 구성을 갖는 본 발명의 실시예에 따른 교환기의 쉘 명령어 수행 과정에 대하여 상세히 설명한다.
먼저, 상술한 구성을 바탕으로, TP0∼TPn(60-0∼60-n)와 접속되어 있는 각각의 디바이스중 소정의 디바이스에서 이상 증세가 발견되면, MP0∼MPn(20-0∼20-n) 프로세서중 이상증세 발생시, 이상 증세를 확인하기 위하여 운용자 터미널(40)의 C-언어로 프로그램을 작성하고, 작성된 프로그램을 컴파일하여 하나의 실행파일(예로, a.out)로 만들어 이더넷을 통하여 유지보수 프로세서(30)의 DKU(32)에 적용한다. 이때, DKU(32)내에 실행 파일이 적용되므로, 유지 보수 프로세서(30) 내부에서 수행되고 있는 쉘 명령어를 인지할 수 있도록 하는 기본 환경을 구축하게 된다(단계 200).
한편, MP0∼MPn(20-0∼20-n) 및 TP0∼TPn(60-0∼60-n)와 유지 보수 프로세서(30)내의 쉘 블록이 러닝(running)되면, MP0∼MPn(20-0∼20-n) 및 TP0∼TPn(60-0∼60-n)와 유지 보수 프로세서(30)는 CRT(50)를 통하여 데이터가 운용자가 명령러를 입력할 때까지 대기한다(단계 201).
이후, MP0∼MPn(20-0∼20-n) 및 TP0∼TPn(60-0∼60-n)와 유지 보수 프로세서(30)는 운용자에 의하여 CRT(50)를 통하여 입력되는 데이터 및 리턴 신호에 따라 실질적으로 쉘 기능을 수행하게 된다(단계 202). 또한, MP0∼MPn(20-0∼20-n) 및 TP0∼TPn(60-0∼60-n)와 유지 보수 프로세서(30)는 입력된 데이터가 쉘 블록 내부 기능인지, 외부 기능인지를 체크한다(단계 203). 상술한 체크 단계에서 데이터가 쉘 블록 내부 기능 즉, 내부(internal) 명령어이면, 해당 쉘 명령어를 바로 수행한다(단계 204). 이때, 내부 명령어인지의 확인 방법은 쉘 명령어 테이블에서 각각 조회하여 내부 명령어인지를 확인한다.
반면에, 상술한 체크 단계에서 데이터가 쉘 블록 외부 기능 즉, 램 디스크 또는 유지 보수 프로세서(30)에 대한 외부(external) 명령어이면, 해당 쉘 명령어를 바로 수행하지 않고, 도 3 또는 도 4에 도시된 바와 같이, 외부 명령어를 확인한다(단계 205). 이때, 외부 명령어 확인 결과, 쉘 명령어가 존재하지 않으면, 에러 메시지를 CRT(50)를 통하여 출력하고 리턴한다(단계 206). 반면에, 쉘 명령어가 존재하면, 해당 MP0∼MPn(20-0∼20-n) 및 TP0∼TPn(60-0∼60-n)와 유지 보수 프로세서(30)의 일정한 영역에 램 디스트로부터 전송된 데이터를 복사한후, 실제 쉘 명령어를 수행한다(단계 207).
도 3 의 플로우차트를 참조하여, 상술한 구성을 갖는 본 발명의 실시예에 따라 램 디스크에서 쉘 명령어를 서치하는 과정에 대하여 상세히 설명한다.
먼저, 오픈 시스템 콜(open system call)을 이용하여 램 디스크(ram disk)에 쉘(shell) 명령어가 존재하는지를 확인하여(단계 300), 확인 결과 존재하면, 쉘 명령어를 확인하기 위하여 "/G/명령어"를 수행한다(단계 301).
상술한 "/G/명령어" 수행 결과를 체크하여(단계 302), 체크 결과 정상이면, 램 디스크에 저장되어 있는 파일을 MP0∼MPn(20-0∼20-n) 및 TP0∼TPn(60-0∼60-n)와 유지 보수 프로세서(30)내 메모리의 일정 영역에 복사해 놓고, 클로즈(close)한후, 상기 도 2 의 정상 리턴값으로 되돌려준다(단계 303). 반면에, "/G/명령어" 수행 결과 비정상이면, 에러 메시지를 CRT(50)를 통하여 출력한다(단계 304).
한편, 램 디스크에 쉘 명령어가 비존재하면, 유지 보수 프로세서(30)내 DKU(32)의 서치 과정을 수행한다(단계 305). 이때, 도 4에 도시된 바와 같이, 유지 보수 프로세서(30)내 DKU(32)의 서치 과정이 정상인가를 판단하여(단계 306), 상기 판단 결과 정상이면, 램(RAM) 디스크를 오픈한후, 쉘 명령어(/G/ 명령어)를 정상적으로 실행하도록 메모리에 로드시키고(단계 307), 유지 보수 프로세서(30)내 DKU(32)의 서치 과정이 비정상이면, 램 디스크 및 유지보수 프로세서(30)내에 쉘 명령어가 존재하지 않음에 따른 비정상값을 리턴하여 실행할 쉘 명령어가 없다고 통보한다(단계 308).
도 4 의 플로우차트를 참조하여, 상술한 구성을 갖는 본 발명의 실시예에 따른 유지 보수 프로세서(30)내 DKU(32)에서 쉘 명령어를 서치하는 과정에 대하여 상세히 설명한다.
먼저, 쉘(shell) 명령어를 서치하는 과정에서 자신의 프로세서가 유지보수 프로세서인지를 체크한다(단계 401). 왜냐하면 유지보수 프로세서일 경우, 하드 디스크를 램 디스크로 복사하고 프로세서간 통신 경로 없이 바로 실행이 가능하기 때문이다.
상기 체크에서 자신이 유지 보수 프로세서(30)내의 DKU(32)이면, 쉘 명령어가 존재하는지를 확인하기 위하여 "/C/BIN/명령어"를 수행하여 오픈(open)시킨다(단계 402). 상기 오픈 결과를 판단하여(단계 403), 오픈 결과 정상이면, DKU(32)내에 존재하는 것이므로, 곧바로 DKU(32)에서 데이터를 리드하여 램 디스크(ram disk)에 라이트해 놓고 하드 디스크 내용을 램 디스크로 이동한다(단계 404). 반면에, "/C/BIN/명령어" 수행 결과 비정상이면, 에러 메시지를 CRT(50)를 통하여 출력한다(단계 405).
상기 확인 결과에서 자신이 유지 보수 프로세서(30)가 아니면, IPC(10)를 통하여 쉘 명령어에 대한 쉘 파일이 하드 디스크에 존재하는지를 확인한다(단계 406). 상기 확인결과에서 하드 디스크에 쉘 파일이 존재하면, IPC(10)를 통하여 해당 쉘 파일을 유지 보수 프로세서(30)내 DKU(32)에서 리드(read)한후, IPC(10)를 통하여 220Byte 씩 해당 프로세서로 전송하고 해당 프로세서의 램 디스크에 저장하며(단계 407), 상기 확인 결과에서 하드 디스크에 쉘 파일이 존재하지 않으면, CRT(50)를 통하여 쉘 파일이 존재하지 않는다는 메시지를 출력한다(단계 408). 이때, 하드 디스크로의 데이터 전송 과정에서 장애가 발생되면, 에러로 간주하여 데이터 저장 과정에서 실패했음을 CRT(50)를 통하여 출력한다.
도 5 의 플로우차트를 참조하여, 상술한 구성을 갖는 본 발명의 실시예에 따른 교환기의 쉘 명령어 실행 과정에 대하여 상세히 설명한다.
먼저, 쉘 내부 명령어가 아니고, 외부 명령어일 경우에 램 디스크(ram disk)를 조사하고 램 디스크에 쉘 파일이 존재하지 않으면, 유지 보수 프로세서(30)내 DKU(32)를 조회한후, 조회한 쉘 파일을 램 디스크에 복사한다. 이후, 램 디스크에서 메모리의 일정 영역에 로드시킨 다음에 쉘 명령어를 실행하도록 콜(call)한다(단계 500).
즉, 현재 실행되고 있는 MP0∼MPn(20-0∼20-n) 및 TP0∼TPn(60-0∼60-n)와 유지 보수 프로세서(30)의 운영 환경을 그대로 묘사하기 위하여 포크 시스템 콜(fork system call)을 사용하여 프로세스(process) 생성 여부를 판단한다(단계 501). 상기 프로세스 생성 결과 페어런트 프로세스(parent process)이면, 차일드(child) 수행이 완료되기를 기다린다(단계 502). 또한 상기 프로세스 생성 결과 차일드 프로세스이면, 실행 시스템 콜(execution system call)을 이용하여 해당 데이터를 일정 영역에서 복사한 다음 곧바로 실행시킴으로써, 페이런트 프로세스(parent process)는 대기된 상태에서 차일드 프로세스(child process)를 수행하게 된다(단계 503).
한편, 차일드 프로세스 수행이 완료되었는가를 판단하여(단계 504), 차일드 프로세스 수행이 완료되면, 정지하라는 시스템 콜(system call)을 사용하여 해당 프로세스를 종료시키고, 대기하고 있던 페어런트 프로세스를 동작시키는 것이다(단계 505).
따라서, 쉘 내부 명령어가 아닌 외부 명령어의 경우에 실질적으로 실행이 완료된다. 또한 운용자는 자신이 시험하려는 쉘 명령어를 유지 보수 프로세서(30)내 DKU(32)에 이더넷을 이용하여 올려놓고 해당 MP0∼MPn(20-0∼20-n) 및 TP0∼TPn(60-0∼60-n)와 유지 보수 프로세서(30)에서 쉘 명령어만 수행시키면 자동으로 명령어가 실행되며 1번 이상 실행시에는 램 디스크에서 서치가 가능하므로 신속한 수행을 할 수 있는 것이다.
상기와 같이 설명한 본 발명은 교환기 운용 과정에서 특정 기능의 이상 발생시 간단히 확인 기능을 수행하는 쉘(shell) 명령어를 탑재한후, 쉘 명령어를 실행시켜 이상 상태를 확인함으로써, 이상 상태를 확인하기 위하여 소프트웨어 블록을 변경할 필요가 없고, 시스템 셋업이나 증설시 시스템 패키지가 모두 구비되지 않더라도 이상 상태를 점검할 수 있어 시스템 내부 장애를 신속하게 해결할 수 있는 효과가 있다.

Claims (4)

  1. 램 디스크 기능이 구비되어 있는 교환기에 있어서,
    상기 교환기내의 디바이스에서 이상 증세가 발견되면, 상기 이상 증세를 확인하기 위하여 소정의 언어로 프로그램을 작성 및 컴파일하여 소정의 실행파일로 만들어 상기 교환기내의 유지보수 프로세서의 하드 디스크에 적용하는 단계;
    상기 교환기내의 메인 프로세서 및 텔레포니 프로세서와 유지 보수 프로세서내의 쉘 블록이 러닝되면, 상기 교환기내의 각각의 프로세서는 음극선관을 통하여 명령어가 수신될 때까지 대기하는 단계;
    상기 음극선관을 통하여 입력되는 데이터 및 리턴 신호에 따라 실질적으로 쉘 기능을 수행한후, 상기 음극선관을 통하여 입력된 데이터가 쉘 블록 내부 기능인지, 외부 기능인지를 체크하는 단계;
    상기 체크 단계에서 데이터가 쉘 내부 명령어이면, 해당 쉘 명령어를 바로 수행하는 단계;
    상기 체크 단계에서 데이터가 쉘 외부 명령어이면, 해당 쉘 명령어를 바로 수행하지 않고, 외부 명령어를 확인한후, 쉘 명령어가 존재하지 않으면, 에러 메시지를 상기 음극선관을 통하여 출력하고 리턴하며, 상기 쉘 명령어가 존재하면, 상기 각각의 프로세서의 영역에 상기 램 디스크로 전송하고 상기 전송된 데이터를 메모리에 복사한후, 쉘 명령어를 수행하는 단계로 이루어진 상기 쉘 명령어 수행 과정을 포함하는 것을 특징으로 하는 교환기의 쉘 명령어 자동 실행 방법.
  2. 제 1 항에 있어서, 상기 쉘 명령어 자동 실행 방법은, 상기 램 디스크에 쉘 명령어가 존재하는지를 확인하기 위하여 오픈 시스템 콜을 이용하여 소정의 제 1 명령어를 수행하는 단계;
    상기 제 1 명령어 수행 결과 정상이면, 상기 램 디스크에 저장되어 있는 파일을 상기 각각의 프로세서내 메모리의 일정 영역에 복사 및 클로즈한후, 리턴값으로 되돌려주는 반면에, 상기 제 1 명령어 수행 결과 비정상이면, 에러 메시지를 상기 음극선관을 통하여 출력하는 단계;
    상기 램 디스크에 쉘 명령어가 비존재하면, 상기 유지 보수 프로세서내 하드 디스크의 서치 과정을 수행하는 단계;
    상기 하드 디스크의 서치 과정이 정상이면, 상기 램 디스크를 오픈한후, 쉘 명령어를 램 디스크에 프로세서간 통시 경로를 통하여 전송 및 복사하여 정상적 실행 가능하도록 메모리에 로드시키고, 상기 하드 디스크의 서치 과정이 비정상이면, 램 디스크 및 유지보수 프로세서내에 쉘 명령어가 존재하지 않음에 따른 비정상값을 리턴하여 실행할 쉘 명령어가 없다고 상기 음극선관을 통하여 통보하는 단계로 이루어진 상기 램 디스크에서 쉘 명령어를 서치하는 과정을 더 포함하는 것을 특징으로 하는 교환기의 쉘 명령어 자동 실행 방법.
  3. 제 1 항에 있어서, 상기 쉘 명령어 자동 실행 방법은, 상기 쉘 명령어를 서치하기 위하여 상기 하드 디스크를 확인하는 단계;
    상기 확인 결과에서 유지 보수 프로세서이면, 쉘 명령어가 존재하는지를 확인하기 위하여 제 2 명령어를 수행하여 오픈시키는 단계;
    상기 오픈 결과에서 정상이면, 상기 하드 디스크내의 데이터를 리드하여 상기 램 디스크에 라이트해 놓고 정상적으로 외부 명령어가 있음을 음극선관을 통하여 출력하는 단계;
    상기 확인 결과에서 유지보수 프로세서가 아니면, 프로세서간 통신을 통하여 쉘 명령어에 대한 쉘 파일이 램 디스크에 존재하는지를 확인하는 단계;
    상기 확인 결과에서 상기 램 디스크에 쉘 파일이 존재하면, 프로세서간 통신을 통하여 해당 쉘 파일을 상기 하드 디스크에서 리드한후, 프로세서간 통신을 통하여 소정의 바이트씩 해당 프로세서의 램 디스크에 저장하는 단계;
    상기 램 디스크로의 데이터 저장 과정에서 장애가 발생되면, 에러로 간주하여 데이터 저장 과정에서 실패했음을 음극선관을 통하여 출력하는 단계로 이루어진 상기 유지보수 프로세서내 하드 디스크에서 쉘 명령어를 서치하는 과정을 더 포함하는 것을 특징으로 하는 교환기의 쉘 명령어 자동 실행 방법.
  4. 상기 제 2 항 또는 제 3 항에 있어서, 상기 쉘 명령어 자동 실행 방법은, 상기 쉘 내부 명령어가 아니고, 외부 명령어일 경우에 상기 램 디스크를 조사하고 상기 램 디스크에 쉘 파일이 존재하지 않으면, 상기 하드 디스크를 조회한후, 조회한 쉘 파일을 램 디스크에 복사한후, 상기 램 디스크에서 메모리의 일정 영역에 로드시킨 다음에 쉘 명령어를 실행하도록 콜하는 단계;
    상기 각각의 프로세서의 운영 환경을 그대로 묘사하기 위하여 포크 시스템 콜을 사용하여 프로세스를 생성시키는 단계;
    상기 생성 결과 페어런트 프로세스이면, 차일드 수행이 완료되기를 기다리고, 차일드 프로세스이면, 실행 시스템 콜을 이용하여 해당 데이터를 일정 영역에서 복사한 다음 실행시킴으로써, 페이런트 프로세스는 대기된 상태에서 차일드 프로세스를 수행하는 단계;
    상기 차일드 프로세스 수행이 완료되면, 정지하라는 시스템 콜을 사용하여 해당 프로세스를 종료시키고, 대기하고 있던 페어런트 프로세스를 동작시키는 단계로 이루어진 쉘 명령어 실행 과정을 더 포함하는 것을 특징으로 하는 교환기의 쉘 명령어 자동 실행 방법.
KR1019980056892A 1998-12-21 1998-12-21 교환기의 쉘 명령어 자동 실행 방법 KR100291098B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019980056892A KR100291098B1 (ko) 1998-12-21 1998-12-21 교환기의 쉘 명령어 자동 실행 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019980056892A KR100291098B1 (ko) 1998-12-21 1998-12-21 교환기의 쉘 명령어 자동 실행 방법

Publications (2)

Publication Number Publication Date
KR20000041109A KR20000041109A (ko) 2000-07-15
KR100291098B1 true KR100291098B1 (ko) 2001-07-12

Family

ID=19564345

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980056892A KR100291098B1 (ko) 1998-12-21 1998-12-21 교환기의 쉘 명령어 자동 실행 방법

Country Status (1)

Country Link
KR (1) KR100291098B1 (ko)

Also Published As

Publication number Publication date
KR20000041109A (ko) 2000-07-15

Similar Documents

Publication Publication Date Title
US6907547B2 (en) Test tool and methods for testing a computer function employing a multi-system testcase
US5418937A (en) Master-slave type multi-processing system with multicast and fault detection operations having improved reliability
US6845467B1 (en) System and method of operation of dual redundant controllers
JP4132322B2 (ja) 記憶制御装置およびその制御方法
JPH01269151A (ja) 多重プロセツサシステム試験方法
US5287515A (en) Cross-software development/maintenance system
JPH0325814B2 (ko)
US5537598A (en) System for installing processor control code
KR100258079B1 (ko) 밀결합 결함 허용 시스템에서 메모리 버스 확장에 의한 동시 쓰기 이중화 장치
JP3788832B2 (ja) 複合系計算機システム
KR100291098B1 (ko) 교환기의 쉘 명령어 자동 실행 방법
JPH06230992A (ja) 計算機システムおよび計算機システムの障害回復方法
JP3746957B2 (ja) 論理分割システムの制御方法
KR100258123B1 (ko) 전전자 교환기의 스탠바이측 프로세서 테스트 방법
US7398513B2 (en) Method and system of detecting invalid function calls between segments in generating a computer program
JP2002373084A (ja) 二重化システムの状態交換・障害検出兼用方法
Ossfeldt et al. Recovery and diagnostics in the central control of the AXE switching system
KR19990052892A (ko) 전전자 교환기의 스탠바이측 프로세서 테스트 기능구현 방법
US6539436B2 (en) Management of interruptions in a computer platform
JP4137004B2 (ja) 分散型計算機システムのプロセス管理方法
JP5477122B2 (ja) コンピュータシステム、コンピュータシステムの管理方法、ゲートウェイ装置、及びプログラム
CN115686896A (zh) 扩展内存错误处理方法、系统、电子设备及存储介质
JPS60254362A (ja) デ−タ処理装置における状態情報の退避方法
Harrison et al. Data integrity in small real-time computer systems
JPH05143467A (ja) 冗長構成切替方法および冗長構成切替装置

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
LAPS Lapse due to unpaid annual fee