มีเหตุผลใดที่จะไม่ปิดการใช้งาน pagefile ของ Windows ที่ได้รับแรมทางกายภาพเพียงพอหรือไม่


35

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

ดังนั้นคำถามของฉันคือ:

สมมติว่าฉันมีแรมทางกายภาพเพียงพอสำหรับทุกสิ่งที่ฉันทำมีเหตุผลใดที่ฉันไม่ควรปิดการใช้งาน pagefile หรือไม่?

สมมติว่ารุ่นของ Windows คือ Windows XP x64 SP2 หรือ Windows Server 2003 x64 SP2 (ในลักษณะเดียวกัน) ถ้ามันแตกต่างสำหรับ Windows Server 2008 x64 ฉันสนใจที่จะฟังคำตอบสำหรับสิ่งนั้นด้วย ฉันกำลังมองหาเหตุผลเฉพาะวัตถุประสงค์จากแหล่งข้อมูลที่ดีไม่ใช่แค่ความคิดเห็น บางอย่างเช่น "นี่คือมาตรฐานที่ทำโดยมีและไม่มีไฟล์เพจและผลลัพธ์นั้นดีกว่าสำหรับเพจไฟล์แม้มี RAM เพียงพอ" หรือ "ตามบทความ MS KB ปัญหา X นี้เกิดขึ้นหากคุณปิดใช้งานเพจไฟล์"

จนถึงเพียงเหตุผลเดียวที่ฉันเห็นคือ:

  • แม้ว่าคุณคิดว่าคุณมี RAM เพียงพอคุณก็อาจจะหมด ตกลง แต่สำหรับจุดประสงค์ของคำถามนี้เราแค่คิดว่ามันเพียงพอแล้ว บางทีฉันอาจเคยอ่านอีเมลของฉันและฉันมี RAM 16GB หรือ 128GB หรือ 1TB หรืออะไรก็ตาม - แต่ก็เพียงพอแล้วสำหรับ 100% ของสิ่งที่ฉันทำ 100% ของเวลา วิธีคิดอีกอย่างคือ: ถ้าฉันมีRAM จริงx MB และpagefile y MB และฉันไม่เคยใช้ RAM ในการกำหนดค่านั้นฉันจะไม่ดีกว่าประสิทธิภาพฉลาดด้วยRAM จริงx + y MB และไม่มี แฟ้มเพจ?
  • Windows "ใช้เพื่อ" มีไฟล์เพจจิ้งและอาจไม่ทำงานอย่างน่าเชื่อถือ (จากการทำความเข้าใจผลกระทบของ RAM ต่อประสิทธิภาพของระบบโดยรวมนั้นค่อนข้างคลุมเครือและฉันคิดว่ามันยากที่จะเชื่อเนื่องจาก MS ได้ให้ตัวเลือกในการปิดใช้งาน pagefile .
  • Windows รู้ดีว่าอะไรที่ทำได้ดีกว่าคุณ ไม่ - ไม่รู้ว่าฉันจะไม่รันโปรแกรมเพิ่มเติมหรือโหลดข้อมูลมากขึ้น แต่ทำ

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

1
@ Molly คุณหมายถึงลิงค์ของคุณ? :)
EMP

3
@ มอลลี่: หากคุณคิดว่านี่เป็นการเสียเวลาอย่าแสดงความคิดเห็นเลยเพียงแค่เพิกเฉยและไปต่อ วิจารณ์คำถามทำไม คุณอาจไม่สนใจ แต่คนอื่นทำ
Mas

2
ฉันรู้สึกหงุดหงิดกับสิ่งนี้เมื่อเร็ว ๆ นี้ฉันเปลี่ยนจาก 4gb เป็น ddr2 เป็น 8gb จาก ddr3 ชายในที่ทำงานบอกว่า "อย่าลืมทำให้ขนาด swap ของคุณมีขนาด 8-12gb" ทำไม? ฉันกำลังทำสิ่งเดียวกันกับที่ฉันเคยทำมาก่อนและตอนนี้ฉันมี RAM กายภาพสองเท่า ทำไมฉันต้องมีพื้นที่สว็อปเพิ่มเติม?
LoveMeSomeCode

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

คำตอบ:


14

นี่คือการเพิ่มประสิทธิภาพขนาดเล็ก ประเด็นก็คือไม่มีเหตุผลที่จะทำในสิ่งที่คล้ายกับการทำงานปกติ มันอาจทำร้ายคุณได้อย่างง่ายดายหากรูปแบบการใช้งานของคุณเปลี่ยนไป

ในกรณีพิเศษมันอาจสมเหตุสมผลเช่นถ้าไม่มีดิสก์ที่เขียนได้ในเครื่อง


ฉันตกลงทิ้งไว้
user10547

Windows สามารถบู๊ตจากดิสก์ที่ไม่สามารถเขียนข้อมูลได้หรือไม่
salmonmoose

ใช่ แต่คุณต้องแก้ไขหลายสิ่งเพื่อให้มันใช้งานได้ เช่นรีจิสทรีต้องบนดิสก์ที่เขียนได้ดังนั้นคุณจึงจำเป็นต้องเปลี่ยนเส้นทางไปลงใน ramdisk ฯลฯ ...
คริส

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

คุณสังเกตเห็นการเร่งความเร็วจากการปิดการใช้งาน pagefile หรือไม่? ฉันเองไม่มีและจากสิ่งที่ฉันอ่านคนส่วนใหญ่ไม่ได้ ตามที่ @Captain Segfault กล่าวว่านี่เป็นการเพิ่มประสิทธิภาพขนาดเล็ก
Sasha Chedygov

8

มีเหตุผลมากมายที่จะเก็บ pagefile ไว้แม้ว่าคุณจะใส่ทุกอย่างลงใน RAM ได้

คำตอบของ SF มีผู้ลงคะแนนมากถึง 125 คนและเชื่อมโยงบทความที่น่าเชื่อถือหลายฉบับ ลองดูสิ:

https://serverfault.com/questions/23621/any-benefit-or-detriment-from-removing-a-pagefile-on-an-8gb-ram-machine/23684#23684


3
ในขณะที่ทั้งหมดนี้อาจเป็นจริงและฉันเห็นด้วยอย่างแน่นอนฉันยินดีให้ลิงค์ที่ Microsoft (คนที่ใช้เวลามากคิดเกี่ยวกับมัน :) อย่างชัดเจน reccomend เพื่อปิดการใช้งานหน่วยความจำเสมือน (ไม่มี pagefile บน eee pc ของฉันเกือบ 2 ปี นานก่อนที่ MS จะออกหลักเกณฑ์เหล่านั้น) ถ้าอย่างนั้นในคอมพิวเตอร์เดสก์ท็อปที่มีฮาร์ดไดรฟ์และหน่วยความจำแคชมอนสเตอร์ที่ทันสมัย แม้กระนั้นทุกคนก็ต้องเป็นของตัวเอง ลิงค์ (PDF, p.10): download.microsoft.com/download/2/0/a/…

3
หาก eee ของคุณมีอายุ 2 ปีจะมี SSD รุ่นแรกอยู่ ปิดการใช้งานไฟล์หน้าในการที่จะยืดอายุของ SSD แต่เห็นได้ชัดว่าไม่ใช่กรณีมาตรฐาน
MDMarra

ฉันไม่ได้พูดขั้นตอน stantdard ใช่ไหม :) และฉันจะไม่แนะนำให้ปิดการใช้งาน pagefile ในรูปแบบ 'การประมวลผลที่ดี' อย่างไรก็ตามหากมีคนต้องการทำเช่นนั้นให้ปล่อย มันพิสูจน์แล้วว่าทำงานได้โดยไม่ต้อง hickups ครั้งแล้วครั้งเล่าแม้จะมี 'สิ่งเลวร้าย' ทั้งหมดที่จะเกิดขึ้น และถ้ามันใช้งานไม่ได้ไฟล์ pagefile ใหม่ล่าสุดก็อยู่ห่างออกไปเพียงไม่กี่คลิก และหากคุณกำลังประสบกับฮาร์ดไดรฟ์ช้า / ssd มีโปรแกรมที่จะช่วยให้คุณกำหนดหน่วยความจำระบบเป็นแคชฮาร์ดไดรฟ์เพื่อเพิ่มความเร็วในการเพจ

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

8

จากลิงค์นี้:

หมายเหตุ: Microsoft แนะนำอย่างยิ่งให้คุณอย่าปิดใช้งานหรือลบไฟล์เพจจิ้ง

หากต้องการปิดการใช้งานไฟล์เพจจิ้งใน Windows XP คุณควรมี RAM อย่างน้อย 768MB

นี่คือการเชื่อมโยงไปยัง Jeff Atwood 's ใช้เวลากับมัน


หมายเหตุ: ฉันคิดว่าหมายเลขนั้นต่ำเกินไปคุณควรมีหน่วยความจำมากก่อนที่จะปิดการใช้งาน pagefile และฉันแน่ใจว่าคุณยังคงประสบปัญหาหลายอย่าง
Lance Roberts

พวกเขาไม่ได้ให้เหตุผลสำหรับคำแนะนำนั้น - และฉันสงสัยว่าเป็นเพราะผู้ใช้ส่วนใหญ่ไม่ทราบว่าพวกเขามี RAM เพียงพอหรือไม่ดังนั้นจึงเป็น "กฎง่ายๆ" ที่ดี สำหรับแอปที่จัดสรรหน่วยความจำที่ไม่ได้ใช้หน่วยความจำนั้นควรจะ "สงวน" ไม่ใช่ "มุ่งมั่น" ดังนั้นจึงใช้พื้นที่ที่อยู่เสมือนเท่านั้น หากพวกเขาจำหน่วยความจำได้จำนวนมากพวกเขาไม่ต้องการไฟล์เพจจะไม่ช่วยฉันจริงๆ
EMP

ลิงก์ไปยังโพสต์บล็อกของ Jeff ดูเหมือนจะเสียหาย
ไอแซค

1
@Isaac, แก้ไข ..
Lance Roberts

6

ฉันใช้งานแล็ปท็อป Windows XP SP3 Professional 32 บิตพร้อม RAM 4GB (Windows 'เป็นทางการ' รับรู้เพียง 3 GB เท่านั้น) มานานกว่าหนึ่งปีแล้วโดยไม่มีไฟล์เพจ ผู้คนในแวดวงของฉันก็พยายามทำให้ฉันตกใจจนไม่ควรทำเช่นนั้น

ฉันใช้แอปพลิเคชั่นที่ใช้หน่วยความจำมาก - ณ จุดใดก็ตามฉันมีเครื่องเสมือนอย่างน้อยสองเครื่อง (vmware) ซึ่งได้รับการกำหนดค่าให้ทำงาน 100% ใน RAM ฉันมี Visual Studio อย่างน้อยหนึ่งตัว (ซึ่งมีจำนวนมาก ติดตั้งส่วนเสริม), SQL Server และแอป 'เล็ก' หลายอย่างเช่นอีเมล, IM, IE และอื่น ๆ

นอกเหนือจากทั้งหมดนี้ฉันยังมี Ramdisk ขนาด 256 MB ถาวร ในบางครั้งฉันใช้ Adobe Photoshop ในขณะที่ส่วนที่เหลือของแอปพลิเคชันกำลังทำงานอยู่ และฉันเล่นหลายเกมเช่น Quake3, Neverwinter Nights, Oblivion

และฉันไม่มีปัญหาใด ๆ

หมายเหตุถึง BlueNovember: เพื่อนของเราได้ขอความกรุณาด้วยเหตุผลอย่างมีเหตุผล ดังนั้นข้อความเช่น "ฉันสงสัยว่า ... " ไม่มีเหตุผล กรุณาค้นหาก่อนโพสต์! การไฮเบอร์เนตไม่มีส่วนเกี่ยวข้องกับการเพจ มันใช้ไฟล์แยกต่างหากที่เรียกว่า hiberfil.sys และคุณสามารถจำศีลโดยไม่มีไฟล์เพจ

PS: ขอโทษเพื่อนฉันปฏิเสธที่จะกลับไปที่การตั้งค่า 'ปกติ' เพื่อให้ฉันสามารถมาตรฐานจริงเร็วเท่าการตั้งค่านี้ แต่เพียงแค่ต้องดูกิจกรรมฮาร์ดดิสก์ที่น้อยลงทำให้ริบหรี่เป็นที่สะดวกสบายมาก ฉันจะปิดการใช้งาน pagefile เพื่อสิ่งนั้นถ้าอย่างอื่นอย่างน้อยคอมพิวเตอร์ของคุณจะรู้สึก 'เร็วขึ้น' เมื่อ LED HDD ไม่กระพริบตลอดเวลา

เหตุผลเดียวที่จะไม่ปิดการใช้งาน pagefile คือถ้าคุณใช้การตรวจสอบประสิทธิภาพ (PerfMon) ตามนี้ขึ้นอยู่กับ pagefile และต้องการ pagefile ขั้นต่ำ 2 MB ไม่เช่นนั้นตัวนับจะหายไปสำหรับวัตถุต่อไปนี้: แคช, หน่วยความจำ, วัตถุ, โปรเซสเซอร์ และระบบ


1
คุณมักจะพบคนที่รู้สึกอยากบอกคนอื่นว่าพวกเขาควรใช้งานคอมพิวเตอร์ของพวกเขาอย่างไรเติมพลังแห่งวัฒนธรรมแห่งความกลัว ("สิ่งเลวร้าย" จะเกิดขึ้นรอด 2012.com )

1
หึ สิ่งที่ดี. และคุณจะสังเกตเห็นว่าฉันพยายามเท่าที่จะทำได้เพื่อหลีกเลี่ยงสิ่งนั้น ;-) ฉันแค่อธิบายสิ่งที่ฉันทำปล่อยให้การวิเคราะห์และการยอมรับเป็นตัวเลือกฟรีสำหรับผู้อ่าน แต่ฉันต้องการลองและละลายตำนานนี้ว่าพีซีของคุณจะระเบิดในหน้าถ้าคุณปิดการใช้งาน pagefile

ฉันใช้แลปท็อปที่ใช้ Vista 32 บิตพร้อม RAM 4GB (Microsoft ตัดสินใจอย่างเต็มใจที่จะทำให้ RAM จริงไม่สามารถใช้งานได้แม้ว่าจะใช้ MS-DOS มาหลายวัน บริษัท ก็รู้วิธีที่จะจัดการกับหน่วยความจำมากกว่าจำนวนบิตใน ระบบ) โดยไม่มีไฟล์เพจ ไม่มีปัญหา. ในบางครั้งอินสแตนซ์ที่แยกจากกันของ Firefox, MSN Messager และแอพอื่น ๆ สองสามอันจะเข้าสู่ขีด จำกัด ของหน่วยความจำหลังจากที่แอพเพิ่งจะพังและหายไป เหตุผลเดียวที่ฉันคิดว่าจะเปลี่ยนไฟล์เพจให้เป็น Grand Grand Theft Auto (หน่วยความจำและหมูมากมาย)
PP

4

ฉันเชื่อว่าหากคุณไม่มี pagefile ดังนั้นในกรณีของ BSOD Windows จะไม่สามารถเขียน minidump ได้ ซึ่งหมายความว่าคุณจะไม่สามารถวิเคราะห์ปัญหาโดยใช้เครื่องมือที่เหมาะสม

สิ่งนี้อาจไม่รบกวนคุณหากคุณไม่ได้รับ BSOD และคุณสามารถสร้าง pagefile ใหม่ได้เร็วพอ แต่ทำไมไม่เตรียมตัว?


มันเป็นความจริงแค่ไหน .. บทความใด ๆ ที่สนับสนุน?
Pacerier

4

เหตุผลที่ดีที่สุดที่ฉันพบคือ pagefile อนุญาตให้ Windows ใช้ RAM จริงสำหรับดิสก์แคชซึ่งอาจเป็นการใช้งานที่ดีกว่าหน้าเพจหน่วยความจำที่ไม่ค่อยได้ใช้ Mark Russinovich มีบทความที่ยอดเยี่ยมเกี่ยวกับเรื่องนี้ผลักข้อ จำกัด ของ Windows: หน่วยความจำเสมือนซึ่งพูดว่า:

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


3

ฉันใช้ Windows XP พร้อม RAM ขนาด 4GB (ใช้งานได้ 3.5GB) ฉันต้องเรียกใช้ Visual Studio 2008 ซึ่งต้องใช้หน่วยความจำจำนวนมาก ฉันมักจะเปิดอินสแตนซ์ 3 ถึง 4 ตัวแต่ละหน่วยมีหน่วยความจำ 500MB ขึ้นไป

ฉันรำคาญมากกับสิ่งนี้เพราะเมื่อใดก็ตามที่ฉันต้องการปิดอินสแตนซ์ Visual Studio ทั้งหมดอย่างรวดเร็ว Windows จะใช้เวลาตลอดไปในการปิดอินสแตนซ์ ใช้เวลา 3 นาทีขึ้นไป ฉันรู้ว่าสิ่งที่เกิดขึ้นคืออินสแตนซ์ของ Visual Studio นั้นได้รับการทำเพจออกจาก RAM และไปยังเพจไฟล์แม้ว่าจะมีหน่วยความจำมากมาย เมื่อปิดแอปพลิเคชันมันจะโหลดข้อมูลที่เพจทั้งหมดกลับสู่ RAM จากนั้นปิดระบบ โดยพื้นฐานแล้วมันจะคัดลอกข้อมูล 2GB จากดิสก์ไปยังหน่วยความจำก่อนที่จะปิดอินสแตนซ์

หลังจากที่ฉันปิดใช้งานการเพจฉันสังเกตเห็นการเพิ่มประสิทธิภาพขนาดใหญ่เมื่อปิดอินสแตนซ์ของ Visual Studio หลายอินสแตนซ์ ใช้เวลา CPU สูงสุด 100% ในเวลาไม่กี่วินาทีจากนั้นจะหายไป การปิดระบบ Windows ทำได้ในเวลาไม่กี่นาทีแทนที่จะเป็นหลายนาที

อย่างไรก็ตามฉันไม่ได้สังเกตเห็นการเพิ่มประสิทธิภาพใด ๆ เมื่อเริ่มต้นแอปพลิเคชันซึ่งสมเหตุสมผลเนื่องจากข้อมูลยังคงต้องอ่านจากดิสก์เมื่อเริ่มต้น นอกจากนี้ฉันรู้สึกว่าโดยทั่วไปแล้วสิ่งต่าง ๆ ก็คือปลากะพงที่มีการปิดเพจ

นอกจากนี้ฉันเพิ่งพบปัญหา crashing โปรแกรมเนื่องจากหน่วยความจำไม่เพียงพอเพียงไม่กี่ครั้งต่อปี โดยปกติถ้าฉันเปิดโปรแกรมมากเกินไปหรือโปรแกรมไปที่ถั่วและเริ่มจัดสรรหน่วยความจำอย่างบ้าคลั่ง

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


นี่คือคำตอบที่ดีที่สุดสำหรับผู้ใช้ Visual Studio ตอนนี้ดีขึ้นมากโดยไม่มีไฟล์เพจจิ้ง
79E09796

ฉันทำเช่นเดียวกันสำหรับตัวเอง ใส่ RAM 8 GB ลงใน PC และปิดการใช้งาน pagefile ตอนนี้ของ Windows ใช้งานของฉัน 3.5+ GB หรือแรมเมื่อรัน VS แต่ก็ทำงานที่ยอดเยี่ยม :)
Anirudha Gupta

2

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

แม้ว่าจะมี RAM ขนาด 4GB คุณก็อาจเก็บทุกอย่างไว้ในหน่วยความจำไม่เพียงพอ ไม่มีอะไรใน Task Manager ที่จะเปิดเผยสิ่งนี้ เมื่อทราบสิ่งนี้ผู้ออกแบบ Windows จึงสร้างระบบที่รหัสที่สามารถนำมาใช้งานได้จะถูกนำไปไว้ในหน่วยความจำเฉพาะเมื่อมีความจำเป็นและจะคงไว้ให้นานที่สุด หากระบบพบการใช้งานที่ดีกว่าสำหรับหน่วยความจำดังนั้นการใช้งานจะถูกกำหนดใหม่ Microsoft ใช้ระบบนี้มาตั้งแต่ NT3.1 ซึ่งเปิดตัวในปี 1993 มันถูกใช้เป็นประจำในระบบขนาดใหญ่นับตั้งแต่ทศวรรษ 1960

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


1
ประโยคแรกของคุณฟังดูดี แต่คำตอบที่เหลือก็เป็นแบบเดิม "คุณคิดว่าคุณมี RAM เพียงพอ แต่คุณไม่ได้โต้แย้ง" ฉันคิดว่าสิ่งที่คุณพูดโดยทั่วไปคือในการกำหนดว่าฉันต้องใช้ RAM เท่าไรฉันไม่ได้คิดเป็นเพียงข้อมูลเท่านั้น นั่นเป็นจุดที่ถูกต้องโดยทั่วไป แต่ไม่ตอบคำถามนี้ ดูบิตที่เริ่มต้นด้วยถ้าฉันมี RAM จริง x MB และ pagefile y MB ... นอกจากนี้ฉันไม่เข้าใจว่าการขาด pagefile อาจทำให้ Windows ไปยังหน้าได้อย่างไร
EMP

1
คุณเพิ่งชี้ว่าระบบได้ถูกใช้มาตั้งแต่ปี 1993 คุณรู้หรือไม่ว่ามีหน่วยความจำเหลืออยู่เท่าไรเมื่อเทียบกับตอนนี้? เรากำลังพูด 2-4MB เทียบกับ 2-4GB นั่นเพิ่มขึ้น 1,000 เท่า ในเวลาเดียวกันฮาร์ดดิสก์ยังไม่ได้เร่ง 1000x ดังนั้นการเพจ 200MB จาก RAM ไปยังดิสก์จากนั้นย้อนกลับเป็นค่าใช้จ่ายจริง ๆ ! การเพจ 200KB นั้นถูกกว่ามากในปี 1993 กว่าการเพจ 200MB ในขณะนี้
Mas

@Mas: มี SSD อยู่ในขณะนี้และมีหน่วยความจำเพียงพอที่จะปิดเพจจิ้ง (ถ้าคุณแน่ใจว่าคุณไม่เคยเติมเต็ม)
Tamara Wijsman

1

หากหน่วยความจำของคุณมีโปรแกรมอย่างน้อยหนึ่งโปรแกรมที่ร้องขอหน่วยความจำอาจมีปัญหาขัดข้องกะทันหัน

ความเสี่ยงนั้นจะมีมากกว่าผลการดำเนินงานที่คุณอาจได้รับ


ที่กล่าวว่าหากคุณมั่นใจตามที่คำถามของคุณแนะนำไว้ไม่น่ามีปัญหาอะไร ฉันยังสงสัยว่าการไม่มีชุดไฟล์เพจจะทำให้คุณไม่จำศีล
RJFalconer

ไม่เป็นไร - มันจะไม่เกิน เราสมมุติว่าที่นี่ฉันมีแรมเพียงพอ โดยวิธีการฉันไม่คิดว่า Windows จะผิดพลาดด้วยหน้าจอสีน้ำเงินเว้นแต่มี RAM น้อยมากที่ระบบปฏิบัติการของตัวเองไม่สามารถพอดีกับมัน ฉันไม่เคยเห็นจริง ๆ ว่าเกิดขึ้นในทางปฏิบัติ แต่ใช่ฉันคิดว่าถ้าคุณพยายามเรียกใช้ XP บน RAM ขนาด 16MB อาจเป็นไปได้
EMP

ใช่คุณจะไม่หน้าจอสีน้ำเงินคุณจะได้รับข้อผิดพลาดหน่วยความจำไม่เพียงพอ
salmonmoose

1

คำแนะนำของฉันคือการเก็บไฟล์หน้า แต่แก้ไขด้วยตนเองให้มีขนาดเล็กเช่น 128MB บนดิสก์ระบบ

เหตุผลคือสิ่งที่ใช้งานได้จริง: windows คาดหวังว่าจะมีไฟล์ swap และส่วนใหญ่จะสร้างการจัดการอัตโนมัติชั่วคราวหากไม่พบจึงไม่ทำให้การใช้งานง่ายขึ้น

นอกจากนี้มันจะล้มเหลวอย่างเงียบ ๆ หรือทำงานผิดปกติในการดำเนินการบางอย่างเช่น BSODing, เคาน์เตอร์วัดประสิทธิภาพ, หยุดชั่วคราว / ดำเนินการต่อ / จำศีลและอย่างใดเสถียรภาพของระบบได้รับความเดือดร้อน ทั้งหมดนี้ขึ้นอยู่กับประสบการณ์ของฉันและสิ่งเหล่านี้ก็หายไปพร้อมกับหน้าไฟล์ขนาดเล็ก

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

(ฉันยังไม่ชอบ superfetch มากและค่อนข้างปล่อยให้หน่วยความจำว่างสำหรับเอฟเฟ็กต์แคช)


"(ฉันยังไม่ชอบ superfetch มากและค่อนข้างปล่อยให้หน่วยความจำว่างสำหรับเอฟเฟ็กต์แคช)" สิ่งนี้สมเหตุสมผลเล็กน้อย SuperFetch IS แคช
เจมี่ Hanrahan

1

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

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


0

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


ฉันไม่ต้องการให้ Windows ตัดสินสิ่งที่ฉันต้องการ ฉันไม่รังเกียจที่จะรอบางสิ่งเพื่อให้โหลด สิ่งที่ฉันเกลียดคือเมื่อฉันดึงแอปพลิเคชันออกจากการโฟกัสไปอีกระยะหนึ่งแล้วจึงนำแอปพลิเคชันนั้นกลับมาโฟกัสอีกครั้งฉันต้องรอให้ Windows โหลดแอปพลิเคชันจากดิสก์กลับเข้าไปในหน่วยความจำ นี่เป็นสิ่งที่เห็นได้ชัดเจนมากสำหรับแอพพลิเคชั่นที่ใช้ RAM มาก ฉันพบว่าพฤติกรรมนี้ดีขึ้นใน Windows 7
Mas

@Mas: นี่เป็นพฤติกรรมปกติและจะไม่สนใจถ้า SuperFetch ไม่อยู่ที่นั่น และคุณสามารถตัดสินใจปิดการใช้งาน SuperFetch ไม่น้อยไปกว่านี้ได้ แต่นั่นจะไม่ทำให้การโหลดแอปพลิเคชั่นที่ไม่ใช้งานช้าลงในหน่วยความจำ หากสังเกตเห็นได้ชัดเจนคุณแน่ใจหรือไม่ว่าดิสก์ของคุณยังอยู่ในสภาพดี?
Tamara Wijsman

ประเด็นของฉันคือฉันต้องการให้แอปพลิเคชันของฉันอยู่ในหน่วยความจำพร้อมที่จะไปแทนที่จะให้พวกเขาสลับกับสิ่งที่ Super-Fetch คิดว่าฉันอาจต้องการ บ่อยครั้งที่เรียกใช้อินสแตนซ์ต่าง ๆ ของ Visual Studio อาจใช้เวลาค่อนข้างนานเพื่อให้โหลดอินสแตนซ์เหล่านี้กลับเข้าสู่หน่วยความจำ
Mas

@Mas: พฤติกรรมที่คุณอธิบายไม่ใช่สิ่งที่ฉันเห็นในคอมพิวเตอร์หลายเครื่องและ SuperFetch ไม่ได้ทำตามที่คุณอธิบาย ตามที่อธิบายไว้ในบทความ Coding Horror เกี่ยวกับ SuperFetch "หน่วยความจำแคชว่างเปล่าสูญเสียหน่วยความจำแคช" นอกจากนี้คุณไม่จำเป็นต้องเรียกใช้ Visual Studio หลายอินสแตนซ์เนื่องจากคุณสามารถมีหลายไฟล์ในหลายโครงการในโซลูชันเดียว หากคุณกำลังทำงานกับโซลูชันหลายตัวคุณอาจต้องพิจารณาเปลี่ยนลำดับชั้นของโครงการเนื่องจากไม่ใช่วิธีการทำงานที่แนะนำ
Tamara Wijsman

และกลับไปที่พื้นฐานหลักของชีวิตการทำงานของคุณ: การเข้ารหัสสยองขวัญบทความเกี่ยวกับแบบมัลติทาสกิ้ตำนาน
Tamara Wijsman

0

หากคำถามของคุณคือ:

สมมติว่าฉันมี RAM จริงเพียงพอสำหรับทุกสิ่งที่ฉันทำและ

  • ฉันเคยทำงานเล็ก ๆ น้อย ๆ ที่ไม่ได้ จำกัด เฉพาะการเข้าถึงไฟล์

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

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

มีเหตุผลใดที่ฉันไม่ควรปิดการใช้งาน pagefile?

และคุณตอบว่าใช่แล้วมันก็โอเค

สภาพแวดล้อมแบบฝังอาจเป็นจุดที่มีโอกาสสูงที่สุดในการใช้เช่นการติดตั้งระบบลงทะเบียนเงินสด


0

คำตอบง่ายๆคือ windows จะแย่มากถ้าหน่วยความจำไม่เพียงพอ

ทุกอย่างช้าลงอย่างเจ็บปวด

แพคเกจซอฟต์แวร์จำนวนมากมีการรั่วไหลของหน่วยความจำที่ช้ากิน RAM ของคุณ

Plus windows ใช้ RAM ของคุณบางส่วนเป็นแคชในฮาร์ดไดรฟ์ของคุณ

ถ้าคุณไม่มีแรมอย่างแท้จริงมากกว่าที่คุณต้องการในที่สุดก็จะเป็นปัญหา


-1

แฟ้มเพจ

ฉันรัน 32 บิต XP พร้อมหน่วยความจำ 4 GB (ฉันรู้ว่า XP เห็นเพียง 3GB เท่านั้น แต่มันอินเตอร์ลีฟและเร็วมาก) และต้องการให้คะแนนสองจุด:

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

หากคุณใช้ XP 32 บิตและมีหน่วยความจำ 4GB ลองการทดลองนี้: ปิด pagefile รีสตาร์ท XP ลบไฟล์เพจ เรียกใช้งานโปรเจ็กต์สองสามอย่าง Word, Excel, Chrome, IE Ex, ดูภาพยนตร์, สตรีมเพลงหรือทีวี ทั้งหมดควรทำงานได้ดี เปิด pagefile อีกครั้งคราวนี้ด้วยขนาดที่เล็กจริงๆพูดได้ 25 MB รีสตาร์ท XP เรียกใช้งานโปรเจ็กต์สองสามอย่าง Word, Excel, Chrome, IE Ex, ดูภาพยนตร์, สตรีมเพลงหรือทีวี คุณจะได้รับข้อความว่าหน่วยความจำเสมือนของคุณใกล้หมด นี่เป็นการพิสูจน์ว่า XP ใช้ pagefile แม้ว่ามันจะไม่จำเป็นก็ตาม ตรวจสอบแท็บประสิทธิภาพของตัวจัดการงาน (alt ctrl del) จุดสูงสุดจะต่ำกว่าหน่วยความจำทางกายภาพทั้งหมดเหตุใด XP จึงใช้ pagefile และทำไม XP จึงคิดว่าคุณมีหน่วยความจำไม่เพียงพอ

pagefile นั้นผิดปกติตั้งแต่สมัยของ DOS และ Windows 98 หากคุณมีหน่วยความจำเพียงพอให้กำจัดมันออกไป


4
การใช้ pagefile ไม่ได้ปิดการใช้งาน RAM เลย ในขณะที่แอพอาจไม่ใช้เกิน RAM (และแอพ 32 บิตส่วนใหญ่ไม่ทราบที่อยู่ขนาดใหญ่) แต่ก็ช่วยให้ Windows สามารถแคชสิ่งต่าง ๆ ลงในดิสก์ได้ หากคุณปล่อยให้กระบวนการไม่ทำงานนั่นจะถูกเขียนไปยัง pagefile เพื่อเพิ่มหน่วยความจำเพิ่มเติมสำหรับกระบวนการที่คุณใช้งานจริง บางครั้งการแคชอาจไม่เหมาะสม แต่นั่นเป็นทฤษฎีของมัน ฉันขอแนะนำให้คุณค้นหาเอกสารทางเทคนิคเกี่ยวกับวิธีการทำงานของไฟล์เพจและสิ่งที่พวกเขาทำ
ssube

1
เดวิดอ่าน: คุณกำลังสับสนขีด จำกัด การกำหนดที่อยู่เสมือนและทางกายภาพ 32-bit XP ของคุณสามารถระบุพื้นที่แอดเดรสเสมือนได้มากกว่า 4 GB เพียง 4 GB ต่อกระบวนการ แต่คุณสามารถมีได้หลายกระบวนการ การวิเคราะห์ของคุณที่ "XP ใช้ pagefile แม้ในขณะที่ไม่จำเป็นต้อง" ก็มีข้อบกพร่อง ความจริงก็คือ XP ใช้การกำหนดที่อยู่เสมือนตลอดเวลา แต่นั่นไม่ได้หมายความว่ามันจะใช้ pagefile ตลอดเวลา pagefile อนุญาตให้มีพื้นที่ที่อยู่เสมือนมากขึ้นในครั้งเดียว หากคุณไม่มีและคุณต้องการโปรแกรมจะหยุดทำงาน
เจมี่ Hanrahan
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.