SYSTEM PLIKÓW W SYSTEMIE LINUX

99-01-25


Kliknij tutaj, aby rozpocząć


Spis treści

SYSTEM PLIKÓW W SYSTEMIE LINUX

Wstęp do systemu plików, i buforowanie autor: Maciej Kurowski

Slajd PPT

Co to jest buforowanie?

Po co buforować?

Operacje na blokach

Struktura puli buforów

Struktury Danych W Buforowaniu

Tablica haszująca

Wyszukiwanie bufora getblk(dev, block, size)

Listy LRU

Pozyskiwanie nowych buforów refill_freelist(size)

Czynności administracyjne

Lista buforów na stronie

ELH nagłówka bufora

Czytanie bloku dyskowego bread(dev, block, size)

Czytanie bloku raz jeszcze breada(dev, block, pos, size)

Zwalnianie bufora brelse

Wewnętrzna reprezentacja plików

Budowa podsystemu plików w Linuxie

Ogólny schemat fizycznej budowy systemu plików w Unixie

Podłączanie systemu plików w Linuxie

Reprezentacja systemu plików w jądrze Struct super_block

Struct super_operations

Struktury związane z plikiem

Struct file

Slajd PPT

Struct file_operations

Slajd PPT

I-węzły w pamięci

Struct inode

Slajd PPT

Struct inode_operations

I-węzeł na dysku

Przechowywanie zawartości pliku w systemie EXT2

Schemat algorytmu iget - przydział i-węzła w pamięci

Schemat algorytmu iput - zwalnianie i-węzła w pamięci

Schemat algorytmu bmap - odwzorowanie logicznego adresu bloku, w którym znajduje się dany bajt w pliku, w numer bloku na dysku (EXT2)

System plików EXT 2 autor: Łukasz Kowalik

Struktura danych na dysku

Slajd PPT

Super block (blok identyfikacyjny)

Deskryptor grupy

Algorytm przydziału nowego i-węzła: ext2_new_inode

Wnioski

Algorytm przydziału nowych bloków dyskowych: ext2_new_block

Slajd PPT

Wnioski:

Katalogi w Linuxie

Buforowanie pozycji katalogowych (dcache.c)

Slajd PPT

Slajd PPT

Slajd PPT

Slajd PPT

Funkcje systemowe systemu plików autor: Tomasz Osman

Funkcje systemowe systemu plików

Struktury

Ogólny schemat działania funkcji systemowych

Open

open_namei(char *, int flag , int mode )

Sposoby otwarcia pliku

sys_write( int fd ,char * buf , int count)

ext2_file_write(..)

ext2_file_write(..,char * buf ,..)

sys_chdir(char * pathname )

sys_chroot(char * pathname)

sys_lseek( int fd , int offset , int orgin )

read ( int fd ,char * buf ,int count)

Czy funkcje generic_file_read można polubić ?

close(int fd )

Łącza nazwane (fifo) i nienazwane (pipe) autor: Jan Palczewski

Struktury danych

Slajd PPT

Bufor

Slajd PPT

Slajd PPT

Slajd PPT

read, write (łącza blokujące)

Slajd PPT

Montowanie systemów plików (mount, umount) autor: Jan Palczewski

Drzewo katalogów

Slajd PPT

Slajd PPT

Struktury danych

mount

algorytm mount

umount

Slajd PPT

Obsługa punktów zamontowania

link(stara_nazwa, nowa_nazwa);

Algorytm link (ext2fs)

Slajd PPT

Slajd PPT

mknod(nazwa_pliku, typ_i_prawa, urządzenie);

Slajd PPT

Autor: Łukasz Kowalik, Maciej Kurowski, Tomasz Osman, Jan Palczewski, Magdalena Urbańska