100 likes | 120 Views
Explore the layered file system concept in Linux OS, its benefits, challenges, and future potential. Learn about VFS, user application, kernel interface, and implementation details. Discover how this system enhances data security, delegation of authority, and web service maintenance in cloud environments.
E N D
Layered File System Sunil Venkatesh CMSC-601, Spring 2011, 05-02-2011
Introduction User Application • Linux OS • Supports more than 30 filesystems • VFS subsystem • Data structures – inode, file, vm_area_struct, dentry and super_block Sys-call interface User Kernel VFS Layer Conceptual (VFS interface) Filesystem Physical Media
Motivation • Challenges in administering a Linux server • Users, Groups and Others (RWX) • Maintaining software • New features • Delegation of authority • Security through isolation (“chroot jail”) • Benefits in a Cloud • Data is secure • Easier maintenance of web- services
Related Work • Hendricks et al., Method and apparatus for translucent file system, 1991 • Works best when a team working on shared data • Shared and Private hierarchy • Erez Zadok and Ion Badulescu, A Stackable File System Interface For Linux • vnode – represents files, directories and devices. • wrapfs achieved through vnode interface • Erez Zadok and Ion Badulescu and Alex Shender, Cryptfs: A Stackable Vnode Level Encryption File System, 1998.
Depicting Layers Development Tools Office Tools Application Layer User Layer User Group 1 Graphics Toosl User Group 2 User Group 3 Active Kernels System Layer Inactive Kernels These layers in-turn can contain sublayers like: dev, test 2.6.18-128.el5 2.6.38.4 2.6.39-rc5 word delta OpenGL alpha gcc golf Layer Contents: vmlinuz initrd grub echo Glib bravo hotel Java fortron DirectFB foxtrot charlie spreadsheet
Legend: White Font: Directory Black Font: File T1M1 – Team 1, Member 1 Legend: White Font: Directory Black Font: File T1M1 – Team 1, Member 1 Legend: White Font: Directory Black Font: File T1M1 – Team 1, Member 1 Legend: White Font: Directory Black Font: File T1M1 – Team 1, Member 1 Layered Organization base / / / / Level 1 lib lib lib lib root root root root bin bin bin bin usr usr usr usr home home home home dev dev dev dev mnt mnt mnt mnt . . . . . . . . . . . . . . . . . . . . . . . . . . . . prj1 prj2 prj3 temp prjN . . . . . . . . . . . . . . bash mkdir mount netstat ping pwd tracepath traceroute … unmount bash mkdir mount netstat ping pwd tracepath traceroute … unmount bash mkdir mount netstat ping pwd tracepath traceroute … unmount bash mkdir mount netstat ping pwd tracepath traceroute … unmount T2M2 T NM2 T1M2 T1M3 TNM3 T2M3 TNMN T2MN T1MN TNM1 T1M1 T2M1 lib lib lib lib sbin sbin sbin sbin share share share share bin bin bin bin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Level 2 dev dev dev dev test test test test Level 3
Legend: White Font: Directory Black Font: File T1M1 – Team 1, Member 1 An Example of a Layer / lib root bin usr home dev mnt . . . . . . . bash mkdir mount netstat ping pwd tracepath traceroute … unmount T1M2 T1M3 T1MN T1M1 lib sbin share bin . . . . . . . . . . . . . . Test Code 1 Test Code 1 Python (v2.3) Test Code 2 Test Code 1 gcc (v3.4) Level 2 Level 3
Implementation User Application • Components to be implemented • A pseudo-filesystem • wrapfs layer • Modification • dentry operations Sys-call interface User Kernel VFS Layer wrapfs Conceptual (VFS interface) Filesystem Physical Media
Future Work • Layered hierarchy representation • Provide means for delegation of authority • Eliminate need for a user and group permission in each file