Skip to content

bookseal/philosopher

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Philosophers Project

🚀 Looking for a skilled C developer with expertise in real-time, concurrent systems?
This project demonstrates my ability to solve complex concurrency problems using POSIX threads and mutexes, skills essential for automotive embedded systems.

Overview

The Philosophers project is part of the core curriculum at Ecole 42, where I developed a multithreaded simulation in C to solve the classical Dining Philosophers problem. The project focuses on handling concurrent processes, thread synchronization, and resource sharing—skills critical for low-level programming, especially in embedded systems and automotive software development.

Key Features

  • Multithreading: Implemented using pthreads, simulating real-world parallel processes.
  • Mutex Locks: Ensured safe access to shared resources (forks), preventing race conditions.
  • Deadlock Prevention: Structured logic to avoid deadlocks in the simulation.
  • Dynamic Configuration: Customizable number of philosophers and action timings via CLI.

Why It’s Relevant to Automotive Industry

  • Real-Time Systems: Similar to automotive control units (ECUs), this project deals with real-time decision-making and resource allocation.
  • Concurrency Control: Preventing deadlock and ensuring stability mirrors challenges in automotive software development.
  • Embedded Systems: This project demonstrates efficient handling of system resources, a key requirement in automotive embedded programming.

Running the Project

  1. Clone the repository:
    git clone https://github.com/bookseal/philosopher.git

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published