Opened 15 years ago
Closed 13 years ago
#207 closed enhancement (fixed)
Introduce fault spaces to VFS
Reported by: | Jakub Jermář | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | 0.5.0 |
Component: | helenos/srv/vfs | Version: | mainline |
Keywords: | Cc: | ||
Blocker for: | Depends on: | ||
See also: |
Description
Currently the design of VFS and the endpoint file system servers and libraries makes it impossible to have multiple instances of the same file system type / name handled by multiple instances of the same file system server. In other words, if there are multiple instances of the same file system type, they are all handled by one server process. In some situations, such as when increased robustness is desired, it may be a good idea to allow the file system server per file system instance model.
This ticket suggest a mechanism which would support both use cases.
An interesting observation here is that if an endpoint file system server was able register itself under distinct names, such as:
# fat -name fat
# fat -name fat2
the user would be able to specify, which instance to use during mount:
# mount fat /fat bd/disk0
# mount fat /fat1 bd/disk1
# mount fat2 /fat2 bd/disk2
Then /fat and /fat1 mountpoints would be served by the same FAT server process and /fat2 would have its own dedicated one.
Perhaps a slightly different mechanism to distinguish two server instances of the same file system type could be used, something like:
# fat
# fat -fault-space 1
Here two copies of the "fat" file system server would be spawned. The first will run in the default (i.e. 0 fault space), while the other, even though still known as "fat" will run in fault space 1.
This is how the two instances would be told apart during mount:
# mount fat /fat bd/disk0
# mount -fault-space 1 fat /fat1 bd/disk0
Change History (2)
comment:1 by , 14 years ago
Milestone: | 0.5.0 → 0.5.1 |
---|
comment:2 by , 13 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
Fixed in mainline,1239 by introducing file system instances.