Tôi có nên tắt tập tin trao đổi nếu tôi có nhiều RAM hay tôi nên chuyển nó sang ổ RAM ảo?


97

Hãy tưởng tượng tôi có hàng tấn RAM. Giả sử 64GB. Đó là rất nhiều cho ngay cả PC chơi game. Bây giờ, vị trí mặc định của tệp trang trong Windows nằm trên ổ đĩa hệ điều hành chính, có thể là ổ cứng hoặc SSD, nói chung là nhanh hơn, nhưng vẫn không nhanh bằng RAM.

Một cái gì đó cho tôi biết rằng việc vô hiệu hóa pagefile trên ổ cứng hoặc tạo một ổ RAM ảo và để cho pagefile ở đó có thể khiến Windows chuyển tất cả bộ nhớ ảo của nó sang RAM, và do đó tăng hiệu năng của hệ thống, nhưng tôi không hiểu lắm về điều đó khu vực, do đó có thể không đúng sự thật.

Tôi đã thử cả hai, nhưng tôi không thể phân tích kết quả để đi đến kết luận chắc chắn với trình độ hiểu biết của tôi về những thứ trong bộ nhớ.

Điều này sẽ làm việc? Nếu không, tại sao?


57
Có một tệp hoán trang trên đĩa RAM không bao giờ hoàn thành bất cứ điều gì. Bạn lấy đi một lượng bộ nhớ khả dụng nhất định và thêm một lượng bộ nhớ ảo nhất định. Không tổng hợp. Chỉ cần không có tập tin phân trang.
usr

14
Thực hiện một số ý nghĩa để làm điều này trên Linux trong một số trường hợp đĩa ram lưu trữ tệp hoán đổi thực sự được nén. Xem: vi.wikipedia.org/wiki/Zram . Tuy nhiên tôi không nghĩ Windows có một tính năng như vậy.
Matt H

2
Câu trả lời là có nhưng có rất nhiều người không tin.
Mehrdad

14
@ user367257 tạo đĩa ram để lưu trữ tệp trang của bạn giống như cho bạn bè của bạn vay £ 10 để anh ta có đủ tiền cho phép bạn vay £ 10 từ anh ta. Về mặt kỹ thuật có thể là có thể nhưng tất cả những gì bạn đã hoàn thành là không cần thiết phải phức tạp hóa một hành trình đến hư không.
Rob Moir

2
Tôi sẽ (và làm) chỉ tắt nó cho một ổ SSD, vì bạn chỉ nhận được rất nhiều ghi (ngay cả khi bây giờ rất nhiều), với 6GB. Nó hoạt động tốt.
Ry-

Câu trả lời:


134

Cho dù bạn có bao nhiêu RAM, bạn muốn hệ thống có thể sử dụng nó một cách hiệu quả. Không có tệp hoán trang nào buộc hệ điều hành sử dụng RAM không hiệu quả vì hai lý do. Đầu tiên, nó không thể khiến các trang bị loại bỏ, ngay cả khi chúng không được truy cập hoặc sửa đổi trong một thời gian rất dài, điều này buộc bộ đệm đĩa phải nhỏ hơn. Thứ hai, nó phải dự trữ RAM vật lý để phân bổ lại mà rất khó có thể yêu cầu nó (ví dụ: ánh xạ tệp riêng tư, có thể sửa đổi), dẫn đến trường hợp bạn có thể có nhiều RAM vật lý miễn phí và phân bổ bị từ chối tránh tình trạng thừa.

Ví dụ, hãy xem xét, nếu một chương trình tạo ánh xạ bộ nhớ riêng, có thể ghi của tệp 4GB. HĐH phải dự trữ 4GB RAM cho ánh xạ này, bởi vì chương trình có thể sửa đổi một cách có thể hiểu được từng byte và không có chỗ nào ngoài RAM để lưu trữ. Vì vậy, ngay lập tức, 4GB RAM về cơ bản bị lãng phí (nó có thể được sử dụng để lưu trữ các trang đĩa sạch, nhưng đó là về nó).

Bạn cần có một tệp trang nếu bạn muốn tận dụng tối đa RAM của mình, ngay cả khi nó không bao giờ được sử dụng. Nó hoạt động như một chính sách bảo hiểm cho phép hệ điều hành thực sự sử dụng RAM mà nó có, thay vì phải dự trữ nó cho những khả năng cực kỳ khó xảy ra.

Những người thiết kế hành vi của hệ điều hành của bạn không phải là những kẻ ngốc. Có một tệp hoán trang cung cấp cho hệ điều hành nhiều lựa chọn hơn và nó sẽ không tạo ra các tệp xấu.

