เราทุกคนรู้ว่ามันมีอยู่ การแยกส่วนในหน่วยความจำหลักและรอง. การแยกส่วนนี้แทบจะไม่มีความสำคัญในระบบไฟล์บางระบบ แต่จะเห็นได้ชัดในระบบอื่น ๆ ใน Linux และโลก UNIX โดยทั่วไปการแยกส่วนไม่ใช่ปัญหาใหญ่ โดยทั่วไปแล้วการกระจายตัวจะค่อนข้างต่ำ อย่างไรก็ตามในกรณีที่คุณไม่ทราบการแยกส่วนคือเมื่อไฟล์หรือข้อมูลไม่ได้ถูกจัดเก็บอย่างต่อเนื่องในหน่วยความจำ แต่จะถูกเก็บไว้ในพื้นที่แยกต่างหาก ...
สิ่งนี้ทำเพื่อช่วยให้ระบบปฏิบัติการใช้พื้นที่หน่วยความจำที่มีอยู่บนอุปกรณ์หรือสื่อหากไม่มีอยู่ควรย้ายบล็อกอย่างต่อเนื่องเพื่อจัดวางข้อมูลที่เขียนขึ้นใหม่และอัปเดตอย่างต่อเนื่องเพื่อให้มีอยู่โดยไม่สามารถ เขียนอย่างรวดเร็ว แต่ในระยะยาวนั้น ทำให้การเข้าถึงช้าลง (อ่านและเขียน) ของบล็อกเหล่านี้และทำให้ทรัพยากรหน่วยความจำถูกใช้อย่างไม่มีประสิทธิภาพ
หลายคนตระหนักถึงการกระจายตัวของฮาร์ดไดรฟ์ แต่ไม่ทราบว่ามีการกระจายตัวของหน่วยความจำ RAM ในลักษณะเดียวกับที่มีอยู่ในสื่อบันทึกข้อมูลสำรอง แต่อีกสิ่งหนึ่งที่พวกเขาไม่รู้ก็คือ มีสองประเภท การกระจายตัว:
- การกระจายตัวภายใน- เป็นประเภทที่หน่วยความจำระบบถูกจัดเตรียมไว้มากเกินไปและไม่สามารถใช้งานได้ ตัวอย่างเช่นหากคุณดูรูปภาพของบทความคุณจะเห็นว่าในบ้านบล็อก A มีการประเมินว่าจะใช้พื้นที่มากกว่านี้และตอนนี้ไม่สามารถใช้พื้นที่ส่วนเกิน (ขูด) ได้
- การกระจายตัวภายนอก- เกิดขึ้นเมื่อแอปพลิเคชันหรือกระบวนการหรือข้อมูลถูกลบออกจากหน่วยความจำและพื้นที่ที่ใช้ไม่ได้ถูกจัดสรรใหม่ในทันทีโดยปล่อยให้เป็นก้อน
- การกระจายตัวของข้อมูล: เมื่อข้อมูลถูกเขียนโดยไม่เรียงตามลำดับ
- ฟองฟอด: เป็นการกระจายตัวในกรณีของพื้นที่ว่างเมื่อมันไม่สม่ำเสมอและกะทัดรัด แต่จะแบ่งออกเป็นชิ้นเล็ก ๆ ที่พันกับบล็อกอื่น ๆ ที่ถูกครอบครอง นั่นทำให้การเขียนมีความซับซ้อนมากขึ้น
คุณรู้แล้วว่าระบบไฟล์ใดหรือ FS เช่น ext4, ZFS, Reiser4 ฯลฯ. พวกเขามักจะไม่มีการกระจายตัวของเงินทุนและโดยทั่วไปแล้วไม่จำเป็นต้องจัดเรียงข้อมูลบ่อยๆ ...