3 minute read

저자: JOGH A. STANKOVIC (University of Massachusetts, Amherst)

저널: ACM Computing Surveys, Vol. 28, No. 1, March 1996

좀 오래 전에 작성된 survey paper다. 그래도 꽤 전통성 있는 얘기를 하는 것 같아서.. 가볍게 읽어봤다.


  • Real-time system은 시스템 정확성이 컴퓨팅 계산 결과 뿐 아니라, 시간성에도 의존적인 시스템을 일컬음
  • 임베디드 시스템의 간단한 마이크로 컨트롤러(자동차 엔진)부터 매우 정교하고 복잡한 시스템(항공 교통 관제 시스템)까지 범위가 큼
  • 시스템 컨트롤, 컨트롤 시스템 계산, 멀티미디어, 고속 송신 등에 사용됨
  • 일부 실시간 시스템은 AI 기술 등의 다른 전문 기술들을 추가하거나, 추가적인 요구사항 및 복잡성을 생성하기도 함
  • real-time + embedded system이 트렌드가 된 주요 이유 3가지
    • 임베디드 시스템의 복잡성 상승
    • 하드 real-time 시스템을 위한 과학 기술 개발
    • 분산 멀티미디어의 등장
  • 대부분의 임베디드 시스템은 소규모의 제한된 소프트웨어로 작동되었으나, 시스템의 복잡성이 증가함에 따라 강력한 마이크로 컨트롤러나 칩들이 일반적으로 사용됨에 따라 RTOS, 디버깅 툴 등이 사용됨
  • 임베디드 시스템에서 센서 및 데이터 수집 기술 등을 처리하는 경우가 많음
  • 보통 C 프로그래밍, 크로스 개발 및 디버깅 플랫폼 등을 사용
  • Hard real-time system
    • 반드시 deadline을 지켜야 하는 것
    • rate monotonic analysis
    • competitive algorithms
    • online planning
    • 많은 hard realtime system은 임베디드 시스템
  • 분산 멀티미디어도 실시간성 요구
  • 기본 원칙
    • 대개 제어 시스템 & 제어되는 시스템으로 구성됨
    • 컴퓨터가 상호작용하는 환경
    • 제어 시스템은 센서를 통해 환경과 상호 작용하고, 해당 환경 상태는 환경의 실제 상태와 일치해야 함
    • 이를 위해 모니터링 & 감지된 정보를 바로 처리해야 함
    • 시간적 제약
      • 주기적 / 비주기적 / 산발적
      • 주기적인 태스크의 경우, 특정 T 단위마다 활성화
      • 비주기적인 태스크의 경우, 예측 불가능한 시간에 활성화
      • 산발적인 태스크의 경우, 비주기적인 태스크 + 활성화 사이 최소 도착 시간 제약 존재
    • 원자력 발전소, 미사일 등에서 사용되는 시스템의 경우, real-time 성이 보장되지 않으면 치명적인 피해가 발생함
    • 이런 경우 중요한 태스크는 미리 할당되어 지연없이 실행될 수 있도록 해야 함
    • 그렇지만, 많은 상황에서 약간의 여유(leeway)가 있긴 함
      • ex) 로봇이 제시간에 명령을 수행할 수 없는 경우 → 정지 명령 수행 or 속도 저하 시킴
  • Real-time scheduling
    • 동적 온라인 알고리즘 최악의 범위 식별
    • 가장 빈번한 주기적인 작업에 가장 높은 우선 순위 할당하는 속도 단조 알고리즘 개선
    • 산발적 서버 알고리즘
      • 주기적인 작업들 기한 충족 보장
      • 산발적 작업에 대한 뛰어난 응답 시간
      • 우선순위 역전문제 해결
    • 동적 온라인 스케줄링 알고리즘 등..
  • Real-time kernels
    • OS는 예측 가능한 실시간 제약 조건 충족, 취약점 및 배포, 시간 제약이 있는 리소스 할당 및 스케줄링 통합을 위한 기본 지원을 제공해야 함
    • 3가지 고려사항
      1. 시간 문제를 개발 시 중요한 고려사항으로 둘 것
      2. 현재 OS는 응용 프로그램 작업이 마치 임의 프로세스인 것처럼 리소스를 요청한다는 개념임
        • OS는 무작위 입력을 기대하고 좋은 평균적인 동작을 하도록 설계 되어 있음
        • → 유연성과 예측 가능성의 균형을 기반으로 제작되어야 함
        • 동적 + 적응적 + 리소스 충돌 예측 및 방지 가능해야 함
      3. 시간 제약이 있는 리소스 할당 접근 방식은 타이밍 제약, 예측 가능성, 적응성, 정확성, 안정성 및 취약점 해결하는 데 필요
    • 실시간 커널은 멀티프로세서 및 분산 시스템 환경에서 작동하도록 확장 중임
      • 메시지 및 네트워크를 통한 데이터 전송 등 모든 시스템 오버헤드를 고려하여 기한 전에 완료되도록 일련의 통신 작업을 예약해야 함 → end-to-end 스케줄링
    • Mars Project(Kopetz 1989)
      • 선험적 분석(priori analysis)을 사용한 리소스를 정적으로 예약해 분산 실행이 마감 시간을 보장할 수 있도록 함
    • Spring Project(Stankovic 1991)
      • 응용 프로그램 수준의 end-to-end 타이밍 요구사항 보장을 위해 CPU 스케줄링과 통합된 실시간 가상회로 및 실시간 데이터그램에 대한 동적 요청 지원
      • 광섬유 링을 기반으로 하는 분산 반사 메모리로 예측 가능한 통신 특성 달성
    • University of Michigan의 프로젝트(Shin 1991)
      • 동적 실시간 가상 회로 및 데이터그램 지원
      • 다중 홉 통신 서브넷 기반
    • 실시간 운영체제의 표준 RT POSIX(Gallmeister 1995)
      • 포팅된 어플리케이션의 타이밍 속성 평가 방법은 미해결
  • Distributed multi-media
    • 많은 실시간 제어 어플리케이션은 다양한 유형의 시간 제약 조건 하에 매우 비결정적인 환경에서 작동
    • 이러한 응용프로그램에 멀티미디어 지원을 내장하면 크게 개선 가능함
    • 멀티미디어 응용 프로그램이 플랜트 운영 데이터에 직접 액세스 할 수 있도록 하기 위해 동일한 컴퓨터가 작업 셀 안팎에서 시간 제약이 있는 작업을 제어, 멀티미디어 지원
    • 실시간 데이터베이스, 멀티미디어 및 실시간 제어 융합의 잠재성 큼

Leave a comment