xref: /csrg-svn/lib/libc/db/hash/README (revision 46363)
1*46363Sbostic#	@(#)README	5.1 (Berkeley) 02/12/91
2*46363Sbostic
3*46363SbosticThis package implements a superset of the hsearch and dbm/ndbm libraries.
4*46363Sbostic
5*46363SbosticContents:
6*46363Sbostic
7*46363SbosticHashing Package:
8*46363Sbostic	dynahash.c
9*46363Sbostic	page.c
10*46363Sbostic	buf.c
11*46363Sbostic	big.c
12*46363Sbostic	hfunc.c
13*46363Sbostic	log2.c
14*46363Sbostic
15*46363Sbostic	hash.h
16*46363Sbostic	page.h
17*46363Sbostic	db.h
18*46363Sbostic
19*46363SbosticBackward Compatibility Routines:
20*46363Sbostic	ndbm.c
21*46363Sbostic	ndbm.h
22*46363Sbostic	hsearch.c
23*46363Sbostic	search.h
24*46363Sbostic
25*46363SbosticMisc
26*46363Sbostic	byte_order.c
27*46363Sbostic
28*46363SbosticBSD Files:
29*46363Sbostic	endian.h
30*46363Sbostic	mkstemp.c
31*46363Sbostic	bcopy.c
32*46363Sbostic
33*46363SbosticTest Programs:
34*46363Sbostic	All test programs which need key/data pairs expect them entered
35*46363Sbostic	with key and data on separate lines
36*46363Sbostic
37*46363Sbostic	tcreat3.c
38*46363Sbostic		Takes
39*46363Sbostic			bucketsize (bsize),
40*46363Sbostic			fill factor (ffactor), and
41*46363Sbostic			initial number of elements (nelem).
42*46363Sbostic		Creates a hash table named hashtest containing the
43*46363Sbostic		keys/data pairs entered from standard in.
44*46363Sbostic	thash4.c
45*46363Sbostic		Takes
46*46363Sbostic			bucketsize (bsize),
47*46363Sbostic			fill factor (ffactor),
48*46363Sbostic			initial number of elements (nelem)
49*46363Sbostic			bytes of cache (ncached), and
50*46363Sbostic			file from which to read data  (fname)
51*46363Sbostic		Creates a table from the key/data pairs on standard in and
52*46363Sbostic		then does a read of each key/data in fname
53*46363Sbostic	tdel.c
54*46363Sbostic		Takes
55*46363Sbostic			bucketsize (bsize), and
56*46363Sbostic			fill factor (ffactor).
57*46363Sbostic			file from which to read data (fname)
58*46363Sbostic		Reads each key/data pair from fname and deletes the
59*46363Sbostic		key from the hash table hashtest
60*46363Sbostic	tseq.c
61*46363Sbostic		Reads the key/data pairs in the file hashtest and writes them
62*46363Sbostic		to standard out.
63*46363Sbostic	tread2.c
64*46363Sbostic		Takes
65*46363Sbostic			butes of cache (ncached).
66*46363Sbostic		Reads key/data pairs from standard in and looks them up
67*46363Sbostic		in the file hashtest.
68*46363Sbostic	tverify.c
69*46363Sbostic		Reads key/data pairs from standard in, looks them up
70*46363Sbostic		in the file hashtest, and verifies that the data is
71*46363Sbostic		correct.
72*46363Sbostic
73*46363SbosticIf you are running on a BSD system, the BSD h files should be in
74*46363Sbostic/usr/include and the BSD .c files should be in libc.  On a non-BSD
75*46363Sbosticsystem, you will need to compile the copies here into the package.
76*46363SbosticBe sure to set BYTE_ORDER in endian.h appropriately for your machine.
77*46363SbosticIf you don't know what "endian" your machine is, compile byte_order.c
78*46363Sbosticand run it.  It should tell you.
79*46363Sbostic
80*46363SbosticThe file search.h is used only for using the hsearch compatible interface on
81*46363SbosticBSD systems.  On System V derived systems, search.h should appear in
82*46363Sbostic/usr/include.
83*46363Sbostic
84*46363SbosticThe man page db.3 explains the interface to the hashing system.
85*46363SbosticThe file hash.ps is a postscript copy of a paper explaining
86*46363Sbosticthe history, implementation, and performance of the hash package.
87