Làm thế nào để hoán đổi hoán đổi trong bộ nhớ lại một lần nữa từ tập tin trang sang bộ nhớ vật lý trong Windows (như hoán đổi linux)


10

Có cách nào để trao đổi lại (để đặt lại tất cả dữ liệu bộ nhớ được đưa vào tệp trang (hoặc trao đổi, bất cứ thứ gì bạn thích)) trên PC Windows không?

Trên linux, người ta có thể dễ dàng thực hiện điều này với trao đổi / dev / sdaX, trong đó X là phân vùng trao đổi. Trên cửa sổ, nó dường như yêu cầu tôi khởi động lại mỗi lần ..

Lý do tôi muốn làm điều này là vì, mặc dù việc hoán đổi dữ liệu sang tệp hoán đổi cho phép tôi chơi một trò chơi ngốn tài nguyên hoàn toàn trong ram vật lý, khi tôi dừng trò chơi, tất cả các chương trình còn lại của tôi đều chạy chậm Đây là hoặc khóa học bình thường; tất cả các chương trình được đẩy vào tệp trang vì RAM của tôi quá nhỏ và tất cả bộ nhớ truy cập vào các chương trình đó sau khi chơi game bị lỗi trang cứng, với sự chậm trễ lớn và hậu quả là sự thất vọng.

Tuy nhiên, sự thất vọng đó có thể dễ dàng tránh được, bằng cách đơn giản cho phép PC sao chép tất cả dữ liệu trở lại bộ nhớ vật lý trong một phút hoặc lâu hơn, sau đó tiếp tục hoạt động trên PC hoạt động nhanh! (thay vì phải chịu đựng sự chậm chạp trong khi làm việc)

Cảm ơn trước cho bất kỳ lời khuyên về điều này!

Trân trọng


Những gì bạn muốn là một "trình ảo hóa" với nhiều bản sao Windows chạy trên nó. Bạn đình chỉ một và bỏ qua cái khác. Điều này được thực hiện khá nhiều với các hệ thống khác, nhưng tôi không chắc có một trình ảo hóa có thể loại bỏ điều này cho Windows.
Daniel R Hicks

Câu trả lời:


6

Tiếc là không có. Cách hệ thống bộ nhớ ảo Windows hoạt động, nhiều trang chỉ đơn giản là không thể được ánh xạ cho đến khi chúng bị lỗi và không thể được lưu trong bộ nhớ trừ khi chúng được ánh xạ. Vì vậy, Windows phải đợi cho đến khi các trang được truy cập.


Có lẽ một số quy trình của bên thứ ba đủ đặc quyền có thể thử và truy cập các trang đó để chúng có lỗi?
badp

Sẽ không tốt cho quá trình khác để truy cập các trang. Bạn cần chúng bị lỗi trong các quy trình cho các ứng dụng bạn đang cố gắng sử dụng.
Jamie Hanrahan

Nghĩ về nó, nó có thể được thực hiện ... sắp xếp. Bạn sẽ phải tiêm một luồng từ xa vào tiến trình đích. Chuỗi đó sau đó sẽ thực hiện VirtualQuery trên không gian địa chỉ và sau đó chỉ cần đọc mọi trang riêng tư quy trình. Tuy nhiên, không có cách nào để phân biệt giữa các trang trong RAM và sau đó được phân trang, so với các trang không bao giờ được phân trang ở vị trí đầu tiên. Cũng sẽ không có cách nào để xác định các trang mà quá trình sẽ không bao giờ cần nữa. Vì vậy, bạn sẽ phân trang trong rất nhiều thứ mà bạn không phải làm.
Jamie Hanrahan

@JamieHanrahan Nghe có vẻ như sẽ hoạt động.
David Schwartz

1

Thật không may, không có lựa chọn như vậy.

Cách duy nhất để giảm trao đổi trong Windows là tăng RAM vật lý.


Hoặc vô hiệu hóa trao đổi hoàn toàn. Không nhất thiết phải là một thứ windows, nhưng trên các máy Linux / BSD của tôi, tôi vô hiệu hóa mọi hình thức hoán đổi xoay vòng vì nó không tốt, và khi mọi thứ bắt đầu sử dụng nó, thay vì đạt đến giới hạn cứng, chúng làm chậm mọi thứ.
killermist

1
Vô hiệu hóa pagefile sẽ không vô hiệu hóa phân trang vào đĩa. Nó sẽ chỉ vô hiệu hóa trang ngoài không gian địa chỉ cam kết riêng tư. Nội dung tập tin ánh xạ bộ nhớ sẽ vẫn được phân trang vào và ra.
Jamie Hanrahan
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.