亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? pageidx.h

?? 小型的操作系統開發的原代碼
?? H
字號:
//***********************************************************************/
//    Author                    : Garry
//    Original Date             : Aug,16 2005
//    Module Name               : PAGEIDX.H
//    Module Funciton           : 
//                                This module countains page index object
//                                definition and page index manager's definition.
//    Last modified Author      :
//    Last modified Date        :
//    Last modified Content     :
//                                1.
//                                2.
//    Lines number              :
//***********************************************************************/

#ifndef __PAGEIDX_H__
#define __PAGEIDX_H__


//
//Page control flags for Intel IA32 CPU.
//
#define PTE_FLAG_PRESENT    0x001
#define PTE_FLAG_RW         0x002
#define PTE_FLAG_USER       0x004
#define PTE_FLAG_PWT        0x008
#define PTE_FLAG_PCD        0x010
#define PTE_FLAG_ACCESSED   0x020
#define PTE_FLAG_DIRTY      0x040
#define PTE_FLAG_PAT        0x080
#define PTE_FLAG_GLOBAL     0x100
#define PTE_FLAG_USER1      0x200
#define PTE_FLAG_USER2      0x400
#define PTE_FLAG_USER3      0x800

//
//Page directory entry's flags for Intel's CPU.
//
#define PDE_FLAG_PRESENT    0x001
#define PDE_FLAG_RW         0x002
#define PDE_FLAG_USER       0x004
#define PDE_FLAG_PWT        0x008
#define PDE_FLAG_PCD        0x010
#define PDE_FLAG_ACCESSED   0x020
#define PDE_FLAG_RESERVED   0x040
#define PDE_FLAG_PAGESIZE   0x080
#define PDE_FLAG_GLOBAL     0x100
#define PDE_FLAG_USER1      0x200
#define PDE_FLAG_USER2      0x400
#define PDE_FLAG_USER3      0x800

#define U32                 unsigned long
#define __PTE               U32                      //Page table entry for Intel's IA32.
#define __GPDE              U32
#define __MPDE              U32
#define __PDE               U32                      //Page directory entry for Intel's IA32.

#define NULL_PDE            0L
#define NULL_PTE            0L

#define EMPTY_PDE_ENTRY(pde)    (pde == NULL_PDE)    //To check if the page directory entry
                                                     //is NULL.
#define EMPTY_PTE_ENTRY(pte)    (pte == NULL_PTE)    //To check if the page table entry
                                                     //is NULL.

#define SET_PTE_FLAGS(pte,flags)     (pte)  |= flags
#define CLEAR_PTE_FLAGS(pte,flags)   (pte)  &= ~flags
#define SET_GPDE_FLAGS(gpde,flags)   (gpde) |= flags
#define CLEAR_GPDE_FLAGS(gpde,flags) (gpde) &= ~flags
#define SET_MPDE_FLAGS(mpde,flags)   (mpde) |= flags
#define CLEAR_MPDE_FLAGS(mpde,flags) (mpde) &= ~flags

#define DEFAULT_PTE_FLAGS        (PTE_FLAG_PRESENT | PTE_FLAG_RW)
#define DEFAULT_PDE_FLAGS        (PDE_FLAG_PRESENT | PDE_FLAG_RW)
#define PTE_FLAGS_FOR_NORMAL     DEFAULT_PTE_FLAGS
#define PTE_FLAGS_FOR_IOMAP      (DEFAULT_PTE_FLAGS | PTE_FLAG_PCD)

#define INIT_PTE(pte)            (pte  = NULL_PTE)   //Initialize a page table entry to NULL.
#define INIT_PTE_TO_DEFAULT(pte) (pte  = DEFAULT_PTE_FLAGS)
#define INIT_PTE_TO_NULL(pte)    (pte  = NULL_PTE)
#define INIT_PDE(pde)            (pde  = NULL_PDE)   //Initialize a page directory entry to NULL.
#define INIT_PDE_TO_DEFAULT(pde) (pde  = DEFAULT_PDE_FLAGS)
#define INIT_PDE_TO_NULL(pde)    (pde  = NULL_PDE)

#define PDE_ADDRESS_MASK     0xFFFFF000
#define PTE_ADDRESS_MASK     0xFFFFF000
#define PDE_FLAGS_MASK       0x00000FFF
#define PTE_FLAGS_MASK       0x00000FFF

#define PDE_INDEX_MASK      0xFFC00000  //Used to get the page directory index from a virtual
                                        //32 bits address.
