Open Source Code Doesn’t Always Help: Case of File System Development

Wasim Ahmad Bhat, S.M.K. Quadri

Abstract


Purpose: One of the most significant and attractive features of Open Source Software (OSS), other than its cost, is its open source code. It is available in both flavours; system and application. It can be customized and ported as per the requirements of the end user. As most of the system software run in the kernel mode of operating system and system programmers constitute a small chunk of the programmers, the code customization of Open Source System Software is less realized practically. In this paper, the authors present file system development as a case of Kernel Mode System Software development and argue that customization of Open Source Code available for file systems is not preferred. To support the argument, the authors discuss various challenges that a developer faces in this process. Furthermore, the authors look into the user mode file system development for possible solution and discuss the architecture, advantages and limitations of most popular and widely used framework called File system in User-Space (FUSE). Finally, the authors conclude that the user mode alternative for file system development and/or extension supersedes kernel mode development.

Design/Methodology/Approach: The broad domain, complexity, irregularity and limitations of kernel development environment are made as a base to put forth our argument. Moreover, the existence of rich and capable user-mode file system development frameworks are used to supplement the argument.

Findings: The research highlights the fact that kernel mode file system development is difficult, bug prone, time consuming, exhaustive and so on, even with source code at disposal. Furthermore, it highlights the existence of user mode alternative which is easy, reliable, portable, etc.

Research Implications: The research considers file system development as a case of kernel mode development. Fortunately, in this case, the authors have choice of user mode alternatives. However, author argument cannot be generalised for those kernel modules wherein there is no user mode alternative. Furthermore, the authors did not take into consideration the benefits of extending file systems in kernel mode.

Originality/Value: The research stresses that having open source code is not enough to make a choice when we cannot use it in a reliable and productive manner.

Keywords: Open Source Software); Open Source System Software, Source Code, File System, Kernel Mode, User Mode, File system in User-Space (FUSE)

Paper Type: Argumentative


Full Text: PDF



Creative Commons License The TRIM is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License