Không có điểm nào trong việc cố gắng đặt một tệp hoán trang vào RAM. Và nếu bạn có nhiều RAM, tệp hoán trang rất khó có thể được sử dụng (chỉ cần có ở đó) vì vậy nó không đặc biệt quan trọng là thiết bị được bật nhanh như thế nào.


9
Tôi đã mâu thuẫn với downvote. Nhưng theo nhận xét cuối cùng của bạn: Tôi chạy 2 máy khác nhau với sự hoán đổi. Sẽ hoàn toàn ổn nếu bạn biết chính xác máy sẽ được sử dụng như thế nào.
spudone

6
Tôi nghi ngờ tệp trang trong một ramdrive bắt đầu như một "cách giải quyết" hàng hóa vì thực tế là một số phần mềm sẽ từ chối khởi động nếu phát hiện không có tệp trang. (Tôi đã được bảo rằng các công cụ đồ họa / video của Adobe làm điều này.)
Dan Neely

8
@DavidSchwartz Thông tin bạn cung cấp là chính xác về mặt kỹ thuật và đó là thông tin tốt để biết. Nhưng kết luận mà bạn đưa ra là bạn phải luôn có một tệp trang bất kể bạn có bao nhiêu RAM là không chính xác và tôi khẳng định rằng đây không phải là câu trả lời được chấp nhận.
Jason Wheeler

5
Tôi chỉ không thích nghe rằng "các trang web là ma thuật nên đừng tắt chúng hoặc bạn sẽ xin lỗi" khi tôi biết rằng trong nhiều trường hợp phổ biến bạn có thể tắt chúng và thấy an toàn về hiệu suất vì bạn không còn tăng I / O đĩa 100% hoặc cao hơn bất cứ khi nào MMS muốn làm gì đó. Tất cả những gì tôi muốn nghe từ những người ở phía bên kia của cuộc tranh luận này là "vâng, có những trường hợp bạn có thể tắt chúng và giảm I / O đĩa có thể dẫn đến đập". Tôi không nói rằng các trang web luôn xấu, có thể bạn có thể nói rằng chúng không phải lúc nào cũng cần thiết.
Fred Hamilton

5
Tôi nhận ra điều khiến tôi lo lắng về tất cả những điều này là một bên dường như đang nói "pagefiles không bao giờ làm gì ngoài việc tốt" và bên còn lại là "pagefiles là khủng khiếp" và sau đó mọi người bị mắc kẹt ở bên này hay bên kia. "Sự thật" là trong một số trường hợp, chúng rất hữu ích và thậm chí ngăn ngừa sự cố và trong các trường hợp khác, chúng không cần thiết và thực sự có thể làm giảm hiệu suất. Tôi hài lòng với điều đó như tuyên bố cuối cùng của tôi bất kể. Sống lâu và thịnh vượng, @David Schwartz.
Fred Hamilton

32

Bạn hoàn toàn chính xác trong giả định của bạn.

Các thuật toán quản lý bộ nhớ rất phức tạp và bằng mọi cách không hoàn hảo. Vì vậy, trao đổi xảy ra ngay cả khi có nhiều RAM dự phòng. Trên một số hệ thống, như Linux, bạn có thể kiểm soát swappiness , trên các hệ thống khác mà bạn không thể. Bằng cách hoán đổi dữ liệu khi vẫn còn nhiều RAM, hệ thống theo cách riêng của nó chuẩn bị cho tình huống khi nó có thể hết RAM.

Vì vậy, vô hiệu hóa chức năng tráo đổi có thể giúp bạn cải thiện hiệu suất vì bạn sẽ chỉ sử dụng RAM nhanh hơn như bạn đã nói.

Một điều cần xem xét (và bạn đã đề cập đến nó) - bạn cần có đủ RAM để chứa tất cả các chương trình bạn đang thực hiện, nếu không bạn có nguy cơ hết bộ nhớ . Trong trường hợp này, hiệu suất sẽ giảm, một số quy trình có thể bị HĐH chấm dứt và hệ thống có thể gặp sự cố / đóng băng. (đọc thêm về nó ở đây )

Trên một số máy, đặc biệt là các máy giữ tệp hoán đổi trên ổ cứng không phải SSD, hiệu ứng từ việc vô hiệu hóa trao đổi là rất đáng chú ý. Trên những người khác nó không quá rõ ràng. Nhưng ngay cả khi bạn không nhận được sự cải thiện rõ ràng, hãy nghĩ về nó theo một cách khác, bằng cách vô hiệu hóa việc hoán đổi, bạn sẽ tiết kiệm cho mình một số dung lượng đĩa trên ổ SSD.

