meminfo.pp 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. uses
  2. go32;
  3. var
  4. meminfo : tmeminfo;
  5. begin
  6. get_meminfo(meminfo);
  7. if (int31error <> 0) then begin
  8. Writeln('Error getting DPMI memory information... Halting');
  9. Writeln('DPMI error number : ', int31error);
  10. end else begin
  11. with meminfo do begin
  12. Writeln('Largest available free block : ',
  13. available_memory div 1024, ' kbytes');
  14. if (available_pages <> -1) then
  15. Writeln('Maximum available unlocked pages : ',
  16. available_pages);
  17. if (available_lockable_pages <> -1) then
  18. Writeln('Maximum lockable available pages : ',
  19. available_lockable_pages);
  20. if (linear_space <> -1) then
  21. Writeln('Linear address space size : ',
  22. linear_space*get_page_size div 1024, ' kbytes');
  23. if (unlocked_pages <> -1) then
  24. Writeln('Total number of unlocked pages : ',
  25. unlocked_pages);
  26. if (available_physical_pages <> -1) then
  27. Writeln('Total number of free pages : ',
  28. available_physical_pages);
  29. if (total_physical_pages <> -1) then
  30. Writeln('Total number of physical pages : ',
  31. total_physical_pages);
  32. if (free_linear_space <> -1) then
  33. Writeln('Free linear address space : ',
  34. free_linear_space*get_page_size div 1024,
  35. ' kbytes');
  36. if (max_pages_in_paging_file <> -1) then
  37. Writeln('Maximum size of paging file : ',
  38. max_pages_in_paging_file*get_page_size div 1024,
  39. ' kbytes');
  40. end;
  41. end;
  42. end.