青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 297,  comments - 15,  trackbacks - 0
from waterloo university

/*
00002  * This file is shared between libc and the kernel, 
so don't put anything
00003 * in here that won't work in both contexts. 00004 */ 00005 00006 #ifdef _KERNEL 00007 #include <types.h> 00008 #include <lib.h> 00009 #else 00010 #include <string.h> 00011 #endif 00012 00013 /* 00014 * C standard function - copy a block of memory. 00015 */ 00016 00017 void * 00018 memcpy(void *dst, const void *src, size_t len) 00019 { 00020 size_t i; 00021 00022 /* 00023 * memcpy does not support overlapping buffers,
00024 * so always do it forwards.
00025 * (Don't change this without adjusting memmove.) 00026 * For speedy copying, optimize the common case
00027 * where both pointers and the length are word-aligned, 00028 * and copy word-at-a-time insteadof byte-at-a-time.
00029 *Otherwise, copy by bytes. 00030 * The alignment logic below should be portable. 00031 * We rely onthe compiler to be reasonably intelligent 00032 * about optimizing the divides and modulos out.
00033 * Fortunately, it is.*/ 00034 00035 if ((uintptr_t)dst % sizeof(long) == 0 && 00036 (uintptr_t)src % sizeof(long) == 0 && 00037 len % sizeof(long) == 0) { 00038 00039 long *d = dst; 00040 const long *s = src; 00041 00042 for (i=0; i<len/sizeof(long); i++) { 00043    d[i] = s[i]; 00044 } 00045 } 00046 else { 00047 char *d = dst; 00048 const char *s = src; 00049 00050 for (i=0; i<len; i++) { 00051 d[i] = s[i]; 00052 } 00053 } 00054 00055 return dst; 00056 }
/*
00014  * C standard function - copy a block of memory, 
00015 * handling overlapping * regions correctly. 00016 */ 00017 00018 void * 00019 memmove(void *dst, const void *src, size_t len) 00020 { 00021 size_t i; 00022 00023 /* 00024 * If the buffers don't overlap, it doesn't matter 00025 * what direction we copy in. If they do, it does,
00026 * so just assume they always do.We don't concern
00027 * ourselves with the possibility that the region
00028 * to copy might roll over across the top of memory,
00029 * because it's not going to happen. 00030 * If the destination is above the source, we have 00031 * to copy back to front to avoid overwriting the
00032 * data we want to copy. 00033 * 00034 * dest: dddddddd 00035 * src: ssssssss ^ 00036 * | ^ |___| 00037 * |___| 00038 * 00039 * If the destination is below the source, we have to 00040 * copy front to back. 00041 * 00042 * dest: dddddddd 00043 * src: ^ ssssssss 00044 * |___| ^ | 00045 * |___| 00046 */ 00047 00048 if ((uintptr_t)dst < (uintptr_t)src) { 00049 /* 00050 * As author/maintainer of libc, take advantage of the 00051 * fact that we know memcpy copies forwards. 00052 */ 00053    return memcpy(dst, src, len); 00054 } 00055 00056 /* 00057 * Copy by words in the common case. Look in 00058 * memcpy.c for more information. 00059 */ 00060 00061 if ((uintptr_t)dst % sizeof(long) == 0 && 00062 (uintptr_t)src % sizeof(long) == 0 && 00063 len % sizeof(long) == 0) { 00064 00065    long *d = dst; 00066 const long *s = src; 00067 00068 /* 00069 * The reason we copy index i-1 and test i>0 is that 00070 * i is unsigned - so testing i>=0 doesn't work. 00071 */ 00072 00073 for (i=len/sizeof(long); i>0; i--) { 00074    d[i-1] = s[i-1]; 00075 } 00076 } 00077 else { 00078 char *d = dst; 00079 const char *s = src; 00080 00081 for (i=len; i>0; i--) { 00082    d[i-1] = s[i-1]; 00083 } 00084 } 00085 00086 return dst; 00087}


	
posted on 2009-03-25 15:05 chatler 閱讀(226) 評論(0)  編輯 收藏 引用 所屬分類: C++_BASIS
<2009年3月>
22232425262728
1234567
891011121314
15161718192021
22232425262728
2930311234

常用鏈接

留言簿(10)

隨筆分類(307)

隨筆檔案(297)

algorithm

Books_Free_Online

C++

database

Linux

Linux shell

linux socket

misce

  • cloudward
  • 感覺這個博客還是不錯,雖然做的東西和我不大相關,覺得看看還是有好處的

network

OSS

  • Google Android
  • Android is a software stack for mobile devices that includes an operating system, middleware and key applications. This early look at the Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language.
  • os161 file list

