From: Dave Wade
just as a program in virtual memory can be spread
across any location
of physical memory, a "file" on an AS/400 can be spread across any
number of disk sectors on any drive
Yes, but the same thing is basically true of most conventional file systems,
e.g. various Unix/Linux file systems (although on most of those, files aren't
spread across multiple drives, but there have been file systems that did
that).
The original AS/400 OS had "single level
storage" so basically the
disks were an extension to ram, or more that RAM is just a temporary
disk buffer.
But that description is, in some sense, just what classic virtual memory
(paging) does.
The crucial difference is in what the _user sees_: in a normal virtual memory
system, a process' address space is a simple one-dimensional array of
bytes/words. In a single-level-store (sometimes called 'segmentation'), a
process' address space is two dimensional: segment along one axis, address
within segment along the other:
https://en.wikipedia.org/wiki/Single-level_store
Of course, one can have segmentation (in the sense of 'what the process
sees') _without_ virtual memory (either paging, or swapping entire segments),
but most systems that implemented segmentation also did virtual memory too;
Multics, and the family of IBM systems of which the AS/400 is a later member,
both did.
Noel