Giter VIP home page Giter VIP logo

p2-distribuida's Introduction

P2-Distribuida

The mission of this repository is to implement and understand the Mutex and Ricart–Agrawala algorithms.
This is an exercise of the Distributed systems subject in computer engineering taught in La Salle University:
You need to design and implement a distributed application. This application must have two heavyweight processes:

ProcessA ProcessB
Must invoke 3 lightweight processes:
ProcessLWA1
ProcessLWA2
ProcessLWA3.
Must invoke 2 processes: ProcessLWB1
ProcessLWB2.

Each lightweight process must live in a loop infinity that will consist of displaying its identifier on the screen for 10 times while waiting 1 second at a time and time.


Both heavyweight processes will run on the same machine, so all lightweight processes will compete by the same share: the screen. A policy will need to be implemented between the two heavyweight processes token-based mutual exclusion. Among the processes invoked by ProcessA, a Mutex policy will have to be implemented for mutual exclusion. Among the processes invoked by ProcessB, a Ricart and Agrawala policy will have to be implemented for mutual exclusion.


Visual representation of the exercise:

Visual diagram of the exercise

This project was built together with my great collegue and friend @JCarri14

p2-distribuida's People

Contributors

codevallsma avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.