A Study of Cloning in the Linux SCSI Drivers

  • Authors:
  • Wei Wang;Michael W. Godfrey

  • Affiliations:
  • -;-

  • Venue:
  • SCAM '11 Proceedings of the 2011 IEEE 11th International Working Conference on Source Code Analysis and Manipulation
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

To date, most research on software code cloning has concentrated on detection and analysis techniques and their evaluation, and most empirical studies of cloning have investigated cloning within single system versions. In this paper, we present the results of a longitudinal study of cloning among the SCSI drivers for the Linux operating system that spans 16 years of evolution. We have chosen the SCSI driver subsystem as a test subject as it is known that cloning has been embraced by these developers as a design practice: when a new SCSI card comes out that is similar to an old one, but different enough to warrant its own implementation, a new driver may be cloned from an existing one. We discuss the results of our qualitative and quantitative analyses, including how the layered architecture of the SCSI subsystem seems to have affected the use of cloning as a design tool, the likelihood of consistent and inconsistent change over time, and the predictive power of using cloning between two independent driver implementations to model the similarity between two target devices.