Abstract
A swapping algorithm for NAND flash memory based embedded systems is developed by combining data compression and an improved page update method. The developed method allows efficient execution of a memory demanding or multiple applications without requiring a large size of main memory. It also helps enhancing the stability of a NAND flash file system by reducing the number of writes. The update algorithm is based on the CFLRU (Clean First LRU) method and employs some additional features such as selective compression and delayed swapping. The WKdm compression algorithm is used for software based compression while the LZO is used for hardware based implementation. The proposed method is implemented on an ARM9 CPU based Linux system and the performances in the execution of MPEG2 decoder, encoder, and gcc programs are measured and interpreted.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Park, C., Seo, J., Bae, S., Kim, H., Kim, S., Kim, B.: A low-cost memory architecture with nand xip for mobile embedded systems. In: CODES+ISSS, pp. 138–143 (2003)
Kim, J., Kim, J.M., Noh, S.H., Min, S.L., Cho, Y.: A space-efficient flash translation layer for compactflash systems. IEEE Trans. Consumer Electronics 48, 366–375 (2002)
Samsung Electronics: NAND flash memory&SmartMedia data book (2004)
Samsung Electronics: Mobile SDRAM (K4S561633F, K4S511633F) data sheets (2004)
Marsh, B., Douglis, F., Krishnan, P.: Flash memory file caching for mobile computers. In: HICSS (1), pp. 451–461 (1994)
de Castro, R.S., do Lago, A.P., Silva, D.D.: Adaptive compressed caching: Design and implementation. In: SBAC-PAD, pp. 10–18 (2003)
Cervera, R., Cortes, T., Becerra, Y.: Improving application performance through swap compression. In: USENIX Annual Technical Conference, FREENIX Track, pp. 207–218 (1999)
Roy, S., Kumar, R., Prvulovic, M.: Improving system performance with compressed memory. In: IPDPS, p. 66 (2001)
Wilson, P.R., Kaplan, S.F., Smaragdakis, Y.: The case for compressed caching in virtual memory systems. In: USENIX Annual Technical Conference, General Track, pp. 101–116 (1999)
Abali, B., Banikazemi, M., Shen, X., Franke, H., Poff, D.E., Smith, T.B.: Hardware compressed main memory: Operating system support and performance evaluation. IEEE Trans. Computers 50, 1219–1233 (2001)
Nunez, J.L., Feregrino, C., Jones, S., Bateman, S.: X-matchPRO: A proASIC-based 200 mbytes/s full-duplex lossless data compressor. In: Brebner, G., Woods, R. (eds.) FPL 2001. LNCS, vol. 2147, pp. 613–617. Springer, Heidelberg (2001)
Bunton, S., Borriello, G.: Practical dictionary management for hardware data compression. Commun. ACM 35, 95–104 (1992)
Kjelsø, M., Gooch, M., Jones, S.: Design and performance of a main memory hardware data compressor. In: EUROMICRO, pp. 423–430 (1996)
Kjelsø, M., Gooch, M., Jones, S.: Performance evaluation of computer architectures with main memory data compression. Systems Architecture 45, 571–590 (1999)
Jones, S.: 100mbit/s adaptive data compressor design using selectively shiftable content-addressable memory. In: Proceedings of IEE (part G), pp. 498–502 (1992)
Park, C., Kang, J.U., Park, S.Y., Kim, J.S.: Energy-aware demand paging on nand flash-based embedded storages. In: ISLPED, pp. 338–343 (2004)
Lee, J.S., Hong, W.K., Kim, S.D.: Design and evaluation of a selective compressed memory system. In: ICCD, pp. 184–191 (1999)
Rusling, D.A.: The Linux Kernel. O’Reilly, Sebastopol (1999)
Bovet, D., Cesati, M.: Understanding the Linux Kernel. O’Reilly, Sebastopol (2002)
van Riel, R.: Page replacement in linux 2.4 memory management. In: USENIX Annual Technical Conference, FREENIX Track, pp. 165–172 (2001)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Park, S., Lim, H., Chang, H., Sung, W. (2005). Compressed Swapping for NAND Flash Memory Based Embedded Systems. In: Hämäläinen, T.D., Pimentel, A.D., Takala, J., Vassiliadis, S. (eds) Embedded Computer Systems: Architectures, Modeling, and Simulation. SAMOS 2005. Lecture Notes in Computer Science, vol 3553. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11512622_34
Download citation
DOI: https://doi.org/10.1007/11512622_34
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-26969-4
Online ISBN: 978-3-540-31664-0
eBook Packages: Computer ScienceComputer Science (R0)