|
1 | 1 | *******************************************************************************
|
2 | 2 | File system and file management
|
3 | 3 | *******************************************************************************
|
| 4 | + |
| 5 | +A simple description of the UNIX system, also applicable to Linux, is this: |
| 6 | + |
| 7 | + "On a UNIX system, everything is a file; if something is not a file, |
| 8 | + it is a process" |
| 9 | + |
| 10 | +This statement is true because there are special files that are more that just |
| 11 | +files (named pipes and sockets for instance), but to keep things simple, saying |
| 12 | +that everything is a file is an acceptable generalization. A Linux system, just |
| 13 | +like UNIX, makes no difference between a file and a directory, since |
| 14 | +a directory is just a file containing names of other files. Programs, services, |
| 15 | +texts, images, and so forth, are all files. Input and output devices, and |
| 16 | +generally all devices, are considered to be files, according to the system. |
| 17 | + |
| 18 | +.. rubric:: Sorts of files |
| 19 | + |
| 20 | +:regular files: |
| 21 | + most files are just *files*, called *regular* files; they contain normal |
| 22 | + data, for example text files, executable files or programs, input or |
| 23 | + output from a program and so on. |
| 24 | + |
| 25 | +:directories: |
| 26 | + files that are lists of other files. |
| 27 | + |
| 28 | +:special files: |
| 29 | + the mechanism used for input and output. |
| 30 | + Most special files are in ``/dev``. |
| 31 | + |
| 32 | +:links: |
| 33 | + a system to make a file or directory visible in multiple parts of |
| 34 | + the system's file tree. |
| 35 | + |
| 36 | +:sockets: |
| 37 | + a special file type, similar to TCP/IP sockets, providing inter-process |
| 38 | + networking protected by the file system's access control. |
| 39 | + |
| 40 | +:named pipes: |
| 41 | + act more or less like sockets and form a way for processes to communicate |
| 42 | + with each other, without using network socket semantic. |
0 commit comments