Является ли файловая система просто кучей папок? (Объяснение файловых систем)

Оглавление:

Является ли файловая система просто кучей папок? (Объяснение файловых систем)
Является ли файловая система просто кучей папок? (Объяснение файловых систем)

Видео: Является ли файловая система просто кучей папок? (Объяснение файловых систем)

Видео: Является ли файловая система просто кучей папок? (Объяснение файловых систем)
Видео: Как добавить Таймер обратного отсчета в OBS на стрим Youtube / Twitch 2023 - YouTube 2024, Марш
Anonim
На первый взгляд, файловая система вашей операционной системы может выглядеть как большая куча папок, но, конечно же, есть нечто большее, чем это. Читайте дальше, исследуя, что лежит под поверхностью файловой системы.
На первый взгляд, файловая система вашей операционной системы может выглядеть как большая куча папок, но, конечно же, есть нечто большее, чем это. Читайте дальше, исследуя, что лежит под поверхностью файловой системы.

Сегодняшняя сессия вопросов и ответов приходит к нам благодаря SuperUser - подразделению Stack Exchange, основанной на сообществах сайтам Q & A.

Вопрос

Считыватель SuperUser P_Q интересуется файловыми системами, пишет:

I have used Windows since childhood, and when I hear the phrase “Windows files system” I think of directories (folders) within directories, a folder called SYSTEM, a folder called PROGRAM FILES, etc. Is this what the system is? Just the layout of the folders?

And then I recently started using Linux, and my reference book says in the Linux filesystem everything starts at root and branches off from there. How is that really different from Windows? I mean, it seems the Linux system and the Windows system are just two ways of setting up a directory tree. Is this what file system means?

Является ли это простой подход к файловой системе наиболее точным способом ее описания? Давайте копать немного глубже.

Ответ

Докладчик SuperUser Том Вейсман предлагает проницательный взгляд на структуру файловых систем как в операционных системах Windows, так и на Linux. Он пишет:

Just the layout of the folders?

Sounds too good to be true…

Let’s take the FAT32 file system as an example. I can install Windows XP on it, but I can also use it on a memory card. On a memory card, you don’t have those folders that you sum up.

So… Don’t confuse the directory layout of a family of operating systems with a file system.

Is this what a file system means?

No… It refers to the underlying bits and bytes that make your directory structure work.

The underlying bits and bytes? Show me FAT32!

Let’s look at what FAT32 looks like, it has:

  • Some header sectors in the beginning, like Volume ID and Reserved Sectors
  • Two File Allocation Tables, allowing us to figure out where our files are.
  • Clusters containing all our directory and file data.
  • Some very small unused space that we can’t use.
A FAT table consists of a lot of entries that look like this, allowing us to determine where the directory or file is stored in the clusters space, as well as some attributes and size.
A FAT table consists of a lot of entries that look like this, allowing us to determine where the directory or file is stored in the clusters space, as well as some attributes and size.

A directory entry would point to a list of directory/file entries…

In the clusters space, we can now travel our clusters to find the data we need. A cluster essentially contains data and information where the next fragments are
In the clusters space, we can now travel our clusters to find the data we need. A cluster essentially contains data and information where the next fragments are
Image
Image

Do other file systems differ? Show me NTFS!

I’m going to show you an image so you can notice the differences, the rest is homework for the reader: More information can be found on this blog archive or Google.

The main idea is that NTFS is a huge improvement over FAT32 that is more robust/efficient. Having a better idea of (un)used space by using a bitmap to further help against fragmentation. And so on…

Image
Image

What about the file systems on Linux? Show me ext2/3!

The idea is that ext2/ext3 use super blocks and inodes; this allows for soft and hardlinks, directories that are files, files with multiple names and so on. The main gist is abstracting away to allow the file system to be capable of doing more meta-ish stuff…

Image
Image

Чтобы узнать больше о файловых системах, ознакомьтесь со следующими статьями How-To Geek:

  • HTG объясняет: Объяснение структуры каталогов Linux
  • HTG объясняет: какую файловую систему Linux вы должны выбрать?
  • Какую файловую систему следует использовать для моего USB-накопителя?

Есть что добавить к объяснению? Звучит в комментариях. Хотите узнать больше ответов от других пользователей Windows? Посмотрите здесь полную дискуссионную тему.

Рекомендуемые: