Preferencje help
Widoczny [Schowaj] Abstrakt
Liczba wyników
2013 | Vol. 14 (3) | 345--365
Tytuł artykułu

Portable userspace virtual filesystem switch

Treść / Zawartość
Warianty tytułu
Języki publikacji
Multiple different filesystems — including disk-based, network, distributed, abstract — are an integral part of every operating system. They are usually written as kernel modules and abstracted to the user via a virtual filesystem switch. In this paper, we analyze the feasibility of reimplementing the virtual filesystem switch as a userspace daemon and applicability of this approach in real-life usage. Such reimplementation will require a way to virtualize processes behavior related to filesystem operations. The problem is non-trivial, as we as-sume limited capabilities of the VFS switch implemented in userspace. We present a layered architecture comprising of a monitoring process, the VFS abstraction and real filesystem implementations. All working in userspace. Then, we evaluate this solution in four areas: portability, feasibility, usability, and performance. Our results demonstrate possible gains in the use of a userspace-based approach with monolithic kernels, but also underline problems that are encountered in this approach.

Opis fizyczny
Bibliogr. 19 poz. rys., tab.
  • [1] Apple Darwin/OS-X manual
  • [2] Linux Programmer’s Manual, section 2.
  • [3] Linux Programmer’s Manual, section 4.
  • [4] Linux Programmer’s Manual, section 8.
  • [5] Filesystem in Userspace, 2011.
  • [6] FUSE Wiki — File systems using FUSE, 2011.
  • [7] Linux Kernel Documentation, 2012.
  • [8] Corbet J., Rubini A., and Kroah-Hartman G.: Linux Device Drivers, Third Edition. O’Reilly Media, 2005.
  • [9] The GNOME Project:GIO Reference Manual, 2011.
  • [10] Herder J., Bos H., and Tanenbaum A.: A lightweight method for building reliable operating systems despite unreliable device drivers. Tech. rep., Vrije Universiteit, Amsterdam, The Netherlands, 2006.
  • [11] Kantee A. and Crooks A.: ReFUSE: Userspace FUSE Reimplementation Using puffs. In: Proc. of the 6th European BSD Conference (EuroBSDCon). 2007.
  • [12] Larsson A.:gvfs status report.
  • [13] Lemon J.:Kqueue - A Generic and Scalable Event Notification Facility. In: Proceedings of the FREENIX Track: 2001 USENIX Annual Technical Conference, pp. 141–153. USENIX Association, 2001. ISBN 1880446103.
  • [14] Leslie B., Chubb P., Fitzroy-Dale N., G ̈otz S., Gray C., Macpherson L., Potts D., Shen Y.T., Elphinstone K., and Heiser G.: User-Level Device Drivers: Achieved Performance. Journal of Computer Science and Technology , vol. 20, pp. 654–664, 2005. ISSN 1000-9000. URL
  • [15] Modine A.: Linus calls Linux ’bloated and huge’.
  • [16] Rajgarhia A. and Gehani A.: Performance and extension of user space file systems .In: Proceedings of the 2010 ACM Symposium on Applied Computing, pp.206–213. ACM, 2010.
  • [17] The SCO Group, Inc.:SCO UnixWare 7 manual, section 2.
  • [18] Spillane R.P., Wright C.P., Sivathanu G., and Zadok E.: Rapid file system development using ptrace .In: Proceedings of the 2007 workshop on Experimental computer science, ExpCS ’07. ACM, New York, NY, USA, 2007. ISBN 978-1-59593-751-3.
  • [19] Thurlow R.: RFC 5531 RPC: Remote Procedure Call Protocol Specification: Version 2, 2009.
Typ dokumentu
Identyfikator YADDA
JavaScript jest wyłączony w Twojej przeglądarce internetowej. Włącz go, a następnie odśwież stronę, aby móc w pełni z niej korzystać.