Multiple Register Files for Fast Context Switching in Real-Time Systems

실시간 시스템에서 빠른 문맥 전환을 위한 다중 레지스터 파일

  • 김종웅 (경북대학교 전자전기컴퓨터학부) ;
  • 조정훈 (경북대학교 전자전기컴퓨터학부)
  • Received : 2010.08.11
  • Accepted : 2010.09.02
  • Published : 2010.09.30

Abstract

Recently complexity of embedded software cause to be used real-time operating system (RTOS) to implement various functions in the embedded system. And also, according to requirement of complex functions in embedded systems, the number as well as complexity of tasks get increased continuously. In case that many tasks collaborated in a microprocessor, context switching time between tasks is a overhead waisting a CPU resource. Therefore the time of task context switching is an important factor that affects performance of RTOS. In this paper, we concentrate on the improvement of task context switch for reducing overhead and achieving fast response time in RTOS. To achieve these goal, we suggest multiple register files and task context switching algorithm. By reducing the context switch overhead, we try to ease scheduling and assure fast response times in multitasking environment. As a result, the context switch overhead decreased by 8~16% depend on the number of register files, and some task set which are not schedulable with single register file are schedulable due to that decrease with multiple register files.

Keywords

References

  1. 임채덕 등, "임베디드 소프트웨어 기술동향 및 산업발전 전망", 정보통신연구진흥 제4권 제3호, 정보통신연구진흥원, 2002.
  2. Operating System Specification 2.2.1, 2003, http://www.osek-vdx.org
  3. Qualcornm, Operating System REX, L4, http://wWW.qualcomm.com.
  4. CISCO, Operating System IOS, http://www.cisco.com.
  5. J A. Stankovic. R. Rajkumar. "Real-time operating system", Real-Time Systems, Kluwer Academic Publishers, Vol.28, pp.237-253, 2004. https://doi.org/10.1023/B:TIME.0000045319.20260.73
  6. P. A. Laplante, Real-Time systems Design and Analysis: An Engineer's Handbook, Second Edition, 1996
  7. Hassan Gomaa, Designing Concurrent, Distributed, and Real-Time Applications with UML, 2000
  8. D. Tsafrir, "The context-switch overhead inflicted by hardware interrupts (and the enigma of do-nothing loops)", Experimental computer science on Experimental computer science, 2007.
  9. D. B. Stewart and Michael Barr, "Introduction to rate mmonotonic scheduling", Embedded Systems Programming, 2002.
  10. J. S. Snyder, D. B. Whalley, and T. P. Baker, "Fast context swtiches: compiler and architectural support for preemptive scheduling", Microprocessors and Microsystems, pp. 35-42, 1995.
  11. X. Zhou and P. Petrov, "Rapid and low-cost context-switch through embedded processor custornization for real-time and control application", in Proceedirings of the 43rd annual Conference on Design Automation, pp. 352-357, 2006.
  12. R. Alverson, D. Callahan, D. Cummings, B. koblenz, A. Porterfield, and B. Smith, "The tera computer system", in Proceedings of the 1990 International Conference on Supercomputing, pp. 1-6, 1990.
  13. M. Adiletta, M. Rosenbluth, D. Bernstein, G. Wolrich, and H. Wilkinson, "The next generation of intel ixp network processors", Intel Technology Journal, Vol. 6, 2002.
  14. P. Kongetira, K. Aingaran, and K. Olukotun, "Niagara: A 32-way multithreaded sqaarc processor", Micro, IEEE, Vol.25, No. 2, pp. 21-29, 2005. https://doi.org/10.1109/MM.2005.35
  15. P. R. Nuth and W. J. Dally, "The named-state register file: Implementation and performance", in IN Proc. 1st Intl Symp. on High-Performance Computer Architecture HPCA, pp. 4-13, 1995.
  16. Jean J Labrosse, uC/OS-II: The Real-Time Kernel, R&D Books[M],1998.