Skip to content

πŸ“‘ Minitalk is a 42 Network project where you build a simple messaging system using Unix signals. It enhances your skills in signal handling, inter-process communication, and system programming. πŸ–₯οΈπŸ“©

Notifications You must be signed in to change notification settings

mdbentaleb/Minitalk_42

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

11 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

+ ====================================================================== +
MINITALK
+ ====================================================================== +

Minitalk - 42 Network Project

Minitalk is a project from the 42 Network focused on creating a simple communication system between two programs using Unix signals. The challenge involves implementing a message transfer protocol and demonstrating the usage of signals to send and receive data, which enhances understanding of process control and inter-process communication.

πŸš€ Features

  • Allows communication between two programs using Unix signals.
  • The client sends a string message, and the server prints it.
  • Focuses on understanding signals, processes, and message encoding.
  • Provides an introduction to low-level inter-process communication in C.

πŸ› οΈ Getting Started

Prerequisites
To get started, ensure you have the following installed:

  • A C compiler like gcc
  • make for building the project
  • A UNIX-like operating system (Linux/macOS/WSL)

1. Clone the Repository

  git clone https://github.com/your-username/minitalk.git
  cd minitalk

2. Compile the Project

After cloning the repository, run the following command to compile the project:

  make

3. Run the Server

To start the server, use the following command:

  ./server

4. Run the Client

To send a message from the client to the server, use the following command:

  ./client <server_pid> <message>
  • <server_pid>: The PID of the running server.
  • <message>: The message you want to send.

5. Clean Up

To remove the compiled files:

  make clean

πŸ’‘ Concepts Covered

  • Unix signals (SIGUSR1, SIGUSR2)
  • Process management and PID handling
  • Encoding and decoding messages via binary representation

πŸ”— Useful Links

About

πŸ“‘ Minitalk is a 42 Network project where you build a simple messaging system using Unix signals. It enhances your skills in signal handling, inter-process communication, and system programming. πŸ–₯οΈπŸ“©

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published