DOI QR코드

DOI QR Code

Task Management and Garbage Collection Execution Control Method for Providing Real-time Performance to Android

안드로이드에 실시간 성능 제공을 위한 태스크 관리 및 가비지컬렉션 실행 제어 방법

  • Received : 2018.01.15
  • Accepted : 2018.02.21
  • Published : 2018.03.28

Abstract

Systems such as military inspection equipment which it is important to acquire and evaluate data in real-time should be able to real-time processing at the operating system level. As technology advances, there is a demand for replacing existing equipment with mobile device, but mobile devices with Android are not suitable for systems requiring real-time performance. On Android, garbage collection ensures free memory, while other tasks are interrupted while this task is performed, which cannot guarantee periodicity of particular tasks. In this paper, we designed and implemented a structure to control execution garbage collection of Android to solve this problem. Real-time performance is ensured by controlling garbage collection during the time required for real-time operation, and RTiK(Real-Time implanted Kernel) is applied to ensure real-time performance on Android. In order to evaluate the performance, we measured the call period of the 5ms period task, and, only 34.31% of the task was guaranteed before the control, but the task period of 98.18% was satisfied through control, providing real-time performance to Android.

실시간으로 데이터를 획득하고 평가하는 것이 중요한 군용 점검 장비와 같은 시스템에서는 운영체제 레벨에서 실시간 처리가 가능해야 한다. 기술의 발전으로 기존 장비를 휴대용 단말로 대체하려는 요구가 있으나, 안드로이드가 적용된 휴대용 단말은 실시간성이 요구되는 시스템에 적합하지 않다. 안드로이드에서는 가비지 컬렉션을 통해 가용 메모리를 확보하는데, 이 작업이 수행되는 동안 다른 태스크가 중단되어 특정 태스크의 주기성을 보장할 수 없다. 본 논문에서는 이를 해결하기 위해 안드로이드의 가비지 컬렉션 실행을 제어하는 구조를 설계 및 구현하였다. 실시간 작업이 필요한 시간 동안 가비지 컬렉션을 제어하여 실시간 성능을 보장하며, 안드로이드에 실시간 성능 보장을 위한 RTiK을 적용하였다. 성능 평가를 위해 5ms 주기 태스크의 호출 주기를 측정하였으며, 제어 이전에는 태스크의 34.31%만 주기가 보장되었으나, 제어를 통해 98.18%의 태스크 주기가 만족되어 안드로이드에 실시간성을 제공하였다.

Keywords

References

  1. 이진욱, 조문행, 김종진, 조한무, 박영수, 이철훈 "윈도우 기반의 점검장비에 실시간성을 지원하는 실시간 이식 커널의 설계 및 구현," 한국콘텐츠학회논문지, Vol.10, No.10, pp.36-44, 2010. https://doi.org/10.5392/JKCA.10.10.036
  2. 송창인, 이승훈, 주민규, 이철훈, "멀티프로세서 윈도우즈상에서 실시간성 지원," 한국콘텐츠학회논문지, Vol.12, No.6, pp.68-77, 2012. https://doi.org/10.5392/JKCA.2012.12.06.068
  3. 손익재, 김일호, 양종휴, 이남용, "사이버 국방을 위한 스마트 단말 보안기술," 한국통신학회논문지, 제13권, 제10호, pp.986-992, 2012.
  4. https://www.netmarketshare.com/
  5. R. Jones, A. Hosking, and M. Eliot, The Garbage Collection Handbook: the art of automatic memory management, CRC Press, 2016.
  6. 김도현, 강형석, 강정남, 이은규, 김강희, "실시간 정밀 모션 제어를 위한 안드로이드 응용 설계 및 구현," 정보과학회 컴퓨팅의 실제 논문지, 제21권, 제4호, pp.315-319, 2015. https://doi.org/10.5626/KTCP.2015.21.4.315
  7. A. P. Ruiz, M. A. Rivas, and M. G. Harbour, "CPU Isolation on the Android OS for running Real-Time Applications," Proceedings of the 13th International Workshop on Java Technologies for Real-time and Embedded Systems, ACM, 2015.
  8. T. Gerlitz, I. Kalkov, J. Schommer, D. Franke, and S. Kowalewski, "Non-blocking garbage collection for real-time android," In Proceedings of the 11th International Workshop on Java Technologies for Real-time and Embedded Systems, pp.108-117, 2013.
  9. Y. Yan, S. Cosgrove, V. Anand, A. Kulkarni, S. Konduri, S. Ko, and L. Ziarek, "RTDriod: A Design for Real-Time Android," IEEE Transactions on Mobile Computing, Vol.15, No.10, pp.2564-2584, 2016. https://doi.org/10.1109/TMC.2015.2499187
  10. 이상길, 이승율, 이철훈, "리눅스 사용자 영역에 실시간성 제공을 위한 미들웨어," 한국콘텐츠학회논문지, Vol.16, No.5, pp.217-228, 2016. https://doi.org/10.5392/JKCA.2016.16.05.217
  11. 이승율, 이상길, 이철훈, "ARM 프로세서 기반의 리눅스를 위한 실시간 확장 커널," 한국콘텐츠학회논문지, Vol.17, No.10, pp.587-597, 2017.
  12. https://developer.android.com/guide/platform/in dex.html
  13. https://www.ibm.com/developerworks/opensou rce/library/os-android-devel/
  14. http://hiqes.com/android-security-part-1/
  15. Sun Microsystems, Memory Management in the Java HotSpotTM Virtual Machine, Sun Microsystems, 2006.
  16. A Hussein, M Payer, and A Hosking, "Impact of GC design on power and performance for Android," Proceedings of the 8th ACM International Systems and Storage Conference, ACM, 2015.