Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

52 lines
1.3 KiB

  1. BREAK <Memory arena structure>
  2. ;
  3. ; Revision History:
  4. ;
  5. ; M001 - added equates for UMB allocation
  6. ; M002 - added equate for LINK/UNLINK state of UMBs
  7. ; M026 - STRAT_MASK should be HF_MASK AND HO_MASK
  8. ;** Arena Header
  9. ;
  10. arena STRUC
  11. arena_signature DB ? ; 4D for valid item, 5A for last item
  12. arena_owner DW ? ; owner of arena item
  13. arena_size DW ? ; size in paragraphs of item
  14. arena_reserved DB 3 DUP(?) ; reserved
  15. arena_name DB 8 DUP(?) ; owner file name
  16. arena ENDS
  17. ;
  18. ; CAUTION: The routines in ALLOC.ASM rely on the fact that arena_signature
  19. ; and arena_owner_system are all equal to zero and are contained in DI. Change
  20. ; them and change ALLOC.ASM.
  21. ;
  22. ; I think I have all of these covered via .errnz - JGL
  23. arena_owner_system EQU 0 ; free block indication
  24. arena_signature_normal EQU 4Dh ; valid signature, not end of arena
  25. arena_signature_end EQU 5Ah ; valid signature, last block in arena
  26. FIRST_FIT EQU 00000000B
  27. BEST_FIT EQU 00000001B
  28. LAST_FIT EQU 00000010B
  29. LOW_FIRST EQU 00000000B ; M001
  30. HIGH_FIRST EQU 10000000B ; M001
  31. HIGH_ONLY EQU 01000000B ; M001
  32. LINKSTATE EQU 00000001B ; M002
  33. HF_MASK EQU NOT HIGH_FIRST ; M001
  34. HO_MASK EQU NOT HIGH_ONLY ; M001
  35. STRAT_MASK EQU HF_MASK AND HO_MASK ; M001;
  36. ; M026: used to mask of bits
  37. ; M026: 6 & 7 of AllocMethod
  38.