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

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

?? heaptest.c

?? eCos操作系統源碼
?? C
字號:
//=================================================================////        heaptest.cxx////        Test all the memory used by heaps to check it's all valid////=================================================================//####ECOSGPLCOPYRIGHTBEGIN####// -------------------------------------------// This file is part of eCos, the Embedded Configurable Operating System.// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.//// eCos is free software; you can redistribute it and/or modify it under// the terms of the GNU General Public License as published by the Free// Software Foundation; either version 2 or (at your option) any later version.//// eCos is distributed in the hope that it will be useful, but WITHOUT ANY// WARRANTY; without even the implied warranty of MERCHANTABILITY or// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License// for more details.//// You should have received a copy of the GNU General Public License along// with eCos; if not, write to the Free Software Foundation, Inc.,// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.//// As a special exception, if other files instantiate templates or use macros// or inline functions from this file, or you compile this file and link it// with other works to produce a work based on this file, this file does not// by itself cause the resulting work to be covered by the GNU General Public// License. However the source code for this file must still be made available// in accordance with section (3) of the GNU General Public License.//// This exception does not invalidate any other reasons why a work based on// this file might be covered by the GNU General Public License.//// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.// at http://sources.redhat.com/ecos/ecos-license/// -------------------------------------------//####ECOSGPLCOPYRIGHTEND####//=================================================================//#####DESCRIPTIONBEGIN####//// Author(s):     jlarmour// Contributors:  // Date:          2001-07-17// Description:   Tests all memory allocated for use by heaps.//////####DESCRIPTIONEND####// INCLUDES#include <pkgconf/system.h>#include <pkgconf/hal.h>#include <pkgconf/memalloc.h> // config header#ifdef CYGPKG_ISOINFRA# include <pkgconf/isoinfra.h># include <stdlib.h>#endif#include <cyg/infra/testcase.h>#if !defined(CYGPKG_ISOINFRA)# define NA_MSG "Requires isoinfra package"#elif !CYGINT_ISO_MALLOC# define NA_MSG "Requires malloc"#elif !CYGINT_ISO_MALLINFO# define NA_MSG "Requires mallinfo"#endif#ifdef NA_MSGexternC voidcyg_start(void){    CYG_TEST_INIT();    CYG_TEST_NA( NA_MSG );    CYG_TEST_FINISH("Done");}#else#include <cyg/infra/diag.h>#define ERRORTHRESHOLD 10#define ITERS (cyg_test_is_simulator ? 1 : 10)#define INTALIGNED(_x_) (!((unsigned long)(_x_) & (sizeof(int)-1)))inttest_pat(unsigned char *buf, int size,         unsigned int pat, cyg_bool addrpat,         const char *testname){    unsigned char *bufptr=buf;    register unsigned int *ibufptr;    unsigned char *endptr=buf+size;    register unsigned int *endptra; // int aligned    int errors=0;    unsigned char bpat = pat & 0xFF;    endptra = (int *)((unsigned long)endptr & ~(sizeof(int)-1));        // Set to the pattern    while (!INTALIGNED(bufptr)) {        if (addrpat)            bpat = ((int)bufptr)&0xFF;        *bufptr++ = bpat;    }    ibufptr = (unsigned int *)bufptr;        while ( ibufptr < endptra ) {        if (addrpat)            pat = (unsigned int)ibufptr;        *ibufptr++ = pat;    }    bufptr = (unsigned char *)ibufptr;    while ( bufptr < endptr ) {        if (addrpat)            bpat = ((int)bufptr)&0xFF;        *bufptr++ = bpat;    }    // Now compare to the pattern    bufptr = buf;    while ( !INTALIGNED(bufptr) ) {        if (addrpat)            bpat = ((int)bufptr)&0xFF;        if ( *bufptr != bpat ) {            diag_printf( "FAIL:<Memory at 0x%08x: expected 0x%02x, read 0x%02x>\n",                          bufptr, (int)bpat, (int)*bufptr );            if ( errors++ == ERRORTHRESHOLD )                CYG_TEST_FAIL_FINISH( testname );        }        bufptr++;    }    ibufptr = (unsigned int *)bufptr;        while ( ibufptr < endptra ) {        if (addrpat)            pat = (unsigned int)ibufptr;        if ( *ibufptr != pat ) {            diag_printf( "FAIL:<Memory at 0x%08x: expected 0x%08x, read 0x%08x>\n",                          ibufptr, pat, *ibufptr );            if ( errors++ == ERRORTHRESHOLD )                CYG_TEST_FAIL_FINISH( testname );        }        ibufptr++;    }    bufptr = (unsigned char *)ibufptr;    while ( bufptr < endptr ) {        if (addrpat)            bpat = ((int)bufptr)&0xFF;        if ( *bufptr != bpat ) {            diag_printf( "FAIL:<Memory at 0x%08x: expected 0x%02x, read 0x%02x>\n",                          bufptr, (int)bpat, (int)*bufptr );            if ( errors++ == ERRORTHRESHOLD )                CYG_TEST_FAIL_FINISH( testname );        }        bufptr++;    }    if (errors)        CYG_TEST_FAIL( testname );    else        CYG_TEST_PASS( testname );    return errors;} // test_pat()externC voidcyg_start(void){    unsigned int allonesint=0, checkerboardint1=0, checkerboardint2=0;    int i;    int errors=0;    #ifdef CYGSEM_HAL_STOP_CONSTRUCTORS_ON_FLAG    cyg_hal_invoke_constructors();#endif    CYG_TEST_INIT();    CYG_TEST_INFO("Starting heaptest - testing all memory usable as heap");    CYG_TEST_INFO("Any failures reported may indicate failing RAM hardware,");    CYG_TEST_INFO("or an invalid memory map");    for (i=0; i<sizeof(int); i++) {        allonesint = allonesint << 8;        allonesint |= 0xFF;        checkerboardint1 = checkerboardint1 << 8;        checkerboardint1 |= 0xAA;        checkerboardint2 = checkerboardint2 << 8;        checkerboardint2 |= 0x55;    }    for (;;) {        struct mallinfo info;        char *buf;                info = mallinfo();        if ( info.maxfree <= 0 )            break;        buf = malloc(info.maxfree);        if (!buf) {            diag_printf("Couldn't malloc %d bytes claimed as available",                        info.maxfree);            CYG_TEST_FAIL_FINISH("heaptest");        }        diag_printf( "INFO:<Testing memory at 0x%08x of size %d for %d iterations>\n",                     buf, info.maxfree, ITERS );        for (i=0; i<ITERS; i++) {            errors += test_pat( buf, info.maxfree, 0, 0, "all zeroes" );            errors += test_pat( buf, info.maxfree, allonesint, 0,                                "all ones" );            errors += test_pat( buf, info.maxfree, checkerboardint1, 0,                                "checkerboard 1" );            errors += test_pat( buf, info.maxfree, checkerboardint2, 0,                                "checkerboard 2" );            errors += test_pat( buf, info.maxfree, 0, 1,                                "memory addr" );        }        // deliberately don't free so we get the next space    }    if (errors)        CYG_TEST_FAIL_FINISH( "heaptest errors found" );    else        CYG_TEST_PASS_FINISH( "heaptest OK" );} // cyg_start()#endif // !NA_MSG// EOF heaptest.cxx

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99久久久精品| 欧美日韩国产美| 亚洲精品日韩一| 久久国产精品99久久人人澡| 欧美三区在线观看| 亚洲一区二区综合| 欧洲精品在线观看| 成+人+亚洲+综合天堂| 大美女一区二区三区| 国产清纯白嫩初高生在线观看91 | 欧美va亚洲va国产综合| 婷婷久久综合九色综合绿巨人 | 91免费精品国自产拍在线不卡| 国产精品传媒视频| 99久久精品国产毛片| 中文字幕视频一区二区三区久| 99久久精品国产导航| 亚洲美女淫视频| 欧美视频一区二区三区| 视频在线观看一区| 欧美一区二区三区性视频| 美腿丝袜亚洲一区| 精品国产一区二区三区忘忧草| 国产精品一区不卡| 国产精品天天看| 97精品电影院| 亚洲综合色区另类av| 91.xcao| 蜜臀av一区二区在线免费观看| 欧美xxxxx裸体时装秀| 国产白丝网站精品污在线入口| 中文字幕中文字幕一区| 色欧美片视频在线观看 | 国产精品福利av | 波多野结衣中文字幕一区二区三区| 国产精品美女一区二区三区| 91色porny在线视频| 亚洲一区二区三区四区在线观看| 欧美一级久久久| 高清视频一区二区| 国产精品私人影院| 欧美色图片你懂的| 精彩视频一区二区| 国产精品国产精品国产专区不蜜 | 亚洲欧洲日产国码二区| 91国产丝袜在线播放| 蜜臀99久久精品久久久久久软件| 久久精品夜夜夜夜久久| 99久久久久久99| 视频一区二区三区入口| 久久久www免费人成精品| 日本道在线观看一区二区| 日韩电影在线一区二区三区| 国产欧美一区二区精品久导航| 99久久99精品久久久久久 | 亚洲精品自拍动漫在线| 91精品国产91久久综合桃花| 国产精品综合二区| 亚洲精品写真福利| 日韩三级电影网址| 不卡电影一区二区三区| 日本不卡视频在线| 一区在线观看视频| 欧美精选一区二区| 国产成人超碰人人澡人人澡| 一区二区三区高清| 精品久久久久久久人人人人传媒| av日韩在线网站| 蜜臀av性久久久久av蜜臀妖精 | 久久女同互慰一区二区三区| 欧美性猛交xxxxxx富婆| 国产麻豆精品在线| 亚洲妇熟xx妇色黄| 久久久噜噜噜久久中文字幕色伊伊| 色婷婷国产精品| 国产精品自拍毛片| 视频一区在线播放| 国产精品久久久久久久岛一牛影视| 91精品国产91久久久久久一区二区 | 香蕉久久一区二区不卡无毒影院| 久久久久99精品国产片| 欧美日韩国产首页| 99精品欧美一区二区三区综合在线| 日本在线不卡视频| 亚洲另类色综合网站| 久久婷婷国产综合国色天香 | 欧美少妇xxx| 成人性生交大片免费| 美女网站在线免费欧美精品| 国产高清精品网站| 国产精品久久久久久久久晋中| 91精品国产色综合久久ai换脸 | 国产精品18久久久久久久久| 午夜精品在线视频一区| 中文字幕免费一区| 日韩一区二区三| 欧美性感一类影片在线播放| 懂色av中文一区二区三区| 蜜臀久久久久久久| 亚洲制服丝袜在线| 中文字幕在线观看一区| 欧美精品一区二区久久婷婷| 欧美高清性hdvideosex| 91啪在线观看| 懂色av中文一区二区三区 | 三级久久三级久久| 亚洲免费三区一区二区| 久久久久久麻豆| 精品久久人人做人人爰| 欧美丰满少妇xxxbbb| 在线精品视频小说1| 99精品视频一区| www.在线成人| 国产成人在线色| 国模娜娜一区二区三区| 麻豆视频观看网址久久| 日本在线不卡一区| 视频一区在线播放| 五月婷婷综合网| 午夜影院久久久| 亚洲伊人色欲综合网| 一区二区三区不卡视频在线观看| 中文字幕中文字幕一区二区| 亚洲国产精品黑人久久久| 亚洲精品一区在线观看| 日韩你懂的电影在线观看| 欧美一级理论片| 日韩一区二区三| 日韩一区二区在线观看| 91精品国产免费| 日韩欧美在线123| 日韩欧美一级二级三级久久久| 91精品国产欧美日韩| 欧美一卡二卡三卡| 欧美大片免费久久精品三p | 在线成人免费观看| 欧美理论电影在线| 欧美精品99久久久**| 欧美一区二区三区四区在线观看 | 日韩欧美久久久| 精品国产乱码久久久久久免费 | 1000精品久久久久久久久| 国产精品免费aⅴ片在线观看| 国产精品家庭影院| 亚洲欧美一区二区久久| 亚洲综合一区二区三区| 亚洲一区二区三区四区在线免费观看| 亚洲国产精品麻豆| 日韩国产精品久久久久久亚洲| 蜜桃av噜噜一区| 国产精品一品二品| 成人18视频日本| 色一区在线观看| 在线观看91精品国产麻豆| 欧美va亚洲va在线观看蝴蝶网| 久久久国产精华| 亚洲视频一二区| 亚洲国产日日夜夜| 免费高清不卡av| 福利视频网站一区二区三区| 91一区二区在线| 欧美日韩亚洲高清一区二区| 精品国产3级a| 1区2区3区国产精品| 香蕉加勒比综合久久| 国产在线视频一区二区三区| 成人免费av在线| 欧美日韩国产综合久久 | 日韩美女一区二区三区四区| 国产视频一区在线播放| 亚洲欧洲99久久| 日韩高清在线观看| 国产精品综合网| 日本高清无吗v一区| 精品久久人人做人人爽| 亚洲视频 欧洲视频| 日日噜噜夜夜狠狠视频欧美人| 国产福利91精品一区| 在线一区二区三区四区五区| 日韩三级伦理片妻子的秘密按摩| 欧美国产禁国产网站cc| 亚洲高清免费视频| 国产精品乡下勾搭老头1| 欧美性一二三区| 久久久国产精品不卡| 亚洲国产视频一区| 国产乱人伦偷精品视频免下载| 日本精品裸体写真集在线观看| 精品捆绑美女sm三区| 一区二区三区四区乱视频| 久久99久久久欧美国产| 91久久香蕉国产日韩欧美9色| 欧美电影精品一区二区| 一区二区三区四区亚洲| 国产九色sp调教91| 欧美日韩国产一区| 国产精品麻豆一区二区| 美国毛片一区二区| 91国偷自产一区二区三区观看| 久久精品视频一区二区|