Академический Документы
Профессиональный Документы
Культура Документы
(Operating Systems)
น.ท.ไพศาล โมลิสกุล
มงคล
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 1
บทที่ 8
การจัดการสื่อจัดเก็บข้ อมูล
(Storage Management)
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 2
ดิดิสสก์ก์ (Disk)
(Disk)
ดิสก์ในปั จจุบนั มีหลายประเภท ที่ใช้ งานกันอยูท่ วั่ ไปคือ ดิสก์แม่เหล็ก
(Magnetic disk) เช่น ฮาร์ ดดิสก์ ฟล็อปปี ด้ ิสก์ Handy drive
การจัดเนื ้อที่บนดิสก์แม่เหล็กจะมีการจัดแบ่งออกเป็ นไซลินเดอร์
(Cylinder)
ในแต่ละไซลินเดอร์ จะแบ่งออกเป็ นแทร็ก (Track)
ในแต่ละแทร็ กจะแบ่งออกเป็ นเซ็กเตอร์ (sector)
ถ้ าเป็ นแผ่นฟล็อปปี ด้ ิสก็จะมีเซ็กเตอร์ ประมาณ 8 ถึง 32 เซ็กเตอร์
ฮาร์ ดดิสก์มีจำนวนเซ็กเตอร์ หลายร้ อยเซ็กเตอร์
หน่วยเล็กที่สดุ ทางด้ านตรรกะในการอ้ างอิงถึงเนื ้อที่บนดิสก์คือ บล็อก
(Logical block)
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 3
ดิดิสสก์ก์ (Disk)
(Disk)
ขนาดของ บล็อกจะมีขนาด 512 ไบต์ หรื ออาจจะกำหนดให้ 1 บล็อกให้ มี
ขนาด 1024 ไบต์ก็ได้
บล็อกจะอยูเ่ รี ยงกันตามลำดับในแต่ละเซ็กเตอร์ โดยเซ็กเตอร์ 0 จะเป็ น
เซ็กเตอร์ แรกของแทร็ กแรกที่อยูไ่ ซลินเดอร์ ด้านนอกสุดของดิสก์
จำนวนเซ็กเตอร์ ตอ่ แทร็กนันไม่
้ คงที่
แทร็กที่อยูห่ า่ งจากจุดศูนย์กลางของดิสก์จะมีพื ้นที่ของแทร็ กมากทำให้ มี
จำนวนเซ็กเตอร์ มากกว่าแทร็กที่อยูใ่ กล้ จดุ ศูนย์กลางของดิสก์
ดิสก์สมัยใหม่จะมีการจัดแบ่งพื ้นที่ออกเป็ น 2 ส่วนคือ
ส่วนนอกจะมีจำนวนเซ็กเตอร์ มาก
ส่วนในจะมีจำนวนเซ็กเตอร์ น้อยกว่า
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 4
ลักษณะทางกายภาพของดิสก์ ทมี่ กี ารแบ่ งเป็ น 2 ส่ วน ส่ วนนอกมีจำนวน 32 เซ็กเตอร์
ต่ อแทร็ก ส่ วนในมีจำนวน 16 เซ็กเตอร์ แต่ แทร็ก
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 5
โครงสร ้างภายในฮาร์ดดิสก์ และแผ่นฟล็อปปี้ ดส
ิ ก์
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 6
ตารางเปรียบเทียบคุณสมบัตขิ องฟล็อปปี้ ดิสก์ และฮาร์ ดสิ ก์
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 7
การจั
การจัดดเวลาการใช้
เวลาการใช้ดดสิ สิ ก์ก์ (Disk
(Disk Scheduling)
Scheduling)
หน้ าที่ของระบบปฏิบตั ิการคือการเรี ยกใช้ งานฮาร์ ดแวร์ อย่างมี
ประสิทธิภาพ โดยพิจารณาจากระยะเวลา ขึ ้นอยูก่ บั ปั จจัย 3 อย่างคือ
ระยะเวลาการค้ นหา (seek time) หมายถึงระยะเวลาที่ใช้ ในการ
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 8
การจั
การจัดดเวลาแบบมาก่
เวลาแบบมาก่ออนได้
นได้กก่ อ่ อนน(FCFS
(FCFSScheduling)
Scheduling)
รู ปแบบมาก่ อนได้ ก่อน หรือ FCFS (First Come First Served) เป็ น
รูปแบบการทำงานที่งา่ ยที่สดุ ของการจัดเวลาการใช้ ดิสก์
วิธีนี ้ไม่ใช่วิธีของการทำงานที่เร็วที่สดุ ซึง่ จะไม่คอ่ ยปรับปรุงความเร็ วของ
ระยะเวลาการค้ นหา โดยพิจารณาจากตัวอย่างซึง่ เป็ น ลำดับที่ของไซลิ
นเดอร์ ที่ต้องการเรี ยกใช้ งาน คือ
97, 180, 36, 124, 12, 128, 62, 66
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 9
ลำดับไซลินเดอร์ = 97, 180, 36, 124, 12, 128, 62, 66
FCFS หัวอ่านอยูไ่ ซลินเดอร์ 50
การเคลือ
่ นทีข ่ องหัวอ่าน 50- 97-180-36-124-12-128-62-66
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 10
การจั
การจัดดเวลาแบบเวลาสั
เวลาแบบเวลาสั้ น้ นสุสุดดได้
ได้กก่ อ่ อนน(SSTF
(SSTFScheduling)
Scheduling)
การทำงานของการที่หวั อ่านจะเคลื่อนที่ไปยังไซลินเดอร์ ที่ใกล้ ที่สดุ ก่อน
แล้ วถึงเคลื่อนที่ยงั ไซลินเดอร์ ที่ไกลออกไป ซึง่ เรี ยกว่า เวลาสันสุ
้ ดได้ ก่อน
หรื อ SSTF (Shortest Seek Time First)
ตัวอย่างการเรี ยกใช้ ไซลินเดอร์ ที่ใกล้ ที่สดุ กับตำแหน่งของหัวอ่านปั จจุบนั
(50) คือไซลินเดอร์ ที่ 62
หัวอ่านเคลื่อนที่ไปยังไซลินเดอร์ ที่ 62 แล้ ว ต่อไปไซลินเดอร์ ที่ใกล้ ไซลินเด
อร์ ที่ 62 คือ ไซลินเดอร์ 66
ไซลินเดอร์ ตอ่ ไปที่หวั อ่านจะเคลื่อนที่ไปก็คือไซลินเดอร์ ที่ 36 และต่อไปที่
ไซลินเดอร์ 12 97 124 128 และสุดท้ ายที่ไซลินเดอร์ 180 ดังภาพ
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 11
ลำดับไซลินเดอร์ = 97, 180, 36, 124, 12, 128, 62, 66
SSTF หัวอ่านอยูไ่ ซลินเดอร์ 50
การเคลือ
่ นทีข ่ องหัวอ่าน 50-62-66-36-12- 97-124-128-180
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 16
ลำดับไซลินเดอร์ = 97, 180, 36, 124, 12, 128, 62, 66
C-SCAN หัวอ่านอยูไ่ ซลินเดอร์ 50
การเคลือ ่ นทีข่ องหัวอ่าน
50-62-66-97-124-128-180-199-0-12-36
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 18
ลำดับไซลินเดอร์ = 97, 180, 36, 124, 12, 128, 62, 66
LOOK หัวอ่านอยูไ่ ซลินเดอร์ 50
การเคลือ
่ นทีข ่ องหัวอ่าน 50-62-66-97-124-128-180-12-36
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 20
การเลื
การเลืออกใช้
กใช้รรู ปู ปแบบของการจั
แบบของการจัดดเวลาการใช้
เวลาการใช้ดดสิ สิ ก์ก์
วิธีการของการจัดเก็บไฟล์ (file-allocation) เป็ นส่วนหนึง่ ที่มีผลต่อการ
ขอใช้ บริ การจากดิสก์
การอ่านไฟล์จากที่เก็บที่อยูใ่ กล้ ๆ กันจะมีผลทำให้ การเคลื่อนที่ของหัว
อ่านอยูใ่ นบริ เวณเดียวกัน
ในกรณีของไฟล์ที่เป็ นไฟล์ดชั นี (indexd file) หรื อไฟล์ที่ลงิ ค์ (linked file)
จะถูกจัดเก็บกระจัดกระจายอยูบ่ นดิสก์ ซึง่ จะทำให้ หวั อ่านต้ องเคลื่อนที่
มากกว่า
ในกรณีที่ไดเร็ กทอรี ถกู จัดเก็บที่ไซลินเดอร์ ที่ 1 และแฟ้มข้ อมูลถูกจัดเก็บ
ที่ไซลินเดอร์ สดุ ท้ าย การเคลื่อนที่จากไซลินเดอร์ แรกจนถึงไซลินเดอร์
สุดท้ ายซึง่ เท่ากับพื ้นที่ทงหมดของดิ
ั้ สก์
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 21
การเลื
การเลืออกใช้
กใช้รรู ปู ปแบบของการจั
แบบของการจัดดเวลาการใช้
เวลาการใช้ดดสิ สิ ก์ก์
รูปแบบของการจัดเวลาการใช้ ดิสก์นนถู ั ้ กออกแบบมาเพื่อลดระยะเวลาของ
เวลาการค้ นหา (seek time)หรื อระยะเวลาที่ใช้ ในการเคลื่อนที่หวั อ่านไปยังไซ
ลินเดอร์ ที่ต้องการ
การทำงานของดิสก์สมัยใหม่จำเป็ นต้ องคำนึงถึงระยะเวลาที่รอคอยการหมุน
ดิสก์เพื่อหาเซ็กเตอร์ ที่ต้องการให้ ตรงกับหัวอ่าน (latency time)
ระบบปฏิบตั ิการไม่สามารถจะปรับและเพิ่มประสิทธิภาพของ latency time
ได้ เนื่องจากดิสก์ไม่ได้ แสดงถึงพื ้นที่ทางกายภาพเพื่อแสดงการจัดเก็บทาง
ตรรกวิทยา
บริ ษัทผู้ผลิตดิสก์ได้ แก้ ปัญหาโดยการสร้ างรูปแบบของการจัดเวลาการใช้ ดิสก์
ทำให้ ประสิทธิภาพของเวลาค้ นหา และเวลารอคอยการหมุนดิสก์ดีขึ ้น
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 22
RAID
RAID(Redundant
(RedundantArray
ArrayofofIndependent
Independent Disks)
Disks)
ประสิทธิภาพของหน่วยประมวลผลกลางนันเพิ ้ ่มขึ ้นโดยเฉลี่ยแล้ วทุก 18
เดือน แต่ประสิทธิภาพของดิสก์ไม่ได้ เพิ่มขึ ้นเหมือนกับประสิทธิภาพของ
ซีพียู
ในปี 1988 Peterson et al ได้ คิดค้ นวิธีการเพิ่มประสิทธิภาพการทำงาน
ของดิสก์โดยการนำเอาดิสก์จำนวน 6 ดิสก์ทำงานด้ วยกัน และได้ ถกู
ดัดแปลงเป็ นวิธีที่นิยมใช้ กนั ทัว่ ไปเรี ยกกว่า RAID (Redundant Array
of Independent Disks)
แนวความคิดของ RAID คือการนำดิสก์ทงหมดมาบรรจุ ั้ ไว้ ในกล่อง
เดียวกัน และติดตังกล่
้ องดิสก์นี ้ที่เครื่ องเซิร์ฟเวอร์
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 23
RAID
RAID(Redundant
(RedundantArray
ArrayofofIndependent
Independent Disks)
Disks)
ตัวควบคุมการทำงานของดิสก์คือ RAID SCSI controller ทำให้ ระบบ
ปฏิบตั ิการมองเห็นดิสก์หลายๆ ตัวที่บรรจุอยุใ่ นกล่องนันเป็
้ นดิสก์ตวั
เดียวที่เรี ยกว่า SLED (Single Large Expensive Disk)
ข้ อดี ทำให้ ไม่จำเป็ นต้ องเปลี่ยนซอฟต์แวร์ ใหม่ถ้านำ RAID มาใช้ ใน
ระบบ
ระบบเดิมใช้ ดิสก์ที่เป็ น SCSI
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 24
ระดั
ระดับบของ
ของ RAID
RAID (RAID
(RAIDLevels)
Levels)
ข้ อมูลที่บนั ทึกใน RAID นันจะถู้ กบันทึกกระจัดกระจายอยูท่ วั่ ไปใน
RAID ทำให้ สามารถที่จะมีการทำงานเป็ นแบบขนาน
วิธีการหนึง่ คือการแบ่งดิสก์ออกเป็ นชิ ้นๆ หรื อที่เรี ยกว่า stripping ซึง่ วิธี
นี ้จะมีความเร็ วในการโอนย้ ายข้ อมูลสูงแต่มีความเชื่อถือในการทำงาน
ต่ำ
วิธีการทำ mirroring หรื อ shadowing เป็ นการทำสำเนาให้ กบั ดิสก์
แต่ละตัว วิธีนี ้จะเสียค่าใช้ จา่ ยสูงเพราะจะต้ องทำสำเนาของข้ อมูลของ
ข้ อมูลทังหมดที
้ ่อยูใ่ นดิสก์
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 25
ระดั
ระดับบของ
ของ RAID
RAID (RAID
(RAIDLevels)
Levels)
จุดมุง่ หมายการสร้ างสื่อจัดเก็บที่เหลือเฟื อและเสียค่าใช้ จา่ ยต่ำ โดยใช้
แนวทางความคิดของ Stripping และใช้ วิธีของ parity เข้ าด้ วยกัน
โดยการแบ่ง RAID ออกเป็ นระดับเรี ยกว่า ระดับของ RAID (RAID
Levels) ซึง่ จะมีระดับทังหมด
้ 6 ระดับ คือ RAID ระดับ 0 ถึง RAID
ระดับ 5
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 26
RAID ระดับ 0 : non-redundant stripping
ดิสก์ที่แบ่งเป็ นชิ ้น (strip) แต่ละชิ ้นมี k เซ็กเตอร์
ชิ ้น 0 จะมีเซ็กเตอร์ ตงแต่
ั ้ 0 ถึง k-1, ชิ ้น 1 จะมีเซ็กเตอร์ k ถึง 2k-1
การจัดเก็บข้ อมูลเป็ นบล็อก (block)
ในตัวอย่างมีดิสก์ 4 ตัว การอ่านข้ อมูลจะอ่านบล็อกข้ อมูล 4 ชิ ้นต่อเนื่อง โดย
คอนโทรลเลอร์ จะแตกคำสัง่ ทำงานแบบขนาน ทำให้ ประหยัดเวลาในการทำงาน
(ในที่นี ้คือ 4 เท่า)
ข้ อดี คือความสามารถในการถ่ายโอนข้ อมูล และตอบสนองการร้ องขอจากอุปกรณ์
อินพุต/เอาต์พตุ ได้ ปริ มาณมาก ๆ ทำให้ เพิ่มอัตราการประมวลผล
ข้ อเสีย คือความสิ ้นเปลืองเนื่องจากใช้ ดิสก์หลายตัว และความน่าเชื่อถือของระบบ
เนื่องจาการอ่านบล็อกข้ อมูลต่อเนื่องกัน
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 27
RAID ระดับ 1 : mirrored disks
เป็ นการทำสำเนาให้ กบั ดิสก์ทงหมดั้ (ตัว M หมายถึงตัวสำเนา)
ในตัวอย่างจะใช้ ดิสก์จริ ง 4 ตัว และดิสก์สำรองอีก 4 ตัว
การบันทึกข้ อมูลจะบันทึกข้ อมูล 2 ครัง้ คือบันทึกที่ดิสก์จริ ง และที่ดิสก์สำรอง
การอ่านข้ อมูลจะอ่านจากดิสก์จริ งหรื อดิสก์สำรองก็ได้
ถ้ าดิสก์จริ งเสียจะนำดิสก์สำรองมาใช้ แทนดิสก์จริ ง
การแก้ ไขจะเปลี่ยนดิสก์ที่เสียหาย และก็อปปี ข้ ้ อมูลทังหมดมาลงดิ
้ สก์ที่ติดตังใหม่
้
ข้ อดี คือระยะเวลาในการอ่านข้ อมูลจะน้ อยลงเนื่องจากใช้ เลือกอ่านจากดิสก์ได้
ข้ อเสีย คือค่าใช้ จ่ายมากขึ ้นเนื่องจากจำนวนดิสก์ที่ใช้ งานจะเพิ่มขึ ้นอีก 1 เท่าตัว
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 28
RAID ระดับ 2 : memory-style error-correcting
แบ่งดิสก์เป็ นชิ ้น และจัดเก็บข้ อมูลเป็ นบล็อก เกี่ยวข้ องในระดับไบต์ โดยแบ่งข้ อมูล
เป็ นบิต ใช้ วิธี memory-style error-correcting code (ECC)
ช่วยป้องกันข้ อผิดพลาด โดยจะมีบิตพาร์ ริตี ้ (parity bit) ช่วยในการตรวจสอบข้ อผิด
พลาดในระดับบิต (โดยกำหนดความสัมพันธ์บิตตรวจสอบกับไบต์ข้อมูล)
การทำงานใน RAID จะแบ่งข้ อมูลแต่ละไบต์ออกเป็ นส่วน ๆ แล้ วจัดเก็บแต่ละดิสก์
ข้ อมูลบิตที่ 1 ของแต่ละไบต์จดั เก็บลงดิสก์ตวั ที่ 1 ... บิตที่ 2 เก็บลงดิสก์ตวั ที่ 2...
ดิสก์ที่มี P คือดิสก์ที่ใช้ เก็บ error-correction bit ดิสก์ 4 ตัวจะใช้ ดิสก์แค่ 3 ตัวเป็ น
error-correction
ถ้ าดิสก์ใดเสีย จะนำบิตที่เหลือจากดิสก์อื่น และ error-correction bit ที่สมั พันธ์มา
ประกอบเป็ นไบต์ที่เหลือให้ กลับเป็ นไบต์ดีเหมือนเดิม
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 29
RAID ระดับ 3 : bit-interleaved parity organization
ปรับปรุงมาจาก RAID ระดับ 2 โดยดิสก์คอนโทรลเลอร์ ตรวจสอบได้ ข้อมูลในเซ็ก
เตอร์ ที่อา่ นนันถู
้ กต้ องหรื อไม่
ใช้ บิตเดียวทำหน้ าที่เป็ น error-correction bit
ถ้ าเซ็กเตอร์ ใดเสียจะทราบได้ ทนั ทีพร้ อมกับบิตที่เสีย ว่าเป็ น 0 หรื อ 1 โดยคำนวณ
กับบิตตรวจสอบ ที่สมั พันธ์กบั บิตนันในดิ
้ สก์อื่น
ค่าของบิตตรวจสอบของบิต = บิตตรวจสอบที่เก็บไว้ บิตที่เสียเป็ น 0
ค่าของบิตตรวจสอบของบิต <> บิตตรวจสอบที่เก็บไว้ บิตที่เสียเป็ น 1
ข้ อดี คือประสิทธิภาพดีพอ ๆ กับ RAID ระดับ 2 แต่ใช้ จำนวนดิสก์น้อยกว่า (ในที่นี ้
ดิสก์ 4 ตัวจะใช้ ดิสก์เพื่อตรวจสอบเพียง 1 ตัว) ทำให้ ประหยัดกว่า
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 30
RAID ระดับ 4 : block-interleaved parity organization
แบ่งดิสก์เป็ นชิ ้น เกี่ยวข้ องกับข้ อมูลในลักษณะบล็อก ไม่ได้ เป็ นไบต์เหมือนระดับ 2
และ 3
มีดิสก์จดั เก็บบล็อกพาร์ ริตี ้ (parity block) ซึง่ เป็ นบล็อกที่สมั พันธ์กบั บล็อกของ
ข้ อมูล
ข้ อดี คือถ้ าดิสก์ตวั ใดเสียจะนำบล็อกพาร์ ริตี ้ของบล็อกข้ อมูลที่เสียนันไปกู้ ้ คืนบล็อก
ข้ อมูลนันได้
้
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 31
RAID ระดับ 5 : block-interleaved distributed parity
ต่างกับ RAID ระดับ 4 ในระดับนี ้จะมีการกระจายการจัดเก็บข้ อมูลและพาร์ ริตี ้บน
ดิสก์จำนวน N+1 ตัว โดยใช้ ดิสก์ N ตัวสำหรับการจัดเก็บข้ อมูล และดิสก์อีก 1 ตัว
สำหรับเป็ นดิสก์พาร์ ริตี ้
ตัวอย่างเช่น มีดิสก์ 5 ตัว พาร์ ริตี ้ของบล็อกที่ n จะถูกจัดเก็บในดิสก์ตวั ที่ (n
mod 5)+1 ซึง่ บล็อกที่ n ของดิสก์อีก 4 ตัวที่เหลือจะใช้ สำหรับเก็บข้ อมูล
ในรูปจะเห็นว่า P หรื อบล็อกพาร์ ริตี ้จะกระจายไปอยูท่ กุ ดิสก์ ไม่สามารถอยูบ่ นดิสก์
ตัวเดียวกับบล็อกของข้ อมูลที่สมั พันธ์กนั
ถ้ าดิสก์ตวั นันเสี
้ ยจะทำให้ ทงข้
ั ้ อมูลและพาร์ ริตี ้เสียไปด้ วย ทำให้ ไม่สามารถกู้คืนได้
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 32
การจั
การจัดดการเนื
การเนือ้ อ้ ทีทีบ่ บ่ นดิ
นดิสสก์ก์ (Disk
(DiskManagement)
Management)
การฟอร์ แมตดิสก์ (Disk formatting)
Boot Block
Bad Blocks
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 33
การฟอร์
การฟอร์แแมตดิ
มตดิสสก์ก์ (Disk
(Diskformatting)
formatting)
ดิสก์มีลกั ษณะเป็ นแผ่นเหมือนกระดานชนวนซึง่ ทำมาจากวัสดุประเภท
อลูมิเนียมอัลลอยหรื อแก้ ว โดยมีการเคลือบสารแม่เหล็กไว้ บนผิว
ก่อนนำดิสก์มาบันทึกข้ อมูลได้ นนจะต้
ั ้ องมีการจัดแบ่งเนื ้อที่บนดิสก์โดย
ใช้ ซอฟต์แวร์ เป็ นตัวจัด เรี ยกกระบวนการนี ้ว่า การฟอร์ แมตระดับต่ำ
(low-level formatting)
การฟอร์ แมตระดับต่ำ จะทำให้ ดิสก์ถกู แบ่งออกเป็ นแทร็ กและเซ็กเตอร์
ปกติเซ็กเตอร์ จะประกอบไปด้ วย 3 ส่วนคือ
ส่วนหัว (header)
ส่วนเก็บข้ อมูล (data area)
ส่วนท้ าย (trailer)
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 34
ส่ วนประกอบของดิสก์ เซ็กเตอร์
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 35
การฟอร์
การฟอร์แแมตดิ
มตดิสสก์ก์ (Disk
(Diskformatting)
formatting)
ส่วนหัวและส่วนท้ ายของเซ็กเตอร์ จะเก็บข้ อมูลที่เรี ยกใช้ โดยดิสก์
คอนโทรลเลอร์ (disk controller)
การฟอร์ แมตระดับต่ำจะมีการจัดตำแหน่งของเซ็กเตอร์ 0 ของแต่ละ
แทร็กให้ ขึ ้นอยูก่ บั แทร็กที่อยูก่ ่อนหน้ าแทร็กนัน้
การจัดตำแหน่งของแทร็ก 0 แบบนี ้จะเรี ยกว่า cylinder skew ซึง่
เป็ นการเพิ่มประสิทธิภาพในการทำงาน
อนุญาตให้ มีการอ่านหลายๆ แทร็กในคราวเดียวกันโดยไม่ทำให้ ข้อมูล
สูญหายระหว่างอ่านข้ อมูล
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 36
ลักษณะทางกายภาพของดิสก์ ทมี่ กี ารแบ่ งเป็ น 2 ส่ วน
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 37
สมมติวา่ ต้ องการอ่านข้ อมูล 18 เซ็กเตอร์ โดยเริ่ มอ่านจากเซ็กเตอร์ 0 ที่อยูแ่ ทร็กด้ านใน
สุด การอ่านข้ อมูลจาก 16 เซ็กเตอร์ แรกจะใช้ การหมุนดิสก์รอบเดียว แต่การอ่านข้ อมูล
จากเซ็กเตอร์ ที่ 17 หัวอ่านจะต้ องเลื่อนออกมาแทร็กด้ านนอก 1 แทร็ก แต่เซ็กเตอร์ 0
หรื อเซ็กเตอร์ ที่ 17 ของแทร็กถัดมานันได้
้ หมุนผ่านหัวอ่านไปแล้ ว
ดังนันจึ
้ งจำเป็ นต้ องหมุนดิสก์อีกครัง้ หนึง่ จนกว่าหัวอ่านจะเจอเซ็กเตอร์ 0 อีกครัง้ หนึง่
ปั ญหานี ้สามารถแก้ ได้ โดยการจัดรูปแบบของเซ็กเตอร์ 0 ของแต่ละแทร็กให้ เยื ้องกัน
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 38
Cylinder skew
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 39
การฟอร์
การฟอร์แแมตดิ
มตดิสสก์ก์ (Disk
(Diskformatting)
formatting)
การฟอร์ แมตระดับต่ำจะทำให้ ความจุของดิสก์ลดลง โดยขึ ้นอยูก่ บั
ขนาดของส่วนหัวของเซ็กเตอร์ (head) ช่องว่างระหว่างเซ็กเตอร์ (gap)
ส่วนท้ ายของเซ็กเตอร์ (trailer) และจำนวนของเซ็กเตอร์ สำรอง
ปกติดิสก์ที่ฟอร์ แมตแล้ วเนื ้อที่จะลดลง 20% จากที่ยงั ไม่ฟอร์ แมต แต่
ไม่นบั เซ็กเตอร์ สำรอง
ดิสก์ประเภทเดียวกันจะมีเนื ้อที่สำหรับบันทึกข้ อมูลเท่ากัน
หลังจากการฟอร์ แมตระดับต่ำเรี ยบร้ อยแล้ ว ดิสก์จะถูกแบ่งออกเป็ น
พาร์ ติชนั่ (partition)
การแบ่งดิสก์เป็ นพาร์ ติชนั่ เป็ นการแบ่งตามหลักตรรกวิทยา
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 40
การฟอร์
การฟอร์แแมตดิ
มตดิสสก์ก์ (Disk
(Diskformatting)
formatting)
โดยทัว่ ไปเครื่ องคอมพิวเตอร์ จะใช้ เซ็กเตอร์ 0 สำหรับเก็บ master boot
record ซึง่ จะเก็บข้ อมูลเกี่ยวกับการบูตเครื่ องและตารางของพาร์ ติชนั
เครื่ องเพนเทียมสามารถที่จะมีพาร์ ติชนั่ ได้ 4 พาร์ ติชนั่
หลังจากแบ่งพาร์ ติชนั่ แล้ วขันตอนต่
้ อไป เป็ นขันตอนการสร้
้ างไฟล์
ระบบ (file system) ระบบปฏิบตั ิการจะเก็บค่าเริ่มต้ นของไฟล์ไว้ ใน
ดิสก์ ซึง่ เริ่ มต้ นอาจจะเป็ นแผนผังแสดงพื ้นที่วา่ งบนดิสก์ และไดเร็ กทอรี
ว่าง
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 41
Boot
Boot Block
Block
การเปิ ดเครื่ องคอมพิวเตอร์ เริ่มทำงาน จำเป็ นต้ องมีโปรแกรมเริ่ มต้ น
เรี ยกว่าโปรแกรม bootstrap
โดยระบบจะทำการค้ นหาโปรแกรม bootstrap ใน kernel แล้ วทำการ
โหลด kernel มาไว้ ในหน่วยความจำ
โปรแกรม bootstrap จะถูกเก็บไว้ ในหน่วยความจำแบบ ROM (Read-
Only Memory)
ROM สามารถอ่านได้ อย่างเดียว ทำให้ ไวรัสไม่สามารถทำลายข้ อมูลได้
ปั ญหาคือถ้ าต้ องการเปลี่ยนแปลงโค้ ดใน bootstrap จำเป็ นที่จะต้ อง
เปลี่ยน ROM ใหม่
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 42
Boot
Boot Block
Block
ระบบส่วนใหญ่ที่เก็บ bootstrap จะเป็ นโปรแกรมเล็กๆ
หน้ าที่ของโปรแกรมเล็กๆ นี ้คือ ทำหน้ าที่ดงึ bootstrap ซึง่ เป็ น
โปรแกรมทังหมดมาจากดิ
้ สก์
โปรแกรม bootstrap จะเก็บอยูใ่ นพาร์ ติชนั่ ที่เรี ยกว่า boot block ซึง่
ดิสก์ที่มี boot block เก็บอยูน่ นจะเรี
ั้ ยกว่า boot disk หรื อ system
disk
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 43
เลย์ เอาต์ ของ MS-DOS
โปรแกรม bootstrap ทีอ่ ยู่ใน ROM จะทำการสั่ งให้ ดสิ ก์ คอนโทรลเลอร์ อ่าน boot block
มาไว้ ในหน่ วยความจำ และเริ่มทำการประมวลผลโปรแกรม
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 44
Bad
Bad Block
Block
Bad Sector คือดิสก์ที่เคลื่อนไหวและมีความคงทนต่อการใช้
งานไม่มาก หัวอ่านเคลื่อนที่ไปมาอยูบ่ นพื ้นผิวของดิสก์ ซึง่
ทำให้ เกิดการเสียหายได้
หรื ออีกนัย เซ็กเตอร์ เสียหมายความว่า ข้ อมูลที่อา่ นมาจากเซ็ก
เตอร์ นนเป็
ั ้ นค่าที่ไม่ตรงกับค่าที่ได้ ทำการบันทึกลงที่เซ็กเตอร์ นนั ้
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 45
Bad
Bad Block
Block
ดิสก์อาจจะมีข้อบกพร่องมาจากโรงงานเลยเรี ยกว่า bad blocks ซึง่ จะ
ถูกจัดการได้ 2 วิธีคือ
คอนโทรลเลอร์ ทำหน้ าที่จด ั การกับพื ้นที่ที่เสีย
ตัวโปรแกรมระบบทำหน้ าที่จด ั การกับพื ้นที่นนั ้
วิธีดงเดิ
ั ้ มของการจัดการคือ บริษัทผลิตดิสก์จะทำการทดสอบดิสก์และ
จะบันทึกรายการของ bad sector ลงดิสก์และแต่ละ bad sector ก็จะ
มีเซ็กเตอร์ ที่ใช้ สำรองสำหรับ bad sector นัน้
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 46
Bad
Bad Block
Block
วิธีการใช้ เซ็กเตอร์ สำรองแทน bad sector มีอยู่ 2 วิธี คือ
ดิสก์ที่มีแทร็ กเดียวมี 30 เซ็กเตอร์ และมีเซ็กเตอร์ สำรอง 2 เซ็ก
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 47
แทร็กทีม่ ี bad sector
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 48
มีการเปลีย่ น bad sector กับส่ วนที่สำรอง
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 49
ขยับข้ าม bad sector
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 50
การติ
การติดดตัตั้ง้งดิดิสสก์ก์ (Disk
(Disk Attachment)
Attachment)
การเข้ าถึงข้ อมูลในดิสก์สามารถเข้ าถึงได้ 2 ทางคือ
ผ่านทางพอร์ ตรับส่งข้ อมูลที่ติดกับเครื่ องคอมพิวเตอร์ (host-
attached storage)
การเข้ าถึงที่จด ั เก็บระยะไกล ซึง่ เรี ยกว่าการติดตังที
้ ่จดั เก็บใน
เน็ตเวิร์ค (network-attached storage)
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 51
การติ
การติดดตัตั้ง้งทีทีเ่ เ่ครื
ครื่อ่องคอมพิ
งคอมพิววเตอร์
เตอร์หหลัลักก (host-attached
(host-attachedstorage)
storage)
แอ็กเซสข้ อมูลได้ โดยผ่านพอร์ ต I/O
การรับ-ส่งข้ อมูลใช้ กบั เครื่ องคอมพิวเตอร์ พีซีจะเป็ นแบบ IDE หรื อ ATA
คอมพิวเตอร์ สมรรถนะสูง หรื อเครื่ องเซิร์ฟเวอร์ ใช้ SCSI และ FC
(Fibre Channel)
SCSI ประกอบด้ วยสื่อนำไฟฟ้ าซึง่ โปรโตคอลของ SCSI สามารถ
สนับสนุนอุปกรณ์ได้ มากถึง 16 ชนิดต่อสายส่ง 1 สาย
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 52
การติ
การติดดตัตั้ง้งทีทีเ่ เ่ครื
ครื่อ่องคอมพิ
งคอมพิววเตอร์
เตอร์หหลัลักก (host-attached
(host-attachedstorage)
storage)
ปกติจะต้ องมีตวั คอนโทรลเลอร์ อยูท่ ี่เครื่ องคอมพิวเตอร์ หลักซึง่ เรี ยกว่า
SCSI initiator แล้ วสามารถติดตังที้ ่จดั เก็บได้ มากถึง 15 ตัว ที่จดั เก็บจะ
เรี ยกว่า SCSI targets
FC มีการทำงาน 2 รู ปแบบคือ
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 53
การติ
การติดดตัตั้ง้งสืสื่ อ่ อจัจัดดเก็เก็บบในเน็
ในเน็ตตเวิเวิรร์ ค์ ค(Network-Attached
(Network-AttachedStorage)
Storage)
เครื่ องไคลเอ็นต์สามารถใช้ ชดุ คำสัง่ ระยะไกล (RPC : Remote
Procedure Call) เพื่อเรี ยกใช้ ข้อมูลจากที่จดั เก็บในเน็ตเวอร์ คได้
โปรโตคอลในเน็ตเวิร์คที่ใช้ สำหรับแอ็กเซสข้ อมูลระยะไกล เรี ยกว่า
Network-Attached Storage (NAS)
NAS เป็ นหนทางหนึง่ ที่อำนวยความสะดวกในการใช้ คอมพิวเตอร์
ระบบ LAN แต่ประสิทธิภาพและการทำงานของ NAS จะมีน้อยกว่า
การติดตังที
้ ่จดั เก็บที่ติดกับเครื่ องโดยตรง
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 54
การติดตั้งสื่ อจัดเก็บข้ อมูลในเน็ตเวิร์ค
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 55
ความเชื
ความเชื่อ่อถืถืออได้
ได้ขของสื
องสื่ อ่ อจัจัดดเก็เก็บบข้ข้ออมูมูลล (Stable
(Stable Storage)
Storage)
เป้าหมายของ stable storage จำเป็ นที่ต้องมีการกำหนดการปฏิบตั ิการ
ของระบบดังนี ้
Stable writes ประกอบด้ วยการบันทึกข้ อมูลครัง้ แรกบล็อกของ
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 56
ความเชื
ความเชื่อ่อถืถืออได้
ได้ขของสื
องสื่ อ่ อจัจัดดเก็เก็บบข้ข้ออมูมูลล (Stable
(Stable Storage)
Storage)
Stable read การอ่านครัง้ แรกที่บล็อกแรกของดิสก์ตวั ที่ 1 ถ้ ามีการ
อ่านข้ อมูลผิดพลาดก็จะมีการอ่านข้ อมูลน้ำซ้ำๆ กันเป็ นจำนวน n
ครัง้ ถ้ าอ่านข้ อมูลนันยั
้ งผิดพลาดอีกก็จะย้ ายไปอ่านข้ อมูลจาก
บล็อกที่เหมือนกันบนดิสก์ตวั ที่ 2 แทน นัน่ คือผลมาจาก stable
wirte ที่มีการบันทึกข้ อมูลเดียวกันบนดิสก์ทงั ้ 2 ตัว ทำให้ การอ่าน
นันเป็
้ นการอ่านที่เรี ยกว่า stable read
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 57
ความเชื
ความเชื่อ่อถืถืออได้
ได้ขของสื
องสื่ อ่ อจัจัดดเก็เก็บบข้ข้ออมูมูลล (Stable
(Stable Storage)
Storage)
Crash recovery ถ้ าดิสก์เกิดความเสียหาย โปรแกรมสแกนดิสก์
จะทำการเปรี ยบเทียบบล็อกที่เหมือนกันของดิสก์ทงั ้ 2 ตัว ถ้ า
บล็อกของดิสก์ทงั ้ 2 ตัว ไม่มีสงิ่ ผิดปกติก็จะผ่านไป ถ้ าบล็อกของ
ดิสก์ตวั ใดตัวหนึง่ เป็ น bad block จะทำการบันทึกด้ วย good
block ที่มีบล็อกตรงกัน
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 58
สืสื่ อ่ อจัจัดดเก็เก็บบข้ข้ออมูมูลลประเภทอื
ประเภทอืน่ น่ ๆๆ (Tertiary
(TertiaryStorage)
Storage)
การจัดเก็บข้ อมูลประเภท tertiary storage คือ
Removable Magnetic Disks
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 59
Removable
Removable Magnetic
Magnetic Disks
Disks
Removable Magnetic Disk เป็ นดิสก์ที่บรรจุข้อมูลได้ มากกว่า 1
กิกะไบต์ ความเร็ วเท่ากับฮาร์ ดดิสก์ แต่พื ้นผิวของดิสก์ชนิดนี ้ไม่คงทน
เท่ากับฮาร์ ดดิสก์
Magneto-Optic Disk ใช้ การบันทึกข้ อมูลบนพื ้นผิวที่เคลือบด้ วยสารแม่
เหล็กเหมือนดิสก์ชนิดอื่น
หัวอ่านของ magneto-optic disk จะอยูห่ า่ งจากพื ้นผิวของดิสก์
มากกว่าหัวอ่านของดิสก์แม่เหล็กทัว่ ไป
การอ่านข้ อมูลของ magneto –optic disk เป็ นลักษณะการใช้ เลเซอร์
ส่องไปประกบกับพื ้นผิวของดิสก์
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 60
Removable
Removable Magnetic
Magnetic Disks
Disks
ดิสก์ประเภทที่อา่ นได้ อย่างเดียว (read-only disk) เช่น CD-ROM และ
DVD จะมีการบันทึกข้ อมูลล่วงหน้ ามาแล้ วจากบริษัทผู้ผลิต
ดิสก์แบบเคลื่อนย้ ายได้ จะมีการทำงานช้ ากว่าดิสก์แบบเคลื่อนย้ ายไม่
ได้ ไม่วา่ จะเป็ นกระบวนการบันทึกข้ อมูล seek time หรื อ rotational
latency time จะช้ ากว่าด้ วย
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 61
เทปแม่
เทปแม่เเหล็
หล็กก (Magnetic
(MagneticTape)
Tape)
เทปแม่เหล็กเป็ นอุปกรณ์ที่เคลื่อนย้ ายได้ แต่เทปสามารถบันทึกข้ อมูลได้
มากกว่าดิสก์ชนิดต่าง ๆ
ความเร็ วในการโอนถ่ายข้ อมูลทังของเทปและดิ
้ สก์จะมีความเร็ วเท่า ๆ กัน
เครื่ องอ่านเทปแม่เหล็กจะมีราคาแพงกว่าเครื่ องขับดิสก์ทว ั่ ไป
ห้ องเทปขนาดใหญ่จะมีหน ุ่ ยนต์ที่ทำหน้ าที่ใส่เทปหรื อถอดเทปออกจาก
ไดรฟ์ ซึง่ จะทำให้ คอมพิวเตอร์ สามารถเรี ยกใช้ งานเทปที่ต้องการได้ โดย
อัตโนมัติ
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 62
เทคโนโลยี
เทคโนโลยีขของสื
องสื่ อ่ อบับันนทึทึกกข้ข้ออมูมูลลในอนาคต
ในอนาคต(Future
(FutureTechnology)
Technology)
Holographic Storage เป็ นสื่อบันทึกข้ อมูลในอนาคต ใช้ แสดงเลเซอร์
เป็ นตัวบันทึกข้ อมูลในลักษณะในรูปภาพแบบ Holographic
การทำงาน รูปสีขาวดำที่มีลกั ษณะเป็ นภาพ 2 มิติ แต่ละจุดบนภาพนัน้
จะแทน 1 บิต สีดำมีคา่ เป็ น 0 สีขาวมีคา่ เป็ น 1 ความคมชัดสูงยิ่งมี
จำนวนบิตของข้ อมูลเป็ นล้ านๆ บิต
อัตราการแปลงข้ อมูลจะมีความเร็วสูงมาก
Micro Electronic Mechanical Systems (MEMS) เป็ นสื่อบันทึกที่
กำลังค้ นคว้ าและพัฒนาขึ ้น
การทำงานจะใช้ ชดุ หัวอ่านดิสก์ขนาดเล็กจำนวน 10,000 หัวอ่าน
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 63