คุณมี swap มากเกินไปได้ไหม


16

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

ถ้าไม่มีประโยชน์ของการมีพื้นที่สว็อปมากกว่าที่แนะนำคืออะไร


5
ข้อเสียที่ชัดเจนคือคุณเสียพื้นที่ดิสก์ OTOH: หากคุณมีการสลับ "มากเกินไป" (พูด 30GB บนระบบ 4GB) แอปที่ทำงานผิดปกติจะได้รับหน่วยความจำไม่เพียงพอในภายหลังและจะทำให้ระบบของคุณช้าลง แอพที่มีพฤติกรรมเป็นระเบียบเรียบร้อย (ไม่มีการรั่วไหลของหน่วยความจำ) จะไม่ใช้มัน (ฉันยอมรับนี่เป็นมุมมองที่เรียบง่าย)
PerlDuck

ฉันเห็นด้วยกับ @PerlDuck - "swap มากเกินไป" เพียงแค่ใช้พื้นที่ดิสก์ ระบบของคุณจะช้าหากเริ่มใช้ swap ในกรณีนั้นอาจเรียกใช้แอพที่น้อยลงแอปที่มีน้ำหนักเบาหรือ RAM เพิ่มขึ้น
Panther

ฉันรู้ดังนั้นถ้าคุณมี RAM เพียงพออื่น ๆ แล้วใช้พื้นที่ว่างมากเกินไปจะมีข้อเสียหรือไม่ ยกเว้น offcourse แอป "ทำงานผิดปกติ" ตามที่ PerlDuck กล่าว
An0n

1
VTDคำถามทั้งหมดในหัวข้อแก้ไขแสดงเหตุผลการเปลี่ยนแปลงอย่างใกล้ชิดจากซ้ำไปเป็นปิดหัวข้อกว้างเกินไป เห็นได้ชัดว่า OP ผิดปกติ แต่เมตาหรือห้องแชทเป็นสถานที่ที่ดีกว่าสำหรับการสนทนา
WinEunuuchs2Unix

3
ในกรณีที่คนไม่แน่ใจในสิ่ง @PerlDuck (และเสือดำ) กำลังพูดถึงทราบว่าแม้ว่าคุณจะมีพื้นที่ดิสก์ไม่ จำกัด ได้อย่างมีประสิทธิภาพมีพื้นที่มากขึ้นเพื่อแลกเปลี่ยนเพื่อจะทำให้กระบวนการที่ควรจะเพียงแค่ถูกยกเลิกและที่อื่นจะเป็นอย่างรวดเร็ว ยกเลิกโดยอัตโนมัติ, ระบบช้าลงเพื่อรวบรวมข้อมูลเป็นเวลานานเป็นครั้งแรก ฉันคิดว่าความคิดเห็นของ PerlDuck จะยังทำงานเป็นคำตอบ หากเราจบการเปิดคำถามนี้อีกครั้งอาจมีคำตอบเพิ่มเติมเกี่ยวกับข้อเสียของการแลกเปลี่ยนมากเกินความจำเป็น เพราะมีข้อเสียคือ
Eliah Kagan

คำตอบ:


8

ไม่

ในภาพรวมครั้งแรกคุณไม่สามารถสลับได้มากเกินไปเพราะคุณเห็นการสลับเป็นวิธีเพิ่ม RAM ที่จริงแล้วมันไม่ได้เพิ่มแรม แต่มันแกล้งทำเป็นว่า: หากคุณมี RAM จริง 8 GB และพื้นที่สว็อปเป็น 24 GB ที่กำหนดค่าจากนั้นโปรแกรมของคุณสามารถจัดสรรและใช้หน่วยความจำได้สูงสุด 8 + 24 = 32 GB ซึ่งฟังดูดีในตอนแรก

แต่

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

ในที่สุด - เมื่อพื้นที่ swap หมด - ใช้งานบางอย่างจะต้องเผชิญกับสถานการณ์ที่ออกจากหน่วยความจำและถูกฆ่าตายโดย kernel ของ OOM_Killer

จากวิกิ :

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

ข้อสรุป

ดังนั้นข้อเสียเปรียบประการหนึ่งของการมีพื้นที่สว็อปมากเกินไปก็คือยิ่งคุณมีมากขึ้นเท่าไหร่สถานการณ์ของ OOM ก็จะเกิดขึ้นในภายหลังและยิ่งคุณต้องทนทุกข์ทรมานมากขึ้นจากระบบที่ล้าหลังและไม่ตอบสนอง

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


