{"id":26931573,"url":"https://github.com/mariamelsahhar/signal-processing","last_synced_at":"2025-04-02T07:17:58.841Z","repository":{"id":179424062,"uuid":"636649604","full_name":"MariamElSahhar/Signal-Processing","owner":"MariamElSahhar","description":"📞 How do apps talk to each other? This is a C exercise to understand signal processing and inter-process communication. Generates client and server processes that communicate messages using only two signals.","archived":false,"fork":false,"pushed_at":"2023-07-07T11:17:47.000Z","size":22,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-04-17T02:29:02.932Z","etag":null,"topics":["c","inter-process-communication","signal-processing"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MariamElSahhar.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2023-05-05T10:26:39.000Z","updated_at":"2024-04-17T02:29:07.096Z","dependencies_parsed_at":"2024-04-17T02:29:03.930Z","dependency_job_id":null,"html_url":"https://github.com/MariamElSahhar/Signal-Processing","commit_stats":null,"previous_names":["mariamelsahhar/minitalk","mariamelsahhar/signal-processing"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MariamElSahhar%2FSignal-Processing","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MariamElSahhar%2FSignal-Processing/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MariamElSahhar%2FSignal-Processing/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MariamElSahhar%2FSignal-Processing/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MariamElSahhar","download_url":"https://codeload.github.com/MariamElSahhar/Signal-Processing/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246769894,"owners_count":20830771,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["c","inter-process-communication","signal-processing"],"created_at":"2025-04-02T07:17:58.300Z","updated_at":"2025-04-02T07:17:58.829Z","avatar_url":"https://github.com/MariamElSahhar.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Minitalk\nThe \"Minitalk\" project is a client-server application that allows for communication between two processes using only signals. The client sends messages to the server by converting them into signals, and the server receives and displays the messages.  \nIt demonstrates interprocess communication using signals and provides a simple example of client-server architecture.\n\n## Features\n- Client-server communication using signals\n- Efficient and lightweight interprocess communication\n- Supports sending and receiving messages of any length\n- Simple and minimalistic implementation\n\n## Prerequisites\n- [GCC](https://gcc.gnu.org/) or C complier\n\n## Installation\n1. Clone the repository  \n  `git clone https://github.com/MariamElSahhar/minitalk.git`  \n2. Navigate to the directory  \n  `cd minitalk`  \n3. Compile the client and server programs\n   `make`  \n\n## Usage\n1. Run the server  \n   `./server`  \n   The server will display its process ID.  \n2. On another terminal, run the client  \n  `./client [server_pid] [message]`  \nThe client converts the message to signals and sends them to the server, which displays it!\n\n## Resources\n- [Unix Signals](https://en.wikipedia.org/wiki/Signal_(IPC)) - Wikipedia article on Unix signals\n- [Subject](https://github.com/Porrapat/42-bangkok-first-cadet-subjects/blob/master/minitalk.en.subject.pdf) - 42 project subject and requirements\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmariamelsahhar%2Fsignal-processing","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmariamelsahhar%2Fsignal-processing","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmariamelsahhar%2Fsignal-processing/lists"}