home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / unix / volume26 / db-1.6 / part09 < prev    next >
Encoding:
Text File  |  1993-07-05  |  90.0 KB  |  6,179 lines

  1. Newsgroups: comp.sources.unix
  2. From: bostic@cs.berkeley.edu (Keith Bostic)
  3. Subject: v26i288: db-1.6 - A New Hashing Package for UNIX(tm) (updates dbm/ndbm), Part09/09
  4. Sender: unix-sources-moderator@gw.home.vix.com
  5. Approved: vixie@gw.home.vix.com
  6.  
  7. Submitted-By: bostic@cs.berkeley.edu (Keith Bostic)
  8. Posting-Number: Volume 26, Issue 288
  9. Archive-Name: db-1.6/part09
  10.  
  11. #! /bin/sh
  12. # This is a shell archive.  Remove anything before this line, then unpack
  13. # it by saving it into a file and typing "sh file".  To overwrite existing
  14. # files, type "sh file -c".  You can also feed this as standard input via
  15. # unshar, or by typing "sh <file", e.g..  If this archive is complete, you
  16. # will see the following message at the end:
  17. #        "End of archive 9 (of 9)."
  18. # Contents:  doc/hash.ps.01
  19. # Wrapped by vixie@gw.home.vix.com on Mon Jul  5 15:27:31 1993
  20. PATH=/bin:/usr/bin:/usr/ucb ; export PATH
  21. if test -f 'doc/hash.ps.01' -a "${1}" != "-c" ; then 
  22.   echo shar: Will not clobber existing file \"'doc/hash.ps.01'\"
  23. else
  24. echo shar: Extracting \"'doc/hash.ps.01'\" \(84295 characters\)
  25. sed "s/^X//" >'doc/hash.ps.01' <<'END_OF_FILE'
  26. X%!PS-Adobe-1.0
  27. X%%Creator: utopia:margo (& Seltzer,608-13E,8072,)
  28. X%%Title: stdin (ditroff)
  29. X%%CreationDate: Tue Dec 11 15:06:45 1990
  30. X%%EndComments
  31. X%    @(#)psdit.pro    1.3 4/15/88
  32. X% lib/psdit.pro -- prolog for psdit (ditroff) files
  33. X% Copyright (c) 1984, 1985 Adobe Systems Incorporated. All Rights Reserved.
  34. X% last edit: shore Sat Nov 23 20:28:03 1985
  35. X% RCSID: $Header: psdit.pro,v 2.1 85/11/24 12:19:43 shore Rel $
  36. X
  37. X% Changed by Edward Wang (edward@ucbarpa.berkeley.edu) to handle graphics,
  38. X% 17 Feb, 87.
  39. X
  40. X/$DITroff 140 dict def $DITroff begin
  41. X/fontnum 1 def /fontsize 10 def /fontheight 10 def /fontslant 0 def
  42. X/xi{0 72 11 mul translate 72 resolution div dup neg scale 0 0 moveto
  43. X /fontnum 1 def /fontsize 10 def /fontheight 10 def /fontslant 0 def F
  44. X /pagesave save def}def
  45. X/PB{save /psv exch def currentpoint translate 
  46. X resolution 72 div dup neg scale 0 0 moveto}def
  47. X/PE{psv restore}def
  48. X/arctoobig 90 def /arctoosmall .05 def
  49. X/m1 matrix def /m2 matrix def /m3 matrix def /oldmat matrix def
  50. X/tan{dup sin exch cos div}def
  51. X/point{resolution 72 div mul}def
  52. X/dround    {transform round exch round exch itransform}def
  53. X/xT{/devname exch def}def
  54. X/xr{/mh exch def /my exch def /resolution exch def}def
  55. X/xp{}def
  56. X/xs{docsave restore end}def
  57. X/xt{}def
  58. X/xf{/fontname exch def /slotno exch def fontnames slotno get fontname eq not
  59. X {fonts slotno fontname findfont put fontnames slotno fontname put}if}def
  60. X/xH{/fontheight exch def F}def
  61. X/xS{/fontslant exch def F}def
  62. X/s{/fontsize exch def /fontheight fontsize def F}def
  63. X/f{/fontnum exch def F}def
  64. X/F{fontheight 0 le{/fontheight fontsize def}if
  65. X fonts fontnum get fontsize point 0 0 fontheight point neg 0 0 m1 astore
  66. X fontslant 0 ne{1 0 fontslant tan 1 0 0 m2 astore m3 concatmatrix}if
  67. X makefont setfont .04 fontsize point mul 0 dround pop setlinewidth}def
  68. X/X{exch currentpoint exch pop moveto show}def
  69. X/N{3 1 roll moveto show}def
  70. X/Y{exch currentpoint pop exch moveto show}def
  71. X/S{show}def
  72. X/ditpush{}def/ditpop{}def
  73. X/AX{3 -1 roll currentpoint exch pop moveto 0 exch ashow}def
  74. X/AN{4 2 roll moveto 0 exch ashow}def
  75. X/AY{3 -1 roll currentpoint pop exch moveto 0 exch ashow}def
  76. X/AS{0 exch ashow}def
  77. X/MX{currentpoint exch pop moveto}def
  78. X/MY{currentpoint pop exch moveto}def
  79. X/MXY{moveto}def
  80. X/cb{pop}def    % action on unknown char -- nothing for now
  81. X/n{}def/w{}def
  82. X/p{pop showpage pagesave restore /pagesave save def}def
  83. X/Dt{/Dlinewidth exch def}def 1 Dt
  84. X/Ds{/Ddash exch def}def -1 Ds
  85. X/Di{/Dstipple exch def}def 1 Di
  86. X/Dsetlinewidth{2 Dlinewidth mul setlinewidth}def
  87. X/Dsetdash{Ddash 4 eq{[8 12]}{Ddash 16 eq{[32 36]}
  88. X {Ddash 20 eq{[32 12 8 12]}{[]}ifelse}ifelse}ifelse 0 setdash}def
  89. X/Dstroke{gsave Dsetlinewidth Dsetdash 1 setlinecap stroke grestore
  90. X currentpoint newpath moveto}def
  91. X/Dl{rlineto Dstroke}def
  92. X/arcellipse{/diamv exch def /diamh exch def oldmat currentmatrix pop
  93. X currentpoint translate 1 diamv diamh div scale /rad diamh 2 div def
  94. X currentpoint exch rad add exch rad -180 180 arc oldmat setmatrix}def
  95. X/Dc{dup arcellipse Dstroke}def
  96. X/De{arcellipse Dstroke}def
  97. X/Da{/endv exch def /endh exch def /centerv exch def /centerh exch def
  98. X /cradius centerv centerv mul centerh centerh mul add sqrt def
  99. X /eradius endv endv mul endh endh mul add sqrt def
  100. X /endang endv endh atan def
  101. X /startang centerv neg centerh neg atan def
  102. X /sweep startang endang sub dup 0 lt{360 add}if def
  103. X sweep arctoobig gt
  104. X {/midang startang sweep 2 div sub def /midrad cradius eradius add 2 div def
  105. X  /midh midang cos midrad mul def /midv midang sin midrad mul def
  106. X  midh neg midv neg endh endv centerh centerv midh midv Da
  107. X  Da}
  108. X {sweep arctoosmall ge
  109. X  {/controldelt 1 sweep 2 div cos sub 3 sweep 2 div sin mul div 4 mul def
  110. X   centerv neg controldelt mul centerh controldelt mul
  111. X   endv neg controldelt mul centerh add endh add
  112. X   endh controldelt mul centerv add endv add
  113. X   centerh endh add centerv endv add rcurveto Dstroke}
  114. X  {centerh endh add centerv endv add rlineto Dstroke}
  115. X  ifelse}
  116. X ifelse}def
  117. X/Dpatterns[
  118. X[%cf[widthbits]
  119. X[8<0000000000000010>]
  120. X[8<0411040040114000>]
  121. X[8<0204081020408001>]
  122. X[8<0000103810000000>]
  123. X[8<6699996666999966>]
  124. X[8<0000800100001008>]
  125. X[8<81c36666c3810000>]
  126. X[8<0f0e0c0800000000>]
  127. X[8<0000000000000010>]
  128. X[8<0411040040114000>]
  129. X[8<0204081020408001>]
  130. X[8<0000001038100000>]
  131. X[8<6699996666999966>]
  132. X[8<0000800100001008>]
  133. X[8<81c36666c3810000>]
  134. X[8<0f0e0c0800000000>]
  135. X[8<0042660000246600>]
  136. X[8<0000990000990000>]
  137. X[8<0804020180402010>]
  138. X[8<2418814242811824>]
  139. X[8<6699996666999966>]
  140. X[8<8000000008000000>]
  141. X[8<00001c3e363e1c00>]
  142. X[8<0000000000000000>]
  143. X[32<00000040000000c00000004000000040000000e0000000000000000000000000>]
  144. X[32<00000000000060000000900000002000000040000000f0000000000000000000>]
  145. X[32<000000000000000000e0000000100000006000000010000000e0000000000000>]
  146. X[32<00000000000000002000000060000000a0000000f00000002000000000000000>]
  147. X[32<0000000e0000000000000000000000000000000f000000080000000e00000001>]
  148. X[32<0000090000000600000000000000000000000000000007000000080000000e00>]
  149. X[32<00010000000200000004000000040000000000000000000000000000000f0000>]
  150. X[32<0900000006000000090000000600000000000000000000000000000006000000>]]
  151. X[%ug
  152. X[8<0000020000000000>]
  153. X[8<0000020000002000>]
  154. X[8<0004020000002000>]
  155. X[8<0004020000402000>]
  156. X[8<0004060000402000>]
  157. X[8<0004060000406000>]
  158. X[8<0006060000406000>]
  159. X[8<0006060000606000>]
  160. X[8<00060e0000606000>]
  161. X[8<00060e000060e000>]
  162. X[8<00070e000060e000>]
  163. X[8<00070e000070e000>]
  164. X[8<00070e020070e000>]
  165. X[8<00070e020070e020>]
  166. X[8<04070e020070e020>]
  167. X[8<04070e024070e020>]
  168. X[8<04070e064070e020>]
  169. X[8<04070e064070e060>]
  170. X[8<06070e064070e060>]
  171. X[8<06070e066070e060>]
  172. X[8<06070f066070e060>]
  173. X[8<06070f066070f060>]
  174. X[8<060f0f066070f060>]
  175. X[8<060f0f0660f0f060>]
  176. X[8<060f0f0760f0f060>]
  177. X[8<060f0f0760f0f070>]
  178. X[8<0e0f0f0760f0f070>]
  179. X[8<0e0f0f07e0f0f070>]
  180. X[8<0e0f0f0fe0f0f070>]
  181. X[8<0e0f0f0fe0f0f0f0>]
  182. X[8<0f0f0f0fe0f0f0f0>]
  183. X[8<0f0f0f0ff0f0f0f0>]
  184. X[8<1f0f0f0ff0f0f0f0>]
  185. X[8<1f0f0f0ff1f0f0f0>]
  186. X[8<1f0f0f8ff1f0f0f0>]
  187. X[8<1f0f0f8ff1f0f0f8>]
  188. X[8<9f0f0f8ff1f0f0f8>]
  189. X[8<9f0f0f8ff9f0f0f8>]
  190. X[8<9f0f0f9ff9f0f0f8>]
  191. X[8<9f0f0f9ff9f0f0f9>]
  192. X[8<9f8f0f9ff9f0f0f9>]
  193. X[8<9f8f0f9ff9f8f0f9>]
  194. X[8<9f8f1f9ff9f8f0f9>]
  195. X[8<9f8f1f9ff9f8f1f9>]
  196. X[8<bf8f1f9ff9f8f1f9>]
  197. X[8<bf8f1f9ffbf8f1f9>]
  198. X[8<bf8f1fdffbf8f1f9>]
  199. X[8<bf8f1fdffbf8f1fd>]
  200. X[8<ff8f1fdffbf8f1fd>]
  201. X[8<ff8f1fdffff8f1fd>]
  202. X[8<ff8f1ffffff8f1fd>]
  203. X[8<ff8f1ffffff8f1ff>]
  204. X[8<ff9f1ffffff8f1ff>]
  205. X[8<ff9f1ffffff9f1ff>]
  206. X[8<ff9f9ffffff9f1ff>]
  207. X[8<ff9f9ffffff9f9ff>]
  208. X[8<ffbf9ffffff9f9ff>]
  209. X[8<ffbf9ffffffbf9ff>]
  210. X[8<ffbfdffffffbf9ff>]
  211. X[8<ffbfdffffffbfdff>]
  212. X[8<ffffdffffffbfdff>]
  213. X[8<ffffdffffffffdff>]
  214. X[8<fffffffffffffdff>]
  215. X[8<ffffffffffffffff>]]
  216. X[%mg
  217. X[8<8000000000000000>]
  218. X[8<0822080080228000>]
  219. X[8<0204081020408001>]
  220. X[8<40e0400000000000>]
  221. X[8<66999966>]
  222. X[8<8001000010080000>]
  223. X[8<81c36666c3810000>]
  224. X[8<f0e0c08000000000>]
  225. X[16<07c00f801f003e007c00f800f001e003c007800f001f003e007c00f801f003e0>]
  226. X[16<1f000f8007c003e001f000f8007c003e001f800fc007e003f001f8007c003e00>]
  227. X[8<c3c300000000c3c3>]
  228. X[16<0040008001000200040008001000200040008000000100020004000800100020>]
  229. X[16<0040002000100008000400020001800040002000100008000400020001000080>]
  230. X[16<1fc03fe07df0f8f8f07de03fc01f800fc01fe03ff07df8f87df03fe01fc00f80>]
  231. X[8<80>]
  232. X[8<8040201000000000>]
  233. X[8<84cc000048cc0000>]
  234. X[8<9900009900000000>]
  235. X[8<08040201804020100800020180002010>]
  236. X[8<2418814242811824>]
  237. X[8<66999966>]
  238. X[8<8000000008000000>]
  239. X[8<70f8d8f870000000>]
  240. X[8<0814224180402010>]
  241. X[8<aa00440a11a04400>]
  242. X[8<018245aa45820100>]
  243. X[8<221c224180808041>]
  244. X[8<88000000>]
  245. X[8<0855800080550800>]
  246. X[8<2844004482440044>]
  247. X[8<0810204080412214>]
  248. X[8<00>]]]def
  249. X/Dfill{
  250. X transform /maxy exch def /maxx exch def
  251. X transform /miny exch def /minx exch def
  252. X minx maxx gt{/minx maxx /maxx minx def def}if
  253. X miny maxy gt{/miny maxy /maxy miny def def}if
  254. X Dpatterns Dstipple 1 sub get exch 1 sub get
  255. X aload pop /stip exch def /stipw exch def /stiph 128 def
  256. X /imatrix[stipw 0 0 stiph 0 0]def
  257. X /tmatrix[stipw 0 0 stiph 0 0]def
  258. X /minx minx cvi stiph idiv stiph mul def
  259. X /miny miny cvi stipw idiv stipw mul def
  260. X gsave eoclip 0 setgray
  261. X miny stiph maxy{
  262. X  tmatrix exch 5 exch put
  263. X  minx stipw maxx{
  264. X   tmatrix exch 4 exch put tmatrix setmatrix
  265. X   stipw stiph true imatrix {stip} imagemask
  266. X  }for
  267. X }for
  268. X grestore
  269. X}def
  270. X/Dp{Dfill Dstroke}def
  271. X/DP{Dfill currentpoint newpath moveto}def
  272. Xend
  273. X
  274. X/ditstart{$DITroff begin
  275. X /nfonts 60 def            % NFONTS makedev/ditroff dependent!
  276. X /fonts[nfonts{0}repeat]def
  277. X /fontnames[nfonts{()}repeat]def
  278. X/docsave save def
  279. X}def
  280. X
  281. X% character outcalls
  282. X/oc{
  283. X /pswid exch def /cc exch def /name exch def
  284. X /ditwid pswid fontsize mul resolution mul 72000 div def
  285. X /ditsiz fontsize resolution mul 72 div def
  286. X ocprocs name known{ocprocs name get exec}{name cb}ifelse
  287. X}def
  288. X/fractm [.65 0 0 .6 0 0] def
  289. X/fraction{
  290. X /fden exch def /fnum exch def gsave /cf currentfont def
  291. X cf fractm makefont setfont 0 .3 dm 2 copy neg rmoveto
  292. X fnum show rmoveto currentfont cf setfont(\244)show setfont fden show 
  293. X grestore ditwid 0 rmoveto
  294. X}def
  295. X/oce{grestore ditwid 0 rmoveto}def
  296. X/dm{ditsiz mul}def
  297. X/ocprocs 50 dict def ocprocs begin
  298. X(14){(1)(4)fraction}def
  299. X(12){(1)(2)fraction}def
  300. X(34){(3)(4)fraction}def
  301. X(13){(1)(3)fraction}def
  302. X(23){(2)(3)fraction}def
  303. X(18){(1)(8)fraction}def
  304. X(38){(3)(8)fraction}def
  305. X(58){(5)(8)fraction}def
  306. X(78){(7)(8)fraction}def
  307. X(sr){gsave 0 .06 dm rmoveto(\326)show oce}def
  308. X(is){gsave 0 .15 dm rmoveto(\362)show oce}def
  309. X(->){gsave 0 .02 dm rmoveto(\256)show oce}def
  310. X(<-){gsave 0 .02 dm rmoveto(\254)show oce}def
  311. X(==){gsave 0 .05 dm rmoveto(\272)show oce}def
  312. X(uc){gsave currentpoint 400 .009 dm mul add translate
  313. X     8 -8 scale ucseal oce}def
  314. Xend
  315. X
  316. X% an attempt at a PostScript FONT to implement ditroff special chars
  317. X% this will enable us to 
  318. X%    cache the little buggers
  319. X%    generate faster, more compact PS out of psdit
  320. X%    confuse everyone (including myself)!
  321. X50 dict dup begin
  322. X/FontType 3 def
  323. X/FontName /DIThacks def
  324. X/FontMatrix [.001 0 0 .001 0 0] def
  325. X/FontBBox [-260 -260 900 900] def% a lie but ...
  326. X/Encoding 256 array def
  327. X0 1 255{Encoding exch /.notdef put}for
  328. XEncoding
  329. X dup 8#040/space put %space
  330. X dup 8#110/rc put %right ceil
  331. X dup 8#111/lt put %left  top curl
  332. X dup 8#112/bv put %bold vert
  333. X dup 8#113/lk put %left  mid curl
  334. X dup 8#114/lb put %left  bot curl
  335. X dup 8#115/rt put %right top curl
  336. X dup 8#116/rk put %right mid curl
  337. X dup 8#117/rb put %right bot curl
  338. X dup 8#120/rf put %right floor
  339. X dup 8#121/lf put %left  floor
  340. X dup 8#122/lc put %left  ceil
  341. X dup 8#140/sq put %square
  342. X dup 8#141/bx put %box
  343. X dup 8#142/ci put %circle
  344. X dup 8#143/br put %box rule
  345. X dup 8#144/rn put %root extender
  346. X dup 8#145/vr put %vertical rule
  347. X dup 8#146/ob put %outline bullet
  348. X dup 8#147/bu put %bullet
  349. X dup 8#150/ru put %rule
  350. X dup 8#151/ul put %underline
  351. X pop
  352. X/DITfd 100 dict def
  353. X/BuildChar{0 begin
  354. X /cc exch def /fd exch def
  355. X /charname fd /Encoding get cc get def
  356. X /charwid fd /Metrics get charname get def
  357. X /charproc fd /CharProcs get charname get def
  358. X charwid 0 fd /FontBBox get aload pop setcachedevice
  359. X 2 setlinejoin 40 setlinewidth
  360. X newpath 0 0 moveto gsave charproc grestore
  361. X end}def
  362. X/BuildChar load 0 DITfd put
  363. X/CharProcs 50 dict def
  364. XCharProcs begin
  365. X/space{}def
  366. X/.notdef{}def
  367. X/ru{500 0 rls}def
  368. X/rn{0 840 moveto 500 0 rls}def
  369. X/vr{0 800 moveto 0 -770 rls}def
  370. X/bv{0 800 moveto 0 -1000 rls}def
  371. X/br{0 840 moveto 0 -1000 rls}def
  372. X/ul{0 -140 moveto 500 0 rls}def
  373. X/ob{200 250 rmoveto currentpoint newpath 200 0 360 arc closepath stroke}def
  374. X/bu{200 250 rmoveto currentpoint newpath 200 0 360 arc closepath fill}def
  375. X/sq{80 0 rmoveto currentpoint dround newpath moveto
  376. X    640 0 rlineto 0 640 rlineto -640 0 rlineto closepath stroke}def
  377. X/bx{80 0 rmoveto currentpoint dround newpath moveto
  378. X    640 0 rlineto 0 640 rlineto -640 0 rlineto closepath fill}def
  379. X/ci{500 360 rmoveto currentpoint newpath 333 0 360 arc
  380. X    50 setlinewidth stroke}def
  381. X
  382. X/lt{0 -200 moveto 0 550 rlineto currx 800 2cx s4 add exch s4 a4p stroke}def
  383. X/lb{0 800 moveto 0 -550 rlineto currx -200 2cx s4 add exch s4 a4p stroke}def
  384. X/rt{0 -200 moveto 0 550 rlineto currx 800 2cx s4 sub exch s4 a4p stroke}def
  385. X/rb{0 800 moveto 0 -500 rlineto currx -200 2cx s4 sub exch s4 a4p stroke}def
  386. X/lk{0 800 moveto 0 300 -300 300 s4 arcto pop pop 1000 sub
  387. X    0 300 4 2 roll s4 a4p 0 -200 lineto stroke}def
  388. X/rk{0 800 moveto 0 300 s2 300 s4 arcto pop pop 1000 sub
  389. X    0 300 4 2 roll s4 a4p 0 -200 lineto stroke}def
  390. X/lf{0 800 moveto 0 -1000 rlineto s4 0 rls}def
  391. X/rf{0 800 moveto 0 -1000 rlineto s4 neg 0 rls}def
  392. X/lc{0 -200 moveto 0 1000 rlineto s4 0 rls}def
  393. X/rc{0 -200 moveto 0 1000 rlineto s4 neg 0 rls}def
  394. Xend
  395. X
  396. X/Metrics 50 dict def Metrics begin
  397. X/.notdef 0 def
  398. X/space 500 def
  399. X/ru 500 def
  400. X/br 0 def
  401. X/lt 416 def
  402. X/lb 416 def
  403. X/rt 416 def
  404. X/rb 416 def
  405. X/lk 416 def
  406. X/rk 416 def
  407. X/rc 416 def
  408. X/lc 416 def
  409. X/rf 416 def
  410. X/lf 416 def
  411. X/bv 416 def
  412. X/ob 350 def
  413. X/bu 350 def
  414. X/ci 750 def
  415. X/bx 750 def
  416. X/sq 750 def
  417. X/rn 500 def
  418. X/ul 500 def
  419. X/vr 0 def
  420. Xend
  421. X
  422. XDITfd begin
  423. X/s2 500 def /s4 250 def /s3 333 def
  424. X/a4p{arcto pop pop pop pop}def
  425. X/2cx{2 copy exch}def
  426. X/rls{rlineto stroke}def
  427. X/currx{currentpoint pop}def
  428. X/dround{transform round exch round exch itransform} def
  429. Xend
  430. Xend
  431. X/DIThacks exch definefont pop
  432. Xditstart
  433. X(psc)xT
  434. X576 1 1 xr
  435. X1(Times-Roman)xf 1 f
  436. X2(Times-Italic)xf 2 f
  437. X3(Times-Bold)xf 3 f
  438. X4(Times-BoldItalic)xf 4 f
  439. X5(Helvetica)xf 5 f
  440. X6(Helvetica-Bold)xf 6 f
  441. X7(Courier)xf 7 f
  442. X8(Courier-Bold)xf 8 f
  443. X9(Symbol)xf 9 f
  444. X10(DIThacks)xf 10 f
  445. X10 s
  446. X1 f
  447. Xxi
  448. X%%EndProlog
  449. X
  450. X%%Page: 1 1
  451. X10 s 10 xH 0 xS 1 f
  452. X3 f
  453. X22 s
  454. X1249 626(A)N
  455. X1420(N)X
  456. X1547(ew)X
  457. X1796(H)X
  458. X1933(ashing)X
  459. X2467(P)X
  460. X2574(ackage)X
  461. X3136(for)X
  462. X3405(U)X
  463. X3532(N)X
  464. X3659(IX)X
  465. X2 f
  466. X20 s
  467. X3855 562(1)N
  468. X1 f
  469. X12 s
  470. X1607 779(Margo)N
  471. X1887(Seltzer)X
  472. X9 f
  473. X2179(-)X
  474. X1 f
  475. X2256(University)X
  476. X2686(of)X
  477. X2790(California,)X
  478. X3229(Berkeley)X
  479. X2015 875(Ozan)N
  480. X2242(Yigit)X
  481. X9 f
  482. X2464(-)X
  483. X1 f
  484. X2541(York)X
  485. X2762(University)X
  486. X3 f
  487. X2331 1086(ABSTRACT)N
  488. X1 f
  489. X10 s
  490. X1152 1222(UNIX)N
  491. X1385(support)X
  492. X1657(of)X
  493. X1756(disk)X
  494. X1921(oriented)X
  495. X2216(hashing)X
  496. X2497(was)X
  497. X2654(originally)X
  498. X2997(provided)X
  499. X3314(by)X
  500. X2 f
  501. X3426(dbm)X
  502. X1 f
  503. X3595([ATT79])X
  504. X3916(and)X
  505. X1152 1310(subsequently)N
  506. X1595(improved)X
  507. X1927(upon)X
  508. X2112(in)X
  509. X2 f
  510. X2199(ndbm)X
  511. X1 f
  512. X2402([BSD86].)X
  513. X2735(In)X
  514. X2826(AT&T)X
  515. X3068(System)X
  516. X3327(V,)X
  517. X3429(in-memory)X
  518. X3809(hashed)X
  519. X1152 1398(storage)N
  520. X1420(and)X
  521. X1572(access)X
  522. X1814(support)X
  523. X2090(was)X
  524. X2251(added)X
  525. X2479(in)X
  526. X2577(the)X
  527. X2 f
  528. X2711(hsearch)X
  529. X1 f
  530. X3000(library)X
  531. X3249(routines)X
  532. X3542([ATT85].)X
  533. X3907(The)X
  534. X1152 1486(result)N
  535. X1367(is)X
  536. X1457(a)X
  537. X1530(system)X
  538. X1789(with)X
  539. X1968(two)X
  540. X2125(incompatible)X
  541. X2580(hashing)X
  542. X2865(schemes,)X
  543. X3193(each)X
  544. X3377(with)X
  545. X3555(its)X
  546. X3666(own)X
  547. X3840(set)X
  548. X3965(of)X
  549. X1152 1574(shortcomings.)N
  550. X1152 1688(This)N
  551. X1316(paper)X
  552. X1517(presents)X
  553. X1802(the)X
  554. X1922(design)X
  555. X2152(and)X
  556. X2289(performance)X
  557. X2717(characteristics)X
  558. X3198(of)X
  559. X3286(a)X
  560. X3343(new)X
  561. X3498(hashing)X
  562. X3768(package)X
  563. X1152 1776(providing)N
  564. X1483(a)X
  565. X1539(superset)X
  566. X1822(of)X
  567. X1909(the)X
  568. X2027(functionality)X
  569. X2456(provided)X
  570. X2761(by)X
  571. X2 f
  572. X2861(dbm)X
  573. X1 f
  574. X3019(and)X
  575. X2 f
  576. X3155(hsearch)X
  577. X1 f
  578. X3409(.)X
  579. X3469(The)X
  580. X3614(new)X
  581. X3768(package)X
  582. X1152 1864(uses)N
  583. X1322(linear)X
  584. X1537(hashing)X
  585. X1818(to)X
  586. X1912(provide)X
  587. X2189(ef\256cient)X
  588. X2484(support)X
  589. X2755(of)X
  590. X2853(both)X
  591. X3026(memory)X
  592. X3324(based)X
  593. X3538(and)X
  594. X3685(disk)X
  595. X3849(based)X
  596. X1152 1952(hash)N
  597. X1319(tables)X
  598. X1526(with)X
  599. X1688(performance)X
  600. X2115(superior)X
  601. X2398(to)X
  602. X2480(both)X
  603. X2 f
  604. X2642(dbm)X
  605. X1 f
  606. X2800(and)X
  607. X2 f
  608. X2936(hsearch)X
  609. X1 f
  610. X3210(under)X
  611. X3413(most)X
  612. X3588(conditions.)X
  613. X3 f
  614. X1380 2128(Introduction)N
  615. X1 f
  616. X892 2260(Current)N
  617. X1196(UNIX)X
  618. X1456(systems)X
  619. X1768(offer)X
  620. X1984(two)X
  621. X2163(forms)X
  622. X2409(of)X
  623. X720 2348(hashed)N
  624. X973(data)X
  625. X1137(access.)X
  626. X2 f
  627. X1413(Dbm)X
  628. X1 f
  629. X1599(and)X
  630. X1745(its)X
  631. X1850(derivatives)X
  632. X2231(provide)X
  633. X720 2436(keyed)N
  634. X939(access)X
  635. X1171(to)X
  636. X1259(disk)X
  637. X1418(resident)X
  638. X1698(data)X
  639. X1858(while)X
  640. X2 f
  641. X2062(hsearch)X
  642. X1 f
  643. X2342(pro-)X
  644. X720 2524(vides)N
  645. X929(access)X
  646. X1175(for)X
  647. X1309(memory)X
  648. X1616(resident)X
  649. X1910(data.)X
  650. X2124(These)X
  651. X2356(two)X
  652. X720 2612(access)N
  653. X979(methods)X
  654. X1302(are)X
  655. X1453(incompatible)X
  656. X1923(in)X
  657. X2037(that)X
  658. X2209(memory)X
  659. X720 2700(resident)N
  660. X1011(hash)X
  661. X1195(tables)X
  662. X1419(may)X
  663. X1593(not)X
  664. X1731(be)X
  665. X1843(stored)X
  666. X2075(on)X
  667. X2191(disk)X
  668. X2360(and)X
  669. X720 2788(disk)N
  670. X884(resident)X
  671. X1169(tables)X
  672. X1387(cannot)X
  673. X1632(be)X
  674. X1739(read)X
  675. X1909(into)X
  676. X2063(memory)X
  677. X2360(and)X
  678. X720 2876(accessed)N
  679. X1022(using)X
  680. X1215(the)X
  681. X1333(in-memory)X
  682. X1709(routines.)X
  683. X2 f
  684. X892 2990(Dbm)N
  685. X1 f
  686. X1091(has)X
  687. X1241(several)X
  688. X1512(shortcomings.)X
  689. X2026(Since)X
  690. X2247(data)X
  691. X2423(is)X
  692. X720 3078(assumed)N
  693. X1032(to)X
  694. X1130(be)X
  695. X1242(disk)X
  696. X1411(resident,)X
  697. X1721(each)X
  698. X1905(access)X
  699. X2146(requires)X
  700. X2440(a)X
  701. X720 3166(system)N
  702. X963(call,)X
  703. X1120(and)X
  704. X1257(almost)X
  705. X1491(certainly,)X
  706. X1813(a)X
  707. X1869(disk)X
  708. X2022(operation.)X
  709. X2365(For)X
  710. X720 3254(extremely)N
  711. X1072(large)X
  712. X1264(databases,)X
  713. X1623(where)X
  714. X1851(caching)X
  715. X2131(is)X
  716. X2214(unlikely)X
  717. X720 3342(to)N
  718. X810(be)X
  719. X914(effective,)X
  720. X1244(this)X
  721. X1386(is)X
  722. X1466(acceptable,)X
  723. X1853(however,)X
  724. X2177(when)X
  725. X2378(the)X
  726. X720 3430(database)N
  727. X1022(is)X
  728. X1100(small)X
  729. X1298(\(i.e.)X
  730. X1447(the)X
  731. X1569(password)X
  732. X1896(\256le\),)X
  733. X2069(performance)X
  734. X720 3518(improvements)N
  735. X1204(can)X
  736. X1342(be)X
  737. X1443(obtained)X
  738. X1744(through)X
  739. X2018(caching)X
  740. X2293(pages)X
  741. X720 3606(of)N
  742. X818(the)X
  743. X947(database)X
  744. X1255(in)X
  745. X1348(memory.)X
  746. X1685(In)X
  747. X1782(addition,)X
  748. X2 f
  749. X2094(dbm)X
  750. X1 f
  751. X2262(cannot)X
  752. X720 3694(store)N
  753. X902(data)X
  754. X1062(items)X
  755. X1261(whose)X
  756. X1492(total)X
  757. X1660(key)X
  758. X1802(and)X
  759. X1943(data)X
  760. X2102(size)X
  761. X2252(exceed)X
  762. X720 3782(the)N
  763. X850(page)X
  764. X1034(size)X
  765. X1191(of)X
  766. X1290(the)X
  767. X1420(hash)X
  768. X1599(table.)X
  769. X1827(Similarly,)X
  770. X2176(if)X
  771. X2257(two)X
  772. X2409(or)X
  773. X720 3870(more)N
  774. X907(keys)X
  775. X1076(produce)X
  776. X1357(the)X
  777. X1477(same)X
  778. X1664(hash)X
  779. X1833(value)X
  780. X2029(and)X
  781. X2166(their)X
  782. X2334(total)X
  783. X720 3958(size)N
  784. X876(exceeds)X
  785. X1162(the)X
  786. X1291(page)X
  787. X1474(size,)X
  788. X1650(the)X
  789. X1779(table)X
  790. X1966(cannot)X
  791. X2210(store)X
  792. X2396(all)X
  793. X720 4046(the)N
  794. X838(colliding)X
  795. X1142(keys.)X
  796. X892 4160(The)N
  797. X1050(in-memory)X
  798. X2 f
  799. X1439(hsearch)X
  800. X1 f
  801. X1725(routines)X
  802. X2015(have)X
  803. X2199(different)X
  804. X720 4248(shortcomings.)N
  805. X1219(First,)X
  806. X1413(the)X
  807. X1539(notion)X
  808. X1771(of)X
  809. X1865(a)X
  810. X1928(single)X
  811. X2146(hash)X
  812. X2320(table)X
  813. X720 4336(is)N
  814. X807(embedded)X
  815. X1171(in)X
  816. X1266(the)X
  817. X1397(interface,)X
  818. X1732(preventing)X
  819. X2108(an)X
  820. X2217(applica-)X
  821. X720 4424(tion)N
  822. X902(from)X
  823. X1116(accessing)X
  824. X1482(multiple)X
  825. X1806(tables)X
  826. X2050(concurrently.)X
  827. X720 4512(Secondly,)N
  828. X1063(the)X
  829. X1186(routine)X
  830. X1438(to)X
  831. X1525(create)X
  832. X1743(a)X
  833. X1804(hash)X
  834. X1976(table)X
  835. X2157(requires)X
  836. X2440(a)X
  837. X720 4600(parameter)N
  838. X1066(which)X
  839. X1286(declares)X
  840. X1573(the)X
  841. X1694(size)X
  842. X1842(of)X
  843. X1932(the)X
  844. X2053(hash)X
  845. X2223(table.)X
  846. X2422(If)X
  847. X720 4688(this)N
  848. X856(size)X
  849. X1001(is)X
  850. X1074(set)X
  851. X1183(too)X
  852. X1305(low,)X
  853. X1465(performance)X
  854. X1892(degradation)X
  855. X2291(or)X
  856. X2378(the)X
  857. X720 4776(inability)N
  858. X1008(to)X
  859. X1092(add)X
  860. X1230(items)X
  861. X1425(to)X
  862. X1509(the)X
  863. X1628(table)X
  864. X1805(may)X
  865. X1964(result.)X
  866. X2223(In)X
  867. X2311(addi-)X
  868. X720 4864(tion,)N
  869. X2 f
  870. X910(hsearch)X
  871. X1 f
  872. X1210(requires)X
  873. X1515(that)X
  874. X1681(the)X
  875. X1825(application)X
  876. X2226(allocate)X
  877. X720 4952(memory)N
  878. X1037(for)X
  879. X1181(the)X
  880. X1329(key)X
  881. X1495(and)X
  882. X1661(data)X
  883. X1845(items.)X
  884. X2108(Lastly,)X
  885. X2378(the)X
  886. X2 f
  887. X720 5040(hsearch)N
  888. X1 f
  889. X1013(routines)X
  890. X1310(provide)X
  891. X1594(no)X
  892. X1713(interface)X
  893. X2034(to)X
  894. X2135(store)X
  895. X2329(hash)X
  896. X720 5128(tables)N
  897. X927(on)X
  898. X1027(disk.)X
  899. X16 s
  900. X720 5593 MXY
  901. X864 0 Dl
  902. X2 f
  903. X8 s
  904. X760 5648(1)N
  905. X1 f
  906. X9 s
  907. X5673(UNIX)Y
  908. X990(is)X
  909. X1056(a)X
  910. X1106(registered)X
  911. X1408(trademark)X
  912. X1718(of)X
  913. X1796(AT&T.)X
  914. X10 s
  915. X2878 2128(The)N
  916. X3032(goal)X
  917. X3199(of)X
  918. X3295(our)X
  919. X3431(work)X
  920. X3625(was)X
  921. X3779(to)X
  922. X3870(design)X
  923. X4108(and)X
  924. X4253(imple-)X
  925. X2706 2216(ment)N
  926. X2900(a)X
  927. X2970(new)X
  928. X3138(package)X
  929. X3436(that)X
  930. X3590(provides)X
  931. X3899(a)X
  932. X3968(superset)X
  933. X4264(of)X
  934. X4364(the)X
  935. X2706 2304(functionality)N
  936. X3144(of)X
  937. X3240(both)X
  938. X2 f
  939. X3411(dbm)X
  940. X1 f
  941. X3578(and)X
  942. X2 f
  943. X3723(hsearch)X
  944. X1 f
  945. X3977(.)X
  946. X4045(The)X
  947. X4198(package)X
  948. X2706 2392(had)N
  949. X2871(to)X
  950. X2982(overcome)X
  951. X3348(the)X
  952. X3495(interface)X
  953. X3826(shortcomings)X
  954. X4306(cited)X
  955. X2706 2480(above)N
  956. X2930(and)X
  957. X3078(its)X
  958. X3185(implementation)X
  959. X3719(had)X
  960. X3867(to)X
  961. X3961(provide)X
  962. X4238(perfor-)X
  963. X2706 2568(mance)N
  964. X2942(equal)X
  965. X3142(or)X
  966. X3235(superior)X
  967. X3524(to)X
  968. X3612(that)X
  969. X3758(of)X
  970. X3851(the)X
  971. X3975(existing)X
  972. X4253(imple-)X
  973. X2706 2656(mentations.)N
  974. X3152(In)X
  975. X3274(order)X
  976. X3498(to)X
  977. X3614(provide)X
  978. X3913(a)X
  979. X4003(compact)X
  980. X4329(disk)X
  981. X2706 2744(representation,)N
  982. X3224(graceful)X
  983. X3531(table)X
  984. X3729(growth,)X
  985. X4018(and)X
  986. X4176(expected)X
  987. X2706 2832(constant)N
  988. X3033(time)X
  989. X3234(performance,)X
  990. X3720(we)X
  991. X3873(selected)X
  992. X4191(Litwin's)X
  993. X2706 2920(linear)N
  994. X2923(hashing)X
  995. X3206(algorithm)X
  996. X3551([LAR88,)X
  997. X3872(LIT80].)X
  998. X4178(We)X
  999. X4324(then)X
  1000. X2706 3008(enhanced)N
  1001. X3037(the)X
  1002. X3161(algorithm)X
  1003. X3498(to)X
  1004. X3586(handle)X
  1005. X3826(page)X
  1006. X4004(over\257ows)X
  1007. X4346(and)X
  1008. X2706 3096(large)N
  1009. X2900(key)X
  1010. X3049(handling)X
  1011. X3362(with)X
  1012. X3537(a)X
  1013. X3606(single)X
  1014. X3830(mechanism,)X
  1015. X4248(named)X
  1016. X2706 3184(buddy-in-waiting.)N
  1017. X3 f
  1018. X2975 3338(Existing)N
  1019. X3274(UNIX)X
  1020. X3499(Hashing)X
  1021. X3802(Techniques)X
  1022. X1 f
  1023. X2878 3470(Over)N
  1024. X3076(the)X
  1025. X3210(last)X
  1026. X3357(decade,)X
  1027. X3637(several)X
  1028. X3901(dynamic)X
  1029. X4213(hashing)X
  1030. X2706 3558(schemes)N
  1031. X3000(have)X
  1032. X3174(been)X
  1033. X3348(developed)X
  1034. X3700(for)X
  1035. X3816(the)X
  1036. X3936(UNIX)X
  1037. X4159(timeshar-)X
  1038. X2706 3646(ing)N
  1039. X2856(system,)X
  1040. X3146(starting)X
  1041. X3433(with)X
  1042. X3622(the)X
  1043. X3767(inclusion)X
  1044. X4107(of)X
  1045. X2 f
  1046. X4221(dbm)X
  1047. X1 f
  1048. X4359(,)X
  1049. X4426(a)X
  1050. X2706 3734(minimal)N
  1051. X3008(database)X
  1052. X3321(library)X
  1053. X3571(written)X
  1054. X3834(by)X
  1055. X3950(Ken)X
  1056. X4120(Thompson)X
  1057. X2706 3822([THOM90],)N
  1058. X3141(in)X
  1059. X3248(the)X
  1060. X3391(Seventh)X
  1061. X3694(Edition)X
  1062. X3974(UNIX)X
  1063. X4220(system.)X
  1064. X2706 3910(Since)N
  1065. X2916(then,)X
  1066. X3106(an)X
  1067. X3214(extended)X
  1068. X3536(version)X
  1069. X3804(of)X
  1070. X3903(the)X
  1071. X4032(same)X
  1072. X4228(library,)X
  1073. X2 f
  1074. X2706 3998(ndbm)N
  1075. X1 f
  1076. X2884(,)X
  1077. X2933(and)X
  1078. X3078(a)X
  1079. X3142(public-domain)X
  1080. X3637(clone)X
  1081. X3839(of)X
  1082. X3934(the)X
  1083. X4060(latter,)X
  1084. X2 f
  1085. X4273(sdbm)X
  1086. X1 f
  1087. X4442(,)X
  1088. X2706 4086(have)N
  1089. X2902(been)X
  1090. X3098(developed.)X
  1091. X3491(Another)X
  1092. X3797 0.1645(interface-compatible)AX
  1093. X2706 4174(library)N
  1094. X2 f
  1095. X2950(gdbm)X
  1096. X1 f
  1097. X3128(,)X
  1098. X3178(was)X
  1099. X3333(recently)X
  1100. X3622(made)X
  1101. X3826(available)X
  1102. X4145(as)X
  1103. X4241(part)X
  1104. X4395(of)X
  1105. X2706 4262(the)N
  1106. X2829(Free)X
  1107. X2997(Software)X
  1108. X3312(Foundation's)X
  1109. X3759(\(FSF\))X
  1110. X3970(software)X
  1111. X4271(distri-)X
  1112. X2706 4350(bution.)N
  1113. X2878 4464(All)N
  1114. X3017(of)X
  1115. X3121(these)X
  1116. X3323(implementations)X
  1117. X3893(are)X
  1118. X4029(based)X
  1119. X4248(on)X
  1120. X4364(the)X
  1121. X2706 4552(idea)N
  1122. X2871(of)X
  1123. X2969(revealing)X
  1124. X3299(just)X
  1125. X3445(enough)X
  1126. X3711(bits)X
  1127. X3856(of)X
  1128. X3953(a)X
  1129. X4019(hash)X
  1130. X4196(value)X
  1131. X4400(to)X
  1132. X2706 4640(locate)N
  1133. X2920(a)X
  1134. X2978(page)X
  1135. X3151(in)X
  1136. X3234(a)X
  1137. X3291(single)X
  1138. X3503(access.)X
  1139. X3770(While)X
  1140. X2 f
  1141. X3987(dbm/ndbm)X
  1142. X1 f
  1143. X4346(and)X
  1144. X2 f
  1145. X2706 4728(sdbm)N
  1146. X1 f
  1147. X2908(map)X
  1148. X3079(the)X
  1149. X3210(hash)X
  1150. X3390(value)X
  1151. X3597(directly)X
  1152. X3874(to)X
  1153. X3968(a)X
  1154. X4036(disk)X
  1155. X4201(address,)X
  1156. X2 f
  1157. X2706 4816(gdbm)N
  1158. X1 f
  1159. X2921(uses)X
  1160. X3096(the)X
  1161. X3231(hash)X
  1162. X3414(value)X
  1163. X3624(to)X
  1164. X3722(index)X
  1165. X3936(into)X
  1166. X4096(a)X
  1167. X2 f
  1168. X4168(directory)X
  1169. X1 f
  1170. X2706 4904([ENB88])N
  1171. X3020(containing)X
  1172. X3378(disk)X
  1173. X3531(addresses.)X
  1174. X2878 5018(The)N
  1175. X2 f
  1176. X3033(hsearch)X
  1177. X1 f
  1178. X3317(routines)X
  1179. X3605(in)X
  1180. X3697(System)X
  1181. X3962(V)X
  1182. X4049(are)X
  1183. X4177(designed)X
  1184. X2706 5106(to)N
  1185. X2804(provide)X
  1186. X3085(memory-resident)X
  1187. X3669(hash)X
  1188. X3852(tables.)X
  1189. X4115(Since)X
  1190. X4328(data)X
  1191. X2706 5194(access)N
  1192. X2948(does)X
  1193. X3131(not)X
  1194. X3269(require)X
  1195. X3533(disk)X
  1196. X3702(access,)X
  1197. X3964(simple)X
  1198. X4213(hashing)X
  1199. X2706 5282(schemes)N
  1200. X3010(which)X
  1201. X3238(may)X
  1202. X3408(require)X
  1203. X3667(multiple)X
  1204. X3964(probes)X
  1205. X4209(into)X
  1206. X4364(the)X
  1207. X2706 5370(table)N
  1208. X2889(are)X
  1209. X3015(used.)X
  1210. X3209(A)X
  1211. X3294(more)X
  1212. X3486(interesting)X
  1213. X3851(version)X
  1214. X4114(of)X
  1215. X2 f
  1216. X4208(hsearch)X
  1217. X1 f
  1218. X2706 5458(is)N
  1219. X2784(a)X
  1220. X2845(public)X
  1221. X3070(domain)X
  1222. X3335(library,)X
  1223. X2 f
  1224. X3594(dynahash)X
  1225. X1 f
  1226. X3901(,)X
  1227. X3945(that)X
  1228. X4089(implements)X
  1229. X2706 5546(Larson's)N
  1230. X3036(in-memory)X
  1231. X3440(adaptation)X
  1232. X3822([LAR88])X
  1233. X4164(of)X
  1234. X4279(linear)X
  1235. X2706 5634(hashing)N
  1236. X2975([LIT80].)X
  1237. X3 f
  1238. X720 5960(USENIX)N
  1239. X9 f
  1240. X1042(-)X
  1241. X3 f
  1242. X1106(Winter)X
  1243. X1371('91)X
  1244. X9 f
  1245. X1498(-)X
  1246. X3 f
  1247. X1562(Dallas,)X
  1248. X1815(TX)X
  1249. X1 f
  1250. X4424(1)X
  1251. X
  1252. X2 p
  1253. X%%Page: 2 2
  1254. X10 s 10 xH 0 xS 1 f
  1255. X3 f
  1256. X432 258(A)N
  1257. X510(New)X
  1258. X682(Hashing)X
  1259. X985(Package)X
  1260. X1290(for)X
  1261. X1413(UNIX)X
  1262. X3663(Seltzer)X
  1263. X3920(&)X
  1264. X4007(Yigit)X
  1265. X2 f
  1266. X1074 538(dbm)N
  1267. X1 f
  1268. X1232(and)X
  1269. X2 f
  1270. X1368(ndbm)X
  1271. X1 f
  1272. X604 670(The)N
  1273. X2 f
  1274. X760(dbm)X
  1275. X1 f
  1276. X928(and)X
  1277. X2 f
  1278. X1074(ndbm)X
  1279. X1 f
  1280. X1282(library)X
  1281. X1526(implementations)X
  1282. X2089(are)X
  1283. X432 758(based)N
  1284. X667(on)X
  1285. X799(the)X
  1286. X949(same)X
  1287. X1166(algorithm)X
  1288. X1529(by)X
  1289. X1661(Ken)X
  1290. X1846(Thompson)X
  1291. X432 846([THOM90,)N
  1292. X824(TOR88,)X
  1293. X1113(WAL84],)X
  1294. X1452(but)X
  1295. X1582(differ)X
  1296. X1789(in)X
  1297. X1879(their)X
  1298. X2054(pro-)X
  1299. X432 934(grammatic)N
  1300. X801(interfaces.)X
  1301. X1160(The)X
  1302. X1311(latter)X
  1303. X1502(is)X
  1304. X1581(a)X
  1305. X1643(modi\256ed)X
  1306. X1952(version)X
  1307. X432 1022(of)N
  1308. X533(the)X
  1309. X665(former)X
  1310. X918(which)X
  1311. X1148(adds)X
  1312. X1328(support)X
  1313. X1601(for)X
  1314. X1728(multiple)X
  1315. X2027(data-)X
  1316. X432 1110(bases)N
  1317. X634(to)X
  1318. X724(be)X
  1319. X828(open)X
  1320. X1011(concurrently.)X
  1321. X1484(The)X
  1322. X1636(discussion)X
  1323. X1996(of)X
  1324. X2090(the)X
  1325. X432 1198(algorithm)N
  1326. X774(that)X
  1327. X925(follows)X
  1328. X1196(is)X
  1329. X1280(applicable)X
  1330. X1640(to)X
  1331. X1732(both)X
  1332. X2 f
  1333. X1904(dbm)X
  1334. X1 f
  1335. X2072(and)X
  1336. X2 f
  1337. X432 1286(ndbm)N
  1338. X1 f
  1339. X610(.)X
  1340. X604 1400(The)N
  1341. X760(basic)X
  1342. X956(structure)X
  1343. X1268(of)X
  1344. X2 f
  1345. X1366(dbm)X
  1346. X1 f
  1347. X1535(calls)X
  1348. X1712(for)X
  1349. X1836(\256xed-sized)X
  1350. X432 1488(disk)N
  1351. X612(blocks)X
  1352. X868(\(buckets\))X
  1353. X1214(and)X
  1354. X1377(an)X
  1355. X2 f
  1356. X1499(access)X
  1357. X1 f
  1358. X1755(function)X
  1359. X2068(that)X
  1360. X432 1576(maps)N
  1361. X623(a)X
  1362. X681(key)X
  1363. X819(to)X
  1364. X902(a)X
  1365. X959(bucket.)X
  1366. X1234(The)X
  1367. X1380(interface)X
  1368. X1683(routines)X
  1369. X1962(use)X
  1370. X2090(the)X
  1371. X2 f
  1372. X432 1664(access)N
  1373. X1 f
  1374. X673(function)X
  1375. X970(to)X
  1376. X1062(obtain)X
  1377. X1292(the)X
  1378. X1420(appropriate)X
  1379. X1816(bucket)X
  1380. X2060(in)X
  1381. X2152(a)X
  1382. X432 1752(single)N
  1383. X643(disk)X
  1384. X796(access.)X
  1385. X604 1866(Within)N
  1386. X869(the)X
  1387. X2 f
  1388. X1010(access)X
  1389. X1 f
  1390. X1263(function,)X
  1391. X1593(a)X
  1392. X1672(bit-randomizing)X
  1393. X432 1954(hash)N
  1394. X610(function)X
  1395. X2 f
  1396. X8 s
  1397. X877 1929(2)N
  1398. X1 f
  1399. X10 s
  1400. X940 1954(is)N
  1401. X1024(used)X
  1402. X1202(to)X
  1403. X1294(convert)X
  1404. X1565(a)X
  1405. X1631(key)X
  1406. X1777(into)X
  1407. X1931(a)X
  1408. X1997(32-bit)X
  1409. X432 2042(hash)N
  1410. X605(value.)X
  1411. X825(Out)X
  1412. X971(of)X
  1413. X1064(these)X
  1414. X1254(32)X
  1415. X1359(bits,)X
  1416. X1519(only)X
  1417. X1686(as)X
  1418. X1778(many)X
  1419. X1981(bits)X
  1420. X2121(as)X
  1421. X432 2130(necessary)N
  1422. X773(are)X
  1423. X900(used)X
  1424. X1075(to)X
  1425. X1165(determine)X
  1426. X1514(the)X
  1427. X1639(particular)X
  1428. X1974(bucket)X
  1429. X432 2218(on)N
  1430. X533(which)X
  1431. X750(a)X
  1432. X807(key)X
  1433. X944(resides.)X
  1434. X1228(An)X
  1435. X1347(in-memory)X
  1436. X1724(bitmap)X
  1437. X1967(is)X
  1438. X2041(used)X
  1439. X432 2306(to)N
  1440. X533(determine)X
  1441. X893(how)X
  1442. X1070(many)X
  1443. X1287(bits)X
  1444. X1441(are)X
  1445. X1579(required.)X
  1446. X1905(Each)X
  1447. X2104(bit)X
  1448. X432 2394(indicates)N
  1449. X746(whether)X
  1450. X1033(its)X
  1451. X1136(associated)X
  1452. X1494(bucket)X
  1453. X1736(has)X
  1454. X1871(been)X
  1455. X2051(split)X
  1456. X432 2482(yet)N
  1457. X562(\(a)X
  1458. X657(0)X
  1459. X728(indicating)X
  1460. X1079(that)X
  1461. X1230(the)X
  1462. X1359(bucket)X
  1463. X1604(has)X
  1464. X1742(not)X
  1465. X1875(yet)X
  1466. X2004(split\).)X
  1467. X432 2570(The)N
  1468. X590(use)X
  1469. X730(of)X
  1470. X830(the)X
  1471. X961(hash)X
  1472. X1141(function)X
  1473. X1441(and)X
  1474. X1590(the)X
  1475. X1720(bitmap)X
  1476. X1974(is)X
  1477. X2059(best)X
  1478. X432 2658(described)N
  1479. X769(by)X
  1480. X878(stepping)X
  1481. X1177(through)X
  1482. X1454(database)X
  1483. X1759(creation)X
  1484. X2046(with)X
  1485. X432 2746(multiple)N
  1486. X718(invocations)X
  1487. X1107(of)X
  1488. X1194(a)X
  1489. X2 f
  1490. X1250(store)X
  1491. X1 f
  1492. X1430(operation.)X
  1493. X604 2860(Initially,)N
  1494. X906(the)X
  1495. X1033(hash)X
  1496. X1209(table)X
  1497. X1394(contains)X
  1498. X1690(a)X
  1499. X1755(single)X
  1500. X1974(bucket)X
  1501. X432 2948(\(bucket)N
  1502. X711(0\),)X
  1503. X836(the)X
  1504. X972(bit)X
  1505. X1094(map)X
  1506. X1270(contains)X
  1507. X1575(a)X
  1508. X1649(single)X
  1509. X1878(bit)X
  1510. X2000(\(bit)X
  1511. X2148(0)X
  1512. X432 3036(corresponding)N
  1513. X913(to)X
  1514. X997(bucket)X
  1515. X1233(0\),)X
  1516. X1342(and)X
  1517. X1480(0)X
  1518. X1542(bits)X
  1519. X1699(of)X
  1520. X1788(a)X
  1521. X1846(hash)X
  1522. X2014(value)X
  1523. X432 3124(are)N
  1524. X560(examined)X
  1525. X901(to)X
  1526. X992(determine)X
  1527. X1342(where)X
  1528. X1568(a)X
  1529. X1633(key)X
  1530. X1778(is)X
  1531. X1860(placed)X
  1532. X2099(\(in)X
  1533. X432 3212(bucket)N
  1534. X670(0\).)X
  1535. X801(When)X
  1536. X1017(bucket)X
  1537. X1255(0)X
  1538. X1319(is)X
  1539. X1396(full,)X
  1540. X1551(its)X
  1541. X1650(bit)X
  1542. X1758(in)X
  1543. X1844(the)X
  1544. X1966(bitmap)X
  1545. X432 3300(\(bit)N
  1546. X564(0\))X
  1547. X652(is)X
  1548. X726(set,)X
  1549. X856(and)X
  1550. X993(its)X
  1551. X1089(contents)X
  1552. X1377(are)X
  1553. X1497(split)X
  1554. X1655(between)X
  1555. X1943(buckets)X
  1556. X432 3388(0)N
  1557. X499(and)X
  1558. X641(1,)X
  1559. X727(by)X
  1560. X833(considering)X
  1561. X1233(the)X
  1562. X1357(0)X
  1563. X2 f
  1564. X7 s
  1565. X3356(th)Y
  1566. X10 s
  1567. X1 f
  1568. X1480 3388(bit)N
  1569. X1590(\(the)X
  1570. X1741(lowest)X
  1571. X1976(bit)X
  1572. X2086(not)X
  1573. X432 3476(previously)N
  1574. X800(examined\))X
  1575. X1169(of)X
  1576. X1266(the)X
  1577. X1393(hash)X
  1578. X1569(value)X
  1579. X1772(for)X
  1580. X1895(each)X
  1581. X2072(key)X
  1582. X432 3564(within)N
  1583. X668(the)X
  1584. X798(bucket.)X
  1585. X1064(Given)X
  1586. X1292(a)X
  1587. X1359(well-designed)X
  1588. X1840(hash)X
  1589. X2018(func-)X
  1590. X432 3652(tion,)N
  1591. X613(approximately)X
  1592. X1112(half)X
  1593. X1273(of)X
  1594. X1376(the)X
  1595. X1510(keys)X
  1596. X1693(will)X
  1597. X1853(have)X
  1598. X2041(hash)X
  1599. X432 3740(values)N
  1600. X666(with)X
  1601. X837(the)X
  1602. X964(0)X
  1603. X2 f
  1604. X7 s
  1605. X3708(th)Y
  1606. X10 s
  1607. X1 f
  1608. X1090 3740(bit)N
  1609. X1203(set.)X
  1610. X1341(All)X
  1611. X1471(such)X
  1612. X1646(keys)X
  1613. X1821(and)X
  1614. X1965(associ-)X
  1615. X432 3828(ated)N
  1616. X586(data)X
  1617. X740(are)X
  1618. X859(moved)X
  1619. X1097(to)X
  1620. X1179(bucket)X
  1621. X1413(1,)X
  1622. X1493(and)X
  1623. X1629(the)X
  1624. X1747(rest)X
  1625. X1883(remain)X
  1626. X2126(in)X
  1627. X432 3916(bucket)N
  1628. X666(0.)X
  1629. X604 4030(After)N
  1630. X804(this)X
  1631. X949(split,)X
  1632. X1135(the)X
  1633. X1262(\256le)X
  1634. X1393(now)X
  1635. X1560(contains)X
  1636. X1856(two)X
  1637. X2005(buck-)X
  1638. X432 4118(ets,)N
  1639. X562(and)X
  1640. X699(the)X
  1641. X818(bitmap)X
  1642. X1061(contains)X
  1643. X1349(three)X
  1644. X1530(bits:)X
  1645. X1687(the)X
  1646. X1805(0)X
  1647. X2 f
  1648. X7 s
  1649. X4086(th)Y
  1650. X10 s
  1651. X1 f
  1652. X1922 4118(bit)N
  1653. X2026(is)X
  1654. X2099(set)X
  1655. X432 4206(to)N
  1656. X525(indicate)X
  1657. X810(a)X
  1658. X876(bucket)X
  1659. X1120(0)X
  1660. X1190(split)X
  1661. X1357(when)X
  1662. X1561(no)X
  1663. X1671(bits)X
  1664. X1816(of)X
  1665. X1913(the)X
  1666. X2041(hash)X
  1667. X432 4294(value)N
  1668. X648(are)X
  1669. X789(considered,)X
  1670. X1199(and)X
  1671. X1357(two)X
  1672. X1519(more)X
  1673. X1726(unset)X
  1674. X1937(bits)X
  1675. X2094(for)X
  1676. X432 4382(buckets)N
  1677. X706(0)X
  1678. X775(and)X
  1679. X920(1.)X
  1680. X1029(The)X
  1681. X1183(placement)X
  1682. X1542(of)X
  1683. X1638(an)X
  1684. X1742(incoming)X
  1685. X2072(key)X
  1686. X432 4470(now)N
  1687. X604(requires)X
  1688. X897(examination)X
  1689. X1327(of)X
  1690. X1428(the)X
  1691. X1560(0)X
  1692. X2 f
  1693. X7 s
  1694. X4438(th)Y
  1695. X10 s
  1696. X1 f
  1697. X1691 4470(bit)N
  1698. X1809(of)X
  1699. X1910(the)X
  1700. X2041(hash)X
  1701. X432 4558(value,)N
  1702. X667(and)X
  1703. X824(the)X
  1704. X963(key)X
  1705. X1119(is)X
  1706. X1212(placed)X
  1707. X1462(either)X
  1708. X1685(in)X
  1709. X1787(bucket)X
  1710. X2041(0)X
  1711. X2121(or)X
  1712. X432 4646(bucket)N
  1713. X674(1.)X
  1714. X782(If)X
  1715. X864(either)X
  1716. X1075(bucket)X
  1717. X1317(0)X
  1718. X1385(or)X
  1719. X1480(bucket)X
  1720. X1722(1)X
  1721. X1790(\256lls)X
  1722. X1937(up,)X
  1723. X2064(it)X
  1724. X2135(is)X
  1725. X432 4734(split)N
  1726. X598(as)X
  1727. X693(before,)X
  1728. X947(its)X
  1729. X1050(bit)X
  1730. X1162(is)X
  1731. X1243(set)X
  1732. X1360(in)X
  1733. X1450(the)X
  1734. X1576(bitmap,)X
  1735. X1846(and)X
  1736. X1990(a)X
  1737. X2054(new)X
  1738. X432 4822(set)N
  1739. X541(of)X
  1740. X628(unset)X
  1741. X817(bits)X
  1742. X952(are)X
  1743. X1071(added)X
  1744. X1283(to)X
  1745. X1365(the)X
  1746. X1483(bitmap.)X
  1747. X604 4936(Each)N
  1748. X791(time)X
  1749. X959(we)X
  1750. X1079(consider)X
  1751. X1376(a)X
  1752. X1437(new)X
  1753. X1596(bit)X
  1754. X1705(\(bit)X
  1755. X1841(n\),)X
  1756. X1953(we)X
  1757. X2072(add)X
  1758. X432 5024(2)N
  1759. X2 f
  1760. X7 s
  1761. X4992(n)Y
  1762. X9 f
  1763. X509(+)X
  1764. X1 f
  1765. X540(1)X
  1766. X10 s
  1767. X595 5024(bits)N
  1768. X737(to)X
  1769. X826(the)X
  1770. X951(bitmap)X
  1771. X1199(and)X
  1772. X1341(obtain)X
  1773. X1567(2)X
  1774. X2 f
  1775. X7 s
  1776. X4992(n)Y
  1777. X9 f
  1778. X1644(+)X
  1779. X1 f
  1780. X1675(1)X
  1781. X10 s
  1782. X1729 5024(more)N
  1783. X1920(address-)X
  1784. X432 5112(able)N
  1785. X595(buckets)X
  1786. X869(in)X
  1787. X960(the)X
  1788. X1087(\256le.)X
  1789. X1258(As)X
  1790. X1376(a)X
  1791. X1441(result,)X
  1792. X1668(the)X
  1793. X1795(bitmap)X
  1794. X2045(con-)X
  1795. X432 5200(tains)N
  1796. X618(the)X
  1797. X751(previous)X
  1798. X1062(2)X
  1799. X2 f
  1800. X7 s
  1801. X5168(n)Y
  1802. X9 f
  1803. X1139(+)X
  1804. X1 f
  1805. X1170(1)X
  1806. X2 f
  1807. X10 s
  1808. X9 f
  1809. X5200(-)Y
  1810. X1 f
  1811. X1242(1)X
  1812. X1317(bits)X
  1813. X1467(\(1)X
  1814. X2 f
  1815. X9 f
  1816. X1534(+)X
  1817. X1 f
  1818. X1578(2)X
  1819. X2 f
  1820. X9 f
  1821. X(+)S
  1822. X1 f
  1823. X1662(4)X
  1824. X2 f
  1825. X9 f
  1826. X(+)S
  1827. X1 f
  1828. X1746(...)X
  1829. X2 f
  1830. X9 f
  1831. X(+)S
  1832. X1 f
  1833. X1850(2)X
  1834. X2 f
  1835. X7 s
  1836. X5168(n)Y
  1837. X10 s
  1838. X1 f
  1839. X1931 5200(\))N
  1840. X1992(which)X
  1841. X432 5288(trace)N
  1842. X649(the)X
  1843. X807(entire)X
  1844. X2 f
  1845. X1050(split)X
  1846. X1247(history)X
  1847. X1 f
  1848. X1529(of)X
  1849. X1656(the)X
  1850. X1813(addressable)X
  1851. X16 s
  1852. X432 5433 MXY
  1853. X864 0 Dl
  1854. X2 f
  1855. X8 s
  1856. X472 5488(2)N
  1857. X1 f
  1858. X9 s
  1859. X523 5513(This)N
  1860. X670(bit-randomizing)X
  1861. X1153(property)X
  1862. X1416(is)X
  1863. X1482(important)X
  1864. X1780(to)X
  1865. X1854(obtain)X
  1866. X2052(radi-)X
  1867. X432 5593(cally)N
  1868. X599(different)X
  1869. X874(hash)X
  1870. X1033(values)X
  1871. X1244(for)X
  1872. X1355(nearly)X
  1873. X1562(identical)X
  1874. X1836(keys,)X
  1875. X2012(which)X
  1876. X432 5673(in)N
  1877. X506(turn)X
  1878. X640(avoids)X
  1879. X846(clustering)X
  1880. X1148(of)X
  1881. X1226(such)X
  1882. X1376(keys)X
  1883. X1526(in)X
  1884. X1600(a)X
  1885. X1650(single)X
  1886. X1840(bucket.)X
  1887. X10 s
  1888. X2418 538(buckets.)N
  1889. X2590 652(Given)N
  1890. X2809(a)X
  1891. X2868(key)X
  1892. X3007(and)X
  1893. X3146(the)X
  1894. X3267(bitmap)X
  1895. X3512(created)X
  1896. X3768(by)X
  1897. X3871(this)X
  1898. X4009(algo-)X
  1899. X2418 740(rithm,)N
  1900. X2638(we)X
  1901. X2759(\256rst)X
  1902. X2910(examine)X
  1903. X3209(bit)X
  1904. X3320(0)X
  1905. X3386(of)X
  1906. X3479(the)X
  1907. X3603(bitmap)X
  1908. X3851(\(the)X
  1909. X4002(bit)X
  1910. X4112(to)X
  1911. X2418 828(consult)N
  1912. X2673(when)X
  1913. X2871(0)X
  1914. X2934(bits)X
  1915. X3072(of)X
  1916. X3162(the)X
  1917. X3283(hash)X
  1918. X3453(value)X
  1919. X3650(are)X
  1920. X3772(being)X
  1921. X3973(exam-)X
  1922. X2418 916(ined\).)N
  1923. X2631(If)X
  1924. X2713(it)X
  1925. X2785(is)X
  1926. X2866(set)X
  1927. X2982(\(indicating)X
  1928. X3356(that)X
  1929. X3503(the)X
  1930. X3628(bucket)X
  1931. X3869(split\),)X
  1932. X4080(we)X
  1933. X2418 1004(begin)N
  1934. X2617(considering)X
  1935. X3012(the)X
  1936. X3131(bits)X
  1937. X3267(of)X
  1938. X3355(the)X
  1939. X3473(32-bit)X
  1940. X3684(hash)X
  1941. X3851(value.)X
  1942. X4085(As)X
  1943. X2418 1092(bit)N
  1944. X2525(n)X
  1945. X2587(is)X
  1946. X2662(revealed,)X
  1947. X2977(a)X
  1948. X3035(mask)X
  1949. X3226(equal)X
  1950. X3422(to)X
  1951. X3506(2)X
  1952. X2 f
  1953. X7 s
  1954. X1060(n)Y
  1955. X9 f
  1956. X3583(+)X
  1957. X1 f
  1958. X3614(1)X
  1959. X2 f
  1960. X10 s
  1961. X9 f
  1962. X1092(-)Y
  1963. X1 f
  1964. X3686(1)X
  1965. X3748(will)X
  1966. X3894(yield)X
  1967. X4076(the)X
  1968. X2418 1180(current)N
  1969. X2675(bucket)X
  1970. X2918(address.)X
  1971. X3228(Adding)X
  1972. X3496(2)X
  1973. X2 f
  1974. X7 s
  1975. X1148(n)Y
  1976. X9 f
  1977. X3573(+)X
  1978. X1 f
  1979. X3604(1)X
  1980. X2 f
  1981. X10 s
  1982. X9 f
  1983. X1180(-)Y
  1984. X1 f
  1985. X3676(1)X
  1986. X3744(to)X
  1987. X3834(the)X
  1988. X3960(bucket)X
  1989. X2418 1268(address)N
  1990. X2701(identi\256es)X
  1991. X3035(which)X
  1992. X3272(bit)X
  1993. X3397(in)X
  1994. X3500(the)X
  1995. X3639(bitmap)X
  1996. X3902(must)X
  1997. X4098(be)X
  1998. X2418 1356(checked.)N
  1999. X2743(We)X
  2000. X2876(continue)X
  2001. X3173(revealing)X
  2002. X3493(bits)X
  2003. X3628(of)X
  2004. X3715(the)X
  2005. X3833(hash)X
  2006. X4000(value)X
  2007. X2418 1444(until)N
  2008. X2591(all)X
  2009. X2698(set)X
  2010. X2814(bits)X
  2011. X2955(in)X
  2012. X3043(the)X
  2013. X3167(bitmap)X
  2014. X3415(are)X
  2015. X3540(exhausted.)X
  2016. X3907(The)X
  2017. X4058(fol-)X
  2018. X2418 1532(lowing)N
  2019. X2682(algorithm,)X
  2020. X3055(a)X
  2021. X3133(simpli\256cation)X
  2022. X3614(of)X
  2023. X3723(the)X
  2024. X3863(algorithm)X
  2025. X2418 1620(due)N
  2026. X2565(to)X
  2027. X2658(Ken)X
  2028. X2823(Thompson)X
  2029. X3196([THOM90,)X
  2030. X3590(TOR88],)X
  2031. X3908(uses)X
  2032. X4076(the)X
  2033. X2418 1708(hash)N
  2034. X2625(value)X
  2035. X2839(and)X
  2036. X2995(the)X
  2037. X3133(bitmap)X
  2038. X3395(to)X
  2039. X3497(calculate)X
  2040. X3823(the)X
  2041. X3960(bucket)X
  2042. X2418 1796(address)N
  2043. X2679(as)X
  2044. X2766(discussed)X
  2045. X3093(above.)X
  2046. X0(Courier)xf 0 f
  2047. X1 f
  2048. X0 f
  2049. X8 s
  2050. X2418 2095(hash)N
  2051. X2608(=)X
  2052. X2684 -0.4038(calchash\(key\);)AX
  2053. X2418 2183(mask)N
  2054. X2608(=)X
  2055. X2684(0;)X
  2056. X2418 2271(while)N
  2057. X2646 -0.4018(\(isbitset\(\(hash)AX
  2058. X3254(&)X
  2059. X3330(mask\))X
  2060. X3558(+)X
  2061. X3634(mask\)\))X
  2062. X2706 2359(mask)N
  2063. X2896(=)X
  2064. X2972(\(mask)X
  2065. X3200(<<)X
  2066. X3314(1\))X
  2067. X3428(+)X
  2068. X3504(1;)X
  2069. X2418 2447(bucket)N
  2070. X2684(=)X
  2071. X2760(hash)X
  2072. X2950(&)X
  2073. X3026(mask;)X
  2074. X2 f
  2075. X10 s
  2076. X3211 2812(sdbm)N
  2077. X1 f
  2078. X2590 2944(The)N
  2079. X2 f
  2080. X2738(sdbm)X
  2081. X1 f
  2082. X2930(library)X
  2083. X3167(is)X
  2084. X3243(a)X
  2085. X3302(public-domain)X
  2086. X3791(clone)X
  2087. X3987(of)X
  2088. X4076(the)X
  2089. X2 f
  2090. X2418 3032(ndbm)N
  2091. X1 f
  2092. X2638(library,)X
  2093. X2914(developed)X
  2094. X3286(by)X
  2095. X3408(Ozan)X
  2096. X3620(Yigit)X
  2097. X3826(to)X
  2098. X3929(provide)X
  2099. X2 f
  2100. X2418 3120(ndbm)N
  2101. X1 f
  2102. X2596('s)X
  2103. X2692(functionality)X
  2104. X3139(under)X
  2105. X3359(some)X
  2106. X3565(versions)X
  2107. X3869(of)X
  2108. X3973(UNIX)X
  2109. X2418 3208(that)N
  2110. X2559(exclude)X
  2111. X2830(it)X
  2112. X2894(for)X
  2113. X3008(licensing)X
  2114. X3317(reasons)X
  2115. X3578([YIG89].)X
  2116. X3895(The)X
  2117. X4040(pro-)X
  2118. X2418 3296(grammer)N
  2119. X2735(interface,)X
  2120. X3064(and)X
  2121. X3207(the)X
  2122. X3332(basic)X
  2123. X3524(structure)X
  2124. X3832(of)X
  2125. X2 f
  2126. X3926(sdbm)X
  2127. X1 f
  2128. X4121(is)X
  2129. X2418 3384(identical)N
  2130. X2733(to)X
  2131. X2 f
  2132. X2834(ndbm)X
  2133. X1 f
  2134. X3051(but)X
  2135. X3192(internal)X
  2136. X3476(details)X
  2137. X3723(of)X
  2138. X3828(the)X
  2139. X2 f
  2140. X3964(access)X
  2141. X1 f
  2142. X2418 3472(function,)N
  2143. X2726(such)X
  2144. X2894(as)X
  2145. X2982(the)X
  2146. X3101(calculation)X
  2147. X3474(of)X
  2148. X3561(the)X
  2149. X3679(bucket)X
  2150. X3913(address,)X
  2151. X2418 3560(and)N
  2152. X2563(the)X
  2153. X2690(use)X
  2154. X2825(of)X
  2155. X2920(different)X
  2156. X3225(hash)X
  2157. X3400(functions)X
  2158. X3726(make)X
  2159. X3928(the)X
  2160. X4054(two)X
  2161. X2418 3648(incompatible)N
  2162. X2856(at)X
  2163. X2934(the)X
  2164. X3052(database)X
  2165. X3349(level.)X
  2166. X2590 3762(The)N
  2167. X2 f
  2168. X2740(sdbm)X
  2169. X1 f
  2170. X2934(library)X
  2171. X3173(is)X
  2172. X3251(based)X
  2173. X3458(on)X
  2174. X3562(a)X
  2175. X3622(simpli\256ed)X
  2176. X3965(imple-)X
  2177. X2418 3850(mentation)N
  2178. X2778(of)X
  2179. X2885(Larson's)X
  2180. X3206(1978)X
  2181. X2 f
  2182. X3406(dynamic)X
  2183. X3717(hashing)X
  2184. X1 f
  2185. X4009(algo-)X
  2186. X2418 3938(rithm)N
  2187. X2616(including)X
  2188. X2943(the)X
  2189. X2 f
  2190. X3066(re\256nements)X
  2191. X3461(and)X
  2192. X3605(variations)X
  2193. X1 f
  2194. X3953(of)X
  2195. X4044(sec-)X
  2196. X2418 4026(tion)N
  2197. X2562(5)X
  2198. X2622([LAR78].)X
  2199. X2956(Larson's)X
  2200. X3257(original)X
  2201. X3526(algorithm)X
  2202. X3857(calls)X
  2203. X4024(for)X
  2204. X4138(a)X
  2205. X2418 4114(forest)N
  2206. X2635(of)X
  2207. X2736(binary)X
  2208. X2975(hash)X
  2209. X3156(trees)X
  2210. X3341(that)X
  2211. X3494(are)X
  2212. X3626(accessed)X
  2213. X3941(by)X
  2214. X4054(two)X
  2215. X2418 4202(hash)N
  2216. X2586(functions.)X
  2217. X2925(The)X
  2218. X3071(\256rst)X
  2219. X3216(hash)X
  2220. X3384(function)X
  2221. X3672(selects)X
  2222. X3907(a)X
  2223. X3964(partic-)X
  2224. X2418 4290(ular)N
  2225. X2571(tree)X
  2226. X2720(within)X
  2227. X2952(the)X
  2228. X3078(forest.)X
  2229. X3309(The)X
  2230. X3462(second)X
  2231. X3713(hash)X
  2232. X3887(function,)X
  2233. X2418 4378(which)N
  2234. X2659(is)X
  2235. X2757(required)X
  2236. X3070(to)X
  2237. X3177(be)X
  2238. X3297(a)X
  2239. X3377(boolean)X
  2240. X3675(pseudo-random)X
  2241. X2418 4466(number)N
  2242. X2687(generator)X
  2243. X3015(that)X
  2244. X3159(is)X
  2245. X3236(seeded)X
  2246. X3479(by)X
  2247. X3583(the)X
  2248. X3705(key,)X
  2249. X3865(is)X
  2250. X3942(used)X
  2251. X4112(to)X
  2252. X2418 4554(traverse)N
  2253. X2733(the)X
  2254. X2890(tree)X
  2255. X3070(until)X
  2256. X3275(internal)X
  2257. X3579(\(split\))X
  2258. X3829(nodes)X
  2259. X4075(are)X
  2260. X2418 4642(exhausted)N
  2261. X2763(and)X
  2262. X2903(an)X
  2263. X3003(external)X
  2264. X3286(\(non-split\))X
  2265. X3648(node)X
  2266. X3827(is)X
  2267. X3903(reached.)X
  2268. X2418 4730(The)N
  2269. X2571(bucket)X
  2270. X2813(addresses)X
  2271. X3149(are)X
  2272. X3276(stored)X
  2273. X3500(directly)X
  2274. X3772(in)X
  2275. X3861(the)X
  2276. X3986(exter-)X
  2277. X2418 4818(nal)N
  2278. X2536(nodes.)X
  2279. X2590 4932(Larson's)N
  2280. X2903(re\256nements)X
  2281. X3309(are)X
  2282. X3440(based)X
  2283. X3655(on)X
  2284. X3767(the)X
  2285. X3897(observa-)X
  2286. X2418 5020(tion)N
  2287. X2570(that)X
  2288. X2718(the)X
  2289. X2844(nodes)X
  2290. X3059(can)X
  2291. X3199(be)X
  2292. X3303(represented)X
  2293. X3702(by)X
  2294. X3809(a)X
  2295. X3872(single)X
  2296. X4090(bit)X
  2297. X2418 5108(that)N
  2298. X2569(is)X
  2299. X2653(set)X
  2300. X2773(for)X
  2301. X2898(internal)X
  2302. X3174(nodes)X
  2303. X3392(and)X
  2304. X3539(not)X
  2305. X3672(set)X
  2306. X3791(for)X
  2307. X3915(external)X
  2308. X2418 5196(nodes,)N
  2309. X2652(resulting)X
  2310. X2959(in)X
  2311. X3048(a)X
  2312. X3111(radix)X
  2313. X3303(search)X
  2314. X3536(trie.)X
  2315. X3709(Figure)X
  2316. X3944(1)X
  2317. X4010(illus-)X
  2318. X2418 5284(trates)N
  2319. X2621(this.)X
  2320. X2804(Nodes)X
  2321. X3037(A)X
  2322. X3123(and)X
  2323. X3267(B)X
  2324. X3348(are)X
  2325. X3475(internal)X
  2326. X3748(\(split\))X
  2327. X3967(nodes,)X
  2328. X2418 5372(thus)N
  2329. X2573(having)X
  2330. X2813(no)X
  2331. X2915(bucket)X
  2332. X3151(addresses)X
  2333. X3480(associated)X
  2334. X3831(with)X
  2335. X3994(them.)X
  2336. X2418 5460(Instead,)N
  2337. X2693(the)X
  2338. X2814(external)X
  2339. X3096(nodes)X
  2340. X3306(\(C,)X
  2341. X3429(D,)X
  2342. X3530(and)X
  2343. X3669(E\))X
  2344. X3768(each)X
  2345. X3938(need)X
  2346. X4112(to)X
  2347. X2418 5548(refer)N
  2348. X2594(to)X
  2349. X2679(a)X
  2350. X2738(bucket)X
  2351. X2975(address.)X
  2352. X3279(These)X
  2353. X3494(bucket)X
  2354. X3731(addresses)X
  2355. X4062(can)X
  2356. X2418 5636(be)N
  2357. X2529(stored)X
  2358. X2760(in)X
  2359. X2857(the)X
  2360. X2990(trie)X
  2361. X3132(itself)X
  2362. X3327(where)X
  2363. X3559(the)X
  2364. X3691(subtries)X
  2365. X3974(would)X
  2366. X3 f
  2367. X432 5960(2)N
  2368. X2970(USENIX)X
  2369. X9 f
  2370. X3292(-)X
  2371. X3 f
  2372. X3356(Winter)X
  2373. X3621('91)X
  2374. X9 f
  2375. X3748(-)X
  2376. X3 f
  2377. X3812(Dallas,)X
  2378. X4065(TX)X
  2379. X
  2380. X3 p
  2381. X%%Page: 3 3
  2382. X0(Courier)xf 0 f
  2383. X10 s 10 xH 0 xS 0 f
  2384. X3 f
  2385. X720 258(Seltzer)N
  2386. X977(&)X
  2387. X1064(Yigit)X
  2388. X3278(A)X
  2389. X3356(New)X
  2390. X3528(Hashing)X
  2391. X3831(Package)X
  2392. X4136(for)X
  2393. X4259(UNIX)X
  2394. X1 f
  2395. X720 538(live)N
  2396. X862(if)X
  2397. X933(they)X
  2398. X1092(existed)X
  2399. X1340([KNU68].)X
  2400. X1709(For)X
  2401. X1841(example,)X
  2402. X2154(if)X
  2403. X2224(nodes)X
  2404. X2432(F)X
  2405. X720 626(and)N
  2406. X858(G)X
  2407. X938(were)X
  2408. X1117(the)X
  2409. X1237(children)X
  2410. X1522(of)X
  2411. X1610(node)X
  2412. X1787(C,)X
  2413. X1881(the)X
  2414. X2000(bucket)X
  2415. X2235(address)X
  2416. X720 714(L00)N
  2417. X886(could)X
  2418. X1101(reside)X
  2419. X1330(in)X
  2420. X1429(the)X
  2421. X1563(bits)X
  2422. X1714(that)X
  2423. X1870(will)X
  2424. X2030(eventually)X
  2425. X2400(be)X
  2426. X720 802(used)N
  2427. X887(to)X
  2428. X969(store)X
  2429. X1145(nodes)X
  2430. X1352(F)X
  2431. X1416(and)X
  2432. X1552(G)X
  2433. X1630(and)X
  2434. X1766(all)X
  2435. X1866(their)X
  2436. X2033(children.)X
  2437. X10 f
  2438. X720 890 -0.0930(hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh)AN
  2439. X3 f
  2440. X1894 2247(L1)N
  2441. X784 1925(A)N
  2442. X1431(E)X
  2443. X1106 2247(D)N
  2444. X1428 1281(C)N
  2445. X1109 1603(B)N
  2446. X1884 1930(L01)N
  2447. X1879 1286(L00)N
  2448. X1221 1814(1)N
  2449. X903 2131(1)N
  2450. X1221 1402(0)N
  2451. X903 1714(0)N
  2452. X1 Dt
  2453. X1397 1821 MXY
  2454. X-8 -32 Dl
  2455. X-5 19 Dl
  2456. X-20 6 Dl
  2457. X33 7 Dl
  2458. X-187 -182 Dl
  2459. X1397 1322 MXY
  2460. X-33 7 Dl
  2461. X20 6 Dl
  2462. X5 19 Dl
  2463. X8 -32 Dl
  2464. X-187 182 Dl
  2465. X1069 1639 MXY
  2466. X-32 7 Dl
  2467. X20 6 Dl
  2468. X5 19 Dl
  2469. X7 -32 Dl
  2470. X-186 182 Dl
  2471. X1374 1891 MXY
  2472. X185 Dc
  2473. X1779 2133 MXY
  2474. X0 161 Dl
  2475. X322 0 Dl
  2476. X0 -161 Dl
  2477. X-322 0 Dl
  2478. X1811 MY
  2479. X0 161 Dl
  2480. X322 0 Dl
  2481. X0 -161 Dl
  2482. X-322 0 Dl
  2483. X1166 MY
  2484. X0 161 Dl
  2485. X322 0 Dl
  2486. X0 -161 Dl
  2487. X-322 0 Dl
  2488. X1052 2213 MXY
  2489. X185 Dc
  2490. X1569 MY
  2491. X185 Dc
  2492. X720 1881 MXY
  2493. X185 Dc
  2494. X1779 2213 MXY
  2495. X-28 -17 Dl
  2496. X10 17 Dl
  2497. X-10 18 Dl
  2498. X28 -18 Dl
  2499. X-543 0 Dl
  2500. X1769 1891 MXY
  2501. X-28 -18 Dl
  2502. X10 18 Dl
  2503. X-10 18 Dl
  2504. X28 -18 Dl
  2505. X-201 0 Dl
  2506. X1364 1247 MXY
  2507. X185 Dc
  2508. X1769 MX
  2509. X-28 -18 Dl
  2510. X10 18 Dl
  2511. X-10 18 Dl
  2512. X28 -18 Dl
  2513. X-201 0 Dl
  2514. X1064 2143 MXY
  2515. X-7 -32 Dl
  2516. X-5 19 Dl
  2517. X-20 6 Dl
  2518. X32 7 Dl
  2519. X-181 -181 Dl
  2520. X3 Dt
  2521. X-1 Ds
  2522. X8 s
  2523. X720 2482(Figure)N
  2524. X925(1:)X
  2525. X1 f
  2526. X1002(Radix)X
  2527. X1179(search)X
  2528. X1365(trie)X
  2529. X1474(with)X
  2530. X1612(internal)X
  2531. X1831(nodes)X
  2532. X2004(A)X
  2533. X2074(and)X
  2534. X2189(B,)X
  2535. X2271(external)X
  2536. X720 2570(nodes)N
  2537. X891(C,)X
  2538. X972(D,)X
  2539. X1056(and)X
  2540. X1170(E,)X
  2541. X1247(and)X
  2542. X1361(bucket)X
  2543. X1553(addresses)X
  2544. X1819(stored)X
  2545. X1997(in)X
  2546. X2069(the)X
  2547. X2168(unused)X
  2548. X2370(por-)X
  2549. X720 2658(tion)N
  2550. X836(of)X
  2551. X905(the)X
  2552. X999(trie.)X
  2553. X10 s
  2554. X10 f
  2555. X720 2922 -0.0930(hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh)AN
  2556. X1 f
  2557. X892 3124(Further)N
  2558. X1153(simpli\256cations)X
  2559. X1647(of)X
  2560. X1738(the)X
  2561. X1860(above)X
  2562. X2076([YIG89])X
  2563. X2377(are)X
  2564. X720 3212(possible.)N
  2565. X1038(Using)X
  2566. X1265(a)X
  2567. X1337(single)X
  2568. X1564(radix)X
  2569. X1765(trie)X
  2570. X1908(to)X
  2571. X2006(avoid)X
  2572. X2219(the)X
  2573. X2352(\256rst)X
  2574. X720 3300(hash)N
  2575. X904(function,)X
  2576. X1227(replacing)X
  2577. X1562(the)X
  2578. X1696(pseudo-random)X
  2579. X2231(number)X
  2580. X720 3388(generator)N
  2581. X1052(with)X
  2582. X1222(a)X
  2583. X1286(well)X
  2584. X1452(designed,)X
  2585. X1785(bit-randomizing)X
  2586. X2329(hash)X
  2587. X720 3476(function,)N
  2588. X1053(and)X
  2589. X1215(using)X
  2590. X1434(the)X
  2591. X1578(portion)X
  2592. X1855(of)X
  2593. X1967(the)X
  2594. X2110(hash)X
  2595. X2302(value)X
  2596. X720 3564(exposed)N
  2597. X1021(during)X
  2598. X1268(the)X
  2599. X1404(trie)X
  2600. X1549(traversal)X
  2601. X1864(as)X
  2602. X1969(a)X
  2603. X2042(direct)X
  2604. X2262(bucket)X
  2605. X720 3652(address)N
  2606. X990(results)X
  2607. X1228(in)X
  2608. X1319(an)X
  2609. X2 f
  2610. X1424(access)X
  2611. X1 f
  2612. X1663(function)X
  2613. X1959(that)X
  2614. X2108(works)X
  2615. X2333(very)X
  2616. X720 3740(similar)N
  2617. X974(to)X
  2618. X1068(Thompson's)X
  2619. X1499(algorithm)X
  2620. X1841(above.)X
  2621. X2084(The)X
  2622. X2240(follow-)X
  2623. X720 3828(ing)N
  2624. X847(algorithm)X
  2625. X1183(uses)X
  2626. X1346(the)X
  2627. X1469(hash)X
  2628. X1641(value)X
  2629. X1840(to)X
  2630. X1927(traverse)X
  2631. X2206(a)X
  2632. X2266(linear-)X
  2633. X720 3916(ized)N
  2634. X874(radix)X
  2635. X1059(trie)X
  2636. X2 f
  2637. X8 s
  2638. X1166 3891(3)N
  2639. X1 f
  2640. X10 s
  2641. X1218 3916(starting)N
  2642. X1478(at)X
  2643. X1556(the)X
  2644. X1674(0)X
  2645. X2 f
  2646. X7 s
  2647. X3884(th)Y
  2648. X10 s
  2649. X1 f
  2650. X1791 3916(bit.)N
  2651. X0 f
  2652. X8 s
  2653. X720 4215(tbit)N
  2654. X910(=)X
  2655. X986(0;)X
  2656. X1296(/*)X
  2657. X1410(radix)X
  2658. X1638(trie)X
  2659. X1828(index)X
  2660. X2056(*/)X
  2661. X720 4303(hbit)N
  2662. X910(=)X
  2663. X986(0;)X
  2664. X1296(/*)X
  2665. X1410(hash)X
  2666. X1600(bit)X
  2667. X1752(index)X
  2668. X2056(*/)X
  2669. X720 4391(mask)N
  2670. X910(=)X
  2671. X986(0;)X
  2672. X720 4479(hash)N
  2673. X910(=)X
  2674. X986 -0.4038(calchash\(key\);)AX
  2675. X720 4655(for)N
  2676. X872(\(mask)X
  2677. X1100(=)X
  2678. X1176(0;)X
  2679. X910 4743 -0.4018(isbitset\(tbit\);)AN
  2680. X910 4831(mask)N
  2681. X1100(=)X
  2682. X1176(\(mask)X
  2683. X1404(<<)X
  2684. X1518(1\))X
  2685. X1632(+)X
  2686. X1708(1\))X
  2687. X1008 4919(if)N
  2688. X1122(\(hash)X
  2689. X1350(&)X
  2690. X1426(\(1)X
  2691. X1540(<<)X
  2692. X1654 -0.4219(hbit++\)\)\))AX
  2693. X1160 5007(/*)N
  2694. X1274(right)X
  2695. X1502(son)X
  2696. X1692(*/)X
  2697. X1160 5095(tbit)N
  2698. X1350(=)X
  2699. X1426(2)X
  2700. X1502(*)X
  2701. X1578(tbit)X
  2702. X1768(+)X
  2703. X1844(2;)X
  2704. X1008 5183(else)N
  2705. X1 f
  2706. X16 s
  2707. X720 5353 MXY
  2708. X864 0 Dl
  2709. X2 f
  2710. X8 s
  2711. X760 5408(3)N
  2712. X1 f
  2713. X9 s
  2714. X818 5433(A)N
  2715. X896(linearized)X
  2716. X1206(radix)X
  2717. X1380(trie)X
  2718. X1502(is)X
  2719. X1576(merely)X
  2720. X1802(an)X
  2721. X1895(array)X
  2722. X2068(representation)X
  2723. X720 5513(of)N
  2724. X800(the)X
  2725. X908(radix)X
  2726. X1076(search)X
  2727. X1280(trie)X
  2728. X1396(described)X
  2729. X1692(above.)X
  2730. X1920(The)X
  2731. X2052(children)X
  2732. X2308(of)X
  2733. X2388(the)X
  2734. X720 5593(node)N
  2735. X885(with)X
  2736. X1038(index)X
  2737. X1223(i)X
  2738. X1267(can)X
  2739. X1391(be)X
  2740. X1483(found)X
  2741. X1675(at)X
  2742. X1751(the)X
  2743. X1863(nodes)X
  2744. X2055(indexed)X
  2745. X2307(2*i+1)X
  2746. X720 5673(and)N
  2747. X842(2*i+2.)X
  2748. X0 f
  2749. X8 s
  2750. X3146 538(/*)N
  2751. X3260(left)X
  2752. X3450(son)X
  2753. X3678(*/)X
  2754. X3146 626(tbit)N
  2755. X3336(=)X
  2756. X3412(2)X
  2757. X3488(*)X
  2758. X3564(tbit)X
  2759. X3754(+)X
  2760. X3830(1;)X
  2761. X2706 802(bucket)N
  2762. X2972(=)X
  2763. X3048(hash)X
  2764. X3238(&)X
  2765. X3314(mask;)X
  2766. X2 f
  2767. X10 s
  2768. X3495 1167(gdbm)N
  2769. X1 f
  2770. X2878 1299(The)N
  2771. X3027(gdbm)X
  2772. X3233(\(GNU)X
  2773. X3458(data)X
  2774. X3616(base)X
  2775. X3783(manager\))X
  2776. X4111(library)X
  2777. X4349(is)X
  2778. X4426(a)X
  2779. X2706 1387(UNIX)N
  2780. X2933(database)X
  2781. X3236(manager)X
  2782. X3539(written)X
  2783. X3792(by)X
  2784. X3897(Philip)X
  2785. X4112(A.)X
  2786. X4215(Nelson,)X
  2787. X2706 1475(and)N
  2788. X2848(made)X
  2789. X3048(available)X
  2790. X3364(as)X
  2791. X3457(a)X
  2792. X3518(part)X
  2793. X3668(of)X
  2794. X3760(the)X
  2795. X3883(FSF)X
  2796. X4040(software)X
  2797. X4342(dis-)X
  2798. X2706 1563(tribution.)N
  2799. X3052(The)X
  2800. X3207(gdbm)X
  2801. X3419(library)X
  2802. X3663(provides)X
  2803. X3969(the)X
  2804. X4097(same)X
  2805. X4292(func-)X
  2806. X2706 1651(tionality)N
  2807. X3028(of)X
  2808. X3151(the)X
  2809. X2 f
  2810. X3304(dbm)X
  2811. X1 f
  2812. X3442(/)X
  2813. X2 f
  2814. X3464(ndbm)X
  2815. X1 f
  2816. X3697(libraries)X
  2817. X4015([NEL90])X
  2818. X4360(but)X
  2819. X2706 1739(attempts)N
  2820. X3018(to)X
  2821. X3121(avoid)X
  2822. X3340(some)X
  2823. X3550(of)X
  2824. X3658(their)X
  2825. X3846(shortcomings.)X
  2826. X4337(The)X
  2827. X2706 1827(gdbm)N
  2828. X2918(library)X
  2829. X3162(allows)X
  2830. X3401(for)X
  2831. X3525(arbitrary-length)X
  2832. X4059(data,)X
  2833. X4242(and)X
  2834. X4387(its)X
  2835. X2706 1915(database)N
  2836. X3027(is)X
  2837. X3124(a)X
  2838. X3203(singular,)X
  2839. X3524(non-sparse)X
  2840. X2 f
  2841. X8 s
  2842. X3872 1890(4)N
  2843. X1 f
  2844. X10 s
  2845. X3947 1915(\256le.)N
  2846. X4112(The)X
  2847. X4280(gdbm)X
  2848. X2706 2003(library)N
  2849. X2947(also)X
  2850. X3103(includes)X
  2851. X2 f
  2852. X3396(dbm)X
  2853. X1 f
  2854. X3560(and)X
  2855. X2 f
  2856. X3702(ndbm)X
  2857. X1 f
  2858. X3906(compatible)X
  2859. X4288(inter-)X
  2860. X2706 2091(faces.)N
  2861. X2878 2205(The)N
  2862. X3025(gdbm)X
  2863. X3229(library)X
  2864. X3465(is)X
  2865. X3540(based)X
  2866. X3745(on)X
  2867. X2 f
  2868. X3847(extensible)X
  2869. X4189(hashing)X
  2870. X1 f
  2871. X4442(,)X
  2872. X2706 2293(a)N
  2873. X2766(dynamic)X
  2874. X3066(hashing)X
  2875. X3339(algorithm)X
  2876. X3674(by)X
  2877. X3778(Fagin)X
  2878. X3984(et)X
  2879. X4066(al)X
  2880. X4148([FAG79].)X
  2881. X2706 2381(This)N
  2882. X2881(algorithm)X
  2883. X3225(differs)X
  2884. X3467(from)X
  2885. X3655(the)X
  2886. X3785(previously)X
  2887. X4155(discussed)X
  2888. X2706 2469(algorithms)N
  2889. X3069(in)X
  2890. X3152(that)X
  2891. X3293(it)X
  2892. X3358(uses)X
  2893. X3517(a)X
  2894. X2 f
  2895. X3574(directory)X
  2896. X1 f
  2897. X3889(that)X
  2898. X4030(is)X
  2899. X4103(a)X
  2900. X4159(collapsed)X
  2901. X2706 2557(representation)N
  2902. X3192([ENB88])X
  2903. X3517(of)X
  2904. X3615(the)X
  2905. X3744(radix)X
  2906. X3940(search)X
  2907. X4177(trie)X
  2908. X4315(used)X
  2909. X2706 2645(by)N
  2910. X2 f
  2911. X2806(sdbm)X
  2912. X1 f
  2913. X2975(.)X
  2914. X10 f
  2915. X2706 2733 -0.0930(hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh)AN
  2916. X3 f
  2917. X7 s
  2918. X3572 3761(L1)N
  2919. X1 Dt
  2920. X3485 3738 MXY
  2921. X-20 -13 Dl
  2922. X7 13 Dl
  2923. X-7 13 Dl
  2924. X20 -13 Dl
  2925. X-400 0 Dl
  2926. X3180 3027 MXY
  2927. X136 Dc
  2928. X2706 3494 MXY
  2929. X136 Dc
  2930. X2950 3264 MXY
  2931. X136 Dc
  2932. X3738 MY
  2933. X136 Dc
  2934. X3485 2968 MXY
  2935. X0 118 Dl
  2936. X238 0 Dl
  2937. X0 -118 Dl
  2938. X-238 0 Dl
  2939. X3442 MY
  2940. X0 119 Dl
  2941. X238 0 Dl
  2942. X0 -119 Dl
  2943. X-238 0 Dl
  2944. X3679 MY
  2945. X0 119 Dl
  2946. X238 0 Dl
  2947. X0 -119 Dl
  2948. X-238 0 Dl
  2949. X3187 3501 MXY
  2950. X136 Dc
  2951. X2963 3316 MXY
  2952. X-24 5 Dl
  2953. X15 4 Dl
  2954. X4 15 Dl
  2955. X5 -24 Dl
  2956. X-137 134 Dl
  2957. X3204 3083 MXY
  2958. X-24 5 Dl
  2959. X15 4 Dl
  2960. X3 14 Dl
  2961. X6 -23 Dl
  2962. X-137 133 Dl
  2963. X3204 3450 MXY
  2964. X-6 -24 Dl
  2965. X-3 14 Dl
  2966. X-15 5 Dl
  2967. X24 5 Dl
  2968. X-137 -134 Dl
  2969. X2842 3369(0)N
  2970. X3075 3139(0)N
  2971. X2842 3676(1)N
  2972. X3075 3443(1)N
  2973. X3562 3054(L00)N
  2974. X3565 3528(L01)N
  2975. X4197 2968 MXY
  2976. X0 118 Dl
  2977. X237 0 Dl
  2978. X0 -118 Dl
  2979. X-237 0 Dl
  2980. X3205 MY
  2981. X0 119 Dl
  2982. X237 0 Dl
  2983. X0 -119 Dl
  2984. X-237 0 Dl
  2985. X3561 MY
  2986. X0 118 Dl
  2987. X237 0 Dl
  2988. X0 -118 Dl
  2989. X-237 0 Dl
  2990. X3960 2909 MXY
  2991. X0 237 Dl
  2992. X118 0 Dl
  2993. X0 -237 Dl
  2994. X-118 0 Dl
  2995. X3146 MY
  2996. X0 237 Dl
  2997. X118 0 Dl
  2998. X0 -237 Dl
  2999. X-118 0 Dl
  3000. X3383 MY
  3001. X0 237 Dl
  3002. X118 0 Dl
  3003. X0 -237 Dl
  3004. X-118 0 Dl
  3005. X3620 MY
  3006. X0 237 Dl
  3007. X118 0 Dl
  3008. X0 -237 Dl
  3009. X-118 0 Dl
  3010. X4197 3027 MXY
  3011. X-21 -13 Dl
  3012. X8 13 Dl
  3013. X-8 13 Dl
  3014. X21 -13 Dl
  3015. X-119 0 Dl
  3016. X4197 3264 MXY
  3017. X-21 -13 Dl
  3018. X8 13 Dl
  3019. X-8 13 Dl
  3020. X21 -13 Dl
  3021. X-119 0 Dl
  3022. X3501 MY
  3023. X59 0 Dl
  3024. X0 89 Dl
  3025. X4078 3738 MXY
  3026. X59 0 Dl
  3027. X0 -88 Dl
  3028. X4197 3590 MXY
  3029. X-21 -13 Dl
  3030. X8 13 Dl
  3031. X-8 13 Dl
  3032. X21 -13 Dl
  3033. X-60 0 Dl
  3034. X4197 3650 MXY
  3035. X-21 -13 Dl
  3036. X8 13 Dl
  3037. X-8 13 Dl
  3038. X21 -13 Dl
  3039. X-60 0 Dl
  3040. X3991 3050(00)N
  3041. X3991 3287(01)N
  3042. X3991 3524(10)N
  3043. X3991 3761(11)N
  3044. X4269 3050(L00)N
  3045. X4269 3287(L01)N
  3046. X4283 3643(L1)N
  3047. X3485 3501 MXY
  3048. X-20 -13 Dl
  3049. X7 13 Dl
  3050. X-7 13 Dl
  3051. X20 -13 Dl
  3052. X-155 0 Dl
  3053. X3485 3027 MXY
  3054. X-20 -13 Dl
  3055. X7 13 Dl
  3056. X-7 13 Dl
  3057. X20 -13 Dl
  3058. X-163 0 Dl
  3059. X2967 3687 MXY
  3060. X-5 -24 Dl
  3061. X-4 14 Dl
  3062. X-15 4 Dl
  3063. X24 6 Dl
  3064. X-141 -141 Dl
  3065. X3 Dt
  3066. X-1 Ds
  3067. X8 s
  3068. X2706 4033(Figure)N
  3069. X2903(2:)X
  3070. X1 f
  3071. X2972(A)X
  3072. X3034(radix)X
  3073. X3181(search)X
  3074. X3359(trie)X
  3075. X3460(and)X
  3076. X3568(a)X
  3077. X3612(directory)X
  3078. X3858(representing)X
  3079. X4189(the)X
  3080. X4283(trie.)X
  3081. X10 s
  3082. X10 f
  3083. X2706 4209 -0.0930(hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh)AN
  3084. X1 f
  3085. X2878 4411(In)N
  3086. X2968(this)X
  3087. X3106(algorithm,)X
  3088. X3460(a)X
  3089. X3519(directory)X
  3090. X3832(consists)X
  3091. X4108(of)X
  3092. X4198(a)X
  3093. X4256(search)X
  3094. X2706 4499(trie)N
  3095. X2847(of)X
  3096. X2947(depth)X
  3097. X2 f
  3098. X3158(n)X
  3099. X1 f
  3100. X3211(,)X
  3101. X3264(containing)X
  3102. X3635(2)X
  3103. X2 f
  3104. X7 s
  3105. X4467(n)Y
  3106. X10 s
  3107. X1 f
  3108. X3749 4499(bucket)N
  3109. X3996(addresses)X
  3110. X4337(\(i.e.)X
  3111. X2706 4587(each)N
  3112. X2897(element)X
  3113. X3194(of)X
  3114. X3304(the)X
  3115. X3445(trie)X
  3116. X3594(is)X
  3117. X3689(a)X
  3118. X3767(bucket)X
  3119. X4023(address\).)X
  3120. X4373(To)X
  3121. X2706 4675(access)N
  3122. X2935(the)X
  3123. X3056(hash)X
  3124. X3226(table,)X
  3125. X3425(a)X
  3126. X3483(32-bit)X
  3127. X3696(hash)X
  3128. X3865(value)X
  3129. X4061(is)X
  3130. X4136(calculated)X
  3131. X2706 4763(and)N
  3132. X2 f
  3133. X2861(n)X
  3134. X1 f
  3135. X2953(bits)X
  3136. X3107(of)X
  3137. X3213(the)X
  3138. X3350(value)X
  3139. X3563(are)X
  3140. X3701(used)X
  3141. X3886(to)X
  3142. X3986(index)X
  3143. X4202(into)X
  3144. X4364(the)X
  3145. X2706 4851(directory)N
  3146. X3018(to)X
  3147. X3102(obtain)X
  3148. X3324(a)X
  3149. X3382(bucket)X
  3150. X3618(address.)X
  3151. X3921(It)X
  3152. X3992(is)X
  3153. X4067(important)X
  3154. X4400(to)X
  3155. X2706 4939(note)N
  3156. X2866(that)X
  3157. X3008(multiple)X
  3158. X3296(entries)X
  3159. X3532(of)X
  3160. X3620(this)X
  3161. X3756(directory)X
  3162. X4067(may)X
  3163. X4226(contain)X
  3164. X2706 5027(the)N
  3165. X2833(same)X
  3166. X3026(bucket)X
  3167. X3268(address)X
  3168. X3537(as)X
  3169. X3632(a)X
  3170. X3696(result)X
  3171. X3902(of)X
  3172. X3997(directory)X
  3173. X4315(dou-)X
  3174. X2706 5115(bling)N
  3175. X2903(during)X
  3176. X3145(bucket)X
  3177. X3392(splitting.)X
  3178. X3706(Figure)X
  3179. X3948(2)X
  3180. X4021(illustrates)X
  3181. X4364(the)X
  3182. X2706 5203(relationship)N
  3183. X3126(between)X
  3184. X3436(a)X
  3185. X3513(typical)X
  3186. X3772(\(skewed\))X
  3187. X4108(search)X
  3188. X4355(trie)X
  3189. X2706 5291(and)N
  3190. X2850(its)X
  3191. X2953(directory)X
  3192. X3271(representation.)X
  3193. X3774(The)X
  3194. X3927(formation)X
  3195. X4270(of)X
  3196. X4364(the)X
  3197. X2706 5379(directory)N
  3198. X3016(shown)X
  3199. X3245(in)X
  3200. X3327(the)X
  3201. X3445(\256gure)X
  3202. X3652(is)X
  3203. X3725(as)X
  3204. X3812(follows.)X
  3205. X16 s
  3206. X2706 5593 MXY
  3207. X864 0 Dl
  3208. X2 f
  3209. X8 s
  3210. X2746 5648(4)N
  3211. X1 f
  3212. X9 s
  3213. X2796 5673(It)N
  3214. X2858(does)X
  3215. X3008(not)X
  3216. X3118(contain)X
  3217. X3348(holes.)X
  3218. X3 f
  3219. X10 s
  3220. X720 5960(USENIX)N
  3221. X9 f
  3222. X1042(-)X
  3223. X3 f
  3224. X1106(Winter)X
  3225. X1371('91)X
  3226. X9 f
  3227. X1498(-)X
  3228. X3 f
  3229. X1562(Dallas,)X
  3230. X1815(TX)X
  3231. X4424(3)X
  3232. X
  3233. X4 p
  3234. X%%Page: 4 4
  3235. X0(Courier)xf 0 f
  3236. X10 s 10 xH 0 xS 0 f
  3237. X3 f
  3238. X432 258(A)N
  3239. X510(New)X
  3240. X682(Hashing)X
  3241. X985(Package)X
  3242. X1290(for)X
  3243. X1413(UNIX)X
  3244. X3663(Seltzer)X
  3245. X3920(&)X
  3246. X4007(Yigit)X
  3247. X1 f
  3248. X604 538(Initially,)N
  3249. X937(there)X
  3250. X1158(is)X
  3251. X1271(one)X
  3252. X1446(slot)X
  3253. X1620(in)X
  3254. X1741(the)X
  3255. X1898(directory)X
  3256. X432 626(addressing)N
  3257. X802(a)X
  3258. X865(single)X
  3259. X1083(bucket.)X
  3260. X1364(The)X
  3261. X1515(depth)X
  3262. X1719(of)X
  3263. X1812(the)X
  3264. X1936(trie)X
  3265. X2069(is)X
  3266. X2148(0)X
  3267. X432 714(and)N
  3268. X577(0)X
  3269. X646(bits)X
  3270. X790(of)X
  3271. X886(each)X
  3272. X1063(hash)X
  3273. X1239(value)X
  3274. X1442(are)X
  3275. X1570(examined)X
  3276. X1910(to)X
  3277. X2000(deter-)X
  3278. X432 802(mine)N
  3279. X624(in)X
  3280. X718(which)X
  3281. X946(bucket)X
  3282. X1192(to)X
  3283. X1286(place)X
  3284. X1488(a)X
  3285. X1556(key;)X
  3286. X1726(all)X
  3287. X1837(keys)X
  3288. X2015(go)X
  3289. X2126(in)X
  3290. X432 890(bucket)N
  3291. X682(0.)X
  3292. X797(When)X
  3293. X1024(this)X
  3294. X1174(bucket)X
  3295. X1423(is)X
  3296. X1511(full,)X
  3297. X1677(its)X
  3298. X1787(contents)X
  3299. X2089(are)X
  3300. X432 978(divided)N
  3301. X698(between)X
  3302. X992(L0)X
  3303. X1107(and)X
  3304. X1249(L1)X
  3305. X1363(as)X
  3306. X1455(was)X
  3307. X1605(done)X
  3308. X1786(in)X
  3309. X1873(the)X
  3310. X1996(previ-)X
  3311. X432 1066(ously)N
  3312. X664(discussed)X
  3313. X1030(algorithms.)X
  3314. X1471(After)X
  3315. X1700(this)X
  3316. X1874(split,)X
  3317. X2090(the)X
  3318. X432 1154(address)N
  3319. X710(of)X
  3320. X814(the)X
  3321. X948(second)X
  3322. X1207(bucket)X
  3323. X1457(must)X
  3324. X1648(be)X
  3325. X1760(stored)X
  3326. X1992(in)X
  3327. X2090(the)X
  3328. X432 1242(directory.)N
  3329. X796(To)X
  3330. X939(accommodate)X
  3331. X1438(the)X
  3332. X1589(new)X
  3333. X1776(address,)X
  3334. X2090(the)X
  3335. X432 1330(directory)N
  3336. X752(is)X
  3337. X835(split)X
  3338. X2 f
  3339. X8 s
  3340. X972 1305(5)N
  3341. X1 f
  3342. X10 s
  3343. X1330(,)Y
  3344. X1054(by)X
  3345. X1163(doubling)X
  3346. X1476(it,)X
  3347. X1569(thus)X
  3348. X1731(increasing)X
  3349. X2090(the)X
  3350. X432 1418(depth)N
  3351. X630(of)X
  3352. X717(the)X
  3353. X835(directory)X
  3354. X1145(by)X
  3355. X1245(one.)X
  3356. X604 1532(After)N
  3357. X813(this)X
  3358. X967(split,)X
  3359. X1163(a)X
  3360. X1237(single)X
  3361. X1466(bit)X
  3362. X1588(of)X
  3363. X1693(the)X
  3364. X1829(hash)X
  3365. X2014(value)X
  3366. X432 1620(needs)N
  3367. X663(to)X
  3368. X773(be)X
  3369. X896(examined)X
  3370. X1255(to)X
  3371. X1364(decide)X
  3372. X1621(whether)X
  3373. X1927(the)X
  3374. X2072(key)X
  3375. X432 1708(belongs)N
  3376. X711(to)X
  3377. X803(L0)X
  3378. X922(or)X
  3379. X1019(L1.)X
  3380. X1158(Once)X
  3381. X1358(one)X
  3382. X1504(of)X
  3383. X1601(these)X
  3384. X1795(buckets)X
  3385. X2069(\256lls)X
  3386. X432 1796(\(L0)N
  3387. X578(for)X
  3388. X702(example\),)X
  3389. X1051(it)X
  3390. X1125(is)X
  3391. X1208(split)X
  3392. X1375(as)X
  3393. X1472(before,)X
  3394. X1728(and)X
  3395. X1873(the)X
  3396. X2000(direc-)X
  3397. X432 1884(tory)N
  3398. X585(is)X
  3399. X662(split)X
  3400. X823(again)X
  3401. X1021(to)X
  3402. X1107(make)X
  3403. X1305(room)X
  3404. X1498(for)X
  3405. X1615(the)X
  3406. X1736(address)X
  3407. X2000(of)X
  3408. X2090(the)X
  3409. X432 1972(third)N
  3410. X618(bucket.)X
  3411. X927(This)X
  3412. X1104(splitting)X
  3413. X1400(causes)X
  3414. X1645(the)X
  3415. X1778(addresses)X
  3416. X2121(of)X
  3417. X432 2060(the)N
  3418. X567(non-splitting)X
  3419. X1012(bucket)X
  3420. X1263(\(L1\))X
  3421. X1443(to)X
  3422. X1541(be)X
  3423. X1653(duplicated.)X
  3424. X2063(The)X
  3425. X432 2148(directory)N
  3426. X766(now)X
  3427. X948(has)X
  3428. X1099(four)X
  3429. X1277(entries,)X
  3430. X1555(a)X
  3431. X1635(depth)X
  3432. X1857(of)X
  3433. X1968(2,)X
  3434. X2072(and)X
  3435. X432 2236(indexes)N
  3436. X700(the)X
  3437. X821(buckets)X
  3438. X1089(L00,)X
  3439. X1261(L01)X
  3440. X1413(and)X
  3441. X1552(L1,)X
  3442. X1684(as)X
  3443. X1774(shown)X
  3444. X2006(in)X
  3445. X2090(the)X
  3446. X432 2324(Figure)N
  3447. X661(2.)X
  3448. X604 2438(The)N
  3449. X756(crucial)X
  3450. X1002(part)X
  3451. X1154(of)X
  3452. X1247(the)X
  3453. X1371(algorithm)X
  3454. X1708(is)X
  3455. X1787(the)X
  3456. X1911(observa-)X
  3457. X432 2526(tion)N
  3458. X580(that)X
  3459. X724(L1)X
  3460. X837(is)X
  3461. X914(addressed)X
  3462. X1255(twice)X
  3463. X1453(in)X
  3464. X1539(the)X
  3465. X1661(directory.)X
  3466. X1995(If)X
  3467. X2073(this)X
  3468. X432 2614(bucket)N
  3469. X679(were)X
  3470. X869(to)X
  3471. X964(split)X
  3472. X1134(now,)X
  3473. X1324(the)X
  3474. X1454(directory)X
  3475. X1776(already)X
  3476. X2045(con-)X
  3477. X432 2702(tains)N
  3478. X611(room)X
  3479. X808(to)X
  3480. X898(hold)X
  3481. X1067(the)X
  3482. X1192(address)X
  3483. X1460(of)X
  3484. X1554(the)X
  3485. X1679(new)X
  3486. X1840(bucket.)X
  3487. X2121(In)X
  3488. X432 2790(general,)N
  3489. X711(the)X
  3490. X831(relationship)X
  3491. X1231(between)X
  3492. X1521(the)X
  3493. X1641(directory)X
  3494. X1953(and)X
  3495. X2090(the)X
  3496. X432 2878(number)N
  3497. X704(of)X
  3498. X798(bucket)X
  3499. X1039(addresses)X
  3500. X1374(contained)X
  3501. X1713(therein)X
  3502. X1962(is)X
  3503. X2041(used)X
  3504. X432 2966(to)N
  3505. X517(decide)X
  3506. X750(when)X
  3507. X947(to)X
  3508. X1031(split)X
  3509. X1190(the)X
  3510. X1310(directory.)X
  3511. X1662(Each)X
  3512. X1845(bucket)X
  3513. X2081(has)X
  3514. X432 3054(a)N
  3515. X505(depth,)X
  3516. X740(\()X
  3517. X2 f
  3518. X767(n)X
  3519. X7 s
  3520. X3070(b)Y
  3521. X10 s
  3522. X1 f
  3523. X848 3054(\),)N
  3524. X932(associated)X
  3525. X1299(with)X
  3526. X1478(it)X
  3527. X1558(and)X
  3528. X1710(appears)X
  3529. X1992(in)X
  3530. X2090(the)X
  3531. X432 3142(directory)N
  3532. X744(exactly)X
  3533. X998(2)X
  3534. X2 f
  3535. X7 s
  3536. X3106(n)Y
  3537. X9 f
  3538. X1075(-)X
  3539. X2 f
  3540. X1106(n)X
  3541. X4 s
  3542. X3110(b)Y
  3543. X7 s
  3544. X1 f
  3545. X10 s
  3546. X1181 3142(times.)N
  3547. X1396(When)X
  3548. X1610(a)X
  3549. X1668(bucket)X
  3550. X1904(splits,)X
  3551. X2113(its)X
  3552. X432 3230(depth)N
  3553. X638(increases)X
  3554. X961(by)X
  3555. X1069(one.)X
  3556. X1253(The)X
  3557. X1406(directory)X
  3558. X1724(must)X
  3559. X1907(split)X
  3560. X2072(any)X
  3561. X432 3318(time)N
  3562. X602(a)X
  3563. X665(bucket's)X
  3564. X964(depth)X
  3565. X1169(exceeds)X
  3566. X1451(the)X
  3567. X1576(depth)X
  3568. X1781(of)X
  3569. X1875(the)X
  3570. X2000(direc-)X
  3571. X432 3406(tory.)N
  3572. X630(The)X
  3573. X784(following)X
  3574. X1123(code)X
  3575. X1303(fragment)X
  3576. X1621(helps)X
  3577. X1818(to)X
  3578. X1908(illustrate)X
  3579. X432 3494(the)N
  3580. X554(extendible)X
  3581. X912(hashing)X
  3582. X1185(algorithm)X
  3583. X1520([FAG79])X
  3584. X1838(for)X
  3585. X1955(access-)X
  3586. X432 3582(ing)N
  3587. X554(individual)X
  3588. X898(buckets)X
  3589. X1163(and)X
  3590. X1299(maintaining)X
  3591. X1701(the)X
  3592. X1819(directory.)X
  3593. X0 f
  3594. X8 s
  3595. X432 3881(hash)N
  3596. X622(=)X
  3597. X698 -0.4038(calchash\(key\);)AX
  3598. X432 3969(mask)N
  3599. X622(=)X
  3600. X698 -0.4018(maskvec[depth];)AX
  3601. X432 4145(bucket)N
  3602. X698(=)X
  3603. X774 -0.4038(directory[hash)AX
  3604. X1344(&)X
  3605. X1420(mask];)X
  3606. X432 4321(/*)N
  3607. X546(Key)X
  3608. X698 -0.4219(Insertion)AX
  3609. X1078(*/)X
  3610. X432 4409(if)N
  3611. X546 -0.4038(\(store\(bucket,)AX
  3612. X1116(key,)X
  3613. X1306(data\))X
  3614. X1534(==)X
  3615. X1648(FAIL\))X
  3616. X1876({)X
  3617. X720 4497(newbl)N
  3618. X948(=)X
  3619. X1024 -0.4167(getpage\(\);)AX
  3620. X720 4585 -0.4000(bucket->depth++;)AN
  3621. X720 4673 -0.4091(newbl->depth)AN
  3622. X1214(=)X
  3623. X1290 -0.4038(bucket->depth;)AX
  3624. X720 4761(if)N
  3625. X834 -0.4038(\(bucket->depth)AX
  3626. X1404(>)X
  3627. X1480(depth\))X
  3628. X1746({)X
  3629. X1008 4849(/*)N
  3630. X1122(double)X
  3631. X1388 -0.4219(directory)AX
  3632. X1768(*/)X
  3633. X1008 4937(depth++;)N
  3634. X1 f
  3635. X16 s
  3636. X432 5033 MXY
  3637. X864 0 Dl
  3638. X2 f
  3639. X8 s
  3640. X472 5088(5)N
  3641. X1 f
  3642. X9 s
  3643. X534 5113(This)N
  3644. X692(decision)X
  3645. X962(to)X
  3646. X1048(split)X
  3647. X1202(the)X
  3648. X1319(directory)X
  3649. X1608(is)X
  3650. X1685(based)X
  3651. X1878(on)X
  3652. X1979(a)X
  3653. X2040(com-)X
  3654. X432 5193(parison)N
  3655. X666(of)X
  3656. X748(the)X
  3657. X858(depth)X
  3658. X1040(of)X
  3659. X1121(the)X
  3660. X1230(page)X
  3661. X1387(being)X
  3662. X1568(split)X
  3663. X1713(and)X
  3664. X1838(the)X
  3665. X1947(depth)X
  3666. X2128(of)X
  3667. X432 5273(the)N
  3668. X543(trie.)X
  3669. X698(In)X
  3670. X781(Figure)X
  3671. X992(2,)X
  3672. X1069(the)X
  3673. X1180(depths)X
  3674. X1390(of)X
  3675. X1472(both)X
  3676. X1622(L00)X
  3677. X1760(and)X
  3678. X1886(L01)X
  3679. X2024(are)X
  3680. X2134(2,)X
  3681. X432 5353(whereas)N
  3682. X689(the)X
  3683. X798(depth)X
  3684. X979(of)X
  3685. X1060(L1)X
  3686. X1161(is)X
  3687. X1230(1.)X
  3688. X1323(Therefore,)X
  3689. X1646(if)X
  3690. X1710(L1)X
  3691. X1810(were)X
  3692. X1970(to)X
  3693. X2046(split,)X
  3694. X432 5433(the)N
  3695. X543(directory)X
  3696. X826(would)X
  3697. X1029(not)X
  3698. X1144(need)X
  3699. X1303(to)X
  3700. X1382(split.)X
  3701. X1565(In)X
  3702. X1648(reality,)X
  3703. X1872(a)X
  3704. X1926(bucket)X
  3705. X2140(is)X
  3706. X432 5513(allocated)N
  3707. X727(for)X
  3708. X846(the)X
  3709. X969(directory)X
  3710. X1264(at)X
  3711. X1351(the)X
  3712. X1474(time)X
  3713. X1637(of)X
  3714. X1732(\256le)X
  3715. X1858(creation)X
  3716. X2124(so)X
  3717. X432 5593(although)N
  3718. X707(the)X
  3719. X818(directory)X
  3720. X1100(splits)X
  3721. X1274(logically,)X
  3722. X1566(physical)X
  3723. X1828(splits)X
  3724. X2002(do)X
  3725. X2096(not)X
  3726. X432 5673(occur)N
  3727. X610(until)X
  3728. X760(the)X
  3729. X866(\256le)X
  3730. X976(becomes)X
  3731. X1246(quite)X
  3732. X1408(large.)X
  3733. X0 f
  3734. X8 s
  3735. X2994 538 -0.4219(directory)AN
  3736. X3374(=)X
  3737. X3450 -0.3971(double\(directory\);)AX
  3738. X2706 626(})N
  3739. X2706 714 -0.3958(splitbucket\(bucket,)AN
  3740. X3466(newbl\))X
  3741. X2706 802(...)N
  3742. X2418 890(})N
  3743. X2 f
  3744. X10 s
  3745. X3169 1255(hsearch)N
  3746. X1 f
  3747. X2590 1387(Since)N
  3748. X2 f
  3749. X2807(hsearch)X
  3750. X1 f
  3751. X3100(does)X
  3752. X3286(not)X
  3753. X3427(have)X
  3754. X3617(to)X
  3755. X3717(translate)X
  3756. X4027(hash)X
  3757. X2418 1475(values)N
  3758. X2659(into)X
  3759. X2819(disk)X
  3760. X2988(addresses,)X
  3761. X3352(it)X
  3762. X3432(can)X
  3763. X3579(use)X
  3764. X3721(much)X
  3765. X3934(simpler)X
  3766. X2418 1563(algorithms)N
  3767. X2808(than)X
  3768. X2994(those)X
  3769. X3211(de\256ned)X
  3770. X3495(above.)X
  3771. X3775(System)X
  3772. X4058(V's)X
  3773. X2 f
  3774. X2418 1651(hsearch)N
  3775. X1 f
  3776. X2708(constructs)X
  3777. X3069(a)X
  3778. X3141(\256xed-size)X
  3779. X3489(hash)X
  3780. X3671(table)X
  3781. X3862(\(speci\256ed)X
  3782. X2418 1739(by)N
  3783. X2519(the)X
  3784. X2637(user)X
  3785. X2791(at)X
  3786. X2869(table)X
  3787. X3045(creation\).)X
  3788. X3391(By)X
  3789. X3504(default,)X
  3790. X3767(a)X
  3791. X3823(multiplica-)X
  3792. X2418 1827(tive)N
  3793. X2570(hash)X
  3794. X2748(function)X
  3795. X3046(based)X
  3796. X3260(on)X
  3797. X3371(that)X
  3798. X3522(described)X
  3799. X3861(in)X
  3800. X3954(Knuth,)X
  3801. X2418 1915(Volume)N
  3802. X2710(3,)X
  3803. X2804(section)X
  3804. X3065(6.4)X
  3805. X3199([KNU68])X
  3806. X3541(is)X
  3807. X3628(used)X
  3808. X3809(to)X
  3809. X3905(obtain)X
  3810. X4138(a)X
  3811. X2418 2003(primary)N
  3812. X2694(bucket)X
  3813. X2930(address.)X
  3814. X3233(If)X
  3815. X3309(this)X
  3816. X3446(bucket)X
  3817. X3681(is)X
  3818. X3755(full,)X
  3819. X3907(a)X
  3820. X3964(secon-)X
  3821. X2418 2091(dary)N
  3822. X2593(multiplicative)X
  3823. X3069(hash)X
  3824. X3248(value)X
  3825. X3454(is)X
  3826. X3538(computed)X
  3827. X3885(to)X
  3828. X3978(de\256ne)X
  3829. X2418 2179(the)N
  3830. X2542(probe)X
  3831. X2751(interval.)X
  3832. X3062(The)X
  3833. X3213(probe)X
  3834. X3422(interval)X
  3835. X3693(is)X
  3836. X3772(added)X
  3837. X3989(to)X
  3838. X4076(the)X
  3839. X2418 2267(original)N
  3840. X2712(bucket)X
  3841. X2971(address)X
  3842. X3257(\(modulo)X
  3843. X3573(the)X
  3844. X3716(table)X
  3845. X3916(size\))X
  3846. X4112(to)X
  3847. X2418 2355(obtain)N
  3848. X2658(a)X
  3849. X2734(new)X
  3850. X2908(bucket)X
  3851. X3162(address.)X
  3852. X3483(This)X
  3853. X3665(process)X
  3854. X3946(repeats)X
  3855. X2418 2443(until)N
  3856. X2588(an)X
  3857. X2688(empty)X
  3858. X2911(bucket)X
  3859. X3148(is)X
  3860. X3224(found.)X
  3861. X3474(If)X
  3862. X3551(no)X
  3863. X3654(bucket)X
  3864. X3891(is)X
  3865. X3967(found,)X
  3866. X2418 2531(an)N
  3867. X2514(insertion)X
  3868. X2814(fails)X
  3869. X2972(with)X
  3870. X3134(a)X
  3871. X3190(``table)X
  3872. X3420(full'')X
  3873. X3605(condition.)X
  3874. X2590 2645(The)N
  3875. X2768(basic)X
  3876. X2986(algorithm)X
  3877. X3350(may)X
  3878. X3541(be)X
  3879. X3670(modi\256ed)X
  3880. X4006(by)X
  3881. X4138(a)X
  3882. X2418 2733(number)N
  3883. X2705(of)X
  3884. X2813(compile)X
  3885. X3112(time)X
  3886. X3295(options)X
  3887. X3571(available)X
  3888. X3902(to)X
  3889. X4005(those)X
  3890. X2418 2821(users)N
  3891. X2604(with)X
  3892. X2767(AT&T)X
  3893. X3006(source)X
  3894. X3237(code.)X
  3895. X3450(First,)X
  3896. X3637(the)X
  3897. X3756(package)X
  3898. X4040(pro-)X
  3899. X2418 2909(vides)N
  3900. X2638(two)X
  3901. X2809(options)X
  3902. X3094(for)X
  3903. X3238(hash)X
  3904. X3435(functions.)X
  3905. X3803(Users)X
  3906. X4036(may)X
  3907. X2418 2997(specify)N
  3908. X2690(their)X
  3909. X2877(own)X
  3910. X3055(hash)X
  3911. X3242(function)X
  3912. X3549(by)X
  3913. X3669(compiling)X
  3914. X4032(with)X
  3915. X2418 3085(``USCR'')N
  3916. X2757(de\256ned)X
  3917. X3016(and)X
  3918. X3155(declaring)X
  3919. X3477(and)X
  3920. X3616(de\256ning)X
  3921. X3901(the)X
  3922. X4022(vari-)X
  3923. X2418 3173(able)N
  3924. X2 f
  3925. X2578(hcompar)X
  3926. X1 f
  3927. X2863(,)X
  3928. X2909(a)X
  3929. X2971(function)X
  3930. X3263(taking)X
  3931. X3488(two)X
  3932. X3633(string)X
  3933. X3840(arguments)X
  3934. X2418 3261(and)N
  3935. X2560(returning)X
  3936. X2880(an)X
  3937. X2982(integer.)X
  3938. X3271(Users)X
  3939. X3480(may)X
  3940. X3643(also)X
  3941. X3797(request)X
  3942. X4054(that)X
  3943. X2418 3349(hash)N
  3944. X2587(values)X
  3945. X2814(be)X
  3946. X2912(computed)X
  3947. X3250(simply)X
  3948. X3489(by)X
  3949. X3590(taking)X
  3950. X3811(the)X
  3951. X3930(modulo)X
  3952. X2418 3437(of)N
  3953. X2521(key)X
  3954. X2673(\(using)X
  3955. X2909(division)X
  3956. X3201(rather)X
  3957. X3424(than)X
  3958. X3597(multiplication)X
  3959. X4080(for)X
  3960. X2418 3525(hash)N
  3961. X2589(value)X
  3962. X2787(calculation\).)X
  3963. X3230(If)X
  3964. X3308(this)X
  3965. X3447(technique)X
  3966. X3783(is)X
  3967. X3859(used,)X
  3968. X4049(col-)X
  3969. X2418 3613(lisions)N
  3970. X2651(are)X
  3971. X2775(resolved)X
  3972. X3072(by)X
  3973. X3176(scanning)X
  3974. X3485(sequentially)X
  3975. X3896(from)X
  3976. X4076(the)X
  3977. X2418 3701(selected)N
  3978. X2702(bucket)X
  3979. X2941(\(linear)X
  3980. X3176(probing\).)X
  3981. X3517(This)X
  3982. X3684(option)X
  3983. X3913(is)X
  3984. X3991(avail-)X
  3985. X2418 3789(able)N
  3986. X2572(by)X
  3987. X2672(de\256ning)X
  3988. X2954(the)X
  3989. X3072(variable)X
  3990. X3351(``DIV'')X
  3991. X3622(at)X
  3992. X3700(compile)X
  3993. X3978(time.)X
  3994. X2590 3903(A)N
  3995. X2720(second)X
  3996. X3015(option,)X
  3997. X3311(based)X
  3998. X3565(on)X
  3999. X3716(an)X
  4000. X3863(algorithm)X
  4001. X2418 3991(discovered)N
  4002. X2787(by)X
  4003. X2888(Richard)X
  4004. X3163(P.)X
  4005. X3248(Brent,)X
  4006. X3466(rearranges)X
  4007. X3822(the)X
  4008. X3940(table)X
  4009. X4116(at)X
  4010. X2418 4079(the)N
  4011. X2549(time)X
  4012. X2724(of)X
  4013. X2824(insertion)X
  4014. X3137(in)X
  4015. X3232(order)X
  4016. X3434(to)X
  4017. X3528(speed)X
  4018. X3743(up)X
  4019. X3855(retrievals.)X
  4020. X2418 4167(The)N
  4021. X2571(basic)X
  4022. X2764(idea)X
  4023. X2926(is)X
  4024. X3007(to)X
  4025. X3097(shorten)X
  4026. X3361(long)X
  4027. X3531(probe)X
  4028. X3741(sequences)X
  4029. X4094(by)X
  4030. X2418 4255(lengthening)N
  4031. X2833(short)X
  4032. X3030(probe)X
  4033. X3249(sequences.)X
  4034. X3651(Once)X
  4035. X3857(the)X
  4036. X3991(probe)X
  4037. X2418 4343(chain)N
  4038. X2613(has)X
  4039. X2741(exceeded)X
  4040. X3062(some)X
  4041. X3252(threshold)X
  4042. X3571(\(Brent)X
  4043. X3796(suggests)X
  4044. X4087(2\),)X
  4045. X2418 4431(we)N
  4046. X2541(attempt)X
  4047. X2809(to)X
  4048. X2899(shuf\257e)X
  4049. X3145(any)X
  4050. X3289(colliding)X
  4051. X3601(keys)X
  4052. X3776(\(keys)X
  4053. X3978(which)X
  4054. X2418 4519(appeared)N
  4055. X2734(in)X
  4056. X2821(the)X
  4057. X2944(probe)X
  4058. X3152(sequence)X
  4059. X3471(of)X
  4060. X3562(the)X
  4061. X3684(new)X
  4062. X3842(key\).)X
  4063. X4049(The)X
  4064. X2418 4607(details)N
  4065. X2652(of)X
  4066. X2744(this)X
  4067. X2884(key)X
  4068. X3025(shuf\257ing)X
  4069. X3333(can)X
  4070. X3469(be)X
  4071. X3569(found)X
  4072. X3780(in)X
  4073. X3866([KNU68])X
  4074. X2418 4695(and)N
  4075. X2576([BRE73].)X
  4076. X2946(This)X
  4077. X3129(algorithm)X
  4078. X3481(may)X
  4079. X3660(be)X
  4080. X3777(obtained)X
  4081. X4094(by)X
  4082. X2418 4783(de\256ning)N
  4083. X2700(the)X
  4084. X2818(variable)X
  4085. X3097(``BRENT'')X
  4086. X3487(at)X
  4087. X3565(compile)X
  4088. X3843(time.)X
  4089. X2590 4897(A)N
  4090. X2698(third)X
  4091. X2899(set)X
  4092. X3038(of)X
  4093. X3154(options,)X
  4094. X3458(obtained)X
  4095. X3783(by)X
  4096. X3912(de\256ning)X
  4097. X2418 4985(``CHAINED'',)N
  4098. X2943(use)X
  4099. X3086(linked)X
  4100. X3321(lists)X
  4101. X3484(to)X
  4102. X3581(resolve)X
  4103. X3848(collisions.)X
  4104. X2418 5073(Either)N
  4105. X2647(of)X
  4106. X2747(the)X
  4107. X2878(primary)X
  4108. X3164(hash)X
  4109. X3343(function)X
  4110. X3642(described)X
  4111. X3982(above)X
  4112. X2418 5161(may)N
  4113. X2584(be)X
  4114. X2688(used,)X
  4115. X2882(but)X
  4116. X3011(all)X
  4117. X3118(collisions)X
  4118. X3451(are)X
  4119. X3577(resolved)X
  4120. X3876(by)X
  4121. X3983(build-)X
  4122. X2418 5249(ing)N
  4123. X2554(a)X
  4124. X2623(linked)X
  4125. X2856(list)X
  4126. X2986(of)X
  4127. X3086(entries)X
  4128. X3333(from)X
  4129. X3522(the)X
  4130. X3653(primary)X
  4131. X3940(bucket.)X
  4132. X2418 5337(By)N
  4133. X2542(default,)X
  4134. X2816(new)X
  4135. X2981(entries)X
  4136. X3226(will)X
  4137. X3381(be)X
  4138. X3488(added)X
  4139. X3711(to)X
  4140. X3804(a)X
  4141. X3871(bucket)X
  4142. X4116(at)X
  4143. X2418 5425(the)N
  4144. X2541(beginning)X
  4145. X2886(of)X
  4146. X2978(the)X
  4147. X3101(bucket)X
  4148. X3339(chain.)X
  4149. X3577(However,)X
  4150. X3916(compile)X
  4151. X2418 5513(options)N
  4152. X2706(``SORTUP'')X
  4153. X3173(or)X
  4154. X3293(``SORTDOWN'')X
  4155. X3908(may)X
  4156. X4098(be)X
  4157. X2418 5601(speci\256ed)N
  4158. X2723(to)X
  4159. X2805(order)X
  4160. X2995(the)X
  4161. X3113(hash)X
  4162. X3280(chains)X
  4163. X3505(within)X
  4164. X3729(each)X
  4165. X3897(bucket.)X
  4166. X3 f
  4167. X432 5960(4)N
  4168. X2970(USENIX)X
  4169. X9 f
  4170. X3292(-)X
  4171. X3 f
  4172. X3356(Winter)X
  4173. X3621('91)X
  4174. X9 f
  4175. X3748(-)X
  4176. X3 f
  4177. X3812(Dallas,)X
  4178. X4065(TX)X
  4179. X
  4180. X5 p
  4181. X%%Page: 5 5
  4182. X0(Courier)xf 0 f
  4183. X10 s 10 xH 0 xS 0 f
  4184. X3 f
  4185. X720 258(Seltzer)N
  4186. X977(&)X
  4187. X1064(Yigit)X
  4188. X3278(A)X
  4189. X3356(New)X
  4190. X3528(Hashing)X
  4191. X3831(Package)X
  4192. X4136(for)X
  4193. X4259(UNIX)X
  4194. X2 f
  4195. X1444 538(dynahash)N
  4196. X1 f
  4197. X892 670(The)N
  4198. X2 f
  4199. X1054(dynahash)X
  4200. X1 f
  4201. X1398(library,)X
  4202. X1669(written)X
  4203. X1932(by)X
  4204. X2048(Esmond)X
  4205. X2346(Pitt,)X
  4206. X720 758(implements)N
  4207. X1183(Larson's)X
  4208. X1554(linear)X
  4209. X1827(hashing)X
  4210. X2165(algorithm)X
  4211. X720 846([LAR88])N
  4212. X1097(with)X
  4213. X1302(an)X
  4214. X2 f
  4215. X1440(hsearch)X
  4216. X1 f
  4217. X1756(compatible)X
  4218. X2174(interface.)X
  4219. X720 934(Intuitively,)N
  4220. X1099(a)X
  4221. X1161(hash)X
  4222. X1334(table)X
  4223. X1516(begins)X
  4224. X1751(as)X
  4225. X1844(a)X
  4226. X1905(single)X
  4227. X2121(bucket)X
  4228. X2360(and)X
  4229. X720 1022(grows)N
  4230. X941(in)X
  4231. X1028(generations,)X
  4232. X1443(where)X
  4233. X1665(a)X
  4234. X1725(generation)X
  4235. X2088(corresponds)X
  4236. X720 1110(to)N
  4237. X815(a)X
  4238. X884(doubling)X
  4239. X1201(in)X
  4240. X1296(the)X
  4241. X1427(size)X
  4242. X1585(of)X
  4243. X1685(the)X
  4244. X1815(hash)X
  4245. X1994(table.)X
  4246. X2222(The)X
  4247. X2379(0)X
  4248. X2 f
  4249. X7 s
  4250. X1078(th)Y
  4251. X10 s
  4252. X1 f
  4253. X720 1198(generation)N
  4254. X1085(occurs)X
  4255. X1321(as)X
  4256. X1414(the)X
  4257. X1538(table)X
  4258. X1719(grows)X
  4259. X1940(from)X
  4260. X2121(one)X
  4261. X2262(bucket)X
  4262. X720 1286(to)N
  4263. X814(two.)X
  4264. X1006(In)X
  4265. X1105(the)X
  4266. X1235(next)X
  4267. X1405(generation)X
  4268. X1776(the)X
  4269. X1906(table)X
  4270. X2093(grows)X
  4271. X2320(from)X
  4272. X720 1374(two)N
  4273. X862(to)X
  4274. X946(four.)X
  4275. X1122(During)X
  4276. X1371(each)X
  4277. X1541(generation,)X
  4278. X1921(every)X
  4279. X2121(bucket)X
  4280. X2356(that)X
  4281. X720 1462(existed)N
  4282. X967(at)X
  4283. X1045(the)X
  4284. X1163(beginning)X
  4285. X1503(of)X
  4286. X1590(the)X
  4287. X1708(generation)X
  4288. X2067(is)X
  4289. X2140(split.)X
  4290. X892 1576(The)N
  4291. X1041(table)X
  4292. X1221(starts)X
  4293. X1414(as)X
  4294. X1505(a)X
  4295. X1565(single)X
  4296. X1780(bucket)X
  4297. X2018(\(numbered)X
  4298. X2389(0\),)X
  4299. X720 1664(the)N
  4300. X839(current)X
  4301. X1088(split)X
  4302. X1245(bucket)X
  4303. X1479(is)X
  4304. X1552(set)X
  4305. X1661(to)X
  4306. X1743(bucket)X
  4307. X1977(0,)X
  4308. X2057(and)X
  4309. X2193(the)X
  4310. X2311(max-)X
  4311. X720 1752(imum)N
  4312. X933(split)X
  4313. X1097(point)X
  4314. X1288(is)X
  4315. X1368(set)X
  4316. X1483(to)X
  4317. X1571(twice)X
  4318. X1771(the)X
  4319. X1895(current)X
  4320. X2149(split)X
  4321. X2312(point)X
  4322. X720 1840(\(0\).)N
  4323. X863(When)X
  4324. X1084(it)X
  4325. X1157(is)X
  4326. X1239(time)X
  4327. X1410(for)X
  4328. X1532(a)X
  4329. X1596(bucket)X
  4330. X1838(to)X
  4331. X1928(split,)X
  4332. X2113(the)X
  4333. X2239(keys)X
  4334. X2414(in)X
  4335. X720 1928(the)N
  4336. X872(current)X
  4337. X1154(split)X
  4338. X1345(bucket)X
  4339. X1612(are)X
  4340. X1764(divided)X
  4341. X2057(between)X
  4342. X2378(the)X
  4343. X720 2016(current)N
  4344. X981(split)X
  4345. X1151(bucket)X
  4346. X1397(and)X
  4347. X1545(a)X
  4348. X1613(new)X
  4349. X1779(bucket)X
  4350. X2025(whose)X
  4351. X2262(bucket)X
  4352. X720 2104(number)N
  4353. X1000(is)X
  4354. X1088(equal)X
  4355. X1297(to)X
  4356. X1394(1)X
  4357. X1469(+)X
  4358. X1549(current)X
  4359. X1812(split)X
  4360. X1984(bucket)X
  4361. X2232(+)X
  4362. X2311(max-)X
  4363. X720 2192(imum)N
  4364. X927(split)X
  4365. X1085(point.)X
  4366. X1310(We)X
  4367. X1442(can)X
  4368. X1574(determine)X
  4369. X1915(which)X
  4370. X2131(keys)X
  4371. X2298(move)X
  4372. X720 2280(to)N
  4373. X807(the)X
  4374. X929(new)X
  4375. X1087(bucket)X
  4376. X1325(by)X
  4377. X1429(examining)X
  4378. X1791(the)X
  4379. X2 f
  4380. X1913(n)X
  4381. X7 s
  4382. X1962 2248(th)N
  4383. X10 s
  4384. X1 f
  4385. X2043 2280(bit)N
  4386. X2151(of)X
  4387. X2242(a)X
  4388. X2302(key's)X
  4389. X720 2368(hash)N
  4390. X899(value)X
  4391. X1105(where)X
  4392. X1334(n)X
  4393. X1406(is)X
  4394. X1491(the)X
  4395. X1620(generation)X
  4396. X1990(number.)X
  4397. X2306(After)X
  4398. X720 2456(the)N
  4399. X846(bucket)X
  4400. X1088(at)X
  4401. X1174(the)X
  4402. X1300(maximum)X
  4403. X1651(split)X
  4404. X1815(point)X
  4405. X2006(has)X
  4406. X2140(been)X
  4407. X2319(split,)X
  4408. X720 2544(the)N
  4409. X839(generation)X
  4410. X1198(number)X
  4411. X1463(is)X
  4412. X1536(incremented,)X
  4413. X1973(the)X
  4414. X2091(current)X
  4415. X2339(split)X
  4416. X720 2632(point)N
  4417. X908(is)X
  4418. X985(set)X
  4419. X1098(back)X
  4420. X1274(to)X
  4421. X1360(zero,)X
  4422. X1543(and)X
  4423. X1683(the)X
  4424. X1805(maximum)X
  4425. X2152(split)X
  4426. X2312(point)X
  4427. X720 2720(is)N
  4428. X815(set)X
  4429. X946(to)X
  4430. X1050(the)X
  4431. X1190(number)X
  4432. X1477(of)X
  4433. X1586(the)X
  4434. X1725(last)X
  4435. X1877(bucket)X
  4436. X2132(in)X
  4437. X2235(the)X
  4438. X2374(\256le)X
  4439. X720 2808(\(which)N
  4440. X971(is)X
  4441. X1052(equal)X
  4442. X1253(to)X
  4443. X1342(twice)X
  4444. X1543(the)X
  4445. X1668(old)X
  4446. X1797(maximum)X
  4447. X2148(split)X
  4448. X2312(point)X
  4449. X720 2896(plus)N
  4450. X873(1\).)X
  4451. X892 3010(To)N
  4452. X1031(facilitate)X
  4453. X1361(locating)X
  4454. X1668(keys,)X
  4455. X1884(we)X
  4456. X2027(maintain)X
  4457. X2356(two)X
  4458. X720 3098(masks.)N
  4459. X989(The)X
  4460. X1143(low)X
  4461. X1291(mask)X
  4462. X1488(is)X
  4463. X1569(equal)X
  4464. X1771(to)X
  4465. X1861(the)X
  4466. X1987(maximum)X
  4467. X2339(split)X
  4468. X720 3186(bucket)N
  4469. X967(and)X
  4470. X1116(the)X
  4471. X1247(high)X
  4472. X1422(mask)X
  4473. X1624(is)X
  4474. X1710(equal)X
  4475. X1917(to)X
  4476. X2011(the)X
  4477. X2141(next)X
  4478. X2311(max-)X
  4479. X720 3274(imum)N
  4480. X931(split)X
  4481. X1093(bucket.)X
  4482. X1372(To)X
  4483. X1486(locate)X
  4484. X1703(a)X
  4485. X1764(speci\256c)X
  4486. X2033(key,)X
  4487. X2193(we)X
  4488. X2311(com-)X
  4489. X720 3362(pute)N
  4490. X881(a)X
  4491. X940(32-bit)X
  4492. X1154(hash)X
  4493. X1324(value)X
  4494. X1520(using)X
  4495. X1715(a)X
  4496. X1773(bit-randomizing)X
  4497. X2311(algo-)X
  4498. X720 3450(rithm)N
  4499. X932(such)X
  4500. X1118(as)X
  4501. X1224(the)X
  4502. X1361(one)X
  4503. X1516(described)X
  4504. X1862(in)X
  4505. X1962([LAR88].)X
  4506. X2334(This)X
  4507. X720 3538(hash)N
  4508. X893(value)X
  4509. X1093(is)X
  4510. X1172(then)X
  4511. X1336(masked)X
  4512. X1607(with)X
  4513. X1775(the)X
  4514. X1898(high)X
  4515. X2065(mask.)X
  4516. X2299(If)X
  4517. X2378(the)X
  4518. X720 3626(resulting)N
  4519. X1026(number)X
  4520. X1297(is)X
  4521. X1376(greater)X
  4522. X1626(than)X
  4523. X1790(the)X
  4524. X1913(maximum)X
  4525. X2262(bucket)X
  4526. X720 3714(in)N
  4527. X823(the)X
  4528. X962(table)X
  4529. X1159(\(current)X
  4530. X1455(split)X
  4531. X1633(bucket)X
  4532. X1888(+)X
  4533. X1974(maximum)X
  4534. X2339(split)X
  4535. X720 3802(point\),)N
  4536. X962(the)X
  4537. X1091(hash)X
  4538. X1269(value)X
  4539. X1474(is)X
  4540. X1558(masked)X
  4541. X1834(with)X
  4542. X2007(the)X
  4543. X2136(low)X
  4544. X2287(mask.)X
  4545. X720 3890(In)N
  4546. X825(either)X
  4547. X1046(case,)X
  4548. X1242(the)X
  4549. X1377(result)X
  4550. X1592(of)X
  4551. X1696(the)X
  4552. X1831(mask)X
  4553. X2037(is)X
  4554. X2127(the)X
  4555. X2262(bucket)X
  4556. X720 3978(number)N
  4557. X989(for)X
  4558. X1107(the)X
  4559. X1229(given)X
  4560. X1431(key.)X
  4561. X1611(The)X
  4562. X1759(algorithm)X
  4563. X2093(below)X
  4564. X2312(illus-)X
  4565. X720 4066(trates)N
  4566. X914(this)X
  4567. X1049(process.)X
  4568. X0 f
  4569. X8 s
  4570. X720 4365(h)N
  4571. X796(=)X
  4572. X872 -0.4038(calchash\(key\);)AX
  4573. X720 4453(bucket)N
  4574. X986(=)X
  4575. X1062(h)X
  4576. X1138(&)X
  4577. X1214 -0.4167(high_mask;)AX
  4578. X720 4541(if)N
  4579. X834(\()X
  4580. X910(bucket)X
  4581. X1176(>)X
  4582. X1252 -0.4167(max_bucket)AX
  4583. X1670(\))X
  4584. X1008 4629(bucket)N
  4585. X1274(=)X
  4586. X1350(h)X
  4587. X1426(&)X
  4588. X1502 -0.4219(low_mask;)AX
  4589. X720 4717 -0.4018(return\(bucket\);)AN
  4590. X1 f
  4591. X10 s
  4592. X892 5042(In)N
  4593. X1013(order)X
  4594. X1237(to)X
  4595. X1353(decide)X
  4596. X1617(when)X
  4597. X1845(to)X
  4598. X1961(split)X
  4599. X2152(a)X
  4600. X2242(bucket,)X
  4601. X2 f
  4602. X720 5130(dynahash)N
  4603. X1 f
  4604. X1050(uses)X
  4605. X2 f
  4606. X1210(controlled)X
  4607. X1561(splitting)X
  4608. X1 f
  4609. X1822(.)X
  4610. X1884(A)X
  4611. X1964(hash)X
  4612. X2133(table)X
  4613. X2311(has)X
  4614. X2440(a)X
  4615. X720 5218(\256ll)N
  4616. X837(factor)X
  4617. X1054(which)X
  4618. X1279(is)X
  4619. X1361(expressed)X
  4620. X1707(in)X
  4621. X1798(terms)X
  4622. X2004(of)X
  4623. X2099(the)X
  4624. X2225(average)X
  4625. X720 5306(number)N
  4626. X990(of)X
  4627. X1082(keys)X
  4628. X1253(in)X
  4629. X1339(each)X
  4630. X1511(bucket.)X
  4631. X1789(Each)X
  4632. X1974(time)X
  4633. X2140(the)X
  4634. X2262(table's)X
  4635. X720 5394(total)N
  4636. X885(number)X
  4637. X1153(of)X
  4638. X1243(keys)X
  4639. X1413(divided)X
  4640. X1676(by)X
  4641. X1778(its)X
  4642. X1875(number)X
  4643. X2142(of)X
  4644. X2231(buckets)X
  4645. X720 5482(exceeds)N
  4646. X995(this)X
  4647. X1130(\256ll)X
  4648. X1238(factor,)X
  4649. X1466(a)X
  4650. X1522(bucket)X
  4651. X1756(is)X
  4652. X1829(split.)X
  4653. X2878 538(Since)N
  4654. X3079(the)X
  4655. X2 f
  4656. X3200(hsearch)X
  4657. X1 f
  4658. X3477(create)X
  4659. X3693(interface)X
  4660. X3998(\()X
  4661. X2 f
  4662. X4025(hcreate)X
  4663. X1 f
  4664. X4266(\))X
  4665. X4315(calls)X
  4666. X2706 626(for)N
  4667. X2842(an)X
  4668. X2960(estimate)X
  4669. X3269(of)X
  4670. X3378(the)X
  4671. X3518(\256nal)X
  4672. X3702(size)X
  4673. X3869(of)X
  4674. X3978(the)X
  4675. X4118(hash)X
  4676. X4306(table)X
  4677. X2706 714(\()N
  4678. X2 f
  4679. X2733(nelem)X
  4680. X1 f
  4681. X2925(\),)X
  4682. X2 f
  4683. X3007(dynahash)X
  4684. X1 f
  4685. X3349(uses)X
  4686. X3522(this)X
  4687. X3672(information)X
  4688. X4085(to)X
  4689. X4182(initialize)X
  4690. X2706 802(the)N
  4691. X2848(table.)X
  4692. X3088(The)X
  4693. X3257(initial)X
  4694. X3486(number)X
  4695. X3774(of)X
  4696. X3884(buckets)X
  4697. X4172(is)X
  4698. X4268(set)X
  4699. X4400(to)X
  4700. X2 f
  4701. X2706 890(nelem)N
  4702. X1 f
  4703. X2926(rounded)X
  4704. X3217(to)X
  4705. X3306(the)X
  4706. X3431(next)X
  4707. X3596(higher)X
  4708. X3828(power)X
  4709. X4056(of)X
  4710. X4150(two.)X
  4711. X4337(The)X
  4712. X2706 978(current)N
  4713. X2958(split)X
  4714. X3118(point)X
  4715. X3305(is)X
  4716. X3381(set)X
  4717. X3493(to)X
  4718. X3578(0)X
  4719. X3641(and)X
  4720. X3780(the)X
  4721. X3901(maximum)X
  4722. X4248(bucket)X
  4723. X2706 1066(and)N
  4724. X2842(maximum)X
  4725. X3186(split)X
  4726. X3343(point)X
  4727. X3527(are)X
  4728. X3646(set)X
  4729. X3755(to)X
  4730. X3837(this)X
  4731. X3972(rounded)X
  4732. X4255(value.)X
  4733. X3 f
  4734. X3148 1220(The)N
  4735. X3301(New)X
  4736. X3473(Implementation)X
  4737. X1 f
  4738. X2878 1352(Our)N
  4739. X3042(implementation)X
  4740. X3583(is)X
  4741. X3675(also)X
  4742. X3842(based)X
  4743. X4063(on)X
  4744. X4181(Larson's)X
  4745. X2706 1440(linear)N
  4746. X2939(hashing)X
  4747. X3238([LAR88])X
  4748. X3582(algorithm)X
  4749. X3943(as)X
  4750. X4060(well)X
  4751. X4248(as)X
  4752. X4364(the)X
  4753. X2 f
  4754. X2706 1528(dynahash)N
  4755. X1 f
  4756. X3047(implementation.)X
  4757. X3623(The)X
  4758. X2 f
  4759. X3782(dbm)X
  4760. X1 f
  4761. X3954(family)X
  4762. X4197(of)X
  4763. X4297(algo-)X
  4764. X2706 1616(rithms)N
  4765. X2942(decide)X
  4766. X3184(dynamically)X
  4767. X3612(which)X
  4768. X3840(bucket)X
  4769. X4085(to)X
  4770. X4178(split)X
  4771. X4346(and)X
  4772. X2706 1704(when)N
  4773. X2914(to)X
  4774. X3010(split)X
  4775. X3180(it)X
  4776. X3257(\(when)X
  4777. X3491(it)X
  4778. X3568(over\257ows\))X
  4779. X3944(while)X
  4780. X2 f
  4781. X4155(dynahash)X
  4782. X1 f
  4783. X2706 1792(splits)N
  4784. X2933(in)X
  4785. X3054(a)X
  4786. X3149(prede\256ned)X
  4787. X3547(order)X
  4788. X3776(\(linearly\))X
  4789. X4134(and)X
  4790. X4309(at)X
  4791. X4426(a)X
  4792. X2706 1880(prede\256ned)N
  4793. X3116(time)X
  4794. X3328(\(when)X
  4795. X3599(the)X
  4796. X3767(table)X
  4797. X3993(\256ll)X
  4798. X4151(factor)X
  4799. X4409(is)X
  4800. X2706 1968(exceeded\).)N
  4801. X3121(We)X
  4802. X3280(use)X
  4803. X3434(a)X
  4804. X3517(hybrid)X
  4805. X3773(of)X
  4806. X3887(these)X
  4807. X4099(techniques.)X
  4808. X2706 2056(Splits)N
  4809. X2913(occur)X
  4810. X3118(in)X
  4811. X3206(the)X
  4812. X3330(prede\256ned)X
  4813. X3695(order)X
  4814. X3891(of)X
  4815. X3984(linear)X
  4816. X4193(hashing,)X
  4817. X2706 2144(but)N
  4818. X2845(the)X
  4819. X2980(time)X
  4820. X3159(at)X
  4821. X3253(which)X
  4822. X3485(pages)X
  4823. X3704(are)X
  4824. X3839(split)X
  4825. X4012(is)X
  4826. X4101(determined)X
  4827. X2706 2232(both)N
  4828. X2869(by)X
  4829. X2970(page)X
  4830. X3143(over\257ows)X
  4831. X3480(\()X
  4832. X2 f
  4833. X3507(uncontrolled)X
  4834. X3937(splitting)X
  4835. X1 f
  4836. X4198(\))X
  4837. X4246(and)X
  4838. X4382(by)X
  4839. X2706 2320(exceeding)N
  4840. X3052(the)X
  4841. X3170(\256ll)X
  4842. X3278(factor)X
  4843. X3486(\()X
  4844. X2 f
  4845. X3513(controlled)X
  4846. X3862(splitting)X
  4847. X1 f
  4848. X4123(\))X
  4849. X2878 2434(A)N
  4850. X2962(hash)X
  4851. X3135(table)X
  4852. X3317(is)X
  4853. X3395(parameterized)X
  4854. X3876(by)X
  4855. X3981(both)X
  4856. X4148(its)X
  4857. X4248(bucket)X
  4858. X2706 2522(size)N
  4859. X2904(\()X
  4860. X2 f
  4861. X2931(bsize)X
  4862. X1 f
  4863. X(\))S
  4864. X3191(and)X
  4865. X3380(\256ll)X
  4866. X3541(factor)X
  4867. X3801(\()X
  4868. X2 f
  4869. X3828(ffactor)X
  4870. X1 f
  4871. X4041(\).)X
  4872. X4180(Whereas)X
  4873. X2 f
  4874. X2706 2610(dynahash's)N
  4875. X1 f
  4876. X3095(buckets)X
  4877. X3364(can)X
  4878. X3500(be)X
  4879. X3599(represented)X
  4880. X3993(as)X
  4881. X4083(a)X
  4882. X4142(linked)X
  4883. X4365(list)X
  4884. X2706 2698(of)N
  4885. X2798(elements)X
  4886. X3108(in)X
  4887. X3195(memory,)X
  4888. X3507(our)X
  4889. X3639(package)X
  4890. X3928(needs)X
  4891. X4136(to)X
  4892. X4222(support)X
  4893. X2706 2786(disk)N
  4894. X2874(access,)X
  4895. X3135(and)X
  4896. X3286(must)X
  4897. X3476(represent)X
  4898. X3806(buckets)X
  4899. X4086(in)X
  4900. X4183(terms)X
  4901. X4395(of)X
  4902. X2706 2874(pages.)N
  4903. X2955(The)X
  4904. X2 f
  4905. X3106(bsize)X
  4906. X1 f
  4907. X3291(is)X
  4908. X3369(the)X
  4909. X3492(size)X
  4910. X3642(\(in)X
  4911. X3756(bytes\))X
  4912. X3977(of)X
  4913. X4069(these)X
  4914. X4259(pages.)X
  4915. X2706 2962(As)N
  4916. X2833(in)X
  4917. X2933(linear)X
  4918. X3154(hashing,)X
  4919. X3461(the)X
  4920. X3597(number)X
  4921. X3879(of)X
  4922. X3983(buckets)X
  4923. X4265(in)X
  4924. X4364(the)X
  4925. X2706 3050(table)N
  4926. X2906(is)X
  4927. X3003(equal)X
  4928. X3221(to)X
  4929. X3327(the)X
  4930. X3469(number)X
  4931. X3758(of)X
  4932. X3869(keys)X
  4933. X4060(in)X
  4934. X4165(the)X
  4935. X4306(table)X
  4936. X2706 3138(divided)N
  4937. X2988(by)X
  4938. X2 f
  4939. X3110(ffactor)X
  4940. X1 f
  4941. X3323(.)X
  4942. X2 f
  4943. X8 s
  4944. X3113(6)Y
  4945. X1 f
  4946. X10 s
  4947. X3417 3138(The)N
  4948. X3584(controlled)X
  4949. X3950(splitting)X
  4950. X4252(occurs)X
  4951. X2706 3226(each)N
  4952. X2878(time)X
  4953. X3044(the)X
  4954. X3166(number)X
  4955. X3435(of)X
  4956. X3526(keys)X
  4957. X3697(in)X
  4958. X3783(the)X
  4959. X3905(table)X
  4960. X4085(exceeds)X
  4961. X4364(the)X
  4962. X2706 3314(\256ll)N
  4963. X2814(factor)X
  4964. X3022(multiplied)X
  4965. X3370(by)X
  4966. X3470(the)X
  4967. X3588(number)X
  4968. X3853(of)X
  4969. X3940(buckets.)X
  4970. X2878 3428(Inserting)N
  4971. X3187(keys)X
  4972. X3358(and)X
  4973. X3498(splitting)X
  4974. X3783(buckets)X
  4975. X4051(is)X
  4976. X4127(performed)X
  4977. X2706 3516(precisely)N
  4978. X3018(as)X
  4979. X3107(described)X
  4980. X3437(previously)X
  4981. X3796(for)X
  4982. X2 f
  4983. X3911(dynahash)X
  4984. X1 f
  4985. X4218(.)X
  4986. X4279(How-)X
  4987. X2706 3604(ever,)N
  4988. X2897(since)X
  4989. X3094(buckets)X
  4990. X3371(are)X
  4991. X3502(now)X
  4992. X3671(comprised)X
  4993. X4036(of)X
  4994. X4134(pages,)X
  4995. X4368(we)X
  4996. X2706 3692(must)N
  4997. X2883(be)X
  4998. X2981(prepared)X
  4999. X3284(to)X
  5000. X3367(handle)X
  5001. X3602(cases)X
  5002. X3793(where)X
  5003. X4011(the)X
  5004. X4130(size)X
  5005. X4276(of)X
  5006. X4364(the)X
  5007. X2706 3780(keys)N
  5008. X2873(and)X
  5009. X3009(data)X
  5010. X3163(in)X
  5011. X3245(a)X
  5012. X3301(bucket)X
  5013. X3535(exceed)X
  5014. X3779(the)X
  5015. X3897(bucket)X
  5016. X4131(size.)X
  5017. X3 f
  5018. X3318 3934(Over\257ow)N
  5019. X3654(Pages)X
  5020. X1 f
  5021. X2878 4066(There)N
  5022. X3095(are)X
  5023. X3223(two)X
  5024. X3372(cases)X
  5025. X3571(where)X
  5026. X3797(a)X
  5027. X3862(key)X
  5028. X4007(may)X
  5029. X4174(not)X
  5030. X4305(\256t)X
  5031. X4400(in)X
  5032. X2706 4154(its)N
  5033. X2802(designated)X
  5034. X3166(bucket.)X
  5035. X3441(In)X
  5036. X3529(the)X
  5037. X3647(\256rst)X
  5038. X3791(case,)X
  5039. X3970(the)X
  5040. X4088(total)X
  5041. X4250(size)X
  5042. X4395(of)X
  5043. X2706 4242(the)N
  5044. X2833(key)X
  5045. X2978(and)X
  5046. X3123(data)X
  5047. X3286(may)X
  5048. X3453(exceed)X
  5049. X3706(the)X
  5050. X3833(bucket)X
  5051. X4076(size.)X
  5052. X4269(In)X
  5053. X4364(the)X
  5054. X2706 4330(second,)N
  5055. X3008(addition)X
  5056. X3328(of)X
  5057. X3453(a)X
  5058. X3547(new)X
  5059. X3739(key)X
  5060. X3913(could)X
  5061. X4149(cause)X
  5062. X4386(an)X
  5063. X2706 4418(over\257ow,)N
  5064. X3068(but)X
  5065. X3227(the)X
  5066. X3382(bucket)X
  5067. X3652(in)X
  5068. X3770(question)X
  5069. X4097(is)X
  5070. X4206(not)X
  5071. X4364(yet)X
  5072. X2706 4506(scheduled)N
  5073. X3049(to)X
  5074. X3133(be)X
  5075. X3230(split.)X
  5076. X3428(In)X
  5077. X3516(existing)X
  5078. X3790(implementations,)X
  5079. X4364(the)X
  5080. X2706 4594(second)N
  5081. X2953(case)X
  5082. X3115(never)X
  5083. X3317(arises)X
  5084. X3523(\(since)X
  5085. X3738(buckets)X
  5086. X4006(are)X
  5087. X4128(split)X
  5088. X4288(when)X
  5089. X2706 4682(they)N
  5090. X2871(over\257ow\))X
  5091. X3210(and)X
  5092. X3352(the)X
  5093. X3476(\256rst)X
  5094. X3626(case)X
  5095. X3791(is)X
  5096. X3870(not)X
  5097. X3998(handled)X
  5098. X4278(at)X
  5099. X4362(all.)X
  5100. X2706 4770(Although)N
  5101. X3036(large)X
  5102. X3225(key/data)X
  5103. X3525(pair)X
  5104. X3678(handling)X
  5105. X3986(is)X
  5106. X4066(dif\256cult)X
  5107. X4346(and)X
  5108. X2706 4858(expensive,)N
  5109. X3083(it)X
  5110. X3163(is)X
  5111. X3252(essential.)X
  5112. X3604(In)X
  5113. X3706(a)X
  5114. X3777(linear)X
  5115. X3995(hashed)X
  5116. X4253(imple-)X
  5117. X2706 4946(mentation,)N
  5118. X3087(over\257ow)X
  5119. X3413(pages)X
  5120. X3636(are)X
  5121. X3775(required)X
  5122. X4083(for)X
  5123. X4217(buckets)X
  5124. X2706 5034(which)N
  5125. X2935(over\257ow)X
  5126. X3253(before)X
  5127. X3492(they)X
  5128. X3662(are)X
  5129. X3793(split,)X
  5130. X3982(so)X
  5131. X4085(we)X
  5132. X4211(can)X
  5133. X4355(use)X
  5134. X2706 5122(the)N
  5135. X2833(same)X
  5136. X3027(mechanism)X
  5137. X3421(for)X
  5138. X3544(large)X
  5139. X3734(key/data)X
  5140. X4035(pairs)X
  5141. X4220(that)X
  5142. X4368(we)X
  5143. X2706 5210(use)N
  5144. X2837(for)X
  5145. X2955(over\257ow)X
  5146. X3264(pages.)X
  5147. X3511(Logically,)X
  5148. X3862(we)X
  5149. X3980(chain)X
  5150. X4177(over\257ow)X
  5151. X16 s
  5152. X2706 5353 MXY
  5153. X864 0 Dl
  5154. X2 f
  5155. X8 s
  5156. X2746 5408(6)N
  5157. X1 f
  5158. X9 s
  5159. X2801 5433(This)N
  5160. X2952(is)X
  5161. X3023(not)X
  5162. X3138(strictly)X
  5163. X3361(true.)X
  5164. X3532(The)X
  5165. X3667(\256le)X
  5166. X3782(does)X
  5167. X3937(not)X
  5168. X4052(contract)X
  5169. X4306(when)X
  5170. X2706 5513(keys)N
  5171. X2861(are)X
  5172. X2972(deleted,)X
  5173. X3221(so)X
  5174. X3308(the)X
  5175. X3419(number)X
  5176. X3662(of)X
  5177. X3744(buckets)X
  5178. X3986(is)X
  5179. X4056(actually)X
  5180. X4306(equal)X
  5181. X2706 5593(to)N
  5182. X2782(the)X
  5183. X2890(maximum)X
  5184. X3202(number)X
  5185. X3441(of)X
  5186. X3520(keys)X
  5187. X3671(ever)X
  5188. X3814(present)X
  5189. X4041(in)X
  5190. X4116(the)X
  5191. X4223(table)X
  5192. X4382(di-)X
  5193. X2706 5673(vided)N
  5194. X2884(by)X
  5195. X2974(the)X
  5196. X3080(\256ll)X
  5197. X3178(factor.)X
  5198. X3 f
  5199. X10 s
  5200. X720 5960(USENIX)N
  5201. X9 f
  5202. X1042(-)X
  5203. X3 f
  5204. X1106(Winter)X
  5205. X1371('91)X
  5206. X9 f
  5207. X1498(-)X
  5208. X3 f
  5209. X1562(Dallas,)X
  5210. X1815(TX)X
  5211. X4424(5)X
  5212. X
  5213. X6 p
  5214. X%%Page: 6 6
  5215. X0(Courier)xf 0 f
  5216. X10 s 10 xH 0 xS 0 f
  5217. X3 f
  5218. X432 258(A)N
  5219. X510(New)X
  5220. X682(Hashing)X
  5221. X985(Package)X
  5222. X1290(for)X
  5223. X1413(UNIX)X
  5224. X3663(Seltzer)X
  5225. X3920(&)X
  5226. X4007(Yigit)X
  5227. X1 f
  5228. X432 538(pages)N
  5229. X639(to)X
  5230. X725(the)X
  5231. X847(buckets)X
  5232. X1116(\(also)X
  5233. X1296(called)X
  5234. X1512(primary)X
  5235. X1789(pages\).)X
  5236. X2062(In)X
  5237. X2152(a)X
  5238. X432 626(memory)N
  5239. X730(based)X
  5240. X943(representation,)X
  5241. X1448(over\257ow)X
  5242. X1763(pages)X
  5243. X1976(do)X
  5244. X2086(not)X
  5245. X432 714(pose)N
  5246. X628(any)X
  5247. X792(special)X
  5248. X1063(problems)X
  5249. X1409(because)X
  5250. X1712(we)X
  5251. X1854(can)X
  5252. X2014(chain)X
  5253. X432 802(over\257ow)N
  5254. X776(pages)X
  5255. X1017(to)X
  5256. X1137(primary)X
  5257. X1449(pages)X
  5258. X1690(using)X
  5259. X1921(memory)X
  5260. X432 890(pointers.)N
  5261. X776(However,)X
  5262. X1137(mapping)X
  5263. X1463(these)X
  5264. X1674(over\257ow)X
  5265. X2005(pages)X
  5266. X432 978(into)N
  5267. X584(a)X
  5268. X648(disk)X
  5269. X809(\256le)X
  5270. X939(is)X
  5271. X1019(more)X
  5272. X1211(of)X
  5273. X1305(a)X
  5274. X1368(challenge,)X
  5275. X1723(since)X
  5276. X1915(we)X
  5277. X2036(need)X
  5278. X432 1066(to)N
  5279. X547(be)X
  5280. X675(able)X
  5281. X861(to)X
  5282. X975(address)X
  5283. X1268(both)X
  5284. X1462(bucket)X
  5285. X1728(pages,)X
  5286. X1983(whose)X
  5287. X432 1154(numbers)N
  5288. X729(are)X
  5289. X849(growing)X
  5290. X1137(linearly,)X
  5291. X1422(and)X
  5292. X1558(some)X
  5293. X1747(indeterminate)X
  5294. X432 1242(number)N
  5295. X715(of)X
  5296. X820(over\257ow)X
  5297. X1143(pages)X
  5298. X1364(without)X
  5299. X1646(reorganizing)X
  5300. X2090(the)X
  5301. X432 1330(\256le.)N
  5302. X604 1444(One)N
  5303. X789(simple)X
  5304. X1053(solution)X
  5305. X1361(would)X
  5306. X1612(be)X
  5307. X1739(to)X
  5308. X1852(allocate)X
  5309. X2152(a)X
  5310. X432 1532(separate)N
  5311. X737(\256le)X
  5312. X880(for)X
  5313. X1015(over\257ow)X
  5314. X1341(pages.)X
  5315. X1604(The)X
  5316. X1769(disadvantage)X
  5317. X432 1620(with)N
  5318. X605(such)X
  5319. X783(a)X
  5320. X850(technique)X
  5321. X1193(is)X
  5322. X1276(that)X
  5323. X1426(it)X
  5324. X1500(requires)X
  5325. X1789(an)X
  5326. X1895(extra)X
  5327. X2086(\256le)X
  5328. X432 1708(descriptor,)N
  5329. X794(an)X
  5330. X891(extra)X
  5331. X1073(system)X
  5332. X1316(call)X
  5333. X1453(on)X
  5334. X1554(open)X
  5335. X1731(and)X
  5336. X1867(close,)X
  5337. X2072(and)X
  5338. X432 1796(logically)N
  5339. X739(associating)X
  5340. X1122(two)X
  5341. X1269(independent)X
  5342. X1687(\256les.)X
  5343. X1886(For)X
  5344. X2023(these)X
  5345. X432 1884(reasons,)N
  5346. X728(we)X
  5347. X857(wanted)X
  5348. X1123(to)X
  5349. X1219(map)X
  5350. X1391(both)X
  5351. X1567(primary)X
  5352. X1855(pages)X
  5353. X2072(and)X
  5354. X432 1972(over\257ow)N
  5355. X737(pages)X
  5356. X940(into)X
  5357. X1084(the)X
  5358. X1202(same)X
  5359. X1387(\256le)X
  5360. X1509(space.)X
  5361. X604 2086(The)N
  5362. X799(buddy-in-waiting)X
  5363. X1425(algorithm)X
  5364. X1806(provides)X
  5365. X2152(a)X
  5366. X432 2174(mechanism)N
  5367. X851(to)X
  5368. X966(support)X
  5369. X1259(multiple)X
  5370. X1578(pages)X
  5371. X1814(per)X
  5372. X1970(logical)X
  5373. X432 2262(bucket)N
  5374. X685(while)X
  5375. X902(retaining)X
  5376. X1226(the)X
  5377. X1362(simple)X
  5378. X1613(split)X
  5379. X1788(sequence)X
  5380. X2121(of)X
  5381. X432 2350(linear)N
  5382. X681(hashing.)X
  5383. X1015(Over\257ow)X
  5384. X1383(pages)X
  5385. X1631(are)X
  5386. X1795(preallocated)X
  5387. X432 2438(between)N
  5388. X781(generations)X
  5389. X1232(of)X
  5390. X1379(primary)X
  5391. X1713(pages.)X
  5392. X1996(These)X
  5393. X432 2526(over\257ow)N
  5394. X759(pages)X
  5395. X984(are)X
  5396. X1125(used)X
  5397. X1314(by)X
  5398. X1436(any)X
  5399. X1594(bucket)X
  5400. X1850(containing)X
  5401. X432 2614(more)N
  5402. X646(keys)X
  5403. X842(than)X
  5404. X1029(\256t)X
  5405. X1144(on)X
  5406. X1273(the)X
  5407. X1420(primary)X
  5408. X1723(page)X
  5409. X1924(and)X
  5410. X2089(are)X
  5411. X432 2702(reclaimed,)N
  5412. X808(if)X
  5413. X896(possible,)X
  5414. X1217(when)X
  5415. X1430(the)X
  5416. X1567(bucket)X
  5417. X1819(later)X
  5418. X2000(splits.)X
  5419. X432 2790(Figure)N
  5420. X687(3)X
  5421. X773(depicts)X
  5422. X1045(the)X
  5423. X1188(layout)X
  5424. X1433(of)X
  5425. X1545(primary)X
  5426. X1844(pages)X
  5427. X2072(and)X
  5428. X432 2878(over\257ow)N
  5429. X752(pages)X
  5430. X970(within)X
  5431. X1209(the)X
  5432. X1342(same)X
  5433. X1542(\256le.)X
  5434. X1699(Over\257ow)X
  5435. X2036(page)X
  5436. X432 2966(use)N
  5437. X586(information)X
  5438. X1011(is)X
  5439. X1111(recorded)X
  5440. X1440(in)X
  5441. X1548(bitmaps)X
  5442. X1847(which)X
  5443. X2089(are)X
  5444. X432 3054(themselves)N
  5445. X819(stored)X
  5446. X1046(on)X
  5447. X1157(over\257ow)X
  5448. X1472(pages.)X
  5449. X1725(The)X
  5450. X1880(addresses)X
  5451. X432 3142(of)N
  5452. X520(the)X
  5453. X639(bitmap)X
  5454. X882(pages)X
  5455. X1086(and)X
  5456. X1223(the)X
  5457. X1342(number)X
  5458. X1608(of)X
  5459. X1695(pages)X
  5460. X1898(allocated)X
  5461. X432 3230(at)N
  5462. X515(each)X
  5463. X688(split)X
  5464. X850(point)X
  5465. X1039(are)X
  5466. X1163(stored)X
  5467. X1384(in)X
  5468. X1470(the)X
  5469. X1592(\256le)X
  5470. X1718(header.)X
  5471. X1997(Using)X
  5472. X432 3318(this)N
  5473. X577(information,)X
  5474. X1005(both)X
  5475. X1177(over\257ow)X
  5476. X1492(addresses)X
  5477. X1829(and)X
  5478. X1974(bucket)X
  5479. X432 3406(addresses)N
  5480. X764(can)X
  5481. X900(be)X
  5482. X999(mapped)X
  5483. X1276(to)X
  5484. X1361(disk)X
  5485. X1517(addresses)X
  5486. X1848(by)X
  5487. X1951(the)X
  5488. X2072(fol-)X
  5489. X432 3494(lowing)N
  5490. X674(calculation:)X
  5491. X0 f
  5492. X8 s
  5493. X432 3793(int)N
  5494. X736(bucket;)X
  5495. X1192(/*)X
  5496. X1306(bucket)X
  5497. X1572(address)X
  5498. X1876(*/)X
  5499. X432 3881(u_short)N
  5500. X736(oaddr;)X
  5501. X1192(/*)X
  5502. X1306(OVERFLOW)X
  5503. X1648(address)X
  5504. X1952(*/)X
  5505. X432 3969(int)N
  5506. X736 -0.4125(nhdr_pages;)AX
  5507. X1192(/*)X
  5508. X1306(npages)X
  5509. X1572(in)X
  5510. X1686 -112.4062(\256le)AX
  5511. X1838(header)X
  5512. X2104(*/)X
  5513. X432 4057(int)N
  5514. X736 -0.4125(spares[32];)AX
  5515. X1192(/*)X
  5516. X1306(npages)X
  5517. X1572(at)X
  5518. X1686(each)X
  5519. X1876(split)X
  5520. X2104(*/)X
  5521. X432 4145(int)N
  5522. X736(log2\(\);)X
  5523. X1198(/*)X
  5524. X1312(ceil\(log)X
  5525. X1654(base)X
  5526. X1844(2\))X
  5527. X1958(*/)X
  5528. X432 4321(#DEFINE)N
  5529. X736 -0.3929(BUCKET_TO_PAGE\(bucket\))AX
  5530. X1610(\\)X
  5531. X584 4409(bucket)N
  5532. X850(+)X
  5533. X926 -0.4167(nhdr_pages)AX
  5534. X1344(+)X
  5535. X1420(\\)X
  5536. X584 4497 -0.3894(\(bucket?spares[logs2\(bucket)AN
  5537. X1648(+)X
  5538. X1724(1\)-1]:0\))X
  5539. X432 4673(#DEFINE)N
  5540. X736 -0.3947(OADDR_TO_PAGE\(oaddr\))AX
  5541. X1534(\\)X
  5542. X584 4761 -0.3984(BUCKET_TO_PAGE\(\(1)AN
  5543. X1268(<<)X
  5544. X1382 -0.4091(\(oaddr>>11\)\))AX
  5545. X1876(-)X
  5546. X1952(1\))X
  5547. X2066(+)X
  5548. X2142(\\)X
  5549. X584 4849(oaddr)N
  5550. X812(&)X
  5551. X888(0x7ff;)X
  5552. X1 f
  5553. X10 s
  5554. X604 5262(An)N
  5555. X728(over\257ow)X
  5556. X1039(page)X
  5557. X1217(is)X
  5558. X1295(addressed)X
  5559. X1637(by)X
  5560. X1742(its)X
  5561. X1842(split)X
  5562. X2004(point,)X
  5563. X432 5350(identifying)N
  5564. X858(the)X
  5565. X1031(generations)X
  5566. X1476(between)X
  5567. X1819(which)X
  5568. X2090(the)X
  5569. X432 5438(over\257ow)N
  5570. X740(page)X
  5571. X915(is)X
  5572. X991(allocated,)X
  5573. X1324(and)X
  5574. X1463(its)X
  5575. X1561(page)X
  5576. X1736(number,)X
  5577. X2023(iden-)X
  5578. X432 5526(tifying)N
  5579. X665(the)X
  5580. X783(particular)X
  5581. X1111(page)X
  5582. X1283(within)X
  5583. X1507(the)X
  5584. X1625(split)X
  5585. X1782(point.)X
  5586. X1986(In)X
  5587. X2073(this)X
  5588. X432 5614(implementation,)N
  5589. X983(offsets)X
  5590. X1225(within)X
  5591. X1457(pages)X
  5592. X1668(are)X
  5593. X1795(16)X
  5594. X1903(bits)X
  5595. X2046(long)X
  5596. X432 5702(\(limiting)N
  5597. X732(the)X
  5598. X851(maximum)X
  5599. X1196(page)X
  5600. X1368(size)X
  5601. X1513(to)X
  5602. X1595(32K\),)X
  5603. X1800(so)X
  5604. X1891(we)X
  5605. X2005(select)X
  5606. X2418 538(an)N
  5607. X2535(over\257ow)X
  5608. X2860(page)X
  5609. X3052(addressing)X
  5610. X3435(algorithm)X
  5611. X3786(that)X
  5612. X3946(can)X
  5613. X4098(be)X
  5614. X2418 626(expressed)N
  5615. X2760(in)X
  5616. X2847(16)X
  5617. X2952(bits)X
  5618. X3091(and)X
  5619. X3231(which)X
  5620. X3451(allows)X
  5621. X3684(quick)X
  5622. X3886(retrieval.)X
  5623. X2418 714(The)N
  5624. X2568(top)X
  5625. X2695(\256ve)X
  5626. X2840(bits)X
  5627. X2980(indicate)X
  5628. X3258(the)X
  5629. X3380(split)X
  5630. X3541(point)X
  5631. X3729(and)X
  5632. X3869(the)X
  5633. X3991(lower)X
  5634. X2418 802(eleven)N
  5635. X2650(indicate)X
  5636. X2926(the)X
  5637. X3046(page)X
  5638. X3220(number)X
  5639. X3487(within)X
  5640. X3713(the)X
  5641. X3832(split)X
  5642. X3990(point.)X
  5643. X2418 890(Since)N
  5644. X2633(\256ve)X
  5645. X2789(bits)X
  5646. X2940(are)X
  5647. X3075(reserved)X
  5648. X3384(for)X
  5649. X3514(the)X
  5650. X3648(split)X
  5651. X3821(point,)X
  5652. X4041(\256les)X
  5653. X2418 978(may)N
  5654. X2578(split)X
  5655. X2737(32)X
  5656. X2839(times)X
  5657. X3034(yielding)X
  5658. X3318(a)X
  5659. X3376(maximum)X
  5660. X3721(\256le)X
  5661. X3844(size)X
  5662. X3990(of)X
  5663. X4078(2)X
  5664. X7 s
  5665. X946(32)Y
  5666. X10 s
  5667. X2418 1066(buckets)N
  5668. X2698(and)X
  5669. X2849(32)X
  5670. X2 f
  5671. X(*)S
  5672. X1 f
  5673. X2982(2)X
  5674. X7 s
  5675. X1034(11)Y
  5676. X10 s
  5677. X3113 1066(over\257ow)N
  5678. X3433(pages.)X
  5679. X3691(The)X
  5680. X3850(maximum)X
  5681. X2418 1154(page)N
  5682. X2597(size)X
  5683. X2749(is)X
  5684. X2829(2)X
  5685. X7 s
  5686. X1122(15)Y
  5687. X10 s
  5688. X1154(,)Y
  5689. X2971(yielding)X
  5690. X3259(a)X
  5691. X3321(maximum)X
  5692. X3671(\256le)X
  5693. X3799(size)X
  5694. X3950(greater)X
  5695. X2418 1242(than)N
  5696. X2601(131,000)X
  5697. X2906(GB)X
  5698. X3061(\(on)X
  5699. X3212(\256le)X
  5700. X3358(systems)X
  5701. X3655(supporting)X
  5702. X4041(\256les)X
  5703. X2418 1330(larger)N
  5704. X2626(than)X
  5705. X2784(4GB\).)X
  5706. X10 f
  5707. X2418 1418 -0.0930(hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh)AN
  5708. X1 Dt
  5709. X4014 2275 MXY
  5710. X0 133 Dl
  5711. X3881 2275 MXY
  5712. X0 133 Dl
  5713. X3748 2275 MXY
  5714. X0 133 Dl
  5715. X3083 2275 MXY
  5716. X0 133 Dl
  5717. X5 s
  5718. X1 f
  5719. X3523 2475(2/3)N
  5720. X3390(2/2)X
  5721. X3257(2/1)X
  5722. X2859(1/2)X
  5723. X2726(1/1)X
  5724. X5 Dt
  5725. X3814 1743 MXY
  5726. X0 133 Dl
  5727. X3282 1743 MXY
  5728. X0 133 Dl
  5729. X3017 1743 MXY
  5730. X0 133 Dl
  5731. X2884 1743 MXY
  5732. X0 133 Dl
  5733. X1 Dt
  5734. X3681 1743 MXY
  5735. X0 133 Dl
  5736. X133 0 Dl
  5737. X0 -133 Dl
  5738. X-133 0 Dl
  5739. X3548 MX
  5740. X0 133 Dl
  5741. X133 0 Dl
  5742. X0 -133 Dl
  5743. X-133 0 Dl
  5744. X3415 MX
  5745. X0 133 Dl
  5746. X133 0 Dl
  5747. X0 -133 Dl
  5748. X-133 0 Dl
  5749. X3282 MX
  5750. X0 133 Dl
  5751. X133 0 Dl
  5752. X0 -133 Dl
  5753. X-133 0 Dl
  5754. X3150 MX
  5755. X0 133 Dl
  5756. X132 0 Dl
  5757. X0 -133 Dl
  5758. X-132 0 Dl
  5759. X3017 MX
  5760. X0 133 Dl
  5761. X133 0 Dl
  5762. X0 -133 Dl
  5763. X-133 0 Dl
  5764. X2884 MX
  5765. X0 133 Dl
  5766. X133 0 Dl
  5767. X0 -133 Dl
  5768. X-133 0 Dl
  5769. X3 f
  5770. X8 s
  5771. X3017 2601(Over\257ow)N
  5772. X3285(Addresses)X
  5773. X3515 2833(Over\257ow)N
  5774. X3783(Pages)X
  5775. X2850(Buckets)X
  5776. X1 Di
  5777. X3349 2740 MXY
  5778. X 3349 2740 lineto
  5779. X 3482 2740 lineto
  5780. X 3482 2873 lineto
  5781. X 3349 2873 lineto
  5782. X 3349 2740 lineto
  5783. Xclosepath 3 3349 2740 3482 2873 Dp
  5784. X2684 MX
  5785. X0 133 Dl
  5786. X133 0 Dl
  5787. X0 -133 Dl
  5788. X-133 0 Dl
  5789. X5 Dt
  5790. X4146 2275 MXY
  5791. X0 133 Dl
  5792. X3216 2275 MXY
  5793. X0 133 Dl
  5794. X2684 2275 MXY
  5795. X0 133 Dl
  5796. X2551 2275 MXY
  5797. X0 133 Dl
  5798. X1 f
  5799. X3798 1963(3)N
  5800. X3266 1980(2)N
  5801. X3001(1)X
  5802. X2868(0)X
  5803. X1 Dt
  5804. X2751 1743 MXY
  5805. X0 133 Dl
  5806. X133 0 Dl
  5807. X0 -133 Dl
  5808. X-133 0 Dl
  5809. X3548 2275 MXY
  5810. X-15 -22 Dl
  5811. X2 16 Dl
  5812. X-13 11 Dl
  5813. X26 -5 Dl
  5814. X-282 -117 Dl
  5815. X3432 2275 MXY
  5816. X-10 -25 Dl
  5817. X-2 16 Dl
  5818. X-15 8 Dl
  5819. X27 1 Dl
  5820. X-166 -117 Dl
  5821. X3282 2275 MXY
  5822. X12 -25 Dl
  5823. X-14 10 Dl
  5824. X-15 -6 Dl
  5825. X17 21 Dl
  5826. X-16 -117 Dl
  5827. X2884 2275 MXY
  5828. X26 7 Dl
  5829. X-12 -12 Dl
  5830. X3 -16 Dl
  5831. X-17 21 Dl
  5832. X382 -117 Dl
  5833. X2751 2275 MXY
  5834. X25 9 Dl
  5835. X-11 -12 Dl
  5836. X5 -17 Dl
  5837. X-19 20 Dl
  5838. X515 -117 Dl
  5839. X3 f
  5840. X3070 2152(Over\257ow)N
  5841. X3338(Pages)X
  5842. X3482 2275 MXY
  5843. X 3482 2275 lineto
  5844. X 3615 2275 lineto
  5845. X 3615 2408 lineto
  5846. X 3482 2408 lineto
  5847. X 3482 2275 lineto
  5848. Xclosepath 3 3482 2275 3615 2408 Dp
  5849. X3349 MX
  5850. X 3349 2275 lineto
  5851. X 3482 2275 lineto
  5852. X 3482 2408 lineto
  5853. X 3349 2408 lineto
  5854. X 3349 2275 lineto
  5855. Xclosepath 3 3349 2275 3482 2408 Dp
  5856. X3216 MX
  5857. X 3216 2275 lineto
  5858. X 3349 2275 lineto
  5859. X 3349 2408 lineto
  5860. X 3216 2408 lineto
  5861. X 3216 2275 lineto
  5862. Xclosepath 3 3216 2275 3349 2408 Dp
  5863. X2817 MX
  5864. X 2817 2275 lineto
  5865. X 2950 2275 lineto
  5866. X 2950 2408 lineto
  5867. X 2817 2408 lineto
  5868. X 2817 2275 lineto
  5869. Xclosepath 3 2817 2275 2950 2408 Dp
  5870. X2684 MX
  5871. X 2684 2275 lineto
  5872. X 2817 2275 lineto
  5873. X 2817 2408 lineto
  5874. X 2684 2408 lineto
  5875. X 2684 2275 lineto
  5876. Xclosepath 3 2684 2275 2817 2408 Dp
  5877. X3615 MX
  5878. X0 133 Dl
  5879. X531 0 Dl
  5880. X0 -133 Dl
  5881. X-531 0 Dl
  5882. X2950 MX
  5883. X0 133 Dl
  5884. X266 0 Dl
  5885. X0 -133 Dl
  5886. X-266 0 Dl
  5887. X2551 MX
  5888. X0 133 Dl
  5889. X133 0 Dl
  5890. X0 -133 Dl
  5891. X-133 0 Dl
  5892. X3798 1726 MXY
  5893. X-21 -18 Dl
  5894. X6 16 Dl
  5895. X-10 13 Dl
  5896. X25 -11 Dl
  5897. X-599 -99 Dl
  5898. X3266 1726 MXY
  5899. X-1 -27 Dl
  5900. X-7 15 Dl
  5901. X-17 1 Dl
  5902. X25 11 Dl
  5903. X-67 -99 Dl
  5904. X3033 1726 MXY
  5905. X27 1 Dl
  5906. X-14 -8 Dl
  5907. X-1 -17 Dl
  5908. X-12 24 Dl
  5909. X166 -99 Dl
  5910. X2900 1726 MXY
  5911. X27 7 Dl
  5912. X-13 -11 Dl
  5913. X3 -17 Dl
  5914. X-17 21 Dl
  5915. X299 -99 Dl
  5916. X3058 1621(Split)N
  5917. X3203(Points)X
  5918. X2418 2275 MXY
  5919. X0 133 Dl
  5920. X133 0 Dl
  5921. X0 -133 Dl
  5922. X-133 0 Dl
  5923. X3 Dt
  5924. X-1 Ds
  5925. X3137(Figure)Y
  5926. X2619(3:)X
  5927. X1 f
  5928. X2691(Split)X
  5929. X2832(points)X
  5930. X3008(occur)X
  5931. X3168(between)X
  5932. X3399(generations)X
  5933. X3712(and)X
  5934. X3823(are)X
  5935. X3919(numbered)X
  5936. X2418 3225(from)N
  5937. X2560(0.)X
  5938. X2642(In)X
  5939. X2713(this)X
  5940. X2824(\256gure)X
  5941. X2991(there)X
  5942. X3136(are)X
  5943. X3231(two)X
  5944. X3345(over\257ow)X
  5945. X3590(pages)X
  5946. X3753(allocated)X
  5947. X4000(at)X
  5948. X4063(split)X
  5949. X2418 3313(point)N
  5950. X2566(1)X
  5951. X2614(and)X
  5952. X2722(three)X
  5953. X2865(allocated)X
  5954. X3111(at)X
  5955. X3173(split)X
  5956. X3300(point)X
  5957. X3448(2.)X
  5958. X10 s
  5959. X10 f
  5960. X2418 3489 -0.0930(hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh)AN
  5961. X3 f
  5962. X2949 3731(Buffer)N
  5963. X3192(Management)X
  5964. X1 f
  5965. X2590 3863(The)N
  5966. X2744(hash)X
  5967. X2920(table)X
  5968. X3105(is)X
  5969. X3187(stored)X
  5970. X3412(in)X
  5971. X3502(memory)X
  5972. X3797(as)X
  5973. X3892(a)X
  5974. X3956(logical)X
  5975. X2418 3951(array)N
  5976. X2633(of)X
  5977. X2749(bucket)X
  5978. X3012(pointers.)X
  5979. X3359(Physically,)X
  5980. X3761(the)X
  5981. X3907(array)X
  5982. X4121(is)X
  5983. X2418 4039(arranged)N
  5984. X2728(in)X
  5985. X2818(segments)X
  5986. X3144(of)X
  5987. X3239(256)X
  5988. X3387(pointers.)X
  5989. X3713(Initially,)X
  5990. X4013(there)X
  5991. X2418 4127(is)N
  5992. X2530(space)X
  5993. X2767(to)X
  5994. X2887(allocate)X
  5995. X3195(256)X
  5996. X3373(segments.)X
  5997. X3769(Reallocation)X
  5998. X2418 4215(occurs)N
  5999. X2651(when)X
  6000. X2847(the)X
  6001. X2967(number)X
  6002. X3234(of)X
  6003. X3323(buckets)X
  6004. X3590(exceeds)X
  6005. X3867(32K)X
  6006. X4027(\(256)X
  6007. X2418 4303(*)N
  6008. X2508(256\).)X
  6009. X2745(Primary)X
  6010. X3053(pages)X
  6011. X3286(may)X
  6012. X3473(be)X
  6013. X3598(accessed)X
  6014. X3929(directly)X
  6015. X2418 4391(through)N
  6016. X2711(the)X
  6017. X2853(array)X
  6018. X3062(by)X
  6019. X3185(bucket)X
  6020. X3442(number)X
  6021. X3730(and)X
  6022. X3889(over\257ow)X
  6023. X2418 4479(pages)N
  6024. X2628(are)X
  6025. X2754 0.4028(referenced)AX
  6026. X3122(logically)X
  6027. X3429(by)X
  6028. X3536(their)X
  6029. X3710(over\257ow)X
  6030. X4022(page)X
  6031. X2418 4567(address.)N
  6032. X2726(For)X
  6033. X2864(small)X
  6034. X3063(hash)X
  6035. X3236(tables,)X
  6036. X3469(it)X
  6037. X3539(is)X
  6038. X3618(desirable)X
  6039. X3934(to)X
  6040. X4022(keep)X
  6041. X2418 4655(all)N
  6042. X2525(pages)X
  6043. X2735(in)X
  6044. X2823(main)X
  6045. X3009(memory)X
  6046. X3302(while)X
  6047. X3506(on)X
  6048. X3612(larger)X
  6049. X3826(tables,)X
  6050. X4059(this)X
  6051. X2418 4743(is)N
  6052. X2523(probably)X
  6053. X2860(impossible.)X
  6054. X3298(To)X
  6055. X3438(satisfy)X
  6056. X3698(both)X
  6057. X3891(of)X
  6058. X4009(these)X
  6059. X2418 4831(requirements,)N
  6060. X2900(the)X
  6061. X3041(package)X
  6062. X3348(includes)X
  6063. X3658(buffer)X
  6064. X3897(manage-)X
  6065. X2418 4919(ment)N
  6066. X2598(with)X
  6067. X2760(LRU)X
  6068. X2940(\(least)X
  6069. X3134(recently)X
  6070. X3413(used\))X
  6071. X3607(replacement.)X
  6072. X2590 5033(By)N
  6073. X2730(default,)X
  6074. X3020(the)X
  6075. X3165(package)X
  6076. X3475(allocates)X
  6077. X3802(up)X
  6078. X3928(to)X
  6079. X4036(64K)X
  6080. X2418 5121(bytes)N
  6081. X2616(of)X
  6082. X2712(buffered)X
  6083. X3014(pages.)X
  6084. X3246(All)X
  6085. X3377(pages)X
  6086. X3589(in)X
  6087. X3680(the)X
  6088. X3807(buffer)X
  6089. X4032(pool)X
  6090. X2418 5209(are)N
  6091. X2542(linked)X
  6092. X2766(in)X
  6093. X2852(LRU)X
  6094. X3036(order)X
  6095. X3230(to)X
  6096. X3316(facilitate)X
  6097. X3621(fast)X
  6098. X3761(replacement.)X
  6099. X2418 5297(Whereas)N
  6100. X2724(ef\256cient)X
  6101. X3011(access)X
  6102. X3241(to)X
  6103. X3327(primary)X
  6104. X3605(pages)X
  6105. X3812(is)X
  6106. X3889(provided)X
  6107. X2418 5385(by)N
  6108. X2521(the)X
  6109. X2642(bucket)X
  6110. X2879(array,)X
  6111. X3087(ef\256cient)X
  6112. X3372(access)X
  6113. X3600(to)X
  6114. X3684(over\257ow)X
  6115. X3991(pages)X
  6116. X2418 5473(is)N
  6117. X2501(provided)X
  6118. X2816(by)X
  6119. X2926(linking)X
  6120. X3182(over\257ow)X
  6121. X3497(page)X
  6122. X3679(buffers)X
  6123. X3936(to)X
  6124. X4027(their)X
  6125. X2418 5561(predecessor)N
  6126. X2827(page)X
  6127. X3008(\(either)X
  6128. X3247(the)X
  6129. X3374(primary)X
  6130. X3657(page)X
  6131. X3838(or)X
  6132. X3933(another)X
  6133. X2418 5649(over\257ow)N
  6134. X2742(page\).)X
  6135. X3000(This)X
  6136. X3181(means)X
  6137. X3425(that)X
  6138. X3584(an)X
  6139. X3699(over\257ow)X
  6140. X4022(page)X
  6141. X3 f
  6142. X432 5960(6)N
  6143. X2970(USENIX)X
  6144. X9 f
  6145. X3292(-)X
  6146. X3 f
  6147. X3356(Winter)X
  6148. X3621('91)X
  6149. X9 f
  6150. X3748(-)X
  6151. X3 f
  6152. X3812(Dallas,)X
  6153. X4065(TX)X
  6154. X
  6155. X7 p
  6156. END_OF_FILE
  6157. if test 84295 -ne `wc -c <'doc/hash.ps.01'`; then
  6158.     echo shar: \"'doc/hash.ps.01'\" unpacked with wrong size!
  6159. fi
  6160. # end of 'doc/hash.ps.01'
  6161. fi
  6162. echo shar: End of archive 9 \(of 9\).
  6163. cp /dev/null ark9isdone
  6164. MISSING=""
  6165. for I in 1 2 3 4 5 6 7 8 9 ; do
  6166.     if test ! -f ark${I}isdone ; then
  6167.     MISSING="${MISSING} ${I}"
  6168.     fi
  6169. done
  6170. if test "${MISSING}" = "" ; then
  6171.     echo You have unpacked all 9 archives.
  6172.     rm -f ark[1-9]isdone ark[1-9][0-9]isdone
  6173. else
  6174.     echo You still need to unpack the following archives:
  6175.     echo "        " ${MISSING}
  6176. fi
  6177. ##  End of shell archive.
  6178. exit 0
  6179.