AWCTTYPA@UIAMVS.BITNET ("David A. Lyons") (03/16/89)
>Date: 15 Mar 89 14:16:22 CST (Wed) >From: scott%geowhiz.UUCP@cs.wisc.edu > >If you ask for the status of a smartport device one of the bits >returned tells you if the disk has been ejected since that last read >or write. I tested it on my //gs and it works. I heard that this >will not work with the "smart" Unidisk. I always assumed this was >used by GS/OS to see if it needed to through out the cashe, but it >sound like GS/OS just looks at the volume name every time. A was of >time and a danger for volumes with the same name. Device drivers under GS/OS are responsible for noticing when the media has been switched. The Apple 3.5 drive has a disk-switched bit--a bit that gets set when the media is ejected, which will stay set until the system software clears it even if another disk is inserted. The Unidisk 3.5 does _not_ have that (it only knows whether a disk is _currently_ in the drive; no way for it to know whether it was ejected in the meantime) so the UNIDISK3.5 driver has to go to much more trouble to determine when a new disk has been inserted--it installs a special program inside the Unidisk's internal RAM to presumably provide something a lot like the Apple 3.5's disk-switched bit. I don't know how volume names relate to noticing disk switches. If the device drivers are doing their jobs, it shouldn't be necessary to check volume names. File System Translators are the only things that know how to determine the volume name of a disk; it's conceivable [to me] that an FST would notice a new volume in a device and ask the cache manager to flush the cache of all blocks from that device. >Scott Kempf Like a bug in a rug. >MAIL: 1302 Rutledge St., Madison, WI 53703 PHONE: (608) 255-6205 (home) >UUCP: {seismo, topaz, harvard}!uwvax!geowhiz!scott >ARPA: scott%geowhiz.UUCP@spool.cs.wisc.edu PHONE: (608) 262-6154 (work) --David A. Lyons bitnet: awcttypa@uiamvs DAL Systems CompuServe: 72177,3233 P.O. Box 287 GEnie mail: D.LYONS2 North Liberty, IA 52317 AppleLinkPE: Dave Lyons