+1 สำหรับการพิจารณาเคสขอบ โดยส่วนตัวแล้วฉันไม่ใช่แฟนแลกเปลี่ยนตัวยงเนื่องจากการจำศีลมีไว้สำหรับหมีและระบบของฉันก็ไม่ว่างเช่นนั้น ;-) ไชโย
Elder Geek

@ElderGeek LOL อันที่จริงEliah Kaganทำให้ฉันเปลี่ยนความคิดเห็นง่ายๆของฉันเป็นคำตอบ เขาโน้มน้าวฉันว่าข้อเสียดังกล่าวข้างต้นของการแลกเปลี่ยนมากเกินไปเป็นสิ่งสำคัญและอาจมีความสำคัญต่อผู้อื่น ฉันอยู่กับคุณและมีการกำหนดค่าการสลับเล็กน้อย (2GB พร้อม 8GB RAM) และแทบไม่เคยสัมผัสเลย
PerlDuck

ฉันมีผลลัพธ์ที่คล้ายกันกับการตั้งค่าที่คล้ายกันฉันหวังว่าข่าวลือแลกเปลี่ยน 2x จะตายในที่สุด
Elder Geek

5

ไม่มีข้อเสียเปรียบโดยตรงกับพื้นที่สว็อปขนาดใหญ่ ด้วยวิธีการจัดการโดยเคอร์เนลการเพิ่มจำนวนของพื้นที่สว็อปมากกว่าสิ่งที่เพียงพอไม่มีผลกระทบต่อประสิทธิภาพการทำงานเล็กน้อย

ข้อเสียเดียวของพื้นที่สว็อป "มากเกินไป" คือคุณไม่สามารถใช้พื้นที่นั้นในการจัดเก็บได้


1
@ An0n: ฉันคิดว่ามันจะเป็นข้อเสียที่ใหญ่มากในการจัดสรร ~ 6 TB ทั้งหมดที่เชื่อมต่อกับเครื่องของฉันเป็นพื้นที่แลกเปลี่ยนในขณะนี้ ฉันจะเอาเพลงทั้งหมดของฉันไปที่ไหน…
David Foerster

2
@ An0n: คอมพิวเตอร์อะไรดีถ้ามันสามารถบู๊ตแล้วไม่เก็บข้อมูลที่เป็นประโยชน์? นั่นฟังดูคล้ายกับเครื่องทำความร้อนที่มีราคาแพง
David Foerster

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

2
แน่นอนว่ามันเป็นญาติ เช่นเดียวกับ "มากเกินไป" เป็นญาติ ถ้าฉันมีระบบที่สามารถบู๊ตได้และฉันจัดสรรพื้นที่ว่างทั้งหมดของฉันเป็นพื้นที่สว็อปแล้วก็ไม่มีประโยชน์กับฉันอีกต่อไปเพราะไม่มีพื้นที่ว่างจนกว่าฉันจะเปลี่ยนการกำหนดค่าระบบในแบบที่ลงท้ายด้วยพื้นที่ว่างมากขึ้น ในแง่นั้นพื้นที่สว็อปจะ "มากเกินไป" ในช่วงเวลานั้นทำให้ระบบไม่มีประโยชน์ในช่วงเวลานั้น อย่างไรก็ตามฉันไม่ได้อยู่ที่นี่เพื่อโต้แย้งความหมายของคำกับคุณ
David Foerster

1
@ An0n เพื่อขีดเส้นใต้จุดที่นี่พื้นที่สว็อปคือพื้นที่ที่คุณไม่สามารถใช้เพื่อสิ่งอื่นได้ พื้นที่เก็บข้อมูลบนดิสก์มีค่าใช้จ่าย หากพื้นที่ดิสก์ของคุณมี จำกัด (ของฉันมีเพียง 32GB) คุณต้องการเก็บไว้ให้มากที่สุดเท่าที่จะเป็นไปได้ในการติดตั้งโปรแกรมและเขียนไฟล์ด้วยข้อมูลของคุณเช่นเพลง โดยทั่วไปผู้คนพยายามที่จะแลกเปลี่ยนให้น้อยที่สุดด้วยเหตุผลนั้นและไม่มีเหตุผลอื่น Swap เป็นสิ่งที่ระบบอาจต้องการให้ทำงานอย่างมีประสิทธิภาพนั่นคือไม่มีค่าใด ๆ ต่อผู้ใช้ โดยทั่วไปเราต้องการให้ระบบของเราใช้ทรัพยากรที่จำเป็นเท่านั้นและทำให้เรามีความสุขกับการเล่น
Zanna