Bằng cách vô hiệu hóa trao đổi, bạn cũng sẽ ngăn các thuật toán bộ nhớ thực hiện các thao tác không cần thiết - chuyển dữ liệu từ RAM sang trao đổi và ngược lại - trong trường hợp SSD, điều này sẽ ngăn ngừa sự hao mòn quá mức. Và trong mọi trường hợp, điều này sẽ cải thiện hiệu suất bằng cách loại bỏ các hoạt động không cần thiết.

Ngoài ra, đọc:


2
@ChrisH Bạn cũng có thể không tải được cơ sở dữ liệu sql vào trình xử lý văn bản, vì chúng chạy hoàn toàn trong RAM :-)
TylerH

9
Câu trả lời này không chính xác và chứa nhiều thông tin sai lệch. Nhưng cách đơn giản để xem tại sao nó sai là thế này - những người thiết kế hành vi bộ nhớ của hệ điều hành của bạn có lẽ là một số người thông minh nhất trên thế giới. Tại sao họ sẽ thiết kế một hệ thống cung cấp cho nó nhiều tùy chọn hơn (tùy chọn để trao đổi nếu và chỉ khi nó nghĩ rằng đó là tốt nhất) sẽ làm cho hiệu suất của nó tồi tệ hơn? Chỉ có một thằng ngốc mới thiết kế một hệ thống như thế.
David Schwartz

17
@DavidSchwartz, tôi không thấy thực tế là những người phát triển thuật toán quản lý bộ nhớ là thông minh, tạo ra bất kỳ sự khác biệt nào so với chủ đề ban đầu. OP đã hỏi liệu việc vô hiệu hóa trao đổi có thể cải thiện hiệu suất hay không và tôi đã giải thích rằng nó có thể, trong một số điều kiện nhất định và có thể dẫn đến các vấn đề trong các điều kiện khác. Trả lời câu hỏi của bạn về lý do tại sao (?) - Tôi có thể nói, bởi vì các thuật toán không hoàn hảo và người dùng có thể tinh chỉnh chúng. Đây là lý do tại sao có một tham số swappiness trong Linux và đây là lý do tại sao việc vô hiệu hóa trao đổi là hoàn toàn có thể.
Art Gertner

11
@smc Không có gì bất thường về trường hợp sử dụng của OP. Khái niệm rằng các hệ điều hành không được điều chỉnh đúng cho các trường hợp sử dụng tiêu chuẩn không có thật là hoàn toàn vô nghĩa. (Xem câu trả lời của tôi để biết thêm về lý do tại sao bạn không muốn làm điều này.)
David Schwartz

4
Giả định rằng một thuật toán nhất định sẽ luôn đưa ra quyết định mong muốn cho người dùng là không đúng sự thật. Họ đưa ra quyết định dựa trên một tham số đã đặt mà các lập trình viên đã quyết định là quan trọng. Điều này cũng có thể xảy ra mâu thuẫn trực tiếp với những gì người dùng cần phải xảy ra.
Anaksunaman

14

Bạn có thể vô hiệu hóa một cách an toàn pagefile?

Nếu bạn hết bộ nhớ trống, bao gồm cả bộ nhớ ảo, hệ thống không thể tiếp tục đảm bảo thực thi xác định và tự kết thúc. Trước khi điều đó xảy ra, hệ thống vận hành sẽ làm nhiều việc khác như giết chết các chương trình sử dụng quá nhiều bộ nhớ. Điều tôi muốn nói là, bộ nhớ luôn hữu hạn và mọi hệ điều hành đều có thể giải quyết vấn đề này. Do đó, việc giới hạn tổng bộ nhớ khả dụng xuống 64 GB sẽ không gây hại cho Windows - nhiều hệ thống không thể vượt quá 8 GB ngay cả với tệp trang, vì với RAM 1 hoặc 2 GB, tệp trang thường nhỏ hơn 6 hoặc 7 GB. Cần lưu ý rằng miễn là bạn có quá nhiều RAM không sử dụng, thì chi phí hoạt động của hệ điều hành duy trì một trang sẽ không thể đo lường được.

Liệu nó có ý nghĩa để đặt pagefile trên một đĩa RAM?

