2010
DOI: 10.1016/j.jss.2009.09.042
|View full text |Cite
|
Sign up to set email alerts
|

The Linux kernel as a case study in software evolution

Abstract: We use 810 versions of the Linux kernel, released over a period of 14 years, to characterize the system's evolution, using Lehman's laws of software evolution as a basis. We investigate different possible interpretations of these laws, as reflected by different metrics that can be used to quantify them. For example, system growth has traditionally been quantified using lines of code or number of functions, but functional growth of an operating system like Linux can also be quantified using the number of system… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

4
97
1
1

Year Published

2010
2010
2017
2017

Publication Types

Select...
6
1

Relationship

1
6

Authors

Journals

citations
Cited by 110 publications
(103 citation statements)
references
References 55 publications
4
97
1
1
Order By: Relevance
“…In the process of studying the evolution of the Linux kernel, and in particular how various code metrics change with time, we found that some Linux kernel functions have MCC values in the hundreds [10]. Specifically, we found that the distribution of MCC values has a heavy tail, the absolute number of high-MCC functions is growing, but their fraction out of all functions in Linux is shrinking.…”
Section: Analysis Of High MCC Functions In Linuxmentioning
confidence: 93%
See 3 more Smart Citations
“…In the process of studying the evolution of the Linux kernel, and in particular how various code metrics change with time, we found that some Linux kernel functions have MCC values in the hundreds [10]. Specifically, we found that the distribution of MCC values has a heavy tail, the absolute number of high-MCC functions is growing, but their fraction out of all functions in Linux is shrinking.…”
Section: Analysis Of High MCC Functions In Linuxmentioning
confidence: 93%
“…Nevertheless, we have found functions with MCC values in the hundreds in the Linux kernel [10]. This chance discovery immediately led to a set of research questions:…”
Section: Introductionmentioning
confidence: 94%
See 2 more Smart Citations
“…We have found that 3578 patches that modify Kconfig files are driver related. Similarly, Israeli [12] collected several software metrics of the Linux kernel source code from 1994 and 2008, and also observed the functional growth by counting features. Adams studies the evolution of the Linux kernel build system [13] and finds that considerable maintenance to the system is performed to reduce the build complexity, that grows, partly due to the increase in number of features.…”
Section: Related Workmentioning
confidence: 99%