home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #30 / NN_1992_30.iso / spool / comp / sys / amiga / programm / 17585 < prev    next >
Encoding:
Internet Message Format  |  1992-12-21  |  2.2 KB

  1. Path: sparky!uunet!cbmvax!jesup
  2. From: jesup@cbmvax.commodore.com (Randell Jesup)
  3. Newsgroups: comp.sys.amiga.programmer
  4. Subject: Re: A few Handler/FileSys Q's (Mod.Long.)
  5. Message-ID: <38025@cbmvax.commodore.com>
  6. Date: 18 Dec 92 04:59:59 GMT
  7. References: <1992Dec17.051905.1@economics.adelaide.edu.au>
  8. Reply-To: jesup@cbmvax.commodore.com (Randell Jesup)
  9. Organization: Commodore, West Chester, PA
  10. Lines: 36
  11. Keywords: handler filesystem packets Amiga DOS AmigaDOS lock FileLock
  12.  
  13. djung@economics.adelaide.edu.au (David Jung) writes:
  14. >First here's what I have discovered ... a scenario ...
  15.  
  16. [ opens file, notices that if the disk is removed and then another read
  17.   from the file is done, the system requests it be replaced in the same drive ]
  18.  
  19.     This is normal behavior for our FS, because of it's implementation.
  20. Filehandles, unlike locks, are actually handles on coroutines inside the
  21. filesystem.  Locks can easily move from one machine to another.  Coroutines
  22. can't in general.  The guts of the FS (actually almost all of it) would
  23. have to be recoded from scratch to change this.
  24.  
  25. >3) As a filesystem, if a volume has just been inserted into the device you're
  26. >managing, and you grab the locks from the dol_LockList, can you Forbid(), go
  27. >through and change the fl_Task field of all the locks to yourself, then Permit()
  28. >so that any further use of the active FileLocks will be directed to you?
  29.  
  30.     Yes, this is expected.
  31.  
  32. >4) If, again as a filesystem, I get an argument FileLock for a volume I am
  33. >no longer managing (volume was ejected from my device), can I, upon inspection
  34. >of the DosList finding a non-NULL dol_Task field, send the packet onto
  35. >the other filesystem that is managing the volume now (assuming the dol_Task
  36. >field is non-NULL because the volume has been inserted into another device).
  37. >I would have to set up the packet so it was returned either to me, or directly
  38. >to the application/DOS.
  39.  
  40.     You could do this, I suppose, but it would be more normal to fail it.
  41. Be very careful when forwarding packets about dp_Port.
  42.  
  43. -- 
  44. To be or not to be = 0xff
  45. -
  46. Randell Jesup, Jack-of-quite-a-few-trades, Commodore Engineering.
  47. {uunet|rutgers}!cbmvax!jesup, jesup@cbmvax.cbm.commodore.com  BIX: rjesup  
  48. Disclaimer: Nothing I say is anything other than my personal opinion.
  49.