Để tăng bộ nhớ khả dụng, hầu hết nếu không phải tất cả các hệ điều hành tiên tiến đều sử dụng một số loại tệp hoán đổi trong đó chúng lấy một số bộ nhớ trong RAM và không được truy cập trong một thời gian, hãy ghi bộ nhớ vào ổ cứng (hoán đổi hay còn gọi là pagefile ) và xóa bộ nhớ khỏi RAM để có thêm bộ nhớ nhanh hơn. Hoán đổi được sử dụng để mở rộng kích thước tối đa của bộ nhớ vượt quá kích thước của RAM có sẵn.

Do đó, sử dụng ramdisk (làm giảm bộ nhớ khả dụng theo kích thước của ramdisk) để lưu trữ tệp hoán đổi (tăng bộ nhớ khả dụng theo kích thước của tệp hoán đổi) sẽ hoạt động, nhưng sẽ không có ý nghĩa nhiều. Nó sẽ không cung cấp nhiều bộ nhớ hơn là vô hiệu hóa pagefile, tuy nhiên nó vẫn sẽ yêu cầu hệ thống chạy các thuật toán phân trang.


Nhưng trong trường hợp pagefile nằm trên ổ RAM ảo, thời gian được sử dụng để sao chép một số megabyte từ RAM sang ổ cứng ảo hoặc quay lại từ nó sẽ bị giảm. Và nếu pagefile bị vô hiệu hóa hoàn toàn, sẽ không có thời gian lãng phí cho điều đó. Điều này có đúng không?
dùng1306322

2
Chính xác. Sao chép byte từ RAM vào tệp trang nằm trên ramdisk là tệp trang nhanh nhất có thể. Nhưng không sao chép chút nào là thông minh hơn.
Peter

2
Swapfiles đang ở đó để bù đắp cho việc thiếu RAM. Nếu có nhiều RAM, không cần phải bù. Hệ điều hành của bạn vẫn sẽ sử dụng tệp hoán đổi, vì vậy, tắt nó nhanh hơn trong trường hợp đó.

6
@Mast Đó là một sự đơn giản hóa quá mức. Swapfiles cũng có mặt để cho phép sử dụng RAM hiệu quả.
David Schwartz

1
@DavidSchwartz Có lẽ, nhưng đó là lời giải thích giải thích cho tôi điều đó tốt nhất. Trong hầu hết các trường hợp, một lượng nhỏ các tập tin hoán đổi luôn luôn có lợi cho việc không trao đổi. Tuy nhiên, tôi không có tài nguyên để sao lưu.

8

Để nhắc lại những gì người khác đã nói, việc chuyển đổi sang đĩa RAM thẳng là khá vô nghĩa (trong trường hợp phổ biến nhất, xem bên dưới). Nó đạt được rằng tại một số điểm nhất định, khi hệ thống bị bỏ đói bộ nhớ trống, một số dữ liệu được chuyển từ RAM sang RAM theo cách khá kém hiệu quả.

Việc trao đổi trên ổ cứng / SSD đạt được rằng HĐH có thể xóa một số trang RAM hoàn toàn không sử dụng và sử dụng không gian trống cho ví dụ như bộ đệm của tệp hoặc bộ đệm hệ thống khác. Bạn có thể không nhận ra rằng hệ thống phân bổ ít bộ đệm RAM này vì bạn không có bộ nhớ ảo khả dụng nếu không có tệp trang; do đó, trong thực tế, bạn có thể làm giảm hiệu suất của bạn bằng cách vô hiệu hóa trao đổi.

Tuy nhiên, ổ đĩa RAM được nén dưới dạng ổ đĩa trao đổi , ổ đĩa "ZSWAP", có thể có lợi trong các trường hợp cạnh (trong đó bạn có thể chỉ cần thêm một vài MB RAM để tránh hoán đổi ổ cứng) bằng cách cải thiện hiệu quả không gian của một đoạn RAM thành mức độ nhất định.


1
+1 để đề cập đến ZSWAP. Nó thường được sử dụng trong một số nền tảng di động, cũng như được sử dụng trong OS X 10.9 (mặc dù ngoài trao đổi).
James_pic

Lưu ý rằng "đĩa RAM được nén dưới dạng ổ đĩa trao đổi" vẫn có một vấn đề là nó không làm được gì cho tất cả các "tệp hoán trang" ngoài tệp trang thực tế.
Jamie Hanrahan

5

Nếu bạn không có tệp trang, thì trong trường hợp BSOD (sự cố), Windows sẽ không thể ghi tệp kết xuất sự cố. Điều này có nghĩa là bạn sẽ không thể phân tích vấn đề bằng cách sử dụng các công cụ thích hợp.

