• DocumentCode
    547318
  • Title

    Automatic backward compatibility analysis of software component binary interfaces

  • Author

    Ponomarenko, Andrey ; Rubanov, Vladimir

  • Author_Institution
    Inst. for Syst. Programming, Russian Acad. of Sci. (ISPRAS), Moscow, Russia
  • Volume
    3
  • fYear
    2011
  • fDate
    10-12 June 2011
  • Firstpage
    167
  • Lastpage
    173
  • Abstract
    This paper discusses a problem of ensuring backward compatibility when developing software components (e.g., libraries) and their consistent combinations (software platforms). Linux environment is considered as the main example. Breakage of the compatibility may result in crashing or incorrect behavior (at binary level) or inability to build (at source level) of applications targeted at an old version of a dependent software component when the applications are used with a new version of the component. The paper describes typical issues that cause compatibility problems (focusing on binary level problems) and presents a new method for automated verification for such issues (focusing on changes in structure of interfaces) for components developed in C/C++. Existing means can detect only a small fraction of all possible backward compatibility problems while the suggested method can verify a broad spectrum of them. The method is based on comparison of function signatures and type definitions obtained from library header files in addition to analyzing symbols in library binaries. This paper also describes an automated verification tool that implements the suggested method and presents some results of its practical usage.
  • Keywords
    Linux; object-oriented programming; software libraries; C/C++; Linux environment; automated verification tool; automatic backward compatibility analysis; library header files; software component binary interfaces; software platform; Computer crashes; Libraries; Linux; Registers; Semantics; Software; Testing; ABI; Linux; Software component interfaces; backward compatibility; shared libraries;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Computer Science and Automation Engineering (CSAE), 2011 IEEE International Conference on
  • Conference_Location
    Shanghai
  • Print_ISBN
    978-1-4244-8727-1
  • Type

    conf

  • DOI
    10.1109/CSAE.2011.5952657
  • Filename
    5952657