2. Component Configurator
• 실행중 코드의 수정이나 응용프로그램이
re-link 작업 없이 , component 를
link , unlink 가능
• 프로세스의 재시작 이나 종료하지 않아
도 , 다른 응용프로그램에서 사용하고
있는 component 를 재설정 할 수 있다
.
3. Context
• Component 의 초기화 , 지연 , resume,
종료 등이 필요한 응용프로그램이나 시
스템이 유연하고 투명하게 동작해야 한
다 .
4. Problem
• Component 의 기능이나 구현이 많은 시
스템이나 응용 프로그램에서 변경 된다 .
• 개발자들이 여러 프로세스들이 공동으로
사용하는 Component 들을 어떻게 효율적
으로 사용하고 배포하는 방법을 모를 수
있다 .
• 시스템 코어 Component 에 대해서는 간
단하고 Component 독립적으로 다루어
져야 한다 .
5. Solution
• 응용 프로그램이 Component 의 구현부를
설정 할 때 , 구현부와 Component 의
interface 를 분리 한다 .
8. Dynamics(1)
• 초기화 : Component Configurator 는 응용프로
그램에 Component 를 링크 시키고 , Component
를 Component Repository 에 추가한다 .
• 실행 : 응용 프로그램이 Component 의 설정이
완료되면 Component 는 해당 작업을 수행한다 .
• 종료 : Component Configurator 는
Component 의 사용이 완료되면 Compoent 의 자
원을 정리하고 종료하고 , Component
Repository 에서 해당 Component 를 제거 한다
.
11. Implementation(1)
• Component 설정과 Control Interface
정의
• Component Repository 구현
• Component Configuration 의 메커니즘
을 구현 . 응용프로그램이 Component
를 실행하기 전에 설정이 완료되어야 한
다 .
• Component 설정을 제어하기 위한 언어
를 정의 한다 .
12. Implementation(2)
• Component 설정을 제어하기 위한 언어
를 파싱하고 실행 하기 위한 메커니즘을
구현 .
• 동적으로 Component 를 설정할 수 있는
메커니즘을 구현 .
• Concrete Component 를 구현 .
• Component 간 통신 메커니즘을 구현 .
13. Known Uses
• Windows Service Control Manager
• Device Drivers
• Java Applets
• Dynamic TAO reflective ORB
• ACE
14. Consequence
• 동일한 설정 규정과 제어 인터페이스를
제공 .
• 동일한 설정과 제어 메커니즘이 있기 때
문에 Component 들을 관리하기 쉽다 .
• Component 설정제어를 실시간으로 분석
하기 힘들다 .
• 보안에 약하다 .
• Time Critical 한 Component 의 경우 오
차를 발생 시킬수 있다 .