ความแตกต่างระหว่างการแบ่งแยกภายในและภายนอก ภายในและภายนอกแตกต่าง

Anonim

การแตกหักภายในและภายนอก

ความแตกต่างระหว่างการกระจายตัวทั้งภายในและภายนอกเป็นหัวข้อที่น่าสนใจสำหรับหลาย ๆ คนที่ต้องการพัฒนาความรู้ทางคอมพิวเตอร์ของตน ก่อนที่จะรู้ความแตกต่างนี้เราต้องดูว่ามีการกระจายตัวอยู่บ้าง การแยกชิ้นส่วนเป็นปรากฏการณ์ที่เกิดขึ้นในหน่วยความจำคอมพิวเตอร์เช่น Random Access Memory (RAM) หรือฮาร์ดดิสก์ซึ่งทำให้เกิดการสิ้นเปลืองและการใช้พื้นที่ว่างอย่างไม่มีประสิทธิภาพ แม้ว่าจะมีการขัดจังหวะการใช้เนื้อที่ว่างที่มีประสิทธิภาพ แต่ก็จะทำให้เกิดปัญหาด้านประสิทธิภาพเช่นกัน การกระจายตัวภายในเกิดขึ้นเมื่อการจัดสรรหน่วยความจำขึ้นอยู่กับพาร์ทิชันที่มีขนาดคงที่ซึ่งหลังจากที่มีการกำหนดขนาดของแอ็พพลิเคชันขนาดเล็กลงไปในสล็อตพื้นที่ว่างที่เหลืออยู่ของสล็อตนั้นจะสูญเปล่า การกระจายตัวของข้อมูลภายนอกเกิดขึ้นเมื่อหน่วยความจำถูกจัดสรรแบบไดนามิกซึ่งหลังจากโหลดและยกเลิกการโหลดสล็อตหลายช่องที่นี่และที่นั่นมีการแจกจ่ายพื้นที่ว่างมากกว่าการต่อเนื่องกัน

การแบ่งส่วนภายในคืออะไร?

พิจารณารูปข้างต้นที่มีการปฏิบัติตามกลไกจัดสรรหน่วยความจำขนาดคงที่ ตอนแรกหน่วยความจำว่างเปล่าและตัวจัดสรรได้แบ่งหน่วยความจำออกเป็นพาร์ติชันที่มีขนาดคงที่ จากนั้นโปรแกรมสามรายการที่ชื่อ A, B, C ได้รับการโหลดไปยังพาร์ติชันแรกสามส่วนในขณะที่พาร์ติชันที่ 4 ยังว่างอยู่ โปรแกรม A ตรงกับขนาดของพาร์ทิชันดังนั้นจึงไม่มีการสูญเสียในพาร์ทิชันนั้น แต่ Program B และ Program C มีขนาดเล็กกว่าขนาดพาร์ทิชัน ดังนั้นส่วนที่ 2 และพาร์ติชันที่ 3 มีพื้นที่ว่างเหลืออยู่ อย่างไรก็ตามพื้นที่ว่างนี้ไม่สามารถใช้งานได้เนื่องจากตัวจัดสรรหน่วยความจำจะกำหนดพาร์ติชันเต็มรูปแบบให้กับโปรแกรม แต่ไม่มีส่วนใดของมัน การสูญเสียพื้นที่ว่างนี้เรียกว่าการกระจายตัวภายใน

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

การแบ่งแยกด้านนอกคืออะไร?

พิจารณารูปข้างต้นที่จัดสรรหน่วยความจำจะทำแบบไดนามิก ในการปันส่วนหน่วยความจำแบบไดนามิกตัวจัดสรรจัดสรรเฉพาะขนาดที่จำเป็นสำหรับโปรแกรมนั้นเท่านั้นหน่วยความจำแรกฟรี จากนั้นโปรแกรม A, B, C, D และ E มีขนาดแตกต่างกันโหลดหนึ่งหลังจากที่อื่น ๆ และพวกเขาจะอยู่ในหน่วยความจำติดกันในลำดับที่ จากนั้นโปรแกรม A และ Program C จะปิดลงและจะยกเลิกการโหลดจากหน่วยความจำ ตอนนี้มีพื้นที่ว่าง 3 พื้นที่ในหน่วยความจำ แต่ไม่ได้อยู่ติดกัน ตอนนี้โปรแกรมขนาดใหญ่ที่เรียกว่าโปรแกรม F จะได้รับการโหลด แต่ไม่มีการป้องกันพื้นที่ว่างไม่เพียงพอสำหรับโปรแกรม F. การเพิ่มพื้นที่ว่างทั้งหมดเป็นมั่นเหมาะเพียงพอสำหรับโปรแกรม F แต่เนื่องจากขาด adjacency พื้นที่ที่เป็น ใช้ไม่ได้สำหรับโปรแกรม F. นี้เรียกว่า External Fragmentation

ความแตกต่างระหว่างการแบ่งแยกภายในและภายนอกคืออะไร?

•การแบ่งส่วนภายในเกิดขึ้นเมื่อใช้เทคนิคการจัดสรรหน่วยความจำขนาดคงที่ การกระจายตัวภายนอกเกิดขึ้นเมื่อใช้เทคนิคการจัดสรรหน่วยความจำแบบไดนามิก

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

• Fragmentation ภายนอกสามารถขุดได้โดยการบดอัดที่บล็อคที่กำหนดให้ย้ายไปด้านใดด้านหนึ่งเพื่อให้ได้พื้นที่ที่ต่อเนื่องกัน อย่างไรก็ตามการดำเนินการนี้ต้องใช้เวลาและบางพื้นที่ที่ได้รับมอบหมายที่สำคัญเช่นไม่สามารถย้ายระบบได้อย่างปลอดภัย เราสามารถสังเกตขั้นตอนการบีบอัดนี้ได้จากฮาร์ดดิสก์เมื่อรันโปรแกรมจัดเรียงข้อมูลใน Windows

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

•การกระจายตัวภายในสามารถทำให้พิการได้โดยการแบ่งพาร์ติชันหลายขนาดและกำหนดโปรแกรมให้เหมาะสมที่สุด อย่างไรก็ตามการแยกส่วนภายในยังไม่สามารถขจัดออกได้อย่างเต็มที่

สรุป:

การแตกหักภายในและภายนอก

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