4

คุณจะไม่รู้สึกถึงข้อเสียอื่นใดนอกจากพื้นที่ว่างบนดิสก์ของคุณฉันคิดว่าทุกวันนี้ความคิดของ 2x ปริมาณของ RAM นั้นล้าสมัยในระบบส่วนใหญ่ ฉันมักจะแนะนำให้ใช้ขนาดเท่ากันของ ram สำหรับหน่วยความจำ swap ในแล็ปท็อป แต่เพื่อให้คุณมีโอกาสจำศีลพีซีของคุณโดยไม่สูญเสียข้อมูลใด ๆ เนื่องจากลักษณะที่ผันผวนของ RAM

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

หวังว่าจุดของฉันชัดเจนเพียงพอและฉันทำซ้ำฉันไม่คิดว่าคุณจะประสบปัญหาใด ๆ สำหรับการมีหน่วยความจำ swap มากเกินไป

ขอให้มีความสุขมาก ๆ ในวันนี้!


2
ฉันไม่ได้ใช้ swap เลยถ้า RAM> 2-4 Gb บนเดสก์ท็อปผู้ใช้เดียว
Panther

1
@ แพนเทอร์ทำไมไม่? และมันไม่เกี่ยวกับวิธีหรือเมื่อคุณใช้ มันเกี่ยวกับขนาดและการใช้งาน
An0n


@ElderGeek สวัสดีไม่ฉันไม่ได้พิจารณามัน ฉันชอบคำตอบของคุณฉันไม่รู้เกี่ยวกับปัญหาความจำรั่ว!
zurg

2

การจำศีลต้องการ SWAP มากเพียงใด

เป็นความเข้าใจผิดที่คุณต้องการ RAM x 2 สำหรับขนาด SWAP เมื่อคุณใช้โหมดไฮเบอร์เนต ขนาดแลกเปลี่ยนจะต้องมีขนาดของสินค้า RAMไม่ได้ติดตั้ง RAM โดยทั่วไปแล้วขนาดสว็อปจะต้องเป็น 2 ใน 5 ของ RAM ที่ติดตั้ง หากต้องการทราบจำนวน RAM ขั้นต่ำที่จำเป็นสำหรับการใช้งานให้ทำดังนี้

$ cat /sys/power/image_size
3153907712

ในเครื่อง 8 GB RAM นี้ต้องใช้ขั้นต่ำ 3 GB เพื่อจำศีล

คุณสามารถปรับแต่งค่าในimage_sizeการแลกเปลี่ยนขนาดเล็กลงด้วยความเสี่ยงของความล้มเหลว คุณสามารถปรับแต่งมันเพื่อให้ได้ขนาดสวอปที่ใหญ่ขึ้นและอาจเร่งความเร็วไฮเบอร์เนต

การอ้างอิง: https://wiki.archlinux.org/index.php/Power_management/Suspend_and_hibernate


RAM 16 MB ในปี 1995 กฎต่าง ๆ สำหรับ RAM 16 GB ในปี 2018

ในวันที่คุณมี Ram 16 MB, x 2 สำหรับการแลกเปลี่ยน 32 MB บนฮาร์ดไดรฟ์ 720 MB ของคุณสมเหตุสมผล แรมเล็ก ๆ น้อย ๆ และประวัติศาสตร์ HDD ในนี้บทความ 1995 วอชิงตันโพสต์

23 ปีต่อมามีบทความทางเทคนิคบางบทความจากปี 1995 (แม้ว่าฉันจะไม่พบสิ่งใด) อาจพบว่าทำให้ผู้ใช้ใหม่เข้าใจผิด ฉันได้ แต่หา 2007 บทความแนะนำSWAP = RAM x 2