#define PTE_INDEX_MASK      0x003FF000  //Used to get the page table index.

#define FORM_PDE_ENTRY(pde,pteaddr)    ((pde) = (pde) + ((pteaddr) & PDE_ADDRESS_MASK))
#define FORM_PTE_ENTRY(pte,pgaddr)     ((pte) = (pte) + ((pgaddr) & PTE_ADDRESS_MASK))
#define SET_PDE(addr,pde)              (*(__PDE*)addr = pde)
#define SET_PTE(addr,pte)              (*(__PTE*)addr = pte)

//
//The page directory start address of the current version.
//
#define PD_START                (0x00200000 - 0x00010000)

//
//First several page tables of os kernel.
//
#define PT_START                (0x00200000 - 0x00010000 + 1024*4)

#define PD_OFFSET_SHIFT    22    //To locate the page directory index,should shift these
                                 //bits to right.
#define PT_OFFSET_SHIFT    12    //To locate the page table index,should shift virtual address
                                 //12 bits to right.

#define PD_SIZE            1024  //How many page directory entries in one page directory,
                                 //for Intel CPU.
#define PT_SIZE            1024  //How many page table entries in one page table,for IA32.
#define PAGE_SIZE          4096  //One page memory's size,4K.

//
//The definition of page index object manager.
//This object is used to manage page index objects.Generally,different hardware platform
//implements different page mechanism,this object also be used to islote this difference.
//

BEGIN_DEFINE_OBJECT(__PAGE_INDEX_MANAGER)
    INHERIT_FROM_COMMON_OBJECT
	__PDE*                         lpPdAddress;    //Physical address of page directory.
	LPVOID                         (*GetPhysicalAddress)(__COMMON_OBJECT*,LPVOID);
	BOOL                           (*ReservePage)(__COMMON_OBJECT*,LPVOID,LPVOID,DWORD);
	BOOL                           (*SetPageFlags)(__COMMON_OBJECT*,LPVOID,LPVOID,DWORD);
	VOID                           (*ReleasePage)(__COMMON_OBJECT*,LPVOID);
END_DEFINE_OBJECT()

//
//Declare initialize routine for page index manager object.
//

BOOL PageInitialize(__COMMON_OBJECT*);

//
//Declare uninitialize routine for page index manager object.
//

VOID PageUninitialize(__COMMON_OBJECT*);

