311 research outputs found

    A Study of Concurrency Bugs and Advanced Development Support for Actor-based Programs

    Full text link
    The actor model is an attractive foundation for developing concurrent applications because actors are isolated concurrent entities that communicate through asynchronous messages and do not share state. Thereby, they avoid concurrency bugs such as data races, but are not immune to concurrency bugs in general. This study taxonomizes concurrency bugs in actor-based programs reported in literature. Furthermore, it analyzes the bugs to identify the patterns causing them as well as their observable behavior. Based on this taxonomy, we further analyze the literature and find that current approaches to static analysis and testing focus on communication deadlocks and message protocol violations. However, they do not provide solutions to identify livelocks and behavioral deadlocks. The insights obtained in this study can be used to improve debugging support for actor-based programs with new debugging techniques to identify the root cause of complex concurrency bugs.Comment: - Submitted for review - Removed section 6 "Research Roadmap for Debuggers", its content was summarized in the Future Work section - Added references for section 1, section 3, section 4.3 and section 5.1 - Updated citation

    A Survey of Symbolic Execution Techniques

    Get PDF
    Many security and software testing applications require checking whether certain properties of a program hold for any possible usage scenario. For instance, a tool for identifying software vulnerabilities may need to rule out the existence of any backdoor to bypass a program's authentication. One approach would be to test the program using different, possibly random inputs. As the backdoor may only be hit for very specific program workloads, automated exploration of the space of possible inputs is of the essence. Symbolic execution provides an elegant solution to the problem, by systematically exploring many possible execution paths at the same time without necessarily requiring concrete inputs. Rather than taking on fully specified input values, the technique abstractly represents them as symbols, resorting to constraint solvers to construct actual instances that would cause property violations. Symbolic execution has been incubated in dozens of tools developed over the last four decades, leading to major practical breakthroughs in a number of prominent software reliability applications. The goal of this survey is to provide an overview of the main ideas, challenges, and solutions developed in the area, distilling them for a broad audience. The present survey has been accepted for publication at ACM Computing Surveys. If you are considering citing this survey, we would appreciate if you could use the following BibTeX entry: http://goo.gl/Hf5FvcComment: This is the authors pre-print copy. If you are considering citing this survey, we would appreciate if you could use the following BibTeX entry: http://goo.gl/Hf5Fv

    Mapping the Situation of Educational Technologies in the Spanish University System Using Social Network Analysis and Visualization

    Get PDF
    Educational Technologies (EdTech) are based on the use of Information and Communication Technologies (ICT) to improve the quality of teaching and learning. EdTech is experiencing great development at different educational levels worldwide, especially since the appearance of Covid-19. The recent publication of a study by the ICT Sectorial of CRUE Universidades Españolas, the Spanish University Association, is the first report on the implementation of such technologies within Spain´s University System. This paper presents two different maps based on the data from that report. Together, they illustrate the penetration of different types of EdTech in our university system and shed light on the strategic interest behind their adoption. Our goal is to produce self-explanatory maps that can be easily and directly interpreted. The first map reflects wide granularity in terms of the global importance of technologies, while the second points to relevant conclusions given the spatial position of Spain´s universities, and the size of the nodes that represent them (directly related with their strategic interests on EdTech), as well as with the local relationships existing among them (identifying similarities on those strategic interests).Working Group in Online Training and Educational Technologies (FOLTE), of the ICT Sectorial of the Commission of Rectors of Spanish Universities (the Spanish University AssociationCRUE Universidades Españolas). Moreover, this work was supported by the Spanish Ministry of Science, Innovation and UniversitiesERDF under grant EXASOCO (PGC2018-101216-B-I00

    Heterogeneous CPU/GPU Memory Hierarchy Analysis and Optimization

    Get PDF
    In this master thesis, we propose a scheduling reordering for heterogeneous processors based on a hysteresis detector to give some fairness and speedup to the memory request threads taking advantage of the bank level parallelism at the memory system organization
    • …
    corecore