#+title: Handles

* filesystem / access function front handle
  See vfs.org.
  can be used in: mount()
  returned by fs_create(). there could also be functions that created a front handle from a subset of the current vfs.

* filesystem / access function back handle
  can be used in: fs_wait()
  returned by fs_create()

* file handle
  When an access function accepts a path, it returns a number uniquely identifying that open file. The kernel then wraps it in a file handle which gets passed back to the original caller.
  can be used in: read(), write(), maybe there could be a syscall allowing any other custom operation
  returned by open()

* shared operations
  pass to parent / wait for handle from child
  close