Analysis of linux evolution using aligned source code segments

  • Authors:
  • Antti Rasinen;Jaakko Hollmén;Heikki Mannila

  • Affiliations:
  • Laboratory of Computer and Information Science, Helsinki Institute of Information Technology, Basic Research Unit, Helsinki University of Technology, TKK, Finland;Laboratory of Computer and Information Science, Helsinki Institute of Information Technology, Basic Research Unit, Helsinki University of Technology, TKK, Finland;Laboratory of Computer and Information Science, Helsinki Institute of Information Technology, Basic Research Unit, Helsinki University of Technology, TKK, Finland

  • Venue:
  • DS'06 Proceedings of the 9th international conference on Discovery Science
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

The Linux operating system embodies a development history of 15 years and community effort of hundreds of voluntary developers. We examine the structure and evolution of the Linux kernel by considering the source code of the kernel as ordinary text without any regard to its semantics. After selecting three functionally central modules to study, we identified code segments using local alignments of source code from a reduced set of file comparisons. The further stages of the analyses take advantage of these identified alignments. We build module-specific visualizations, or descendant graphs, to visualize the overall code migration between versions and files. More detailed view can be achieved with chain graphs which show the time evolution of alignments between selected files. The methods used here may also prove useful in studying large collections of legacy code, whose original maintainers are not available.