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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? syslib.c

?? 網(wǎng)卡驅(qū)動(dòng)修改版
?? C
?? 第 1 頁(yè) / 共 5 頁(yè)
字號(hào):
    /* Subtract the number of used pages from the total number of pages     * possible in the address space.  The resulting value is the total     * number of pages that could possibly populate the remaining address     * space above <pPage>.     */    const UINT32 pageNoUsed  = ((UINT32) pPage / pageSize);    const UINT32 pageNoTotal = (PHYS_MEM_MAX / pageSize) - pageNoUsed;    UINT32       delta       = HALF (pageNoTotal);    int temp[4];    /* find out the actual size of the memory (up to PHYS_MEM_MAX) */    for (pPage += (pageSize * delta); delta != 0; delta >>= 1)        {        WRITE_MEMORY_TEST_PATTERN ((int *) pPage, &temp[0]);        if (*((int *) pPage) != TEST_PATTERN_A)            {            /* The test pattern was not written, so assume that <pPage> is the             * base address of a page beyond available memory.  Test the             * next lowest page.  If the test pattern is writable there, assume             * that <pPage> is the address of the first byte beyond the last             * addressable page.             */            UINT8 * pPrevPage = (UINT8 *)((UINT32) pPage - pageSize);            WRITE_MEMORY_TEST_PATTERN ((int *) pPrevPage, &temp[0]);            if (*((int *) pPrevPage) == TEST_PATTERN_A)                {                RESTORE_MEMORY_TEST_ADDRS ((int *) pPrevPage, &temp[0]);                memTopPhys = pPage;                found      = TRUE;                break;                }            pPage -= (pageSize * HALF (delta));            }        else            {            /* The test pattern was written, so assume that <pPage> is the base             * address of a page in available memory.  Test the next highest             * page.  If the test pattern is not writable there, assume that             * <pNextPage> is the address of the first byte beyond that last             * addressable page.             */            UINT8 * pNextPage = (UINT8 *)((UINT32) pPage + pageSize);            RESTORE_MEMORY_TEST_ADDRS ((int *) pPage, &temp[0]);            WRITE_MEMORY_TEST_PATTERN ((int *) pNextPage, &temp[0]);            if (*((int *) pNextPage) != TEST_PATTERN_A)                {                memTopPhys = pNextPage;                found      = TRUE;                break;                }            RESTORE_MEMORY_TEST_ADDRS ((int *) pNextPage, &temp[0]);            pPage += (pageSize * HALF (delta));            }        }    }#endif	/* LOCAL_MEM_AUTOSIZE */    if (!found)        {        memTopPhys = (char *)(LOCAL_MEM_LOCAL_ADRS + LOCAL_MEM_SIZE);        }    /* copy the global descriptor table from RAM/ROM to RAM */    bcopy ((char *)sysGdt, (char *)pSysGdt, GDT_ENTRIES * sizeof(GDT));    *(short *)&gdtr[0]	= GDT_ENTRIES * sizeof(GDT) - 1;    *(int *)&gdtr[2]	= (int)pSysGdt;/*  * We assume that there are no memory mapped IO addresses * above the "memTopPhys" if INCLUDE_PCI is not defined. * Thus we set the "limit" to get the General Protection Fault * when the memory above the "memTopPhys" is accessed. */#if	!defined (INCLUDE_PCI) && \	!defined (INCLUDE_MMU_BASIC) && !defined (INCLUDE_MMU_FULL)    {    int   ix;    GDT * pGdt  = pSysGdt;    int   limit = (((UINT32) memTopPhys) >> 12) - 1;    for (ix = 1; ix < GDT_ENTRIES; ++ix)        {        ++pGdt;        pGdt->limit00 = limit & 0x0ffff;        pGdt->limit01 = ((limit & 0xf0000) >> 16) | (pGdt->limit01 & 0xf0);        }    }#endif	/* INCLUDE_PCI */    /* load the global descriptor table. set the MMU table */    sysLoadGdt (gdtr);#ifdef	FAST_REBOOT    /*      * save the brand new bootrom image that will be protected by MMU.     * The last 2 bytes of ROM_SIZE are for the checksum.      * - compression would minimize the DRAM usage.     * - when restore, jumping to the saved image would be faster.     */    memTopPhys -= ROM_SIZE;    bcopy ((char *)ROM_BASE_ADRS, memTopPhys, ROM_SIZE);    *(UINT16 *)(memTopPhys + ROM_SIZE - 2) =         checksum ((UINT16 *)memTopPhys, ROM_SIZE - 2);    memRom = memTopPhys;		/* remember it */#endif	/* FAST_REBOOT */    /* set the MMU descriptor table */    (UINT32)memTopPhys &= ~(VM_PAGE_SIZE - 1);	/* VM_PAGE_SIZE aligned */#if	(VM_PAGE_SIZE == PAGE_SIZE_4KB)    pMmu = &sysPhysMemDesc[4];		/* 5th entry: above 1.5MB upper memory */    pMmu->len = (UINT32) memTopPhys - (UINT32) pMmu->physicalAddr;#else	/* (VM_PAGE_SIZE == PAGE_SIZE_4KB) */    pMmu = &sysPhysMemDesc[2];		/* 3rd entry: above 8MB upper memory */    pMmu->len = (UINT32) memTopPhys - (UINT32) pMmu->physicalAddr;#endif	/* (VM_PAGE_SIZE == PAGE_SIZE_4KB) */    return (memTopPhys);    }/********************************************************************************* sysMemTop - get the address of the top of VxWorks memory** This routine returns a pointer to the first byte of memory not* controlled or used by VxWorks.** The user can reserve memory space by defining the macro USER_RESERVED_MEM* in config.h.  This routine returns the address of the reserved memory* area.  The value of USER_RESERVED_MEM is in bytes.** RETURNS: The address of the top of VxWorks memory.*/char * sysMemTop (void)    {    static char * memTop = NULL;    if (memTop == NULL)        {        memTop = sysPhysMemTop () - USER_RESERVED_MEM;        if ((UINT32)(&end) < 0x100000)		/* this is for bootrom */            memTop = (char *)EBDA_START;	/* preserve the MP table */        else if ((UINT32)(&end) < RAM_LOW_ADRS)	/* bootrom in upper mem */            memTop = (char *)(RAM_LOW_ADRS & 0xfff00000);        }    return (memTop);    }/********************************************************************************* sysToMonitor - transfer control to the ROM monitor** This routine transfers control to the ROM monitor.  It is usually called* only by reboot() -- which services ^X -- and by bus errors at interrupt* level.  However, in some circumstances, the user may wish to introduce a* new <startType> to enable special boot ROM facilities.** RETURNS: Does not return.*/STATUS sysToMonitor    (    int startType   /* passed to ROM to tell it how to boot */    )    {    FUNCPTR pEntry;    INT16 * pDst;        VM_ENABLE (FALSE);			/* disbale MMU */#if	(CPU == PENTIUM) || (CPU == PENTIUM2) || (CPU == PENTIUM3) || \	(CPU == PENTIUM4)    pentiumMsrInit ();			/* initialize MSRs */#endif	/* (CPU == PENTIUM) || (CPU == PENTIUM[234]) */    /* decide a destination RAM address and the entry point */    if ((UINT32)(&end) > RAM_LOW_ADRS)	{	pDst = (short *)RAM_HIGH_ADRS;	/* copy it in lower mem */	pEntry = (FUNCPTR)(RAM_HIGH_ADRS + ROM_WARM_HIGH);	}    else	{	pDst = (short *)RAM_LOW_ADRS;	/* copy it in upper mem */	pEntry = (FUNCPTR)(RAM_LOW_ADRS + ROM_WARM_LOW);	}#ifdef	FAST_REBOOT    /* restore the saved brand new bootrom image, then jump */    if ((memRom != NULL) &&        (*(UINT16 *)(memRom + ROM_SIZE - 2) ==          checksum ((UINT16 *)memRom, ROM_SIZE - 2)))        {        INT32 ix;        INT32 * dst = (INT32 *) ROM_TEXT_ADRS;        INT32 * src = (INT32 *) memRom;	pEntry = (FUNCPTR)(ROM_TEXT_ADRS + ROM_WARM_HIGH);        for (ix = 0; ix < (ROM_SIZE >> 2); ix++)            *dst++ = *src++;        goto sysToMonitorJump;        }#endif	/* FAST_REBOOT */    /* disable 16-bit memory access */#ifdef  INCLUDE_ELC    sysOutByte (IO_ADRS_ELC + 5, sysInByte (IO_ADRS_ELC + 5) & ~0x80);#endif  /* INCLUDE_ELC */#ifdef	INCLUDE_ROMCARD    {    INT32 ix;    INT32 iy;    INT32 iz;    char buf[ROM_SIGNATURE_SIZE];    short *pSrc;    /* copy EPROM to RAM and jump, if there is a VxWorks EPROM */    for (ix = 0; ix < NELEMENTS(sysRomBase); ix++)	{	bcopyBytes ((char *)sysRomBase[ix], buf, ROM_SIGNATURE_SIZE);	if (strncmp (sysRomSignature, buf, ROM_SIGNATURE_SIZE) == 0)	    {	    for (iy = 0; iy < 1024; iy++)		{		*sysRomBase[ix] = iy;	/* map the moveable window */		pSrc = (short *)((int)sysRomBase[ix] + 0x200);	        for (iz = 0; iz < 256; iz++)		    *pDst++ = *pSrc++;		}	    goto sysToMonitorJump;	/* jump to the entry point */	    }	}    }#endif	/* INCLUDE_ROMCARD */#ifdef  INCLUDE_IACSFL    {    unsigned int * romSize = (unsigned int *)0xffffffe0;    unsigned int * dest = (unsigned int *) pDst;    unsigned int * src = (unsigned int *) (0 - *romSize);    int i = 0;        for (i = 0; i < (*romSize >> 2); i++)        *dest++ = *src++;    goto sysToMonitorJump;    }#endif /* INCLUDE_IACSFL */#if	(defined(INCLUDE_FD) || defined(INCLUDE_ATA) || defined(INCLUDE_TFFS))    if ((sysWarmType == SYS_WARM_FD) || (sysWarmType == SYS_WARM_ATA) || 	(sysWarmType == SYS_WARM_TFFS))	{	u_char * pChar;        /* check to see if device exists, if so don't create it */        if (NULL != dosFsVolDescGet(BOOTROM_DIR, &pChar))            {            goto bootDevExists; /* avoid attempt to recreate device */            }        }#endif /* defined(INCLUDE_FD) || defined(INCLUDE_ATA) || defined(INCLUDE_TFFS) */#ifdef	INCLUDE_FD    if (sysWarmType == SYS_WARM_FD)	{	IMPORT int dosFsDrvNum;        fdDrv (INT_NUM_GET (FD_INT_LVL), FD_INT_LVL);	/* initialize floppy */	if (dosFsDrvNum == ERROR)    	    dosFsInit (NUM_DOSFS_FILES);	/* initialize DOS-FS */	if (usrFdConfig (sysWarmFdDrive, sysWarmFdType, BOOTROM_DIR) == ERROR)	    {	    printErr ("usrFdConfig failed.\n");	    return (ERROR);	    }	}#endif	/* INCLUDE_FD */#ifdef	INCLUDE_ATA    if (sysWarmType == SYS_WARM_ATA)	{	ATA_RESOURCE *pAtaResource  = &ataResources[sysWarmAtaCtrl];	IMPORT int dosFsDrvNum;        if (ataDrv (sysWarmAtaCtrl, pAtaResource->drives,	    pAtaResource->intVector, pAtaResource->intLevel,	    pAtaResource->configType, pAtaResource->semTimeout,	    pAtaResource->wdgTimeout) == ERROR)	/* initialize ATA/IDE disk */	    {	    printErr ("Could not initialize.\n");	    return (ERROR);	    }	if (dosFsDrvNum == ERROR)    	    dosFsInit (NUM_DOSFS_FILES);        /* initialize DOS-FS */	if (ERROR == usrAtaConfig (sysWarmAtaCtrl,                                    sysWarmAtaDrive, BOOTROM_DIR))	    {	    printErr ("usrAtaConfig failed.\n");	    return (ERROR);	    }	}#endif	/* INCLUDE_ATA */#ifdef	INCLUDE_TFFS    if (sysWarmType == SYS_WARM_TFFS)	{	IMPORT int dosFsDrvNum;        tffsDrv ();				/* initialize TFFS */	if (dosFsDrvNum == ERROR)    	    dosFsInit (NUM_DOSFS_FILES);	/* initialize DOS-FS */	if (usrTffsConfig (sysWarmTffsDrive, FALSE, BOOTROM_DIR) == ERROR)	    {	    printErr ("usrTffsConfig failed.\n");	    return (ERROR);	    }	}#endif	/* INCLUDE_TFFS */#if	(defined(INCLUDE_FD) || defined(INCLUDE_ATA) || defined(INCLUDE_TFFS))bootDevExists:  /* reboot device exists */    if ((sysWarmType == SYS_WARM_FD) || (sysWarmType == SYS_WARM_ATA) ||         (sysWarmType == SYS_WARM_TFFS))        {        int  fd;        BOOL hasAoutHdr = FALSE;        if ((fd = open (BOOTROM_BIN, O_RDONLY, 0644)) == ERROR)            {            printErr ("Error opening file \"%s\",

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
youjizz久久| 一本久道久久综合中文字幕| 午夜在线成人av| 婷婷六月综合网| 蜜桃91丨九色丨蝌蚪91桃色| 精品一区二区精品| av亚洲产国偷v产偷v自拍| 在线观看日韩电影| 欧美久久久一区| 久久久精品中文字幕麻豆发布| 国产日产欧美一区二区视频| 亚洲精品亚洲人成人网在线播放| 亚洲成人综合网站| 国产精品亚洲综合一区在线观看| 国产精品888| 在线视频国产一区| 久久亚洲春色中文字幕久久久| 亚洲欧洲99久久| 久久爱另类一区二区小说| 95精品视频在线| 国产欧美一区在线| 麻豆国产精品一区二区三区| 成人综合婷婷国产精品久久免费| 国产乱对白刺激视频不卡| 91麻豆6部合集magnet| 精品久久久久久久一区二区蜜臀| 中文字幕日韩一区| 国产麻豆日韩欧美久久| 欧美肥妇毛茸茸| 中文字幕一区二区三中文字幕| 蜜臀av一区二区| 欧美色视频一区| 亚洲精品福利视频网站| 国产经典欧美精品| 久久久久97国产精华液好用吗 | 亚洲视频一区二区在线| 国产老肥熟一区二区三区| 欧美美女喷水视频| 一区二区三区日韩精品视频| 91在线无精精品入口| 中文字幕在线不卡| caoporen国产精品视频| 亚洲欧美另类久久久精品2019| 久久精品国产澳门| 精品久久久久久久久久久院品网 | 99久久精品免费精品国产| 欧美韩国日本不卡| 99精品偷自拍| 亚洲妇女屁股眼交7| 精品视频123区在线观看| 亚洲成年人网站在线观看| 欧美性猛交xxxx乱大交退制版 | 成人av在线一区二区三区| 亚洲国产成人私人影院tom| 波多野结衣中文字幕一区二区三区| 亚洲综合激情网| 日本高清无吗v一区| 亚洲欧洲精品天堂一级 | 欧美一级片在线观看| 经典三级一区二区| 专区另类欧美日韩| 日韩亚洲欧美中文三级| 国产成人在线视频网址| 综合av第一页| 日韩亚洲欧美中文三级| www.亚洲精品| 美女在线观看视频一区二区| 中文av一区特黄| 欧美日韩精品一区二区三区| 色哟哟精品一区| 日韩av中文字幕一区二区 | 欧美日本精品一区二区三区| 国产一区二区在线观看免费| 日韩午夜在线观看视频| 国产精品亚洲人在线观看| 亚洲综合色丁香婷婷六月图片| 制服.丝袜.亚洲.中文.综合| 成人一区二区三区| 午夜精品一区二区三区三上悠亚| 国产视频在线观看一区二区三区 | 在线电影院国产精品| 成人午夜在线免费| 久久精品噜噜噜成人88aⅴ| 亚洲午夜久久久久久久久电影院 | 久久综合久久久久88| 欧美日韩国产a| 国产99久久久国产精品潘金| 欧美肥妇毛茸茸| 欧美人伦禁忌dvd放荡欲情| 日韩一区二区三区免费观看| 精品欧美黑人一区二区三区| 久久国内精品自在自线400部| 韩国在线一区二区| 成人午夜免费av| 在线观看91视频| 日韩精品专区在线| 国产精品国产三级国产aⅴ原创| 亚洲综合一区二区| 国产精品一区二区91| 91色|porny| 久久久精品tv| 国产精品久久久久久久久快鸭| 亚洲国产视频网站| 国产精华液一区二区三区| 国产精品久线在线观看| 色综合久久中文字幕综合网| 99精品视频在线播放观看| 日本电影欧美片| 精品少妇一区二区三区在线播放| 国产无遮挡一区二区三区毛片日本| 国产精品天干天干在观线| 亚洲国产成人精品视频| 国产成人av影院| 色哦色哦哦色天天综合| 欧美一区二区三区视频免费| 国产精品视频免费| 亚欧色一区w666天堂| 激情欧美一区二区| 色乱码一区二区三区88| 精品国产成人系列| 亚洲夂夂婷婷色拍ww47| 丁香婷婷综合激情五月色| 欧美美女网站色| 国产精品国产自产拍高清av王其| 激情综合亚洲精品| 久草精品在线观看| 欧美日韩国产色站一区二区三区| 久久久国产精品午夜一区ai换脸| 亚洲一级片在线观看| 国产一区在线精品| 欧美一区二区三区在线看| 亚洲视频一二三区| 不卡高清视频专区| 国产欧美精品区一区二区三区 | 亚洲午夜av在线| 99精品国产视频| 中文字幕一区二区日韩精品绯色| 国产高清不卡二三区| www亚洲一区| 国产一区二区三区av电影| 欧美mv和日韩mv国产网站| 男人的天堂久久精品| 欧美肥胖老妇做爰| 美女视频网站久久| 日韩女优av电影在线观看| 视频在线观看一区二区三区| 777欧美精品| 紧缚奴在线一区二区三区| 久久精品视频网| 成人夜色视频网站在线观看| 亚洲天堂免费看| 欧美高清视频不卡网| 激情综合网激情| 国产精品久久久久一区| 色欧美乱欧美15图片| 日本亚洲最大的色成网站www| 精品国产第一区二区三区观看体验 | 综合在线观看色| 欧美三级乱人伦电影| 日韩国产欧美一区二区三区| 日韩精品在线看片z| 国产真实乱对白精彩久久| 国产精品网站在线| 欧美视频一区二区三区在线观看| 亚洲高清免费一级二级三级| 精品国产一区二区在线观看| 一本到不卡精品视频在线观看| 日日夜夜精品视频天天综合网| 久久色在线视频| 在线观看欧美日本| 国产精品国产三级国产普通话三级 | 久久国产三级精品| **网站欧美大片在线观看| 欧美无砖砖区免费| 成人免费视频视频| 精品午夜久久福利影院| 亚洲一区在线播放| 日本一区免费视频| 日韩欧美黄色影院| 91黄色激情网站| 丰满亚洲少妇av| 国产激情91久久精品导航 | 99国产精品国产精品久久| 精品在线一区二区三区| 天天综合网天天综合色| 亚洲在线视频网站| 亚洲免费资源在线播放| 欧美激情一二三区| 中文字幕免费不卡| 国产日韩三级在线| 日本一区二区三区在线观看| 日韩欧美黄色影院| 日韩三区在线观看| 91 com成人网| 91精品欧美一区二区三区综合在| 91精品福利视频| 欧美乱熟臀69xxxxxx| 亚洲男人都懂的| 亚洲男人电影天堂| 日本不卡123|