скажите, а возможно определить кол-во оперативной памяти

Discussion in 'WASM.OS.DEVEL' started by fireman, Jan 8, 2009.

  1. Phantom_84

    Phantom_84 New Member

    Blog Posts:
    0
    Joined:
    Jun 6, 2007
    Messages:
    820
    Определить доступные участки базовой памяти можно анализируя структуры MCB (Memory Control Blocks), а в дополнительной памяти через DPMI-сервис (DOS PM Interface).
     
  2. Phantom_84

    Phantom_84 New Member

    Blog Posts:
    0
    Joined:
    Jun 6, 2007
    Messages:
    820
    Под DOS вообще программы обычно компилируются так, чтобы захватывать всю базовую память выше их местоположения. MCB для твоей программы вроде бы находится в параграфе (16-ти байтах) перед PSP программы. Уверенно не говорю, потому что под DOS уже очень давно не программирую.
     
  3. cppasm

    cppasm New Member

    Blog Posts:
    0
    Joined:
    Jul 18, 2006
    Messages:
    923
    Через int 15h надо карту памяти получать. DPMI хоста может и не быть.
    А если он всё-же есть - он хукает int 15h и правит результаты в соответствии с занятой им памятью.
     
  4. fireman

    fireman New Member

    Blog Posts:
    0
    Joined:
    Sep 16, 2008
    Messages:
    39
    >>cppasm
    Т.е. исправляет данные от int 15h E820? Уверен?