จัดการกับ pagefile.sys และ hiberfil.sys เพื่อเพิ่มพื้นที่และประสิทธิภาพให้กับระบบ

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

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

ทั้ง pagefile.sys และ hiberfil.sys เป็นไฟล์ระบบ (Operating System Files) ที่ Windows สร้างขึ้นโดยอัตโนมัติ ซึ่งปกติจะถูกซ่อน (hidden) ไว้อยู่ที่ไดรว์ C:\ หรือไดรว์ที่ติดตั้ง Windows ร่วมกับไฟล์อื่นๆ ที่สำคัญกับระบบ ทำให้ผู้ใช้งานมองไม่เห็น ทั้งนี้ก็เพื่อป้องกันไม่ให้ใครไปเผลอลบโดยไม่ตั้งใจ ซึ่งอาจส่งผลร้ายต่อระบบได้ แต่ถ้าเราอยากจะมองเห็นไฟล์ดังกล่าว ก็ต้องทำการยกเลิกการซ่อนไฟล์ระบบเสียก่อน ด้วยวิธีการง่ายๆ ดังนี้

ยกเลิกการซ่อนไฟล์ระบบ

  1. กดปุ่มคีย์ Windows + R เพื่อเปิดหน้าต่าง Run จากนั้นพิมพ์ control folders แล้วกดคีย์ Enter
  2. ในหน้าต่าง Folder Options หรือ File Explorer Options คลิกแท็บ View
  3. ในกรอบ Advanced settings คลิกที่ Show hidden files,…
  4. คลิกเอาเครื่องหมาย “ถูก” ที่ Hide protected operating… ออก (ดังรูป)
  5. คลิกปุ่ม OK
  6. จากนั้นไปที่ไดรว์ C:\ หรือไดรว์ที่ติดตั้ง Windows ก็จะมองเห็นไฟล์ทั้งสอง (ดังรูป) และหากสังเกตให้ดีจะเห็นว่าไฟล์ทั้งสองมีขนาดใหญ่มาก ซึ่งกินเนื้อที่ของไดรว์อยู่ไม่น้อย นั่นเป็นเพราะคุณสมบัติและหน้าที่ของไฟล์ทั้งสองนั่นเอง

จัดการกับ pagefile.sys

ขนาดของไฟล์ pagefile.sys หรือขนาดของพื้นที่ที่นำมาใช้ทำเป็น Virtual Memory บนฮาร์ดดิสก์ ปกติแล้วระบบจะกำหนดขนาดที่เหมาะสมให้เองโดยอัตโนมัติ แต่ถ้าเราต้องการจะกำหนดขนาดด้วยตัวเองก็สามารถทำได้ นอกจากนี้เรายังสามารถย้ายไฟล์ pagefile.sys จากไดรว์ที่ติดตั้ง Windows ไปไว้บนฮาร์ดดิสก์ตัวอื่นที่ทำงานได้เร็วกว่าอย่าง SSD ได้ด้วย เพื่อช่วยเพิ่มประสิทธิภาพของระบบให้มากยิ่งขึ้นไปอีก

แต่การจะย้าย pagefile.sys ไปนั้น เพื่อให้ได้ประสิทธิภาพสูงสุด ควรจะต้องย้ายไปไว้ใน SSD ตัวอื่น (ไม่ใช่พาร์ติชั่นอื่นที่อยู่บน SSD ตัวเดียวกัน) ทั้งนี้เพื่อให้การอ่านเขียนข้อมูลระหว่างกันเกิดประสิทธิภาพสูงสุด แต่ถ้ากรณีมี SSD อยู่เพียงตัวเดียว (ตัวอื่นเป็น HDD) จะปล่อย pagefile.sys ไว้ที่เดิมบนไดรว์ที่ติดตั้ง Windows หรือจะย้ายมาไว้บนพาร์ติชั่นอื่นที่อยู่บน SSD ตัวเดียวกันก็ได้ เพราะถึงยังไงก็ยังให้ประสิทธิภาพที่ดีกว่าการย้าย pagefile.sys มาไว้บน HDD ซึ่งทำงานช้ากว่า

