🗊Презентация Linux Virtual Filesystem

Категория: Информатика
Нажмите для полного просмотра!
Linux Virtual Filesystem, слайд №1Linux Virtual Filesystem, слайд №2Linux Virtual Filesystem, слайд №3Linux Virtual Filesystem, слайд №4Linux Virtual Filesystem, слайд №5Linux Virtual Filesystem, слайд №6Linux Virtual Filesystem, слайд №7

Вы можете ознакомиться и скачать презентацию на тему Linux Virtual Filesystem. Доклад-сообщение содержит 7 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





Linux Virtual Filesystem
Chris Gill and James Orr
CSE 422S - Operating Systems Organization
Washington University in St. Louis
St. Louis, MO 63130
Описание слайда:
Linux Virtual Filesystem Chris Gill and James Orr CSE 422S - Operating Systems Organization Washington University in St. Louis St. Louis, MO 63130

Слайд 2





Linux VFS Layer
Kernel-wide filesystem view
Superblock (struct super_block) describes a filesystem, provides operations the OS can use
Each superblock has a list (in its s_list field) of superblocks for all available file systems
It also keeps lists of index nodes, directory entries, files
 
Process-specific filesystem view
Process’ task_struct points to 3 filesystem structs
Field fs points to a filesystem structure  (struct fs_struct)
Field files points to open files table (struct files_struct)
Field nsproxy points to a wrapper for its namespace, etc.
Each of these has further structure we will look at next
Описание слайда:
Linux VFS Layer Kernel-wide filesystem view Superblock (struct super_block) describes a filesystem, provides operations the OS can use Each superblock has a list (in its s_list field) of superblocks for all available file systems It also keeps lists of index nodes, directory entries, files Process-specific filesystem view Process’ task_struct points to 3 filesystem structs Field fs points to a filesystem structure (struct fs_struct) Field files points to open files table (struct files_struct) Field nsproxy points to a wrapper for its namespace, etc. Each of these has further structure we will look at next

Слайд 3





Linux Process’ Views of Filesystem
Fields in the process’ task_struct point to
key filesystem structs
The new nsproxy field points to a nsproxy struct that wraps a pointer to the filesystem’s namespace (mnt_namespace)
The files field points to a table of process’ open files
The fs field points to a filesystem structure that points to paths for the process’ root and current working directories
Описание слайда:
Linux Process’ Views of Filesystem Fields in the process’ task_struct point to key filesystem structs The new nsproxy field points to a nsproxy struct that wraps a pointer to the filesystem’s namespace (mnt_namespace) The files field points to a table of process’ open files The fs field points to a filesystem structure that points to paths for the process’ root and current working directories

Слайд 4





Paths and Directory Entries
Each path points to a VFS  mount structure (vfs_mount) and a directory entry (dentry) structure (filesystem+directory)
A VFS mount structure describes a specific filesystem instance    (a “mount point”)
A directory entry structure describes any element in the filesystem (directory or file, though in a path it’s a directory)
Описание слайда:
Paths and Directory Entries Each path points to a VFS mount structure (vfs_mount) and a directory entry (dentry) structure (filesystem+directory) A VFS mount structure describes a specific filesystem instance (a “mount point”) A directory entry structure describes any element in the filesystem (directory or file, though in a path it’s a directory)

Слайд 5





Directory Entries and Index Nodes
Each directory entry points to an associated index node (inode) that contains metadata about the directory entry
Last access time, permissions, etc.
E.g., what you see with ls command
Index nodes also implement operations the superblock uses
Each directory entry also has a character array field (d_iname) that contains its name
Описание слайда:
Directory Entries and Index Nodes Each directory entry points to an associated index node (inode) that contains metadata about the directory entry Last access time, permissions, etc. E.g., what you see with ls command Index nodes also implement operations the superblock uses Each directory entry also has a character array field (d_iname) that contains its name

Слайд 6





Directory Entry Hierarchy
A directory’s dentry lists other directory entries that it contains
Stored in its d_subdirs field 
List iteration requires special operations (see LKD Chapter 6)
E.g., list_empty(), list_for_each(), list_for_each_entry(), etc.
Can use those operations to traverse a path (or an entire filesystem) recursively via the directory entry hierarchy
Описание слайда:
Directory Entry Hierarchy A directory’s dentry lists other directory entries that it contains Stored in its d_subdirs field List iteration requires special operations (see LKD Chapter 6) E.g., list_empty(), list_for_each(), list_for_each_entry(), etc. Can use those operations to traverse a path (or an entire filesystem) recursively via the directory entry hierarchy

Слайд 7





Studio Exercises Today
Create a kernel module with a single thread
Runs in kernel space, in process context
Has access to filesystem, but details differ a bit from the view a user-space process has
Kernel thread can get PID for a user-space process, get its task_struct and see its filesystem view
Explore different file system data structures
Working from process to filesystem structure to root and working directory paths, to dentrys, etc.
Looking at directory entries specifically as you go
Описание слайда:
Studio Exercises Today Create a kernel module with a single thread Runs in kernel space, in process context Has access to filesystem, but details differ a bit from the view a user-space process has Kernel thread can get PID for a user-space process, get its task_struct and see its filesystem view Explore different file system data structures Working from process to filesystem structure to root and working directory paths, to dentrys, etc. Looking at directory entries specifically as you go



Похожие презентации
Mypresentation.ru
Загрузить презентацию