Everything is a file
"Everything is a file" is an idea that
.The advantage of this approach is that the same set of tools, utilities and APIs can be used on a wide range of resources and a number of file types. When a file is opened, a file descriptor is created, using the file path as an addressing system. The file descriptor is then a byte stream I/O interface on which file operations are performed. File descriptors are also created for objects such as anonymous pipes and network sockets – and therefore a more accurate description of this feature is Everything is a file descriptor.[2][3]
Additionally, a range of pseudo and virtual filesystems exists which exposes internal kernel data, such as information about processes, to user space in a hierarchical file-like structure.[4] These are mounted into the single file hierarchy.
An example of this purely virtual filesystem is under
See also
- 9P – A network protocol developed for the Plan 9 distributed operating system
- Device file
- Synthetic file system
- Unix architecture
- Filesystem Hierarchy Standard
- https://www.kernel.org/doc/gorman/html/understand/understand015.html
- https://tldp.org/LDP/intro-linux/html/sect_03_01.html
References
- ^ In UNIX Everything is a File Archived January 10, 2015, at the Wayback Machine
- ^ "Linus Torvalds - 'everything is a file descriptor or a process'". Yarchive.net. Retrieved 2015-08-28.
- ^ "Ghosts of Unix Past". Lwn.net. Retrieved 2015-08-28.
- ISBN 9780596002558.
- ^ "8. procfs: Gone But Not Forgotten". Freebsd.org. Retrieved 2015-08-28.
- ISBN 9789814273039.
- ISBN 9780471777311.
- ^ "busybox - BusyBox: The Swiss Army Knife of Embedded Linux". Git.busybox.net. Retrieved 2015-08-28.
- ^ "platform_system_core/ps.c at master · android/platform_system_core · GitHub". GitHub.com. 2015-03-09. Retrieved 2015-08-28.