Comment by kstrauser
2 years ago
Well, you know how to R/W data with a normal filesystem. You can chdir() to the location you want to be, look around there with readdir(), open() and read() or write() files in there, and all that.
You could also have a SQL-like API where could "select count(1) from all_files where path_root = '/usr' and owner_uid = 0 and world_readable = true" that allowed you to query files, or maybe kernel calls that looked a lot like the Amazon S3 API (PutObject, ListObjects, ListBuckets, etc.) if that turns out to be more efficient for certain usecases.
The normal POSIX filesystem calls are obviously enormously useful. I mean, they've been used to implement SQLite and PostgreSQL, so you can* implement those other kinds of APIs on top of it. I can also imagine it being the case where there might be a much more efficient way to implement specific workflows if you didn't care about all the conventions that POSIX brings along.