探寻复制和粘贴的神秘国度

简介:
探寻复制和粘贴的神秘国度
        复制、粘贴是每个人都会用到的操作,并且用起来也是轻车熟路,但你知道复制、粘贴都干了些什么吗?那就让我们一起来探寻一下复制和粘贴的神秘国度吧!
        一、什么是复制、粘贴
        从通俗意义上来说,复制是将某事物通过某种方式制作成相同的一份或多份的行为,而粘贴是将某事物通过粘性物质附着到另一种物事之上的行为。在Windows中,复制和粘贴虽然和通俗意义上的复制、粘贴有着某些相似之处,但也早已超越了这种通谷意义。
        在Windows中,复制是指将某一数据从源头copy一份到“剪贴板”中或者是将表示数据的路径存放到“剪贴板”中,而粘贴是指将“剪贴板”中的数据copy一份到目的地或者是将路径所指向的数据copy一份到目的地。
        通过上面的描述也可以看出,其实复制、与粘贴的本质都是copy,只是在实际操作时它们的“源”与“目标位置”不一样而已。
        小知识:
        数据:
在Windows中,数据分为两类,一类是不可以用路径表示的文本、图片等内容(如某一文档中的文本、图片、表格等);另一类是可以使用路径描述的内容。
        剪贴板:在Windows中,表示存在于内存中的某一存储区域,用来存放“复制”、“剪切”等操作的临时数据的地方。
        小提示:
        文中的copy同样指“复制”的意思,为了区别于要解释的“复制”概念,这里以英文区别一下。在这里可能会有点绕,但看完本文后,相信你会有豁然开朗的感觉。
         二、复制、粘贴都干了什么
        从上面的解释可以看出,在实际执行复制、粘贴操作时,Windows会分两种情况,一种是复制不能使用路径表示的数据,另一种是复制可以使用路径表示的数据,详细请往下看。
        情况一:当复制不能使用路径表示的数据时(即文本、图片等),Windows会直接将数据本身copy一份到剪贴板中,当在目标位置执行粘贴操作时,将剪贴板中的数据直接copy一份到目标位置。
        情况二:当复制可以使用路径表示的数据时(如文件、文件夹等),Windows会直接将表示数据的路径存放到剪贴板中,当在目标位置执行粘贴操作时,Windows会按照剪贴板中的路径去寻找数据源,然后将其copy一份到目标位置。这也是为什么复制文件后删除文件,再粘贴将会提示“无法读源文件或磁盘”的原因。
        上面的描述也许不太靠谱,下面让我们用事实说话。在“运行”对话框中运行“clipbrd”(不含外侧引号)打开系统自带的“剪贴簿查看器”,然后分别复制文本、图片、文件或目录,并观察“剪贴簿查看器”中的内容即可明白。
        小知识:
         剪切:与复制类似的,在Windows中还有一个“剪切”,与复制不同的是,“剪切”后如果执行了“粘贴”操作,Windows在copy数据的同时会删除数据源,如果剪切的是可以用路径表示的数据,在删除数据源后还会清空剪贴板。
         小提示:
系统自带的剪贴板查看工具功能比较弱,可以从 页面中下载增强板的剪贴板查看工具CopiXP。
        三、为什么第三方工具更快
        Windows虽然好用,但复制数据的速度确实让人痛心,那为什么第三方工具(如teracopy、fastcopy等)复制数据的速度会快很多呢?其实现原理比较复杂,下面简单解释一下,相信大家就会明白了。
        1.Windows的做法
        在Windows系统中,复制数据时采取的做法是先读取一部分数据存入系统缓存,然后再将缓存中的数据写入目标位置,但这个缓存开的比较小,因此其复制过程中的数据读、写操作几乎是同时进行的,这也就是速度慢的最主要原因。在Vista以后版本的系统中对复制过程已经进行了改善,其主要改善的地方便是增加了缓存大小,在复制大文件时,速度改善会比较明显。
        2.第三方工具的做法
        第三方工具为了解决Windows复制慢的问题,往往是自己独立开辟一块更大的缓存区域,并且引入多线程处理机制,从而复制速度快了很多。
        对于第三方工具的暂停、断点续传功能,我们完全可以把这些复制增强工具看成是一个系统复制专用版的“下载工具”,这样对其所具有的增强功能就不难理解了。
        以上便是个人对于复制、粘贴的一点看法。
 
        PS:本文是08年发表于Cfan上的一篇知识性文章,感觉对初学者理解复制、粘贴还是有点用的,所以贴于此。





     本文转自windyli 51CTO博客,原文链接:http://blog.51cto.com/windyli/314776,如需转载请自行联系原作者






相关文章
|
7月前
|
存储 人工智能 JavaScript
编织魔法与修电脑:码农征途的奇妙起点
编织魔法与修电脑:码农征途的奇妙起点
86 0
|
机器学习/深度学习 人工智能 缓存
Adobe :用 AI 剪视频!像复制、粘贴一样简单
Adobe :用 AI 剪视频!像复制、粘贴一样简单
|
弹性计算 Cloud Native 算法
“我想要用我余生,换夜空繁星闪耀”
本文是7月28日《一个95后阿里郎的自学修养》文字稿,我们花了一个小时时间,从一阿里郎学生时代的成长经验,聊到了求职时期的tips,最后聊到了工作后的收获,希望与象牙塔里的你一起分享。
2166 0
“我想要用我余生,换夜空繁星闪耀”
|
分布式计算 大数据 MaxCompute
三七女生节,看程序媛们选好口红色号,踩上高跟鞋,特别美丽,特别凶狠,特别温柔~
口红,尿不湿,代码;撒娇,卖萌,撕叉;烈焰红唇倾斜45度角写代码;我爱你,你用知性保持着最致命的吸引力!
2118 0