Difference between revisions of "Файлови системи"

From Ilianko
Line 34: Line 34:
 
[[Image:inode.gif|frame|структура на inode]]
 
[[Image:inode.gif|frame|структура на inode]]
  
Всеки файл се представя с структура inode съдържащ:
+
Всеки файл се представя със структура inode съдържащ:
 
*типа на файла
 
*типа на файла
 
*права за достъп
 
*права за достъп
Line 40: Line 40:
 
*timestamp
 
*timestamp
 
*размер
 
*размер
*указател към блока с данни
+
*...
 +
*15 указателя към блоковете с данни на файла
 +
**12 съдържат директни пойнтера
 +
**1 индеректен
 +
**1 двойно индеректен
 +
**1 тройно индеректен
 +
 
 +
Ако данните на файла не се поберат в 12 блока за данни, то се използва индеректен блок, в който са записани адресите на блоковете с данни за останалата част от файла. Ако и това не е достатъчно ( 4Кib cluster size/ 4  = 1024 адреса * 4КiB = 4 MiB, т.е ако файла е по-голям от 4MiB), за адресиране се използва двойно индеректен пойнтер към блоковете с данни

Revision as of 14:12, 12 January 2013

Файлова система

Под „файлова система” се разбира начинът на организация, съхранение и именуване на данните във външна памет и структурата на метаданните (служебната информация) за тях. Различните операционни системи осигуряват и разпознават една или повече файлови системи, например FAT, NTFS, ext2. за твърди дискове, UDF за оптични дискове и т.н., освен това чрез файловата система може да се осигурява достъп до отдалечени файлови сървъри или до виртуални файлове за обмен на потоци от данни и комуникация с периферни устройства.

Файловите системи предоставят дисковото пространство за отделните файлове на порции (allocation units), наричани още „клъстери”. Размерът на един клъстер се определя при форматирането на диска и зависи от типа на диска, размера на диска и възможностите на конкретната файлова система (от 512 байта до > 64KiB...). Клъстерът обикновено съдържа няколко физически сектора от диска. Драйверите на файловата система организират клъстерите във файлове и директории (които реално са също файлове, съдържащи списъци с файлове). Драйверите следят също така кои от клъстерите се използват в момента, кои са свободни и кои са отбелязани като повредени.

Задача. Запишете какви файлови системи се поддържат от MS Windows XP и по-новите версии?

Задача. Запишете какви файлови системи се поддържат от Линукс?

Задача. Избройте какви други файлови системи познавате.

Изисквания

  • Ефективно управление на свободното пространство
  • Каталог включващ всички файлове с цел осигуряване на бърз достъп до тях
  • Осигуряване на основни функции
    • триене
    • преименуване
    • преместване

FAT16

  • 1-8 Име на файл
  • 9-11 Разширение
  • 12 атрибути
  • 13-22 резервирани
  • 23-24 timestamp
  • 25-26 Начало (адрес на клъстер)
  • 29-32 Големина

В края на всеки клъстер се записва указател за следващия.

ext2

структура на inode

Всеки файл се представя със структура inode съдържащ:

  • типа на файла
  • права за достъп
  • собственик
  • timestamp
  • размер
  • ...
  • 15 указателя към блоковете с данни на файла
    • 12 съдържат директни пойнтера
    • 1 индеректен
    • 1 двойно индеректен
    • 1 тройно индеректен

Ако данните на файла не се поберат в 12 блока за данни, то се използва индеректен блок, в който са записани адресите на блоковете с данни за останалата част от файла. Ако и това не е достатъчно ( 4Кib cluster size/ 4 = 1024 адреса * 4КiB = 4 MiB, т.е ако файла е по-голям от 4MiB), за адресиране се използва двойно индеректен пойнтер към блоковете с данни