172210704111-陈国佳总结《2017年12月24日》【连续074天】
标题:有关计算机内存知识的学习和位运算的复习;
内容:
A.RAID:
电脑里如果有机械硬盘,一般是两个,用来组成RAID0;
RAID0:输入时,将bit轮流输入到两个硬盘;
优点:写入时无优势,但可大大提升读取的速度;
缺点:数据容易丢失;
在PC使用或大公司用来存放不重要数据同时需要读取速度时,一般采用RAID0;
RAID1:镜像写入,将数据同时写入两个硬盘,且一样;
优点:确保数据;
缺点:写入耗时;
一般用于大公司的重要数据保存;
RAID3:在RAID0的基础上加入一个校验硬盘,组成一个三硬盘的矩阵(或多个硬盘)
所加硬盘一般为奇偶校验硬盘,一般采取异或的方法,将轮流输入两个硬盘的bit进行异或,结果输入校验硬盘;
奇偶校验:当n个bit进行校验,考察其中1的个数i,
其中,如果添加一个数t(1或0)时,使得i成为奇数,则t就为奇校验的结果,
使i成为偶数,t就为偶校验的结果;
所以可知:异或是偶校验;
优点:兼有读取速度和安全性;
缺点:由于写入数据时需要不断的重写校验盘,校验盘负载过大;
RAID5:在3的基础上,轮流将不同硬盘当作校验盘;
缺点:不能同时坏两块硬盘;
B.快照:
COW(写时复制):
copy on write,将内存的某个状态确认时,以后对电脑的每个操作都会记录到COW磁盘缓存区,(例如,如果删除一个东西,可看成是将它剪切到缓存区)
这样,当某个时刻,电脑可直接恢复到最初的状态;
ROW:
R是重定向的意思,当使用快照时,以后的每个操作也会被记录到ROW缓存区,但记录方式不同,
当删除某个文件时,会将它的索引(index)删除,并将index保存到ROW中(注意:索引类似于指针,但在一些系统中可能不叫Index),
此时,文件并没有删除,(电脑的删除其实更这个差不多,但粉碎就是把文件内存删除,并反复写入无规则的1和0覆盖,所以没事不要粉碎文件,要不然你只能抱着硬盘去专业人员恢复了),当恢复时,只是将索引恢复;
现在一般ROW为主流,但各有缺点;
C.位运算:复习熄灯问题时,又复习了一遍位运算(041天)
int GetBit(char c,int i){
return(c>>i)& 1;
}
这里记下一个取某字节第i位bit的函数;
注意:字节最右是第0位;
D.
string l;
for(int i=0;i<=127;i++){
l=i;
cout<<l<<endl;
}
理论上可以输出ASCLL码,但实际不行,有些无法显示;
明日计划:写题目;