meminfo.tex 1.5 KB

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