การดาวน์โหลด / คัดลอกไฟล์พร้อมกันช่วยส่งเสริมการแยกส่วนหรือไม่


10

การเขียนมากกว่าหนึ่งไฟล์พร้อมกันในพาร์ติชั่นฮาร์ดไดรฟ์ส่งเสริมการแยกส่วนหรือไม่? ไฟล์เหล่านี้เขียนทับในฮาร์ดไดรฟ์หรือไม่

ตัวอย่าง:

  • การดาวน์โหลดไฟล์หลายไฟล์พร้อมกันจากเว็บ
  • คัดลอกไฟล์จากแหล่งต่าง ๆ ไปยังพาร์ติชันเดียวกัน
  • กำลังดาวน์โหลดเพลงหลายเพลง

สิ่งนี้แตกต่างระหว่างระบบปฏิบัติการที่หลากหลายหรือไม่? การจัดสรรพื้นที่เป็นสิ่งสำคัญสำหรับทั้งไฟล์ซึ่งเป็นคุณสมบัติเฉพาะของแอปพลิเคชันหรือไม่


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

4
นี่จะเป็นคำตอบที่ซับซ้อน ... ใช่มันเป็นระบบปฏิบัติการและแอปพลิเคชันเฉพาะ แอปพลิเคชั่นบางตัวจัดสรรพื้นที่และบางตัวไม่ บางครั้งไม่มีวิธีรู้ล่วงหน้าว่าต้องใช้พื้นที่ในการจัดสรรเท่าไรดังนั้นแอปพลิเคชันประเภทนั้นอาจแยกส่วนมากกว่า นอกจากนี้ก็เป็นไปได้ที่ระบบแฟ้มที่เฉพาะเจาะจง (คุณอาจจะใช้ FAT32 หรือ NTFS ใน Windows)
Jarvin

คำตอบ:


7

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

หากโปรแกรมถามระบบปฏิบัติการสำหรับไฟล์ 4.2GB ระบบปฏิบัติการจะค้นหาพื้นที่ว่างที่มี 4.2GB ฟรี ความล้มเหลวที่จะทำให้โปรแกรมมีพื้นที่ว่างเพียงพอในการบันทึกไฟล์ มีตัวแปรบางอย่างที่นี่ซึ่งทำให้ง่ายขึ้น

หากโปรแกรมถามระบบปฏิบัติการสำหรับไฟล์ 4KB ระบบปฏิบัติการจะให้มัน หากโปรแกรมยังคงขอเซ็กเมนต์ 4KB ที่ต่อเนื่องกันใหม่ (คุณกำลังดาวน์โหลดไฟล์และโปรแกรมไม่ทราบว่ามันใหญ่ขนาดไหน) จนกว่าจะได้พื้นที่ 4.2GB ระบบปฏิบัติการจะให้พื้นที่อย่างมีความสุข นี่เป็นกรณีที่ระบบไฟล์และระบบปฏิบัติการสร้างความแตกต่าง

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

EXT2 / 3, NTFS และฉันเชื่อว่า Reiser จะจัดสรรต่อเนื่องกันจนกว่าจะไม่สามารถทำได้อีกต่อไป จากนั้นมันจะเริ่มต้นชิ้นส่วนใหม่ แม้ว่าแต่ละส่วนจะมีขนาด 4KB

ให้ใช้กรณีที่เลวร้ายที่สุด ไฟล์ 4.2GB แบบขนานสองไฟล์จะถูกบันทึก 4KB พร้อมกันในไดเรกทอรีเดียวกัน สิ่ง 'ไดเรกทอรีเดียวกัน' เป็นส่วนหนึ่งของกรณีที่เลวร้ายที่สุดเนื่องจากชุดค่าผสม OS / FS บางตัวพยายามเก็บไฟล์ไว้ในไดเรกทอรีเดียวกันซึ่งอยู่ใกล้กัน สำหรับการรวมกันของ OS / FS บางอย่างนี้จะส่งผลให้ไฟล์สองไฟล์ถูกอินเตอร์ลีฟบนดิสก์อย่างสมบูรณ์ สำหรับคนอื่น ๆ ที่พยายามเก็บไฟล์ที่เปิดใหม่ในเซ็กเมนต์ว่างต่างกันอาจไม่มีการแตกแฟรกเมนต์เลยหรือน้อยมาก

XFS เล็กน้อย (ฉันคิดว่า ext4 และ btrfs ก็สามารถทำได้เช่นกัน) ในกรณีนี้ interleave จะไม่ใช่ 4KB มันจะเป็นสิ่งที่คุณตั้งค่าขนาดการจัดสรรของคุณเป็นเมื่อติดตั้งระดับเสียง ตั้งเป็น 256MB และคุณจะได้ไฟล์ 4.2GB ที่มี 17 แฟรกเมนต์แทนที่จะเป็นหนึ่งล้าน มีประโยชน์สำหรับวอลุ่มที่จัดเก็บไฟล์ขนาดใหญ่เช่นเซิร์ฟเวอร์สื่อ ไม่มีประโยชน์สำหรับวอลุ่มที่จัดเก็บไฟล์ itty bitty จำนวนมากและไฟล์ขนาดใหญ่บางไฟล์

เป็นเพราะสิ่งนี้ที่ลูกค้า Bittorrent เปิดไฟล์ sparse เมื่อเริ่มการดาวน์โหลดใหม่หรือเพียงแค่จัดสรรขนาดที่ระบุทั้งหมดก่อนเริ่ม

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

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.