Intented audience
=================

People who want to tinker with xseg internals, and need a quick-n-dirty intro
to the basics behind its operation.

Terminology / API
*****************

Client, server, peer, xsegbd, vlmc, map, request, segment, signal, wait...

Basic flow
**********

The initiator/client... then...

 * Load the modules, mknod, create segment
	- insmod lib/kernel/xseg.ko
	- insmod lib/kernel/segdev.ko
	- mknod /dev/segdev c 60 0
	- insmod lib/kernel/xseg_segdev.ko
	- insmod lib/kernel/xseg_posix.ko
	- ./peer/users/xseg segdev:xsegbd:16:4096:64:1024:12 create
	- insmod lib/kernel/xsegbd.ko

 * Verify that the segment was created successfully:
 	- ./peer/users/xseg segdev:xsegbd reportall

 * Allocate request for vlmcd:
 	- ./peer/users/xseg segdev:xsegbd 0:1 alloc_requests 1024

 * Run vlmcd/mapperd/filed:
 	- ./peer/users/filed /srv/archip/images -p 9 -g segdev:xsegbd
	- ./peer/users/mapperd[.py] -p 10 -g segdev:xsegbd
	- ./peer/users/vlmcd -p 0 -g segdev:xsegbd -b 9 -m 10

 * Create/List/Map/Unmap/Remove a volume:
 	- vlmc create test -s 4096
	- vlmc list
 	- echo "test 1:0:1024" > /sys/bus/xsegbd/add
	(vlmc map test might work as long as vlmcd runs on port 0, and port 1-2-n, where n the no of volumes mapped are free)
	- vlmc showmapped
	- echo 0 > /sys/bus/xsegbd/remove (or vlmc unmap /dev/xsegbd0)
	- vlmc rm test
