先来扯淡吧,圣诞节前几天一直在看一些论文,磁盘相关的,今天索性一次性写完,不然看了又忘记了。

1. 硬盘

  硬盘的基础知识就不赘述了,什么磁头磁道扇区等等啦,看下图一目了然,不了然的话自己看书去。

    磁盘
  然后有一点需要明确一下,那就是磁盘保证对于扇区的更新操作都是原子的。每次写扇区要么全写进去了要么全没写进去。
  下面写一些磁盘的调度算法吧。调度嘛,就是说如果有多个请求,磁盘怎么依次处理这些请求。有一个大的准则,持续时间短的请求先执行(shortest job first),这个也很好理解,毕竟使得所有请求的平均等待时间最小。但是,这个很难做到,因为很难预先知道一个请求执行所需要的时间。于是乎就有了下面的近似算法了:

2. 廉价磁盘冗余阵列(RAIDs)

  RAID的英文全称是Redundant Arrays of Inexpensive Disks。磁盘阵列就是将几个磁盘连接在一起,用户可以并行访问这些磁盘,从而提高效率。而冗余阵列这个设计的主要目的就是在于通过提供某种形式的冗余来增强阵列的安全性,不至于说很多磁盘只要有一个坏了就会对数据造成损失。
  直接来吧,下面是RAID0,RAID1,RAID4,RAID5

3. 参考文献

  1. http://pages.cs.wisc.edu/~remzi/OSTEP/file-raid.pdf
  2. http://pages.cs.wisc.edu/~remzi/OSTEP/file-disks.pdf
  3. http://www.thegeekstuff.com/2010/08/raid-levels-tutorial/
  4. http://www.thegeekstuff.com/2011/10/raid10-vs-raid01/
  5. http://www.thegeekstuff.com/2011/11/raid2-raid3-raid4-raid6/