Compartilhamento de Recursos em Sistemas Distribuídos para Sistemas de Controle de Versão
Resumo
Sistemas de controle de versão, tal como Git, revolucionaram a forma de programação em equipes. O controle de versão permite que os times de desenvolvedores compartilhem seus codigos fonte, além de facilitar a organização dos mesmos. Porem, permitir que cada usuário consiga acesso exclusivo a recursos compartilhados (codigos fonte, por exemplo) é um problema em aberto nesses sistemas. O objetivo desse trabalho é apresentar alguns algoritmos distribuídos clássicos de compartilhamento de recursos baseados em token que podem ser aplicados, com alguma adaptação, para a solução deste problema.
Referências
Bouabdallah, A.; Laforest, C. (2000). A distributed token-based algorithm for the dynamic resource allocation problem. SIGOPS Oper. Syst. Rev., 34(3):60–68.
Dijkstra, E. W. (1968). Cooperating Sequential Processes. Programming Languages. Academic Press, New York. First Published as EWD 123, Math Dept., Technological U., Eindhoven, The Netherlands (1965).
Kakugawa, H. (1995). A Study on Distributed k-Mutual Exclusion Algorithms. Tese de Mestrado. Hiroshima University.
Naimi, M.; Trehel, M.; Arnold, A. (1996). A log (n) distributed mutual exclusion algorithm based on path reversal. Journal of Parallel and Distributed Computing, 34(1):1 – 13.
Raynal, M. (1991). A simple taxonomy for distributed mutual exclusion algorithms. Ope- rating Systems Review, 25(2):47–50.
Sopena, J.; Arantes, L.; Bertier, M.; Sens, P. (2005). A fault-tolerant token-based mutual exclusion algorithm using a dynamic tree. In European Conference on Parallel Processing, pages 654–663. Springer.