연성 실시간을 보장하는 자바 M: N 쓰레드 맵핑 모델

A Java M: N Thread Mapping Model for Guaranteeing Soft Real-Time

  • 양영록 (충북대학교 컴퓨터 과학과) ;
  • 손봉기 (충북대학교 컴퓨터 과학과) ;
  • 김명준 (충북대학교 컴퓨터 과학과)
  • 발행 : 2003.10.01

초록

사용자 쓰레드와 시스템 쓰레드간의 1:1 맵핑 모델은 병렬성을 지원하는 장점이 있고, M: N 맵핑은 병렬성 지원과 빠른 문맥교환의 장점이 있다. 리눅스 자바 가상 머신에서는 1:1 맵핑 모델만을 지원한다. 연성 실시간을 보장하기 위해서는 쓰레드간의 문맥교환을 최소화하여 성능 향상시킬 필요가 있다. 이 논문에서는 자바 어플리케이션 레벨에서 경량 프로세스(Light Weight Process, LWP) 개념을 도입하여 리눅스 자바 가상 머신에서 M: N 맵핑을 지원하는 자바 쓰레드 모델을 제안한다. 제안한 모델은 그린 쓰레드 (Green Thread)의 빠른 문맥교환과 네이티브 쓰레드(Native Thread)의 병렬성 지원 장점을 혼합한 것으로 빠른 처리속도와 자바 플랫폼의 독립성을 그대로 유지할 수 있다. 또한, MTR-LS 알고리즘을 경량 프로세스 스케줄링에 채택함으로서, 자바 응용프로그램의 연성 실시간을 보장한다. 1:l 및 M:1 맵핑 모델과의 성능 비교를 통해 제안한 모델이 좋은 성능과 연성 실시간을 보장한다는 것을 보인다.

키워드