← Back to selected work

minitalk

A small client-server protocol that transmits strings between UNIX processes using only `SIGUSR1` and `SIGUSR2`.

Role
1337 / 42 Developer
Access
1337 / 42 validated project
[01]

Context

A small client-server protocol that transmits strings between UNIX processes using only `SIGUSR1` and `SIGUSR2`. Characters are serialized bit by bit and acknowledged by the receiving process.

[02]

My responsibility

Built and validated through the 1337 / 42 project curriculum, with direct responsibility for implementation, debugging, testing, and evaluation requirements.

[03]

System scheme

Engineering scheme

Signal-based binary transport

Input → Processing → Output

A client serializes message bits into UNIX signals while the server reconstructs bytes and acknowledges transport progress.

  1. 01

    Client input

    Accept the server PID and message payload.

  2. 02

    Bit encoder

    Serialize each character from the selected bit order.

  3. 03

    UNIX signals

    Represent binary zero and one through SIGUSR signals.

  4. 04

    Signal handler

    Receive bits safely inside the server process.

  5. 05

    Byte assembly

    Reconstruct and emit complete characters.

  6. 06

    Acknowledgement

    Confirm receipt and detect message completion.

Process IDs
Signal timing
Bit operations
Acknowledgements
[05]

Technical scope

C01
UNIX Signals02
Bitwise Operations03
[07]

Implementation details

  • Client input: Accept the server PID and message payload.
  • Bit encoder: Serialize each character from the selected bit order.
  • UNIX signals: Represent binary zero and one through SIGUSR signals.
  • Signal handler: Receive bits safely inside the server process.
  • Byte assembly: Reconstruct and emit complete characters.
  • Acknowledgement: Confirm receipt and detect message completion.
[08]

Engineering focus

  • Process IDs remained an explicit concern across the implementation.
  • Signal timing remained an explicit concern across the implementation.
  • Bit operations remained an explicit concern across the implementation.
  • Acknowledgements remained an explicit concern across the implementation.

Need a system like this?

Tell me about the workflow, integration, or backend problem.

Discuss a project