리눅스기반 저전력 ARM 임베디드 장비의 부팅과정 최적화

Optimizing Boot Stage of Linux for Low-power ARM Embedded Devices

  • 김종석 (한국과학기술원 전산학과) ;
  • 양진영 (한국과학기술원 전산학과) ;
  • 김대영 (한국과학기술원 전산학과)
  • 발행 : 2013.10.25

초록

전통적으로 임베디드 장비에서는 단순한 펌웨어 수준의 운영체제를 사용해 왔다. 그러나 최근 하드웨어 성능의 향상과 이에 따른 사용자들의 다양한 요구사항을 만족시킬 수 있도록 범용 운영체제인 리눅스를 사용하고 있는 임베디드 장비들이 활성화되고 있다. 리눅스를 운영체제로 사용하는 경우 확장성, 범용성, 이식성 등의 장점이 있지만 리눅스의 이식성을 고려한 설계로 인한 복잡성의 증가로 인한 오버헤드가 존재한다. 대다수의 임베디드 시스템에서 전원이 인가된 후 필요한 기능을 정상적으로 수행하기까지의 시간을 최소화하는 것은 필수적인 요구사항이기 때문에, 이들 특성은 임베디드 장비에서는 불필요할 수 있으며 적절히 재구성 또는 제거되어야 한다. 본 논문에서는 Corelogic사의 CLM9722 DTK를 대상으로 하여 알려진 소프트웨어 최적화 기법을 리눅스 부팅 각 단계에 적용, 결과를 측정함과 동시에 하드웨어 종속성으로 인한 범용 프레임워크 내의 최적화 제약사항에 대하여 연구하였다. 결과적으로 장비 전원 인가 후 부팅 시간을 약 33% 정도 단축할 수 있었다.

Conventionally embedded devices used simple operating system (OS); however, the number of embedded devices using Linux as OS is increasing to keep up with hardware's performance improvement and customer's various needs. While embedded devices using Linux can take advantage of expandability, generality, portability, Linux's flexibility nature may cause undesirable overheads because of its increased complexity. One such overhead makes boot stage optimization essential in most embedded systems, where many features are redundant and possible to be removed or reconfigured. This paper applies well-known software optimization technique for Linux's boot stage to an CLM9722 DTK, measures the results, and studies about limitation of such techniques from hardware dependancy on the standard framework of Linux. The booting time from power-on until completion were decreased by 33% approximately.

키워드