Path: utzoo!attcan!uunet!tektronix!percival!qiclab!sopwith!snoopy From: snoopy@sopwith.UUCP (Snoopy) Newsgroups: comp.arch Subject: Re: RAM Disks are obsolete Keywords: Solid State Wafers Message-ID: <92@sopwith.UUCP> Date: 17 Jan 89 17:39:41 GMT References: <334@belltec.UUCP> Reply-To: snoopy@sopwith.UUCP (Snoopy) Organization: The Daisy Hill Puppy Farm Lines: 58 In article <334@belltec.UUCP> jom@belltec.UUCP (Jerry Merlaine) writes: |With a RAM disk, you can't re-use the RAM for something else when the |file system (database or whatnot) is not using it. |With a RAM file system, however, you can allocate RAM when the user |wants to store data and throw it away when the user removes files. | |Building a special-purpose RAM disk with a disk controller interface |is a classic case of hardware people not talking to software people |but instead going off and building something cute but useless. | |I would share the slow storage between a RAM filesystem, which would get |first priority. Second priority would be local buffer caching for |NFS or RFS clients. Third priority would be local disk buffer caching. Jerry, Jerry, Jerry. First you point out the error in dedicating a resource to one use, then you procede to do just that. (Okay, three uses instead of one, but still the same theme.) What you want to do, is to set things up so that all resources are maximally sharable. Example one: a Sequent style multiprocessor, rather than than having a master-slave, or dedicated IOP, or foobar accelerator. You don't run into the problem of part of the system being a bottleneck while another is loafing. Example two: the Mach OS use of the regular filesystem for paging space, rather than dedicating one or more disk partitions to swap. The same principle should apply to low-cost slow RAM. Use it as just another level of caching: registers on-chip cache (e.g. ns32532) off-chip cache main memory wafer RAM disk cache disk tape The question is, do teach the OS to handle another layer? Hook it in as a disk block cache which is transparent to the software? Redefine the layers, calling the wafer RAM "main memory", and wire what used to be main memory as a cache, and have a fast cache for the cache: registers on-chip cache off-chip fast cache off-chip slow cache (was main memory) main memory (wafer RAM) disk tape This last method is appealing. Of course this limits the size of the wafer RAM to the addressing space, typically 2-4GB these days. High end systems might want more. _____ /_____\ Snoopy (squeaking by nicely on a mere 3MB) /_______\ |___| tektronix!tekecs!sopwith!snoopy |___| sun!nosun!illian!sopwith!snoopy