Có tệp trang trong RAM là vô dụng, vì nó có thể bị mất trong sự cố.

Để biết thêm thông tin, hãy xem bài viết của Microsoft Tìm hiểu về Tệp kết xuất .


4

Đối với Windows, từ miệng ngựa:

Một số người cảm thấy không có tệp hoán trang dẫn đến hiệu suất tốt hơn, nhưng nói chung, có tệp hoán trang có nghĩa là Windows có thể viết các trang trong danh sách đã sửa đổi (đại diện cho các trang không được truy cập tích cực nhưng chưa được lưu vào đĩa) tệp hoán trang, do đó làm cho bộ nhớ đó khả dụng cho các mục đích hữu ích hơn (quy trình hoặc bộ đệm tệp). Vì vậy, mặc dù có thể có một số khối lượng công việc hoạt động tốt hơn mà không có tệp hoán trang, nhưng nói chung có một khối sẽ có nghĩa là bộ nhớ có thể sử dụng nhiều hơn * có sẵn cho hệ thống (đừng bận tâm rằng Windows sẽ không thể ghi các bản ghi sự cố kernel mà không có kích thước tệp hoán trang đủ lớn để chứa chúng).

https://bloss.technet.microsoft.com/markrussinovich/2008/11/17/pushing-the-limits-of-windows-virtual-memory/

  • bộ nhớ có thể sử dụng - vì vậy mặc dù điều này khuyên bạn nên có bộ nhớ ảo, nhưng nó cũng gợi ý rằng bạn cần một lượng RAM thực sự lớn để đảm bảo có lợi khi không có tệp trang / bộ nhớ ảo. Tôi có 4GB RAM 128 GB SSD không có tệp trang, nhưng tôi sử dụng nó để duyệt web và gõ tài liệu từ.

2
Từ những bài học cá nhân của tôi đã học được, và một điều tôi giảng cho tất cả nhân viên mới: Chỉ có 2 quy tắc. # 1: Không bao giờ tin tưởng Microsoft. # 2 .. bạn đã không nghe quy tắc 1, vì vậy không có quy tắc 2.
Nick

3

Không vô hiệu hóa tập tin trao đổi Nó không chỉ dành cho khi bạn hết bộ nhớ. Không có hiệu suất trực tiếp trong việc tắt nó , các cửa sổ chỉ đọc từ nó khi nó cần, nó viết cho nó mọi lúc để nó sẵn sàng bất cứ khi nào cần thiết.

Bạn có thể giảm kích thước xuống còn khoảng 2/3 kích thước bộ nhớ nếu bạn có nhiều hơn khoảng 4GB, vì nó lưu trữ hình ảnh bộ nhớ được nén. Bạn có thể đặt nó vào ổ cứng chậm hơn mà không bị truy cập bởi ổ đĩa nặng khác nếu bạn không có dung lượng trên ổ SSD. Nhưng nó có lợi khi có một nơi nào đó.

Xem câu trả lời này để biết thêm thông tin tại sao. https://superuser.com/a/286476/4236


3

Về lý thuyết, việc đưa pagefile vào RAM hoàn toàn không có ý nghĩa gì, bởi vì bạn chỉ đang làm cạn kiệt những gì bạn cho là đạt được và Windows được xây dựng dựa trên giả định rằng pagefile sẽ không được sử dụng cho các mục đích đó.

Tuy nhiên, trên thực tế, thiết kế và triết lý thiếu sót có thể biến nó thành nhân Windows, và việc quản lý bộ nhớ của Microsoft không nhất thiết phải hoàn hảo. Nhiều người đã phát hiện ra rằng việc đưa pagefile vào Ramdisk thực sự dẫn đến tăng hiệu suất , miễn là bạn có một lượng bộ nhớ kha khá.

Tôi biên soạn một bài trong đó cho thấy một bộ sưu tập của người dùng như vậy từ một đơn thread trên diễn đàn của người đã phát hiện ra rằng mặc dù có số lượng lớn RAM miễn phí, pagefile vẫn đang được sử dụng:

http://www.overclock.net/t/1193401/why-it-is-bad-to-store-the-page-file-on-a-ram-disk/290#post_23508589


Cảm ơn đã tổng hợp danh sách này. Nó sẽ giúp đưa ra một số bằng chứng cho thấy lý thuyết và thực hành khác nhau trong vấn đề này. Virtual memory − A paging file is an area on the hard disk that Windows uses as if it were RAM.Vâng, như thể: p
user1306322 7/215

