A Proposal for a Non-Directory Filesystem with Graph Structures
Why do directory structures have to exist in a filesystem?
The most fundamental reason is that files based on the same filename cannot coexist in one directory, otherwise, the computer would not be able to distinguish these files when addressing them by filename. Other than that, the biggest advantage of the directory structure is to categorize the files. But, if we consider the scenario in life, a directory or a folder is equivalent to a box or a shelf, in the case of having two books with the same title, that is, two books with the same name, can only one book be put in a box? Books with the same title are placed together on a shelf in a library, when has it ever been stipulated that the books placed on a shelf cannot have the same title (name)?
So the answer is NO, it was not a must in a filesystem, there was an operating system called CP/M that had no directory in its filesystem, it was popular in the 70 to 80 ages of last century. After that, all filesystems were built based on one directory structure which is also the only structure type that exists in a filesystem (for example, all files in C disk are under the root directory of C or its subdirectories, so they’re all in one directory), and this situation has lasted for about 50 years, all applications and database software developed base on it, until now nearly no new space to develop anymore, what if the only one directory structure being replaced by multiple graph structures which have many kinds of file structures including directory? Would this open a new window for the filesystem and operating system development?
Here's the paper: https://docs.google.com/document/d/1iw1QNMpeCYAimWHWxTmLqNlSG0yTEY10oR7VcGNUWNY/edit?usp=sharing
In this paper, first, a non-directory filesystem proposal is presented that allows files with the same filename to coexist in a directory, and then a method for building filesystem structures using tags, including directories and other types so that files can be easily classified into one or more multi-type structures, is presented for file systems that allow tags, whether directory or non-directory structures. Finally, by combining these two chapters, a new filesystem is proposed with new file manager interfaces and new methods for file manipulation.