Skip to content

catmaitachi/El_Banqueiro

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 

Repository files navigation


 ███████╗██╗      ██████╗  █████╗ ███╗   ██╗ ██████╗ ██╗   ██╗███████╗██╗██████╗  ██████╗ 
 ██╔════╝██║      ██╔══██╗██╔══██╗████╗  ██║██╔═══██╗██║   ██║██╔════╝██║██╔══██╗██╔═══██╗
 █████╗  ██║      ██████╔╝███████║██╔██╗ ██║██║   ██║██║   ██║█████╗  ██║██████╔╝██║   ██║
 ██╔══╝  ██║      ██╔══██╗██╔══██║██║╚██╗██║██║▄▄ ██║██║   ██║██╔══╝  ██║██╔══██╗██║   ██║
 ███████╗███████╗ ██████╔╝██║  ██║██║ ╚████║╚██████╔╝╚██████╔╝███████╗██║██║  ██║╚██████╔╝
 ╚══════╝╚══════╝ ╚═════╝ ╚═╝  ╚═╝╚═╝  ╚═══╝ ╚══▀▀═╝  ╚═════╝ ╚══════╝╚═╝╚═╝  ╚═╝ ╚═════╝ 

Python

O objetivo deste projeto é implementar o Algoritmo do Banqueiro, um mecanismo de escalonamento e alocação de recursos voltado para a prevenção de deadlocks em sistemas operacionais. A aplicação simula um ambiente bancário onde múltiplos clientes (threads) solicitam e liberam instâncias de recursos limitados de forma concorrente.

A solução foca em três pilares fundamentais da computação paralela:

Pilar Descrição
Gerenciamento de Threads Criação e controle de múltiplos fluxos de execução simultâneos.
Sincronização Uso de locks mutex para garantir a atomicidade das operações e evitar condições de corrida.
Segurança de Estado Aplicação de lógica matemática para verificar se uma solicitação mantém o sistema em um "estado seguro", garantindo que a execução técnica seja livre de impasses.

Mais detalhes do funcionamento do algoritmo estão disponíveis na documentação do código.

Alunos integrantes da equipe

Perfil Perfil Perfil
Gabriel Santos Martins Isaías Alves de Souza Santos Lucas Moraes Rocha Spiazzi

Professor responsável

  • Lucas Bragança da Silva

🚀 Como Executar

Pré-requisitos: Certifique-se de ter o Python 3.x instalado em sua máquina com o comando python --version ou python3 --version. Você pode baixar a versão mais recente do Python em python.org.

Passos:

  1. Clone este repositório para sua máquina local usando o comando:

    git clone https://github.com/catmaitachi/El_Banqueiro.git
  2. Navegue até o diretório do projeto:

    cd El_Banqueiro/code
  3. Execute o script principal para iniciar a simulação do Algoritmo do Banqueiro:

     python main.py || python3 main.py

About

Implementação do Algoritmo do Banqueiro em Python.

Topics

Resources

Stars

Watchers

Forks

Contributors

Languages