[PATCH 06/23] Add brief instructions on how to run ngnfs

Valerie Aurora val at versity.com
Fri Apr 4 11:45:22 PDT 2025


Some quick pointers on installing dependencies and building/running
ngnfs.

Signed-off-by: Valerie Aurora <val at versity.com>
---
 README.md           |  7 +++++--
 docs/development.md | 31 +++++++++++++++++++++++++++++++
 2 files changed, 36 insertions(+), 2 deletions(-)

diff --git a/README.md b/README.md
index 7f030e7..bda6666 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,8 @@
 
-This is the repository for the userspace componenent of ngnfs
-("engine FS"), a storage system in early development.
+This is the repository for the userspace component of ngnfs ("engine
+FS"), a storage system in early development.
 
 Further bulletins as events warrant.
+
+See the docs/ directory for more information on how to run and
+contribute to ngnfs.
diff --git a/docs/development.md b/docs/development.md
index 286d4cc..215e641 100644
--- a/docs/development.md
+++ b/docs/development.md
@@ -1,3 +1,34 @@
+## Running
+
+Compile the code with make. You will need librcu and sparse installed.
+The sparse package tends to depend on a lot of other packages, so you
+may want to build and install your own.
+
+ngnfs currently only runs in userspace. There are two components: the
+devd process and the debugfs process.
+
+The devd process listens on a socket for block IO requests. The
+debugfs process reads commands from stdin and turns them into ngnfs
+operations, which generate IO requests to the devd process. Thus you
+need to tell the devd process where to listen and the debugfs process
+where to connect. The devd process also needs to know where its
+backing store is. Another required argument is a path to a file to
+write trace data to.
+
+Example invocation:
+
+```
+	$ truncate -s 1G ~/tmp/dev
+	$ ./devd/ngnfs-devd -d ~/tmp/dev -l 127.0.0.1:8081 -t /tmp/trace_devd
+```
+
+In another terminal:
+
+```
+	$ ./cli/ngnfs-cli debugfs -d 127.0.0.1:8081 -t /tmp/trace_debugfs
+	<1> $ mkfs
+	<1> $ stat
+```
 
 ## Code Layout
 
-- 
2.48.1




More information about the ngnfs-devel mailing list