ย้อนกลับไปในปี 1995 32 MB เปลี่ยนจาก HDD 760 MB เป็น 4% ของ HDD จริง ๆ แล้วพาร์ติชั่นสว็อปอาจมีการใช้งานอย่างมากในปี 1995 วันนี้ในปี 2018, 16 GB RAM x 2 สำหรับ 32 GB SWAP บน 256 GB SSD ของคุณไม่สมเหตุสมผลเท่าที่ใช้ 13% ของ SSD วันนี้พาร์ทิชัน SWAP ขนาด 8 GB ของฉันไม่ได้ใช้งานเลยนอกจากว่าฉันจะบังคับให้มันเติมเมื่อทดสอบ OOM-Killer: Google Chrome จะใช้หน่วยความจำของฉันจนถึงจุดที่ทำให้คอมพิวเตอร์ของฉันหยุดชะงัก ฉันจะทำอย่างไรเพื่อป้องกันปัญหานี้ .


+1 สำหรับการชี้ให้เห็นความเข้าใจผิดของกฎ 2x ที่มักถูกขนานนามว่าเป็นสองชั้นรวม
Elder Geek

@ElderGeek ขอบคุณ ฉันเพิ่มส่วนประวัติเมื่อ RAM 16 MB คูณ 2 สำหรับ 32 MB SWAP อาจสมเหตุสมผล
WinEunuuchs2Unix

สิ่งที่ควรพิจารณาอีกประการหนึ่งคือ SSD และ HDD เราต้องการอ่าน / เขียนบน SSD จำนวนมากซึ่งนำไปสู่ความล้มเหลวที่รวดเร็วกว่าในส่วนของ SSD นั้นหรือไม่ ในระบบ 32GB ram ของฉันฉันใช้ Velociraptor Drive สำหรับ SWAP 2GB แต่ไม่ได้มีการจำศีล แต่ก็ไม่แน่ใจว่านี่ใช้ได้หรือไม่ฉันอาจไม่มี swap ได้ แต่ถ้าฉันจำศีลบางที 4GB จะเพียงพอ แต่โอกาสที่ฉันจะใช้เบราว์เซอร์ 20GB จากนั้น 4GB จะไม่เพียงพอ ???
NZ Dev

@NZDev ฉันมี swap ของฉันใน SSD แต่ไม่ค่อยมีใครใช้ ครั้งสุดท้ายที่ฉันตรวจสอบว่ามันยังคงอยู่ 100% ชีวิตที่เหลือหลังจากใช้งาน 1 ปี หากต้องการดูเปอร์เซ็นต์ของชีวิตที่เหลืออยู่: askubuntu.com/questions/1038701/how-do-i-check-system-health/?hl=th
WinEunuuchs2Unix

1

SWAP คืออะไร:

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

พื้นที่สว็อปสามารถเป็นพาร์ติชั่นสว็อป (แนะนำ), ไฟล์สว็อป, หรือการรวมกันของพาร์ติชั่นสว็อปและไฟล์สว็อป.

Swap ควรเท่ากับ RAM จริง 2 เท่า


ข้อดี:

ให้พื้นที่ล้นเมื่อหน่วยความจำของคุณเต็มสมบูรณ์สามารถย้ายรายการที่ไม่ต้องการออกไปจากหน่วยความจำความเร็วสูงของคุณช่วยให้คุณจำศีล

ข้อเสีย:

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


เมื่อพาร์ทิชัน SWAP "ไม่ช่วย" เช่นเดียวกับใน "ไม่คุ้มค่าเมื่อเทียบกับพื้นที่เก็บข้อมูลเพิ่มเติม":

หากฮาร์ดไดรฟ์ของคุณมีเพียง 5400 RPM และคุณมี RAM น้อยให้พูดว่า> 2GB ทำไม เนื่องจากระบบต้องการเข้าถึงพาร์ติชัน SWAP อย่างต่อเนื่องในที่สุดมันจะช้ามาก แม้ว่าตอนนี้คุณมีพื้นที่ในหน่วยความจำทุกอย่างในพาร์ติชัน SWAP จะต้องถูกย้ายกลับมา เนื่องจากระบบจะช้าลงการจัดสรรจะอยู่ในพาร์ติชัน SWAP สิ่งนี้สามารถแก้ไขได้ด้วยการรีบูต ซึ่งจะใช้เวลาสักครู่เนื่องจากระบบจำเป็นต้องลบทุกอย่างออกจากพาร์ติชัน SWAP ก่อนที่จะปิดเครื่อง


** บทสรุป: **

หากคุณต้องการไฮเบอร์เนตคอมพิวเตอร์ของคุณคุณควรมี SWAP พาร์ติชัน ขนาดของพาร์ติชันนี้ควรเป็นขนาดของหน่วยความจำที่ติดตั้งของคุณบวกอีก 10-25% เพื่อให้มีที่ว่างสำหรับรายการใด ๆ ที่ย้ายไปไว้ในพาร์ติชัน SWAP แล้ว

