FAST TRANSPARENT VIRTUAL MEMORY FOR COMPLEX DATA PROCESSING IN SENSOR NETWORKS

Nan Lin, Yabo Dong, Dongming Lu

Abstract

Sensor networks has been used in numerous fields, some of which require complex processing of large amount of data, such as visual surveillance. Low-power MCUs on sensor nodes have kilobytes of RAM which is not enough for mass data processing. In this paper, we present a transparent software-based virtual memory for mass complex data processing in sensor networks which can be much larger than the physical memory. Traditional optimizations have been employed and tuned to best suit the virtual memory. Address translations were found to be a major overhead in virtual memory for most applications. With respect to assembly conversion commonly used in other software-based virtual memory systems, we use flexible C code transformation which generates cache index buffers to greatly reduce the address translation overhead. The usability of the virtual memory is further verified by a number of common algorithms using the virtual memory.

References

  1. 2.x Working Group, T. T. (2005). Tinyos 2.0. In Proceedings of the 3rd international conference on Embedded networked sensor systems, SenSys 7805, pages 320-320, New York, NY, USA. ACM.
  2. Atkinson, D. C. and Griswold, W. G. (1998). Effective whole-program analysis in the presence of pointers. In Proceedings of the 6th ACM SIGSOFT international symposium on Foundations of software engineering, SIGSOFT 7898/FSE-6, pages 46-55, New York, NY, USA. ACM.
  3. Bai, L. S., Yang, L., and Dick, R. P. (2009). Memmu: Memory expansion for mmu-less embedded systems. ACM Trans. Embed. Comput. Syst., 8:23:1-23:33.
  4. Chen, Y.-T., Chien, T.-C., and Chou, P. H. (2010). Enix: a lightweight dynamic operating system for tightly constrained wireless sensor platforms. In Proceedings of the 8th ACM Conference on Embedded Networked Sensor Systems, SenSys 7810, pages 183-196, New York, NY, USA. ACM.
  5. Chung, T.-S., Park, D.-J., Park, S., Lee, D.-H., Lee, S.-W., and Song, H.-J. (2009). A survey of flash translation layer. Journal of Systems Architecture, 55(5-6):332 - 343.
  6. Crossbow Technology, I. (2007). Imote2 datasheet. Available at http://wsn.cse.wustl.edu/images/e/e3/Imote2 Datasheet.pdf.
  7. Crossbow Technology, I. (2009a). Micaz specs. Available at http://www.xbow.com/Products/Product pdf fles/Wire less pdf/MICAz Datasheet.pdf.
  8. Crossbow Technology, I. (2009b). Telosb specs. Available at http://www.xbow.com/Products/Product pdf files/ Wireless pdf/TelosB Datasheet.pdf.
  9. Denning, P. J. (1970). Virtual memory. ACM Comput. Surv., 2:153-189.
  10. Gay, D., Levis, P., von Behren, R., Welsh, M., Brewer, E., and Culler, D. (2003). The nesc language: A holistic approach to networked embedded systems. In Proceedings of the ACM SIGPLAN 2003 conference on Programming language design and implementation, PLDI 7803, pages 1-11, New York, NY, USA. ACM.
  11. Gu, L. and Stankovic, J. A. (2006). ¡i¿t-kernel¡/i¿: providing reliable os support to wireless sensor networks. 1182809 1-14.
  12. Hennessy, J., Patterson, D., and Goldberg, D. (2003). Computer architecture: a quantitative approach. Morgan Kaufmann.
  13. Horwitz, S., Pfeiffer, P., and Reps, T. (1989). Dependence analysis for pointer variables. In Proceedings of the ACM SIGPLAN 1989 Conference on Programming language design and implementation, PLDI 7889, pages 28-40, New York, NY, USA. ACM.
  14. Jacob, B. and Mudge, T. (2001). Uniprocessor virtual memory without tlbs. IEEE Trans. Comput., 50:482-499.
  15. Lachenmann, A., Marrón, P. J., Gauger, M., Minder, D., Saukh, O., and Rothermel, K. (2007). Removing the memory limitations of sensor networks with flashbased virtual memory. SIGOPS Oper. Syst. Rev., 41:131-144.
  16. Ltd, A. (2010). Cortex-m3 technical reference manual. Available at http://infocenter.arm.com/help/topic/com .arm.doc.ddi0337i/DDI0337I cortexm3 r2p1 trm.pdf.
  17. Madden, S. R., Franklin, M. J., Hellerstein, J. M., and Hong, W. (2005). Tinydb: an acquisitional query processing system for sensor networks. ACM Trans. Database Syst., 30(1):122-173.
  18. Necula, G., McPeak, S., Rahul, S., and Weimer, W. (2002). Cil: Intermediate language and tools for analysis and transformation of c programs. In Horspool, R., editor, Compiler Construction, volume 2304 of Lecture Notes in Computer Science, pages 209-265. Springer Berlin / Heidelberg.
  19. Park, S.-y., Jung, D., Kang, J.-u., Kim, J.-s., and Lee, J. (2006). Cflru: a replacement algorithm for flash memory. In Proceedings of the 2006 international conference on Compilers, architecture and synthesis for embedded systems, CASES 7806, pages 234-241, New York, NY, USA. ACM.
  20. Soro, S. and Heinzelman, W. (2009). A survey of visual sensor networks. Advances in Multimedia, 2009(640386):1-21.
  21. STMicroelectronics (2011). Stm32f103ze datasheet. Available at http://www.st.com/internet/com/TECHNICA L RESOURCES/TECHNICAL LITERATURE/DAT ASHEET/CD00191185.pdf.
Download


Paper Citation


in Harvard Style

Lin N., Dong Y. and Lu D. (2012). FAST TRANSPARENT VIRTUAL MEMORY FOR COMPLEX DATA PROCESSING IN SENSOR NETWORKS . In Proceedings of the 1st International Conference on Sensor Networks - Volume 1: SENSORNETS, ISBN 978-989-8565-01-3, pages 24-34. DOI: 10.5220/0003804900240034


in Bibtex Style

@conference{sensornets12,
author={Nan Lin and Yabo Dong and Dongming Lu},
title={FAST TRANSPARENT VIRTUAL MEMORY FOR COMPLEX DATA PROCESSING IN SENSOR NETWORKS},
booktitle={Proceedings of the 1st International Conference on Sensor Networks - Volume 1: SENSORNETS,},
year={2012},
pages={24-34},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0003804900240034},
isbn={978-989-8565-01-3},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 1st International Conference on Sensor Networks - Volume 1: SENSORNETS,
TI - FAST TRANSPARENT VIRTUAL MEMORY FOR COMPLEX DATA PROCESSING IN SENSOR NETWORKS
SN - 978-989-8565-01-3
AU - Lin N.
AU - Dong Y.
AU - Lu D.
PY - 2012
SP - 24
EP - 34
DO - 10.5220/0003804900240034