KR100359640B1 - 클래스 동적 추가 시스템 및 그 운용 방법 - Google Patents

클래스 동적 추가 시스템 및 그 운용 방법 Download PDF

Info

Publication number
KR100359640B1
KR100359640B1 KR1019990058678A KR19990058678A KR100359640B1 KR 100359640 B1 KR100359640 B1 KR 100359640B1 KR 1019990058678 A KR1019990058678 A KR 1019990058678A KR 19990058678 A KR19990058678 A KR 19990058678A KR 100359640 B1 KR100359640 B1 KR 100359640B1
Authority
KR
South Korea
Prior art keywords
class
dcl
dynamic
dynamic addition
file
Prior art date
Application number
KR1019990058678A
Other languages
English (en)
Other versions
KR20010056969A (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 KR1019990058678A priority Critical patent/KR100359640B1/ko
Publication of KR20010056969A publication Critical patent/KR20010056969A/ko
Application granted granted Critical
Publication of KR100359640B1 publication Critical patent/KR100359640B1/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/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 발명은 클래스 동적 추가 시스템(Dynamic Class Loading System) 및 그 운용 방법에 관한 것으로, 특히 로컬 영역의 시스템뿐만 아니라 네트워크를 통한 원격 시스템에서도 한 번의 명령으로 자동적으로 모든 클래스의 동적 추가가 가능하도록 하는 클래스 동적 추가 시스템 및 그 운용 방법에 관한 것이다.
종래의 망 관리 시스템에서 동적 클래스 추가를 위한 동작은 새로이 생성된 클래스의 공유 라이브러리와 메타 파일의 저장, 및 클래스의 이름과 OID의 등록 동작을 개발자가 직접 실행해야 하고, 새로운 클래스 추가 동작을 원격 시스템에서 이루어진 경우에는 해당 라이브러리와 메타 파일을 에이전트가 있는 시스템으로 파일을 전송해 DCL 저장부로 옮겨야 하는 불편함이 있으며, 또한, 클래스의 동적 추가가 여러 개발자에 의해 이루어지는 경우에는 클래스 동적 추가 명령을 순차적으로 처리하지 못하므로 클래스 동적 추가 시스템을 관리하기가 어려운 문제점이 있다.
본 발명은 개발자로부터 표준 입력을 수신받아 통신을 하기 위한 인터페이스인 소켓 통신 모듈을 통해 전송함으로써, 해당 파일 또는 정보를 개발자가 직접 저장시키거나 등록시키지 않아도 되며, 또한 원격 시스템에서 여러 개발자에 의해 새로운 클래스를 동적 추가하는 경우에도 해당 소켓 통신 모듈을 통해 입력되는 DCL 추가 요청 명령 등을 순차적으로 받아들여 처리할 수 있어 DCL 시스템 관리를 용이하도록 해 준다.

Description

클래스 동적 추가 시스템 및 그 운용 방법{A Dynamic class loading system and operation method thereof}
본 발명은 클래스 동적 추가 시스템(Dynamic Class Loading System) 및 그 운용 방법에 관한 것으로, 특히 로컬 영역의 시스템뿐만 아니라 네트워크를 통한 원격 시스템에서도 한 번의 명령으로 자동적으로 모든 클래스의 동적 추가가 가능하도록 한 클래스 동적 추가 시스템 및 그 운용 방법에 관한 것이다.
일반적으로 TMN(Telecommunication Management Network) 기반의 망 관리 기법은 관리 대상인 망 요소를 GDMO(Guidelines for the Definition of Manage Objects) 정의에 의해 모델링하고 관리 객체 클래스로 표현한다. 또한, 망 요소와 관련된 관리 정보의 표현을 위해서는 ASN.1(Abstract Syntax Notation.1) 표시법을 이용해 관리 정보 신택스(syntax)들을 정의한다. 이들은 각각 GDMO 문서와 ASN.1 문서로 기술되어 에이전트(agent) 개발에 사용된다.
그리고, GDMO 문서와 ASN.1 문서는 각각 GDMO 컴파일러(compiler)와 ASN.1 컴파일러를 통해 에이전트 개발을 위한 소스 코드(source code)(예, C 또는 C++ 등)로 컴파일되어 출력된다. 해당 소스 코드는 망 관리 플랫폼(Network Manage Platform)이 제공하는 각종 내부 라이브러리(Liberary)와 함께 연결(linking)되어 하나의 완성된 에이전트 소프트웨어(agent software)로 생성된다. 특히, GDMO 컴파일러와 ASN.1 컴파일러로부터 출력된 소스 코드에는 망 요소와의 상호 작용(interaction) 등을 위한 개발자 코드가 추가되어 있다. 이와 같이, 대부분의 망 관리 시스템 개발에서는 플랫폼에서 제공하는 내부 라이브러리뿐만 아니라 개발자가 만든 관리 객체 클래스 라이브러리까지도 함께 정적 연결(static linking)된다.
상술한 바와 관련된 종래의 관리 객체 클래스의 동적 추가 방법에 의하면 새로운 클래스 추가시에 망 관리 시스템의 중단없이 클래스의 런타임 추가 및 수정이 가능하도록 해 주는데, 특히 망 관리 시스템이 중단없이 유지 및 보수되어야 하는 경우에 매우 유용하다고 할 수 있다.
그러면, 종래의 망 관리 시스템에 대해서 살펴보면, 그 구성은 도 1 에 도시된 바와 같이 DCL(Dynamic Class Loading) 루틴(50)을 통해 신규 관리 객체의 동적 추가 기능을 지원하는 망 관리 시스템 코어(15)와, 동작 실행 과정 중에 상기 망 관리 시스템 코어(15)의 메모리(설명의 편의상 도면에는 도시하지 않음)에 상주하여 관리 객체를 생성하는 공유 라이브러리(shared library) 형식의 관리 객체 부분, 즉 MODL(Managed Object Dynamic Library)(16)을 포함한다.
망 관리 시스템 코어(15)는 DCL 루틴(50)을 지원하기 위하여 개발자와의 통신 기능을 담당하는 통신 모듈(11)과, 개발자로부터 수신한 관리 동작 요청의 처리 기능을 수행하고 동시에 관리 객체를 추가하는 DCL 루틴(50)을 통해 관리 객체의 동적 추가 기능을 지원하는 커널(12)과, 관리 객체 간의 포함 관계를 구현한 구조체인 포함 트리(13)와, 실제 관리 객체를 포함하고 있지 않고 관리 객체의 동적 추가 기능을 지원하는 루틴 및 자료 구조만 가지고 있는 관리 객체 프레임웍(Management Object Framework)(14)을 포함한다.
MODL(16)은 에이전트(설명의 편의상 도면에는 도시하지 않음) 내에 구성된 망 관리 시스템 코어(15)가 구동시에는 존재하지 않고 망 관리 시스템 코어(15)가 동작 수행 중에 망 관리 시스템 코어(15)에 추가된다. 또한, 망 관리 시스템 코어(15)는 DCL 루틴(50)을 포함하고 있으며, DCL 루틴(50)을 지원하기 위하여 모든 관리 객체는 동일한 베이스 클래스에서 상속받는다.
상술한 바와 같은 구성을 갖는 망 관리 시스템에서 동적 클래스 추가를 위한 동작은 도 2 에 도시된 바와 같이 수행되어 지는데, 먼저 로컬 영역의 시스템에서 한 명의 개발자가 기술한 GDMO 문서 또는 ASN.1 문서(20)를 이용해 추가할 관리 객체 클래스를 정의한다. 이때, GDMO 문서 또는 ASN.1 문서(20)은 로컬 영역의 시스템에서 한 명의 개발자에 의해 기술되어 입력되어야 한다. 해당 GDMO 문서 또는 ASN. 1 문서(20)는 GDMO 컴파일러 또는 ASN.1 컴파일러(21)를 통해 C 또는 C++ 형태의 소스 코드(22)와, 소스 코드(22)를 컴파일하기 위한 메이크 파일(23)과, 메타 파일(24)이 출력된다. 해당 출력된 소스 코드(22)는 개발자 코드와 함께 해당 출력된 메이크 파일(23)을 이용하여 소스 코드 컴파일러(25)에 의해 컴파일되어 공유 라이브러리 형태의 MODL(26)로 생성된다.
그리고, 소스 코드 컴파일러(25)에 의해 생성된 MODL(26)을 한 명의 개발자가 직접 파일 시스템, 즉 DCL 저장부(DCL repository)(27)에 저장한다. 또한, GDMO 컴파일러 또는 ASN.1 컴파일러(21)에 의해 출력된 메타 파일(24)을 로컬 영역의 시스템에서 한 명의 개발자가 직접 DCL 저장부(27)에 저장한다. 여기서, 메타 파일(24)은 새로 생성된 관리 객체 클래스에 대한 스켈레톤(Skeleton) 정보를 포함하고 있다.
관리 객체 클래스의 동적 추가를 수행할 에이전트에게 새로 추가되는 관리 객체 클래스가 무엇인지를 알려주기 위하여 추가될 클래스의 이름과, 관리 객체가 갖는 고유 ID를 표현하기 위한 클래스의 관리 객체 식별자(Object Identifier; 이하, 'OID'라 함)를 개발자가 직접 DCL 클래스 리스트 파일(28)에 등록한다.
한편, 망 관리 시스템 코어(15)에서는 망 관리 시스템 코어 프로그램을 실행시켜 통신 모듈(11), 커널(12), 포함 트리(13), 관리 객체 프레임웍(14)을 초기화시켜 대기 상태로 만들어 놓는데, 개발자로부터 관리 동작 요청 또는 관리 객체 동적 추가 지시를 수신할 때까지 망 관리 시스템 코어(15)는 대기 상태를 계속 유지한다.
이때, 망 관리 시스템 코어(15)가 개발자로부터 동적 추가 지시를 수신하면, 메타 파일(24)에 따른 클래스 정보 테이블의 초기화와 관리 객체의 추가 과정 순으로 수행하는 DCL 루틴(50)을 구동시켜 주게 된다.
그리고, DCL 루틴(50)의 수행 완료를 통보한 후에 망 관리 시스템 코어(15)는 다시 대기 상태로 되돌아간다.
다시 말하면, DCL 저장부(27)에 저장된 메타 파일(24)을 개방시켜 해당 메타 파일(24)에 따라 클래스 정보 테이블을 초기화하고, 메타 파일(24)에서 기술된 관리 객체 이름 및 MODL 파일 이름을 판독하여 해당 판독한 이름에 따라 소스 코드 컴파일러(25)에 의해 생성된 MODL(26)을 상기 망 관리 시스템 코어(15)의 메모리에 상주시킨다. 이에, DCL 저장부(27)에 저장시켜 두었던 MODL(26)을 상기 망 관리 시스템 코어(15)에서 실행시켜 메타 파일(24)에서 기술된 관리 객체 이름에 의하여 상기 MODL(26) 내의 관리 객체 생성 루틴의 주소를 찾아낸다. 찾은 관리 객체 생성 루틴의 주소를 클래스 정보 테이블에 등록시키고, 이에 따라 상기 클래스 정보 테이블에 저장된 관리 객체 생성 루틴 주소를 사용하여 관리 객체를 생성시킨다.
상술한 바와 같이, 종래의 망 관리 시스템에서 동적 클래스 추가를 위한 동작은 새로이 생성된 클래스의 공유 라이브러리와 메타 파일의 저장, 및 클래스의 이름과 OID의 등록 동작을 개발자가 직접 실행해야 하고. 또한, 새로운 클래스 추가 동작을 원격 시스템에서 이루어진 경우에는 해당 라이브러리와 메타 파일을 에이전트가 있는 시스템으로 파일을 전송해 DCL 저장부로 옮겨야 하는 불편함이 있었다.
또한, 클래스의 동적 추가가 여러 개발자에 의해 이루어지는 경우에는 클래스 동적 추가 명령을 순차적으로 처리하지 못하므로 클래스 동적 추가 시스템을 관리하기가 어려운 문제점이 있다.
본 발명은 상술한 바와 같은 불편함 및 문제점을 해결하기 위한 것으로, 로컬 영역 시스템뿐만 아니라 원격 시스템에서도 한 번의 명령으로 자동적으로 새로운 클래스의 동적 추가를 용이하게 수행할 수 있는 클래스 동적 추가 시스템 및 운용 방법을 제공하는데 그 목적이 있다.
본 발명의 또다른 목적은 여러 개발자에 의해 새로운 클래스를 추가하는 경우에 여러 개발자가 동시에 입력하는 클래스 동적 추가 명령을 순차적으로 받아들여 처리함으로써 DCL 시스템의 관리를 용이하게 하여 편리성을 향상시킬 수 있는 클래스 동적 추가 시스템 및 운용 방법을 제공하는 것이다.
도 1 은 종래 기술에 따른 클래스 동적 추가 시스템을 나타낸 구성 블록도이다.
도 2 는 종래 기술에 따른 클래스 동적 추가 시스템에서 클래스 동적 추가 절차를 설명하기 위한 구성 블록도이다.
도 3 는 본 발명의 바람직한 실시예에 따른 클래스 동적 추가 시스템을 나타낸 구성 블록도이다.
도 4 는 본 발명의 바람직한 실시예에 따른 클래스 동적 추가 방법을 나타내는 플로우챠트이다.
도 5 은 도 4에 있어 클래스의 동적 추가를 요청하는 과정을 설명하기 위한 플로우챠트이다.
도 6 은 도 4에 있어 클래스의 동적 추가를 명령하는 과정을 설명하기 위한 플로우챠트이다.
도 7 은 도 4에 있어 클래스의 동적 추가를 수행하고 그 결과를 통보하는 과정을 설명하기 위한 플로우챠트이다.
* 도면의 주요부분에 대한 부호의 설명 *
11, 31 : 통신 모듈 12, 32 : 커널
13, 33 : 포함 트리 14, 34 : 관리 객체 프레임웍
15, 35 : 망 관리 시스템 코어 16, 26 : MODL
20 : GDMO 문서 또는 ASN.1 문서 22 : 소스 코드
23 : 메이크 파일 24 : 메타 파일
25 : 소스 코드 컴파일러 27, 38 : DCL 저장부
28, 39 : DCL 클래스 리스트 파일 36 : DCL 인보커
37 : DCL 트리거 40 : 에이전트
50, 100 : DCL 루틴
본 발명에 따른 클래스 동적 추가 시스템은, 클래스 동적 추가에 필요한 정보 및 파일을 입력받아 출력함과 동시에 클래스 동적 추가 요청을 하는 DCL 인보커와; 상기 DCL 인보커로부터 클래스 동적 추가 요청을 받아 상기 정보 및 파일을 저장하거나 등록시킨 후 클래스 동적 추가 명령을 에이전트에게 내려 클래스 동적 추가 동작을 수행시키는 DCL 트리거를 구비하는 것을 특징으로 한다.
본 발명의 클래스 동적 추가 방법은, 클래스 동적 추가에 필요한 파일 및 정보를 전송함과 동시에 클래스 동적 추가 요청을 하는 과정과; 입력된 상기 파일 및 정보에 의해 클래스 동적 추가 명령을 내리는 과정과; 상기 파일 및 정보에 의해 새로운 관리 클래스를 생성하여 클래스의 동적 추가 동작을 수행하는 과정을 포함하는 것을 특징으로 한다.
이하, 본 발명의 바람직한 실시예를 첨부한 도면을 참조하여 설명하면 다음과 같다.
도 3 에 도시된 바와 같이, 본 발명에 따른 클래스 동적 추가 시스템은 DCL 인보커(36)와, DCL 트리거(37)와, 에이전트(40)로 이루어져 있다.
DCL 인보커(36)는 개발자에 의해 표준 입력을 이용하여 입력되는 정보를 처리하고 DCL 트리거(37)에 대한 정보 송수신 동작을 제어하는 프로세싱 모듈과, 프로세싱 모듈의 제어에 따라 DCL 트리거(37)에 대한 정보 송수신을 수행하는 소켓 통신 모듈을 구비하여 이루어 져서, 개발자로부터 클래스 동적 추가에 필요한 정보를 입력받아 DCL 트리거(37)에 클래스의 동적 추가를 요청하는데, 클래스 동적 추가에 필요한 정보(각종 파일 이름과 클래스 정보)를 수집하는 입출력점과, 여러 개발자에 의해 클래스 동적 추가 명령을 동시에 받으면 순차적으로 처리하여 DCL 트리거(37)에 클래스 동적 추가 요청을 하는 TCP/IP 포트(하부 통신 스택)를 이용한 통신점을 가진다.
DCL 트리거(37)는 송수신되는 정보를 처리하고 정보 송수신 동작을 제어하는 프로세싱 모듈과, 프로세싱 모듈의 제어에 따라 DCL 인보커(36)에 대한 정보 송수신을 수행하는 소켓 통신 모듈과, 프로세싱 모듈의 제어에 따라 에이젼트(40)에 대한 CMIP(Common Management Information Protocol; 이하, 'CMIP'라 함) 통신을 수행하는 CMIP 통신 모듈을 구비하여 이루어 져서, DCL 인보커(36)로부터 클래스의 동적 추가 요청을 받아 에이전트(40)에게 클래스의 동적 추가 명령을 내리는데, DCL 인보커(36)와 상기 클래스의 동적 추가에 필요한 정보 및 파일을 입출력점을 통해 입력받거나 해당 클래스의 동적 추가 결과를 DCL 인보커(36)에게 전달하고, 에이전트(40)와의 통신을 위한 CMIP 연계점을 통하여 해당 클래스의 동적 추가 명령을 내린다.
에이전트(40)는 망 관리 시스템 코어(35)와, DCL 저장부(38)와, DCL 클래스 리스트 파일(39)로 이루어지며, 망 관리 시스템 코어(35)는 DCL 루틴(100)을 통해 신규 관리 객체의 동적 추가 기능을 지원하고, DCL 저장부(38)는 추가될 클래스의 MODL과 클래스 동적 추가에 관련된 메타 파일을 저장하며, DCL 클래스 리스트 파일(39)은 동적으로 추가할 클래스의 이름과 OID를 기록한 파일을 구비한다.
그리고, 망 관리 시스템 코어(35)는 개발자와의 통신 기능을 담당하는 통신 모듈(31)과, 개발자로부터 수신한 관리 동작 요청을 처리하는 커널(32)과, 관리 객체간의 포함 관계를 구현한 구조체인 포함 트리(33)와, 관리 객체에 관련된 데이터와 코드를 제공하는 관리 객체 프레임웍(34)으로 이루어져 있다.
상술한 바와 같은 클래스 동적 추가 시스템에서의 클래스의 동적 추가 동작은 도 4에 도시된 바와 같이 수행된다.
먼저, DCL 인보커(36)와, DCL 트리거(37)와, 에이전트(40)를 초기화시켜 대기 상태로 만들어 놓는데, 클래스 동적 추가 요청 또는 클래스 동적 추가 명령을 수신할 때까지 계속 대기 상태로 유지된다.
대기 상태로 유지하던 중 개발자가 표준 입력을 이용하여 새롭게 추가될 클래스의 이름, 클래스의 OID와, 메타 파일의 위치와, 컴파일된 클래스의 공유 라이브러리의 파일 위치와, 메타 파일의 위치 등을 파라미터로 DCL 인보커(36)에 입력한다. 이에 DCL 인보커(36)에서는 입력된 파라미터를 이용해 공유 라이브러리와 메타 파일이 존재하는지 확인한 후 동적 추가될 클래스의 이름과 OID 및 클래스의 공유 라이브러리와 메타 파일을 수집하여 소켓 통신 모듈로 전송할 준비를 한다. 그리고, DCL 트리거(37)에게 해당 파일 및 정보를 전달함과 동시에 클래스의 동적 추가 요청을 한다(스텝 T1).
클래스 동적 추가 요청을 받은 DCL 트리거(37)는 클래스 라이브러리와 메타 파일을 DCL 저장부(38)에 저장함과 아울러 동적 추가될 클래스의 이름과 OID를 DCL 클래스 리스트 파일(39)에 등록하고, 에이전트(40)에게 클래스 동적 추가 명령을 내린다(스텝 T2).
클래스 동적 추가 명령을 인가받은 에이전트(40)는 클래스 동적 추가 동작을 수행하고, 그 결과를 DCL 트리거(37)를 통해 DCL 인보커(36)에게 전달하여 출력케 한다(스텝 T3).
상술한 과정 중 클래스의 동적 추가 요청을 하는 과정(스텝 T1)과, 클래스의 동적 추가 명령을 하는 과정(스텝 T2)와, 클래스의 동적 추가 동작을 수행하는 과정(스텝 T3)을 상세히 설명하면 다음과 같이 수행된다.
먼저, 클래스의 동적 추가 요청을 하는 과정(스텝 T1)은 도 5 에 나타낸 바와 같이, DCL 인보커(36)와, DCL 트리거(37)와, 에이전트(40)의 내부를 초기화시킨 후(스텝 E1), DCL 인보커(36)는 통신을 하기 위한 인터페이스인 소켓 통신 모듈을 연결시킨다(스텝 E2). 개발자로부터 추가될 클래스의 이름과 클래스의 OID와 컴파일된 클래스의 MODL와 메타 파일 위치 등을 파라미터(parameter)로 입력받는데(스텝 E3), 해당 메타 파일에는 새로 생성된 관리 객체 클래스에 대한 스켈레톤(skeleton) 정보가 포함되어 있고 또한 클래스 구성에 필요한 패키지(package), 속성(attribute), 동작(action), 사건 보고(notification) 등의 정보를 포함하고 있으며, 해당 스켈레톤 정보에는 에이전트 개발을 위한 기본적인 정보가 포함되어 있다. 그리고, 입력된 파라미터를 이용해 MODL와 메타 파일이 존재하는지 확인하여 소켓 통신 모듈을 통해 DCL 트리거(37)에 전송할 준비를 한다(스텝 E4). 만약, 여러 개발자로부터 클래스 동적 추가에 필요한 정보 및 파일이 인가되는 경우에 DCL 인보커(36)는 해당 정보 및 파일을 순차적으로 처리하여 소켓 통신 모듈을 통해 DCL 트리거(37)로 전송한다(스텝 E5).
클래스의 동적 추가 명령을 하는 과정(스텝 T2)은, 도 6 에 나타낸 바와 같이 수행되는데, 우선, 대기 상태로 유지하던 DCL 트리거(37)는 DCL 인보커(36)로부터 클래스 동적 추가 동작의 요청이 감지되면(스텝 P1), 소켓 통신 모듈을 통해 동적 추가될 클래스의 정보와 파일들을 전송받는다(스텝 P2). 해당 클래스의 정보와 파일 중 클래스의 MODL와 메타 파일은 에이전트(40) 내부의 DCL 저장부(38)에 저장하고(스텝 P3), 클래스의 동적 추가 동작을 수행할 에이전트(40)에게 새로이 추가되는 관리 객체 클래스가 무엇인지를 알려주기 위하여 동적 추가될 클래스의 이름과 OID는 DCL 클래스 리스트 파일(39)에 등록한다(스텝 P4). 그리고, DCL 트리거(37)는 클래스의 동적 추가를 위하여 망 관리 프로토콜을 이용하여 망 관리 서비스인 CMIS(Common Management Information Service)의 M_Action(Management Action), 즉, 관리 동작을 요청함으로써 클래스 동적 추가를 수행하라는 메세지인 M_Action 망 관리 프로토콜(CMIP) 메세지를 생성하여 에이전트(40)에게 M_Action 관리 동작을 요청하여 클래스 동적 추가 명령을 내린다(스텝 P5).
그리고, 클래스의 동적 추가 동작을 수행하는 과정(스텝 T3)은 도 7 에 나타낸 바와 같이 수행된다. 즉, DCL 트리거(37)로부터 M_Action을 이용하여 클래스 동적 추가 명령을 받으면(스텝 ST1), DCL 저장부(38)에 저장되어 있는 메타 파일을 개방시켜 메타 파일에 따라 내부 클래스 정보 테이블을 초기화시키고(스텝 ST2), 메타 파일에서 기술된 관리 객체 이름 및 추가될 클래스의 MODL 파일 이름을 판독하여 판독한 이름에 따라 소스 코드 컴파일러를 통해 생성된 MODL을 망 관리 시스템 코어(35)의 메모리(도시않됨)에 상주시킨다.
이에, DCL 저장부(38)에 저장시켜 두었던 MODL을 망 관리 시스템 코어(35)에서 실행시켜 메타 파일에서 기술된 관리 객체 이름에 의하여 MODL 내의 관리 객체생성 루틴의 주소를 찾아내고(스텝 ST3), 찾은 관리 객체 생성 루틴의 주소를 클래스 정보 테이블에 등록시킨다(스텝 ST4).
이에 따라, 클래스 정보 테이블에 저장된 관리 객체 생성 루틴 주소를 사용하여 관리 객체를 생성시킨다. 이때, 클래스 동적 추가 작업의 결과를 DCL 트리거(37)에게 관리 동작 응답 메세지인 M_ActionRes(Management Action Reponse) 메세지로 전달하여 클래스 동적 추가 작업을 종료한다(스텝 ST5).
상술한 바와 같이, 본 발명은 개발자로부터 표준 입력 받아 통신을 하기 위한 인터페이스인 소켓 통신 모듈을 통해 전송함으로써, 해당 파일 또는 정보를 개발자가 직접 저장시키거나 등록시키지 않아도 되며, 원격 시스템에서 여러 개발자에 의해 새로운 클래스를 동적 추가하는 경우에도 해당 소켓 통신 모듈을 통해 입력되는 DCL 추가 요청 명령등을 순차적으로 받아들여 처리할 수 있어 DCL 시스템 관리를 용이한다.

Claims (7)

  1. 클래스 동적 추가에 필요한 정보 및 파일을 입력받아 출력함과 동시에 클래스 동적 추가 요청을 하는 DCL 인보커와;
    상기 DCL 인보커로부터 클래스 동적 추가 요청을 받아 상기 정보 및 파일을 저장하거나 등록시킨 후 클래스 동적 추가 명령을 에이전트에게 내려 클래스 동적 추가 동작을 수행시키는 DCL 트리거를 구비하는 것을 특징으로 하는 클래스 동적 추가 시스템.
  2. 제 1 항에 있어서, 상기 DCL 인보커는
    개발자로부터 상기 클래스 동적 추가에 필요한 정보 및 파일을 입력받는 입출력점과, 상기 DCL 트리거에게 클래스 동적 추가 요청을 하는 TCP/IP 포트인 통신점을 가지는 것을 특징으로 하는 클래스 동적 추가 시스템.
  3. 제 1 항에 있어서, 상기 DCL 트리거는
    상기 DCL 인보커와 상기 클래스의 동적 추가에 필요한 정보 및 파일을 입력받아 해당 클래스의 동적 추가 결과를 전달하는 입출력점과, 상기 에이전트에 클래스 동적 추가 명령을 내리기 위한 CMIP(Common Management Information Protocol) 연계점을 가지는 것을 특징으로 하는 클래스 동적 추가 시스템.
  4. 클래스 동적 추가에 필요한 파일 및 정보를 전송함과 동시에 클래스의 동적 추가 요청을 하는 과정과;
    입력된 상기 파일 및 정보를 전달하고, 상기 파일 및 정보에 의해 클래스 동적 추가 명령을 내리는 과정과;
    상기 파일 및 정보에 의해 새로운 관리 클래스를 생성하여 클래스의 동적 추가 동작을 수행하는 과정을 포함하는 것을 특징으로 하는 클래스 동적 추가 방법.
  5. 제 4 항에 있어서, 상기 동적 클래스 추가 요청을 하는 과정은,
    내부를 초기화하여 소켓 통신 모듈을 연결하고, 개발자로부터 클래스의 동적 추가에 필요한 MODL(Managed Object Dynamic Library)과 메타 파일 및 클래스의 이름과 관리 객체 식별자(Object Identifier; OID)를 입력받는 단계와;
    상기 클래스의 MODL과 메타 파일 및 상기 클래스의 이름과 OID를 상기 소켓 통신 모듈을 통해 DCL 트리거에 전송하는 단계를 더 포함하는 것을 특징으로 하는 클래스 동적 추가 방법.
  6. 제 4 항에 있어서, 상기 클래스 동적 추가 명령을 내리는 과정은,
    내부 초기화를 수행하여 소켓 통신 모듈이 연결되면 상기 소켓 통신 모듈에 포함된 클래스 동적 추가 요청에 의해 클래스 동적 추가에 필요한 데이터 및 파일을 수집하는 단계와;
    상기 데이터 및 파일에 의거해 상기 클래스의 MODL와 메타 파일을 DCL 저장부에 저장하는 단계와;
    상기 데이터 및 파일에 의거해 상기 클래스 이름 및 OID를 상기 DCL 클래스 리스트 파일에 등록하는 단계와;
    상기 데이터 및 파일에 의거해 상기 에이전트에 클래스 동적 추가 명령을 하는 단계를 더 포함하는 것을 특징으로 하는 클래스 동적 추가 방법.
  7. 제 4 항에 있어서, 상기 클래스 동적 추가 동작을 수행하는 과정은,
    DCL 트리거로부터 상기 클래스 동적 추가 명령을 입력받는 단계와;
    상기 클래스 동적 추가 명령에 의해 DCL 저장부에 저장된 메타 파일에 따라 클래스 정보 테이블을 초기화하는 단계와;
    상기 클래스 정보 테이블에 등록될 관리 객체 생성 루틴의 주소를 찾는 단계와;
    상기 관리 객체 생성 루틴의 주소를 상기 클래스 정보 테이블에 등록하는 단계와;
    새로운 관리 객체 클래스의 등록으로 종료된 클래스 동적 추가의 결과를 상기 DCL 트리거를 경유하여 상기 DCL 인보커로 전송하는 단계와;
    상기 DCL 인보커에서 입력받은 상기 클래스 동적 추가 결과를 출력하는 단계를 더 포함하는 것을 특징으로 하는 클래스 동적 추가 방법.
KR1019990058678A 1999-12-17 1999-12-17 클래스 동적 추가 시스템 및 그 운용 방법 KR100359640B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990058678A KR100359640B1 (ko) 1999-12-17 1999-12-17 클래스 동적 추가 시스템 및 그 운용 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990058678A KR100359640B1 (ko) 1999-12-17 1999-12-17 클래스 동적 추가 시스템 및 그 운용 방법

Publications (2)

Publication Number Publication Date
KR20010056969A KR20010056969A (ko) 2001-07-04
KR100359640B1 true KR100359640B1 (ko) 2002-11-04

Family

ID=19626661

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990058678A KR100359640B1 (ko) 1999-12-17 1999-12-17 클래스 동적 추가 시스템 및 그 운용 방법

Country Status (1)

Country Link
KR (1) KR100359640B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10252610B2 (en) 2017-03-07 2019-04-09 Toyota Motor Engineering & Manufacturing North America, Inc. Electric vehicle and fuel cell vehicle with rankine cycle

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06324876A (ja) * 1993-05-17 1994-11-25 Hitachi Ltd オブジェクト情報定義支援システム
JPH06332784A (ja) * 1993-05-25 1994-12-02 Fujitsu Ltd オブジェクト指向データ処理システム
JPH0950370A (ja) * 1995-06-07 1997-02-18 Internatl Business Mach Corp <Ibm> 高機能作成者クラス・パターン、マシン実行手続きおよびオブジェクト指向プログラミング・システム
JPH09251470A (ja) * 1996-03-14 1997-09-22 Omron Corp データベース検索方法及び装置
JPH1063486A (ja) * 1996-08-21 1998-03-06 Meidensha Corp クラスライブラリの管理方法並びにソフトウェア部品の生成方法
JPH1063504A (ja) * 1996-08-27 1998-03-06 Nippon Telegr & Teleph Corp <Ntt> オブジェクト指向装置
JPH10232769A (ja) * 1997-02-19 1998-09-02 Hitachi Ltd クラス追加支援方法
KR19980054708A (ko) * 1996-12-27 1998-09-25 김용구 N-니트로구아니딘 유도체 및 이의 제조방법

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06324876A (ja) * 1993-05-17 1994-11-25 Hitachi Ltd オブジェクト情報定義支援システム
JPH06332784A (ja) * 1993-05-25 1994-12-02 Fujitsu Ltd オブジェクト指向データ処理システム
JPH0950370A (ja) * 1995-06-07 1997-02-18 Internatl Business Mach Corp <Ibm> 高機能作成者クラス・パターン、マシン実行手続きおよびオブジェクト指向プログラミング・システム
JPH09251470A (ja) * 1996-03-14 1997-09-22 Omron Corp データベース検索方法及び装置
JPH1063486A (ja) * 1996-08-21 1998-03-06 Meidensha Corp クラスライブラリの管理方法並びにソフトウェア部品の生成方法
JPH1063504A (ja) * 1996-08-27 1998-03-06 Nippon Telegr & Teleph Corp <Ntt> オブジェクト指向装置
KR19980054708A (ko) * 1996-12-27 1998-09-25 김용구 N-니트로구아니딘 유도체 및 이의 제조방법
JPH10232769A (ja) * 1997-02-19 1998-09-02 Hitachi Ltd クラス追加支援方法

Also Published As

Publication number Publication date
KR20010056969A (ko) 2001-07-04

Similar Documents

Publication Publication Date Title
EP0753811B1 (en) Data processing method and device
US6981266B1 (en) Network management system and method
US5860004A (en) Code generator for applications in distributed object systems
US6470375B1 (en) System and method for managing the execution of system management tasks
US9830135B2 (en) Declarative and pluggable business logic for systems management
JP5420139B2 (ja) ダイナミック・サービス・サロゲート
EP0463764A2 (en) Common agent computer management system and method
JPH08263292A (ja) オブジェクト指向プログラミング・インターフェース及びマップする方法
JP2006252536A (ja) レガシーコンポーネントのための動的サービスの生成
US20150220327A1 (en) Extensible data model and service for infrastructure management
RU2359316C2 (ru) Способ администрирования компонентов программного обеспечения, интегрированных в мобильную систему
US7237222B1 (en) Protocol for controlling an execution process on a destination computer from a source computer
WO2000045238A2 (en) Dynamic configuration of activators in a client-server environment
JPH11282658A (ja) 対話的ソフトウエア構築・駆動装置
KR100359640B1 (ko) 클래스 동적 추가 시스템 및 그 운용 방법
KR101190597B1 (ko) 로봇 소프트웨어 컴포넌트를 위한 메소드 포트 장치 및 구성 방법
US20070214419A1 (en) Integrated service creation and execution platforms for the converged networks
Srinivasmurthy et al. Web2exchange: A model-based service transformation and integration environment
Levi et al. RFC2592: Definitions of Managed Objects for the Delegation of Management Script
US20060184550A1 (en) Information processing apparatus and method, and computer readable memory
KR100321764B1 (ko) 이질적운용환경을갖는통신망운용관리시스템들의통합관리에의한통합응용서비스구현방법
KR100919053B1 (ko) 이동통신 단말기 프레임워크에서의 하드웨어 컴포넌트관리방법 및 장치
US20100023923A1 (en) Method for medeling objects in a hetrogenious computing environment
CN116795336A (zh) 业务接口注册方法及装置、使用方法及装置、设备及介质
JP2001331457A (ja) 分散共有メモリ方式

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
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: 20110909

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20121004

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee