Skip to content

Trains scheduling project, for Operating Systems class at UNIFI

License

Notifications You must be signed in to change notification settings

Wadaboa/operating-systems-project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Operating Systems project

This repository contains the implementation of a train scheduling solution, for the lab project of Operating Systems class at UNIFI.

Description

The goal of the project is to simulate the behavior of 5 trains, that have to cross different railway segments. The goal of each train is to reach a pre-defined station, while their main constraint is that each railway segment can be occupied by at most one train at a time.

During its travel, a train is granted access to the next railway segment. The project deals with the implementation of two different ways to ask and grant access to railway segments, by using the C language and its built-in threading system.

Usage

In order to run the project, you need to clone this repository and compile the main.c file, using a C language compiler like GCC. Compiling the project is as simple as running:

gcc -o main main.c

Then, you can simply execute the resulting file like the following:

./main <arg>

Here, <arg> could be:

  • ETCS1
  • ETCS2
  • ETCS2 RBC

To see more details about each and every running mode, please have a look at the assignment and the related report, but beware that they have been written in the Italian language.

About

Trains scheduling project, for Operating Systems class at UNIFI

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages