Hard disk
ิ
อ.อรรถพร จูทม
โปรแกรมวิชาวิทยาการคอมพิวเตอร์
คณะวิทยาศาสตร์ และเทคโนโลยี
Hard disk เป็ นอุปกรณ์ที่ใช้สาหรับการเก็บข้อมูลโดยตัวของ Hard
disk นั้นมีขนาดและความจุที่แตกต่างกันในแต่ละช่วงเวลาซึ่ งในแต่ละ
ช่วงเวลาได้ทาให้เกิดเทคโนโลยีที่แตกต่างกันเป็ นอย่างมากส่ งผลถึงความจุและ
อัตราการทางานที่มีต่อ Hard disk
- หน่ วยเรียกความจุใน Hard disk แบ่ งได้ ตาม
การใช้ งานปั จจุบันได้ 3 ลักษณะ
1) Prefix ตามมาตรฐาน SI (International Standard Of
Unit)
Prefix sysbol type decimal
kilo k 103 1,000
mega M 106 1,000,000
giga G 109 1,000,000,000
2) Prefix ตาม ระบบฐานสอง (binary system)
3) Prefix ตามมาตฐาน IEEE
Prefix sysbol type decimal
kibi Ki 210 1,024
mebi Mi 220 1,048,576
gibi Gi 230 1,073,741,824
- บทบาทและความสาคัญของ Harddisk
1. ความจุ
ิ
2. ประสทธิภาพของระบบ
ื่
3. ความน่าเชอถือของระบบ
- ส่ วนประกอบและโครงสร้างของ Harrdisk
1. ระบบขับเคลื่อนหัวอ่าน
- Stepping Motor
- Voice Coil
่
2. สวนประกอบของ Harddisk
2.1 Spindle
2.2 Spindle Motor
2.3 Platter
2.4 Actuator Arm
2.5 Read/Write Head
่
ภาพ สวนประกอบและโครงสร ้างของ
Harrdisk
- โครงสร้างการเก็บข้อมูลในระดับต่า
1. Track 2. Sector
่
- โครงสร้างการจัดเก็บข ้อมูลในระดับตา
3.Cylinder
Low Format
• Track and Sector
• Lowformat
- Stepping motor
- Voice coil
• Zero Fill
Map , Spare Sector
- Bad Sector
เป็ นความผิดปกติในการอ่ าน
้
หรื อเขียนลงบนพืนผิวของ Harddisk
- Spare Sector
้ ี
เป็ นเนือที่ท่ ถูกกันไว้ ใช้ สารอง
ี
ใน Harddisk ในกรณีท่ เกิด Bad sector
Read / Write Harddisk
1) Application, OS, Bios,Hard disk Controller
Or Driver For Hard disk , Translation , CHS
2) ส่ วนโปรแกรมที่ฝังตัวใน Harddisk จะทาการเช็ค
หน่ วยความจา Cache
ี
3) ในกรณีท่ ไม่ มีข้อมูลใน Cache และ อยู่ใน mode
ประหยัดพลังงาน จะสั่งให้ เริ่มหมุน Pletter
Read / Write Harddisk
4) ส่ วน Harddisk Controller จะทาการเปลี่ยนค่ า
จาก LBA เป็ น CHS หรือ จาก CHS เป็ น LBA
5) เมื่อ Harddisk ทราบค่ า CHS แล้ วจะทาการ
ควบคุม หัวอ่ านให้ ไปยังตาแหน่ ง cylinder ใดๆ
เรี ยก “Seek time”
ั
6) ในกรณีท่ ี Haddisk Controller บังคับให้ หวอ่ าน
หยุดรอ ให้ Sector ที่ต้องการหมุนเข้ ามาหา
เพื่อ อ่ านข้ อมูล เรี ยก “Latency”
Read / Write Harddisk
7) เมื่อหัวอ่ านได้ รับการอ่ านจาก sector แล้ ว จะ
ทาการ โยกย้ ายข้ อมูลไปยัง Cache ก่ อน แล้ วจึง
ค่ อยโยกย้ ายข้ อมูลออกไปยัง อุปกรณ์ I/O หรือ
หน่ วยความจา
การแก้ ใขการอ่ านข้ อมูลใน Harddisk
Interleaving
้
คือการจัดเรียงพืนที่ใหม่ ให้ หัวอ่ าน
ั
สามารถอ่ านข้ อมูลได้ ทนโดนมี Latency ให้ เกิด
น้ อยที่สุด เท่ าที่จะเป็ นไปได้
การแก้ ใขการอ่ านข้ อมูลใน Harddisk
Interleaving
ั ิ ้
ระบบปฎิบตการส่ วนใหญ่ นันจะอ่ าน และ
เขียนข้ อมูล ที่ ละ block หรือ cluster แต่ ในทาง
ั ิ
ปฎิบติ บางกรณี หัวอ่ าน อ่ านข้ อมูลที่ อยู่ตดกัน
ั ้
ไม่ ทนจึงมีการจัดแบ่ ง พืนที่ให้ ใหม่ โดย ข้ อมูล
ิ
สัมพันธ์ กัน แต่ ในทางกายภาพอาจไม่ อยู่ตดกันก็
้
ได้ การแบ่ งเนือที่ลักษณะนีเ้ รียก interleave factor
Modification architecture low
level
- Interleaving
Modification architecture low
level
- Cylinder and Head Skew
เป็ นการแก้ ใขปั ญหาของหัวอ่ านที่ เคลื่อน
หัวอ่ านข้ าม track แล้ วเกิด latency สูงไป จึงเกิด
้
เทคนิคนีมาแก้ ไข
Modification architecture low
level
- Cylinder skew or Track skew
Modification architecture low
level
- Head Skew
เป็ นการแก้ ใขปั ญหาของหัวอ่ านที่ เคลื่อน
หัวอ่ านข้ าม cylinder แล้ วเกิด latency สูงไป จึง
้
เกิดเทคนิคนีมาแก้ ไข
Modification architecture low
level
- Head Skew
- Cylinder ,Track and Head Skew
ิ
ประสทธิภาพของ Harddisk
ประสิทธิภาพในการทางานของ Harddisk
้
นันมีส่วนสาคัญยิ่งที่ทาให้ การอ่ านและเขียน
Hard disk เป็ นไปอย่ างสมบูรณ์ โดยจะแบ่ งเป็ น 2
กลุ่ม ที่มีผลต่ อประสิทธิภาพของ Hard disk คือ
1) ส่ วนที่เกี่ยวเนื่องในการหาตาแหน่ ง
2) ประสิทธิภาพในการส่ งผ่ านข้ อมูล
่ ่ ่ ่
สวนทีเกียวเนืองในการหาตาแหน่ง
1) Seek time
2) Settle time
3) Command Overhead Time
4) Latency
5) Access Time
่ ่ ่ ่
สวนทีเกียวเนืองในการหาตาแหน่ง
1) Seek time
คือเวลาที่ actuator arms ใช้ ในการเคลื่อน
หัวอ่ านจาก cylinder ไปยังอีก cylinder ซึ่งเป็ น
ขบวนการเชิงกลใช้ เวลาในระดับ millisecond ซึ่ง
ช้ ามากถ้ าเทียบกับสัญญาณ ดิจิตอล ที่มีความเร็ว
ในระดับ nanosecond
่ ่ ่ ่
สวนทีเกียวเนืองในการหาตาแหน่ง
1) Seek time
แบ่ งได้ เป็ น 3 ชนิด คือ
- Average
- Track to Track
- Full Stroke
่ ่ ่ ่
สวนทีเกียวเนืองในการหาตาแหน่ง
1) Seek time
- Average
คือช่ วงเวลาเฉลี่ยที่ใช้ ในการ
เคลื่อนย้ ายหัวอ่ าน / เขียน จาก cylinder หนึ่งไป
ยังอีก cylinder หนึ่งแบบสุ่ม
่ ่ ่ ่
สวนทีเกียวเนืองในการหาตาแหน่ง
1) Seek time
- Track to Track
คือช่ วงเวลาที่ใช้ ในการเคลื่อน
หัวอ่ าน/เขียน จาก cylinder หนึ่งไปยัง cylinder
ิ ี
หนึ่งที่อยู่ตดกัน โดยจะมีเวลาอยู่ท่ ประมาณ 1
ิ
มิลลิวนาที
่ ่ ่ ่
สวนทีเกียวเนืองในการหาตาแหน่ง
1) Seek time
- Full Stroke
คือเวลาที่ใช้ ในการเคลื่อนที่ของ
หัวอ่ าน/เขียน จาก cylinder ที่อยู่ด้านในสุด ไป
ยัง cylinder ที่อยู่ข้างนอกสุด ใช้ เวลาประมาณ
ิ
15 – 20 มิลลิวนาที
่ ่ ่ ่
สวนทีเกียวเนืองในการหาตาแหน่ง
2) Settle time
ั
คือช่ วงเวลาที่ hard disk รอให้ หวอ่ าน/
เขียน อยู่ในภาวะเสถียร หลังจากมีการ
เคลื่อนย้ ายจาก cylinder ไปยัง cylinder ใดๆแล้ ว
มีค่าประมาณ 0.1 มิลลิวนาทีิ
่ ่ ่ ่
สวนทีเกียวเนืองในการหาตาแหน่ง
3) Command Overhead Time
คือช่ วงเวลาที่ส่งคาสั่งไปยัง hard disk
จนกระทั่ง hard disk มีการตอบสนองต่ อคาสั่งซึ่ง
้
ทาให้ ร้ ูว่า hard disk นันสามารถตอบสนองได้
รวดเร็วเพียงใด จะมีค่าเวลาตอบสนองอยู่ท่ ี 0.5
ิ
มิลลิวนาที
่ ่ ่ ่
สวนทีเกียวเนืองในการหาตาแหน่ง
4) Latency
ั
คือช่ วงเวลาที่หวอ่ านย้ ายมายัง cylinder ที่
เหมาะสมแล้ วและรอ sector ที่ต้องการ
่ ่ ่ ่
สวนทีเกียวเนืองในการหาตาแหน่ง
5) Access Time
เป็ นค่ าที่บอกประสิทธิภาพของ harddisk
โดยใช้ สูตรดังนี ้
Access time = command overhead time + seek
time + settle time + latency
ซึ่งสามารถนามาใช้ หรื อเปรียบเทียบระหว่ าง
harddisk ได้
ิ ่
ประสทธิภาพในการสงผ่านข้อมูล
1) Internal Media Transfer rate
2) Head Switch Time
3) Cylinder Switch Time
4) Internal Sustained Transfer rate
5) External Transfer rate
ิ ่
ประสทธิภาพในการสงผ่านข้อมูล
1) Internal Media Transfer rate
ั
คือปริมาณข้ อมูลที่หวอ่ าน/เขียน สามารถ
้
อ่ านขึนมาจาก แพลตเตอร์ หรื อ เขียนลงสู่ แพลต
เตอร์ ได้ จริง ต่ อช่ วงเวลาหนึ่งมีหน่ วยเป็ น MB/s
ิ ่
ประสทธิภาพในการสงผ่านข้อมูล
2) Head Switch Time
คือเวลาที่สูญเสียไปเมื่อมีการสลับหัวอ่ าน
ไปยังหัวอ่ านอันใหม่ เพื่ออ่ านหรื อเขียน ซึ่งปกติ
หัวอ่ านจะมีจานวนหลายหัวและเมื่อมีการทางาน
หัวอ่ านจะสลับการทางานบ่ อยมาก ในแต่ ละครัง ้
ที่เปลี่ยนหัวอ่ านจะสูญเสียเวลาไปประมาณ 1-2
ิ ้
มิลลิวนาที ดังนันเวลา Head Switch Time จึงมี
ความสาคัญมากกับการถ่ ายเทข้ อมูล
ิ ่
ประสทธิภาพในการสงผ่านข้อมูล
3) Cylinder Switch Time
้
คือช่ วงเวลานับตังแต่ harddisk เสร็จสิน ้
การอ่ าน/เขียน ข้ อมูล กับ cylinder หนึ่ง
จนกระทั่งไป เริ่มอ่ าน/เขียนข้ อมูล กับอีก cylinder
อีกอันหนึ่ง
ิ ่
ประสทธิภาพในการสงผ่านข้อมูล
4) Internal Sustained Transfer rate
คือ จานวนการอ่ าน/เขียน อย่ างต่ อเนื่อง
กับ sector และ track ต่ างๆที่อยู่ใน cylinder
มากกว่ า 1 cylinder และ นา เอา ค่ า head switch
time และ cylinder switch time เข้ ามาพิจารณา
ด้ วย
ิ ่
ประสทธิภาพในการสงผ่านข้อมูล
5) External Transfer rate
คืออัตราส่ งผ่ านข้ อมูลระหว่ าง harddisk
กับระบบโดยผ่ านส่ วน interface ของ harddisk
ิ ่ั
การจ ัดสรรและฟอร์แมตพาร์ตชน
้
การจัดสรรพืนที่และใช้ งานในตัว harddisk
้ ้
สามารถแบ่ งลาดับขันตอนได้ เป็ น 3 ขันตอนดังนี ้
1. การฟอร์ แมตระดับต่า
ิ
2. การจัดสรรพาร์ ตช่ ัน
3. การฟอร์ เมตระดับสูง
่
การฟอร์แมตระด ับตา
้
เป็ นขันตอนที่สร้ างแทรคและเซคเตอร์
้ ั ้
ขึนมาบนผิวดิสก์ ซึ่งในปั จจุบนขันตอนนี ้ ทาง
้
ผู้ผลิตเองนันเป็ นผู้สร้ างแทรคและเซคเตอร์ เอง
ิ ่ั
จ ัดสรรพาร์ตชน
หลังจากผ่ านการฟอร์ เมตระดับต่ามาแล้ ว
จาเป็ นต้ องนาฮาร์ ดดิสก์ มาทาการจัดสรรพาร์
ติช่ ัน ซึ่งเปรียบเสมือนในการนามากาหนด
้
ขอบเขตการใช้ งานพืนที่บน ฮาร์ ดดิสก์
ฟอร์แมตระด ับสูง
ในการฟอร์ แมตระดับสูงนีเ้ ป็ นการกาหนด
้
โครงสร้ างของพืนที่ในการใช้ งานให้ เป็ นไปตาม
ลักษณะที่ต้องการซึ่งปกติจะเป็ นการปรับ
้
คุณลักษณะของพืนที่ให้ ทางานร่ วมกับ
ั ิ
ระบบปฏิบตการต่ างๆ ได้
ิ ่ั
ล ักษณะการจ ัดการพาร์ตชน
้
เป็ นการกาหนดขอบเขตการใช้ เนือที่ของ
ิ
Harddisk ซึ่งในทางปฏิบัตเมื่อได้ รับการกาหนด
้ ี
แล้ วคุณลักษณะของพืนที่ท่ ถูกกาหนดจะเป็ นไป
้ ี ้
ตาม OS `ที่ ใช้ งาน โดยเนือที่ท่ ถูกใช้ งานนัน จะ
ถูกใช้ งานโดยมีการครอบครอง Cylinder นันทังวง ้ ้
โดยไม่ มีการคาบเกี่ยวกัน หรือ กระโดดข้ าม
Cylinder
ิ ่ั
ล ักษณะการจ ัดการพาร์ตชน
ิ ่ั
ล ักษณะการจ ัดการพาร์ตชน
ข้ อมูลในการกาหนดขอบเขตในการใช้ งาน
้
ต่ างๆ ของ Harddisk นันจะถูกบันทึกที่ ตาแหน่ ง
้ ้
C:H:S ที่ตาแหน่ ง 0:0:1 ซึ่งเนือที่ตาแหน่ งนีจะถูก
เรียกว่ า MBR (Master Boot Code) ข้ อมูลที่เก็บใน
ส่ วนนี ้ จะถูกเรียกว่ า partition table
ิ ่ั
ล ักษณะการจ ัดการพาร์ตชน
ลักษณะของ partition table
ื้
มีลักษณะในการใช้ พนที่ ตาแหน่ งที่ C:H:S ที่ 0:0:1
้ ้
ซึ่งในพืนที่ 1 เซคเตอร์ นีจะถูกแบ่ งเป็ นส่ วนๆ 3 ส่ วนใหญ่ ๆ
คือ
1. MBC
2. Entry หรือ partition table
3. Signature ส่ วนแสดงสถานะ การมีอยู่ของ OS
ิ ่ั
ล ักษณะการจ ัดการพาร์ตชน
ล ักษณะการ Boot ใน Harddisk
(windows all version)
ิ ่ั
ล ักษณะการจ ัดการพาร์ตชน
1. MBC
เป็ นส่ วนที่มีคาสั่งในการกระโดดไปยัง
partition ต่ างๆที่กาหนด หรื อ มี ส่ วนที่แจ้ งเตือน
ึ้
การใช้ งานต่ างๆ เป็ นคาสั่ง ที่ไม่ ขนกับ OS ใดๆ ใช้
้
เนือที่ 446 ไบต์
ิ ่ั
ล ักษณะการจ ัดการพาร์ตชน
2. Entry หรือ partition table
เป็ นส่ วนที่ใช้ บอกรายละเอียดของ
้
partition ต่ างๆ ที่อยู่บน Harddisk ลูกนันๆ มีขนาด
64 ไบต์ โดยแบ่ ง เป็ น 4 ส่ วน ส่ วนล่ ะ 16 ไบต์
Entry หรือ partition table
รายละเอียดใน Entry
Entry หรือ partition table
รายละเอียดใน Entry
โครงสร้ างของฟิ ลด์ Starting Location และ Ending
Location
ิ ่ั
ล ักษณะการจ ัดการพาร์ตชน
3. Signature
มีขนาด 2 ไบต์ มีค่า 55h และ AAh
้ ้
กรณีตาแหน่ งนีไม่ ใช่ ค่าทังสองนี ้ ระบบจะแจ้ ง
ข้ อความว่ า Missing operating system
ล ักษณะการ Boot ใน Harddisk
(windows all version)
ล ักษณะการ Boot ของระบบ
ปฏิบ ัติ (Unix)
การทลายข้อจาก ัด 4 partition
ใน Extended Dos partition
การ Boot จาก Floppy Disk