All the OS is doing is moving objects to the faster storage devices,
and not breaking the single level storage concept.
Sure it is. Think of the OS layering that's involved here. At some low
level you have code (what used to be the vertical and horizontal
microcode) that have an understanding of the hardware. That code needs
to be updated/changed as technology evolves. But the vast majority of
the OS code is isolated from the underlying technology, the beauty of
the OS design.
When all things were created equal (4 legs good, 2 legs bad? :-) the
higher-level OS function would figure out what parts of and object
needed to be saved (be that records, formats, programs, working storage,
etc) and hand off that block of bits to a lower-level os function. The
higher level function didn't care how it got stored, it just needed to
be stored somwhere; likewise, the lower level code didn't care what the
bits represented, it just needed to store them. There was a very nice
isolation between the higher-level object-based OS and the lower-level
Now we've changed that. Either the higher level OS code needs to
understand different parts of the storage architecture so it can tell
the lower level code to store this on SSD, store that on 15K, store the
other thing on 10K or the lower level functions need to understand that
these bits represent the frequently-used item master bits, but those
bits represent the infrequently used savf bits. Either way, you've got
to send information across the boundaries that used to be clean.