Maintainability of the kernels of open-source operating systems: A comparison of Linux with FreeBSD, NetBSD, and OpenBSD

  • Authors:
  • Liguo Yu;Stephen R. Schach;Kai Chen;Gillian Z. Heller;Jeff Offutt

  • Affiliations:
  • Department of Electrical Engineering and Computer Science, Vanderbilt University, Station B Box 351679, Nashville, TN 37235-1679, USA;Department of Electrical Engineering and Computer Science, Vanderbilt University, Station B Box 351679, Nashville, TN 37235-1679, USA;Department of Electrical Engineering and Computer Science, Vanderbilt University, Station B Box 351679, Nashville, TN 37235-1679, USA;Department of Statistics, Macquarie University, Sydney, NSW 2109, Australia;Department of Information and Software Engineering, George Mason University, Fairfax, VA 22030, USA

  • Venue:
  • Journal of Systems and Software
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

We compared and contrasted the maintainability of four open-source operating systems: Linux, FreeBSD, NetBSD, and OpenBSD. We used our categorization of common coupling in kernel-based software to highlight future maintenance problems. An unsafe definition is a definition of a global variable that can affect a kernel module if that definition is changed. For each operating system we determined a number of measures, including the number of global variables, the number of instances of global variables in the kernel and overall, as well as the number of unsafe definitions in the kernel and overall. We also computed the value of each our measures per kernel KLOC and per KLOC overall. For every measure and every ratio, Linux compared unfavorably with FreeBSD, NetBSD, and OpenBSD. Accordingly, we are concerned about the future maintainability of Linux.