overall

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            91久久精品国产91久久性色| 久久综合婷婷| 99视频在线观看一区三区| 欧美精品观看| 亚洲午夜久久久| 亚洲自拍偷拍福利| 狠狠入ady亚洲精品| 欧美国产一区二区三区激情无套| 久久亚洲精品欧美| av成人免费观看| 亚洲综合不卡| 亚洲国产中文字幕在线观看| 亚洲国产日韩一级| 国产毛片久久| 亚洲国产美国国产综合一区二区| 欧美理论大片| 久久精品青青大伊人av| 美日韩精品视频免费看| 一本大道久久a久久精品综合| 亚洲一区免费网站| 亚洲区一区二| 午夜国产精品视频| 99re8这里有精品热视频免费| 亚洲已满18点击进入久久| 加勒比av一区二区| 亚洲图片激情小说| 亚洲国产mv| 亚洲欧美在线x视频| 亚洲美女毛片| 欧美一区二区在线免费观看| 亚洲免费观看视频| 久久久久久一区| 亚洲午夜久久久久久久久电影网| 久久久国产亚洲精品| 一区二区三区毛片| 久久一区中文字幕| 欧美一区二区久久久| 欧美精品一区二区视频 | 欧美成人自拍| 久久久久久有精品国产| 欧美特黄视频| 亚洲激情视频在线播放| 影音先锋亚洲视频| 亚洲自拍16p| 亚洲一本视频| 欧美日韩成人精品| 亚洲国产精品久久91精品| 国产专区欧美精品| 翔田千里一区二区| 性欧美video另类hd性玩具| 欧美日韩免费高清一区色橹橹| 麻豆成人在线观看| 一区二区三区在线高清| 欧美亚洲综合另类| 久久激情视频免费观看| 国产精品久久二区| 中文av字幕一区| 亚洲无毛电影| 欧美日韩另类国产亚洲欧美一级| 亚洲成人资源网| 最新精品在线| 欧美二区在线| 亚洲欧洲在线一区| 妖精视频成人观看www| 欧美日本在线观看| 99re66热这里只有精品3直播| 99精品福利视频| 欧美日韩精品免费| 一区二区三区产品免费精品久久75| 日韩香蕉视频| 欧美亚州在线观看| 亚洲伊人观看| 久久青草久久| 亚洲精品一区二区三区不| 欧美激情欧美激情在线五月| 亚洲欧洲日夜超级视频| 亚洲一区二区三区精品视频| 国产精品成人国产乱一区 | 美日韩精品免费观看视频| 在线精品视频免费观看| 欧美韩日一区| 亚洲午夜成aⅴ人片| 久久精品国产99| 亚洲黑丝在线| 欧美天堂亚洲电影院在线观看| 亚洲调教视频在线观看| 久久午夜羞羞影院免费观看| 亚洲精品一区二区三区不| 国产精品成人播放| 久久男人资源视频| 妖精视频成人观看www| 久久久欧美精品sm网站| 99av国产精品欲麻豆| 国产日韩欧美在线一区| 噜噜噜躁狠狠躁狠狠精品视频| 一二三区精品福利视频| 久久人人九九| 中国成人亚色综合网站| 国产主播一区二区三区| 欧美日本不卡高清| 欧美在线免费观看| 亚洲美女性视频| 美乳少妇欧美精品| 亚洲欧美日韩成人| 亚洲区一区二区三区| 国产日韩一区二区| 欧美日韩精品免费观看视频完整| 午夜视频久久久久久| 亚洲精品欧美一区二区三区| 久久久免费观看视频| 亚洲免费综合| 99re热这里只有精品免费视频| 国产一区二区三区免费在线观看| 欧美日韩国产不卡在线看| 久久精品国产第一区二区三区| 一区二区日韩伦理片| 亚洲电影免费在线观看| 久久久综合免费视频| 亚洲欧美色婷婷| 99riav久久精品riav| 91久久精品国产91性色tv| 国产一区欧美| 国产午夜精品在线| 国产精品尤物| 国产精品视频自拍| 欧美性大战久久久久| 欧美日本免费| 欧美日韩另类字幕中文| 欧美激情精品久久久久| 美女图片一区二区| 久久综合久久综合久久| 久久精品国产亚洲一区二区| 午夜精品亚洲| 欧美在线播放高清精品| 亚洲欧美在线免费观看| 亚洲综合色激情五月| 亚洲午夜视频在线| 亚洲一区二区三区四区视频 | 久久精品夜色噜噜亚洲aⅴ| 性一交一乱一区二区洋洋av| 亚洲男女自偷自拍| 亚洲伊人一本大道中文字幕| 亚洲曰本av电影| 欧美电影免费观看高清| 欧美成人免费全部| 欧美日本一道本| 欧美性大战久久久久| 国产乱码精品1区2区3区| 国产毛片久久| 在线观看日韩| 亚洲精品一区二区网址 | 国产农村妇女毛片精品久久莱园子 | 欧美激情欧美激情在线五月| 欧美精品日韩| 国产精品v片在线观看不卡| 国产精品视频区| 激情成人av在线| 亚洲精品午夜精品| 亚洲午夜精品一区二区| 欧美一区二区三区在线看| 久久激情视频免费观看| 欧美国产日本在线| av成人老司机| 久久成人免费电影| 欧美黑人一区二区三区| 国产精品白丝av嫩草影院| 国产一区二区精品久久91| 亚洲国产精品美女| 在线亚洲免费| 久久久综合精品| 亚洲精品久久久蜜桃| 亚洲欧美电影院| 欧美mv日韩mv亚洲| 国产精品入口日韩视频大尺度| 红桃视频成人| 亚洲伊人伊色伊影伊综合网| 老司机午夜免费精品视频| 亚洲免费av片| 久久嫩草精品久久久精品一| 欧美视频一区在线观看| 精品二区视频| 亚洲欧美成人| 亚洲国产日韩欧美一区二区三区| 亚洲欧美久久久| 欧美伦理视频网站| 依依成人综合视频| 午夜一区二区三区在线观看| 欧美激情影音先锋| 久久精品72免费观看| 欧美视频不卡| 亚洲精品视频免费| 久久综合成人精品亚洲另类欧美| 99精品视频网| 欧美高清在线| 亚洲国产成人porn| 久久久精品网| 午夜视黄欧洲亚洲| 国产精品日韩精品| 亚洲一级在线| 日韩视频永久免费|