skip to main content
10.1145/1852611.1852634acmotherconferencesArticle/Chapter ViewAbstractPublication PagessoictConference Proceedingsconference-collections
research-article

MemMON: run-time off-chip detection for memory access violation in embedded systems

Authors Info & Claims
Published:27 August 2010Publication History

ABSTRACT

To deploy a memory protection mechanism, it requires CPU support hardware components like Memory Management Unit (MMU) or Memory Protection Unit (MPU). However, in embedded system, most of microcontrollers lack to be equipped these features because they cause the system incurred hardware cost and performance penalty. In this paper, a method to detect memory corruption at run-time without incurring hardware cost is proposed. Embedded system processor does not require having MMU or MPU. Off-chip detection based on FPGA by hooking on memory bus to monitor memory access for multitasking Realtime Operating System (RTOS) application is explored. Our solution, called MemMON, by combining hardware/software can detect memory access error such as task's stack overflow, task's reading/writing to code/data segments of the other tasks or memory access violation to OS kernel efficiently. In experimental evaluation, a comparison of realtime schedulability is carried out for both using and not using MemMON. Using our MemMON causes realtime schedulability of the system dropped-off about 3 times.

References

  1. Abraham Silberschatz & Peter Baer Calvin, chap. 9 "Virtual Memory", chap. 19 "Protection", Operating System Conceptss, Addison. Wesley Publishers, 5th Edition, page 289--335, page 597--621.Google ScholarGoogle Scholar
  2. Andrew N. Sloss, Dominic Symes, Chris Wright, chap. 13 "Memory Protection Units", chap. 14 "Memory Management Units", ARM System Developer's Guide Designing and Optimizing System Software, Morgan Kaufmann Publishers, 2004, page 461--488, page 491--546.Google ScholarGoogle Scholar
  3. Yamada, S.; Nakamoto, Y.; Azumi, T.; Oyama, H.; Takada, H., July 2008, Generic Memory Protection Mechanism for Embedded System and Its Application to Embedded Component Systems, In Processing of IEEE 8th International Conference on Computer and Information Technology Workshops, pp. 557--562. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Eric J. Koldinger, Jeffrey S. Chase, Susan J. Eggers, 1992, Architecture Support for Single Address Space Operating Systems, In Proceedings of the fifth international conference on Architectural support for programming languages and operating systems, Boston Massachusetts, US, pp. 175--186. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Emmett Witchel, Josh Cates, and Krste Asanovic, 2002, Mondrian memory protection, In Proceedings of the 10th annual conference on Architectural Support for Programming Languages and Operating Systems, San Jose California, pp. 304--316. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Adam Wiggins, SimonWinwood, Harvey Tuch, and Gernot Heiser, 2003, Legba: Fast Hardware Support for FineGrained Protection, In Processings of the 8th Asia-Pacific, Computer Systems Architecture Conference, Aizu-Wakamatsu Japan, pp. 320--336.Google ScholarGoogle ScholarCross RefCross Ref
  7. T. Shinagawa, K. Kono, T. Masuda, 2000, Fine-grained Protection Domain based on Segmentation Mechanism, Japan Society for Software Science and Technology, http://spa.jssst.or.jp/2000/proceedings/shinagawa.pdf.Google ScholarGoogle Scholar
  8. Shoji Suzuki, Kang G. Shin, 1997, On memory protection in real-time OS for small embedded systems, In Proceedings of Fourth International Workshop on Real-Time Computing Systems and Applications, (RTCSA'97), Taipei Taiwan, pp. 51--58. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Frank W. Miller, 2002, Simple Memory Protection for Embedded Operating System Kernels, In Proceedings of the FREENIX Track: 2002 USENIX Annual Technical Conference, Berkeley CA USA, pp. 299--308. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Seshua, U. Bussa, N. Vermeulen, B, 2007, A Run-Time Memory Protection Methodology, In Proceedings of the 2007 conference on Asia South Pacific Design Automation, Yokohama Japan, pp. 498--503. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Kumar, R. Singhania, A. Castner, A. Kohler, E. Srivastava, M., 2007, A System For Coarse Grained Memory Protection In Tiny Embedded Processors, Proceedings of the 44th annual conference on Design Automation, San Diego California, pp. 218--223. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Arora, D. Raghunathan, A. Ravi, S. Jha, N. K., 2006, Architectural Support for Safe Software Execution on Embedded Processors, In Proceedings of the 4th international conference on Hardware/software codesign and system synthesis, Seoul Korea, pp. 106--111. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. George C. Necula, Scott Mcpeak, Westley Weimer, 2005, ACM Transactions on Programming Languages and Systems (TOPLAS), CCured: type-safe retrofitting of legacy software, Vol. 27, Issue 3, pp. 477--526. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Reed Hastings and Bob Joyce, 1992, Purify: fast detection of memory leaks and access errors, In Proceedings of the Winter Usenix Conference, pp. 125--136.Google ScholarGoogle Scholar
  15. Matthew Simpson, Bhuvan Middha, Rajeev Barua, 2005, Segment Protection for Embedded Systems Using Runtime Checks, In Proceedings of the 2005 international conference on Compilers, architectures and synthesis for embedded systems, San Francisco California USA, pp. 66--77. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Robert Wahbe, Steven Lucco, Thomas E. Anderson, Susan L. Graham, 1994, Efficient Software-Based Fault Isolation, In Proceedings of the 14th ACM Symposium on Operating Systems Principles, Asheville North Carolina United States, pp. 203--216. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Jean J. Labrosse, MicroC OS II: The Real Time Kernel, Newnes Publishers, 2nd Edition. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Altera®, DE2 Development and Education Board, http://www.altera.com/education/univ/materials/boards/unv-de2-board.html.Google ScholarGoogle Scholar
  19. http://www.phytec.com/products/sbc/ARM-XScale/phyCORE-ARM7-LPC2294.htmlGoogle ScholarGoogle Scholar
  20. D. Stewart, Measuring Execution Time and Real-Time Performance, Proceedings of the Embedded Systems Conference (ESC), 2001.Google ScholarGoogle Scholar
  21. Lehoczky, J.; Sha, L.; Ding, Y., The Rate Monotonic Scheduling Algorithm: Exact Characterization and Average Case Behavior, IEEE Real-Time Systems Symposium 1989, Santa Monica, CA, pp. 166--17Google ScholarGoogle Scholar

Index Terms

  1. MemMON: run-time off-chip detection for memory access violation in embedded systems

                Recommendations

                Comments

                Login options

                Check if you have access through your login credentials or your institution to get full access on this article.

                Sign in
                • Published in

                  cover image ACM Other conferences
                  SoICT '10: Proceedings of the 1st Symposium on Information and Communication Technology
                  August 2010
                  186 pages
                  ISBN:9781450301053
                  DOI:10.1145/1852611

                  Copyright © 2010 ACM

                  Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

                  Publisher

                  Association for Computing Machinery

                  New York, NY, United States

                  Publication History

                  • Published: 27 August 2010

                  Permissions

                  Request permissions about this article.

                  Request Permissions

                  Check for updates

                  Qualifiers

                  • research-article

                  Acceptance Rates

                  Overall Acceptance Rate147of318submissions,46%

                PDF Format

                View or Download as a PDF file.

                PDF

                eReader

                View online with eReader.

                eReader