KR20080040103A - Software communication architecture based system for supporting component hot-swapping and supporting method thereof - Google Patents
Software communication architecture based system for supporting component hot-swapping and supporting method thereof Download PDFInfo
- Publication number
- KR20080040103A KR20080040103A KR1020060107637A KR20060107637A KR20080040103A KR 20080040103 A KR20080040103 A KR 20080040103A KR 1020060107637 A KR1020060107637 A KR 1020060107637A KR 20060107637 A KR20060107637 A KR 20060107637A KR 20080040103 A KR20080040103 A KR 20080040103A
- Authority
- KR
- South Korea
- Prior art keywords
- application
- component
- application component
- interface
- sca
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Abstract
Description
도 1은 본 발명의 실시예에 따른 컴포넌트 핫스와핑을 지원하는 SCA 기반 시스템의 개략적인 구성도이다.1 is a schematic diagram of an SCA-based system supporting component hot swapping according to an embodiment of the present invention.
도 2는 본 발명의 실시예에 따른 SCA 기반 시스템의 코어 프레임워크 인터페이스를 나타내는 도면이다.2 is a diagram illustrating a core framework interface of an SCA-based system according to an embodiment of the present invention.
도 3은 본 발명의 실시예에 따른 SCA 기반 시스템의 코어 프레임워크 인터페이스 중에서 변경된 인터페이스들을 예시하는 도면이다.3 is a diagram illustrating modified interfaces among core framework interfaces of an SCA-based system according to an embodiment of the present invention.
도 4는 본 발명의 실시예에 따른 SCA 기반 시스템의 애플리케이션 설치 및 인스턴스 생성 방법을 나타내는 동작 흐름도이다.4 is a flowchart illustrating an application installation and instance creation method of an SCA-based system according to an exemplary embodiment of the present invention.
도 5는 본 발명의 실시예에 따른 SCA 기반 시스템의 컴포넌트 핫스와핑 처리 방법을 나타내는 동작 흐름도이다.5 is a flowchart illustrating a method for processing component hot swapping in an SCA-based system according to an exemplary embodiment of the present invention.
도 6은 본 발명의 실시예에 따른 SCA 기반 시스템의 애플리케이션 설치 해제 및 인스턴스 제거 방법을 나타내는 동작 흐름도이다.6 is an operation flowchart illustrating a method of uninstalling an application and removing an instance of the SCA-based system according to an embodiment of the present invention.
본 발명은 SCA(Software Communication Architecture) 기반 시스템 및 그 지원 방법에 관한 것으로, 보다 구체적으로는 컴포넌트 핫스와핑(Hot-swapping)을 지원하는 SCA 기반 시스템 및 그 지원 방법에 관한 것이다.The present invention relates to a software communication architecture (SCA) based system and a method for supporting the same, and more particularly, to an SCA based system and a method for supporting the component hot-swapping.
SCA란 표준화된 통신 소프트웨어 구조로서, 미국의 Joint Tactical Radio System(JTRS) Joint Program Office(JPO)에서 통신 시스템간 상호 연동성을 크게 개선하고, 개발 및 배치 비용을 줄이고자 제안한 것이다. 이러한 SCA는 실시간 운영체제(Operating System: OS)와 분산 객체 모델의 산업 표준인 코바(Common Object Request Broker Architecture: CORBA)를 미들웨어로 채택하여 이기종의 하드웨어와 소프트웨어의 통합 환경을 제공하고 있다. 이는 특정 시스템에 한정되는 규격이 아니라 독립적인 시스템 디자인 프레임워크(Framework)이다.SCA is a standardized communication software structure that the Joint Tactical Radio System (JTRS) Joint Program Office (JPO) of the United States has proposed to greatly improve interoperability between communication systems and reduce development and deployment costs. The SCA adopts a common object request broker architecture (CORBA), which is an industry standard for a real-time operating system (OS) and a distributed object model, as a middleware to provide an integrated environment of heterogeneous hardware and software. This is an independent system design framework, not a specification specific to a particular system.
SCA 기반 시스템은 이러한 SCA 구조를 기반으로 이루어진 통신 시스템 또는 장치를 말한다. 예를 들면, SDR(Software Defined Radio) 시스템은 소프트웨어 프레임워크의 표준으로 SCA를 채택하고 있다. SCA에서, 하나의 애플리케이션은 여러 개의 애플리케이션 컴포넌트들을 하나의 패키지로 묶어 설치하거나 배치하여 실행한다.SCA-based system refers to a communication system or device based on this SCA structure. For example, SDR (Software Defined Radio) systems adopt SCA as a standard for software frameworks. In SCA, one application executes by installing or deploying several application components in one package.
현재 SCA 기반의 소프트웨어 프레임워크를 적용한 시스템이 소수 출시되고 있으나, 초기 버전에 버그 수정 및 기능 보완에 따른 버전을 계속 업그레이드해 가고 있는 실정이며, 또한, SCA 표준에서도 배치 수준의 소프트웨어 컴포넌트 기술에 대하여는 제공하지 않고 있으며, 배치와 교체가 가능한 컴포넌트 파일을 저장하거 나 관리하는 메커니즘을 제시하지 않고, 또한 소프트웨어를 통한 모드 절체 방법도 제공하지 않고 있는 실정이다.Currently, a small number of systems using SCA-based software frameworks are being released, but the current version is constantly being upgraded with bug fixes and feature enhancements. Also, the SCA standard provides deployment level software component technology. It does not provide a mechanism to store or manage component files that can be deployed and replaced, and does not provide a mode switching method through software.
기존의 SCA 규격은 배치할 SW 컴포넌트를 하나의 애플리케이션 패키지로 구성함으로써, 그 배치, 구동 및 제어를 패키지 단위로 수행하며, 애플리케이션 내의 특정 컴포넌트의 갱신 등의 이유로 교체가 필요할 경우, 전체 애플리케이션을 종료한 후에 신규 컴포넌트를 포함한 애플리케이션 패키지를 재배치 및 구동시켜야 하므로 매우 불편하다는 문제점이 있었다. The existing SCA standard configures SW components to be deployed as one application package, so that the deployment, operation, and control are carried out in package units, and when the replacement is necessary due to the update of a specific component in the application, the entire application is terminated. After that, the application package including the new component has to be redeployed and run, which is very inconvenient.
상기 문제점을 해결하기 위한 본 발명이 이루고자 하는 기술적 과제는, SCA 기반 시스템에서 핫스와핑을 지원하도록 인터페이스를 변경 및 수정함으로써 SCA 기반 시스템을 보다 효율적으로 제어할 수 있는 컴포넌트 핫스와핑을 지원하는 SCA 기반 시스템 및 그 구현 방법을 제공하기 위한 것이다. The technical problem to be solved by the present invention, SCA-based system that supports component hot swapping to more efficiently control the SCA-based system by changing and modifying the interface to support hot swapping in the SCA-based system And to provide a method of implementation thereof.
상기 과제를 달성하기 위한 본 발명의 하나의 특징에 따른 SCA 기반 시스템은,SCA based system according to one feature of the present invention for achieving the above object,
SCA 기반 시스템에 배치되어 구동되며, 다수의 애플리케이션 컴포넌트로 패키지화되는 애플리케이션 모듈; 상기 애플리케이션 모듈에서의 애플리케이션 설치 및 해제를 위한 메소드(Method) 및 상기 애플리케이션 컴포넌트의 핫스와핑(Hot-swapping)을 지원하는 애플리케이션 갱신 메소드를 제공하는 도메인 관리자 인터페이스(Domain Manager); 상기 애플리케이션 모듈 내의 특정 애플리케이션 컴포넌트 만을 시작시키거나 중지시키도록 상기 특정 애플리케이션 컴포넌트를 지정하는 파라미터를 갖는 자원 인터페이스(Resource); 및 상기 특정 애플리케이션 컴포넌트의 생성 및 교체 후에 다른 애플리케이션 컴포넌트들과의 연결을 설정하는 애플리케이션 팩토리 인터페이스(Application Factory)를 포함한다.An application module disposed and driven in an SCA-based system and packaged into a plurality of application components; A domain manager interface for providing a method for installing and uninstalling an application in the application module and an application updating method for supporting hot swapping of the application component; A resource interface having a parameter specifying the specific application component to start or stop only a specific application component in the application module; And an application factory interface for establishing a connection with other application components after creation and replacement of the specific application component.
본 발명의 다른 특징에 따른 SCA 기반 시스템에서의 핫스와핑 지원 방법은,Hot swapping support method in an SCA-based system according to another aspect of the present invention,
a) 핫스와핑 기능 수행이 가능하도록 SCA 기반 시스템 내에 포함된 도메인 관리자 인터페이스, 자원 인터페이스 및 애플리케이션 팩토리 인터페이스를 변경하는 단계; b) 애플리케이션 모듈 내에서 교체될 애플리케이션 컴포넌트를 지정하고, 이전의 애플리케이션 컴포넌트를 종료시키는 단계; c) 상기 교체될 애플리케이션 컴포넌트를 로드하여 실행시키는 단계; 및 d) 상기 교체될 애플리케이션 컴포넌트에 관련된 연결을 재설정하는 단계를 포함한다.a) modifying a domain manager interface, a resource interface, and an application factory interface included in the SCA based system to enable hot swapping functions; b) designating an application component to be replaced in the application module and terminating the previous application component; c) loading and executing the application component to be replaced; And d) resetting the connection associated with the application component to be replaced.
이하, 첨부된 도면을 참조하여, 본 발명의 실시예에 따른 컴포넌트 핫스와핑을 지원하는 SCA 기반 시스템 및 그 구현 방법에 대해서 상세하게 설명한다.Hereinafter, an SCA-based system supporting component hot swapping and an implementation method thereof will be described in detail with reference to the accompanying drawings.
통상적으로, 핫스와핑(Hot-swapping)이란 컴퓨터 전원을 끄지 않고서 각종 주변장치들을 연결하여 사용 가능하게 하는 기술을 말하며, 본 발명의 실시예에 따른 핫스와핑은 애플리케이션 내의 특정 컴포넌트의 갱신 등의 이유로 교체가 필요할 경우에도 전체 애플리케이션을 종료하지 않고서 신규 컴포넌트를 포함한 애플리케이션 패키지를 재배치 및 구동시킬 수 있는 것을 말한다.In general, hot-swapping refers to a technology for connecting and using various peripheral devices without turning off a computer. The hot-swapping according to an embodiment of the present invention is replaced due to an update of a specific component in an application. If you need to, you can relocate and run an application package containing new components without shutting down the entire application.
도 1은 본 발명의 실시예에 따른 컴포넌트 핫스와핑을 지원하는 SCA 기반 시스템의 개략적인 구성도로서, SCA 기반의 소프트웨어 기능별 컴포넌트의 관점에서 바라본 본 발명의 실시예에 따른 SCA 기반 시스템의 구성도이다.1 is a schematic configuration diagram of an SCA-based system supporting component hot swapping according to an embodiment of the present invention, and is a configuration diagram of an SCA-based system according to an embodiment of the present invention as viewed from the perspective of SCA-based software functional components. .
도 1을 참조하면, 본 발명의 실시예에 따른 SCA 기반 시스템(100)은 기본적으로 실시간 운영체제(110)를 포함하고, 또한 SCA 규격에서 규정하고 있는 코바(CORBA) 미들웨어(120)를 포함한다.Referring to FIG. 1, the SCA-based
또한, 상기 운영체제(110)와 CORBA 미들웨어(120) 위에 SCA를 기반으로 하는 재구성 코어 프레임워크(Reconfigurable Core Framework: RCF)(130)가 배치되는데, 상기 재구성 코어 프레임워크(130)는 도메인 관리자(Domain Manager: 131), 디바이스 관리자(Device Manager: 132), 애플리케이션 팩토리(Application Factory: 133), 파일 관리자(File Manager: 134) 등의 여러 개의 컴포넌트로 구성되어 시스템 재구성을 지원하게 된다. 이에 따라 소프트웨어 제어 및 구성을 위한 다수의 애플리케이션(140)은 애플리케이션 컴포넌트(144a~144n)로 구성되어 패키지화된다.In addition, a reconfigurable core framework (RCF) 130 based on SCA is disposed on the
여기서, 재구성 코어 프레임워크(130)의 도메인 관리자(131)는 디바이스와 애플리케이션의 등록 및 해제를 담당한다. 또한, 하드웨어 디바이스를 기능적으로 추상화한 다수의 논리적 디바이스에 대해, 디바이스 관리자(132)는 이러한 다수의 디바이스를 관리한다.Here, the
또한, 다수의 XML(eXtensible Markup Language) 파일(143a~143n)은 하드웨어 및 소프트웨어 정보를 기술하고 있고, 재구성 코어 프레임워크(130)의 애플리케이션 팩토리(133)는 애플리케이션(140)의 생성을 담당한다. 본 발명의 실시예에서, 애플리케이션 팩토리(133)는 다수의 XML 파일(143a~143n)에 기술된 컴포넌트와 컴포넌트(144a~144n)간 연결을 설정함으로써 데이터의 송수신이 가능하게 한다. In addition, a plurality of XML (eXtensible Markup Language)
본 발명의 실시예에 따라 재구성 코어 프레임워크(130)의 도메인 관리자(131)와 연계하여 통신 장치(100)에 애플리케이션 패키지의 다운로드와 배치 및 구동을 담당하는 운용자 인터페이스를 사용하여 SW 컴포넌트들을 하나의 애플리케이션 패키지로 구성하고, 이를 실행 디바이스에 배치하여 구동시키게 된다. 이때, 애플리케이션 패키지 정보, 컴포넌트 패키지 정보, 컴포넌트 정보 등은 각 XML 파일(143a~143n)에 기술되어 있다.According to an embodiment of the present invention, the SW components are connected to each other by using an operator interface that is in charge of downloading, deploying, and driving an application package to the
또한, 도메인 관리자(Domain Manager: 131)는 프레임워크 내에 한 개가 존재하며, 프레임워크 내의 모든 정보를 가지고, 이를 제어하는 핵심적인 역할을 수행하게 된다.In addition, one
본 발명의 실시예는 교체될 특정 컴포넌트를 지정하여 종료시킨 다음에 신규 컴포넌트를 로드 및 실행시키고, 이후 신규 컴포넌트에 관련된 연결을 재설정하는 절차를 통하여 핫스와핑 기능을 수행하게 되는데, 이하, 도 2 내지 도 6을 참조하여 구체적으로 설명하기로 한다.An embodiment of the present invention performs a hot swapping function through a procedure of designating and terminating a specific component to be replaced, loading and executing a new component, and then reestablishing a connection related to the new component. This will be described in detail with reference to FIG. 6.
도 2는 본 발명의 실시예에 따른 SCA 기반 시스템의 코어 프레임워크 인터페이스를 나타내는 도면이다.2 is a diagram illustrating a core framework interface of an SCA-based system according to an embodiment of the present invention.
도 2를 참조하면, 본 발명의 실시예에 따른 SCA 기반 시스템의 코어 프레임워크 인터페이스는, 베이스 애플리케이션 인터페이스(Base Application Interface: 210), 프레임워크 제어 인터페이스(Framework Control Interface: 220) 및 프레임워크 서비스 인터페이스(Framework Service Interface: 230)로 분류할 수 있다.2, a core framework interface of an SCA-based system according to an embodiment of the present invention may include a
베이스 애플리케이션 인터페이스(210)는, 포트 인터페이스(211), 포트 제공 자 인터페이스(212), 수명주기 인터페이스(213), 테스트 객체 인터페이스(214), 프라퍼티셋 인터페이스(215), 자원 인터페이스(216), 자원 팩토리 인터페이스(217) 등의 여러 인터페이스들로 이루어져 있고, 이들 인터페이스들은 도 1에 도시된 애플리케이션(140)이 기본적으로 동작하기 위해 필요한 인터페이스들이다.The
프레임워크 제어 인터페이스(220)는 프레임워크 내의 자원들을 생성시키고, 이를 관리 및 제어하는데 필요한 인터페이스로서, 애플리케이션 인터페이스(221) 애플리케이션 팩토리 인터페이스(222), 도메인 관리자 인터페이스(223), 디바이스 인터페이스(224), 로드 디바이스 인터페이스(225), 실행 디바이스 인터페이스(226), 집합 디바이스 인터페이스(227), 디바이스 관리자 인터페이스(228) 등으로 구성된다.The
마지막으로, 프레임워크 서비스 인터페이스(230)는 프레임워크 내의 서비스 관련 인터페이스로서, 주로 파일 관련 인터페이스들을 말하며, 파일 인터페이스(231), 파일 시스템 인터페이스(232), 파일 관리자 인터페이스(233), 시간 인터페이스(Time) 등이 있다.Finally, the
여기서, 도 2에 도시된 도메인 관리자(223) 인터페이스, 디바이스 관리자 인터페이스(228), 애플리케이션 팩토리 인터페이스(222) 및 파일 관리자 인터페이스(233)는 도 1에 도시된 도메인 관리자(131), 디바이스 관리자 (132), 애플리케이션 팩토리(133) 및 파일 관리자(134)에 대응하는 인터페이스이다.Here, the
본 발명의 실시예에 따른 도메인 관리자 인터페이스(223)는 전술한 바와 같이, 프레임워크 내에 한 개가 존재하며, 프레임워크 내의 모든 정보를 가지고, 이 를 제어하는 핵심적인 역할을 수행한다.As described above, one
한편, 도 3은 본 발명의 실시예에 따른 SCA 기반 시스템의 코어 프레임워크 인터페이스 중에서 변경된 인터페이스들을 예시하는 도면으로서, 핫스와핑을 위해 변경된 도메인 관리자 인터페이스(223), 자원 인터페이스(216), 애플리케이션 팩토리 인터페이스(222)를 나타낸다.Meanwhile, FIG. 3 is a diagram illustrating changed interfaces among core framework interfaces of an SCA-based system according to an embodiment of the present invention, wherein the changed
도메인 관리자 인터페이스(223)는 프레임워크 내 각종 애플리케이션 인터페이스(221), 애플리케이션 팩토리 인터페이스(222), 디바이스 관리자 인터페이스(228), 파일 관리자 인터페이스(233) 및 도메인 관리자 프로파일 인터페이스에 대한 정보를 저장하고 있으며, 애플리케이션 설치 및 해제, 디바이스 및 서비스 등록 및 해제, 이벤트 채널 등록 및 해제를 위한 메소드(method)를 제공한다. 여기서, 메소드는 객체나 클래스에 속한 함수를 말한다.The
또한, 본 발명의 실시예에 따른 도메인 관리자 인터페이스(223) 는 이러한 기능 이외에 핫스와핑을 위한 기능으로서, 애플리케이션 갱신 메소드(updateApplication() method)가 추가된다. 여기서, 상기 애플리케이션 갱신 메소드는 교체시킬 하나의 애플리케이션 내의 컴포넌트를 지정하고, 이 컴포넌트에 대한 XML 파일을 명시하여 교체한 후, 후속적으로 필요한 처리를 수행할 수 있다.In addition, the
자원 인터페이스(216)는 시작 메소드(start() method), 중지 메소드(stop() method)에 특정 컴포넌트만 시작되거나 중지될 수 있도록 특정 컴포넌트를 지정하는 파라미터가 추가된다.The
마지막으로, 애플리케이션 팩토리 인터페이스(222)는 특정 애플리케이션을 생성하는 생성 메소드(create() method)를 구비하며, 또한 교체될 컴포넌트와 그 컴포넌트와 관련된 XML 파일들을 명시함으로써, 컴포넌트의 생성 및 교체 후에 다른 컴포넌트들과의 연결(Connection) 설정 등의 처리가 가능하도록 갱신 메소드(update() method)를 추가로 구비한다.Finally, the
한편, 도 4는 본 발명의 실시예에 따른 SCA 기반 시스템의 애플리케이션 설치 및 인스턴스 생성 방법을 나타내는 동작 흐름도이다.Meanwhile, FIG. 4 is a flowchart illustrating an application installation and instance creation method of an SCA-based system according to an exemplary embodiment of the present invention.
도 4를 참조하면, 본 발명의 실시예에 따른 SCA 기반 시스템의 애플리케이션 설치 및 인스턴스 생성 방법은 다음과 같다.Referring to Figure 4, the application installation and instance creation method of the SCA-based system according to an embodiment of the present invention are as follows.
먼저, 사용자는 그래픽 유저 인터페이스(Graphic User Interface: GUI)(401)를 통해서 애플리케이션을 설치하기 위하여 애플리케이션 설치 명령(installApplication)을 실행한다(S401). 이때, 상기 애플리케이션 설치 명령은 XML 파일 형태인 app1_SAD.xml로 기술된다. 여기서, SAD는 소프트웨어 어셈블리 디스크립터(Software Assembly Descriptor)를 나타낸다. 또한, 상기 GUI(401)는 사용자를 의미한다.First, a user executes an application installation command (installApplication) to install an application through the graphical user interface (GUI) 401 (S401). At this time, the application installation command is described as app1_SAD.xml in the form of an XML file. Here, SAD represents a Software Assembly Descriptor. In addition, the
다음, 도메인 관리자(402)는 상기 app1_SAD.xml을 파싱하여 해당 애플리케이션 팩토리(403)를 생성하고, SAD 파일에 명시되어 있는 파일들을 확인하고(S402), 생성된 애플리케이션 팩토리(403)는 SAD.xml 파일을 파싱하기 위하여 SAD 파서(SAD Parser: 404)를 생성한다(S403).Next, the
다음, 사용자(401)는 현재 설치되어 있는 애플리케이션 팩토리(403)의 정보를 얻기 위하여 애플리케이션 팩토리 정보 획득 명령을 실행하고(S404), 도메인 관 리자(402)는 현재 설치되어 있는 애플리케이션 팩토리(403)의 목록을 사용자(401)에게 알려 준다(S405).Next, the
계속해서, 사용자(401)는 특정 애플리케이션(app1)을 생성하기 위하여 해당 애플리케이션 팩토리(403)를 선택하고, 애플리케이션 인스턴스 생성 명령을 실행하고(S406), 애플리케이션 팩토리(403)는 SAD 파서(404)로부터 실행시킬 컴포넌트들의 정보를 요청한다(S407).Subsequently, the
다음, SAD 파서(404)는 실행시켜야 할 컴포넌트들의 SPD 및 SCD 파일 등의 정보를 제공한다(S408). 여기서, SPD는 소프트웨어 패키지 디스크립터(Software Package Descriptor)의 약어이고, SCD는 소프트웨어 컴포넌트 디스크립터(Software Component Descriptor)의 약어이다.Next, the
그 후, 제공받은 정보로부터 SCD 파서(405)를 실행시켜, 필요한 SCD 파일의 정보를 얻는다(S409). 또한, SPD 파서(406)를 생성시켜 컴포넌트 생성에 필요한 모든 정보를 파싱할 수 있도록 한다(S410).Thereafter, the
다음, 애플리케이션 팩토리(403)는 상기 SPD 및 SCD 파일로부터 얻은 정보를 이용하여 파일 내에 포함된 모든 컴포넌트들을 명시된 위치에 로드(load) 시키거나 실행시키고(S411), 실행 디바이스(407)는 어셈블리 컨트롤러(408)의 프로세스를 생성하며(S412), 또한, 실행 디바이스(407)는 특정 애플리케이션(app1)의 컴포넌트들의 프로세스를 생성한다(S413).Next, the
계속해서, 애플리케이션 팩토리(403)는 상기 SAD 파서(404)로부터 어셈블리 컨트롤러(408)의 정보를 요청하고(S414), SAD 파서(404)는 어셈블리 컨트롤러(408) 에 대한 정보를 제공하고(S415), 애플리케이션 팩토리(403)는 SAD 파서(404)에게 SAD 인스턴스 생성 정보를 요청하며(S416), SAD 파서(404)는 SAD 인스턴스 생성 정보를 제공한다(S417).Subsequently, the
그 후, 애플리케이션 팩토리(403)는 어셈블리 컨트롤러(408)를 초기화시키고 파라미터를 구성(configure)한다(S418). 또한, 애플리케이션 팩토리(403)는 생성된 컴포넌트들을 초기화시키고 파라미터를 구성한다(S419).Thereafter, the
다음, 애플리케이션 팩토리(403)는 SAD 파서(404)에게 연결(Connection) 정보를 요청하고(S420), SAD 파서(404)는 연결 정보를 제공하고(S421), 애플리케이션 팩토리(403)는 제공된 연결 정보를 이용하여 각 컴포넌트들의 포트 획득 메소드(getPort() method)와 포트 연결 메소드 (connectPort() method)를 호출하여 연결을 설정한다(S422).Next, the
위의 과정을 통하여 신규 애플리케이션(app1) 객체가 생성된다(S423).A new application (app1) object is created through the above process (S423).
다음, 생성된 신규 애플리케이션(app1)은 애플리케이션 등록 명령을 통하여 도메인 관리자(402)에게 자신을 등록하고(S424), 애플리케이션 팩토리(403)는 신규 애플리케이션(app1)의 성공적인 설치를 사용자(401)에게 알리며(S425), 사용자(401)는 생성된 신규 애플리케이션(app1)을 동작시키기 위하여, 시작 명령 메소드(start() method)를 실행시킨다(S426).Next, the generated new application (app1) registers itself to the
그 후, 신규 애플리케이션(app1)은 자신의 대행자인 어셈블리 컨트롤러(408)에게 시작 명령 메소드(start() method)를 전송하고(S427), 어셈블리 컨트롤러(408)는 특정 애플리케이션(app1)의 모든 컴포넌트들에게 시작 명령 메소 드(start() method)를 전송한다(S428).Then, the new application (app1) transmits a start command method (start () method) to the
그러면, 사용자는 생성된 Application app1의 파라미터의 값을 변경하기 위하여 구성 명령 메소드(configure() method)를 실행시킨다(S429).Then, the user executes the configuration command method (configure () method) to change the value of the parameter of the generated application app1 (S429).
다음, Application app1은 자신의 대행자인 어셈블리 컨트롤러(408)에게 구성 명령 메소드(configure() method)를 전송하고(S430), 어셈블리 컨트롤러(408)는 값을 바꿀 파라미터가 속한 특정 애플리케이션(app1)의 특정 컴포넌트들에게 구성 명령 메소드(configure() method)를 전송한다(S431). 이에 따라, SCA 기반 시스템의 애플리케이션 설치 및 인스턴스 생성이 모두 완료된다.Next, Application app1 transmits a configuration command method (configure () method) to the
한편, 도 5는 본 발명의 실시예에 따른 SCA 기반 시스템의 컴포넌트 핫스와핑 처리 방법을 나타내는 동작 흐름도이다.5 is a flowchart illustrating a method of processing component hot swapping in an SCA-based system according to an exemplary embodiment of the present invention.
도 5를 참조하면, 본 발명의 실시예에 따른 SCA 기반 시스템의 컴포넌트 핫스와핑 처리 방법은 다음과 같다.Referring to FIG. 5, a method for processing component hot swapping of an SCA-based system according to an embodiment of the present invention is as follows.
먼저, 사용자(501)는 애플리케이션 내의 특정 컴포넌트를 교체하기 위하여 애플리케이션 갱신 명령을 실행한다(S501). First, the
다음, 도메인 관리자(502)는 특정 애플리케이션(app1: 504)에게 교체할 컴포넌트(com1)의 동작을 중지시키기 위하여 중지 명령 메소드(stop(com1) method)를 실행하고(S502), 특정 애플리케이션(app1: 504)은 어셈블리 컨트롤러(505)에게 교체할 컴포넌트(com1)의 동작을 중지시키는 중지 명령 메소드(stop(com1) method)를 보낸다(S503).Next, the
그 후, 어셈블리 컨트롤러(505)는 해당 교체 컴포넌트(com1)에게 중지 명령 메소드(stop(com1) method)를 보내면, 교체 컴포넌트(com1)는 동작을 중지하고(S504), 도메인 관리자(502)는 교체 컴포넌트(com1)를 제거하기 위하여 실행 디바이스(507)에게 특정 컴포넌트 제거 명령을 전달한다(S505).Thereafter, when the
계속해서, 실행 디바이스(507)는 해당 교체 컴포넌트(com1)의 프로세스 종료 명령을 통하여 프로세스를 종료시키고(S506), 도메인 관리자(502)는 신규 컴포넌트를 실행시키기 위하여 교체 컴포넌트(com1), SAD, SPD, SCD에 대한 갱신 명령을 애플리케이션 팩토리(503)에게 전달하며(S507), 애플리케이션 팩토리(503)는 전달받은 SAD, SPD 및 SCD의 XML 파일들을 파싱하기 위하여, XML 파서(508)를 생성한다. 이때, 생성된 XML 파서(508)를 이용하여 XML 파일들에 대한 파싱을 요청한다(S508).Subsequently, the
다음, 애플리케이션 팩토리(503)가 파싱된 결과를 바탕으로 교체 컴포넌트(com1)를 로드 및 실행시킨 후(S509), 실행 디바이스(507)는 신규 교체 컴포넌트(com1)의 프로세스를 생성하며(S510), 애플리케이션 팩토리(503)는 신규 컴포넌트(com1)를 초기화 및 구성(configure)한다(S511).Next, after the
그 후, 애플리케이션 팩토리(503)가 XML 파서(508)에게 교체 컴포넌트(com1)와 관련된 연결 정보를 요청하고(S512), XML 파서(508)는 연결 정보를 제공한 후(S513), 애플리케이션 팩토리(503)는 제공된 연결 정보를 바탕으로 신규 교체 컴포넌트(com1)와 관련된 신규 연결을 재설정하고(S514), 도메인 관리자(502)는 생성된 교체 컴포넌트(com1)를 동작시키기 위하여 start(com1) 명령을 특정 애플리케이션(app1: 504)에게 전달한다(S515).Thereafter, the
계속해서, 특정 애플리케이션(app1: 504)은 자신을 대행해 주고 있는 어셈블리 컨트롤러(505)에게 시작 명령(start(com1))을 보내고(S516), 어셈블리 컨트롤러(505)는 교체 컴포넌트(com1)에게 시작 명령(start())을 전달하여 상기 교체 컴포넌트(com1)가 동작될 수 있도록 한다(S517).Subsequently, the specific application (app1) 504 sends a start command (start (com1)) to the
다음, 도메인 관리자(502)가 사용자(401)에게 컴포넌트(com1)의 성공적인 교체를 알리면(S518), 사용자는 변경된 특정 애플리케이션(app1: 504)의 파라미터의 값을 변경하기 위하여 구성 명령 메소드(configure() method)를 실행시킨다(S519).Next, when the
그러면, 특정 애플리케이션(app1: 504)은 자신의 대행자인 어셈블리 컨트롤러(505)에게 구성 명령 메소드(configure() method)를 보내고(S520), 어셈블리 컨트롤러(505)는 값을 바꿀 파라미터가 속한 애플리케이션(504)의 특정 컴포넌트에게 구성 명령 메소드(configure() method)를 보낸다(S521). 이에 따라, 본 발명의 실시예에 따른 SCA 기반 시스템의 컴포넌트 핫스와핑 처리가 완료된다.Then, the specific application (app1: 504) sends a configuration command method (configure () method) to the
한편, 도 6은 본 발명의 실시예에 따른 SCA 기반 시스템의 애플리케이션 설치 해제 및 인스턴스 제거 방법을 나타내는 동작 흐름도이다.6 is a flowchart illustrating a method of uninstalling an application and removing an instance of an SCA-based system according to an exemplary embodiment of the present invention.
먼저, 사용자(601)는 특정 애플리케이션(app1: 604)의 동작을 중지시키기 위하여 중지 명령 메소드(stop() method)를 실행한다(S601).First, the
다음, 특정 애플리케이션(app1: 604)은 자신의 대행자인 어셈블리 컨트롤러(605)에게 중지 명령 메소드(stop() method)를 보내고(S602), 어셈블리 컨트롤러(605)는 특정 애플리케이션(app1: 604)의 모든 컴포넌트의 동작을 중지시키기 위하여 중지 명령 메소드(stop() method)를 전달한다(S603).Next, the specific application (app1: 604) sends a stop command method (stop () method) to the
그러면, 사용자는 특정 애플리케이션(app1: 604)을 종료시키기 위하여 객체 릴리즈 명령(releaseObject)을 실행시킨다(S604).Then, the user executes an object release command (releaseObject) to terminate the specific application (app1: 604) (S604).
그 후, 특정 애플리케이션(app1: 604)은 도메인 관리자(602)에게 애플리케이션 등록 해제 명령을 실행하여, 도메인 관리자(602)의 정보 내용을 수정하고(S605), 특정 애플리케이션(app1: 604)은 어셈블리 컨트롤러(605)에게 객체 릴리즈 명령(releaseObject)을 전달하면(S606), 어셈블리 컨트롤러(605)는 모든 컴포넌트들에게 객체 릴리즈 명령(releaseObject)을 전달한다(S607).Thereafter, the specific application (app1 604) executes an application deregistration command to the
다음, 사용자(601)가 특정 애플리케이션(604)을 해제하기 위하여 애플리케이션 등록 해제 명령을 실행하면(S608), 도메인 관리자(602)는 애플리케이션 팩토리(603) 목록에서 특정 애플리케이션(604)을 제거하고(S609), 도메인 관리자(602)는 사용자(401)에게 성공적인 애플리케이션(604) 해제를 알린다(S610). 이에 따라, SCA 기반 시스템의 애플리케이션 설치 해제 및 인스턴스 제거가 완료된다.Next, when the
결국, 본 발명의 실시예는 SCA 기반 시스템에서 애플리케이션 내 컴포넌트들의 핫스와핑을 지원하도록 코어 프레임워크 및 여러 관리자들의 인터페이스를 변경 또는 수정함으로써, SCA 구조를 가지는 모든 시스템에 적용할 수 있으며, 다중모드 지원과 재구성을 위해 대표적으로 SDR(Software Defined Radio) 시스템에 이러한 SCA 구조를 적용할 수 있다.As a result, an embodiment of the present invention can be applied to all systems having an SCA structure by changing or modifying the core framework and interfaces of various administrators to support hot swapping of components in an application in an SCA-based system. This SCA structure can be applied to SDR (Software Defined Radio) system.
이상 첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해되어야만 한다.Although embodiments of the present invention have been described above with reference to the accompanying drawings, those skilled in the art to which the present invention pertains may implement the present invention in other specific forms without changing the technical spirit or essential features thereof. I can understand that. Therefore, the embodiments described above are to be understood in all respects as illustrative and not restrictive.
본 발명에 따르면, SCA 기반 시스템의 애플리케이션 내 특정 컴포넌트의 핫스와핑을 가능하게 함으로써, 보다 효율적으로 시스템을 제어할 수 있고, 또한, SCA 기반 시스템 운용 중에 임의의 컴포넌트가 다운되거나 교체되더라도 중단 없이 계속 운용할 수 있다.According to the present invention, by enabling hot swapping of specific components in the application of the SCA-based system, it is possible to control the system more efficiently, and continue to operate without interruption even if any component is down or replaced during operation of the SCA-based system. can do.
Claims (11)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060107637A KR100834419B1 (en) | 2006-11-02 | 2006-11-02 | Software Communication Architecture based System for supporting Component Hot-Swapping and Supporting Method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060107637A KR100834419B1 (en) | 2006-11-02 | 2006-11-02 | Software Communication Architecture based System for supporting Component Hot-Swapping and Supporting Method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20080040103A true KR20080040103A (en) | 2008-05-08 |
KR100834419B1 KR100834419B1 (en) | 2008-06-04 |
Family
ID=39647832
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060107637A KR100834419B1 (en) | 2006-11-02 | 2006-11-02 | Software Communication Architecture based System for supporting Component Hot-Swapping and Supporting Method thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100834419B1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101307339B1 (en) * | 2008-12-03 | 2013-09-11 | 한국전자통신연구원 | Apparatus for component controlling of application and method of the same |
WO2013154398A1 (en) * | 2012-04-12 | 2013-10-17 | 한양대학교 산학협력단 | Method for distributing, installing and executing software-defined radio application |
CN112860223A (en) * | 2019-11-28 | 2021-05-28 | 湖南智领通信科技有限公司 | Waveform processing method and device based on software communication system architecture |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101253544B1 (en) * | 2008-12-03 | 2013-04-11 | 한국전자통신연구원 | Apparatus for supporting dynamic rule change of event under SCA and method thereof |
KR101301018B1 (en) | 2008-12-05 | 2013-08-28 | 한국전자통신연구원 | SCA system and method for operation of waveform application thereof |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100545633B1 (en) * | 2003-11-27 | 2006-01-24 | 한국전자통신연구원 | storage medium for software package descripter file in SCA system and file parsing method thereof |
KR100590730B1 (en) * | 2003-12-09 | 2006-06-15 | 한국전자통신연구원 | file system based on SCA system and method for arranging and managing software component file thereof |
KR100611580B1 (en) * | 2004-12-11 | 2006-08-10 | 한국전자통신연구원 | A multi-mode communication terminal and a multi-mode method of the same |
-
2006
- 2006-11-02 KR KR1020060107637A patent/KR100834419B1/en active IP Right Grant
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101307339B1 (en) * | 2008-12-03 | 2013-09-11 | 한국전자통신연구원 | Apparatus for component controlling of application and method of the same |
WO2013154398A1 (en) * | 2012-04-12 | 2013-10-17 | 한양대학교 산학협력단 | Method for distributing, installing and executing software-defined radio application |
US9350848B2 (en) | 2012-04-12 | 2016-05-24 | Industry-University Cooperation Foundation Hanyang University | Method for distributing, installing and executing software-defined radio application |
CN112860223A (en) * | 2019-11-28 | 2021-05-28 | 湖南智领通信科技有限公司 | Waveform processing method and device based on software communication system architecture |
Also Published As
Publication number | Publication date |
---|---|
KR100834419B1 (en) | 2008-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10140112B2 (en) | Update management system and update management method | |
JP6217034B2 (en) | Related plug-in management method, apparatus and system | |
CA2975071A1 (en) | Management of network functions virtualization and orchestration apparatus, system, management method, and program | |
CN108780405B (en) | Management method and device for application in network function virtualization environment | |
KR100834419B1 (en) | Software Communication Architecture based System for supporting Component Hot-Swapping and Supporting Method thereof | |
WO2014169870A1 (en) | Virtual network element automatic loading and virtual machine ip address acquisition method and system, and storage medium | |
KR101366747B1 (en) | Apparatus and method for the SCA compliant SDR terminal to change service mode | |
KR20170118165A (en) | Method and apparatus for updating a network service technician | |
KR20080040104A (en) | Application component communication apparatus of software communication architecture(sca)-based system, and method thereof | |
WO2015196654A1 (en) | Distributed management method and device for network management | |
US8332356B2 (en) | NFS agent upgrade | |
KR100640081B1 (en) | dual-mode base station and method for converting service mode based on SCA system therof | |
WO2024077885A1 (en) | Management method, apparatus and device for container cluster, and non-volatile readable storage medium | |
JP2016035713A (en) | Information processing device, function expansion method in information processing device, program, and system | |
WO2021057605A1 (en) | Device management method, device, system and device, and storage medium | |
JP2006065811A (en) | Resource management method, device and program | |
CN101826985A (en) | Plugin-based centralized signaling tracing method and system | |
CN101944033A (en) | Device and method for dynamically supporting multiple protocols in embedded system | |
JP2013068987A (en) | Gateway device, firmware distribution system, and information distribution method | |
KR100611580B1 (en) | A multi-mode communication terminal and a multi-mode method of the same | |
KR20180029790A (en) | Apparatus and method for managing and orchestrating network function virtualization | |
CN114996352A (en) | Database management system and method | |
CN106301877A (en) | The upgrade method of a kind of Virtual NE and device | |
CN109922482B (en) | OMC system deployment method, OMC system, electronic device and storage medium | |
Kusek et al. | Mobile agent based software operation and maintenance |
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 | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130424 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20130730 Year of fee payment: 19 |