Your symbiont must call SMB$INITIALIZE before calling any
    other SMB routines. It calls SMB$INITIALIZE in order to do the
    following:
    o  Allocate and initialize the SMB facility's internal database.
    o  Establish the interface between the job controller and the
       symbiont.
    o  Determine the threading scheme of the symbiont.
    o  Set up the mechanism to wake your symbiont when a message is
       received.
    After the symbiont calls SMB$INITIALIZE, it can communicate with
    the job controller using the other SMB routines.