c++为什么每次保存新数据会覆盖旧数据_数据恢复,丢失的数据为何仍能找回?...

有一个成语叫作覆水难收,意思是倒在地上的水难以收回,比喻事情已成定局,难以挽回。但是硬盘上的数据误删除了,或是硬盘发生了物理损坏,数据却是有机会恢复的。恢复由于误操作或病毒木马等导致的丢失数据称为软恢复;而恢复由于硬盘电路板、盘片损坏等硬件损坏导致的丢失数据称为硬恢复。

软恢复:我们都知道,计算机基于二进制,所以,一切的数据都是由0、1组成的代码来表示,硬盘中的数据同样通过这种形式储存。当用户把一个文件删除后,它首先会进入回收站,这种删除其实并不是严格意义上的删除,只是把文件移入另一个文件夹中,这时,如果用户反悔了,随时都可以进入回收站进行还原。而当用户将回收站中的文件进行进一步的删除后,这时的删除才算是真正意义上起到了删除的作用,但是此时数据仍有恢复的可能。对于机械硬盘来讲,数据以0、1的形式写在磁盘不同的区域上,但仅此还不够,系统需要知道哪一段数据构成了一个文件,于是引入了FAT表,用来记录文件存储的位置、大小等信息,当用户删除文件后,原本的数据本质上并没有被抹除,系统只是将FAT中的信息清除,相当于对原本储存信息的区域做了一个“可存入”的标记,这时候,当需要存入新的数据时,这块位置就可能被调用,如果被调用,新的数据将覆盖到原本的数据上,这时候,想要恢复原来的数据就会变得困难。但如果在新数据覆盖旧数据前进行恢复,成功率就会大大提高。所以,当你使用的是机械硬盘且由于误操作删除了重要文件时,应立即停止一切操作,防止旧数据被新产生的数据覆盖,然后尽早寻求恢复的办法。但固态硬盘的工作原理却不同于机械硬盘,使用固态硬盘时,当用户删除一个文件后,系统需要将原本的数据清除才能存入新的数据。那么,原本文件的位置不一定马上就需要被占用,为什么不等到真正需要这块区域的时候再清除旧数据,写入新数据呢?很简单,因为先擦除再写入新数据是需要时间的,长此以往,硬盘的速度就会越来越慢。于是,win7及后续版本的系统中引入了TRIM指令,当固态硬盘没有进行读写工作时,系统就会开始擦除用户之前删除的数据,以此来提升硬盘的性能。因此,固态硬盘上删除的数据,恢复的可能性是微乎其微的。

41a6521d2a3de55a1213a64eda2227d3.png

数据

硬恢复:当机械硬盘由于硬件损坏引起数据丢失,如果损坏的为磁头、电路板等非储存介质,这时候修复的难度就比较低。但如果为盘片这一存储介质本身出现损坏,那么修复的难度就会大大提高。但仍然有业内高手有“起死回生”之术,如使用扫描隧道显微镜直接读取盘片上的数据,在盘片大幅度损坏的情况下仍能恢复数据,当然,这种方法的成本可想而知。

基于以上特性,机械硬盘进行简单地删除或格式化操作并不能保证你的隐私就安全了,使用文件粉碎机,将原有内容进行彻底清除,可以大大提高安全性;另外,物理破坏(如盘片折断或砂纸打磨等),也是一个非常不错的选择。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值