Category Archives: Deskriptory virtuálních adres

Deskriptory virtuálních adres 4: Reálně se vyskytující deskriptory a závěr

V posledním dílu malého seriálu o deskriptorech virtuálních adres si ukážeme, jakými deskriptory operační systém popisuje paměť alokovanou či rezervovanou pro různé účely, jako je mapování souboru, mapování fyzické paměti pomocí rozšíření AWE či alokace privátních stránek provedená klasickým způsobem. Další části tohoto článku se již deskriptorům virtuálních adres nevěnují. Popisují nástroje, které jsem při […]

Deskriptory virtuálních adres 3: do nitra deskriptoru

Z minulých dílů seriálu jste se dozvěděli, jak deskriptory virtuálních adres vypadají. Dnešní díl navazuje informacemi o významu některých položek struktur MMVAD_XXX. Velmi zajímavou částí struktur deskriptorů virtuálních adres tvoří pole příznaků. Definují je struktury MMVAD_FLAGS, MMVAD_FLAGS2 a MMVAD_FLAGS3. Krátké deskriptory, reprezentující obvykle privátní paměť procesu, obsahují pouze první a třetí skupinu. Přitom právě příznaky […]

Deskriptory virtuálních adres 2: pod povrchem adresového prosotru

Druhá část seriálu o interní struktuře a reprezentaci privátní části virtuálních adresových prostorů ve Windows. Dozvíte se v ní mimo jiné, co to vlastně ten deskriptor virtálních adres je. Než se pomocí pomyslného vrtáku probouráme pod povrch virtuálního adresového prostoru, dovolím si upozornit, že se dostáváme do málo známých vod jádra operačního systému, které se […]

Deskriptory virtuálních adres 1: virtuální adresový prostor

Každá běžící aplikace disponuje vlastním virtuálním adresovým prostorem. Do jeho horní části operační systém mapuje paměť jádra. Horní poloviny všech virtuálních adresových prostorů jsou téměř identické. Zbývající část (2-3 GB na architektuře IA32, několik TB na 64bitových platformách) může proces využívat k ukládání vlastních dat, mapování souborů a knihoven a dalším účelům, které vás jen […]