หากคุณต้องการเพิ่มประสิทธิภาพเล็กน้อย (และคุณมีฮาร์ดไดรฟ์อย่างน้อย 7200rpm) คุณสามารถเพิ่มพาร์ติชัน SWAP ได้หากต้องการ แต่ไม่จำเป็นเว้นแต่คุณมีหน่วยความจำที่ติดตั้งน้อยกว่า 4GB ขนาดนี้สามารถเป็นอะไรก็ได้ที่คุณต้องการ อย่างไรก็ตามฉันขอแนะนำให้ 2x RAM เป็นตัวระบุ หากคุณมีพื้นที่เก็บข้อมูลเพียงพอ

หากคุณมีฮาร์ดไดรฟ์ 5400 rpm คุณไม่ควรสร้างพาร์ทิชัน SWAP เพียงเพราะคอขวดจะทำให้คอมพิวเตอร์ของคุณแย่ลง อย่างไรก็ตามหากคุณต้องการ SWAP จริงๆคุณสามารถสร้างพาร์ติชันโดยใช้แนวทางการปรับขนาดเดียวกันกับที่ระบุไว้ด้านบน - แต่เปลี่ยนค่า swappiness ให้ต่ำลง



ความคิดเห็นของฉัน:

อย่างไรก็ตามในกรณีใด ๆ ถ้าคุณใช้ Ubuntu เป็นระบบปฏิบัติการหลักของคุณสำหรับการใช้งานทุกวันฉันแนะนำขนาด 2x ของ RAM เพราะคุณไม่ได้ติดตั้ง Ubuntu เพราะคุณมีคอมพิวเตอร์เครื่องเก่า แต่เนื่องจากคุณต้องการใช้ระบบเป็นระบบปฏิบัติการหลักของคุณ

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

คุณสามารถมีพื้นที่พิเศษ SWAP ความเร็วพลังงานแทนที่จะมีขนาดสั้นเกินไปหรือต้องการปรับขนาดทุกอย่างในภายหลัง เพราะคุณต้องการ SWAP หรือพื้นที่ว่างซื้อแรม? หรือต้องการซื้อ ram เร็วเพราะสล็อตหน่วยความจำหนึ่งอัน


Re: บทสรุปของคุณมันไม่สมเหตุสมผลหรืออีกวิธีที่จะทำให้มันเป็นที่ที่เราวาดเส้น เช่น RAM 8GB บวกกับการสลับ 16GB: จะเป็นอย่างไรถ้าฉันใช้ RAM 8GB และ 9GB ของการสลับแล้วจะมีพื้นที่จำศีลไม่เพียงพอ แล้วอะไรล่ะ กล่าวอีกนัยหนึ่งไม่ว่าคุณจะทำขนาดไหนคุณก็ยังสามารถใช้งานได้ทั้งหมด เหตุใดไฟล์สวอปจึงไม่ให้พื้นที่พิเศษ 2 อัน 1 เป็นหน่วยความจำเสมือนและอีกอันเป็นพื้นที่จำศีลซึ่งจะเป็นผลรวมหรืออีก 2 มันไม่ซ้อนกันสำหรับฉันและไม่มีใครเคยตอบคำถามนี้
NZ Dev

0

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

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

ฉันไม่สามารถคิดถึงข้อเสียอื่น ๆ ได้ OTOH ที่มีการสลับน้อยเกินไปอาจทำให้เกิดการแยกส่วนเมื่อสลับหน้าซึ่งหมายถึงการค้นหาที่มากขึ้น เมื่อมีจำนวนมากหลังจากจุดหนึ่งจะไม่มีการปรับปรุงอย่างใดอย่างหนึ่ง

การสลับเป็นทรัพยากรสุดท้าย (การจำศีล) ดังนั้นคุณอาจไม่ได้รับประโยชน์จากการมีพื้นที่สว็อปมากกว่า RAM โดยเฉพาะถ้าคุณมี RAM มากกว่า 4GB และบางครั้งก็ใหญ่เท่า RAM มากเกินไป (คิด 64 GB) .


ขออภัยข้อความ / ประโยคสุดท้ายของคุณสับสนมิฉะนั้นอาจจะเป็น Add-on ที่ดีด้านบน
NZ Dev

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