ราคาของดิสก์ I / O ที่อ่านและเขียน [ปิด]


2

กำลังเขียนไปยังแผ่นดิสก์การดำเนินการที่มีราคาแพงกว่าจากนั้นอ่านจากดิสก์ ตัวอย่างเช่น - การเขียนไฟล์บันทึกขนาด 1 GB เมื่อเทียบกับการอ่านไฟล์ทั้งหมด


ชื่อไม่ตรงกับคำถาม หัวเรื่องอ้างถึง I / O แบบไม่ระบุตัวตนในขณะที่ข้อความคำถามระบุถึงการทำงานของดิสก์ I / O และไฟล์
ขี้เลื่อย

@saw ฉันหมายถึง Disk I / Os เท่านั้น ขออภัยหากข้อความคำถามทำให้เกิดความสับสน
AnkurVj

คำตอบ:


3

ที่ระดับไดรฟ์การอ่านเซกเตอร์จะใช้เวลาประมาณ (หรือนานกว่า) ในการเขียนเซกเตอร์เซกเตอร์ สำหรับภาคการอ่านคำสั่งจะต้องมาถึงส่วนต่อประสานของไดรฟ์ (เช่น SATA) คำสั่งถอดรหัสค้นหาออกสแกนที่อยู่เครื่องหมายและรหัสบันทึกจนกว่าจะพบภาคอ่านข้อมูลภาคลงในบัฟเฟอร์ตรวจสอบภาคโดยใช้ ECC ( รหัสแก้ไขข้อผิดพลาด) จากนั้นก็ส่งข้อมูลภาค (โปรดทราบว่ามีความเข้าใจผิดอย่างกว้างขวางว่าข้อมูลภาคสามารถถ่ายโอนได้โดยตรงจากส่วนหัวของการอ่านไปยังอินเทอร์เฟซเท็จอย่างแน่นอน: ข้อมูลภาคจะถูกบัฟเฟอร์อย่างสมบูรณ์เสมอและจะถูกส่งที่ความเร็วอินเตอร์เฟสเต็มเสมอหลังจากอ่านภาคทั้งหมดแล้ว และตรวจสอบแล้ว) หากดำเนินการอ่านล่วงหน้าและแคชการอ่านตามลำดับที่ตามมาจะไม่มีความล่าช้าในการค้นหาและการหมุน

ที่ระดับ OS หรือระบบไฟล์การเขียนมีความซับซ้อนมากขึ้นเมื่อมีการสร้างไฟล์ใหม่ การอ่านหรือเขียนดิสก์ไฟล์ที่มีอยู่นั้นต้องการการค้นหาว่ามีที่ตั้งของเซกเตอร์ข้อมูล (หรือคลัสเตอร์) อยู่หรือไม่ การเขียนไฟล์ใหม่หรือต่อท้ายไฟล์จะต้องมีการจัดสรรเซกเตอร์ / กลุ่มจากรายการฟรีก่อนกำหนดเซกเตอร์ / กลุ่มเหล่านั้นไปยังไฟล์ (อัพเดตรายการไดเรกทอรี?) แล้วเขียนข้อมูลออกมา โปรดทราบว่าโดยปกติตารางการจัดสรรดิสก์จะได้รับการอัปเดต (เช่นเขียนไปยังดิสก์) โดยเร็วที่สุดแม้กระทั่งก่อนข้อมูลไฟล์เพื่อรักษาความสมบูรณ์ของระบบไฟล์ หากคุณเคยพบ / ได้ยินดิสก์จำนวนมากพยายามค้นหาในขณะที่สร้างไฟล์คุณสามารถสันนิษฐานได้ว่าเฮดกำลังเคลื่อนย้ายระหว่างตารางการจัดสรรและไฟล์ใหม่


หากคุณเคยพบ / ได้ยินดิสก์จำนวนมากพยายามค้นหาในขณะที่สร้างไฟล์คุณสามารถสันนิษฐานได้ว่าเฮดกำลังเคลื่อนย้ายระหว่างตารางการจัดสรรและไฟล์ใหม่ ฉันคิดว่าสิ่งนี้จะเกิดขึ้นหากระบบไฟล์มีการแยกส่วนอย่างหนักเท่านั้น (ไม่เช่นนั้นจะต้องอัปเดตตารางการจัดสรรครั้งเดียวหรือสองครั้ง)
พัฒนา

ในหน่วยความจำแฟลชการดำเนินการเขียนใช้เวลานานกว่าการอ่าน
jeffgao

เห็นคำตอบคือทุกอย่างครอบคลุมและครบถ้วน แต่ฉันมีอีกหนึ่งข้อสงสัย: มีอีกไหมที่จะบังคับไฟล์ที่มีการแยกส่วนอย่างมาก? ฉันต้องการเปรียบเทียบประสิทธิภาพของการอ่านดิสก์เมื่อไฟล์มีการแยกส่วนอย่างมากเมื่อเทียบกับเมื่อไฟล์ติดกัน แต่ละส่วนย่อยจะเล็กกว่าขนาดบล็อกได้หรือไม่?
AnkurVj

@Breakthrough - ไม่จำเป็น Windows Media Center ดูเหมือนว่าจะสร้างไฟล์ (แทนที่จะเป็นไฟล์ต่อเนื่องที่ดี) สำหรับรายการทีวีที่บันทึกไว้โดยไม่คำนึงถึงสภาพของพาร์ติชัน
ขี้เลื่อย

2
@AnkurVj - บล็อก (และ / หรือบันทึก) มักจะมีขนาดการถ่ายโอนระหว่างบัฟเฟอร์ของผู้ใช้และบัฟเฟอร์ของระบบและอาจมีขนาดที่กำหนดเองโดยมีการปรับประสิทธิภาพ ดิสก์ I / O จริงระหว่างโฮสต์ (บัฟเฟอร์ของระบบ) และดิสก์ไดรฟ์จะต้องอยู่ในเซกเตอร์ของดิสก์ (โดยทั่วไปคือ 512 ไบต์ แต่พัฒนาเป็น 4KB เพื่อให้ตรงกับขนาดหน้าที่ลบโดยทั่วไปของ SSD) หากคุณเลือกขนาดบล็อกของคุณให้มีขนาดหลายเซกเตอร์ระบบปฏิบัติการอาจอนุญาตให้ใช้ดิสก์ I / O ที่ไม่มีบัฟเฟอร์เพื่อประสิทธิภาพที่เพิ่มขึ้นโดยการกำจัดบัฟเฟอร์ของระบบกลาง
ขี้เลื่อย
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.