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

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 閱讀(231) 評論(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>
            午夜精品偷拍| 亚洲日本免费| 亚洲女性裸体视频| 亚洲欧洲午夜| 欧美精品1区2区3区| 亚洲片在线观看| 欧美激情aⅴ一区二区三区| 久久久久91| 亚洲激情成人在线| 亚洲人成网站色ww在线| 在线电影院国产精品| 女人天堂亚洲aⅴ在线观看| 久久在线视频在线| 亚洲精品一区在线观看香蕉| 亚洲国产天堂久久国产91| 欧美精品偷拍| 欧美国产综合视频| 在线成人小视频| 久久久国产91| 久久一区二区三区国产精品 | 国产亚洲精品久久久久久| 久久免费视频在线观看| 久久综合久久综合这里只有精品 | 久久精品人人做人人综合 | 久久久久久久久蜜桃| 亚洲欧洲中文日韩久久av乱码| 久久精品国产清高在天天线 | 亚洲永久免费av| 久久se精品一区二区| 亚洲精品久久久久久久久久久久| 一区二区日韩欧美| 黄色工厂这里只有精品| 99在线精品免费视频九九视| 国产亚洲欧美一区在线观看| 亚洲欧美日韩在线一区| 亚洲精品一区二区三区婷婷月| 免费久久精品视频| 先锋影音网一区二区| 六月天综合网| 久久久久久久999精品视频| 欧美人与禽猛交乱配| 老司机亚洲精品| 国产乱肥老妇国产一区二| 欧美成ee人免费视频| 亚洲国产欧美不卡在线观看| 欧美国产专区| 久久中文字幕一区| 亚洲韩日在线| 欧美三区美女| 亚洲国产精品日韩| 中文精品99久久国产香蕉| 久久综合网色—综合色88| 亚洲夫妻自拍| 一区二区三区在线观看视频| 亚洲综合第一| 亚洲一区二区三区免费在线观看| 欧美大片在线看免费观看| 久久综合久色欧美综合狠狠| 亚洲国产日本| 国产精品免费看| 一区二区三区日韩精品| 久久免费视频观看| 一区二区三区日韩欧美精品| 免费观看成人www动漫视频| 亚洲精品社区| 一区二区三区 在线观看视| 国产精品永久在线| 欧美高清视频一区| 午夜免费在线观看精品视频| 亚洲激情在线观看| 久久精品国产清高在天天线| 日韩亚洲视频在线| 欧美美女bb生活片| 欧美在线视频免费| 一本色道久久综合亚洲精品不| 久久影视精品| 亚洲欧美一区二区精品久久久| 国产精品久久久久久妇女6080| 一区二区三区日韩在线观看| 欧美成人免费全部观看天天性色| 亚洲第一区在线| 欧美岛国在线观看| 欧美一区在线直播| 亚洲深夜福利网站| 欧美在线黄色| 一区二区三区自拍| 国产精品免费视频xxxx| 欧美激情第9页| 久久久精品性| 久久成人18免费观看| 亚洲自拍偷拍色片视频| 亚洲美女av黄| 最新国产成人av网站网址麻豆| 裸体女人亚洲精品一区| 欧美一二区视频| 亚洲专区国产精品| 一区二区欧美日韩视频| 亚洲国产中文字幕在线观看| 狠狠网亚洲精品| 国产主播精品| 欧美日韩久久精品| 欧美在线精品免播放器视频| a4yy欧美一区二区三区| 亚洲精品在线免费观看视频| 亚洲成色777777女色窝| 亚洲免费视频中文字幕| 亚洲无线视频| 亚洲一区二区三区三| 亚洲一区二区三区四区视频 | 一区二区久久久久| 日韩一级大片| 中日韩午夜理伦电影免费| 一本久久a久久免费精品不卡| 国产目拍亚洲精品99久久精品| 免费一级欧美片在线播放| 亚洲国产高清视频| 国产精品九九久久久久久久| 欧美日韩一区二区三区在线看 | 尤物yw午夜国产精品视频| 韩日精品在线| 亚洲二区精品| 亚洲精品在线免费观看视频| 99pao成人国产永久免费视频| 99精品免费视频| 亚洲一区欧美| 久久精品日韩一区二区三区| 久久久久久久久岛国免费| 另类综合日韩欧美亚洲| 欧美激情网友自拍| 99国产欧美久久久精品| 午夜精品久久久久久99热软件| 欧美一区午夜精品| 一区二区三区 在线观看视频| 一本大道久久精品懂色aⅴ| 亚洲一区二区三区三| 99re热精品| 最新国产乱人伦偷精品免费网站| 亚洲精品一区二区网址| 亚洲欧美久久久| 久久资源av| 欧美午夜一区二区| 欧美人与禽性xxxxx杂性| 国产精品久久久久久亚洲毛片| 国产午夜精品久久久久久久| 国产精品久久久久久久一区探花| 国产一区免费视频| aa日韩免费精品视频一| 久久国产精品一区二区三区四区| 欧美jizzhd精品欧美巨大免费| 亚洲精品午夜| 久久九九免费| 国产精品av久久久久久麻豆网| 激情视频亚洲| 亚洲一区二区三区精品在线| 久久一区精品| 一本色道久久综合狠狠躁篇怎么玩 | 麻豆亚洲精品| 一本大道av伊人久久综合| 久久精品道一区二区三区| 欧美精品久久久久久久久久| 国产精品专区第二| 亚洲七七久久综合桃花剧情介绍| 欧美一区二区三区在线视频 | 欧美国产日韩精品| 亚洲男人的天堂在线aⅴ视频| 欧美成人tv| 黄页网站一区| 欧美一区二区在线视频| 亚洲精品乱码久久久久久久久 | 久久久久久伊人| 国产精品视频久久一区| 国产婷婷色综合av蜜臀av| 日韩亚洲欧美综合| 欧美大片免费观看| 性做久久久久久免费观看欧美| 欧美日韩亚洲一区二区三区在线| 精品粉嫩aⅴ一区二区三区四区| 亚洲欧洲av一区二区| 亚洲另类一区二区| 免费在线亚洲| 亚洲国产精品久久久久秋霞蜜臀 | 亚洲欧美另类国产| 亚洲欧洲日韩女同| 欧美3dxxxxhd| 亚洲国产精品一区二区第一页 | 欧美ed2k| 久久久久欧美精品| 精品91久久久久| 久久一区二区精品| 欧美在线一区二区| 国产一区二区电影在线观看| 亚洲欧美综合网| 亚洲婷婷综合久久一本伊一区| 欧美一区三区三区高中清蜜桃| 国产精品免费在线| 亚洲自拍三区| 亚洲一区三区电影在线观看| 国产精品国产福利国产秒拍| 亚洲综合社区| 亚洲欧美日韩国产综合精品二区|