• DocumentCode
    3232636
  • Title

    Imposing a memory management discipline on software deployment

  • Author

    Dolstra, Eelco ; Visser, Eelco ; De Jonge, Merijn

  • Author_Institution
    Utrecht Univ., Netherlands
  • fYear
    2004
  • fDate
    23-28 May 2004
  • Firstpage
    583
  • Lastpage
    592
  • Abstract
    The deployment of software components frequently fails because dependencies on other components are not declared explicitly or are declared imprecisely. This results in an incomplete reproduction of the environment necessary for proper operation, or in interference between incompatible variants. In this paper, we show that these deployment hazards are similar to pointer hazards in memory models of programming languages and can be countered by imposing a memory management discipline on software deployment. Based on this analysis, we have developed a generic, platform and language independent, discipline for deployment that allows precise dependency verification; exact identification of component variants; computation of complete closures containing all components on which a component depends; maximal sharing of components between such closures; and concurrent installation of revisions and variants of components. We have implemented the approach in the Nix deployment system, and used it for the deployment of a large number of existing Linux packages. We compare its effectiveness to other deployment systems.
  • Keywords
    Java; Unix; software engineering; storage management; Linux packages; Nix deployment system; component variants identification; dependency verification; deployment hazards; language independent; memory management; pointer hazards; programming languages; software components; software deployment; software installations; Application software; Computer languages; Concurrent computing; Hazards; Independent component analysis; Interference; Linux; Memory management; Packaging; Software maintenance;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Engineering, 2004. ICSE 2004. Proceedings. 26th International Conference on
  • ISSN
    0270-5257
  • Print_ISBN
    0-7695-2163-0
  • Type

    conf

  • DOI
    10.1109/ICSE.2004.1317480
  • Filename
    1317480