General.html 69 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
  2. <html>
  3. <head>
  4. <title>Index</title>
  5. <link rel="stylesheet" type="text/css" href="../styles/main.css" />
  6. <script language="JavaScript" src="../javascript/main.js"></script>
  7. </head>
  8. <body class="UnframedPage" onLoad="NDOnLoad()">
  9. <script language="JavaScript">
  10. <!--
  11. if (browserType) {
  12. document.write("<div class=" + browserType + ">");
  13. if (browserVer) {
  14. document.write("<div class=" + browserVer + ">");
  15. }
  16. } // -->
  17. </script>
  18. <!-- Generated by Natural Docs, version 1.35 -->
  19. <!-- http://www.naturaldocs.org -->
  20. <!-- saved from url=(0026)http://www.naturaldocs.org -->
  21. <table border="0" cellspacing="0" cellpadding="0" width="100%">
  22. <tr>
  23. <td class="MenuSection" valign="top">
  24. <!--START_ND_MENU-->
  25. <div class="MEntry">
  26. <div class="MFile">
  27. <a href="../files/README-txt.html">00README</a>
  28. </div>
  29. </div>
  30. <div class="MEntry">
  31. <div class="MFile">
  32. <a href="../files/duma_config-h.html">duma_config.h</a>
  33. </div>
  34. </div>
  35. <div class="MEntry">
  36. <div class="MFile"><a href="../files/kduma-c.html">kduma.c</a></div>
  37. </div>
  38. <div class="MEntry">
  39. <div class="MFile"><a href="../files/kduma-h.html">kduma.h</a></div>
  40. </div>
  41. <div class="MEntry">
  42. <div class="MFile"><a href="../files/log-h.html">log.h</a></div>
  43. </div>
  44. <div class="MEntry">
  45. <div class="MFile">
  46. <a href="../files/paging-h.html">paging.h</a>
  47. </div>
  48. </div>
  49. <div class="MEntry">
  50. <div class="MGroup">
  51. <a href="javascript:ToggleMenu('MGroupContent1')">Index</a>
  52. <div class="MGroupContent" id="MGroupContent1">
  53. <div class="MEntry">
  54. <div class="MIndex" id="MSelected">Everything</div>
  55. </div>
  56. <div class="MEntry">
  57. <div class="MIndex"><a href="Classes.html">Classes</a></div>
  58. </div>
  59. <div class="MEntry">
  60. <div class="MIndex"><a href="Files.html">Files</a></div>
  61. </div>
  62. <div class="MEntry">
  63. <div class="MIndex">
  64. <a href="Functions.html">Functions</a>
  65. </div>
  66. </div>
  67. <div class="MEntry">
  68. <div class="MIndex"><a href="Types.html">Types</a></div>
  69. </div>
  70. <div class="MEntry">
  71. <div class="MIndex">
  72. <a href="Variables.html">Variables</a>
  73. </div>
  74. </div>
  75. </div>
  76. </div>
  77. </div>
  78. <!--END_ND_MENU-->
  79. </td>
  80. <td class="IndexSection" valign="top">
  81. <div class="IPageTitle">Index</div>
  82. <div class="INavigationBar">
  83. <a href="#Symbols">$#!</a> &middot;
  84. <a href="#Numbers">0-9</a> &middot; <a href="#A">A</a> &middot; B
  85. &middot; C &middot; <a href="#D">D</a> &middot;
  86. <a href="#E">E</a> &middot; <a href="#F">F</a> &middot; G &middot; H
  87. &middot; <a href="#I">I</a> &middot; J &middot;
  88. <a href="#K">K</a> &middot; <a href="#L">L</a> &middot;
  89. <a href="#M">M</a> &middot; <a href="#N">N</a> &middot; O &middot;
  90. <a href="#P">P</a> &middot; Q &middot; R &middot;
  91. <a href="#S">S</a> &middot; <a href="#T">T</a> &middot;
  92. <a href="#U">U</a> &middot; <a href="#V">V</a> &middot; W &middot; X
  93. &middot; Y &middot; Z
  94. </div>
  95. <table border="0" cellspacing="0" cellpadding="0">
  96. <tr>
  97. <td class="IHeading" id="IFirstHeading">
  98. <a name="Symbols"></a>$#!
  99. </td>
  100. <td></td>
  101. </tr>
  102. <tr>
  103. <td class="ISymbolPrefix" id="IFirstSymbolPrefix">&nbsp;</td>
  104. <td class="IEntry">
  105. <a
  106. href="../files/kduma-c.html#_DUMA_Slot._duma_allocate"
  107. id="link1"
  108. onMouseOver="ShowTip(event, 'tt1', 'link1')"
  109. onMouseOut="HideTip('tt1')"
  110. class="ISymbol"
  111. >_duma_allocate</a
  112. >, <span class="IParent">_DUMA_Slot</span>
  113. </td>
  114. </tr>
  115. <tr>
  116. <td class="ISymbolPrefix">&nbsp;</td>
  117. <td class="IEntry">
  118. <a
  119. href="../files/kduma-h.html#_DUMA_Allocator"
  120. id="link2"
  121. onMouseOver="ShowTip(event, 'tt2', 'link2')"
  122. onMouseOut="HideTip('tt2')"
  123. class="ISymbol"
  124. >_DUMA_Allocator</a
  125. >
  126. </td>
  127. </tr>
  128. <tr>
  129. <td class="ISymbolPrefix">&nbsp;</td>
  130. <td class="IEntry">
  131. <a
  132. href="../files/kduma-c.html#_DUMA_Slot._duma_allocList"
  133. id="link3"
  134. onMouseOver="ShowTip(event, 'tt3', 'link3')"
  135. onMouseOut="HideTip('tt3')"
  136. class="ISymbol"
  137. >_duma_allocList</a
  138. >, <span class="IParent">_DUMA_Slot</span>
  139. </td>
  140. </tr>
  141. <tr>
  142. <td class="ISymbolPrefix">&nbsp;</td>
  143. <td class="IEntry">
  144. <a
  145. href="../files/kduma-c.html#_DUMA_Slot._duma_allocListSize"
  146. id="link4"
  147. onMouseOver="ShowTip(event, 'tt4', 'link4')"
  148. onMouseOut="HideTip('tt4')"
  149. class="ISymbol"
  150. >_duma_allocListSize</a
  151. >, <span class="IParent">_DUMA_Slot</span>
  152. </td>
  153. </tr>
  154. <tr>
  155. <td class="ISymbolPrefix">&nbsp;</td>
  156. <td class="IEntry">
  157. <a
  158. href="../files/kduma-c.html#_DUMA_Slot._duma_assert"
  159. id="link5"
  160. onMouseOver="ShowTip(event, 'tt5', 'link5')"
  161. onMouseOut="HideTip('tt5')"
  162. class="ISymbol"
  163. >_duma_assert</a
  164. >, <span class="IParent">_DUMA_Slot</span>
  165. </td>
  166. </tr>
  167. <tr>
  168. <td class="ISymbolPrefix">&nbsp;</td>
  169. <td class="IEntry">
  170. <a
  171. href="../files/kduma-c.html#_DUMA_Slot._duma_deallocate"
  172. id="link6"
  173. onMouseOver="ShowTip(event, 'tt6', 'link6')"
  174. onMouseOut="HideTip('tt6')"
  175. class="ISymbol"
  176. >_duma_deallocate</a
  177. >, <span class="IParent">_DUMA_Slot</span>
  178. </td>
  179. </tr>
  180. <tr>
  181. <td class="ISymbolPrefix">&nbsp;</td>
  182. <td class="IEntry">
  183. <a
  184. href="../files/kduma-h.html#_DUMA_FailReturn"
  185. id="link7"
  186. onMouseOver="ShowTip(event, 'tt7', 'link7')"
  187. onMouseOut="HideTip('tt7')"
  188. class="ISymbol"
  189. >_DUMA_FailReturn</a
  190. >
  191. </td>
  192. </tr>
  193. <tr>
  194. <td class="ISymbolPrefix">&nbsp;</td>
  195. <td class="IEntry">
  196. <a
  197. href="../files/kduma-c.html#_DUMA_Slot._duma_init"
  198. id="link8"
  199. onMouseOver="ShowTip(event, 'tt8', 'link8')"
  200. onMouseOut="HideTip('tt8')"
  201. class="ISymbol"
  202. >_duma_init</a
  203. >, <span class="IParent">_DUMA_Slot</span>
  204. </td>
  205. </tr>
  206. <tr>
  207. <td class="ISymbolPrefix">&nbsp;</td>
  208. <td class="IEntry">
  209. <a
  210. href="../files/kduma-c.html#_DUMA_InitState"
  211. id="link9"
  212. onMouseOver="ShowTip(event, 'tt9', 'link9')"
  213. onMouseOut="HideTip('tt9')"
  214. class="ISymbol"
  215. >_DUMA_InitState</a
  216. >
  217. </td>
  218. </tr>
  219. <tr>
  220. <td class="ISymbolPrefix">&nbsp;</td>
  221. <td class="IEntry">
  222. <a
  223. href="../files/kduma-c.html#_DUMA_Slot._duma_kmalloc"
  224. id="link10"
  225. onMouseOver="ShowTip(event, 'tt10', 'link10')"
  226. onMouseOut="HideTip('tt10')"
  227. class="ISymbol"
  228. >_duma_kmalloc</a
  229. >, <span class="IParent">_DUMA_Slot</span>
  230. </td>
  231. </tr>
  232. <tr>
  233. <td class="ISymbolPrefix">&nbsp;</td>
  234. <td class="IEntry">
  235. <a
  236. href="../files/kduma-c.html#_DUMA_MemRegion"
  237. id="link11"
  238. onMouseOver="ShowTip(event, 'tt11', 'link11')"
  239. onMouseOut="HideTip('tt11')"
  240. class="ISymbol"
  241. >_DUMA_MemRegion</a
  242. >
  243. </td>
  244. </tr>
  245. <tr>
  246. <td class="ISymbolPrefix">&nbsp;</td>
  247. <td class="IEntry">
  248. <a
  249. href="../files/kduma-c.html#_DUMA_Slot"
  250. id="link12"
  251. onMouseOver="ShowTip(event, 'tt12', 'link12')"
  252. onMouseOut="HideTip('tt12')"
  253. class="ISymbol"
  254. >_DUMA_Slot</a
  255. >
  256. </td>
  257. </tr>
  258. <tr>
  259. <td class="ISymbolPrefix">&nbsp;</td>
  260. <td class="IEntry">
  261. <a
  262. href="../files/kduma-c.html#_DUMA_Slot_FileSource"
  263. id="link13"
  264. onMouseOver="ShowTip(event, 'tt13', 'link13')"
  265. onMouseOut="HideTip('tt13')"
  266. class="ISymbol"
  267. >_DUMA_Slot_FileSource</a
  268. >
  269. </td>
  270. </tr>
  271. <tr>
  272. <td class="ISymbolPrefix" id="ILastSymbolPrefix">&nbsp;</td>
  273. <td class="IEntry">
  274. <a
  275. href="../files/kduma-c.html#_DUMA_SlotState"
  276. id="link14"
  277. onMouseOver="ShowTip(event, 'tt14', 'link14')"
  278. onMouseOut="HideTip('tt14')"
  279. class="ISymbol"
  280. >_DUMA_SlotState</a
  281. >
  282. </td>
  283. </tr>
  284. <tr>
  285. <td class="IHeading"><a name="Numbers"></a>0-9</td>
  286. <td></td>
  287. </tr>
  288. <tr>
  289. <td class="ISymbolPrefix" id="IOnlySymbolPrefix">&nbsp;</td>
  290. <td class="IEntry">
  291. <a
  292. href="../files/README-txt.html#00README"
  293. id="link15"
  294. onMouseOver="ShowTip(event, 'tt15', 'link15')"
  295. onMouseOut="HideTip('tt15')"
  296. class="ISymbol"
  297. >00README</a
  298. >
  299. </td>
  300. </tr>
  301. <tr>
  302. <td class="IHeading"><a name="A"></a>A</td>
  303. <td></td>
  304. </tr>
  305. <tr>
  306. <td class="ISymbolPrefix" id="IOnlySymbolPrefix">&nbsp;</td>
  307. <td class="IEntry">
  308. <a
  309. href="../files/kduma-c.html#_DUMA_Slot.allocateMoreSlots"
  310. id="link16"
  311. onMouseOver="ShowTip(event, 'tt16', 'link16')"
  312. onMouseOut="HideTip('tt16')"
  313. class="ISymbol"
  314. >allocateMoreSlots</a
  315. >, <span class="IParent">_DUMA_Slot</span>
  316. </td>
  317. </tr>
  318. <tr>
  319. <td class="IHeading"><a name="D"></a>D</td>
  320. <td></td>
  321. </tr>
  322. <tr>
  323. <td class="ISymbolPrefix" id="IFirstSymbolPrefix">&nbsp;</td>
  324. <td class="IEntry">
  325. <a
  326. href="../files/duma_config-h.html#DUMA_ADDR"
  327. id="link17"
  328. onMouseOver="ShowTip(event, 'tt17', 'link17')"
  329. onMouseOut="HideTip('tt17')"
  330. class="ISymbol"
  331. >DUMA_ADDR</a
  332. >
  333. </td>
  334. </tr>
  335. <tr>
  336. <td class="ISymbolPrefix">&nbsp;</td>
  337. <td class="IEntry">
  338. <a
  339. href="../files/kduma-c.html#_DUMA_Slot.DUMA_ALIGNMENT"
  340. id="link18"
  341. onMouseOver="ShowTip(event, 'tt18', 'link18')"
  342. onMouseOut="HideTip('tt18')"
  343. class="ISymbol"
  344. >DUMA_ALIGNMENT</a
  345. >, <span class="IParent">_DUMA_Slot</span>
  346. </td>
  347. </tr>
  348. <tr>
  349. <td class="ISymbolPrefix">&nbsp;</td>
  350. <td class="IEntry">
  351. <a
  352. href="../files/kduma-c.html#_DUMA_Slot.DUMA_ALLOW_MALLOC_0"
  353. id="link19"
  354. onMouseOver="ShowTip(event, 'tt19', 'link19')"
  355. onMouseOut="HideTip('tt19')"
  356. class="ISymbol"
  357. >DUMA_ALLOW_MALLOC_0</a
  358. >, <span class="IParent">_DUMA_Slot</span>
  359. </td>
  360. </tr>
  361. <tr>
  362. <td class="ISymbolPrefix">&nbsp;</td>
  363. <td class="IEntry">
  364. <a
  365. href="../files/duma_config-h.html#duma_config.h"
  366. class="ISymbol"
  367. >duma_config.h</a
  368. >
  369. </td>
  370. </tr>
  371. <tr>
  372. <td class="ISymbolPrefix">&nbsp;</td>
  373. <td class="IEntry">
  374. <a
  375. href="../files/kduma-c.html#_DUMA_Slot.DUMA_FILL"
  376. id="link20"
  377. onMouseOver="ShowTip(event, 'tt20', 'link20')"
  378. onMouseOut="HideTip('tt20')"
  379. class="ISymbol"
  380. >DUMA_FILL</a
  381. >, <span class="IParent">_DUMA_Slot</span>
  382. </td>
  383. </tr>
  384. <tr>
  385. <td class="ISymbolPrefix">&nbsp;</td>
  386. <td class="IEntry">
  387. <a
  388. href="../files/kduma-c.html#_DUMA_Slot.DUMA_FREE_ACCESS"
  389. id="link21"
  390. onMouseOver="ShowTip(event, 'tt21', 'link21')"
  391. onMouseOut="HideTip('tt21')"
  392. class="ISymbol"
  393. >DUMA_FREE_ACCESS</a
  394. >, <span class="IParent">_DUMA_Slot</span>
  395. </td>
  396. </tr>
  397. <tr>
  398. <td class="ISymbolPrefix">&nbsp;</td>
  399. <td class="IEntry">
  400. <a
  401. href="../files/kduma-c.html#_DUMA_Slot.duma_init"
  402. id="link22"
  403. onMouseOver="ShowTip(event, 'tt22', 'link22')"
  404. onMouseOut="HideTip('tt22')"
  405. class="ISymbol"
  406. >duma_init</a
  407. >, <span class="IParent">_DUMA_Slot</span>
  408. </td>
  409. </tr>
  410. <tr>
  411. <td class="ISymbolPrefix">&nbsp;</td>
  412. <td class="IEntry">
  413. <a
  414. href="../files/kduma-c.html#_DUMA_Slot.duma_init_done"
  415. id="link23"
  416. onMouseOver="ShowTip(event, 'tt23', 'link23')"
  417. onMouseOut="HideTip('tt23')"
  418. class="ISymbol"
  419. >duma_init_done</a
  420. >, <span class="IParent">_DUMA_Slot</span>
  421. </td>
  422. </tr>
  423. <tr>
  424. <td class="ISymbolPrefix">&nbsp;</td>
  425. <td class="IEntry">
  426. <a
  427. href="../files/kduma-c.html#_DUMA_Slot.DUMA_MALLOC_FAILEXIT"
  428. id="link24"
  429. onMouseOver="ShowTip(event, 'tt24', 'link24')"
  430. onMouseOut="HideTip('tt24')"
  431. class="ISymbol"
  432. >DUMA_MALLOC_FAILEXIT</a
  433. >, <span class="IParent">_DUMA_Slot</span>
  434. </td>
  435. </tr>
  436. <tr>
  437. <td class="ISymbolPrefix">&nbsp;</td>
  438. <td class="IEntry">
  439. <a
  440. href="../files/kduma-c.html#_DUMA_Slot.DUMA_MAX_ALLOC"
  441. id="link25"
  442. onMouseOver="ShowTip(event, 'tt25', 'link25')"
  443. onMouseOut="HideTip('tt25')"
  444. class="ISymbol"
  445. >DUMA_MAX_ALLOC</a
  446. >, <span class="IParent">_DUMA_Slot</span>
  447. </td>
  448. </tr>
  449. <tr>
  450. <td class="ISymbolPrefix">&nbsp;</td>
  451. <td class="IEntry">
  452. <a
  453. href="../files/duma_config-h.html#DUMA_MIN_ALIGNMENT"
  454. id="link26"
  455. onMouseOver="ShowTip(event, 'tt26', 'link26')"
  456. onMouseOut="HideTip('tt26')"
  457. class="ISymbol"
  458. >DUMA_MIN_ALIGNMENT</a
  459. >
  460. </td>
  461. </tr>
  462. <tr>
  463. <td class="ISymbolPrefix">&nbsp;</td>
  464. <td class="IEntry">
  465. <a
  466. href="../files/duma_config-h.html#DUMA_PAGE_SIZE"
  467. id="link27"
  468. onMouseOver="ShowTip(event, 'tt27', 'link27')"
  469. onMouseOut="HideTip('tt27')"
  470. class="ISymbol"
  471. >DUMA_PAGE_SIZE</a
  472. >
  473. </td>
  474. </tr>
  475. <tr>
  476. <td class="ISymbolPrefix">&nbsp;</td>
  477. <td class="IEntry">
  478. <a
  479. href="../files/kduma-c.html#_DUMA_Slot.DUMA_PROTECT_BELOW"
  480. id="link28"
  481. onMouseOver="ShowTip(event, 'tt28', 'link28')"
  482. onMouseOut="HideTip('tt28')"
  483. class="ISymbol"
  484. >DUMA_PROTECT_BELOW</a
  485. >, <span class="IParent">_DUMA_Slot</span>
  486. </td>
  487. </tr>
  488. <tr>
  489. <td class="ISymbolPrefix">&nbsp;</td>
  490. <td class="IEntry">
  491. <a
  492. href="../files/kduma-c.html#_DUMA_Slot.DUMA_PROTECT_FREE"
  493. id="link29"
  494. onMouseOver="ShowTip(event, 'tt29', 'link29')"
  495. onMouseOut="HideTip('tt29')"
  496. class="ISymbol"
  497. >DUMA_PROTECT_FREE</a
  498. >, <span class="IParent">_DUMA_Slot</span>
  499. </td>
  500. </tr>
  501. <tr>
  502. <td class="ISymbolPrefix">&nbsp;</td>
  503. <td class="IEntry">
  504. <a
  505. href="../files/kduma-c.html#_DUMA_Slot.DUMA_SHOW_ALLOC"
  506. id="link30"
  507. onMouseOver="ShowTip(event, 'tt30', 'link30')"
  508. onMouseOut="HideTip('tt30')"
  509. class="ISymbol"
  510. >DUMA_SHOW_ALLOC</a
  511. >, <span class="IParent">_DUMA_Slot</span>
  512. </td>
  513. </tr>
  514. <tr>
  515. <td class="ISymbolPrefix">&nbsp;</td>
  516. <td class="IEntry">
  517. <a
  518. href="../files/duma_config-h.html#DUMA_SIZE"
  519. id="link31"
  520. onMouseOver="ShowTip(event, 'tt31', 'link31')"
  521. onMouseOut="HideTip('tt31')"
  522. class="ISymbol"
  523. >DUMA_SIZE</a
  524. >
  525. </td>
  526. </tr>
  527. <tr>
  528. <td class="ISymbolPrefix" id="ILastSymbolPrefix">&nbsp;</td>
  529. <td class="IEntry">
  530. <a
  531. href="../files/kduma-c.html#_DUMA_Slot.DUMA_SLACKFILL"
  532. id="link32"
  533. onMouseOver="ShowTip(event, 'tt32', 'link32')"
  534. onMouseOut="HideTip('tt32')"
  535. class="ISymbol"
  536. >DUMA_SLACKFILL</a
  537. >, <span class="IParent">_DUMA_Slot</span>
  538. </td>
  539. </tr>
  540. <tr>
  541. <td class="IHeading"><a name="E"></a>E</td>
  542. <td></td>
  543. </tr>
  544. <tr>
  545. <td class="ISymbolPrefix" id="IOnlySymbolPrefix">&nbsp;</td>
  546. <td class="IEntry">
  547. <span class="ISymbol">Enumerations</span>
  548. <div class="ISubIndex">
  549. <a href="../files/kduma-c.html#Enumerations" class="IFile"
  550. >kduma.c</a
  551. ><a href="../files/kduma-h.html#Enumerations" class="IFile"
  552. >kduma.h</a
  553. >
  554. </div>
  555. </td>
  556. </tr>
  557. <tr>
  558. <td class="IHeading"><a name="F"></a>F</td>
  559. <td></td>
  560. </tr>
  561. <tr>
  562. <td class="ISymbolPrefix" id="IOnlySymbolPrefix">&nbsp;</td>
  563. <td class="IEntry">
  564. <span class="ISymbol">Functions</span>
  565. <div class="ISubIndex">
  566. <span class="IParent">Global</span>
  567. <div class="ISubIndex">
  568. <a href="../files/log-h.html#Functions" class="IFile"
  569. >log.h</a
  570. ><a href="../files/paging-h.html#Functions" class="IFile"
  571. >paging.h</a
  572. >
  573. </div>
  574. <a
  575. href="../files/kduma-c.html#_DUMA_Slot.Functions"
  576. class="IParent"
  577. >_DUMA_Slot</a
  578. >
  579. </div>
  580. </td>
  581. </tr>
  582. <tr>
  583. <td class="IHeading"><a name="I"></a>I</td>
  584. <td></td>
  585. </tr>
  586. <tr>
  587. <td class="ISymbolPrefix" id="IOnlySymbolPrefix">&nbsp;</td>
  588. <td class="IEntry">
  589. <a
  590. href="../files/log-h.html#ilog2"
  591. id="link33"
  592. onMouseOver="ShowTip(event, 'tt33', 'link33')"
  593. onMouseOut="HideTip('tt33')"
  594. class="ISymbol"
  595. >ilog2</a
  596. >
  597. </td>
  598. </tr>
  599. <tr>
  600. <td class="IHeading"><a name="K"></a>K</td>
  601. <td></td>
  602. </tr>
  603. <tr>
  604. <td class="ISymbolPrefix" id="IFirstSymbolPrefix">&nbsp;</td>
  605. <td class="IEntry">
  606. <a href="../files/kduma-c.html#kduma.c" class="ISymbol"
  607. >kduma.c</a
  608. >
  609. </td>
  610. </tr>
  611. <tr>
  612. <td class="ISymbolPrefix" id="ILastSymbolPrefix">&nbsp;</td>
  613. <td class="IEntry">
  614. <a href="../files/kduma-h.html#kduma.h" class="ISymbol"
  615. >kduma.h</a
  616. >
  617. </td>
  618. </tr>
  619. <tr>
  620. <td class="IHeading"><a name="L"></a>L</td>
  621. <td></td>
  622. </tr>
  623. <tr>
  624. <td class="ISymbolPrefix" id="IOnlySymbolPrefix">&nbsp;</td>
  625. <td class="IEntry">
  626. <a href="../files/log-h.html#log.h" class="ISymbol">log.h</a>
  627. </td>
  628. </tr>
  629. <tr>
  630. <td class="IHeading"><a name="M"></a>M</td>
  631. <td></td>
  632. </tr>
  633. <tr>
  634. <td class="ISymbolPrefix" id="IFirstSymbolPrefix">&nbsp;</td>
  635. <td class="IEntry">
  636. <a
  637. href="../files/kduma-c.html#MEMORY_CREATION_SIZE"
  638. id="link34"
  639. onMouseOver="ShowTip(event, 'tt34', 'link34')"
  640. onMouseOut="HideTip('tt34')"
  641. class="ISymbol"
  642. >MEMORY_CREATION_SIZE</a
  643. >
  644. </td>
  645. </tr>
  646. <tr>
  647. <td class="ISymbolPrefix" id="ILastSymbolPrefix">&nbsp;</td>
  648. <td class="IEntry">
  649. <a
  650. href="../files/paging-h.html#mprotectFailed"
  651. id="link35"
  652. onMouseOver="ShowTip(event, 'tt35', 'link35')"
  653. onMouseOut="HideTip('tt35')"
  654. class="ISymbol"
  655. >mprotectFailed</a
  656. >
  657. </td>
  658. </tr>
  659. <tr>
  660. <td class="IHeading"><a name="N"></a>N</td>
  661. <td></td>
  662. </tr>
  663. <tr>
  664. <td class="ISymbolPrefix" id="IFirstSymbolPrefix">&nbsp;</td>
  665. <td class="IEntry">
  666. <a
  667. href="../files/log-h.html#none"
  668. id="link36"
  669. onMouseOver="ShowTip(event, 'tt36', 'link36')"
  670. onMouseOut="HideTip('tt36')"
  671. class="ISymbol"
  672. >none</a
  673. >
  674. </td>
  675. </tr>
  676. <tr>
  677. <td class="ISymbolPrefix">&nbsp;</td>
  678. <td class="IEntry">
  679. <a
  680. href="../files/kduma-c.html#_DUMA_Slot.numAllocs"
  681. id="link37"
  682. onMouseOver="ShowTip(event, 'tt37', 'link37')"
  683. onMouseOut="HideTip('tt37')"
  684. class="ISymbol"
  685. >numAllocs</a
  686. >, <span class="IParent">_DUMA_Slot</span>
  687. </td>
  688. </tr>
  689. <tr>
  690. <td class="ISymbolPrefix" id="ILastSymbolPrefix">&nbsp;</td>
  691. <td class="IEntry">
  692. <a
  693. href="../files/kduma-c.html#_DUMA_Slot.numDeallocs"
  694. id="link38"
  695. onMouseOver="ShowTip(event, 'tt38', 'link38')"
  696. onMouseOut="HideTip('tt38')"
  697. class="ISymbol"
  698. >numDeallocs</a
  699. >, <span class="IParent">_DUMA_Slot</span>
  700. </td>
  701. </tr>
  702. <tr>
  703. <td class="IHeading"><a name="P"></a>P</td>
  704. <td></td>
  705. </tr>
  706. <tr>
  707. <td class="ISymbolPrefix" id="IFirstSymbolPrefix">&nbsp;</td>
  708. <td class="IEntry">
  709. <a
  710. href="../files/paging-h.html#Page_AllowAccess"
  711. id="link39"
  712. onMouseOver="ShowTip(event, 'tt39', 'link39')"
  713. onMouseOut="HideTip('tt39')"
  714. class="ISymbol"
  715. >Page_AllowAccess</a
  716. >
  717. </td>
  718. </tr>
  719. <tr>
  720. <td class="ISymbolPrefix">&nbsp;</td>
  721. <td class="IEntry">
  722. <a
  723. href="../files/paging-h.html#Page_Create"
  724. id="link40"
  725. onMouseOver="ShowTip(event, 'tt40', 'link40')"
  726. onMouseOut="HideTip('tt40')"
  727. class="ISymbol"
  728. >Page_Create</a
  729. >
  730. </td>
  731. </tr>
  732. <tr>
  733. <td class="ISymbolPrefix">&nbsp;</td>
  734. <td class="IEntry">
  735. <a
  736. href="../files/paging-h.html#Page_Delete"
  737. id="link41"
  738. onMouseOver="ShowTip(event, 'tt41', 'link41')"
  739. onMouseOut="HideTip('tt41')"
  740. class="ISymbol"
  741. >Page_Delete</a
  742. >
  743. </td>
  744. </tr>
  745. <tr>
  746. <td class="ISymbolPrefix">&nbsp;</td>
  747. <td class="IEntry">
  748. <a
  749. href="../files/paging-h.html#Page_DenyAccess"
  750. id="link42"
  751. onMouseOver="ShowTip(event, 'tt42', 'link42')"
  752. onMouseOut="HideTip('tt42')"
  753. class="ISymbol"
  754. >Page_DenyAccess</a
  755. >
  756. </td>
  757. </tr>
  758. <tr>
  759. <td class="ISymbolPrefix">&nbsp;</td>
  760. <td class="IEntry">
  761. <a
  762. href="../files/paging-h.html#Page_Size"
  763. id="link43"
  764. onMouseOver="ShowTip(event, 'tt43', 'link43')"
  765. onMouseOut="HideTip('tt43')"
  766. class="ISymbol"
  767. >Page_Size</a
  768. >
  769. </td>
  770. </tr>
  771. <tr>
  772. <td class="ISymbolPrefix" id="ILastSymbolPrefix">&nbsp;</td>
  773. <td class="IEntry">
  774. <a href="../files/paging-h.html#paging.h" class="ISymbol"
  775. >paging.h</a
  776. >
  777. </td>
  778. </tr>
  779. <tr>
  780. <td class="IHeading"><a name="S"></a>S</td>
  781. <td></td>
  782. </tr>
  783. <tr>
  784. <td class="ISymbolPrefix" id="IFirstSymbolPrefix">&nbsp;</td>
  785. <td class="IEntry">
  786. <a
  787. href="../files/kduma-c.html#_DUMA_Slot.slotCount"
  788. id="link44"
  789. onMouseOver="ShowTip(event, 'tt44', 'link44')"
  790. onMouseOut="HideTip('tt44')"
  791. class="ISymbol"
  792. >slotCount</a
  793. >, <span class="IParent">_DUMA_Slot</span>
  794. </td>
  795. </tr>
  796. <tr>
  797. <td class="ISymbolPrefix">&nbsp;</td>
  798. <td class="IEntry">
  799. <a
  800. href="../files/kduma-c.html#_DUMA_Slot.slotsPerPage"
  801. id="link45"
  802. onMouseOver="ShowTip(event, 'tt45', 'link45')"
  803. onMouseOut="HideTip('tt45')"
  804. class="ISymbol"
  805. >slotsPerPage</a
  806. >, <span class="IParent">_DUMA_Slot</span>
  807. </td>
  808. </tr>
  809. <tr>
  810. <td class="ISymbolPrefix">&nbsp;</td>
  811. <td class="IEntry">
  812. <a
  813. href="../files/kduma-c.html#_DUMA_Slot.sumAllocatedMem"
  814. id="link46"
  815. onMouseOver="ShowTip(event, 'tt46', 'link46')"
  816. onMouseOut="HideTip('tt46')"
  817. class="ISymbol"
  818. >sumAllocatedMem</a
  819. >, <span class="IParent">_DUMA_Slot</span>
  820. </td>
  821. </tr>
  822. <tr>
  823. <td class="ISymbolPrefix">&nbsp;</td>
  824. <td class="IEntry">
  825. <a
  826. href="../files/kduma-c.html#_DUMA_Slot.sumProtectedMem"
  827. id="link47"
  828. onMouseOver="ShowTip(event, 'tt47', 'link47')"
  829. onMouseOut="HideTip('tt47')"
  830. class="ISymbol"
  831. >sumProtectedMem</a
  832. >, <span class="IParent">_DUMA_Slot</span>
  833. </td>
  834. </tr>
  835. <tr>
  836. <td class="ISymbolPrefix" id="ILastSymbolPrefix">&nbsp;</td>
  837. <td class="IEntry">
  838. <a
  839. href="../files/kduma-c.html#_DUMA_Slot.sumTotalAllocatedMem"
  840. id="link48"
  841. onMouseOver="ShowTip(event, 'tt48', 'link48')"
  842. onMouseOut="HideTip('tt48')"
  843. class="ISymbol"
  844. >sumTotalAllocatedMem</a
  845. >, <span class="IParent">_DUMA_Slot</span>
  846. </td>
  847. </tr>
  848. <tr>
  849. <td class="IHeading"><a name="T"></a>T</td>
  850. <td></td>
  851. </tr>
  852. <tr>
  853. <td class="ISymbolPrefix" id="IOnlySymbolPrefix">&nbsp;</td>
  854. <td class="IEntry">
  855. <a href="../files/duma_config-h.html#Types" class="ISymbol"
  856. >Types</a
  857. >
  858. </td>
  859. </tr>
  860. <tr>
  861. <td class="IHeading"><a name="U"></a>U</td>
  862. <td></td>
  863. </tr>
  864. <tr>
  865. <td class="ISymbolPrefix" id="IOnlySymbolPrefix">&nbsp;</td>
  866. <td class="IEntry">
  867. <a
  868. href="../files/kduma-c.html#_DUMA_Slot.unUsedSlots"
  869. id="link49"
  870. onMouseOver="ShowTip(event, 'tt49', 'link49')"
  871. onMouseOut="HideTip('tt49')"
  872. class="ISymbol"
  873. >unUsedSlots</a
  874. >, <span class="IParent">_DUMA_Slot</span>
  875. </td>
  876. </tr>
  877. <tr>
  878. <td class="IHeading"><a name="V"></a>V</td>
  879. <td></td>
  880. </tr>
  881. <tr>
  882. <td class="ISymbolPrefix" id="IFirstSymbolPrefix">&nbsp;</td>
  883. <td class="IEntry">
  884. <span class="ISymbol">Variables</span>
  885. <div class="ISubIndex">
  886. <span class="IParent">Global</span>
  887. <div class="ISubIndex">
  888. <a
  889. href="../files/duma_config-h.html#Variables"
  890. class="IFile"
  891. >duma_config.h</a
  892. ><a href="../files/kduma-c.html#Variables" class="IFile"
  893. >kduma.c</a
  894. ><a href="../files/log-h.html#Variables" class="IFile"
  895. >log.h</a
  896. >
  897. </div>
  898. <a
  899. href="../files/kduma-c.html#_DUMA_Slot.Variables"
  900. class="IParent"
  901. >_DUMA_Slot</a
  902. >
  903. </div>
  904. </td>
  905. </tr>
  906. <tr>
  907. <td class="ISymbolPrefix" id="ILastSymbolPrefix">&nbsp;</td>
  908. <td class="IEntry">
  909. <a
  910. href="../files/kduma-c.html#version"
  911. id="link50"
  912. onMouseOver="ShowTip(event, 'tt50', 'link50')"
  913. onMouseOut="HideTip('tt50')"
  914. class="ISymbol"
  915. >version</a
  916. >
  917. </td>
  918. </tr>
  919. </table>
  920. <!--START_ND_TOOLTIPS-->
  921. <div class="CToolTip" id="tt1">
  922. <div class="CFunction">
  923. <blockquote>
  924. <table
  925. border="0"
  926. cellspacing="0"
  927. cellpadding="0"
  928. class="Prototype"
  929. >
  930. <tr>
  931. <td>
  932. <table border="0" cellspacing="0" cellpadding="0">
  933. <tr>
  934. <td class="PBeforeParameters" nowrap>
  935. void * _duma_allocate(
  936. </td>
  937. <td class="PTypePrefix" nowrap></td>
  938. <td class="PType" nowrap>size_t&nbsp;</td>
  939. <td class="PParameter" nowrap>alignment,</td>
  940. </tr>
  941. <tr>
  942. <td></td>
  943. <td class="PTypePrefix" nowrap></td>
  944. <td class="PType" nowrap>size_t&nbsp;</td>
  945. <td class="PParameter" nowrap>userSize,</td>
  946. </tr>
  947. <tr>
  948. <td></td>
  949. <td class="PTypePrefix" nowrap></td>
  950. <td class="PType" nowrap>int&nbsp;</td>
  951. <td class="PParameter" nowrap>protectBelow,</td>
  952. </tr>
  953. <tr>
  954. <td></td>
  955. <td class="PTypePrefix" nowrap></td>
  956. <td class="PType" nowrap>int&nbsp;</td>
  957. <td class="PParameter" nowrap>fillByte,</td>
  958. </tr>
  959. <tr>
  960. <td></td>
  961. <td class="PTypePrefix" nowrap></td>
  962. <td class="PType" nowrap>int&nbsp;</td>
  963. <td class="PParameter" nowrap>protectAllocList,</td>
  964. </tr>
  965. <tr>
  966. <td></td>
  967. <td class="PTypePrefix" nowrap>enum&nbsp;</td>
  968. <td class="PType" nowrap>_DUMA_Allocator&nbsp;</td>
  969. <td class="PParameter" nowrap>allocator,</td>
  970. </tr>
  971. <tr>
  972. <td></td>
  973. <td class="PTypePrefix" nowrap>
  974. enum _DUMA_FailReturn&nbsp;
  975. </td>
  976. <td class="PType" nowrap>fail&nbsp;</td>
  977. <td class="PParameter" nowrap>DUMA_PARAMLIST_FL</td>
  978. <td class="PAfterParameters" nowrap>)</td>
  979. </tr>
  980. </table>
  981. </td>
  982. </tr>
  983. </table>
  984. </blockquote>
  985. This is the memory allocator.
  986. </div>
  987. </div>
  988. <div class="CToolTip" id="tt2">
  989. <div class="CType">
  990. Passed to duma allocator such as we know who is calling us.
  991. </div>
  992. </div>
  993. <div class="CToolTip" id="tt3">
  994. <div class="CVariable">
  995. <blockquote>
  996. <table
  997. border="0"
  998. cellspacing="0"
  999. cellpadding="0"
  1000. class="Prototype"
  1001. >
  1002. <tr>
  1003. <td>struct _DUMA_Slot * _duma_allocList</td>
  1004. </tr>
  1005. </table>
  1006. </blockquote>
  1007. _DUMA_allocList points to the array of slot structures used to
  1008. manage the malloc arena.
  1009. </div>
  1010. </div>
  1011. <div class="CToolTip" id="tt4">
  1012. <div class="CVariable">
  1013. <blockquote>
  1014. <table
  1015. border="0"
  1016. cellspacing="0"
  1017. cellpadding="0"
  1018. class="Prototype"
  1019. >
  1020. <tr>
  1021. <td>static size_t _duma_allocListSize</td>
  1022. </tr>
  1023. </table>
  1024. </blockquote>
  1025. _duma_allocListSize is the size of the allocation list.
  1026. </div>
  1027. </div>
  1028. <div class="CToolTip" id="tt5">
  1029. <div class="CFunction">
  1030. <blockquote>
  1031. <table
  1032. border="0"
  1033. cellspacing="0"
  1034. cellpadding="0"
  1035. class="Prototype"
  1036. >
  1037. <tr>
  1038. <td>
  1039. <table border="0" cellspacing="0" cellpadding="0">
  1040. <tr>
  1041. <td class="PBeforeParameters" nowrap>
  1042. void _duma_assert(
  1043. </td>
  1044. <td class="PTypePrefix" nowrap>const&nbsp;</td>
  1045. <td class="PType" nowrap>char&nbsp;</td>
  1046. <td class="PParameterPrefix" nowrap>*</td>
  1047. <td class="PParameter" nowrap>exprstr,</td>
  1048. </tr>
  1049. <tr>
  1050. <td></td>
  1051. <td class="PTypePrefix" nowrap>const&nbsp;</td>
  1052. <td class="PType" nowrap>char&nbsp;</td>
  1053. <td class="PParameterPrefix" nowrap>*</td>
  1054. <td class="PParameter" nowrap>filename,</td>
  1055. </tr>
  1056. <tr>
  1057. <td></td>
  1058. <td class="PTypePrefix" nowrap></td>
  1059. <td class="PType" nowrap>int&nbsp;</td>
  1060. <td class="PParameterPrefix" nowrap></td>
  1061. <td class="PParameter" nowrap>lineno</td>
  1062. <td class="PAfterParameters" nowrap>)</td>
  1063. </tr>
  1064. </table>
  1065. </td>
  1066. </tr>
  1067. </table>
  1068. </blockquote>
  1069. Print message and halt program execution in crazy way.
  1070. </div>
  1071. </div>
  1072. <div class="CToolTip" id="tt6">
  1073. <div class="CFunction">
  1074. <blockquote>
  1075. <table
  1076. border="0"
  1077. cellspacing="0"
  1078. cellpadding="0"
  1079. class="Prototype"
  1080. >
  1081. <tr>
  1082. <td>
  1083. <table border="0" cellspacing="0" cellpadding="0">
  1084. <tr>
  1085. <td class="PBeforeParameters" nowrap>
  1086. void _duma_deallocate(
  1087. </td>
  1088. <td class="PTypePrefix" nowrap></td>
  1089. <td class="PType" nowrap>void&nbsp;</td>
  1090. <td class="PParameterPrefix" nowrap>*</td>
  1091. <td class="PParameter" nowrap>address,</td>
  1092. </tr>
  1093. <tr>
  1094. <td></td>
  1095. <td class="PTypePrefix" nowrap></td>
  1096. <td class="PType" nowrap>int&nbsp;</td>
  1097. <td class="PParameterPrefix" nowrap></td>
  1098. <td class="PParameter" nowrap>protectAllocList,</td>
  1099. </tr>
  1100. <tr>
  1101. <td></td>
  1102. <td class="PTypePrefix" nowrap>
  1103. enum _DUMA_Allocator&nbsp;
  1104. </td>
  1105. <td class="PType" nowrap>allocator&nbsp;</td>
  1106. <td class="PParameterPrefix" nowrap></td>
  1107. <td class="PParameter" nowrap>DUMA_PARAMLIST_FL</td>
  1108. <td class="PAfterParameters" nowrap>)</td>
  1109. </tr>
  1110. </table>
  1111. </td>
  1112. </tr>
  1113. </table>
  1114. </blockquote>
  1115. Deallocate allocated memory after running some checks, then open
  1116. slot for use.
  1117. </div>
  1118. </div>
  1119. <div class="CToolTip" id="tt7">
  1120. <div class="CType">Unknown use.</div>
  1121. </div>
  1122. <div class="CToolTip" id="tt8">
  1123. <div class="CFunction">
  1124. <blockquote>
  1125. <table
  1126. border="0"
  1127. cellspacing="0"
  1128. cellpadding="0"
  1129. class="Prototype"
  1130. >
  1131. <tr>
  1132. <td>
  1133. <table border="0" cellspacing="0" cellpadding="0">
  1134. <tr>
  1135. <td class="PBeforeParameters" nowrap>
  1136. void _duma_init(
  1137. </td>
  1138. <td class="PParameter" nowrap>void</td>
  1139. <td class="PAfterParameters" nowrap>)</td>
  1140. </tr>
  1141. </table>
  1142. </td>
  1143. </tr>
  1144. </table>
  1145. </blockquote>
  1146. _duma_init sets up the memory allocation arena and the run-time
  1147. configuration information.
  1148. </div>
  1149. </div>
  1150. <div class="CToolTip" id="tt9">
  1151. <div class="CType">Whats are initialization start</div>
  1152. </div>
  1153. <div class="CToolTip" id="tt10">
  1154. <div class="CFunction">
  1155. <blockquote>
  1156. <table
  1157. border="0"
  1158. cellspacing="0"
  1159. cellpadding="0"
  1160. class="Prototype"
  1161. >
  1162. <tr>
  1163. <td>
  1164. <table border="0" cellspacing="0" cellpadding="0">
  1165. <tr>
  1166. <td class="PBeforeParameters" nowrap>
  1167. void * _duma_kmalloc(
  1168. </td>
  1169. <td class="PTypePrefix" nowrap></td>
  1170. <td class="PType" nowrap>size_t&nbsp;</td>
  1171. <td class="PParameter" nowrap>size,</td>
  1172. </tr>
  1173. <tr>
  1174. <td></td>
  1175. <td class="PTypePrefix" nowrap>int&nbsp;</td>
  1176. <td class="PType" nowrap>flags&nbsp;</td>
  1177. <td class="PParameter" nowrap>DUMA_PARAMLIST_FL</td>
  1178. <td class="PAfterParameters" nowrap>)</td>
  1179. </tr>
  1180. </table>
  1181. </td>
  1182. </tr>
  1183. </table>
  1184. </blockquote>
  1185. A version of kmalloc.
  1186. </div>
  1187. </div>
  1188. <div class="CToolTip" id="tt11">
  1189. <div class="CType">Memory region of slot.</div>
  1190. </div>
  1191. <div class="CToolTip" id="tt12">
  1192. <div class="CClass">
  1193. Struct Slot contains all of the information about a malloc buffer
  1194. except for the contents of its memory.
  1195. </div>
  1196. </div>
  1197. <div class="CToolTip" id="tt13">
  1198. <div class="CType">Where did we get file info</div>
  1199. </div>
  1200. <div class="CToolTip" id="tt14">
  1201. <div class="CType">State of slot values (empty, free, etc)</div>
  1202. </div>
  1203. <!--END_ND_TOOLTIPS-->
  1204. <!--START_ND_TOOLTIPS-->
  1205. <div class="CToolTip" id="tt15">
  1206. <div class="CSection">
  1207. This is the begining of a linux kernel model duma.
  1208. </div>
  1209. </div>
  1210. <!--END_ND_TOOLTIPS-->
  1211. <!--START_ND_TOOLTIPS-->
  1212. <div class="CToolTip" id="tt16">
  1213. <div class="CFunction">
  1214. <blockquote>
  1215. <table
  1216. border="0"
  1217. cellspacing="0"
  1218. cellpadding="0"
  1219. class="Prototype"
  1220. >
  1221. <tr>
  1222. <td>
  1223. <table border="0" cellspacing="0" cellpadding="0">
  1224. <tr>
  1225. <td class="PBeforeParameters" nowrap>
  1226. static void allocateMoreSlots(
  1227. </td>
  1228. <td class="PParameter" nowrap>void</td>
  1229. <td class="PAfterParameters" nowrap>)</td>
  1230. </tr>
  1231. </table>
  1232. </td>
  1233. </tr>
  1234. </table>
  1235. </blockquote>
  1236. allocateMoreSlots is called when there are only enough slot
  1237. structures left to support the allocation of a single malloc
  1238. buffer.
  1239. </div>
  1240. </div>
  1241. <!--END_ND_TOOLTIPS-->
  1242. <!--START_ND_TOOLTIPS-->
  1243. <div class="CToolTip" id="tt17">
  1244. <div class="CType">
  1245. An integer type with same size as &lsquo;void *&rsquo;
  1246. </div>
  1247. </div>
  1248. <div class="CToolTip" id="tt18">
  1249. <div class="CVariable">
  1250. <blockquote>
  1251. <table
  1252. border="0"
  1253. cellspacing="0"
  1254. cellpadding="0"
  1255. class="Prototype"
  1256. >
  1257. <tr>
  1258. <td>size_t DUMA_ALIGNMENT</td>
  1259. </tr>
  1260. </table>
  1261. </blockquote>
  1262. DUMA_ALIGNMENT is a global variable used to control the default
  1263. alignment of buffers returned by malloc(), calloc(), and
  1264. realloc().
  1265. </div>
  1266. </div>
  1267. <div class="CToolTip" id="tt19">
  1268. <div class="CVariable">
  1269. <blockquote>
  1270. <table
  1271. border="0"
  1272. cellspacing="0"
  1273. cellpadding="0"
  1274. class="Prototype"
  1275. >
  1276. <tr>
  1277. <td>static int DUMA_ALLOW_MALLOC_0</td>
  1278. </tr>
  1279. </table>
  1280. </blockquote>
  1281. DUMA_ALLOW_MALLOC_0 is set if DUMA is to allow malloc(0).
  1282. </div>
  1283. </div>
  1284. <div class="CToolTip" id="tt20">
  1285. <div class="CVariable">
  1286. <blockquote>
  1287. <table
  1288. border="0"
  1289. cellspacing="0"
  1290. cellpadding="0"
  1291. class="Prototype"
  1292. >
  1293. <tr>
  1294. <td>int DUMA_FILL</td>
  1295. </tr>
  1296. </table>
  1297. </blockquote>
  1298. DUMA_FILL is set to 0-255 if DUMA should fill all new allocated
  1299. memory with the specified value.
  1300. </div>
  1301. </div>
  1302. <div class="CToolTip" id="tt21">
  1303. <div class="CVariable">
  1304. <blockquote>
  1305. <table
  1306. border="0"
  1307. cellspacing="0"
  1308. cellpadding="0"
  1309. class="Prototype"
  1310. >
  1311. <tr>
  1312. <td>static int DUMA_FREE_ACCESS</td>
  1313. </tr>
  1314. </table>
  1315. </blockquote>
  1316. DUMA_FREE_ACCESS is set if DUMA is to write access memory before
  1317. freeing it.
  1318. </div>
  1319. </div>
  1320. <div class="CToolTip" id="tt22">
  1321. <div class="CFunction">
  1322. <blockquote>
  1323. <table
  1324. border="0"
  1325. cellspacing="0"
  1326. cellpadding="0"
  1327. class="Prototype"
  1328. >
  1329. <tr>
  1330. <td>
  1331. <table border="0" cellspacing="0" cellpadding="0">
  1332. <tr>
  1333. <td class="PBeforeParameters" nowrap>
  1334. void duma_init(
  1335. </td>
  1336. <td class="PParameter" nowrap>void</td>
  1337. <td class="PAfterParameters" nowrap>)</td>
  1338. </tr>
  1339. </table>
  1340. </td>
  1341. </tr>
  1342. </table>
  1343. </blockquote>
  1344. duma_init sets configuration settings.
  1345. </div>
  1346. </div>
  1347. <div class="CToolTip" id="tt23">
  1348. <div class="CVariable">
  1349. internal variable: state of initialization
  1350. </div>
  1351. </div>
  1352. <div class="CToolTip" id="tt24">
  1353. <div class="CVariable">
  1354. <blockquote>
  1355. <table
  1356. border="0"
  1357. cellspacing="0"
  1358. cellpadding="0"
  1359. class="Prototype"
  1360. >
  1361. <tr>
  1362. <td>static int DUMA_MALLOC_FAILEXIT</td>
  1363. </tr>
  1364. </table>
  1365. </blockquote>
  1366. DUMA_MALLOC_FAILEXIT controls the behaviour of DUMA when malloc()
  1367. fails and would return NULL.
  1368. </div>
  1369. </div>
  1370. <div class="CToolTip" id="tt25">
  1371. <div class="CVariable">
  1372. <blockquote>
  1373. <table
  1374. border="0"
  1375. cellspacing="0"
  1376. cellpadding="0"
  1377. class="Prototype"
  1378. >
  1379. <tr>
  1380. <td>static long DUMA_MAX_ALLOC</td>
  1381. </tr>
  1382. </table>
  1383. </blockquote>
  1384. DUMA_MAX_ALLOC is used to control the maximum memory print of the
  1385. program in total: When the sum of allocated and protected memory
  1386. would exceed this value in kB, the protected memory is
  1387. freed/deleted.
  1388. </div>
  1389. </div>
  1390. <div class="CToolTip" id="tt26">
  1391. <div class="CVariable">Minimum required alignment by CPU.</div>
  1392. </div>
  1393. <div class="CToolTip" id="tt27">
  1394. <div class="CVariable">
  1395. Number of bytes per virtual-memory page, as returned by
  1396. Page_Size().
  1397. </div>
  1398. </div>
  1399. <div class="CToolTip" id="tt28">
  1400. <div class="CVariable">
  1401. <blockquote>
  1402. <table
  1403. border="0"
  1404. cellspacing="0"
  1405. cellpadding="0"
  1406. class="Prototype"
  1407. >
  1408. <tr>
  1409. <td>int DUMA_PROTECT_BELOW</td>
  1410. </tr>
  1411. </table>
  1412. </blockquote>
  1413. DUMA_PROTECT_BELOW is used to modify the behavior of the
  1414. allocator.
  1415. </div>
  1416. </div>
  1417. <div class="CToolTip" id="tt29">
  1418. <div class="CVariable">
  1419. <blockquote>
  1420. <table
  1421. border="0"
  1422. cellspacing="0"
  1423. cellpadding="0"
  1424. class="Prototype"
  1425. >
  1426. <tr>
  1427. <td>static long DUMA_PROTECT_FREE</td>
  1428. </tr>
  1429. </table>
  1430. </blockquote>
  1431. DUMA_PROTECT_FREE is used to control the disposition of memory
  1432. that is released using free().
  1433. </div>
  1434. </div>
  1435. <div class="CToolTip" id="tt30">
  1436. <div class="CVariable">
  1437. <blockquote>
  1438. <table
  1439. border="0"
  1440. cellspacing="0"
  1441. cellpadding="0"
  1442. class="Prototype"
  1443. >
  1444. <tr>
  1445. <td>static int DUMA_SHOW_ALLOC</td>
  1446. </tr>
  1447. </table>
  1448. </blockquote>
  1449. DUMA_SHOW_ALLOC is set if DUMA is to print all allocations and
  1450. deallocations to the console.
  1451. </div>
  1452. </div>
  1453. <div class="CToolTip" id="tt31">
  1454. <div class="CType">
  1455. An integer type with same size as &lsquo;size_t&rsquo;
  1456. </div>
  1457. </div>
  1458. <div class="CToolTip" id="tt32">
  1459. <div class="CVariable">
  1460. <blockquote>
  1461. <table
  1462. border="0"
  1463. cellspacing="0"
  1464. cellpadding="0"
  1465. class="Prototype"
  1466. >
  1467. <tr>
  1468. <td>static int DUMA_SLACKFILL</td>
  1469. </tr>
  1470. </table>
  1471. </blockquote>
  1472. DUMA_SLACKFILL is set to 0-255.
  1473. </div>
  1474. </div>
  1475. <!--END_ND_TOOLTIPS-->
  1476. <!--START_ND_TOOLTIPS-->
  1477. <!--END_ND_TOOLTIPS-->
  1478. <!--START_ND_TOOLTIPS-->
  1479. <!--END_ND_TOOLTIPS-->
  1480. <!--START_ND_TOOLTIPS-->
  1481. <div class="CToolTip" id="tt33">
  1482. <div class="CFunction">
  1483. <blockquote>
  1484. <table
  1485. border="0"
  1486. cellspacing="0"
  1487. cellpadding="0"
  1488. class="Prototype"
  1489. >
  1490. <tr>
  1491. <td>
  1492. <table border="0" cellspacing="0" cellpadding="0">
  1493. <tr>
  1494. <td class="PBeforeParameters" nowrap>
  1495. static inline int ilog2(
  1496. </td>
  1497. <td class="PType" nowrap>int&nbsp;</td>
  1498. <td class="PParameter" nowrap>val</td>
  1499. <td class="PAfterParameters" nowrap>)</td>
  1500. </tr>
  1501. </table>
  1502. </td>
  1503. </tr>
  1504. </table>
  1505. </blockquote>
  1506. Base 2 log computation.
  1507. </div>
  1508. </div>
  1509. <!--END_ND_TOOLTIPS-->
  1510. <!--START_ND_TOOLTIPS-->
  1511. <!--END_ND_TOOLTIPS-->
  1512. <!--START_ND_TOOLTIPS-->
  1513. <!--END_ND_TOOLTIPS-->
  1514. <!--START_ND_TOOLTIPS-->
  1515. <div class="CToolTip" id="tt34">
  1516. <div class="CVariable">
  1517. MEMORY_CREATION_SIZE is the amount of memory to get from the
  1518. operating system at one time.
  1519. </div>
  1520. </div>
  1521. <div class="CToolTip" id="tt35">
  1522. <div class="CFunction">
  1523. <blockquote>
  1524. <table
  1525. border="0"
  1526. cellspacing="0"
  1527. cellpadding="0"
  1528. class="Prototype"
  1529. >
  1530. <tr>
  1531. <td>
  1532. <table border="0" cellspacing="0" cellpadding="0">
  1533. <tr>
  1534. <td class="PBeforeParameters" nowrap>
  1535. static void mprotectFailed(
  1536. </td>
  1537. <td class="PParameter" nowrap>void</td>
  1538. <td class="PAfterParameters" nowrap>)</td>
  1539. </tr>
  1540. </table>
  1541. </td>
  1542. </tr>
  1543. </table>
  1544. </blockquote>
  1545. Report that VirtualProtect or mprotect failed and abort program
  1546. execution.
  1547. </div>
  1548. </div>
  1549. <!--END_ND_TOOLTIPS-->
  1550. <!--START_ND_TOOLTIPS-->
  1551. <div class="CToolTip" id="tt36">
  1552. <div class="CVariable">
  1553. Fake variable to make docs work right :(
  1554. </div>
  1555. </div>
  1556. <div class="CToolTip" id="tt37">
  1557. <div class="CVariable">
  1558. <blockquote>
  1559. <table
  1560. border="0"
  1561. cellspacing="0"
  1562. cellpadding="0"
  1563. class="Prototype"
  1564. >
  1565. <tr>
  1566. <td>static long numAllocs</td>
  1567. </tr>
  1568. </table>
  1569. </blockquote>
  1570. internal variable: number of allocations processed so far
  1571. </div>
  1572. </div>
  1573. <div class="CToolTip" id="tt38">
  1574. <div class="CVariable">
  1575. <blockquote>
  1576. <table
  1577. border="0"
  1578. cellspacing="0"
  1579. cellpadding="0"
  1580. class="Prototype"
  1581. >
  1582. <tr>
  1583. <td>static long numDeallocs</td>
  1584. </tr>
  1585. </table>
  1586. </blockquote>
  1587. internal variable: number of deallocations processed so far
  1588. </div>
  1589. </div>
  1590. <!--END_ND_TOOLTIPS-->
  1591. <!--START_ND_TOOLTIPS-->
  1592. <div class="CToolTip" id="tt39">
  1593. <div class="CFunction">
  1594. <blockquote>
  1595. <table
  1596. border="0"
  1597. cellspacing="0"
  1598. cellpadding="0"
  1599. class="Prototype"
  1600. >
  1601. <tr>
  1602. <td>
  1603. <table border="0" cellspacing="0" cellpadding="0">
  1604. <tr>
  1605. <td class="PBeforeParameters" nowrap>
  1606. void Page_AllowAccess(
  1607. </td>
  1608. <td class="PType" nowrap>void&nbsp;</td>
  1609. <td class="PParameterPrefix" nowrap>*</td>
  1610. <td class="PParameter" nowrap>address,</td>
  1611. </tr>
  1612. <tr>
  1613. <td></td>
  1614. <td class="PType" nowrap>size_t&nbsp;</td>
  1615. <td class="PParameterPrefix" nowrap></td>
  1616. <td class="PParameter" nowrap>size</td>
  1617. <td class="PAfterParameters" nowrap>)</td>
  1618. </tr>
  1619. </table>
  1620. </td>
  1621. </tr>
  1622. </table>
  1623. </blockquote>
  1624. Allow memory access to allocated memory.
  1625. </div>
  1626. </div>
  1627. <div class="CToolTip" id="tt40">
  1628. <div class="CFunction">
  1629. <blockquote>
  1630. <table
  1631. border="0"
  1632. cellspacing="0"
  1633. cellpadding="0"
  1634. class="Prototype"
  1635. >
  1636. <tr>
  1637. <td>
  1638. <table border="0" cellspacing="0" cellpadding="0">
  1639. <tr>
  1640. <td class="PBeforeParameters" nowrap>
  1641. static void * Page_Create(
  1642. </td>
  1643. <td class="PType" nowrap>size_t&nbsp;</td>
  1644. <td class="PParameter" nowrap>size,</td>
  1645. </tr>
  1646. <tr>
  1647. <td></td>
  1648. <td class="PType" nowrap>int&nbsp;</td>
  1649. <td class="PParameter" nowrap>exitonfail,</td>
  1650. </tr>
  1651. <tr>
  1652. <td></td>
  1653. <td class="PType" nowrap>int&nbsp;</td>
  1654. <td class="PParameter" nowrap>printerror,</td>
  1655. </tr>
  1656. <tr>
  1657. <td></td>
  1658. <td class="PType" nowrap>int&nbsp;</td>
  1659. <td class="PParameter" nowrap>flags</td>
  1660. <td class="PAfterParameters" nowrap>)</td>
  1661. </tr>
  1662. </table>
  1663. </td>
  1664. </tr>
  1665. </table>
  1666. </blockquote>
  1667. Create memory.
  1668. </div>
  1669. </div>
  1670. <div class="CToolTip" id="tt41">
  1671. <div class="CFunction">
  1672. <blockquote>
  1673. <table
  1674. border="0"
  1675. cellspacing="0"
  1676. cellpadding="0"
  1677. class="Prototype"
  1678. >
  1679. <tr>
  1680. <td>
  1681. <table border="0" cellspacing="0" cellpadding="0">
  1682. <tr>
  1683. <td class="PBeforeParameters" nowrap>
  1684. static void Page_Delete(
  1685. </td>
  1686. <td class="PType" nowrap>void&nbsp;</td>
  1687. <td class="PParameterPrefix" nowrap>*</td>
  1688. <td class="PParameter" nowrap>address,</td>
  1689. </tr>
  1690. <tr>
  1691. <td></td>
  1692. <td class="PType" nowrap>size_t&nbsp;</td>
  1693. <td class="PParameterPrefix" nowrap></td>
  1694. <td class="PParameter" nowrap>size</td>
  1695. <td class="PAfterParameters" nowrap>)</td>
  1696. </tr>
  1697. </table>
  1698. </td>
  1699. </tr>
  1700. </table>
  1701. </blockquote>
  1702. Free&rsquo;s DUMA allocated memory.
  1703. </div>
  1704. </div>
  1705. <div class="CToolTip" id="tt42">
  1706. <div class="CFunction">
  1707. <blockquote>
  1708. <table
  1709. border="0"
  1710. cellspacing="0"
  1711. cellpadding="0"
  1712. class="Prototype"
  1713. >
  1714. <tr>
  1715. <td>
  1716. <table border="0" cellspacing="0" cellpadding="0">
  1717. <tr>
  1718. <td class="PBeforeParameters" nowrap>
  1719. static void Page_DenyAccess(
  1720. </td>
  1721. <td class="PType" nowrap>void&nbsp;</td>
  1722. <td class="PParameterPrefix" nowrap>*</td>
  1723. <td class="PParameter" nowrap>address,</td>
  1724. </tr>
  1725. <tr>
  1726. <td></td>
  1727. <td class="PType" nowrap>size_t&nbsp;</td>
  1728. <td class="PParameterPrefix" nowrap></td>
  1729. <td class="PParameter" nowrap>size</td>
  1730. <td class="PAfterParameters" nowrap>)</td>
  1731. </tr>
  1732. </table>
  1733. </td>
  1734. </tr>
  1735. </table>
  1736. </blockquote>
  1737. Deny access to allocated memory region.
  1738. </div>
  1739. </div>
  1740. <div class="CToolTip" id="tt43">
  1741. <div class="CFunction">
  1742. <blockquote>
  1743. <table
  1744. border="0"
  1745. cellspacing="0"
  1746. cellpadding="0"
  1747. class="Prototype"
  1748. >
  1749. <tr>
  1750. <td>
  1751. <table border="0" cellspacing="0" cellpadding="0">
  1752. <tr>
  1753. <td class="PBeforeParameters" nowrap>
  1754. static size_t Page_Size(
  1755. </td>
  1756. <td class="PParameter" nowrap>void</td>
  1757. <td class="PAfterParameters" nowrap>)</td>
  1758. </tr>
  1759. </table>
  1760. </td>
  1761. </tr>
  1762. </table>
  1763. </blockquote>
  1764. Retrieve page size.
  1765. </div>
  1766. </div>
  1767. <!--END_ND_TOOLTIPS-->
  1768. <!--START_ND_TOOLTIPS-->
  1769. <div class="CToolTip" id="tt44">
  1770. <div class="CVariable">
  1771. <blockquote>
  1772. <table
  1773. border="0"
  1774. cellspacing="0"
  1775. cellpadding="0"
  1776. class="Prototype"
  1777. >
  1778. <tr>
  1779. <td>static size_t slotCount</td>
  1780. </tr>
  1781. </table>
  1782. </blockquote>
  1783. slotCount is the number of Slot structures in allocationList.
  1784. </div>
  1785. </div>
  1786. <div class="CToolTip" id="tt45">
  1787. <div class="CVariable">
  1788. <blockquote>
  1789. <table
  1790. border="0"
  1791. cellspacing="0"
  1792. cellpadding="0"
  1793. class="Prototype"
  1794. >
  1795. <tr>
  1796. <td>static size_t slotsPerPage</td>
  1797. </tr>
  1798. </table>
  1799. </blockquote>
  1800. slotsPerPage is the number of slot structures that fit in a
  1801. virtual memory page.
  1802. </div>
  1803. </div>
  1804. <div class="CToolTip" id="tt46">
  1805. <div class="CVariable">
  1806. <blockquote>
  1807. <table
  1808. border="0"
  1809. cellspacing="0"
  1810. cellpadding="0"
  1811. class="Prototype"
  1812. >
  1813. <tr>
  1814. <td>static long sumAllocatedMem</td>
  1815. </tr>
  1816. </table>
  1817. </blockquote>
  1818. internal variable: sum of allocated -freed +protected memory in kB
  1819. </div>
  1820. </div>
  1821. <div class="CToolTip" id="tt47">
  1822. <div class="CVariable">
  1823. <blockquote>
  1824. <table
  1825. border="0"
  1826. cellspacing="0"
  1827. cellpadding="0"
  1828. class="Prototype"
  1829. >
  1830. <tr>
  1831. <td>static long sumProtectedMem</td>
  1832. </tr>
  1833. </table>
  1834. </blockquote>
  1835. internal variable: sum of protected memory in kB
  1836. </div>
  1837. </div>
  1838. <div class="CToolTip" id="tt48">
  1839. <div class="CVariable">
  1840. <blockquote>
  1841. <table
  1842. border="0"
  1843. cellspacing="0"
  1844. cellpadding="0"
  1845. class="Prototype"
  1846. >
  1847. <tr>
  1848. <td>static long sumTotalAllocatedMem</td>
  1849. </tr>
  1850. </table>
  1851. </blockquote>
  1852. internal variable: sum of allocated memory in kB
  1853. </div>
  1854. </div>
  1855. <!--END_ND_TOOLTIPS-->
  1856. <!--START_ND_TOOLTIPS-->
  1857. <!--END_ND_TOOLTIPS-->
  1858. <!--START_ND_TOOLTIPS-->
  1859. <div class="CToolTip" id="tt49">
  1860. <div class="CVariable">
  1861. <blockquote>
  1862. <table
  1863. border="0"
  1864. cellspacing="0"
  1865. cellpadding="0"
  1866. class="Prototype"
  1867. >
  1868. <tr>
  1869. <td>static size_t unUsedSlots</td>
  1870. </tr>
  1871. </table>
  1872. </blockquote>
  1873. unUsedSlots is the number of Slot structures that are currently
  1874. available to represent new malloc buffers.
  1875. </div>
  1876. </div>
  1877. <!--END_ND_TOOLTIPS-->
  1878. <!--START_ND_TOOLTIPS-->
  1879. <div class="CToolTip" id="tt50">
  1880. <div class="CVariable">
  1881. <blockquote>
  1882. <table
  1883. border="0"
  1884. cellspacing="0"
  1885. cellpadding="0"
  1886. class="Prototype"
  1887. >
  1888. <tr>
  1889. <td>static const char version[]</td>
  1890. </tr>
  1891. </table>
  1892. </blockquote>
  1893. KDUMA version string
  1894. </div>
  1895. </div>
  1896. <!--END_ND_TOOLTIPS-->
  1897. </td>
  1898. </tr>
  1899. </table>
  1900. <div class="Footer">
  1901. <!--START_ND_FOOTER-->Generated by
  1902. <a href="http://www.naturaldocs.org">Natural Docs</a
  1903. ><!--END_ND_FOOTER-->
  1904. </div>
  1905. <script language="JavaScript">
  1906. <!--
  1907. if (browserType) {
  1908. if (browserVer) {
  1909. document.write("</div>");
  1910. }
  1911. document.write("</div>");
  1912. } // -->
  1913. </script>
  1914. </body>
  1915. </html>