- 如何提高磁盘I/O速度
- 磁盘I/O速度的高低,直接影响文件系统的性能
- 提高磁盘I/O速度的主要途径
-
- 选择性能好的磁盘
- 设置磁盘高速缓冲区
-
- 磁盘高速缓存
-
- 是利用内存中的存储空间,来暂存从磁盘中读出的一系列盘块中的数据。即高速缓存是一组在逻辑上属于磁盘,而物理上是驻留在内存中的盘块
- 两种实现形式:
-
- 一种是在内存中开辟一个单独的大小固定的存储空间,不受应用程序多少的影响;
- 另一种是把所有未利用的内存空间变为一个缓冲池,供请求分页系统和磁盘I/O共享
- 数据交付方式
-
- 数据交付
- 指针交付
- 置换算法
-
- 通常LRU
- 采用好的磁盘调度算法
- 提高磁盘I/O速度的其他方法
-
- 提前读
- 延迟写
- 优化物理块的分布
- 磁盘访问时间
- Disk scheduling
- FCFS
- SSTF
-
- Starvation
- Scan(防止饥饿)
-
- 不仅考虑到欲访问的磁道与磁头当前位置间的距离,更优先考虑的是磁头当前的移动方向
- 算法所选择的访问对象应当是与磁头当前移动方向一致且距离最近的
- 当磁头向里向外移动时,直到再无更外的磁道需要访问时,才改变方向
- C-Scan
-
- 磁头从磁盘的一端向另一端移动,沿途相应请求。当它到了另一端,就立即回到磁盘的开始处,在返回的途中不响应任何请求
- Look
-
- 磁臂在每个方向上仅仅移动到最远的请求位置,然后立即反向移动,而不需要移动到磁盘的一端
- C-Look
- N steps scan
-
- 将磁盘请求队列分成若干个长度为N的子队列,磁盘调度按FCFS依次处理这些子队列
- 每处理一个子队列时又按Scan算法
- 对一个队列处理完成后,再处理其他队列
- 当N取值很大时,算法性能接近于SCAN算法,当N=1时,算法成为FCFS算法。
- FScan
-
- 只将磁盘请求队列分成两个子序列
- Tertiary-storage performance
- Speed
- Reliability
- Cost
Chapter 13 Secondary-Storage
最新推荐文章于 2024-09-23 09:53:50 发布