เหตุใด ext2 และผู้สืบทอดจึงไม่ต้องการการจัดเรียงข้อมูล


8

ตระกูลระบบไฟล์ ext2 / ext3 / ext4 ไม่จำเป็นต้องมีการจัดระเบียบ

การออกแบบพื้นฐานอะไรช่วยระบบไฟล์นี้ไม่ให้แยกส่วน?


กรุณาอย่าใช้แท็กต่อระบบแฟ้มที่เป็นที่มีอยู่, Linux ระบบแฟ้มยาวล้าสมัย
Gilles 'หยุดความชั่วร้าย' ใน

คำตอบ:


9

วิธีหนึ่งที่ระบบไฟล์ ext4 เก็บการตรวจสอบการแตกแฟรกเมนต์คือกระบวนการของการจัดสรรที่ล่าช้า (โหมดการจัดสรรเริ่มต้นของ ext4)

การจัดสรรที่ล่าช้าทำงานโดยเลื่อนการแมปของบล็อกข้อมูลไฟล์ที่เขียนใหม่ไปยังดิสก์บล็อกในระบบไฟล์จนกว่าจะถึงเวลาเขียนกลับ

สิ่งนี้ทำงานโดยการจัดสรรบล็อกส่วนใหญ่สำหรับไฟล์ในเวลาเดียวกันเมื่อทราบจำนวนรวมของบล็อก (หรืออย่างน้อย ballpark) ในแต่ละไฟล์ สิ่งนี้ทำให้ตัวจัดสรรบล็อค ( mballocดังที่กล่าวไว้ในคำตอบของ MMK) ทำงานได้ดีขึ้นในการค้นหาพื้นที่ที่มีขนาดที่เหมาะสมของพื้นที่ว่างในการวางไฟล์


โปรดทราบว่านี่เป็นเพียงคุณลักษณะของไดรเวอร์ ext4เท่านั้น ตอนนี้ฉันไม่รู้ว่าการพูดทางเทคนิคมาก ที่ไม่สามารถเมานต์ fs ที่เก่ากว่าด้วยตัวเลือกดังกล่าว (อย่างน้อยก็บางส่วน ) ยังคงเป็นปัจจุบัน DELALLOC ถูกทำเครื่องหมายเป็นext4 เท่านั้น
mirh

8

ในระบบไฟล์ ext3 มีตัวจัดสรรบล็อกสำหรับดิสก์สำหรับแต่ละบล็อกและดังนั้นจึงค่อนข้างเป็นไปได้ที่การแตกแฟรกเมนต์สามารถเกิดขึ้นได้

อย่างไรก็ตามในระบบไฟล์ ext4 มีตัวจัดสรรหลายบล็อกซึ่งสามารถหน่วงเวลาการเขียนบล็อกไปยังดิสก์เพื่อให้คุณสมบัติสามารถจัดสรรบล็อกหลาย ๆ ครั้งในดิสก์ก้อนเดียวเพื่อให้การเขียนที่ต่อเนื่องกัน - และอื่น ๆ มันมีโอกาสน้อยที่การแตกแฟรกเมนต์สามารถเกิดขึ้นได้ (ยังคงเป็นไปได้มีโอกาสน้อยกว่า)


6

อย่างน้อยสำหรับ Ext2 (และ Ext3 ฉันคิดว่าแม้ว่าฉันจะไม่ค่อยแน่ใจ) ไม่มีอะไรในรูปแบบ / โครงสร้างบนดิสก์ที่จะป้องกันการจัดเรียงข้อมูล

การขาดความจำเป็นในการจัดเรียงข้อมูลจะอยู่ในระดับการนำไปปฏิบัติซึ่งจะแตกต่างกันไปตามระบบปฏิบัติการ นั่นคือขึ้นอยู่กับการนำไปใช้งานไฟล์ใน Ext2 อาจมีหรือไม่มีการแยกส่วน

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

หวังว่านี่จะช่วยได้


มียูทิลิตี e2defrag อยู่จริงและสามารถใช้ได้ (ในดิสก์ที่ค่อนข้างเต็มด้วยไฟล์ที่เขียนแบบสุ่มจำนวนมาก) ตัวจัดสรรที่ล่าช้าของ ext4 ทำให้สิ่งนี้มีโอกาสน้อยลง แต่ถึงแม้ว่า ext2 จะมีการจัดสรร / เขียนล่าช้าบางส่วนทำให้ไม่จำเป็นต้องเรียกใช้ยูทิลิตีการจัดเรียงข้อมูลน้อยกว่าตัวจัดสรรดั้งเดิมของ MS-DOS®
mirabilos
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.