KR20010057732A - 분산 시스템에서의 사용자 신호처리 방법 - Google Patents

분산 시스템에서의 사용자 신호처리 방법 Download PDF

Info

Publication number
KR20010057732A
KR20010057732A KR1019990061127A KR19990061127A KR20010057732A KR 20010057732 A KR20010057732 A KR 20010057732A KR 1019990061127 A KR1019990061127 A KR 1019990061127A KR 19990061127 A KR19990061127 A KR 19990061127A KR 20010057732 A KR20010057732 A KR 20010057732A
Authority
KR
South Korea
Prior art keywords
debugger
signal
event
signal processing
processing module
Prior art date
Application number
KR1019990061127A
Other languages
English (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 KR1019990061127A priority Critical patent/KR20010057732A/ko
Publication of KR20010057732A publication Critical patent/KR20010057732A/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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • G06F9/548Object oriented; Remote method invocation [RMI]

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Debugging And Monitoring (AREA)

Abstract

본 발명은 분산 시스템에서의 사용자 신호처리 방법과, 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것으로, 외부에서 클라이언트의 사용자 인터페이스 모듈에 명령을 입력하여 이벤트를 발생시키는 제 1 단계; 상기 클라이언트가 서버 프로세스와 상호간에 상기 이벤트를 송수신하는 제 2 단계; 시그널 처리 모듈이 디버거의 현재 상태가 실행상태인지 대기상태인지를 판단하는 제 3 단계; 상기 제 3 단계의 판단결과, 상기 디버거가 대기상태일 경우, 상기 시그널 처리 모듈이 이벤트 처리명령을 상기 디버거에 전송하고, 상기 디버거가 사용자 명령을 처리하는 제 4 단계; 및 상기 제 3 단계의 판단결과, 상기 디버거가 실행 상태일 경우, 상기 시그널 처리 모듈이 시그널 인터럽트(SIGINT) 신호를 발생시키고, 상기 디버거에 전송하여, 상기 디버거가 대기 상태인가를 확인하는 제 5 단계를 수행한다.

Description

분산 시스템에서의 사용자 신호처리 방법{METHOD FOR PROCESSING SIGNAL ON DISTRIBUTED ENVIRONMENT}
본 발명은 분산 시스템에서의 사용자 신호처리 방법에 관한 것으로, 특히 분산 시스템의 서버 프로세스가 다른 프로세스 그룹으로 사용자 신호를 전송할 수 있는 분산 시스템에서의 신호처리 방법과, 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것이다.
일반적으로, 윈도우 NT 운영체제에서 시그널 인터럽트(SIGINT) 신호는 프로그램이 실행 중에 0으로 나눗셈을 실행하는 것과 같은 예외적인 수행을 할 경우에 발생하며, 작업자가 키보드의 컨트롤(Ctrl)키와 "C"키를 조합하여 누르는 경우에도 발생한다.
상기 인터럽트 신호는 소프트웨어 인터럽트별로 0에서 255까지 번호화 되어 있으며, 256부터 287은 예외를 위한 것이며, 인터럽트 신호는 운영체제마다 다르지만, 일반적으로 <signal.h>라는 헤더파일에 정의되어 있다.
종래의 분산 시스템에서 윈도우 NT 운영체제를 사용하는 서버는, 서버 프로세스와 클라이언트 프로세스가 통신하여 동작하고, 상기 서버 프로세스는 소정 기능의 프로그램을 수행중인 상태에서 클라이언트 프로세스로부터 명령을 수신한다.
그러나, 상기한 바와 같은 종래의 분산 시스템에서의 신호처리 방법은, 분리프로세스(DETACHED_PROCESS) 또는 새로운 제어생성(CREATE_NEW_CONSOLE) 플래그(flag)를 설정하고, 생성된 다른 프로세스 그룹의 프로세스에게 신호를 전송할 수 없는 문제가 있다.
따라서, 상기와 같은 문제점을 해결하기 위해 안출된 본 발명은, 분산시스템의 서버 프로세스와 다른 프로세스 그룹의 프로세스가 통신하는 구조에 시그널 처리 프로세스를 추가하여, 상기 서버 프로세스가 다른 프로세스 그룹에 사용자 신호를 전송할 수 있는 분산 시스템에서의 신호처리 방법과, 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는데 그 목적이 있다.
도 1 은 본 발명이 적용되는 분산 시스템에서의 사용자 신호처리 시스템의 일실시예 구성도.
도 2 는 본 발명에 따른 분산 시스템에서의 사용자 신호처리 방법에 대한 일실시예 처리흐름도.
* 도면의 주요 부분에 대한 부호의 설명
10 : 클라이언트 프로세스 11 : 서버 프로세스
101 : 사용자 인터페이스 모듈 102 : 제 1 처리모듈
103 : 통신모듈 105 : 제 2 처리모듈
106 : 시그널 처리 모듈 107 : 디버거
상기 목적을 달성하기 위한 본 발명에 따른 방법은, 외부에서 클라이언트의 사용자 인터페이스 모듈에 명령을 입력하여 이벤트를 발생시키는 제 1 단계; 상기 클라이언트가 서버 프로세스와 상호간에 상기 이벤트를 송수신하는 제 2 단계; 시그널 처리 모듈이 디버거의 현재 상태가 실행상태인지 대기상태인지를 판단하는 제 3 단계; 상기 제 3 단계의 판단결과, 상기 디버거가 대기상태일 경우, 상기 시그널 처리 모듈이 이벤트 처리명령을 상기 디버거에 전송하고, 상기 디버거가 사용자 명령을 처리하는 제 4 단계; 및 상기 제 3 단계의 판단결과, 상기 디버거가 실행 상태일 경우, 상기 시그널 처리 모듈이 시그널 인터럽트(SIGINT) 신호를 발생시키고, 상기 디버거에 전송하여, 상기 디버거가 대기 상태인가를 확인하는 제 5 단계를 포함한다.
또한, 본 발명은, 마이크로 프로세서를 구비한, 분산 시스템에서 사용자의 신호를 처리하는 장치에, 외부에서 클라이언트의 사용자 인터페이스 모듈에 명령을입력하여 이벤트를 발생시키는 제 1 기능; 상기 클라이언트가 서버 프로세스와 상호간에 상기 이벤트를 송수신하는 제 2 기능; 시그널 처리 모듈이 디버거의 현재 상태가 실행상태인지 대기상태인지를 판단하는 제 3 기능; 상기 제 3 기능의 판단결과, 상기 디버거가 대기상태일 경우, 상기 시그널 처리 모듈이 이벤트 처리명령을 상기 디버거에 전송하고, 상기 디버거가 사용자 명령을 처리하는 제 4 기능; 및 상기 제 3 기능의 판단결과, 상기 디버거가 실행 상태일 경우, 상기 시그널 처리 모듈이 시그널 인터럽트(SIGINT) 신호를 발생시키고, 상기 디버거에 전송하여, 상기 디버거가 대기 상태인가를 확인하는 제 5 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
상술한 목적, 특징들 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명한다.
도1은 본 발명이 적용되는 분산 시스템에서의 사용자 신호처리 시스템의 일실시예 구성도이다.
도1에 도시된 바와 같이, 본 발명이 적용되는 분산 시스템에서의 사용자 신호처리 시스템은, 사용자 인터페이스 모듈(101)과, 제 1 처리모듈(102) 및 통신모듈(103)을 포함하는 클라이언트 프로세스(10)와, 상기 클라이언트 프로세스(10)와 TCP/IP(Transport Control Protocol / Internet Protocol) 네트워크로 연결되어 있으며 원격 프로시저 호출(RPC : Remote Procedure Call) 통신을 하는 통신 모듈(103)과, 제 2 처리모듈(105)을 포함하는 서버 프로세스(11)와, 시그널 처리모듈(106)과, 상기 시그널 처리 모듈(106)의 자식 프로세스로 독립적으로 수행되는 디버거(107)를 구비한다. 여기서, 상기 시그널 처리 모듈(106)은 디버거(107)가 새로 만든 프로세스의 특성을 그대로 이어받아 동일한 프로세스 그룹이 되도록 디버거 프로세스를 생성한다. 또한, 상기 서버 프로세스(11)와 시그널 처리 모듈(106)은 익명의 파이프(anonymous pipe)로 연결되어 있으며, 상기 시그널 처리 모듈(106)과 디버거(107)도 익명의 파이프로 연결됨으로써, 상기 서버 프로세스(11)가 전송하는 사용자 신호를 상기 디버거(107)로 전송할 수 있다.
첨부된 도 2 는 본 발명에 따른 분산 시스템에서의 사용자 신호처리 방법에 대한 일실시예 처리흐름도이다.
먼저, 사용자가 클라이언트 프로세스(10)의 사용자 인터페이스 모듈(101)의 한 부분을 마우스로 클릭 하거나, 키보드로 명령을 입력하면(200), 이때, 하나의 이벤트가 발생하게 된다.
상기 클라이언트 프로세스(10)는 통신 모듈(103)을 통하여 상기 이벤트를 서버 프로세스(11)로 전송하고(202), 상기 서버 프로세스(11)는 통신 모듈(103)을 통하여 상기 이벤트를 수신하며, 디버깅하고 있는 프로그램을 이벤트에서 필요로 하는 실행상태로 만들거나, 디버깅하고 있는 프로그램 또는 디버깅하고 있는 프로그램의 정보를 수집하기 위하여 시그널 처리 모듈(106)을 통하여 디버거(107)에 이벤트 처리 명령을 전달한다. 이때 상기 시그널 처리 모듈(106)은 상기 서버 프로세스(11)로부터 수신한 이벤트 처리명령을 실행하기 전에 상기 디버거(107)의 현재 상태가 실행상태인지 대기상태인지를 파악한다(204).
상기 판단결과(204), 상기 디버거(107)가 대기상태일 경우, 상기 시그널 처리 모듈(106)은 이벤트 처리명령을 상기 디버거(107)에 전송하고, 상기 디버거(107)는 사용자 명령을 처리한다(206).
상기 시그널 처리 모듈(106)은 상기 디버거(107)의 이벤트 처리결과를 통신 모듈(103)을 통하여 상기 클라이언트(10)에 전송한다(208).
상기 판단결과(204), 상기 디버거(107)가 실행 상태일 경우, 이벤트 처리 명령을 상기 디버거(107)에 전송할 수 없으므로, 시그널 인터럽트(SIGINT) 신호를 발생시키고, 시그널 인터럽트 신호를 상기 디버거(107)에 전송하여(204), 상기 디버거(107)가 대기 상태인가를 확인한다(204).
상기와 같은 일련의 과정을 수행함으로써, 본 발명은, 상기 서버 프로세스(10)와 동일한 프로세스 그룹의 디버거(107)를 생성할 수 있어, 일반적인 프로그램과 달리 시그널 인터럽트(SIGINT) 신호를 처리할 수 있다.
이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 한정되는 것이 아니다.
상기와 같은 본 발명은, 서버가 프로그램을 사용할 경우, 생성되는 새로운 프로세스를 프로그램의 특성에 따라 별도의 프로세스 그룹으로 생성하지 않고, 시그널 처리 모듈을 사용하여 동일한 프로세스 그룹이 되도록 생성함으로써, 기존의 프로그램을 변경하지 않고 새로 생성된 프로세스를 제어할 수 있는 효과가 있다.

Claims (4)

  1. 분산 시스템에서의 사용자 신호를 처리하는 방법에 있어서,
    외부에서 클라이언트의 사용자 인터페이스 모듈에 명령을 입력하여 이벤트를 발생시키는 제 1 단계;
    상기 클라이언트가 서버 프로세스와 상호간에 상기 이벤트를 송수신하는 제 2 단계;
    시그널 처리 모듈이 디버거의 현재 상태가 실행상태인지 대기상태인지를 판단하는 제 3 단계;
    상기 제 3 단계의 판단결과, 상기 디버거가 대기상태일 경우, 상기 시그널 처리 모듈이 이벤트 처리명령을 상기 디버거에 전송하고, 상기 디버거가 사용자 명령을 처리하는 제 4 단계; 및
    상기 제 3 단계의 판단결과, 상기 디버거가 실행 상태일 경우, 상기 시그널 처리 모듈이 시그널 인터럽트(SIGINT) 신호를 발생시키고, 상기 디버거에 전송하여, 상기 디버거가 대기 상태인가를 확인하는 제 5 단계
    를 포함하는 분산 시스템에서의 사용자 신호처리 방법.
  2. 제 1 항에 있어서,
    상기 제 2 단계는,
    상기 클라이언트 프로세스가 상기 이벤트를 서버 프로세스로 전송하는 제 6 단계; 및
    상기 서버 프로세스가 상기 이벤트를 수신하여, 상기 시그널 처리 모듈을 통하여 상기 디버거에 이벤트 처리 명령을 전달하는 제 7 단계를 포함하는 분산 시스템에서의 사용자 신호처리 방법.
  3. 제 1 항 또는 제 2 항에 있어서,
    상기 제 4 단계는,
    상기 시그널 처리 모듈이 이벤트 처리명령을 상기 디버거에 전송하고, 상기 디버거가 사용자 명령을 처리하는 제 8 단계; 및
    상기 시그널 처리 모듈이 상기 디버거의 이벤트 처리결과를 상기 클라이언트에 전송하는 제 9 단계를 포함하는 분산 시스템에서의 사용자 신호처리 방법.
  4. 마이크로 프로세서를 구비한, 분산 시스템에서 사용자의 신호를 처리하는 장치에,
    외부에서 클라이언트의 사용자 인터페이스 모듈에 명령을 입력하여 이벤트를 발생시키는 제 1 기능;
    상기 클라이언트가 서버 프로세스와 상호간에 상기 이벤트를 송수신하는 제2 기능;
    시그널 처리 모듈이 디버거의 현재 상태가 실행상태인지 대기상태인지를 판단하는 제 3 기능;
    상기 제 3 기능의 판단결과, 상기 디버거가 대기상태일 경우, 상기 시그널 처리 모듈이 이벤트 처리명령을 상기 디버거에 전송하고, 상기 디버거가 사용자 명령을 처리하는 제 4 기능; 및
    상기 제 3 기능의 판단결과, 상기 디버거가 실행 상태일 경우, 상기 시그널 처리 모듈이 시그널 인터럽트(SIGINT) 신호를 발생시키고, 상기 디버거에 전송하여, 상기 디버거가 대기 상태인가를 확인하는 제 5 기능
    을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1019990061127A 1999-12-23 1999-12-23 분산 시스템에서의 사용자 신호처리 방법 KR20010057732A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990061127A KR20010057732A (ko) 1999-12-23 1999-12-23 분산 시스템에서의 사용자 신호처리 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990061127A KR20010057732A (ko) 1999-12-23 1999-12-23 분산 시스템에서의 사용자 신호처리 방법

Publications (1)

Publication Number Publication Date
KR20010057732A true KR20010057732A (ko) 2001-07-05

Family

ID=19628783

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990061127A KR20010057732A (ko) 1999-12-23 1999-12-23 분산 시스템에서의 사용자 신호처리 방법

Country Status (1)

Country Link
KR (1) KR20010057732A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100805182B1 (ko) * 2005-08-01 2008-02-21 후지쯔 가부시끼가이샤 작업 단계 실행 프로그램을 기록한 컴퓨터 판독가능기록매체 및 작업 단계 실행 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07114517A (ja) * 1993-10-15 1995-05-02 Fujitsu Ltd マルチプロセッサシステムのプログラム実行制御方式
JPH11134306A (ja) * 1997-10-27 1999-05-21 Hitachi Ltd 管理マネージャ計算機、記録媒体、および、計算機運用管理方法
KR100249797B1 (ko) * 1997-12-09 2000-03-15 정선종 알피씨 기반 분산처리 프로그램의 통신 이벤트/메시지 추적 방법
KR20000060827A (ko) * 1999-03-19 2000-10-16 구자홍 실시간 운영체계 커널(Real-time operating systemKernel)의 이벤트 전달 체계 구현방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07114517A (ja) * 1993-10-15 1995-05-02 Fujitsu Ltd マルチプロセッサシステムのプログラム実行制御方式
JPH11134306A (ja) * 1997-10-27 1999-05-21 Hitachi Ltd 管理マネージャ計算機、記録媒体、および、計算機運用管理方法
KR100249797B1 (ko) * 1997-12-09 2000-03-15 정선종 알피씨 기반 분산처리 프로그램의 통신 이벤트/메시지 추적 방법
KR20000060827A (ko) * 1999-03-19 2000-10-16 구자홍 실시간 운영체계 커널(Real-time operating systemKernel)의 이벤트 전달 체계 구현방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100805182B1 (ko) * 2005-08-01 2008-02-21 후지쯔 가부시끼가이샤 작업 단계 실행 프로그램을 기록한 컴퓨터 판독가능기록매체 및 작업 단계 실행 방법

Similar Documents

Publication Publication Date Title
US6891837B1 (en) Virtual endpoint
US6286003B1 (en) Remote controlling method a network server remote controlled by a terminal and a memory storage medium for HTML files
US7895605B2 (en) Method for tracking an event through multiple module-specific files
US20030028513A1 (en) System and method for providing help services
US20040059735A1 (en) Systems and methods for enabling failover in a distributed-object computing environment
JPH10301960A (ja) パラメータ相互作用定義項目を用いるネットワーク上の音声相互作用のための方法と装置
RU2004131023A (ru) Обеспечение защищенного ввода в систему с высоконадежной средой исполнения программ
US20020107915A1 (en) Protocol-independent JSP invocation
CN109165062A (zh) 一种终端远程协助控制方法及系统
KR20010057732A (ko) 분산 시스템에서의 사용자 신호처리 방법
WO2004029822A1 (en) Mechanism for implementing server-side pluglets
EP1856605B1 (en) Systems and methods for remote cross-platform instructions
US6957179B2 (en) On-chip emulator communication
CN114619462A (zh) 一种基于机器人流程自动化的远程桌面控制方法
Cisco Chapter 1--Command-Line Interface
JP2001249841A (ja) プロキシサーバを用いた自動再リクエスト方法
US8266247B2 (en) Relay processing apparatus, control method and program therefor, and terminal control server
KR100513159B1 (ko) 인터넷을 통해 asp를 사용하는 경우 단일 모드의터미널 통신 채널에 의한 프로그램의 다중 실행 방법과 그화면 크기의 자유로운 변경 방법
US20030030665A1 (en) Method, user interface module, intermediate modules as well as network management system equipped therewith for operating a user interface module
KR20020002939A (ko) 이동통신망에서의 가상현실 서비스 시스템 및 그 방법
KR100310289B1 (ko) 디버거 마스터를 이용한 칠 프로그램 공동 교차 디버깅 방법
JPH08129527A (ja) 端末制御方式及び端末制御方法
JP2625049B2 (ja) ブレーク信号監視時間設定方式
JP2001154861A (ja) プロセス非同期終了システムおよび方法
JPH0331935A (ja) ジョブ実行方式

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application