Skip to main content

Evolution of the Linux Kernel Variability Model

  • Conference paper
Software Product Lines: Going Beyond (SPLC 2010)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 6287))

Included in the following conference series:

Abstract

Understanding the challenges faced by real projects in evolving variability models, is a prerequisite for providing adequate support for such undertakings. We study the evolution of a model describing features and configurations in a large product line—the Linux kernel variability model. We analyze this evolution quantitatively and qualitatively.

Our primary finding is that the Linux kernel model appears to evolve surprisingly smoothly. In the analyzed period, the number of features had doubled, and still the structural complexity of the model remained roughly the same. Furthermore, we provide an in-depth look at the effect of the kernel’s development methodologies on the evolution of its model. We also include evidence about edit operations applied in practice, evidence of challenges in maintaining large models, and a range of recommendations (and open problems) for builders of modeling tools.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. She, S., Lotufo, R., Berger, T., Wąsowski, A., Czarnecki, K.: The variability model of the linux kernel. In: VaMoS, Linz, Austria (2010)

    Google Scholar 

  2. Thüm, T., Batory, D.S., Kästner, C.: Reasoning about edits to feature models. In: ICSE, pp. 254–264 (2009)

    Google Scholar 

  3. Janota, M., Kuzina, V., Wąsowski, A.: Model construction with external constraints: An interactive journey from semantics to syntax. In: Czarnecki, K., Ober, I., Bruel, J.-M., Uhl, A., Völter, M. (eds.) MODELS 2008. LNCS, vol. 5301, pp. 431–445. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  4. Alves, V., Gheyi, R., Massoni, T., Kulesza, U., Borba, P., de Lucena, C.J.P.: Refactoring product lines. In: GPCE, pp. 201–210 (2006)

    Google Scholar 

  5. Kästner, C., Apel, S.: Type-checking software product lines - a formal approach, pp. 258–267 (2008)

    Google Scholar 

  6. Janota, M., Botterweck, G.: Formal approach to integrating feature and architecture models. In: Fiadeiro, J.L., Inverardi, P. (eds.) FASE 2008. LNCS, vol. 4961, pp. 31–45. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  7. Tartler, R., Sincero, J., Schröder-Preikschat, W., Lohmann, D.: Dead or alive: finding zombie features in the linux kernel. In: FOSD, pp. 81–86 (2009)

    Google Scholar 

  8. Kroah-Hartman, G., Inc., S.L., Corbet, J., LWN.net, McPherson, A.: Linux kernel development: How fast it is going, who is doing it, what they are doing, and who is sponsoring it (2009)

    Google Scholar 

  9. Sincero, J., Schröder-Preikschat, W.: The linux kernel configurator as a feature modeling tool. In: ASPL, pp. 257–260 (2008)

    Google Scholar 

  10. Bird, C., Rigby, P.C., Barr, E.T., Hamilton, D.J., German, D.M., Devanbu, P.: The promises and perils of mining git. In: Mining Software Repositories (2009)

    Google Scholar 

  11. Godfrey, M.W., Tu, Q.: Evolution in open source software: A case study. In: ICSM, pp. 131–142 (2000)

    Google Scholar 

  12. Israeli, A., Feitelson, D.G.: The Linux kernel as a case study in software evolution. Journal of Systems and Software, 485–501 (2010)

    Google Scholar 

  13. Adams, B., De Schutter, K., Tromp, H., De Meuter, W.: The evolution of the Linux build system. ECEASST (2007)

    Google Scholar 

  14. Svahnberg, M., Bosch, J.: Evolution in software product lines: two cases. Journal of Software Maintenance: Research and Practice, 391–422 (1999)

    Google Scholar 

  15. Dhungana, D., Neumayer, T., Grunbacher, P., Rabiser, R.: Supporting evolution in Model-Based product line engineering. In: SPLC, pp. 319–328 (2008)

    Google Scholar 

  16. Hubaux, A., Heymans, P., Benavides, D.: Variability modeling challenges from the trenches of an open source product line re-engineering project. In: SPLC (2008)

    Google Scholar 

  17. Jepsen, H.P., Beuche, D.: Running a software product line - standing still is going backwards. In: SPLC (2009)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2010 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Lotufo, R., She, S., Berger, T., Czarnecki, K., Wąsowski, A. (2010). Evolution of the Linux Kernel Variability Model. In: Bosch, J., Lee, J. (eds) Software Product Lines: Going Beyond. SPLC 2010. Lecture Notes in Computer Science, vol 6287. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-15579-6_10

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-15579-6_10

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-15578-9

  • Online ISBN: 978-3-642-15579-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics