Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!rutgers!sun-barr!texsun!playroom!pitstop!acockcroft From: acockcroft@pitstop.West.Sun.COM (Adrian Cockcroft) Newsgroups: comp.arch Subject: Re: SCSI on steroids, mainframes move over Message-ID: <838@pitstop.West.Sun.COM> Date: 31 Aug 89 16:58:14 GMT References: <5932@pt.cs.cmu.edu> <3238@scolex.sco.COM> <26970@amdcad.AMD.COM> <452@ctycal.UUCP> Organization: Sun Microsystems, Mt. View, CA Lines: 46 In article <452@ctycal.UUCP>, ingoldsb@ctycal.COM (Terry Ingoldsby) writes: > In article <1383@atanasoff.cs.iastate.edu>, hascall@atanasoff.cs.iastate.edu (John Hascall) writes: > > In article <26970> davec@cayman.amd.com (Dave Christie) writes: > > }In article <5932> butcher@g.gp.cs.cmu.edu (Lawrence Butcher) writes: > ... > > }and wonderful data structures out on disk? For the latter, the 180 > > }architecture, along with the NOS/VE OS, provides what I think is the > > }ultimate(*) in user-level i/o: none! What I really mean is: implicit i/o > > }via memory mapped files. Simply associate a file(s) with a data > > }structure(s) in the virtual address space of your software, and > > }access it anyway you like. Actual physical i/o occurs simply as > > }part of normal paging. No fuss, no muss. > > > I can't give a reference, but I thought that memory mapped file I/O was > going to be included in one of the future versions of UNIX. I can't > remember if it will be in OSF or System V. It is convenient and can > give quite a performance improvement over manual code. > Memory mapped file I/O was introduced in SunOS 4.0 which has been shipping since around May 1988. It is one of the main parts of SunOS which has been incorporated into SVR4. Some of the features are page-by-page sharing and copy-on-write mechanisms. The whole of RAM is effectively used as a cache into the filesystem and if a file is being read by two processes using mmap then the file will be paged in and the pages shared. Writes to the file can be seen by the other process if you want or a copy-on-write can be invoked. I think the cp program was modified to use mmap. A related change was that SunOS 4.0 can page to regular files as well as disk partitions. Increasing the swap space on a 4.0 system is done online using two commands: % mkfile 16m /home/swap % swapon /home/swap Since the disk controller on a Sun uses DVMA to write dirctly to the process address space (no copying or buffering for most pages) the I/O is very efficient. Adrian -- Adrian Cockcroft Sun Cambridge UK TSE sun!sunuk!acockcroft Disclaimer: These are my own opinions