nếu nó giúp, Resource Monitor mô tả tất cả các RAM khác là "Chờ"
RAM "chờ" là sử dụng. Nó đang được sử dụng làm bộ đệm trang (nó giữ các trang bị mất gần đây từ tất cả các bộ làm việc của quy trình; tức là lỗi trang có thể được khắc phục mà không cần vào đĩa) và cũng để lưu trữ bộ đệm chủ động của SuperFetch.
Nó được coi là "khả dụng" vì các trang ở chế độ chờ không phải ghi vào đĩa trước khi chúng có thể được gán cho một số mục đích sử dụng khác. Chẳng hạn như khi một quá trình chạm một lỗi trang mà không cần đọc từ đĩa, mới trang vật lý (s) phải được phân bổ cho các quá trình đó, và nếu cần thiết này có thể được lấy từ danh sách chờ. (Đây không phải là lựa chọn đầu tiên để tìm các trang cho mục đích này, đó sẽ là miễn phí và sau đó là danh sách trang không.)
Nói cách khác, hệ thống của bạn đang hoạt động như bình thường.
Bạn có thể buộc hệ thống của mình nhận được nhiều RAM hơn vào trạng thái "đang sử dụng" một cách dễ dàng bằng công cụ dòng lệnh testlimit
, một trong những công cụ được sử dụng trong các thử nghiệm trong Windows Internals . Nó không phải là một phần của các công cụ hệ thống thông thường nhưng được liên kết với chúng; tìm nó ở đây tại trang web sysiternals. Tải xuống là một tệp zip chứa hai phiên bản, testlimit.exe và testlimit64.exe. Cả hai đều được liên kết nhận biết địa chỉ lớn, vì vậy phiên bản 32 bit sẽ có thể phân bổ tối đa 3 GiB trên máy 32 bit được khởi động với / 3GB, tối đa 4 GiB trên máy 64 bit.
c:\> testlimit -?
giúp đỡ
c:\> testlimit -d 4 -c 512
sẽ cố gắng phân bổ 2 GiB không gian địa chỉ ảo riêng tư theo quy trình trong 512 phân bổ của 4 MiB mỗi lần. Điều này sẽ hoạt động tốt trên máy 64 bit. Trên máy 32 bit không khởi động với / 3GB (hầu hết là không), nó có thể bị lỗi sớm hơn một chút vì đã có một vài MiB của công cụ trong quá trình (như chính chương trình, tất cả các DLL, v.v.), vì vậy không có đủ 2 GiB để chương trình phân bổ.
Trong cả hai trường hợp, sẽ có giảm RAM "khả dụng" và tăng RAM "Đang sử dụng", nhưng không nhất thiết phải có giá trị 2 GiB vì không có gì đảm bảo rằng HĐH sẽ để cả 2 GiB trong bộ làm việc riêng tư của quy trình. Ngay cả khi nó làm điều đó trong thời gian ngắn, bạn có thể thấy bộ quy trình làm việc giảm sau đó khi HĐH quyết định "hm, bạn không thực sự làm gì với nó, các quy trình khác cần nhiều hơn" và bỏ qua nó.
Tăng kích thước của "khối" phân bổ quá nhiều, giảm số lượng khối tương ứng, và nó có thể sẽ thất bại sớm hơn vì mỗi phân bổ phải gần như liền kề nhau. ví dụ: cố gắng tìm bảy khối 512 MiB trong không gian địa chỉ 4 GiB và bạn có thể sẽ thất bại.
Nếu bạn sử dụng tùy chọn l (eak) thay vì d (irty), chương trình sẽ phân bổ không gian ảo nhưng sẽ không bao giờ tham chiếu đến nó. Điều này sẽ không dẫn đến bất kỳ sự sụt giảm đáng kể nào về RAM "có sẵn".
(Tùy chọn d (irty) lấy tên từ "bit trang bẩn" trong mục nhập bảng trang x86 / x64, được đặt khi trang ảo tương ứng được truy cập bằng toán hạng kiểu "sửa đổi", nghĩa là nội dung của trang có đã được thay đổi. Đây là dấu hiệu của Windows rằng, nếu trang phải được gỡ bỏ khỏi bộ làm việc của quy trình, nội dung của nó phải được lưu ở đâu đó trước khi trang có thể được sử dụng cho mục đích khác. Các trang có bit "bẩn" được đặt "danh sách trang đã sửa đổi" ngay sau khi bị trục xuất, từ đó, Windows ghi chúng vào các cửa hàng sao lưu tương ứng của chúng.)
Bạn sẽ cần có đủ "cam kết" có sẵn để các thử nghiệm này hoạt động như được mô tả ở trên (ngay cả đối với tùy chọn l (eak), mặc dù tùy chọn này không sử dụng bất kỳ lượng RAM đáng kể nào). Cụ thể, "giới hạn cam kết" của bạn phải cao hơn ít nhất 2 GiB (hoặc tuy nhiên bạn đang phân bổ nhiều hơn) so với "phí cam kết" trước khi bắt đầu thử nghiệm. Lưu ý rằng điều này áp dụng ngay cả khi bạn đang sử dụng tùy chọn l (eak), không chỉ d (irty). Nếu bạn gặp phải giới hạn này, bạn sẽ thấy cửa sổ bật lên "hệ thống sắp hết bộ nhớ" hoặc tương tự. Tất nhiên, cách chữa trị là thêm nhiều RAM hơn và / hoặc tăng cài đặt tệp trang của bạn.