All

What are you looking for?

All
Projects
Results
Organizations

Quick search

  • Projects supported by TA ČR
  • Excellent projects
  • Projects with the highest public support
  • Current projects

Smart search

  • That is how I find a specific +word
  • That is how I leave the -word out of the results
  • “That is how I can find the whole phrase”

SharpDetect: Dynamic Analysis Framework for C#/.NET Programs

The result's identifiers

  • Result code in IS VaVaI

    <a href="https://www.isvavai.cz/riv?ss=detail&h=RIV%2F00216208%3A11320%2F20%3A10416143" target="_blank" >RIV/00216208:11320/20:10416143 - isvavai.cz</a>

  • Result on the web

    <a href="https://doi.org/10.1007/978-3-030-60508-7_16" target="_blank" >https://doi.org/10.1007/978-3-030-60508-7_16</a>

  • DOI - Digital Object Identifier

    <a href="http://dx.doi.org/10.1007/978-3-030-60508-7_16" target="_blank" >10.1007/978-3-030-60508-7_16</a>

Alternative languages

  • Result language

    angličtina

  • Original language name

    SharpDetect: Dynamic Analysis Framework for C#/.NET Programs

  • Original language description

    Dynamic analysis is a popular approach to detecting possible runtime errors in software and for monitoring program behavior, which is based on precise inspection of a single execution trace. It has already proved to be useful especially in the case of multithreaded programs and concurrency errors, such as race conditions. Nevertheless, usage of dynamic analysis requires good tool support, e.g. for program code instrumentation and recording important events. While there exist several dynamic analysis frameworks for Java and C/C++ programs, including RoadRunner, DiSL and Valgrind, we were not aware of any framework targeting the C# language and the .NET platform. Therefore, we present SharpDetect, a new framework for dynamic analysis of .NET programs - that is, however, focused mainly on programs compiled from the source code written in C#. We describe the overall architecture of SharpDetect, the main analysis procedure, selected interesting technical details, its basic usage via command-line, configuration options, and the interface for custom analysis plugins. In addition, we discuss performance overhead of SharpDetect based on experiments with small benchmarks, and demonstrate its practical usefulness through a case study that involves application on NetMQ, a C# implementation of the ZeroMQ messaging middleware, where SharpDetect found one real concurrency error.

  • Czech name

  • Czech description

Classification

  • Type

    D - Article in proceedings

  • CEP classification

  • OECD FORD branch

    10201 - Computer sciences, information science, bioinformathics (hardware development to be 2.2, social aspect to be 5.8)

Result continuities

  • Project

    <a href="/en/project/GA18-17403S" target="_blank" >GA18-17403S: Automated Incremental Verification and Debugging of Concurrent Systems</a><br>

  • Continuities

    P - Projekt vyzkumu a vyvoje financovany z verejnych zdroju (s odkazem do CEP)

Others

  • Publication year

    2020

  • Confidentiality

    S - Úplné a pravdivé údaje o projektu nepodléhají ochraně podle zvláštních právních předpisů

Data specific for result type

  • Article name in the collection

    Proceedings of the 20th International Conference on Runtime Verification

  • ISBN

    978-3-030-60507-0

  • ISSN

    0302-9743

  • e-ISSN

  • Number of pages

    12

  • Pages from-to

    298-309

  • Publisher name

    Springer

  • Place of publication

    Berlin

  • Event location

    online

  • Event date

    Oct 6, 2020

  • Type of event by nationality

    WRD - Celosvětová akce

  • UT code for WoS article