🗊 Презентация WritingFS4Fun

Категория: Образование
Нажмите для полного просмотра!
WritingFS4Fun, слайд №1 WritingFS4Fun, слайд №2 WritingFS4Fun, слайд №3 WritingFS4Fun, слайд №4 WritingFS4Fun, слайд №5 WritingFS4Fun, слайд №6 WritingFS4Fun, слайд №7 WritingFS4Fun, слайд №8 WritingFS4Fun, слайд №9 WritingFS4Fun, слайд №10 WritingFS4Fun, слайд №11 WritingFS4Fun, слайд №12 WritingFS4Fun, слайд №13 WritingFS4Fun, слайд №14 WritingFS4Fun, слайд №15 WritingFS4Fun, слайд №16 WritingFS4Fun, слайд №17 WritingFS4Fun, слайд №18 WritingFS4Fun, слайд №19 WritingFS4Fun, слайд №20 WritingFS4Fun, слайд №21

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

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


Слайд 1


Writing Linux FS 4 FUN
Описание слайда:
Writing Linux FS 4 FUN

Слайд 2


Outline Why Main Concepts and bit of history Earlier design decisions On disk layout Implementing own FS On disk layout Code Fragments: Kernel...
Описание слайда:
Outline Why Main Concepts and bit of history Earlier design decisions On disk layout Implementing own FS On disk layout Code Fragments: Kernel Implementation Other tools mkfs, fsdb

Слайд 3


Why this talk?! Cons Writing FS is quite time consuming (approx. 10 years…) Just few production ready FS, many abandoned or not truly maintained Pros...
Описание слайда:
Why this talk?! Cons Writing FS is quite time consuming (approx. 10 years…) Just few production ready FS, many abandoned or not truly maintained Pros Learning: Address specific gap Solving other complicated problems Storage stack is complicated and usually became a bottleneck Data is foundation of most todays application

Слайд 4


Early days: 6th ed. of UNIX File system: one internal component of the kernel Not possible to use other FS Block size as fixed 512 bytes Possible...
Описание слайда:
Early days: 6th ed. of UNIX File system: one internal component of the kernel Not possible to use other FS Block size as fixed 512 bytes Possible indirect block (up to 3 level depth) Max size of file: 32*32*32 data blocks

Слайд 5


Early days: 6th ed. of UNIX struct inode { i_mode // file type* i_nlink // nr of hard links i_uid i_gid i_size i_addr[7] // 7 pointers to blocks...
Описание слайда:
Early days: 6th ed. of UNIX struct inode { i_mode // file type* i_nlink // nr of hard links i_uid i_gid i_size i_addr[7] // 7 pointers to blocks i_mtime // modify time i_atime // access time }

Слайд 6


File System Switch
Описание слайда:
File System Switch

Слайд 7


SunOS VFS/vnode
Описание слайда:
SunOS VFS/vnode

Слайд 8


On Disk Layout: UFS Initial UNIX FS has poor performance UFS new design concerned the layout of data on disks i.e: Track contains same amount of data...
Описание слайда:
On Disk Layout: UFS Initial UNIX FS has poor performance UFS new design concerned the layout of data on disks i.e: Track contains same amount of data The old UNIX FS was only able to use 3 to 5 percent of the disk bandwidth while the FFS up to 47 percent of the disk bandwidth*

Слайд 9


On Disk layout: EXT2 EXT2 divide filesystem to number of block groups inode allocation done during mkfs Fixed offset for first Block Group, space for...
Описание слайда:
On Disk layout: EXT2 EXT2 divide filesystem to number of block groups inode allocation done during mkfs Fixed offset for first Block Group, space for bootloader

Слайд 10


Sample implementation dummyfs Implemented as in kernel module (possible to implement in user space using FuseFS) Provide basic functionality...
Описание слайда:
Sample implementation dummyfs Implemented as in kernel module (possible to implement in user space using FuseFS) Provide basic functionality necessary to mount read write files to the disk Pseudo modern on disk layout Good starting point to learn internal/implementing more advanced features Not using kernel caching mechanisms

Слайд 11


Inode structures:
Описание слайда:
Inode structures:

Слайд 12


On Disk layout Simple but not trivial Inode table and Inode bitmap are ‘files’ which allow them to scale Blocks addresses are 32 bit integers which...
Описание слайда:
On Disk layout Simple but not trivial Inode table and Inode bitmap are ‘files’ which allow them to scale Blocks addresses are 32 bit integers which define limits

Слайд 13


Basic components: Main implementation of specific components in dir.c file.c inode.c super.c Structures inside dummy_fs.h shared by kernel and user...
Описание слайда:
Basic components: Main implementation of specific components in dir.c file.c inode.c super.c Structures inside dummy_fs.h shared by kernel and user space components Module implementation in dummyfs.c: registration of FS, allocate memory for inodes

Слайд 14


In-Core structures struct dm_inode { u8 i_version; u8 i_flags; u32 i_mode; u32 i_ino; u16 i_uid; u32 i_ctime; u32 i_mtime; u32 i_size; u32...
Описание слайда:
In-Core structures struct dm_inode { u8 i_version; u8 i_flags; u32 i_mode; u32 i_ino; u16 i_uid; u32 i_ctime; u32 i_mtime; u32 i_size; u32 i_addrb[DM_EXT_SIZE]; u32 i_addre[DM_EXT_SIZE]; };

Слайд 15


Fragments: Mount // mount process: struct file_system_type dummyfs_type = { .name = "dummyfs", .mount = dummyfs_mount, .kill_sb =...
Описание слайда:
Fragments: Mount // mount process: struct file_system_type dummyfs_type = { .name = "dummyfs", .mount = dummyfs_mount, .kill_sb = dummyfs_kill_sb, .fs_flags = FS_REQUIRES_DEV }; register_filesystem(&dummyfs_type)

Слайд 16


Fragments: lookup “implement ls”
Описание слайда:
Fragments: lookup “implement ls”

Слайд 17


Fragment read/write
Описание слайда:
Fragment read/write

Слайд 18


User Space tools mkfs Initialize the device to be used by FS. Write initial FS state fsdb Development tool reading structures from raw device...
Описание слайда:
User Space tools mkfs Initialize the device to be used by FS. Write initial FS state fsdb Development tool reading structures from raw device Understand on disk structure fsck Try to recover inconsistent state of FS (due to crash/corruption).

Слайд 19


Fragment mkfs
Описание слайда:
Fragment mkfs

Слайд 20


Other resources: J.Lions: "A commentary on the sixth edition UNIX Operating System” V6 sources: S.R. Kleiman (86): “Vnodes: An Architecture for...
Описание слайда:
Other resources: J.Lions: "A commentary on the sixth edition UNIX Operating System” V6 sources: S.R. Kleiman (86): “Vnodes: An Architecture for Multiple File System Types in Sun UNIX” McKusick (84): “A Fast File System for UNIX.” Steve D. Pate: "UNIX Filesystems: Evolution, Design and Implementation” github.com/gotoco/dummyfs

Слайд 21


Q&A
Описание слайда:
Q&A



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