Aplicação do Fecho de Programas na Deteção de Anomalias de Concorrência

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Uma das estratégias para tirar partido dos múltiplos processadores disponíveis nos computadores atuais passa por adaptar código legado, inicialmente concebido para ser executado num contexto meramente sequencial, para ser agora executado num contexto multithreading. Nesse processo de adaptação é necessário proteger apropriadamente os dados que são agora partilhados e acedidos por diferentes threads concorrentes. A proteção dos dados com locks usando uma granulosidade grossa inibe a concorrência e opõe-se ao objetivo inicial de explorar o paralelismo suportado por múltiplos processadores. Por outro lado, a utilização de uma granulosidade fina pode levar à ocorrência de anomalias próprias da concorrência, como deadlocks e violações de atomicidade (high-level data races). Este artigo discute o conceito de fecho de um programa e uma metodologia que, quando aplicados em conjunto, permitem adaptar código legado para o tornar thread-safe, garantindo a ausência de violações de atomicidade na versão corrente do software e antecipando algumas violações de atomicidade que poderão ocorrer em versões futuras do mesmo software.
Original languageUnknown
Title of host publicationINForum 2012
Place of PublicationLisbon, Portugal
PublisherFaculdade de Ciências e Tecnologia da Universidade Nova de Lisboa
Pages190-201
ISBN (Print)978-972-8893-32-3
Publication statusPublished - 1 Jan 2012
EventINForum - Simpósio de Informática -
Duration: 1 Jan 2012 → …

Conference

ConferenceINForum - Simpósio de Informática
Period1/01/12 → …

Cite this