Skip to content

Demonstrates concurrent task processing using semaphores and shared memory in Unix. Includes C programs simulating Teaching Assistants marking exams with synchronization mechanisms.

License

Notifications You must be signed in to change notification settings

machine-moon/classical-concurrency

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Concurrent Task Processing System

Introduction

This project demonstrates the implementation of concurrent processes for processing tasks using semaphores and shared memory in a Unix environment.

Files and Directories

  • src/: Contains the source code files.
    • processing_system.c: Implementation of the task processing system.
  • report/: Contains the project reports.
    • processing_system_report.docx: Detailed project report.
    • processing_system_D.txt: Report for part D.
    • processing_system_E.txt: Report for part E.
  • logs/: Contains the logs generated by the processes.
    • results_log.txt: Log of all processing activities.
    • Worker1.txt, Worker2.txt, Worker3.txt, Worker4.txt, Worker5.txt: Logs for each Worker.
  • data/: Contains the input data files.
    • tasks.txt: List of task IDs.

Compilation and Execution

To compile and run the project, use the provided Makefile.

Compilation

make

About

Demonstrates concurrent task processing using semaphores and shared memory in Unix. Includes C programs simulating Teaching Assistants marking exams with synchronization mechanisms.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published