Font Size: a A A

Distributed Implementation Of Inter-Process Communication

Posted on:2005-09-08Degree:MasterType:Thesis
Country:ChinaCandidate:Y LiFull Text:PDF
GTID:2168360125450632Subject:Computer system architecture
Abstract/Summary:PDF Full Text Request
Most of large application systems frequently need multitude processes cooperating,as a result,abundantly many programs come down to certain or a few kinds of IPCs, that is Inter-Process Communication, so, the importance of IPCs is easy to see. Using IPCs in programing application is a good method, which can take full advantage of system recourses and improve program efficiency.In recent years, with the rapid development of technologies of computer network and distributed computing, there are more and more systems with application to network ,particularly to distributed environment. Howerver, usually in network programing and distributed programming, there are a lot of processes,which need to communicate mutually,therefore,the mechanism of IPCs show momentous in program design.All of the traditional UNIX systems supply many communication mechanisms. In the view of distributed systems,in general,these methods are classified into two kinds: one is used in communication of processes ,which are at the same node, mainly including pipe,FIFO, signal, Message Queue ,Shared Memory, etc; the other is used to the diferent nodes, only sockets. Current distributed IPCs mainly include PVM (Parallel Virtual Machine) and MPI (Message-Passing Interface).Both traditional UNIX's IPCs and current distributed IPCs have respective advantages and disadvantages. In a view of distributed systems, the main disadvantage of traditional UNIX's IPCs is oversingle mechanism of IPCs between deferent nodes, only socket, which is too complex to be used easily, particularly for programing on distributed environment, that cannot assure location transparency and access transparency. However,traditional IPCs in the same node are used easily,but cannot be used between diferent nodes, this becomes a limitation of it's use. Nevertheless, the related knowledges have to be studied to use current mechanism of IPCs based on distributed environment, and this needs much time and energies, these bring users inconvenience who have been familiar with UNIX system.And besides, those programs have not universalitise, only run on some particular environments. According to the above, this paper gives a pattern of thought about a new IPC's mechanism used at the different nodes, namely,giving traditional IPCs in the same node over communicating between different nodes, that is,programmer may use traditional IPCs' system call interfaces to implement communication between processes on different nodes, at the same time ,they are unconcerned about those processes on the same node or not, viz., implenting location and access transparence.Meanwhile,we can use newly designed distributed IPCs' mechanism to simply modify preowned concurrent programs on single UNIX system,never so much as modify any,then,they can realize their concurrent executions on distribution system.Like this,we need not program them again (we must program them again for using PVM or MPI) in order to transplant them into distributed system,thereby,this simplifies their transplantation from single unit system to distribution system by a long way.New distributed IPCs mainly are implemented by a chronograph (also call deamon).On every nodes in distributed environment, there is a deamon, which undertakes communications between different nodes, and for processes in this node,it is transformed into communication between them and deamon in the same node that communicates between them and those in others,thus,we can implement communication between processes on different nodes with current IPCs' interfaces based on one node.On global,we must maintain an identifier of data structure used for communication, also that may be called Key. The key is the unique identifier on global and the deamon maintains its uniqueness,that is,by coordination of deamons each other, data structure have a unique key on global which is founded and used for communication, processes required communication can access the data structure by this unique identifier,thereby,to achieve purpose of com...
Keywords/Search Tags:Implementation
PDF Full Text Request
Related items