ABSTRACT
Near-future computer systems will see the integration of nonvolatile memories into main memory, offering superior density and energy efficiency compared to traditional DRAM. This will prompt a paradigm shift in operating system memory management, driven by the potential merger of the disk and main memory subsystems. This paper discusses possible design directions for a merged memory-management approach in the context of the Osprey kernel, a prototype for exploring the design space. By fusing the file-system and virtual-memory subsystems, Osprey achieves seamless memory mapping, encompassing both application workspace and file-system data, and simplifying kernel code substantially. The design facilitates protection, relocation, memory-mapped files, executable files, and shared memory, with the potential for further enhancements.
- Hiroyuki Akinaga and Hisashi Shima. 2010. Resistive Random Access Memory (ReRAM) Based on Metal Oxides. Proc. IEEE 98, 12 (2010), 2237–2251. https://doi.org/10.1109/JPROC.2010.2070830Google ScholarCross Ref
- Paolo Cappelletti. 2015. Non volatile memory evolution and revolution. In 2015 IEEE International Electron Devices Meeting (IEDM). 10.1.1–10.1.4. https://doi.org/10.1109/IEDM.2015.7409666Google ScholarCross Ref
- Jeffrey S. Chase, Henry M. Levy, Michael J. Feeley, and Edward D. Lazowska. 1994. Sharing and Protection in a Single-Address-Space Operating System. ACM Trans. Comput. Syst. 12, 4 (nov 1994), 271–307. https://doi.org/10.1145/195792.195795Google ScholarDigital Library
- Yangyin Chen and Chris Petti. 2016. ReRAM technology evolution for storage class memory application. In 2016 46th European Solid-State Device Research Conference (ESSDERC). 432–435. https://doi.org/10.1109/ESSDERC.2016.7599678Google ScholarCross Ref
- Scott W. Fong, Christopher M. Neumann, and H.-S. Philip Wong. 2017. Phase-Change Memory—Towards a Storage-Class Memory. IEEE Transactions on Electron Devices 64, 11 (2017), 4374–4385. https://doi.org/10.1109/TED.2017.2746342Google ScholarCross Ref
- Bruce Jacob, S. Ng, and D. Wang. 2010. Memory Systems: Cache, DRAM, Disk. Elsevier Science.Google ScholarDigital Library
- Bruce L. Jacob and Trevor N. Mudge. 1998. A Look at Several Memory Management Units, TLB-Refill Mechanisms, and Page Table Organizations. In Proceedings of the Eighth International Conference on Architectural Support for Programming Languages and Operating Systems (San Jose, California, USA) (ASPLOS VIII). Association for Computing Machinery, New York, NY, USA, 295–306. https://doi.org/10.1145/291069.291065Google ScholarDigital Library
- Meenatchi Jagasivamani, Candace Walden, Devesh Singh, Luyi Kang, Mehdi Asnaashari, Sylvain Dubois, Bruce Jacob, and Donald Yeung. 2020. Tileable Monolithic ReRAM Memory Design. In 2020 IEEE Symposium in Low-Power and High-Speed Chips (COOL CHIPS). 1–3. https://doi.org/10.1109/COOLCHIPS49199.2020.9097632Google ScholarCross Ref
- Meenatchi Jagasivamani, Candace Walden, Devesh Singh, Luyi Kang, Shang Li, Mehdi Asnaashari, Sylvain Dubois, Donald Yeung, and Bruce Jacob. 2019. Design for ReRAM-Based Main-Memory Architectures. In Proceedings of the International Symposium on Memory Systems (Washington, District of Columbia, USA) (MEMSYS ’19). Association for Computing Machinery, New York, NY, USA, 342–350. https://doi.org/10.1145/3357526.3357561Google ScholarDigital Library
- Marc Jordà, Siddharth Rai, Eduard Ayguadé, Jesús Labarta, and Antonio J. Peña. 2022. ecoHMEM: Improving Object Placement Methodology for Hybrid Memory Systems in HPC. In 2022 IEEE International Conference on Cluster Computing (CLUSTER). 278–288. https://doi.org/10.1109/CLUSTER51413.2022.00040Google ScholarCross Ref
- Minjae Kim, Bryan S. Kim, Eunji Lee, and Sungjin Lee. 2022. A Case Study of a DRAM-NVM Hybrid Memory Allocator for Key-Value Stores. IEEE Computer Architecture Letters 21, 2 (2022), 81–84. https://doi.org/10.1109/LCA.2022.3197654Google ScholarDigital Library
- Emre Kültürsay, Mahmut Kandemir, Anand Sivasubramaniam, and Onur Mutlu. 2013. Evaluating STT-RAM as an energy-efficient main memory alternative. In 2013 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS). 256–267. https://doi.org/10.1109/ISPASS.2013.6557176Google ScholarCross Ref
- Benjamin C. Lee, Engin Ipek, Onur Mutlu, and Doug Burger. 2009. Architecting Phase Change Memory as a Scalable Dram Alternative. In Proceedings of the 36th Annual International Symposium on Computer Architecture (Austin, TX, USA) (ISCA ’09). Association for Computing Machinery, New York, NY, USA, 2–13. https://doi.org/10.1145/1555754.1555758Google ScholarDigital Library
- Benjamin C. Lee, Ping Zhou, Jun Yang, Youtao Zhang, Bo Zhao, Engin Ipek, Onur Mutlu, and Doug Burger. 2010. Phase-Change Technology and the Future of Main Memory. IEEE Micro 30, 1 (2010), 143–143. https://doi.org/10.1109/MM.2010.24Google ScholarDigital Library
- Samuel J. Leffler, Marshall Kirk McKusick, Michael J. Karels, and John S. Quarterman. 1989. The Design and Implementation of the 4.3BSD UNIX Operating System. Addison Wesley Publishing Company, USA.Google Scholar
- Lei Liu, Shengjie Yang, Lu Peng, and Xinyu Li. 2019. Hierarchical Hybrid Memory Management in OS for Tiered Memory Systems. IEEE Transactions on Parallel and Distributed Systems 30, 10 (2019), 2223–2236. https://doi.org/10.1109/TPDS.2019.2908175Google ScholarCross Ref
- Miguel Marques. [n. d.]. Ambix: Rethinking Linux’s Page Management to Support the New Intel Optane DC Persistent Memory.Google Scholar
- Miguel Marques, Ilia Kuzmin, João Barreto, José Monteiro, and Rodrigo Rodrigues. 2021. Dynamic Page Placement on Real Persistent Memory Systems. arxiv:2112.12685 [cs.DC]Google Scholar
- Deepak M. Mathew, Felipe S. Prado, Éder. F. Zulian, Christian Weis, Muhammad Mohsin Ghaffar, Matthias Jung, and Norbert Wehn. 2020. An Energy Efficient 3D-Heterogeneous Main Memory Architecture for Mobile Devices. In International Symposium on Memory Systems (MEMSYS 2020). ACM/IEEE.Google ScholarDigital Library
- Sparsh Mittal and Jeffrey S. Vetter. 2016. A Survey Of Techniques for Architecting DRAM Caches. IEEE Transactions on Parallel and Distributed Systems 27, 6 (2016), 1852–1863. https://doi.org/10.1109/TPDS.2015.2461155Google ScholarDigital Library
- J. Müller, T. S. Böscke, S. Müller, E. Yurchuk, P. Polakowski, J. Paul, D. Martin, T. Schenk, K. Khullar, A. Kersch, W. Weinreich, S. Riedel, K. Seidel, A. Kumar, T. M. Arruda, S. V. Kalinin, T. Schlösser, R. Boschke, R. van Bentum, U. Schröder, and T. Mikolajick. 2013. Ferroelectric hafnium oxide: A CMOS-compatible and highly scalable approach to future ferroelectric memories. In 2013 IEEE International Electron Devices Meeting. 10.8.1–10.8.4. https://doi.org/10.1109/IEDM.2013.6724605Google ScholarCross Ref
- Ivy Bo Peng, Roberto Gioiosa, Gokcen Kestor, Pietro Cicotti, Erwin Laure, and Stefano Markidis. 2017. Exploring the Performance Benefit of Hybrid Memory System on HPC Environments. In 2017 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW). 683–692. https://doi.org/10.1109/IPDPSW.2017.115Google ScholarCross Ref
- Subisha V, Varun Gohil, Nisarg Ujjainkar, and Manu Awasthi. 2020. Prefetching in Hybrid Main Memory Systems. In Proceedings of the 12th USENIX Conference on Hot Topics in Storage and File Systems(HotStorage’20). USENIX Association, USA, Article 11, 1 pages.Google Scholar
Recommendations
In-memory file system for non-volatile memory
RACS '13: Proceedings of the 2013 Research in Adaptive and Convergent SystemsCurrent memory system hierarchy consists of cache memory, main memory, and secondary storage. Each level in this hierarchy has a different access speed to tolerate the long latency of the lower level but supports a large capacity as a whole memory ...
A high performance file system for non-volatile main memory
EuroSys '16: Proceedings of the Eleventh European Conference on Computer SystemsEmerging non-volatile main memories (NVMMs) provide data persistence at the main memory level. To avoid the double-copy overheads among the user buffer, the OS page cache, and the storage layer, state-of-the-art NVMM-aware file systems bypass the OS ...
An Efficient NAND Flash File System for Flash Memory Storage
In this paper, we present an efficient flash file system for flash memory storage. Flash memory, especially NAND flash memory, has become a major method for data storage. Currently, a block level translation interface is required between an existing ...
Comments