2
2
@mainpage RAMCloud
3
3
4
4
5
- See http ://fiz .stanford.edu:8081/ display/ramcloud/Contributing for further details.
5
+ See https ://ramcloud .stanford.edu/wiki/ display/ramcloud/General+Information+for+Developers for further details.
6
6
7
7
8
8
@@ -30,37 +30,54 @@ Using GNU make, type:
30
30
31
31
$ make
32
32
33
- # make install
34
-
35
- This will build the client, server, and backups. The install step
36
- simply installs the RAMCloud client library and headers in /usr/local.
37
-
33
+ This will build the client, server, and coordinator.
38
34
39
35
====================================
40
36
2. Running
41
37
====================================
42
38
43
- To run you must have 3 things. A running backup, a running server,
44
- and some kind of client. Note that the backup must be started first.
39
+ To run you must have 3 things. A running coordinator, a running master,
40
+ and some kind of client. These all need to be run on the same host;
41
+ running on separate hosts requires more flags (see -C and -L on both
42
+ the coordinator and server binary).
45
43
46
- 2.1 Starting a backup
44
+ 2.1 Starting a coordinator
47
45
48
- $ ./obj.master/backup
46
+ $ ./obj.master/coordinator
49
47
50
48
2.2 Starting a server
51
49
52
- $ ./obj.master/server
50
+ $ ./obj.master/server -M -r 0
51
+
52
+ This starts a RAMCloud process acting only as a master using 0 backups.
53
+ If the master can communicate with the coordinator process you should
54
+ see a log message ending with "My server ID is 1" after a second or so.
55
+
56
+ 2.3
57
+
58
+ To make sure things are really working try running
53
59
54
- 2.3 Using the libramcloud.so library
60
+ $ ./obj.master/client
61
+
62
+ It should connect to the master and perform a few random operations.
63
+ If it is working then you have a working basic RAMCloud and you can
64
+ start writing more interesting applications.
65
+
66
+ 2.4 Using the libramcloud.so library
55
67
56
68
Write a client application using the interface described in
57
- /usr/local/include/ramcloud/client.h. Compile with:
69
+ src/RamCloud.h (see RamCloudMain.cc for an example).
70
+
71
+ Until we have a proper 'install' target compile with:
58
72
59
- $ gcc -lramcloud -I/usr/local/include/ramcloud -o test-client test-client.c
73
+ $ g++ -Lobj.master -lramcloud -Isrc -Iobj.master -o TestClient TestClient.cc
60
74
61
- 2.4 Using the Python bindings:
75
+ This is assuming TestClient.cc is in the ramcloud directory just above src.
76
+ Adjust your paths accordingly.
62
77
63
- $ PYTHONPATH=bindings/python python
78
+ 2.5 Using the Python bindings:
79
+
80
+ $ LD_LIBRARY_PATH=$LD_LIBRARY_PATH:obj.master PYTHONPATH=bindings/python python
64
81
65
82
>>> import ramcloud
66
83
@@ -76,7 +93,6 @@ $ PYTHONPATH=bindings/python python
76
93
====================================
77
94
3. Testing
78
95
====================================
79
-
80
96
3.1 Static Style Checking
81
97
82
98
$ make check
0 commit comments