[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference azur::mcc

Title:DECmcc user notes file. Does not replace IPMT.
Notice:Use IPMT for problems. Newsletter location in note 6187
Moderator:TAEC::BEROUD
Created:Mon Aug 21 1989
Last Modified:Wed Jun 04 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:6497
Total number of notes:27359

36.0. "Use of IPC between the AM and the entity" by TENERE::DUNON (Paul Dunon - TAEC Valbonne) Thu Jan 04 1990 14:31

Hi,

I would like to know if it is possible to use $IPC(W) (Interprocess Communication)
as communication medium between an AM and the managed entities ?

Or are we constrained to use MMC$QIO and mailboxes ?


Thanks,

			-- Paul Dunon
			   Telecom Engineering
T.RTitleUserPersonal
Name
DateLines
36.1STAR::PITCHERSteve Pitcher/VMS EngineeringFri Jan 05 1990 11:4210
I still feel quite ignorant around here, so hopefully someone will confirm 
my feelings:

The purpose of the AM is to talk to the entity in whatever manner the entity
wants to be talked to.  The AM is there to make access to the entity 
transparent to the caller.  The AM is free to use whatever communications 
mechanism is best suited to talking to its entity.  IPC certainly sounds 
like a good choice.

-	stp
36.2Well...CSEVEN::DANIELESNMP Spoken HereSun Jan 07 1990 14:1429
    
    
    
    
>   The purpose of the AM is to talk to the entity in whatever manner the
>   entity wants to be talked to. 
    
    That is certainly 1 purpose of the AM.
    
>   The AM is there to make access to the entity transparent to the caller.  
    
    Yes.
    
>   The AM is free to use whatever communications mechanism is best suited 
>   to talking to its entity.
    
    No.  Remember that the AM executes in the context of a single thread, 
    managed by the mcc kernel.  There may be MANY threads within the
    process, all competing for scheduling, etc.  You must signal the kernel
    that your thread should be "released" while your I/O is pending.  This
    is done by using the kernel "monitor" routines, like MCC$QIOW.  I don't
    know if the kernel supports $IPC, but in general, you can't just "do
    anything".
    
    Cheers,
    Mike
    
                                                             
    
36.3MCC$IPCW ?TENERE::DUNONPaul Dunon - Telecom Engineering - VBOMon Jan 08 1990 06:336
I understand that I can't use IPC for the moment!

Could someone tell me if there are any plans to support IPC in the MCC kernel ?


			-- Paul
36.4HICKORY-dickering, Doc?PETE::BURGESSTue Jan 09 1990 12:4720
    Yes,  I do have plans (though not bound to a committed schedule) to
    enable developers to use $IPCW within the constraints of the current
    multithreading environment.  
    
    There might be two choices of implementation:
    MCC$IPCW (...) which provides a thread-synchronous shell
    around $IPC and hides the non-portable AST operations;
    
    and revectoring $IPCW to invoke the MCC implementation
    of $IPCW (described above).  
    
    I would prefer to implement the second solution so that
    the client's interface is independent of the MCC threads package
    
    
    
    The NME project implementing DNA5 AM also wants a thread-synchronous
    $IPC-interface.
    
    
36.5uncommitted schedule ?TENERE::DUNONPaul Dunon - Telecom Engineering - VBOTue Jan 09 1990 15:158
Thanks for the answer, but is it nevertheless possible to have an idea of a
reasonnable not-yet-committed schedule ?
(to see if it fits into my shortly-to-be-committed AM development)

Many thanks,

			-- Paul
36.6TOOK::SWISTJim Swist LKG2-2/T2 DTN 226-7102Wed Jan 10 1990 14:038
    This is a futures consideration, but FWIW the IPC facility is VMS
    specific and is something that will need (major) conversion if
    your MM is ever to run on multiple platforms.  A better approach
    might be to take the existing already sort-of portable MCC$DA routines
    and use them to front end a number of transports (IPC might be
    one on VMS).  
    
    
36.7What happens if we do use IPC.SIEVAX::MIDONAAlan Midona, SIE Reading, DTN 830 3996Wed Jan 16 1991 10:2311
	I found this note only recently after we had already committed 
	ourselves to delivering an access module which uses a messaging 
	system based on IPC as its underlying transport mechanism.

	Can someone please give me an update on .4.  Has this been 
	considered any further?  If we continue using IPC, what are
	the consequences?

	Regards,

	Alan
36.8StatusPETE::BURGESSThu Jan 17 1991 13:1430
	
	
	The code to revector sys$ipcw to a mcc thread synchronous
	routine has not been sufficiently tested in time to be enabled
	for the MCC v1.1 kit.

	MCC v1.2 will solve the problem.

	
	Until you receive mcc v1.2, your code which uses sys$ipcw
	will block the process until the i/o is complete and during
	this interval no other threads will run - much like 
	cpu intensive rtn.  This may or may not pose a serious problem.
	

	Multi-threading has been used rather sparingly in MCC to-date:
		Iconic map pm uses multiple threads,
		each alarm rule enabled in the process creates a thread,
		notification services generates threads

	The execution of these potential threads would be delayed while
	your sys$ipcw completes.




	If you find that your project is jepodized by the temporary 
	interaction of MCC and sys$ipcw, then please contact me via mail.

	Pete Burgess