                    PROPOSAL FOR AUTOLOADING JANUS SERVICES
                                By Bill Koester

This feature would allow services to be autoloaded (and released) on the
PC and Amiga sides.

CHANGES TO R.J.'s FUNCTIONS:

   (1). When a new service starts up and does an AddService() it would be
able to specify whether it was to be a PERMANENT service that would stick
around forever, or a TEMPORARY service which would be unloaded When all
clients of the service are finished with it.

   (2). When a client calls GetService() the client would be able to
(a). Ask GetService to give the client access ONLY if the service is loaded.
(b). Ask GetService to try to find and load the service before failing.
(c). Ask the service to stick around between invocations of release service
     giving the client the ability to make a TEMPORARY service a permanent
     service (ie Aread,Awrite which GetService() and ReleaseService()
     on every call.) pcdisk could then be made a TEMPORARY service. If jlink
     is in use pcdisk would stick around as long as drives are jlinked.
     aread and awrite might want to make pcdisk a PERMANENT service so it
     would not have to be loaded each time they are run.


LOADING MECHANISM:

   Services would be set up similar to Expansion devices. ie look in
   SYS:JServices for an icon with the proper manufacturer and service I.D's
   and load the appropriate service if found. Or, for more speed construct
   the service filename by making it the ASCII hex representation of the
   manufacturer and service I.D.'s. Ex Manufacturter number 00000001 and
   service number 00000030 would have the filename 00000001-00000030 and
   live in SYS:JService. This way the service could be found directly
   whitout having to search the entire directory.
   
