A number of vendors have come out with SSD DIMMS, which in my mind begs the question: when are the OS changes that will provide memory allocation in non-volatile memory? Of course the question is not just simply providing allocation space, there is going to have to be some additions to other parts of the operating system – specifically in the area of resource management, even if this just used for as a RAMDISK.
As non-volatile memory will be a scarce resource, there will have to be something like quotas to manage allocation. If there is not some user management framework for this new type of memory, there will be limits to how it can be used in a general way. For example, how will it be used in a VM environment? What happens if the memory space is not available for the important application?
I suspect that we will soon be dedicating machines that run a single application, but that is not what the industry wants as it defeats the purpose of the shared server approach that we have been moving toward for the last few years. We are going to have to change operating systems so they can directly address non-volatile memory and deal with it the same way they deal with the path from DDR memory to the L1 cache.
These changes are going to be needed in the long run for this new technology. And there are lots of other non-volatile technologies on the horizon, many of which are byte addressable. This is not the case for NAND flash, which is limited when you’re talking about operating system changes to make this look just like DDR memory, but also control who can use it.
Any new technology faces challenge for acceptance. My feeling is that there has to be some major changes in the way operating systems and user resource allocation works before non-volatile memory technology is widely accepted.