This project aims to implement the Mach inter-process communication IPC mechanism within a traditional Linux environment.
The Mach IPC is a message-passing communication model. All inter-task communication is carried out by messages. Messages are sent to, and received from, mailboxes, which are called ports in Mach. A message is sent to one port, and a response is sent to a separate reply port. Each task also has access to a central or bootstrap server , which is responsible for storing and distributing information of running tasks. As messages are sent to the port, the messages are copied into a queue, which can be read by the receiver thread.
The UNIX networking and sockets APIs are used to implement the communication channels between processes.
Download the project on your machine.
git clone git@github.com:AjaxAueleke/machipc.git
cd gitmachipc/
Make a source folder for all object files.
mkdir src
Start the central server.
./run.sh mach/mach_central_server
Start the sending process.
./run.sh send
Start the receiving process.
./run.sh recv
To close the central server:
./run.sh process_endserver
For more information, click here
- email : ahmed.jamil7410@gmail.com or k200388@nu.edu.pk
- github : @ajaxaueleke
- email : ayyansaad46@gmail.com or k200161@nu.edu.pk
- github : @saad0510
- email : moaaz88sajjad@gmail.com or k200154@nu.edu.pk
- github : @nlzza
17 June, 2022