kết luận này là thiếu sót. thực tế là hệ điều hành ghi mọi thứ vào pagefile mặc dù rõ ràng nó có "lượng RAM lớn" không chứng minh bất cứ điều gì về "triết lý và thiết kế thiếu sót". Điều đó có nghĩa là bạn không có đủ thông tin để đánh giá đúng các quyết định của HĐH. Chỉ dành cho người mới bắt đầu, hãy xem xét trường hợp có nhiều trang sửa đổi. Họ được ghi vào trangfile và chuyển đến danh sách chờ - bây giờ chúng là một phần của "có sẵn". Bạn hiểu không? RAM có sẵn TRỞ THÀNH nội dung của nó đã được ghi vào trangfile!
Jamie Hanrahan

@JamieHanrahan: Điều đó không giải thích tại sao mọi người vẫn gặp sự cố mặc dù hiếm khi sử dụng nhiều hơn một phần RAM. Các nhận xét trong chủ đề đó bao gồm: "Tôi chưa bao giờ thực sự sử dụng hơn một nửa số đó", "Mức sử dụng tệp trang là khoảng 2,7 GB trong đó mức sử dụng RAM là 3,23 GB trong số 16 GB.", "Tôi đã tăng hiệu suất đáng kể khi sử dụng Illustrator khi Tôi đã tạo và chuyển tệp trang của mình sang RAMDisk ".
Dan W

Hầu hết những ý kiến ​​đó là do thông tin kém. Các vấn đề về hiệu năng khó có thể được giải quyết bằng cách giữ nội dung trong RAM không được truy cập thường xuyên. Pagefile không phải là tập tin duy nhất liên quan đến phân trang; có hàng trăm người khác, do đó, không chắc việc làm điều gì đó chỉ ảnh hưởng đến tệp trang (và lấy GB RAM ra khỏi phần còn lại của hệ thống, do đó làm tăng tốc độ lỗi trang) sẽ có hiệu ứng "kịch tính". Các báo cáo như vậy thường không được duy trì khi các xét nghiệm được kiểm soát thích hợp được thực hiện. Bạn có thể tìm thấy những giai thoại để ủng hộ bất kỳ niềm tin nào; Tôi thấy họ không thuyết phục.
Jamie Hanrahan

Cụ thể, yêu cầu "tệp trang đang được sử dụng" yêu cầu bằng chứng. Chỉ cần có GB nội dung trong tệp trang không chứng minh rằng tệp trang đang được sử dụng theo cách đặt nó vào đường dẫn hiệu suất quan trọng. Để đánh giá điều này, hãy tự cách ly tệp trang trên một phân vùng - hoặc ít nhất, một trang không tích cực sử dụng cho bất kỳ thứ gì khác - và sau đó bạn có thể sử dụng PerfMon trên "đĩa logic" đó để theo dõi tốc độ IO của nó. Nếu pagefile không được đọc thường xuyên thì không vấn đề gì đã được viết cho nó!
Jamie Hanrahan

2

Chuyển đổi một hệ điều hành được thiết kế rất cốt lõi để không sử dụng trao đổi khó hơn rất nhiều so với âm thanh.

Máy Mac hiện đại có phân vùng phục hồi - một phần của ổ đĩa chính với hệ điều hành bị loại bỏ có thể sửa chữa hoặc khôi phục hệ thống chính. Trong những ngày trình cài đặt DVD họ chạy một quy trình tùy chỉnh, hệ thống hiện tạo RAMdisk cho phân vùng trao đổi vì trình cài đặt không thể được đảm bảo có sẵn dung lượng đĩa làm việc. HĐH bao gồm các khung cần thiết để chạy phần mềm bảo trì đi kèm, giống hệt với các tiện ích có sẵn sau khi cài đặt. Ít hơn rất nhiều công việc cho tất cả mọi người.

Giới hạn hệ thống cho một ứng dụng tại một thời điểm có nghĩa là về cơ bản trao đổi ramdisk không bao giờ được sử dụng, nhưng HĐH hy vọng nó sẽ ở đó.


2

Nếu bạn có đủ bộ nhớ, câu trả lời sẽ là có, bạn có thể tắt trao đổi. Hoán đổi được tạo ra để khắc phục những hạn chế của RAM và để sử dụng hiệu quả hơn.

Câu hỏi bây giờ là bao nhiêu RAM là đủ RAM? Không có câu trả lời chung cho điều này và bởi các hệ thống tự nhiên đang đói trên bộ nhớ. Do đó, và trừ khi bạn đang chạy trên một môi trường rất cụ thể và có kiểm soát, đừng tắt trao đổi.

