久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2157|回復: 0
收起左側

Windows 3.0的內存空間分配--有點老,但有用

[復制鏈接]
ID:94349 發表于 2015-11-2 14:51 | 顯示全部樓層 |閱讀模式
vmm.h
/*
*  Address space (arena) boundaries
*/
#define MAXSYSTEMLADDR        ((ULONG) 0xffbfffff)    /* 4 gig - 4meg */
#define MINSYSTEMLADDR        ((ULONG) 0xc0000000)    /* 3 gig */
#define MAXSHAREDLADDR        ((ULONG) 0xbfffffff)
#define MINSHAREDLADDR        ((ULONG) 0x80000000)    /* 2   gig */
#define MAXPRIVATELADDR     ((ULONG) 0x7fffffff)
#define MINPRIVATELADDR     ((ULONG) 0x00400000)    /* 4 meg */
#define MAXDOSLADDR    ((ULONG) 0x003fffff)
#define MINDOSLADDR    ((ULONG) 0x00000000)

#define MAXSYSTEMPAGE        (MAXSYSTEMLADDR >> PAGESHIFT)
#define MINSYSTEMPAGE        (MINSYSTEMLADDR >> PAGESHIFT)
#define MAXSHAREDPAGE        (MAXSHAREDLADDR >> PAGESHIFT)
#define MINSHAREDPAGE        (MINSHAREDLADDR >> PAGESHIFT)
#define MAXPRIVATEPAGE        (MAXPRIVATELADDR >> PAGESHIFT)
#define MINPRIVATEPAGE        (MINPRIVATELADDR >> PAGESHIFT)
#define MAXDOSPAGE    (MAXDOSLADDR >> PAGESHIFT)
#define MINDOSPAGE    (MINDOSLADDR >> PAGESHIFT)


vmm.inc
/*
*  Address space (arena) boundaries
*/


PAGESHIFT    EQU    12
PAGESIZE    EQU    (1 SHL PAGESHIFT)
PAGEMASK    EQU    (PAGESIZE-1)
MAXSYSTEMLADDR    EQU    (0ffbfffffH)
MINSYSTEMLADDR    EQU    (0c0000000H)
MAXSHAREDLADDR    EQU    (0bfffffffH)
MINSHAREDLADDR    EQU    (80000000H)
MAXPRIVATELADDR    EQU    (7fffffffH)
MINPRIVATELADDR    EQU    (00400000H)
MAXDOSLADDR    EQU    (003fffffH)
MINDOSLADDR    EQU    (00000000H)
MAXSYSTEMPAGE    EQU    (MAXSYSTEMLADDR SHR PAGESHIFT)
MINSYSTEMPAGE    EQU    (MINSYSTEMLADDR SHR PAGESHIFT)
MAXSHAREDPAGE    EQU    (MAXSHAREDLADDR SHR PAGESHIFT)
MINSHAREDPAGE    EQU    (MINSHAREDLADDR SHR PAGESHIFT)
MAXPRIVATEPAGE    EQU    (MAXPRIVATELADDR SHR PAGESHIFT)
MINPRIVATEPAGE    EQU    (MINPRIVATELADDR SHR PAGESHIFT)
MAXDOSPAGE    EQU    (MAXDOSLADDR SHR PAGESHIFT)
MINDOSPAGE    EQU    (MINDOSLADDR SHR PAGESHIFT)



win386.exe 部分代碼(實模式)

083C:00001AE8 MOV DWORD PRT [0040],80000000H      ;設置win386常駐區的基址
083C:00001AF1 MOV WORD PTR [0044],0280H        ;設置win386常駐區的頁面數
083C:00001AF7 MOV DWORD PTR [0046],80280000H    ;設置win386初始化區的基址
083C:00001B00 MOV WORD PTR [004A],0180H        ;設置win386初始化區的頁面數   



083C:0000271C PUSH SI                ;建立一級頁目錄表
                        ;入口參數:EAX--控制V86內存的二級頁表的物理地址
                              EBX--控制WIN386內存的二級頁表的物理地址
                              ES:DI--一級頁表地址
....
083C:0000272F MOV ECX,[0040]            ;WIN386常駐區的基址
083C:00002734 SHR ECX,16H            ;對應的一級索引,只有高10位有效,所以右移22位=16H




083C:00001D10 MOV ECX,[085C]            ;分配的頁面對應的虛擬地址
083C:00001D15 SUB ECX,80000000            ;win386區的開始地址是80000000
083C:00001D1C LES DI,[087C]            ;ES:DI指向控制win386區的二級頁表



回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美精品一区在线观看 | 国产精品久久免费 | 国产中文字幕在线播放 | 免费观看成人 | 一区在线视频 | 色吧综合 | 久久久www成人免费精品 | 在线看h片| 亚洲激情欧美 | 可以看的毛片 | 欧美天天干| 日日夜夜综合网 | 亚洲天天操 | 国产吃瓜黑料一区二区 | 黄色三级视频网站 | 欧美日韩一二三区 | 成 人 黄 色 片 在线播放 | 国产视频一区二 | 国产精品久久久久久久 | 日韩资源在线 | 国产又粗又猛视频免费 | 欧美大片91 | 久久久久久久久久久久久久久久久 | 久久在线视频 | 欧美视频一区二区 | 成人国产精品一区二区 | 国产伦精品一区二区三区照片 | 日韩av成人在线 | 四虎影院免费观看 | 亚洲国产精品一区二区三区 | 二区三区视频 | 日韩欧美自拍 | 国产精品久久一区二区三区 | 国产高清在线观看 | 成人性色生活片 | 亚洲精品在线观看视频 | 97av在线视频 | www.狠狠操.com | 天天操天天干天天爽 | 午夜激情小视频 | 国产精品一区二区免费 |