Design and Implementation of Multi-Level scheduling on MicroC/OS-II

MicroC/OS - II 기반에서 Multi-Level 스케줄링의 설계 및 구현

  • Lim Bosub (Department of Computer Science and Engineering, Hanyang University) ;
  • Lee Jaeyoon (Department of Computer Science and Engineering, Hanyang University) ;
  • Kim Kwang (Department of Computer Science and Engineering, Hanyang University) ;
  • Heu Sin (Department of Computer Science and Engineering, Hanyang University)
  • 임보섭 (한양대학교 컴퓨터 공학과) ;
  • 이재윤 (한양대학교 컴퓨터 공학과) ;
  • 김광 (한양대학교 컴퓨터 공학과) ;
  • 허신 (한양대학교 컴퓨터 공학과)
  • Published : 2005.07.01

Abstract

임베디드 시스템은 범용 컴퓨팅 시스템과 달리 자신을 포함하고 있는 기기에 부과된 특정 목적의 컴퓨팅 작업만을 수행한다. 이 시스템을 제어하기 위해서 운영체제가 필요로 하며, 임베디드 환경에서는 신뢰성과 정확성을 요하는 부분이 많기 때문에 실시간 운영체제를 필요로 한다. Real-Time kernel을 기반으로 하는 MicroC/OS-II는 수많은 용도로 사용되고 있지만 task 사용에 한계가 있다. 이 논문에서 제안하는 스케줄링은 task의 생성 수를 늘려주지만, 이 경우 task간의 우선순위 설정이 어려워진다. 이 문제 해결을 위해서 task들의 우선순위 결정은 deadline을 이용하여 3레벨로 나눈다. 3레벨로 나누어지면 task의 수가 증가해도 개발자는 task들을 레벨에 맞게 설정하면 task 관리로 인하여 생기는 문제를 줄일 수 있으며, 효율적인 스케줄링을 가능하게 한다.

Keywords