Bất kỳ loại đóng thế nào khác như đặt trao đổi trên RAM sẽ chỉ tạo thêm một lớp phức tạp và tiêu tốn bộ nhớ có thể được sử dụng trực tiếp.


2

Hệ thống của tôi có RAM 24GB, vì lý do này, tôi đã vô hiệu hóa tệp trang để tránh hao mòn ổ SSD mà không gặp vấn đề gì. Gần đây tôi đã tạo một Đĩa RAM, sử dụng 4GB Bộ nhớ của mình để lưu trữ các tệp Google Chrome Cache, để xem liệu nó có tăng hiệu suất của các trò chơi Flash Player trực tuyến và lướt web nói chung hay không. Tôi đã thấy sự gia tăng rõ rệt về hiệu suất từ ​​thí nghiệm này. Vì tôi có nhiều dung lượng trống hơn trên Đĩa RAM, tôi đã bật tệp trang của mình và đặt cả kích thước tối thiểu và tối đa thành 1GB và chuyển nó sang Đĩa RAM. Mặc dù, tôi không thể nói rằng có bất kỳ tăng hiệu suất, hệ thống của tôi dường như đang chạy ổn định hơn.


Bạn sẽ tốt hơn nhiều khi chỉ cần đặt một trang vào ổ SSD của bạn. Windows sẽ không sử dụng nó nếu không cần thiết. Đặt một pagefile trên RAMdisk là vô lý. Có, lỗi trang đối với "tệp" đó sẽ được giải quyết nhanh hơn so với khi chúng ở trên đĩa thực, nhưng bằng cách gán RAM cho RAMdisk ở vị trí đầu tiên, bạn sẽ tăng số lượng lỗi trang. Nó giống như vay tiền từ chính bạn, tính lãi cho bản thân và ném "tiền lãi" đi. Nó thậm chí không sai.
Jamie Hanrahan

1

Di chuyển tệp trang vào RAM là một khái niệm vô lý Chỉ cần tắt nó đi và bằng nhiều RAM hơn. :)

No matter how much RAM you have, you want the system to be able to use it efficiently. Having no paging file at all forces the operating system to use RAM inefficiently for two reasons. First, it can't make pages discardable, even if they haven't been either accessed or modified in a very long time, which forces the disk cache to be smaller. Second, it has to reserve physical RAM to back allocations that are very unlikely to ever require it (for example, a private, modifiable file mapping), leading to a case where you can have plenty of free physical RAM and yet allocations are refused to avoid overcommitting.

Consider, for example, if a program makes a writable, private memory mapping of a 4GB file. The OS has to reserve 4GB of RAM for this mapping, because the program could conceivably modify every byte and there's no place but RAM to store it. So immediately, 4GB of RAM is basically wasted (it can be used to cache clean disk pages, but that's about it).

Quản lý bộ nhớ được xử lý bởi CPU và việc bật hoặc tắt pagefile không làm cho một iota khác biệt với cách xử lý các trang. Nó trong suốt với Windows.

Ưu tiên trang không thay đổi, các trang sẽ bị loại bỏ giống nhau. Các tệp trang được CPU sử dụng làm bộ lưu trữ thứ cấp chứ không phải HĐH. Không có gì nhiều hơn bộ nhớ cache cấp hai khi cấp độ một (RAM) hết.

Một ví dụ nhanh và rất bẩn:, máy của tôi có 16GB RAM và không có pagefile. 5 phút trước với 13GB ở chế độ chờ và chỉ có 2 GB miễn phí, tôi đã tải Fallout 4. Các trang ưu tiên thấp đã bị loại bỏ khi Fallout được tải.

Btw trên một lưu ý phụ, Blog Technet 2008 về việc đẩy các giới hạn bộ nhớ Windows là rất sai lệch - tôi sẽ nói đến điểm lừa dối. https://i.stack.imgur.com/wXkmi.png Tôi cũng nghi ngờ dù Mark có viết nó hay không, nhưng tôi hy vọng là không, vì nó sẽ thay đổi cách nhìn của tôi về anh ấy .....

Fwiw có những lỗ hổng trong bài viết mà tôi rất ngạc nhiên khi không ai chọn xem xét mức độ thường xuyên mà blog đó được giới thiệu

  • Pagefile và vị trí của nó được xử lý bởi Windows, việc truy cập bộ nhớ vào các vị trí đã được phân trang ra đĩa sẽ bị CPU bắt, nhưng được đưa đến hệ điều hành để lấy trang từ đĩa và tải nó vào.

Dù sao ở đây là một mô tả không quá mơ hồ:

