作業系統 ch11 大量儲存器結構

Disk System 組成與size計算

(一)Disk system由多片Disks組成,每片Disk通常雙面可存Data,每一面(surface)被劃分成多個同心圓的軌道,稱為track(磁軌),每一條track再切分成多個sector(磁區)(block),不同面的相同track no所形成之集合,稱為cylinder(磁柱)

Disk Access Time

(一)def:主要由三個時間組成

        =seek time+latency time+transfer time

         1. seek time

                def:磁頭移到欲存取的track上方所花得時間

         2. latency time

                def:將欲存取之sector 旋轉到磁頭下方所花之時間

        3.transfer time

                def:data在disk與memory 之間的傳輸時間

Disk scheduling algo

FCFS

(一)def:最早到達的track request,優先服務

(二)分析:

  1. 簡單,易於實施
  2. 公平,no starvation
  3. 排班效能不佳,軌道移動較多,seek time較長

SSTF

(一)def:距離目前磁頭最近的track request優先服務

(二)分析:

  1. 排班效能不錯,但並非一定最佳
  2. 不公平,可能有starvation

SCAN

(一)def:磁頭來回雙向移動,遇到track request即行服務,當磁頭遇到軌道盡頭或開端,才折返提供服務

(二)分析:

  1. 排班效果不錯
  2. 在某些時刻,對於某些track request似乎不太公平
  3. 磁頭必須遇到track的盡頭或開端才折返,此舉浪費不必要的seek time

C-SCAN

(一)def:類似scan,差別:只提供單項服務,回程不提供任何服務

LOOK

(一)def:類似scan,差別:磁頭服務完該方向之最後一個請求後,即可折返提供盧物,無須碰到盡頭or開端才折返

C-LOOK

(一)類似Look,差別:只提供單向服務

Formatting(格式化)

  1. physical formatting
  2. logical formatting

user(os)使用disk之前,仍須做兩件事:

  1. partition
  2. logical format

os 建立File mgt system 所需之data structure

eg. free space mgt,FAT,I-Node,empty physical directory ,etc

Raw-I/O

  • 將Disk 視為大型Array使用
  • 無任何File sys支援
  • 存取速度快
  • 但不易使用

Bootstrap Loader

目的:開機後,將os(kernel)object code 自disk載入至RAM中

Ⅰ.早期

缺點:

  1. boostrap Loader不易更改(因為要換ROM)
  2. 有時,boostrap Loader size 過大,無法置入ROM中

II.現代

放在DISK固定section(Blocks)稱為Boot Blocks(sectors),而擁有Boot Blocks 之partiton 之Disk,稱為Boot Disk(or system Disk)

Bad sectors之處理

(一)sector 為何BAD?何時BAD?

  1. 生產時,就BAD
  2. 正常使用一段時間後BAD

(二)方法:

  1. mark bad sector
  2. spare sectors (備份)forwarding
  3. sector slipping

mark bad sector

例:IDE Disk controller 採用

spare sectors

spare sectors:在low-level formatting 已做好,os看不到無法運用, SCSI controller 看的到,不用

缺點:SCSI這種轉向的動作,可能破壞掉Disk scheduling之效能

解決方法:應把spare sector 分散放到每一條track(or cylinder)上,所以當某sector BAD,儘量利用同一個track (CYLINDER)的spare sector

sector slipping(滑動)

swap space Mgt

(一)swap space空間size宜超估,比低估來的安全

優:提供virtual memory system最佳之throughput

缺:降低性能

(二)swap space管理方式

Ⅰfile system

優:easy implementation

缺:沒有效率

  1. search directory
  2. 多餘的disk I/O
  3. externel fragmentation

II.Independent partition

優:access/swapping speed 快(因無file system)

缺:

  1. internel fragmentation
  2. swap space 固定,要增加只能重新partition

RAID介紹(Redundant Array of Independent Disk)

(分為RAID 0~6,RAID 0+1,RAID 1+0)

(1)RAID-0

只提供Block-level striping,沒有mirror 及parity 技術提供,適用於高速存取效能之需求,而可靠度較不重要之應用

eg. VOD(video on Demand)DB(database)

(2)RAID-1

def:就是mirror

可靠度高,但cost貴

(3)RAID-2

採用ECC技術,企圖降低mirror成本,但cost降低有限(少一部disk而已)另外,可靠度與RAID-3一樣,但成本高於RAID-3

(4)RAID-3

def:提供bit-level striping 與parity-check技術

(5)RAID-4

def:提供Block-level striping 與parity-check

(6)RAID-5

def:提供Block-level striping 與parity-check,不同於RAID-3與RAID-4,其parity check Block是分散存放,非集中存放

(7)RAID-6

採用類似Read-Solomon技術(P+Q技術)重複存放parity之技術,可防止多部Disk之bad,仍可回復,但cost太高

(8)RAID-0與RAID-1之組合

  • 用在高效能及高可靠度要求之環境中
  • 組合方式有二:
  1. RAID 0+1
  2. RAID 1+0

(1)RAID 0+1 (先striping,再整體mirror)

(2)RAID 1+0(先個別mirror,再striping)

優於0+1(因為單一disk bad可拿 its mirror與其他striping)

若single disk failure in 0+1,entire stripe is inaccessable,只剩其他stripe可使用

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值