summaryrefslogtreecommitdiff
path: root/share/docs/kernel/disk.txt
blob: 4b7f6e5b732ab4b1219bfc4632989b4cae2f8409 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
=======================================
    Device filesystem (/dev) interface
=======================================

             USER
            /    \
      /dev/sd0, /dev/sd1
         /          \
       namei()       namei()
      /                \
     vop()              vop()
    /                     \
   driver                   driver
  /                          \
 HARD DRIVE 0                 HARD DRIVE 1

=======================================
    Hyra disk engine framework
=======================================
             USER
              |
             HDEI     [ hyra disk-engine interface: like disk_io() ]
  kernel --   |
             HDE      [ hyra disk engine: drives the core disk logic ]
              |
             HDF      [ hyra disk framework (core logic) ]
            /   \
  HARD DRIVE 0   HARD DRIVE 1


  [DRIVER] <-> [DISK ENGINE]
                     ^
                     |
                     V
               [ SLS / FILESYSTEM]
                     ^
                     |
                     V
                   [USER]


   NOTES:

           - Unix filesystem-like strucuture with indirection
           for orthogonally persistent objects

           - Explicit storage lifetime (i.e., persistent or ephemeral)
           during allocation at a page-level granularity