Commit 4b5633a3 authored by Kirill Smelkov's avatar Kirill Smelkov

.

parent f330bd2f
...@@ -74,6 +74,9 @@ struct bigfile_ops { ...@@ -74,6 +74,9 @@ struct bigfile_ops {
int (*storeblk) (BigFile *file, blk_t blk, const void *buf); int (*storeblk) (BigFile *file, blk_t blk, const void *buf);
// XXX picture of base layer + RW pages
// XXX link to wcfs/client/wcfs.h
// - mmap_setup_read(vma, file[blk +blklen)) -> addr setup initial read-only mmap to serve vma // - mmap_setup_read(vma, file[blk +blklen)) -> addr setup initial read-only mmap to serve vma
// - remmap_blk_read(vma, file[blk]) remmap blk into vma again, after e.g. // - remmap_blk_read(vma, file[blk]) remmap blk into vma again, after e.g.
// RW dirty page was discarded // RW dirty page was discarded
......
...@@ -52,7 +52,7 @@ ...@@ -52,7 +52,7 @@
// Mapping is created it can be associated as serving base layer for a // Mapping is created it can be associated as serving base layer for a
// particular virtmem VMA via FileH.mmap(vma=...). In that case, since virtmem // particular virtmem VMA via FileH.mmap(vma=...). In that case, since virtmem
// itself adds another layer of dirty pages over read-only base provided by // itself adds another layer of dirty pages over read-only base provided by
// Mapping // Mapping(+)
// //
// ┌──┐ ┌──┐ // ┌──┐ ┌──┐
// │RW│ │RW│ ← virtmem VMA dirty pages // │RW│ │RW│ ← virtmem VMA dirty pages
...@@ -78,10 +78,20 @@ ...@@ -78,10 +78,20 @@
// - `FileH` represent isolated file view under Conn. // - `FileH` represent isolated file view under Conn.
// - `Mapping` represents one memory mapping of FileH. // - `Mapping` represents one memory mapping of FileH.
// //
// A path from WCFS to Mapping is as follows:
//
// WCFS.connect(at) -> Conn
// Conn.open(foid) -> FileH
// FileH.mmap([blk_start +blk_len)) -> Mapping
//
// A connection can be resynced to another database view via Conn.resync(at').
//
// Documentation for classes provides more thorough overview and API details.
// //
// -------- // --------
// //
// (*) see wcfs.go documentation for overview and details of WCFS isolation protocol. // (*) see wcfs.go documentation for overview and details of WCFS isolation protocol.
// (+) see also XXX -> virtmem docs about layering
#ifndef _NXD_WCFS_H_ #ifndef _NXD_WCFS_H_
#define _NXD_WCFS_H_ #define _NXD_WCFS_H_
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment