Going through Linux’s filesystem fundamentals
We went through some of the Unix (and Linux) filesystem definitions in Chapter 1. Let’s see how they really matter in the bigger picture of system programming. You probably remember what types of files there are in the Linux system – regular files, directories, special files, links, sockets, and named pipes. We are going to deal with most of them in this chapter and learn about what purpose they serve. One way to think about files in Unix, including Linux, is the following simple statement:
“On a UNIX system, everything is a file; if something is not a file, it is a process.”
So, everything that’s not a process has an API, which includes file operation system calls. Let’s agree that a file is the main instrument for the logical organization of data. Then there must be something that is the main instrument for file organization. Well, this is where the file management system, or simply...