]> pd.if.org Git - btree/blobdiff - README.md
fix bt_audit to clear latches, remove -lrt linker depenency on linux
[btree] / README.md
index 691c7b7710e00b0c72fd5712c4046f6330e1a46b..97d02c4657e8cbd3353a28ed001be8cc1d83c633 100644 (file)
--- a/README.md
+++ b/README.md
@@ -3,29 +3,22 @@ Btree-source-code
 
 A working project for High-concurrency B-tree source code in C
 
-There are three major code sets in the btree source code:
+There are four major code sets in the standard btree source code:
 
-btree2q.c       Single Threaded/MultiProcess with latching supplied by advisory file locking.  Works with network file systems.
+btree2s.c       Single Threaded/MultiProcess version that removes keys all the way back to an original empty btree, placing removed nodes on a free list.  Operates under either memory mapping or file I/O.  Recommended btrees hosted on network file systems.
 
-threads2h.c     Multi-Threaded/Multi-Process with latching implemented with test & set locks in the btree pages.
+threads2h.c     Multi-Threaded/Multi-Process with latching implemented by a latch manager with pthreads/SRW latches in the first few btree pages. Recommended for Windows.
 
-threads2i.c     Multi-Threaded/Multi-Process with latching implemented with test & set locks in the btree pages with Linux futex system calls for contention.
-
-The Foster set includes three types of latching:
-
-Fosterbtreee.c  Multi-Threaded/Single Process with latches hosted by the buffer pool manager
-
-Fosterbtreef.c  Multi-Threaded/Multi-Process with latches hosted by a latch manager using the first few pages of the btree.
-
-Fosterbtreeg.c  Multi-Threaded/Multi-Process with latches implemented with test & set locks in the btree pages.
+threads2i.c     Multi-Threaded/Multi-Process with latching implemented by a latch manager with test & set latches in the first few btree pages with thread yield system calls during contention.
 
+threads2j.c     Multi-Threaded/Multi-Process with latching implemented by a latch manager with test & set locks in the first few btree pages with Linux futex system calls during contention. Recommended for linux.
 
 Compilation is achieved on linux or Windows by:
 
-gcc -D STANDALONE threads2h.c -lpthread
+gcc -D STANDALONE threads2h.c -lpthread -lrt
 
 or
 
-cl /D STANDALONE threads2h.c
+cl /Ox /D STANDALONE threads2h.c
 
 Please see the project wiki page for documentation