การกำหนดขนาดและการย้าย Virtual Memory ทำได้ดังนี้

  1. กดปุ่มคีย์ Windows + R เพื่อเปิดหน้าต่าง Run จากนั้นพิมพ์ sysdm.cpl แล้วกดคีย์ Enter
  2. ในหน้าต่าง System Properties คลิกแท็บ Advanced
  3. ที่ Performance คลิกปุ่ม Settings…
  4. ในหน้าต่าง Performance Options คลิกแท็บ Advanced
  5. ที่ Virtual memory คลิกปุ่ม Change
  6. ในหน้าต่าง Virtual Memory คลิกเอาเครื่องหมาย “ถูก” ที่ Automatically manage paging… ออก
  7. ทำการย้าย Paging File จากไดรว์ C ไปไว้ที่ไดรว์ D หรือไดรว์อื่นๆที่ต้องการ โดยคลิกเลือกไดรว์ C ที่เป็น System managed
  8. จากนั้นคลิกเลือก No paging file แล้วคลิกปุ่ม Set
  9. จะปรากฏหน้าต่างแจ้งเตือน คลิกปุ่ม Yes เพื่อยืนยัน
  10. กำหนดขนาดของ Paging File ที่จะสร้างไว้บนไดรว์ D คลิกเลือกไดรว์ D
  11. คลิกเลือก Custom size: เพื่อกำหนดขนาดด้วยตัวเอง โดยหลักเกณฑ์ในการกำหนดขนาดมีดังนี้
    • Initial size (MB): กำหนดให้มีขนาดเริ่มต้นประมาณ 2 เท่าของขนาด RAM ที่ใช้
    • Maximum size (MB): กำหนดให้มีขนาดสูงสุดประมาณ 3 เท่าของขนาด RAM ที่ใช้
      • ในตัวอย่างหาก RAM ที่ใช้มีขนาด 4 GB ค่า Initial size ควรมีขนาด 4×2 = 8,000 MB และค่า Maximum size ควรมีขนาด 4×3 = 12,000 MB (หรือหากไม่แน่ใจจะปล่อยให้ระบบกำหนดขนาดที่เหมาะสมให้อัตโนมัติก็ได้ โดยคลิกเลือก System managed size) เสร็จแล้วคลิกปุ่ม Set
  12. คลิกปุ่ม OK แล้วรีสตาร์ทระบบใหม่
  13. หลังจากนั้นเมื่อกลับเข้ามาใน Windows ให้เข้าไปลบไฟล์ pagefile.sys ที่อยู่ในไดรว์ C ทิ้ง แต่ถ้าไม่พบแสดงว่าระบบได้ลบทิ้งไปให้แล้วโดยอัตโนมัติ เมื่อเข้าไปที่ไดรว์ D จะพบว่าไฟล์ pagefile.sys ถูกสร้างหรือย้ายมาไว้ที่ไดรว์นี้แล้ว ดังรูป

จัดการกับ hiberfil.sys

ปกติแล้วไฟล์ hiberfil.sys จะมีขนาดใหญ่ ซึ่งจะกินเนื้อที่ไดรว์ที่ใช้ติดตั้ง Windows อยู่ไม่น้อย เพราะฉะนั้นถ้าหากเราไม่มีความจำเป็นต้องใช้งานโหมด Hibernate ก็สามารถที่จะปิด (off) เพื่อเพิ่มพื้นที่ให้กับไดรว์ได้ เพราะการปิดโหมด Hibernate ไฟล์ hiberfil.sys จะถูกลบไปโดยอัตโนมัติ สำหรับขั้นตอนการปิดโหมด Hibernate มีดังนี้

  1. คลิกปุ่ม Search Windows จากนั้นพิมพ์ cmd ในช่องค้นหา
  2. คลิกขวาที่ Command Prompt แล้วคลิกเลือก Run as administrator
  3. ในหน้าต่าง User Account Control คลิกปุ่ม Yes
  4. ในหน้าต่าง Command Prompt พิมพ์ powercfg.exe /hibernate off แล้วกดคีย์ Enter
  5. พิมพ์ exit แล้วกดคีย์ Enter เพื่อปิดหน้าต่าง
  6. เมื่อเปิดเข้าไปดูที่ไดรว์ C หรือไดรว์ที่ติดตั้ง Windows จะเห็นว่าไฟล์ hiberfil.sys ได้ถูกลบไปแล้ว

(เพิ่มเติม) หากต้องการเปิดใช้งานโหมด Hibernate ก็เพียงแค่ใช้คำสั่ง powercfg.exe /hibernate on ดังรูป ไฟล์ hiberfil.sys ก็จะไปปรากฏอยู่ที่ไดรว์ C หรือไดรว์ที่ติดตั้ง Windows เหมือนเดิม