#endif  //PAGEIDX.H

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美成人精品1314www| 美女任你摸久久| 久久伊人蜜桃av一区二区| 欧美精品一卡二卡| 欧美男人的天堂一二区| 欧美视频一区二区三区四区 | 亚洲一区二区精品久久av| 亚洲乱码国产乱码精品精的特点| 国产欧美中文在线| 国产精品美女www爽爽爽| 亚洲天堂福利av| 亚洲一区二区综合| 日韩制服丝袜先锋影音| 久久99精品国产.久久久久| 国产一区二区免费视频| 国产成人精品一区二| 91视频国产资源| www.日韩av| 欧美色图天堂网| 日韩午夜激情电影| 欧美激情艳妇裸体舞| 亚洲色图视频免费播放| 天天操天天色综合| 精品一区二区三区影院在线午夜 | 激情综合五月婷婷| 成人动漫一区二区在线| 91小视频在线| 日韩视频在线一区二区| 国产精品色眯眯| 亚洲成人免费视频| 国产在线视频精品一区| 色网站国产精品| 日韩精品一区在线观看| 亚洲美女屁股眼交| 蜜桃视频一区二区| 色婷婷av一区二区三区大白胸| 欧美一卡二卡在线| 国产精品福利在线播放| 日本不卡一区二区三区高清视频| 国产在线不卡视频| 色偷偷一区二区三区| 久久久久久久久97黄色工厂| 亚洲欧美电影一区二区| 韩国一区二区视频| 欧美三级日韩三级国产三级| 国产亚洲视频系列| 日韩福利视频导航| 色综合天天综合网天天狠天天| 欧美电视剧免费全集观看| 亚洲精品视频在线观看网站| 国产很黄免费观看久久| 91精品国产欧美一区二区 | 91福利小视频| 国产日本欧洲亚洲| 精品一区二区在线看| 91九色最新地址| 国产精品对白交换视频| 激情欧美一区二区| 欧美欧美欧美欧美| 亚洲精品第一国产综合野| 国产+成+人+亚洲欧洲自线| 久久久久久久久一| 欧美aaaaa成人免费观看视频| 91亚洲永久精品| 欧美激情一区二区三区不卡 | 日本一区二区三区在线不卡| 免费在线观看不卡| 欧美日韩黄视频| 亚洲国产综合人成综合网站| 91在线免费视频观看| 国产精品免费视频观看| 成人听书哪个软件好| 国产亚洲精久久久久久| 国产福利一区二区三区在线视频| 精品福利二区三区| 国产一区二区三区免费在线观看| 欧美大片在线观看一区| 精品一区中文字幕| 久久精品一区二区三区不卡| 国产麻豆精品theporn| 国产欧美日产一区| 99国产一区二区三精品乱码| 亚洲日本韩国一区| 91国模大尺度私拍在线视频| 一区二区成人在线| 精品视频资源站| 久久精品国产99久久6| 精品国一区二区三区| 国内精品伊人久久久久影院对白| 精品理论电影在线观看| 成人性生交大片免费看视频在线 | 99re热这里只有精品视频| 亚洲人午夜精品天堂一二香蕉| 色老汉av一区二区三区| 日韩精品亚洲一区二区三区免费| 日韩一级片网站| 国产精品66部| 亚洲精品五月天| 日韩美女一区二区三区四区| 成人午夜视频网站| 亚洲电影在线免费观看| 2019国产精品| 在线精品视频一区二区| 韩日av一区二区| 亚洲一区电影777| 久久蜜桃一区二区| 欧美视频一区二区三区在线观看| 紧缚奴在线一区二区三区| 一区精品在线播放| 91精品国产综合久久精品| 国产suv精品一区二区883| 亚洲国产一区二区三区青草影视| 日韩视频免费观看高清完整版 | 欧美三级在线视频| 狠狠狠色丁香婷婷综合久久五月| 中文字幕在线观看不卡视频| 7777精品伊人久久久大香线蕉的 | 毛片不卡一区二区| 自拍偷拍亚洲欧美日韩| 精品国产乱码久久久久久老虎| 91香蕉视频在线| 精品伊人久久久久7777人| 亚洲成人动漫在线免费观看| 久久无码av三级| 欧美二区三区的天堂| 91麻豆自制传媒国产之光| 久久99精品国产麻豆不卡| 亚洲妇熟xx妇色黄| 亚洲日本丝袜连裤袜办公室| 久久久久久久综合日本| 日韩三区在线观看| 欧美日韩视频在线一区二区| av电影一区二区| 国产1区2区3区精品美女| 蜜桃av一区二区三区| 亚洲成在人线免费| 亚洲主播在线播放| 亚洲日本韩国一区| 中文字幕av免费专区久久| 久久一二三国产| 欧美变态口味重另类| 日韩限制级电影在线观看| 欧美三级乱人伦电影| 色屁屁一区二区| 色综合视频在线观看| 色域天天综合网| 色一情一乱一乱一91av| 91在线观看高清| 91免费在线播放| 99riav一区二区三区| 色婷婷综合五月| 一本大道久久a久久精品综合| 成人99免费视频| 色综合天天狠狠| 欧美视频在线观看一区二区| 91官网在线观看| 欧美高清你懂得| 欧美大白屁股肥臀xxxxxx| 日韩一区二区三区观看| 日韩欧美精品三级| 国产丝袜美腿一区二区三区| 欧美国产国产综合| 亚洲视频一区在线| 亚洲一区二区三区在线| 午夜成人在线视频| 麻豆91在线播放| 国产成人av福利| 色综合色综合色综合| 欧美日韩在线三区| 日韩一级片在线观看| 日本一区二区三区电影| 亚洲视频每日更新| 亚洲成av人片一区二区梦乃| 麻豆91在线播放| 99久久婷婷国产综合精品| 日本丶国产丶欧美色综合| 欧美日精品一区视频| 欧美一激情一区二区三区| 久久老女人爱爱| 一区二区三区在线观看国产| 日本不卡的三区四区五区| 国产乱人伦偷精品视频免下载| 成人av电影在线| 欧美三级一区二区| 中文字幕不卡的av| 久久国产精品99精品国产| 岛国精品在线观看| 欧美精品久久一区| 国产精品麻豆网站| 欧美aⅴ一区二区三区视频| 粗大黑人巨茎大战欧美成人| 在线观看91精品国产麻豆| 中文幕一区二区三区久久蜜桃| 亚洲国产精品久久久久婷婷884| 激情综合色综合久久综合| 色妞www精品视频| 久久综合色婷婷| 亚洲国产欧美日韩另类综合| 狠狠色狠狠色综合日日91app| 欧美调教femdomvk|