Re: Amazing... But also a bit stupid
"If you have, say, a terabyte of non-volatile RAM, why do you need disks or paging at all?"
Until you need more than a terabyte of stuff stored, you don't. One kind of storage is a lot like another, so a terabyte of optane will function just as well (no, better) than a terabyte of SSD. It will also cost more. The question is whether you need the speed of optane enough to justify its price. Either way, you'll be using it for the same purposes, whether you use a memory byte-mapped model or a filesystem block-model approach to organizing it.
"There was a time when RAMdisks made sense. When it was doable to have a meg of RAM in a computer whose OS used 5% of it, but you only had one floppy drive. That meant you could temporarily stick things in the RAMdrive and not need to switch disks to access it. Why do you want to emulate a 1980s version of a disk in memory?"
Because the filesystem is the way for me to move data from one program to another. I can't take a downloaded audio file from the browser's memory and tell my audio editor to edit this. If it makes the file bigger, the browser will get very confused about why the contiguous block of bits either became noncontiguous or moved. I can't even find that chunk of memory by its address without pulling out a debugger and mapping between the OS's memory regions. We could remove the isolation of processes' memory areas to let this happen, but meanwhile, I can use the filesystem to obtain a set of bits and point something at that set to change it, using a filename I provided for that set. Ramdisks are sometimes useful to keep that useful operation in the fastest memory available to me.
"No current OS organizes its RAM as a filesystem. Right now I am typing in a browser window. That browser has, no doubt, many allocated areas of RAM. They are not files. There is no directory."
They are already mapped objects, but there is an organizational structure. There are objects holding other objects as members in a hierarchical layout. The members have names. The members themselves have members. A member can refer to its parent. That's a lot like a filesystem, but since the type of each thing is known and only the browser's code is operating on them, they don't all have to be bit streams.