นี่เป็นความคิดที่ไม่ดี หากสิ่งนี้มีประโยชน์เคอร์เนล Linux จะใช้วิธีนี้ ฉันไม่เชื่อว่ามีเหตุผลที่จะเปลี่ยนพารามิเตอร์การปรับแต่งมากกว่าสองสามตัวเช่นเชลล์สคริปต์แบบธรรมดาส่วนใหญ่มีแนวโน้มที่จะไม่ฉลาดกว่าอัลกอริธึมของนักพัฒนาเคอร์เนล
โดยทั่วไปคุณมีสองกรณี:
- กระบวนการในพื้นที่สว็อปไม่ได้ถูกใช้ ทำไมคุณต้องการดึงพวกเขากลับสู่ RAM?
- มี RAM น้อยดังนั้นพวกมันจะถูกสับเปลี่ยนและคุณดึงมันกลับมาเป็น RAM จากนั้นระบบของคุณจะทำการเปลี่ยนเป็นอีกครั้งโดยเร็วที่สุด
ดังนั้นจึงมีสองประเด็นหลัก:
- ขั้นแรกระบบของคุณจะช้าเมื่อมี RAM น้อยเกินไปที่จะเรียกใช้โปรแกรมทั้งหมดในครั้งเดียว สลับจะช่วยให้คุณเรียกใช้โปรแกรมเพิ่มเติมได้ แต่ไม่สลับเป็นโปรแกรมที่ใช้บ่อยซึ่งอาจถูกสลับสับเปลี่ยนอย่างรวดเร็ว ไม่มีการแลกเปลี่ยนอาจได้รับสิ่งที่ใช้ไม่บ่อยนักหรือส่งข้อยกเว้นหน่วยความจำไม่เพียงพอ
- ประการที่สองการสลับเป็นสิ่งที่ดีและมีการสลับในขณะที่คุณมี RAM ฟรีในราคาของโปรแกรมที่คุณไม่ได้ใช้อยู่ในขณะนี้
แม้ว่าจะไม่ได้รับปัญหาหน่วยความจำไม่เพียงพอกับโปรแกรมมากเกินไป แต่บางโปรแกรมอาจจัดสรรหน่วยความจำตาม RAM ฟรีในปัจจุบัน (บางทีเบราว์เซอร์ของคุณจะใช้ memcache มากขึ้นและคุณสามารถเรียกดูได้เร็วขึ้น) และเคอร์เนลสามารถใช้ RAM ฟรีสำหรับแคชดิสก์ การเพิ่มประสิทธิภาพที่คล้ายกัน เมื่อคุณบังคับให้ swap ของคุณว่างเปล่าเคอร์เนลจะวางแคชการอ่านและเช่นการเริ่มต้นอินสแตนซ์ Firefox ใหม่จะใช้เวลานานกว่าเมื่อ Firefox ยังอยู่ในแคชดิสก์
หากคุณต้องการที่จะปรับพฤติกรรมของเคอร์เนลให้ดูที่พารามิเตอร์ swappiness
ressources เพิ่มเติมสองรายการสนับสนุนโดย @ peter-cordes:
หากคุณต้องการให้มีการแลกเปลี่ยนที่ว่างเปล่าจริงๆคุณสามารถปิดการแลกเปลี่ยนได้อย่างถาวร ฉันไม่เห็นว่าทำไมการใช้งานเป็นเวลาหนึ่งชั่วโมงแล้วจึงล้างมันมีข้อดีมากกว่าการไม่มีการสลับ