File Systems
Imagine if you had to store a single file in a cabinet. That sounds so bad. What if instead of one file you had to store 100,000? Can you see a problem here? Well, on our computers we can easily store hundreds of thousands of files, if not more, problem-solved. Not quite. We have to be able to keep track of all these files. The kernel handles file storage and file systems on our machines. In this lesson, we're going to dig a little deeper on how it does that. There are three main components to handling files handlers, the file data, metadata, and file system. Let's start with the file system. Well, we have a brand new hard disks that we want to store data on. We need to erase and configure the disk. This way operating system can read and write data to it. This is important since it's how our operating system keeps tracks of files. We must know what kind of file system is used. There are lots of file systems and are used for different purposes. Some file systems support the storage of large amounts of data others only support small amounts. They can operate in different speeds and have varying resiliency towards file corruption and so on. We won't get into which file system is best. That's for you to decide. But the major OS manufacturers have their own unique file systems that they recommend, for Windows, the major file system that's used is NTFS. It was introduced in the previous version of Windows OS, Windows NT, and includes many features like encryption, faster access speeds, security, and more. Microsoft is developing another file system called ReFS, but it isn't quite ready for consumer use just yet. For Linux, different distributions will use different file system types. A standard for file systems for Linux is EX T4, which is compatible with older EXT file systems. In general, different file system types don't play nicely with each other. You might not be able to easily move files across different file systems depending on the file system type. A good guideline to use is just to use the file system that your operating system recommends. Another important part of file management is the storage of actual file data. We write data to our hard drive in the form of data blocks. When we say something to our hard disks, it doesn't always sit in one piece. It can be broken down into many pieces and written to different parts of the disk. Block storage improves faster handling of data, because the data isn't stored on one long piece, and it can be accessed quicker. It's also better for utilizing storage space. Lastly, we need to keep the metadata that contains the information about our file. There's a lot of information about our file that we want to know, who created it, when it was last modified, who has access to it, and so on. The file metadata tells us everything we need to know about our file. It also tells us what type of file it is. A file extension is the appended part of a filename that tells us what type of file it is in certain operating systems. Take cool_image.jpg. JPG is a file extension associated with image files. You'll see different types of file extensions like this. When you're working with your operating system, your working knowledge of file systems and the differences between them is a great skill to have in your IT support specialist toolbox. It can be super useful when you need to do things like recovered data from damaged discs or explore ways to boot from two different kinds of operating systems, like Windows and Linux on the same computer.