1 / 20

CORBA 기반 실시간 응용 서비스 지원 객체그룹 플랫폼 설계

한국정보과학회 1998 년도 추계학술발표회. CORBA 기반 실시간 응용 서비스 지원 객체그룹 플랫폼 설계. 원광대학교. 분산 컴퓨팅 연구실. 신 경 민. 1998. 10. 31. 목 차. 서론 관련 연구 실시간 CORBA 경향 연구 현황 연구 목적 실시간 객체그룹 플랫폼 환경 실시간 객체그룹의 정의 실시간 객체그룹 모델링 과정 요구사항 분석 실시간 객체그룹 구조 실시간 객체그룹 모델링 OMG-IDL 을 이용한 인터페이스 상세 설계 결론.

darryl
Download Presentation

CORBA 기반 실시간 응용 서비스 지원 객체그룹 플랫폼 설계

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 한국정보과학회 1998년도 추계학술발표회 CORBA 기반 실시간 응용 서비스 지원객체그룹 플랫폼 설계 원광대학교 분산 컴퓨팅 연구실 신 경 민 1998. 10. 31.

  2. 목 차 • 서론 • 관련 연구 • 실시간 CORBA 경향 • 연구 현황 • 연구 목적 • 실시간 객체그룹 플랫폼 환경 • 실시간 객체그룹의 정의 • 실시간 객체그룹 모델링 과정 • 요구사항 분석 • 실시간 객체그룹 구조 • 실시간 객체그룹 모델링 • OMG-IDL을 이용한 인터페이스 상세 설계 • 결론

  3. Object Management Architecture Application Objects C, C++, Smalltalk Vertical Facilities Horizontal Facilities Common Object Request Broker Architecture Object Adapter Static IDL Skeleton Dynamic Skeleton Dynamic Invocation IDL Stubs ORB Interface ORB Core CORBA Services Name, Event, Time, Query, Trading, etc 관련 연구 • 컴퓨팅 환경의 변화 • 절차 지향적 패러다임에서 객체 지향 패러다임 변화 • 기존의 분산환경에 대응한 분산객체 기술 발전 • OMG의 CORBA • Reusability • Interoperability • Portability

  4. Real-Time CORBA Real-Time ORB 실시간 CORBA의 경향 • 표준 CORBA • 종단간 시간 제약(End-to-end time constraint) 지원하지 않음 • OMG의 RT-SIG(Real-Time Special Interest Group) Time constraint Scheduling QoS Performance A/synchronization Fault Tolerance Real-time CORBA White paper Fixed priority scheduling Time management Flexible Communication Real-time CORBA RFP

  5. 연구 현황 제품명 제작사 특 징 The Ace ORB (TAO) Washington Univ. • 결정적이고 통계적인 QoS를 보장하기 위 해 요구되는 기능을 제공 • 미들웨어와 분산 응용 프로그램의 종단간 대역폭과 안정성을 보장할 수 있는 최적화 된 실시간 I/O 서비스 시스템을 갖는 ORB 를 제공 Rhode Island Univ. 미 해군 NRaD, MITRE NRaD 실시간 CORBA • CORBA 시스템 내의 동적 종단간 시간제약을 표현하고 강요할 수 있도록 설계 • 클라이언트나 서버가 추가 또는 삭제되고, 시간 제약이 변경 될 수 있는 환경 제공 ORBIX-RT IONA Technologies • 실시간 운영체제에서 동작 • 경량이며 안정적인 구조 제공 Chorus/Cool ORB Chorus • CHORUS 운영체제에 의존 • 융통성 있는 바인딩 구조를 제공 • 자원관리 정책과 메커니즘을 철저히 분리 기 타 New Attack Submarine 실시간 CORBA, Fast CORBA, DIMMA RCP-ORB, Bionic Buffalo

  6. 연구 목적 • 기존의 연구 • ORB를 수정하거나 확장하여 실시간을 지원 • 특정한 실시간 운영체제에서 운영 • 본 연구 • 객체그룹 + 표준 CORBA + 실시간 개념을 포함 실시간 응용 서비스를 지원하기 위한 객체그룹 플랫폼 설계

  7. 실시간 지원 객체그룹 플랫폼 환경 Applications Application Management Services Real-Time Services Real-Time Object Group Real-Time Object Group Platform CORBA Time service COSS Physical Network Network

  8. 객체그룹의 정의 • TINA-C • 분산환경에서 객체들의 효율적인 관리와 분산 어플리케이션의 개발이 용이하도록 하기 위한 객체들의 모임 • 본 논문 • 하나의 서비스를 수행하기 위해 마감시간을 포함한 실시간 객체들의 집합 Deadline

  9. 개발 과정 요구사항 분석 구조 제시 설계 객체 모델 기능 모델 동적 모델 인터페이스 상세 설계 구 현 검 증

  10. 요구 사항 분석 • 구성 요소 • 그룹관리자, 객체 팩토리, 스케줄러, 보안, 객체정보 레포지토리, 객체 • 객체의 분산성 • 객체그룹의 보안성 • 실시간 지원에 따른 서비스 수행의 예견성(predictability) • 서비스 수행을 요구하는 클라이언트 객체들에 대한 우선순위 • 시간의 표준 타입 명시 • 동기화를 위한 타임 서비스 • 스케줄링

  11. Object Group Sub-Object Groups Object Info. Rep. Object Factory Object 2 Object 3 Object 1 Group Manager Security Scheduler 객체그룹 구조

  12. 객체 모델 • 그룹 관리자(Group Manager) • 객체그룹과 연관된 내외의 모든 요구 사항을 관리 • 객체그룹내의 모든 객체와 구성 요소들의 관리 기능 수행 • 객체정보 레포지토리(Object Information Repository) • 객체그룹내의 정보를 저장 및 관리 • 객체팩토리(Object Factory) • 객체그룹의 모든 객체를 생성 • 보안 객체(Security Object) • 객체그룹 내의 객체나 서브객체그룹의 객체에 대한 서비스 요청 시 보안 검사 • 객체(Object) • 실질적인 서비스를 제공 • 서브객체그룹(Sub-Object Group) • 객체그룹의 특성을 상속 받은 객체그룹

  13. 객체 모델 • 스케줄러 • 객체그룹 내 객체들의 실행 시간 정보를 포함 • 우선순위 적용범위는 객체그룹 내로 한정 • Soft Real-Time Scheduling • Earliest Deadline First 방법 채용

  14. Timer +1 Object Group Use of Attribute global_time Sub-Object Group get_time( ) set_time( ) +1 Use of Group Component Object Information Rep. Security Object Attribute Group Manager Object Factory Scheduler Attribute distinguished_name_list service_type Attribute Attribute Attribute distinguished_name_list distinguished_name obj_ref deadline exec_time Operation distinguished_name obj_ref Operation deadline create_ obj _info( ) create_ACL( ) Operation global_time delete_ obj _info( ) delete_ACL( ) create_ obj ( ) Operation Operation update_ obj _info( ) init_group( ) init_subgroup( ) check_ACL( ) create_subgroup( ) Scheduling( ) check_priority( ) lookup_ obj _info( ) lookup_obj( ) create_subgroup_info( ) delete_subgroup_info( ) update_subgroup_info( ) lookup_subgroup_info( ) request_ obj ( ) destroy_ obj ( ) Access Control List enable_ obj ( ) Attribute Schedule List disable_ obj ( ) distinguished_name Attribute req _entity_id_list request_subgroup( ) obj _ref Object Information destroy_subgroup( ) Operation deadline Attribute create_access_rule( ) enable_subgroup( ) exec_time obj _ref delete_access_rule( ) disable_subgroup( ) Priority_order Objects object_status update_access_rule( ) set_time( ) service check_access_rule( ) Use of Access Rule Attribute req _entity_id operation_name_list 객체 모델 - 구성 요소들간의 관계

  15. 기능 모델 • 시간 동기화 • 클라이언트는 그룹 관리자에게 서비스 요청 전에 타임 서버에게 Global Time 요청 • Christian 알고리즘 Time Server Server Client RT-OG RT-OG Synchronization RT-OG RT-OG invoke

  16. 기능 모델 ScheduleList • 스케줄러 원리 스케줄러 객체 1 object 3 10:30:50.00 2 object 1 10:31:00.00 3 object 2 10:33:00.00 Global Time 10 : 30 : 30.25 System C System B System A Object 1 Object 2 Object 3 Deadline 10 : 31 : 00.00 10 : 33 : 00.00 10 : 30 : 50.00 First invoke Second invoke Third invoke Cutc : current global time Di : Deadline Ci : execution time

  17. 기능 모델 • 객체 그룹 2 내의 서브객체그룹과 객체 생성 및 서비스 수행과정

  18. 동적 모델(ETD)

  19. OMG-IDL을 이용한 인터페이스 상세 설계 • 스케줄러의 IDL(Interface Definition Language) 표현 Module Scheduler_Object { typedef string Object_Name; typedef long Deadline_Time; typedef long Execution_Time; typedef long Sync_Time; struct ScheduleList { Object_Name obj_name; Deadline_Time dead_line; }; struct TimeInfoList { Object_Name obj_name; Execution_Time exec_time; Sync_Time sync_time; }; typedef ScheduleList SchList[50]; typedef TimeInfoList TInfoList[50]; interface Scheduler { attribute SchList m_schList; attribute TInfoList m_tinfoList; attribute short m_schIdx; attribute short m_timeinfoIdx; TimeInfoList Gettimeinfo(in Object_Name obj_name); boolean Settimeinfo(in Object_Name obj_name, in Execution_Time exec_time, in Sync_Time sync_time); boolean Scheduling(in Object_Name obj_name, in Deadline_Time deadline); boolean Check_priority(in Object_Name obj_name); boolean EraseList(in Object_Name obj_name); }; };

  20. 결 론 • 기존의 분산객체 환경인 CORBA • 실시간 요구사항 지원의 미흡 • 시간 제약 조건, 스케줄링, 동기화 • 실시간 객체그룹 플랫폼 • 요구사항 분석 • 실시간 객체그룹 플랫폼 제시 • James Rumbauch의 모델링 방법으로 설계 • 객체 모델, 기능 모델, 동적 모델 • 인터페이스 세부 설계 • 기존의 객체그룹 + 표준 CORBA + 시간조건 • 시간 제약 조건을 만족하는 구성요소 추가(스케줄러, 타이머) • 차후 연구 내용 • 설계된 실시간 응용 서비스 지원 객체그룹 플랫폼 구현 • 실시간 서비스 지원을 요구하는 분산 어플리케이션에 응용

More Related