Windows không thể đạt địa chỉ cao hơn CPU - điều đó là không thể.

Cho dù HĐH có khả năng gì thì nó vẫn bị giới hạn bởi phần cứng mà nó chạy trên .. bởi vì HĐH thực sự là chính CPU (các thanh ghi bên trong).

OK, vì vậy pagefile là một khu vực trên ổ cứng mà CPU sử dụng cho không gian địa chỉ vật lý mở rộng khi nó không thể sử dụng nhiều RAM về mặt vật lý hoặc kiến ​​trúc.

Trên kiến ​​trúc x86 32 bit được phân đoạn, ví dụ, có hai phân đoạn RAM 2 GB.

Một được phân bổ cho kernel. 2GB còn lại dành cho chế độ người dùng. Đó là tất cả RAM mà CPU có thể sử dụng với 32 chân DRAM, nhưng quá trình 32 bit có sẵn 4GB nên phải làm gì. May mắn thay, CPU có thể sử dụng AKA lưu trữ thứ cấp, ổ cứng để lưu trữ thêm 2GB trang. Bởi vì nó có các thanh ghi bên trong
Các vị trí thực tế nơi các trang ảo được tham chiếu bởi quá trình không phải được lưu trữ trong RAM. Nhưng chúng đã được lưu trữ ở đâu đó bởi CPU.

CPU không thể cung cấp tất cả RAM 4GB cho ứng dụng, nhưng nó có thể cung cấp cho 4GB địa chỉ bằng cách sử dụng ổ cứng làm bộ đệm thứ cấp (đó là tất cả các ổ cứng thực sự)

Các trang được di chuyển vào và ra khỏi RAM thông qua cơ chế phân trang bên trong của nó, nhưng điều này không giống với một trang. Phân trang luôn xảy ra ....

Điểm mấu chốt thực sự không phức tạp. Trong khoảng 15 năm trở lại đây, nhiều người dùng cuối đã có ấn tượng rằng một pagefile là một phần không thể thiếu của Hệ điều hành, không phải vậy. Nó chưa bao giờ được. Quan niệm sai lầm này một phần được thúc đẩy bởi các tập đoàn như Intel và Microsoft.

RAM là thiết bị lưu trữ nhanh, Ổ cứng là thiết bị lưu trữ chậm hơn, do đó, về cơ bản RAM là bộ đệm cấp 1, Ổ cứng là Cấp 2 (không tính đến bộ đệm CPU cho sự tương tự này). Cả hai có thể được truy cập bởi CPU.

Nếu không đủ RAM để CPU lưu trữ các trang cần thiết, ổ cứng có thể được sử dụng như một tràn. Nếu có nhiều RAM, thì PF là dự phòng.

Cho đến Core 2, bộ xử lý Intel có bus DRAM 32 chân và 32 thanh ghi có nghĩa là CPU có quyền truy cập 4GB RAM và 4GB dung lượng ổ cứng (pagefile). Đây là một giới hạn phần cứng kiến ​​trúc, không phải là giới hạn Windows.

Tổng số có sẵn cho các quy trình là 3,5 GB, vì một bảng trang chiếm 512MB. Đó là lý do tại sao 3,5 GB xuất hiện trong Windows với CPU của Intel (cho đến Core 2). Thêm một GPU và thậm chí ít hơn có sẵn.

Xeon có thể truy cập tổng cộng 32 GB RAM, 64 GB không gian vật lý có kèm theo ổ cứng (lại hiển thị trang). ( Điều này bao gồm PAE, ngoài ra còn có thêm các liên kết được thêm vào ).

nhập mô tả hình ảnh ở đây http://www.windowsdevcenter.com/pub/a/windows/2004/04/27/pagefile.html

nhập mô tả hình ảnh ở đây

nhập mô tả hình ảnh ở đây

Nguồn ảnh chụp màn hình thứ 3: Giao diện nhị phân ứng dụng System V Giao diện nhị phân Bộ xử lý kiến ​​trúc AMD64 Phiên bản 0.99.7

Tôi dự định tiếp tục cải thiện câu trả lời này và thêm tài liệu nguồn và thông tin liên quan. Tôi muốn đạt được sự cân bằng giữa không đủ thông tin và quá nhiều thông tin kỹ thuật. Gợi ý được hoan nghênh. Xin đừng downvote chỉ vì nó có thể không được viết tốt như vậy.


Bình luận không dành cho thảo luận mở rộng; cuộc trò chuyện này đã được chuyển sang trò chuyện .
DavidPostill
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.