จะเกิดอะไรขึ้นเมื่อข้อมูลถูกเขียนลงใน Solid State Disk มีคุณค่าหลายบทความ (สรุปดีที่นี่ ) เพราะมันซับซ้อนมากและขึ้นอยู่กับเทคโนโลยีพื้นฐาน เรื่องสั้นคือ SSD ทั่วไปไม่สามารถเขียนศูนย์บิตไปยังหน่วยความจำ แต่พวกเขาจะต้องเป็นศูนย์ (ลบ) ทั้งส่วนของหน่วยความจำและจากนั้นพวกเขาสามารถจัดเก็บข้อมูลหลังจากนั้นเพียงแค่เขียนหน่วยลงไป โดยทั่วไปแล้วทุกวันนี้พวกเขาเขียนบล็อกขนาด 512 ไบต์ แต่ลบหน้า 8 บล็อกซึ่งเป็น 4096 นี่และความจริงที่ว่ารอบการเขียน / ลบแต่ละครั้งทำให้เกิดการสึกหรอทางกายภาพของหน่วยความจำและหน่วยความจำเสื่อมในที่สุดทำให้ SSD แตกต่างกันมาก กว่า HDDs หมุนแม่เหล็ก
นอกเหนือจากนั้นไดรฟ์ SATA (และไดรฟ์ AFAIK SAS) ไม่ได้ใช้คำสั่งดั้งเดิมเพื่อคัดลอกข้อมูลจากภาคหนึ่งไปยังอีกภาค (หรืออย่างน้อยที่สุดก็ไม่มีอะไรใน SATA หรือ SAS spec ที่ต้องการดังนั้นระบบปฏิบัติการจึงไม่สามารถนับคำสั่งที่มีอยู่) ดังนั้นการคัดลอกไฟล์ข้ามพาร์ติชั่นจะเกี่ยวข้องกับการอ่านข้อมูลจากเซกเตอร์ไดรฟ์หนึ่งไปยังหน่วยความจำโฮสต์ มันกลับไปที่ไดรฟ์ในภาคอื่น
นี่เป็นเพราะตราบใดที่ระบบปฏิบัติการมีความเกี่ยวข้องไดรฟ์คือชุดของเซกเตอร์ตรรกะที่มีหมายเลขและสิ่งที่สามารถทำได้คืออ่านจากเซ็กเตอร์และเขียนไปยังเซกเตอร์ ระบบปฏิบัติการไม่สามารถบอกไดรฟ์ให้ทำการแมปเซกเตอร์ใหม่ได้
นอกจากนี้ระบบไฟล์ (HFS +, NTFS, ext3 ฯลฯ ) เป็นชุดของโครงสร้างข้อมูลที่กำหนดลำดับในชุดของบล็อกโลจิคัล โครงสร้างข้อมูลเหล่านั้นใช้ "ไฟล์", "ชื่อไฟล์", "ไดเรกทอรี", "สิทธิ์" ฯลฯ ดังนั้นใช่เมื่อคุณย้ายไฟล์จากไดเรกทอรีหนึ่งไปยังอีกไดเรกทอรีหนึ่งจะไม่ถูกคัดลอก เฉพาะข้อมูลระบบไฟล์ที่ระบุว่าไดเร็กทอรีใดที่ไฟล์นั้นได้รับการอัพเดต
แนวคิดของพาร์ติชันคือมันเป็นชุดของเซกเตอร์โลจิคัลบนไดรฟ์ที่อ้างสิทธิ์โดยระบบไฟล์เดียว ข้อพิสูจน์ว่าระบบไฟล์อาจไม่สามารถเข้าถึงเซกเตอร์ภายนอกพาร์ติชั่นได้ ส่วนใหญ่เป็นคุณลักษณะด้านความปลอดภัย แต่มันก็มาจากข้อเท็จจริงที่ว่าโครงสร้างข้อมูลของระบบไฟล์นั้นถูกสร้างขึ้นรอบบัญชีสำหรับทุกภาคส่วนของไดรฟ์ภายใต้กรรมสิทธิ์ของระบบไฟล์และมันไม่สำคัญที่จะเพิ่มหรือลบเซกเตอร์ กับโครงสร้างเหล่านั้น นี่คือเหตุผลที่คุณต้องรันรูทีนพิเศษเพื่อปรับขนาดของพาร์ติชันและทำไมระบบไฟล์จึงยืนยันว่าจะทำงานบนเซกเตอร์ที่ต่อเนื่องกัน
ดังนั้นจึงเป็นไปไม่ได้และเป็นอันตรายที่จะใช้สำเนาไฟล์เพียงแค่โอนเซกเตอร์จากระบบไฟล์หนึ่งไปยังอีกระบบหนึ่ง สำหรับไดรฟ์แม่เหล็กที่หมุนรอบตัวมันจะเป็นฝันร้ายของการแสดงด้วยเพราะแม้ว่าไดรฟ์จะสร้างข้อยกเว้นสำหรับเซกเตอร์เสียโดยทั่วไปแล้วมันจะจัดเรียงเซกเตอร์ให้อยู่ในลักษณะที่จะเพิ่มความเร็วในการอ่านและเขียน ภาค
นอกจากนี้ระบบไฟล์ 2 ระบบอาจไม่เก็บข้อมูลไฟล์ในลักษณะเดียวกันบนดิสก์ซึ่งหมายความว่าการแลกเปลี่ยนเซกเตอร์จะไม่ทำงานแม้ว่าจะใช้งานได้จริง แม้ว่าพวกเขาจะเป็นระบบไฟล์ชนิดเดียวกันแน่นอนพูด NTFS หนึ่งอาจใช้การเข้ารหัสหรือการบีบอัดและอื่น ๆ ไม่หรือทั้งสองอาจเข้ารหัสข้อมูล แต่มีคีย์ที่แตกต่างกัน ไม่ใช่ข้อกำหนดว่าข้อมูลในไฟล์คือสิ่งที่ถูกเก็บไว้ในดิสก์สิ่งที่ต้องเก็บไว้คือการแปลงข้อมูลที่สามารถย้อนกลับได้เพื่อให้ระบบไฟล์สามารถรับข้อมูลของไฟล์โดยทำอะไรบางอย่างด้วย ข้อมูลบนดิสก์ ดังนั้นหากทั้งสองระบบไฟล์ใช้การแปลงแบบเดียวกันการแลกเปลี่ยนเซกเตอร์จะไม่บรรลุเป้าหมายของการถ่ายโอนข้อมูลไฟล์
ด้วยเหตุผลทั้งหมดนี้มันเป็นงานที่มากเกินไปที่จะได้รับน้อยเกินไปสำหรับตัวเขียนระบบปฏิบัติการและตัวเขียนระบบไฟล์เพื่อใช้คุณสมบัติที่ปรับการเคลื่อนที่ข้ามพาร์ติชั่นสำหรับ SSD ดังนั้นการย้ายข้ามพาร์ติชั่นจะเป็นการอ่านและเขียน
ภายใน SSD นั้นเป็นเรื่องที่แตกต่างออกไปเล็กน้อย แม้ว่าระบบปฏิบัติการไม่ได้บอกไดรฟ์ว่ากำลังคัดลอกข้อมูลจากที่หนึ่งไปยังอีกที่หนึ่งการเขียนไปยัง SSD นั้นมีราคาแพงมาก (และซับซ้อน) ที่ตัวควบคุม SSD ทำงานมากมายเพื่อลดการเขียน SSD บางตัวมีความพยายามที่จะตรวจจับเมื่อส่วนที่ถูกเขียนไปยังที่จัดเก็บตรงกับภาคที่จัดเก็บไว้แล้วและทำเครื่องหมายชิ้นส่วนทางกายภาพของหน่วยความจำขณะที่ทำการแมปไปยังส่วนตรรกะที่แตกต่างกัน 2 แห่ง ระบบปฏิบัติการไม่สามารถ
แต่ไม่ต้องพึ่งมัน
mv
จะต้องให้ความร่วมมือผสมเลเยอร์สิ่งที่เป็นนามธรรมอย่างมาก