Cách sử dụng toàn bộ RAM trong Windows: các tình huống và giải pháp phổ biến nhất. Windows không thấy hết RAM

Hầu hết các chuyên gia trong lĩnh vực tối ưu hóa hệ điều hành thuộc họ Windows đều gọi một trong những vấn đề quan trọng nhất của các hệ điều hành này là không thể sử dụng toàn bộ dung lượng RAM được cài đặt trên máy tính, bất kể kiến ​​​​trúc (32 hay 64 bit). Hệ thống không nhận ra bộ nhớ vượt quá một giới hạn nhất định (thường là 4 GB trong hệ điều hành 32 bit) hoặc nhìn thấy bộ nhớ nhưng không thể hoạt động với nó. Cách sử dụng hết RAM sẽ được thảo luận bên dưới. Nhưng chúng tôi nên cảnh báo ngay cho tất cả người dùng rằng họ chỉ có thể sử dụng một số giải pháp bên dưới với mức độ nguy hiểm và rủi ro riêng.

Làm thế nào để tìm ra RAM đã sử dụng?

Và trước tiên, hãy xem cách tìm ra tổng dung lượng RAM đã cài đặt và hiện đang sử dụng. Nếu bạn nhìn vào phần thuộc tính hệ thống, được gọi thông qua menu RMB trên biểu tượng máy tính trên “Máy tính để bàn” hoặc trong “Explorer”, bạn sẽ nhận thấy ngay rằng mô tả cho biết cả toàn bộ ổ đĩa và ổ đĩa có sẵn. Tại sao kích thước có sẵn lại nhỏ hơn? Có, chỉ vì trong mọi trường hợp, hệ thống sử dụng một phần RAM cho nhu cầu riêng của nó (đối với các quy trình đảm bảo chính xác hoạt động của chính hệ điều hành).

Bạn có thể dễ dàng truy cập Trình giám sát hệ thống trong Trình quản lý tác vụ bằng cách đi tới tab Hiệu suất. Tuy nhiên, có thể xảy ra hai trường hợp không thể sử dụng toàn bộ tập đĩa:

  • hệ thống không thấy dung lượng cao hơn 4 GB;
  • tổng khối lượng được xác định nhưng không thể sử dụng được.

Hạn chế của hệ thống 32 bit

Tất nhiên, nếu một hệ điều hành có kiến ​​​​trúc 32 bit được cài đặt trên máy tính, mọi vấn đề có thể chỉ do dung lượng bit của nó, bởi vì những sửa đổi như vậy của Windows với dung lượng bộ nhớ trên 4 GB đơn giản là không “quen” với công việc. sự khởi đầu. Do đó, giải pháp đúng đắn duy nhất để khắc phục tình trạng này sẽ là thay thế phổ biến nhất hệ thống x86 (32-bit) bằng hệ thống 64-bit.

Nhưng đôi khi bạn có thể gặp trường hợp trong cùng một Windows 7 x86, bộ nhớ 8 GB hiển thị nhưng có sẵn tối đa 4 GB. Nhưng điều này chính xác là do những hạn chế mà kiến ​​trúc 32-bit hàm chứa. Tuy nhiên, tình huống có thể còn tầm thường hơn, vì không phải lúc nào bo mạch chủ cũng cấp quyền sử dụng toàn bộ dung lượng RAM. Để không thay đổi phần cứng, bạn có thể chuyển sang một số công cụ phần mềm ẩn sẽ giúp giải quyết vấn đề này, nếu không hoàn toàn thì ít nhất là một phần.

Làm cách nào để sử dụng hết RAM trong Windows của mọi phiên bản?

Vì vậy, điều đầu tiên bạn cần làm là chạy bộ cấu hình hệ thống, được gọi bằng lệnh msconfig nhưng luôn có quyền quản trị viên. Nếu không có mục nào như vậy trong bảng điều khiển "Chạy", trước tiên bạn phải kích hoạt "Trình quản lý tác vụ", sau đó, sử dụng menu tệp, thiết lập thực thi một tác vụ mới, nhập lệnh đã chỉ định và chọn hộp để tạo nhiệm vụ với quyền quản trị viên. Làm cách nào để sử dụng hết RAM, bất kể kiến ​​trúc?

Để thực hiện việc này, trong trình cấu hình, bạn nên chuyển đến tab tải xuống, nhấp vào nút tham số bổ sung và trong cửa sổ cài đặt xuất hiện, bỏ chọn tùy chọn sử dụng bộ nhớ tối đa, trường này có thể sẽ chỉ ra giá trị dưới mức đầy đủ của RAM. Bạn chỉ nên kích hoạt mục này nếu tất cả các lõi bộ xử lý được bật, khi kích thước bộ nhớ tối đa được chỉ định cho mỗi lõi.

Các thao tác trong BIOS

Bây giờ hãy xem cách sử dụng tất cả RAM (loại bỏ giới hạn) bằng cài đặt I/O chính của BIOS. Đôi khi điều này cũng hữu ích, mặc dù, có lẽ đã rõ ràng, độ bit của hệ điều hành được cài đặt cũng không được tính đến ở đây.

Trong menu phân vùng, bạn cần tìm một tham số có chứa thứ gì đó như Ánh xạ lại RAM (trên 4 Gb) hoặc Lỗ bộ nhớ và kích hoạt nó bằng cách đặt nó thành Đã bật. Nếu không có mục đó trong cài đặt, rõ ràng phiên bản BIOS không hỗ trợ thay đổi các tùy chọn đó. Tuy nhiên, bạn có thể truy cập chúng bằng cách cài đặt chương trình cơ sở cập nhật cho chính hệ thống chính. Nhưng nếu không có kiến ​​​​thức đặc biệt thì không nên tự mình làm những việc như vậy vì hậu quả có thể hoàn toàn khó lường.

Vá các tập tin hệ thống

Cuối cùng, hãy xem xét một giải pháp dành riêng cho các hệ thống có kiến ​​trúc x86. Ngay từ đầu người ta đã nói về việc sử dụng nó với sự nguy hiểm và rủi ro của riêng bạn. Để vượt qua những hạn chế và sử dụng RAM trong hệ điều hành Windows 32 bit, bạn có thể sử dụng tiện ích ReadyFor4GB, tiện ích này phù hợp cho cả trường hợp hệ thống không nhìn thấy quá 4 GB và cho các tình huống khi toàn bộ dung lượng bộ nhớ đã được xác định nhưng không thể sử dụng được.

Sau khi khởi động chương trình bằng cách chạy với tư cách quản trị viên, tệp thực thi cùng tên ở định dạng EXE từ thư mục của chính ứng dụng di động, hãy nhấn liên tục các nút Kiểm tra và Áp dụng. Sau đó, một thông báo sẽ xuất hiện trong đó bạn cần đồng ý cài đặt bản vá cho tệp ntkrnlpa.exe bằng cách nhấp vào nút thích hợp (thao tác này sẽ lưu tệp ntkr128g.exe). Bây giờ, từ cùng một thư mục, bạn nên chạy tệp tập lệnh AddBootMenu.cmd (một lần nữa, với tư cách quản trị viên), sau đó nhấn phím “Y” và “Enter”. Sau khi tập lệnh hoàn tất, tất cả những gì còn lại là đóng bảng điều khiển lệnh, thực hiện các hành động tương tự với tệp RemoveWatermarkX86.exe và khởi động lại máy tính. Nếu trong quá trình khởi động lại, menu “Trình quản lý tải xuống” xuất hiện, bạn cần chọn dòng cho hệ thống Microsoft Windows.

Một mục tương ứng sẽ xuất hiện trong cấu hình. Bạn có thể kiểm tra RAM còn trống và đã sử dụng thông qua phần thông thường của thuộc tính máy tính.

Lưu ý: nếu gặp sự cố khi cài đặt bản vá trong Windows 7, trước tiên bạn có thể phải xóa gói cập nhật hệ thống (KB) có số 3147071, 3146706 và 3153171 trong phần Chương trình và Tính năng, tìm kiếm lại các bản cập nhật và loại trừ các bản cập nhật này khỏi quá trình cài đặt danh sách.

Phần kết luận

Tôi nghĩ cách sử dụng hết RAM thì hơi rõ ràng. Vẫn cần nói thêm rằng các phương pháp được mô tả ở trên tập trung cụ thể hơn vào hệ thống 32 bit, vì trong Windows có kiến ​​​​trúc 64 bit, việc xảy ra các tình huống như vậy là rất hiếm và cài đặt mặc định thường là không cần thiết. thực hiện bất kỳ hành động bổ sung nào. Đối với vấn đề đó, để giải phóng thêm RAM, hãy xóa các mục không cần thiết khỏi phần khởi động hoặc tắt các dịch vụ và thành phần hệ thống không sử dụng.

Sau khi nâng cấp lên Windows 10, nhiều người dùng bắt đầu phàn nàn về vấn đề sử dụng RAM không đầy đủ. Ví dụ: hãy lấy trường hợp từ diễn đàn Microsoft. Khi cài đặt 6 GB RAM trong Windows 10 32, chỉ hiển thị 3,92 GB. Toàn bộ dung lượng RAM không thể truy cập được, hay nói đúng hơn là hệ thống không nhìn thấy nó. Trong một số trường hợp, việc lắp lại các dải RAM vào đúng vị trí và làm sạch các điểm tiếp xúc đã giúp giải quyết vấn đề này. Tuy nhiên, trong một số trường hợp, vấn đề này không thể giải quyết được.

Các cách cấu hình hiển thị toàn bộ RAM trên Windows 10

Nếu bạn gặp phải tình huống không có sẵn tất cả RAM trên Windows 10 và bạn chưa hoán đổi các mô-đun, bạn nên làm theo các bước sau:

  • Nhấn “Win ​​+ R” và nhập “msconfig”.
  • Cửa sổ Cấu hình hệ thống sẽ mở ra. Chuyển đến tab “Tải xuống”. Nhấp vào nút “Tùy chọn nâng cao”.

  • Một cửa sổ nhỏ sẽ mở ra. Tại đây bạn cần bỏ chọn hộp kiểm “Bộ nhớ tối đa”.

  • Sau khi lưu các thay đổi, bạn cần khởi động lại máy tính và xem dung lượng bộ nhớ đang được sử dụng.

Nếu Windows 10 không thấy đủ dung lượng RAM, bạn nên tháo các thanh RAM ra khỏi khe cắm và tráo đổi chúng. Chúng tôi cũng khuyên bạn nên làm sạch các điểm tiếp xúc của mô-đun RAM. Để làm điều này, hãy lấy một sợi dây cao su và cẩn thận lau sạch bụi bẩn khỏi các điểm tiếp xúc.

Nếu bạn chèn các mô-đun không chính xác, một bài viết sẽ xuất hiện khi PC khởi động. Bạn sẽ cần phải trả lại các mô-đun về vị trí của chúng và khởi động lại máy tính. Sau khi tải xuống Windows 10 32 bit, bạn cần tải xuống chương trình MemTest86 và kiểm tra hiệu suất của RAM.

Nếu mọi thứ đều ổn với các mô-đun, nhưng Windows không thấy hết RAM, thì có thể bạn đang sử dụng phiên bản chương trình cơ sở cũ của bo mạch chủ và cần cập nhật BIOS cũng như kiểm tra một số thông số của nó.

  • Tham số BIOS đầu tiên chịu trách nhiệm cho hoạt động ổn định của RAM là phân phối lại bộ nhớ. Trong các phiên bản chương trình cơ sở khác nhau, phần này có thể được đặt tên khác nhau (Ánh xạ lại lỗ bộ nhớ, Ánh xạ lại DRAM H/W trên 4GB, Lỗ bộ nhớ phần cứng). Do đó, cần nghiên cứu chi tiết hướng dẫn về bo mạch hoặc tìm mô tả cho phiên bản BIOS được sử dụng.

Chức năng phân phối lại bộ nhớ chuyển các khối địa chỉ được thẻ mở rộng sử dụng vào không gian địa chỉ vượt quá 4 GB. Do đó, có thể tăng dung lượng RAM (nếu không Windows10 sẽ thấy 3-3,5 GB). Để hỗ trợ đầy đủ ổ đĩa như vậy, cần sử dụng bộ xử lý 64 bit và phiên bản HĐH 64 bit (hoặc phiên bản máy chủ của hệ điều hành 32 bit cho phép mở rộng địa chỉ vật lý PAE). Nếu bạn có ít RAM hơn, hãy nhớ tắt tùy chọn này (Đã tắt), vì có thể xảy ra sự cố với RAM. Cho phép phân phối lại bộ nhớ - giá trị Đã bật.

  • Cài đặt bộ nhớ cho khẩu độ video AGP là dung lượng bộ nhớ mà hệ thống chia sẻ với bộ điều hợp video. Nó là cần thiết để hiển thị kết cấu và vẽ hình ảnh. Hệ thống có thể không sử dụng lượng bộ nhớ này nếu nó bị chặn bởi bộ điều hợp video. Chỉ có một cách để kích hoạt nó: khởi động vào BIOS, chọn kích thước AGP Aperture. Giá trị tiêu chuẩn là 32 MB, 64 MB, 128 MB và Auto. Chúng tôi xem xét dung lượng bộ nhớ của card màn hình và đặt giá trị cần thiết theo giá trị. Thường thì đây là 128 MB. Tuy nhiên, bạn có thể thử từng tùy chọn để xem cái nào mang lại kết quả tốt nhất.

Sau khi thực hiện tất cả các thay đổi đối với cài đặt BIOS, bạn cần khởi động vào Windows và kiểm tra xem toàn bộ dung lượng RAM có hiển thị hay không. Nếu hệ thống vẫn không thấy RAM, bạn nên thử lắp các module khác vào khe cắm. Có thể thanh RAM cũ đã bị hỏng hoặc bị lỗi.

Để tìm hiểu nguyên nhân hệ thống không thấy hết RAM và cách khắc phục, hãy xem video:

Quen thuộc với nhiều người dùng. Khi bạn gọi cửa sổ thuộc tính hệ thống, toàn bộ âm lượng sẽ được hiển thị, nhưng vì lý do nào đó sau đó nó được chỉ ra rằng có ít bộ nhớ khả dụng hơn một chút. Thậm chí còn tệ hơn khi người dùng biết chính xác mình đã cài đặt bao nhiêu RAM nhưng chỉ có 50% hoặc ít hơn. Tại sao điều này xảy ra và cách sử dụng lượng RAM tối đa sẽ được thảo luận thêm. Nhưng trước tiên, chúng ta hãy xem xét ngắn gọn những nguyên nhân chính dẫn đến hiện tượng này.

Tại sao không có sẵn tất cả RAM?

Vì vậy, việc hệ điều hành Windows đôi khi tạo ra các chỉ báo có giá trị rõ ràng nhỏ hơn tổng dung lượng RAM được cài đặt có thể liên quan đến một số lý do, trong đó đáng kể nhất là những lý do sau:

  • Hệ thống 32 bit được cài đặt không hỗ trợ bộ nhớ lớn hơn 4 GB;
  • tối đa không được bo mạch chủ hỗ trợ;
  • trong các tham số hệ thống có giới hạn về dung lượng RAM tối đa được sử dụng;
  • Cài đặt phân phối lại bộ nhớ được đặt không chính xác trong BIOS;
  • bộ nhớ được dành riêng một phần cho bộ điều hợp video tích hợp;
  • có quá nhiều tiến trình đang hoạt động đang chạy;
  • các dải đã cài đặt bị hỏng, hiệu suất của chúng bị suy giảm hoặc chúng được kết nối không chính xác;
  • việc sử dụng bộ nhớ bị chặn bởi virus.

Điều đáng nói ngay là các vấn đề liên quan đến phơi nhiễm virus sẽ không được xem xét chi tiết. Ở đây, chúng tôi có thể khuyên bạn chỉ nên thực hiện quét, đề phòng bằng cách sử dụng phần mềm chống vi-rút di động hoặc các chương trình tương tự có bộ tải khởi động tùy ý sử dụng.

Làm thế nào để sử dụng tất cả bộ nhớ đã cài đặt một cách đơn giản nhất?

Các vấn đề quan trọng hơn nhiều khi không phải tất cả RAM đều có sẵn là vấn đề kết nối thẻ nhớ hoặc hoạt động không chính xác của chúng. Trước tiên, hãy đảm bảo rằng bo mạch chủ được thiết kế cho ổ đĩa được cài đặt, đồng thời kiểm tra độ kín của việc chèn các dải vào các khe tương ứng. Bạn cũng nên thực hiện kiểm tra bộ nhớ bằng công cụ riêng của Windows (mdsched) hoặc các chương trình của bên thứ ba như Memtest86/86+.

Nếu vấn đề không được xác định ở giai đoạn này, hãy chú ý đến mức độ bit của bản sửa đổi Windows đã cài đặt. Nếu bạn có phiên bản 32 bit, không thể hoạt động với RAM lớn hơn 4 GB (trừ khi bạn sử dụng các công cụ đặc biệt), cho dù bạn cài đặt bao nhiêu bộ nhớ vượt quá giới hạn này, hệ thống vẫn sẽ không nhận dạng được.

Giải pháp tối ưu là cài đặt phiên bản Windows 64 bit. Nhưng trong trường hợp này, các chương trình đã cài đặt trước đó có thể không hoạt động và các tệp quan trọng sẽ phải được sao chép sang một phân vùng logic khác hoặc sang phương tiện di động.

Đôi khi xảy ra trường hợp không phải tất cả RAM đều khả dụng do các tùy chọn sử dụng bộ nhớ được đặt không chính xác trong (msconfig).

Trong cấu hình, trên tab khởi động, nhấp vào nút tùy chọn bổ sung và kiểm tra xem hộp kiểm bộ nhớ tối đa có được chọn hay không. Nếu có, hãy xóa nó, lưu các tùy chọn đã cài đặt và khởi động lại hệ thống.

Như đã rõ, một phần bộ nhớ có thể bị “ăn hết” bởi một số lượng lớn các quy trình và dịch vụ đang hoạt động trong nền mà người dùng không nhìn thấy được. Đầu tiên, vô hiệu hóa tất cả các thành phần không cần thiết khi khởi động (trong Windows 7 trở xuống, tab tương ứng trong cài đặt cấu hình được sử dụng cho việc này; trong các phiên bản cao hơn, “Trình quản lý tác vụ”).

Để đề phòng, hãy xem các thành phần đang hoạt động của hệ thống trong phần chương trình và thành phần và tắt những thành phần không sử dụng (mô-đun Hyper-V, Internet Explorer nếu bạn sử dụng trình duyệt khác, dịch vụ in nếu bạn không có máy in, v.v. ). Tương tự, bạn có thể đặt loại khởi động thành tắt đối với một số dịch vụ khác (services.msc), nhưng trong trường hợp này, bạn cần biết chính xác những gì có thể bị vô hiệu hóa và những gì không thể.

Có rất ít RAM: có thể thay đổi cài đặt nào trong BIOS?

Nếu sự cố vẫn còn sau khi áp dụng các giải pháp được mô tả ở trên, hãy đi tới cài đặt của hệ thống BIOS/UEFI chính và kiểm tra cài đặt bộ nhớ, trong đó phải chứa mục chứa từ Ánh xạ lại hoặc Ánh xạ lại (phân phối lại).

Nếu bạn có Windows 64 bit và có bộ nhớ lớn hơn 4 GB, hãy đặt thành Tắt. Nếu không thì nó cần phải được kích hoạt.

Nếu không có đủ RAM do dành thêm dung lượng cho card màn hình tích hợp trong bo mạch chủ, hãy đặt mục này thành giá trị tương ứng với dung lượng bộ nhớ của bộ điều hợp (bạn có thể tìm thấy nó trên tab màn hình khi gọi hộp thoại DirectX - dxdiag) . Điều này được thực hiện bằng cách thay đổi tính năng phát hiện tự động (Tự động) thành một trong các tùy chọn có sẵn (32, 64 hoặc 128 MB).

Vá hệ thống 32-bit

Cuối cùng, bạn có thể sử dụng tất cả bộ nhớ trên 4 GB trên hệ thống 32 bit bằng tiện ích ReadyFor4GB. Đầu tiên, tệp EXE thực thi cùng tên được khởi chạy từ thư mục ứng dụng, sau đó nhấn nút Kiểm tra và Áp dụng. Sau đó, các hành động tương tự được thực hiện đối với đối tượng ntkrnlpa.exe. Sau đó, tệp AddBootMenu.cmd được khởi chạy và xác nhận rằng lệnh đã được thực thi. Sau khi khởi động lại, nếu menu xuất hiện cùng với bộ nạp khởi động, nghĩa là Windows đã được chọn.

Lưu ý: tất cả các hành động chỉ được thực hiện bằng cách chạy các tệp với tư cách quản trị viên, bạn sẽ gặp nguy hiểm và rủi ro vì hiệu suất hệ thống sau khi sử dụng phương pháp này không được đảm bảo hoàn toàn.

Giống

Giống

tiếng riu ríu

Có một số chương trình về cơ bản là lang băm. Tất cả đều hứa hẹn một sự gia tăng thần kỳ về tốc độ máy tính bằng cách giải phóng dung lượng trong RAM của máy tính. Để hiểu tại sao điều này lại vô dụng và thậm chí có hại, trước tiên bạn cần hiểu RAM là gì?

RAM là gì và tại sao lại cần thiết?

ĐẬP(hoặc ĐẬP - R andom MỘT truy cập M trí nhớ, hoặc ĐẬP - VỀ hoạt động Z làm nhớ lại bạn thiết bị) - bộ nhớ dễ bay hơi được sử dụng để lưu trữ tạm thời các hướng dẫn và dữ liệu cần thiết cho các phép tính được thực hiện bởi bộ xử lý (hoặc các bộ xử lý) của máy tính. Điều này được mô tả chính xác và chi tiết hơn trên Wikipedia, nhưng tôi sẽ tập trung vào vấn đề thực tế về dung lượng trống trong RAM.

Lưu ý: Tôi đang nói một cách đơn giản nhất có thể, lược bỏ nhiều thuật ngữ và đặc điểm, chỉ để lại bản chất cần thiết trong ngữ cảnh ghi chú của tôi.

Bộ xử lý cần RAM để nhanh truy cập vào dữ liệu mà ổ cứng không thể cung cấp dưới bất kỳ hình thức nào. Do đó, khi chương trình được khởi chạy, nó sẽ được tải vào RAM - đây là cách duy nhất máy tính có thể thực hiện các phép tính, truyền dữ liệu đến bộ xử lý từ RAM và ngược lại.

Trong Windows, các chương trình đang chạy có thể được định vị vật lý không chỉ “trong thẻ RAM” mà còn trên ổ cứng trong một tệp pagefile.sys. Tập tin này được gọi là “tệp hoán đổi” hoặc “hoán đổi” (từ hoán đổi tiếng Anh).

Ý tưởng là thế này: nếu một chương trình chiếm nhiều bộ nhớ, một phần của chương trình đó sẽ được chuyển vào ổ cứng vào tệp hoán trang, giải phóng “không gian sống” cho các chương trình khác và nếu cần, dữ liệu sẽ được tải lại vào RAM. .

Vấn đềđó là sự khác biệt về tốc độ giữa RAM và ổ cứng to lớn. Điều này có thể được chứng minh rõ ràng như thế này:

Để đảm bảo rằng chỉ những dữ liệu không cần thiết mới được đưa vào tệp hoán trang, Windows chạy Trình quản lý bộ nhớ. Nó hoạt động khá thành công, nhờ đó trên máy tính có RAM 512 MB, bạn có thể chạy các chương trình chiếm hơn một gigabyte bộ nhớ. Một ví dụ điển hình là các phiên bản hiện đại của Adobe Photoshop, 3DS Max và nhiều chương trình khác để tính toán phức tạp. Tất nhiên, với lượng RAM nhỏ như vậy, các chương trình sẽ mạnh mẽ hãy chậm lại, nhưng ít nhất hãy làm việc với chúng, nhưng có thể.

Trình tối ưu hóa bộ nhớ làm gì?

Hãy để tôi làm một phép so sánh với các loại thuốc làm giảm triệu chứng - chúng không điều trị được nguyên nhân mà chỉ làm giảm bớt các triệu chứng. Nếu một người bị cúm, việc loại bỏ sổ mũi sẽ không chữa khỏi bệnh. Nếu máy tính chạy chậm và có ít bộ nhớ trống, nó chạy chậm không phải do bộ nhớ bị chiếm dụng mà do chương trình sử dụng quá nhiều tài nguyên hoặc chẳng hạn như quá nóng.

Tất cả các trình tối ưu hóa đều được yêu cầu hiển thị dung lượng trống trong RAM. Và thường có các chữ cái màu đỏ và cảnh báo rằng điều này ảnh hưởng tiêu cực đến tốc độ của máy tính. Điều đó thực sự không đúng. Nếu một chương trình cần hết RAM, điều đó có nghĩa là nó cần thiết cho công việc (tính toán) và hoạt động nhanh cô ấy sẽ chỉ ở đó nếu cô ấy được cung cấp nhiều không gian như cô ấy yêu cầu.

Một ví dụ điển hình về các chương trình yêu cầu dung lượng RAM lớn là trò chơi. Nếu một trò chơi yêu cầu 2 gigabyte RAM thì bạn không thể làm gì được. Nếu không có đủ RAM cần thiết, việc chơi sẽ gặp vấn đề do tốc độ khung hình thấp - trò chơi sẽ chậm lại do một số dữ liệu sẽ nằm trên tệp hoán đổi chậm. Trình tối ưu hóa RAM tạo tác động tiêu cực tương tự- sau khi bộ nhớ được giải phóng, các chương trình được phân bổ ít bộ nhớ hơn mức chúng cần, đó là lý do tại sao quá trình "phanh" lại bắt đầu.

Lưu ý số 1: Tôi không nói rằng tốc độ khung hình trong trò chơi có liên quan trực tiếp đến dung lượng RAM. Bằng cách lắp thêm RAM vào máy tính, bạn sẽ chỉ có thể tăng hiệu suất trong những chương trình mà dung lượng RAM thực sự quan trọng mà không quan tâm đến các thông số quan trọng khác: tần số bộ xử lý, đặc điểm card màn hình, tần số RAM, tốc độ ổ cứng, vân vân.

Lưu ý 2: Xảy ra lỗi với các chương trình có tên chung “ bộ nhớ bị rò rỉ“Khi một chương trình “phát triển” mà không có lý do và chiếm hết bộ nhớ một cách không cần thiết, nhưng trong trường hợp này, cần phải yêu cầu các nhà phát triển chương trình này sửa lỗi và không giải phóng bộ nhớ bằng các trình tối ưu hóa.

Cách thức hoạt động của trình tối ưu hóa bộ nhớ

Các chương trình tối ưu hóa bộ nhớ (chúng có thể có các tên khác nhau - SuperRAM, FreeMemory, Memory Management SuperProMegaEdition, v.v.) có thể giải phóng bộ nhớ theo nhiều cách, nhưng tất cả đều gắn liền với nguyên tắc đánh lừa Trình quản lý bộ nhớ Windows:

  1. Chương trình gọi một hàm đặc biệt EmptyWorkingSet(), hàm này buộc tất cả các chương trình phải chuyển càng nhiều nội dung của chúng vào tệp hoán đổi càng tốt.
  2. Chương trình bắt đầu phát triển không kiểm soát được trong bộ nhớ, nói với Trình quản lý bộ nhớ Windows rằng nó cần nó cho công việc (tôi nói theo cách ẩn dụ, nhưng thực tế là như vậy), do đó Trình quản lý bộ nhớ sẽ ném càng nhiều chương trình càng tốt vào ổ cứng trong một tập tin hoán đổi.

Kết quả luôn giống nhau: các chương trình bắt đầu chậm lại, nhưng dung lượng trống trong RAM có màu xanh lục và chương trình tối ưu hóa bộ nhớ cho biết mọi thứ đều ổn. Kết quả là người dùng hài lòng, mở một cửa sổ với chương trình yêu thích của mình và... chờ. Bởi vì chương trình yêu thích của anh ấy đang bắt đầu chậm lại rất nhiều.Điều này sẽ xảy ra cho đến khi chương trình trả lại “chính nó” cho RAM từ tệp hoán đổi. Kết quả là RAM lại đầy, chỉ báo dung lượng trống lại báo rằng bộ nhớ đang bận, người dùng tức giận, bắt đầu xóa bộ nhớ và mọi thứ diễn ra ở vòng thứ hai (thứ ba, thứ năm, thứ mười).

Tác dụng ngược lại - để chương trình chiếm hết RAM được cho làđể làm việc nhanh - sẽ không thể đạt được. Tôi dùng từ “được cho là” vì trong trường hợp lý tưởng (khi có đủ bộ nhớ) các chương trình chiếm nhiều bộ nhớ như chúng cầnquá trình này không thể bị can thiệp. Nếu bạn can thiệp vào quá trình này, bạn sẽ bị chậm do truy cập thường xuyên vào tệp hoán đổi.

Một điểm đáng buồn khác: trình tối ưu hóa bộ nhớ không thể dỡ các chương trình không cần thiết khỏi RAM. Chúng tôi tự xác định sự “vô dụng” của chúng; mọi thứ hoạt động khác nhau trong máy tính. Tất cả các chương trình được tải vào tệp hoán đổi một cách bừa bãi.

Kết luận số 1: giải phóng RAM bằng trình tối ưu hóa chỉ gây hại và giảm hiệu suất.

Kết luận số 2: Bạn không thể đánh giá tốc độ của một chương trình bằng dung lượng RAM mà nó chiếm.

Kết luận số 3: Nếu một chương trình chiếm nhiều dung lượng trong RAM, điều đó có nghĩa là nó hoạt động với lượng dữ liệu lớn. Bạn có thể giúp cô ấy “suy nghĩ” nhanh hơn chỉ bằng cách tăng dung lượng RAM, tức là. bằng cách lắp thêm thẻ RAM vào máy tính. Nhưng điều này sẽ không giúp ích gì nếu các đặc điểm khác của PC không đáp ứng được yêu cầu.

Để không phải là vô căn cứ, đây là liên kết đến các kết luận tương tự kèm theo lời giải thích về cách hoạt động của Trình quản lý bộ nhớ Windows: tại đây.

Bộ nhớ nên được tối ưu hóa như thế nào?

Cách rõ ràng nhất để cải thiện hiệu suất máy tính của bạn là đóng các chương trình không cần thiết. Thứ hai là lắp thêm thanh RAM (bo mạch) để các chương trình “thoải mái hơn” và hoạt động nhanh hơn. Các cách khác để tăng tốc máy tính liên quan trực tiếp đến RAM là: KHÔNG.

Tôi nhắc lại một lần nữa: tối ưu hóa bộ nhớ là vô nghĩađể kiếm tiền từ những người dùng cả tin. Điều ngu ngốc tương tự là điều chỉnh “cài đặt bộ nhớ ẩn” trong Windows, vì mọi thứ trong đó đều đã được cấu hình tối ưu nhất sau khi thử nghiệm trên một số lượng lớn máy tính. Có một số vấn đề cụ thể nhưng điều này không áp dụng cho máy tính gia đình.

Về RAM trống trong Windows Vista, 7, 8, 10

Trên các diễn đàn tôi thường thấy những tiếng kêu phẫn nộ (tôi trích dẫn): “ Tôi đã cài đặt Windows 7 (8, 10), nhìn vào Trình quản lý tác vụ và nó nói rằng một gigabyte hoặc toàn bộ RAM đã bị chiếm dụng! Windows 7 (8, 10) ngốn rất nhiều bộ nhớ!»

Trên thực tế, mọi thứ hoàn toàn khác và không có lý do gì để phẫn nộ. Hoàn toàn ngược lại: Trong các hệ điều hành hiện đại, bộ nhớ trống được phân bổ cho bộ đệm.Điều này xảy ra chủ yếu nhờ chức năng SuperFetch. Nhờ bộ đệm, các chương trình khởi động nhanh hơn, vì thay vì truy cập vào ổ cứng, dữ liệu được tải từ RAM (xem hình trên, sự khác biệt về tốc độ của ổ cứng và RAM được viết đậm). Nếu chương trình nào đó cần thêm RAM - bộ đệm ngay lập tức sẽ giảm kích thước của nó, nhường chỗ cho cô ấy. Thông tin thêm về điều này được viết trên Habrahabr.

Kết luận:

  1. Không cần phải xóa bộ nhớ vì mỗi byte dung lượng được sử dụng tối đa có hiệu quả.
  2. Hãy quên các trình tối ưu hóa bộ nhớ đi - chúng không tối ưu hóa bất cứ thứ gì và can thiệp vào bộ nhớ đệm cũng như các chức năng khác của Windows.
  3. Nếu nhiều RAM bị chiếm ngay sau khi bật máy tính thì điều này hoàn toàn bình thường và không phải là nguyên nhân khiến chương trình hoạt động chậm. Tất nhiên, nếu quá trình khởi động có hàng tá hoặc hai chương trình chiếm chính bộ nhớ này, đồng thời tải bộ xử lý và sử dụng ổ cứng, Nó chắc chắn sẽ chậm lại. Những chương trình như vậy cần được xử lý bằng cách xóa chúng hoặc xóa chúng khỏi quá trình khởi động và không xóa bộ nhớ bằng trình tối ưu hóa.

Cũng có quan niệm sai lầm rằng khi sử dụng Windows Vista, 7, 8 và 10, bộ nhớ đệm sẽ can thiệp vào các chương trình. Người ta cáo buộc, “khi một chương trình cần nhiều RAM hơn, hóa ra nó bị tắc bộ nhớ đệm và xảy ra hiện tượng phanh”. Điều này thực sự là không đúng sự thật. Bộ nhớ đệm biến mất ngay lập tức và chương trình đi thẳng lượng RAM cần thiết sẽ có sẵn.

Thay đổi kích thước tệp trang, di chuyển hoặc vô hiệu hóa nó

Cũng khá phổ biến, theo một cách nào đó, lời khuyên. Có một bài viết hay về điều này trên Habrahabr. Tôi sẽ chỉ đưa ra những kết luận quan trọng nhất của bài viết đó, đồng thời bổ sung thêm những kết luận của riêng tôi từ kinh nghiệm cá nhân:

  1. Có rất ít ý nghĩa trong việc thay đổi kích thước của tệp hoán trang. Về mặt lý thuyết, lý tưởng nhất là bạn nên đặt kích thước tệp hoán trang không lớn hơn kích thước mà các chương trình đang chạy yêu cầu, nhưng vấn đề là ngay cả khi bạn sử dụng cùng một chương trình có cùng phiên bản ngày này qua ngày khác thì các tình huống vẫn khác nhau (bạn có thể chạy trong trình duyệt). , một tab hoặc có thể là một trăm tab, mỗi tab có một trò chơi Flash đang mở) và các yêu cầu về bộ nhớ khả dụng sẽ khác nhau - kích thước “lý tưởng” ước tính của tệp hoán trang sẽ thay đổi theo từng phút. Do đó, không có ích gì khi thay đổi kích thước của tệp hoán trang, vì “kích thước lý tưởng” của tệp hoán trang liên tục thay đổi. Sẽ dễ dàng hơn nếu để kích thước do hệ thống xác định và không tự lừa dối mình.
  2. Nếu bạn vô hiệu hóa tệp hoán trang trên phân vùng hệ thống(trong trường hợp này, tệp hoán đổi có thể được sử dụng trên các phân vùng khác), Kết xuất bộ nhớ sẽ không hoạt động đối với lỗi BSOD. Do đó, nếu hệ thống hiển thị “màn hình xanh chết chóc”, để xác định nguyên nhân lỗi, trước tiên bạn sẽ phải kích hoạt tệp hoán trang trên phân vùng hệ thống, sau đó đợi lỗi tái diễn. Chỉ có một tình huống khi bạn nên tắt tệp hoán trang trên đĩa hệ thống (để mất khả năng chẩn đoán) và kích hoạt nó trên một tệp khác - nếu có hai hoặc nhiều hơn thuộc vật chấtổ cứng. Di chuyển tệp trang sang một đĩa vật lý khác có thể giảm tình trạng giật hình bằng cách phân phối tải trên các đĩa.
  3. Việc vô hiệu hóa tệp hoán trang (hoàn toàn, tức là trên tất cả các đĩa) sẽ gây ra sự cố và sự cố cho các chương trình sử dụng nhiều tài nguyên. Bạn sẽ không tin, nhưng ngay cả hiện nay, khi PC gia đình lắp trung bình 16 GB RAM, vẫn có những chương trình yêu cầu nhiều hơn. Cá nhân tôi gặp phải vấn đề khi kết xuất các cảnh phức tạp bằng V-Ray và khi làm việc trong chương trình GIMP - những chương trình này khá ngốn bộ nhớ khả dụng và đóng khi không đủ bộ nhớ.
    Ghi chú: Rõ ràng, các chương trình thường không tự ghi dữ liệu vào tệp trang; hệ điều hành thực hiện việc đó cho chúng (nhưng vẫn có những trường hợp ngoại lệ). Dù vậy, một tệp trang bị vô hiệu hóa không thể được coi là một phần của Bình thường chế độ hoạt động của máy tính.
  4. Di chuyển tệp hoán đổi sang đĩa RAM(đĩa ảo rất nhanh nằm trong RAM) không phù hợp.
    Trước hết, và đây là điều quan trọng nhất, khi Windows khởi động, đĩa RAM có thể được khởi tạo muộn hơn thời điểm hệ thống cần tệp hoán trang. Vì điều này, bất cứ điều gì cũng có thể xảy ra - từ BSOD đến tình trạng hệ thống tự phát chạy chậm lại (tôi đã gặp phải tình trạng trên khi thử nghiệm ý tưởng này).
    Thứ hai, kích thước của tệp hoán đổi như vậy sẽ nhỏ - bộ nhớ không phải là cao su. Có một lựa chọn - thiếu RAM khi có một tệp hoán trang lớn trong bộ nhớ hoặc chương trình bị trục trặc khi không có đủ dung lượng trong một tệp hoán trang nhỏ. Không có ý nghĩa vàng, bởi vì... một máy tính có thể thực hiện các nhiệm vụ hoàn toàn khác nhau.
    Ngoại lệ khi bạn có thể tạo tệp hoán trang lớn trên đĩa RAM là nếu bạn có 16 GB RAM trở lên. Tuy nhiên, với dung lượng RAM như vậy, tệp hoán trang hầu như không bao giờ được sử dụng và việc giữ nó trong RAM cũng chẳng ích gì.
    Ngày thứ ba, điều này đơn giản là vô nghĩa, vì cần phải trao đổi để mở rộng bộ nhớ ảo bằng ổ cứng hoặc SSD.

Xóa tập tin trao đổi

Trong tập tin trao đổi pagefile.sys nhiều thông tin bí mật có thể được lưu trữ - ví dụ: hình ảnh từ các trang được mở gần đây trong trình duyệt. Đây là một quá trình bình thường do cách thức hoạt động của các chương trình trong Windows. Nếu muốn, bạn có thể cho phép xóa tệp hoán trang khi tắt máy tính. Tuy nhiên, tinh chỉnh này sẽ không cải thiện hiệu suất mà ngược lại, nó sẽ làm chậm quá trình tắt và khởi động lại máy tính một cách nghiêm trọng.

nếu bạn Không làm việc với dữ liệu bí mật thì tốt hơn không kích hoạt tính năng dọn dẹp pagefile.sys.

Có sẵn hơn 4 GB RAM trong Windows

Internet thực sự tràn ngập những suy đoán của người dùng về lý do tại sao RAM 3,5 GB lại có sẵn trong Windows bit thay vì, chẳng hạn như 4 GB đã cài đặt. Nhiều lý thuyết, huyền thoại và truyền thuyết đã được phát minh. Ví dụ, họ tin rằng đây là một hạn chế do Microsoft đưa ra và có thể loại bỏ được. Trên thực tế, điều này đúng một phần - thực sự có một hạn chế bắt buộc. Bạn không thể loại bỏ nó. Điều này là do trên hệ thống 32 bit, trình điều khiển và chương trình có thể không ổn định khi hệ thống sử dụng hơn 4 gigabyte RAM. Đối với Windows 64-bit, trình điều khiển được kiểm tra kỹ lưỡng hơn; không có hạn chế nêu trên.

Trong Windows 32-bit, chỉ có 4 GB RAM, trong 64-bit không có giới hạn như vậy và có nhiều RAM hơn - lên tới 192 GB.

Nhưng nó không đơn giản như vậy. Windows 7 Ban đầu (Người bắt đầu)(và phiên bản Vista của nó) không thấy RAM quá 2 GB. Đây cũng là một hạn chế nhưng không phải do phần mềm không ổn định. Thực tế là Windows 7 Basic được phân phối độc quyền trên các netbook có công suất thấp, trên thực tế là gần như miễn phí, vì vậy cần phải tách biệt nó với các phiên bản đắt tiền hơn: Home Basic, Home Advanced, Ultimate, v.v. Một số hạn chế của Windows 7 Starter có thể được loại bỏ, nhưng không loại bỏ được giới hạn về hai gigabyte RAM.

Đối với các phiên bản 32-bit còn lại của Windows XP, Vista, 7 và Windows 8/10: trên thực tế, người dùng thậm chí còn có ít phiên bản hơn - 3,5GB. Vấn đề là các trình điều khiển cũng có địa chỉ riêng, điều này làm mất quyền truy cập của các chương trình Windows vào một phần bộ nhớ 512 megabyte. Có một bản vá cho phép bạn "đẩy" những địa chỉ như vậy vượt quá 4 gigabyte để hệ thống bắt đầu sử dụng toàn bộ 4 GB RAM, nhưng điều này hầu như không có ý nghĩa gì:

  • Như tôi đã viết ở trên, trình điều khiển và chương trình sẽ không thể hoạt động chính xác sau bản vá như vậy, do đó hệ thống có thể bắt đầu bị treo, phát sinh lỗi, tức là. cư xử không thể đoán trước.
  • Ngay cả khi máy tính đã cài đặt thẻ RAM 8, 16, 32 GB trở lên, điều này sẽ không giúp ích gì khi sử dụng chúng ở chế độ 32 bit của hệ điều hành.

Việc có thêm 512 MB RAM để làm gì nếu hệ thống không ổn định? Đây là một ví dụ điển hình. Bạn vẫn sẽ phải cài đặt Windows 64-bit.

Chỉ vì 4GB RAM hiển thị không có nghĩa là nó có thể được sử dụng hiệu quả. Vấn đề là Windows 32 bit không thể phân bổ hơn 2 GB RAM vật lý cho một quy trình (chương trình) một cách thành thạo. Nhiều người quên điều này - và vô ích. Máy tính có bao nhiêu RAM không quan trọng nếu chương trình không thể được cung cấp nhiều hơn 2 GB RAM. Ví dụ: nếu người dùng làm việc trong Windows 32 bit với Photoshop trên máy tính có RAM 4 GB, Photoshop sẽ chỉ có thể sử dụng tối đa hai gigabyte, phần dữ liệu còn lại sẽ được đưa vào tệp hoán đổi và sẽ bắt đầu chậm lại xuống. Trò chơi cũng vậy.

Trên thực tế, chỉ trên hệ điều hành 64 bit, các chương trình mới có thể tận dụng tối đa tiềm năng của hơn hai gigabyte RAM. Và không phải tất cả chúng, mà chỉ những thứ được thiết kế để sử dụng RAM hơn 2 GB. Tình trạng này có thể được khắc phục một lần nữa bằng cách sử dụng các bản vá thích hợp trong Windows 32-bit, nhưng điều này không hoạt động với tất cả các chương trình. Tôi nhắc lại: chỉ Windows 64-bit và các chương trình 64-bit chạy trong đó là cách duy nhất để sử dụng hết tiềm năng của một lượng lớn RAM.

Trong khi đó, tình hình lại khác với các phiên bản máy chủ của Windows: có sẵn lượng RAM lớn hơn nhiều, ngay cả trong các phiên bản HĐH 32 bit. Tại sao điều này xảy ra được mô tả trong bài viết Phá vỡ ranh giới của Windows: bộ nhớ vật lý của Mark Russinovich.

Hãy tóm tắt lại

  • Không thể sử dụng trình tối ưu hóa RAM.
  • Chạm vào cài đặt bộ nhớ cũng vậy, ngay cả khi chương trình có nhiều gợi ý mang lại cảm giác kiểm soát được tình huống.
  • RAM trống trong Windows Vista/7/8/10 được sử dụng rất tốt, tốt hơn hết là không nên động đến chức năng này - mọi thứ đều hoạt động tốt, hầu như không thể cải thiện được gì.
  • Nếu máy tính của bạn đang chạy chậm lại thì đây là nhiều khả năng hơn không phải do bộ nhớ bị chiếm dụng (nó bị chiếm bởi bộ đệm hữu ích), mà do một số lượng lớn các chương trình đang chạy hoặc một chương trình “lấy” mọi thứ cho chính nó.
  • Giống

    Hôm nay tôi sẽ nói về những hạn chế của không gian địa chỉ ảo Windows và cách xử lý lỗi “Hết bộ nhớ” xảy ra với các chương trình và trò chơi 32 bit khi dung lượng bộ nhớ chúng sử dụng đạt tới 2 Gigabyte. Dưới đây là một số cách dễ dàng để khắc phục hạn chế này và buộc các ứng dụng sử dụng hơn 2GB bộ nhớ.

    kiến trúc x86

    Tất cả các bộ xử lý máy tính để bàn hiện đại Intel hoặc AMD(và không chỉ) dựa trên x86 kiến trúc, lần đầu tiên được triển khai trong bộ xử lý Intel 8086 phát hành vào năm 1978. Lên đến Intel 80386 (i386) bộ xử lý là 16 bit và chỉ có thể sử dụng tối đa 16 MB RAM. Phát hành năm 1985 i386 gia công thép 32-bit, điều này làm cho nó có thể đánh địa chỉ lên tới 4GB RAM (tối đa 64 GB ở chế độ PAE, nhưng các ứng dụng chỉ có thể sử dụng tối đa 4 GB).

    Rõ ràng là trong những năm đó, 4 GB gần như không thể đạt được. Nhưng không có gì đứng yên và theo thời gian điều này hóa ra là không đủ. Năm 2003 công ty AMD(vâng, không còn nữa Intel) trong dòng bộ xử lý mới của họ Opteronđã triển khai tiện ích mở rộng x86-64(tên khác: AMD64, Intel64, x64, EM64T). Tiện ích mở rộng này có một số cải tiến: thanh ghi chính 64-bit, thanh ghi bổ sung và mở rộng không gian địa chỉ. Việc triển khai hiện tại cho phép tối đa 256 TB không gian địa chỉ ảo, với mức tối đa theo lý thuyết là 16 EB (ExbiByte - 2 64 byte). Bộ xử lý Intel hỗ trợ mở rộng x86-64(AMD64) từ các mẫu Pentium 4 cũ hơn (Prescott trở đi).

    hệ điều hành x86 và x64

    Có thể áp dụng với hệ điều hành ký hiệu (Hệ điều hành) được sử dụng x86(theo cách nói thông thường nó thường được gọi là x32) Và x64, lần lượt là 32-bit và 64-bit. Điểm khác biệt là x64 hỗ trợ AMD64, giúp tận dụng những ưu điểm của nó, trong khi x86 không hỗ trợ (và không sử dụng) nó. Trong thực tế, điều này mang lại những tính năng và hạn chế nhất định.

    • Hệ điều hành 64-bit đòi hỏi bộ xử lý có hỗ trợ AMD64(tất cả các bộ xử lý hiện đại từ Intel hoặc AMD)
    • Hệ điều hành 32 bit có thể chạy trên bộ xử lý có hoặc không có hỗ trợ AMD64 (nhưng vẫn cần phải tìm ra phiên bản cổ xưa như vậy)
    • Các ứng dụng 64-bit hoạt động chỉ một trên hệ điều hành 64-bit
    • Ứng dụng 32-bit làm việc đầy đủ trên cả hệ điều hành x32 và x64, nhưng chúng không thể sử dụng các ưu điểm của AMD64

    Hiện tại, hệ điều hành x86 đang dần bị loại bỏ để chuyển sang x64. Ví dụ: phiên bản máy chủ của Windows bắt đầu từ 2008 R2 được phát hành chỉ một 64-bit. Microsoft thường đe dọa sẽ làm điều tương tự với các phiên bản desktop mới nhưng họ vẫn chưa thực hiện.

    Giới hạn bộ nhớ ảo trong Windows

    Mỗi phiên bản Windows đều có một số những hạn chế về việc sử dụng bộ nhớ vật lý và ảo (có thể xem tại link). Và nếu giới hạn của bộ nhớ vật lý có liên quan đến việc cấp phép, thì với các hạn chế ảo mọi thứ phức tạp hơn một chút.

    Chúng tôi chỉ quan tâm đến bộ nhớ ảo, vì chính nhờ nó mà các ứng dụng tương tác. Không đi sâu vào chi tiết, công nghệ bộ nhớ ảo cho phép mỗi tiến trình có bộ nhớ riêng - một không gian địa chỉ hầu như không trùng lặp với không gian địa chỉ của các tiến trình khác. Nghĩa là, ứng dụng “tin” rằng bộ nhớ chỉ thuộc về nó và thậm chí có thể sử dụng nhiều hơn dung lượng RAM vật lý có sẵn và hệ điều hành sẽ xử lý việc phân phối và phối hợp.

    Và như vậy, đối với Windows 32 bit, giới hạn bộ nhớ ảo chung là 4 GB (đối với bộ xử lý 32 bit). Phiên bản 64 bit có giới hạn từ 15 đến 256 TB, tùy thuộc vào phiên bản. Tuy nhiên, bất kỳ phiên bản Windows nào cũng chia tổng không gian địa chỉ thành hai các bộ phận: chế độ người dùng(chế độ người dùng) – bộ nhớ khả dụng cho các ứng dụng và chế độ hạt nhân(chế độ kernel) – bộ nhớ được hệ thống sử dụng. Và nếu trên ứng dụng x64 nhận được 8 – 128 GB thì đối với x32 chỉ là 2 GB (thực tế là ~1,7-1,8 GB). Khi đạt đến giới hạn này, ứng dụng sẽ báo lỗi và bị đóng hoặc đơn giản là bị lỗi mà không có bất kỳ cảnh báo nào.


    Cách hoạt động của bộ nhớ trong Windows được mô tả chi tiết trong Mark Russinovich.

    Chức năng cài đặt bộ nhớ 4GT

    Đối với Windows x86 có một "nạng" chính thức cho phép phân phối lại bộ nhớ ảo, cung cấp cho các ứng dụng dung lượng lên tới 3 GB, đồng thời giảm dung lượng hệ thống xuống còn 1 GB. Nó được gọi là Điều chỉnh 4 gigabyte. Nó trông như thế nào được thể hiện trong sơ đồ sau (ở bên trái - theo mặc định, ở bên phải - sử dụng 4GT):


    Tùy chọn được kích hoạt như sau:

    Cho cửa sổ XP/2003– thêm một phím /3GB trong tập tin Boot.ini


    Windows Vista/7/8- đội BCDChỉnh sửa /đặt tănguserva 3072 (Bắt đầu> Tiêu chuẩn (Bắt đầu > Phụ kiện), nhấp chuột phải vào Dòng lệnh (Dấu nhắc lệnh) – Chạy như quản trị viên(Chạy như quản trị viên), nhập và chạy lệnh ).


    Việc bật tùy chọn này có thể dẫn đến hoạt động không chính xác của một số trình điều khiển, chương trình hoặc toàn bộ Windows.

    Gắn cờ IMAGE_FILE_LARGE_ADDRESS_AWARE

    Ứng dụng sẽ có thể sử dụng hơn 2 GB không gian địa chỉ ảo, chỉ một nếu nó được biên dịch với tùy chọn IMAGE_FILE_LARGE_ADDRESS_AWARE. Tất cả các ứng dụng 64 bit đều có tùy chọn này theo mặc định (đây là bản chất của chúng), nhưng các ứng dụng 32 bit có thể có hoặc không có tùy chọn này - tất cả phụ thuộc vào lập trình viên có đặt tùy chọn này trong quá trình biên dịch hay không.

    Cờ này là thứ chúng ta cần để buộc ứng dụng 32 bit sử dụng hơn 2 GB bộ nhớ. Chạy một ứng dụng 32 bit như vậy trên Windows x32 bằng 4GT sẽ cung cấp bộ nhớ lên tới 3 GB (thực tế là ~ 2,8 GB) và trên Windows x64 tất cả là 4 GB.

    May mắn thay, việc đặt cờ này cho bất kì các ứng dụng có thể một mình. Có nhiều hướng khác nhau để làm điều đó.

    Trước khi bạn bắt đầu bảo đảmứng dụng bạn muốn thay đổi hiện tại là gì đóng cửa.

    Bản vá 4GB

    Cách dễ nhất.

    Để bắt đầu, hãy tải xuống chương trình từ trang web của tác giả hoặc tại đây:

    Sau khi khởi động 4gb_patch.exe Hộp thoại Mở tệp tiêu chuẩn sẽ mở ra nơi bạn cần chỉ định tệp .EXE mà bạn sắp sửa đổi.

    Ngay sau khi chọn file, một cửa sổ chương trình sẽ xuất hiện xác nhận thao tác thành công. Tiếp theo bạn có thể thay đổi file khác (bằng cách nhấn vào Tệp khác) hoặc đóng chương trình (bằng cách nhấp vào ĐƯỢC RỒI).

    Hãy nhớ rằng chương trình không có hành động ngược lại, do đó, trong thư mục chứa tệp đã sửa đổi, nó sẽ lưu bản sao lưu có phần mở rộng .Hỗ trợ.

    CFF Explorer

    Dành cho những người biết chính xác những gì họ đang làm.

    Nhà thám hiểm CFF– một chương trình miễn phí và khá mạnh mẽ để làm việc với các tiêu đề PE của tác giả Bản vá 4GB. Bạn có thể tải nó từ trang web của tác giả.

    1. Sau khi cài đặt và khởi chạy chương trình, hãy mở tệp .EXE được yêu cầu.
    2. Hãy chuyển sang điểm Tiêu đề tệp.
    3. Nhấp vào góc dưới bên phải của bảng xuất hiện (đó là nội dung - Bấm vào đây).
    4. Trong cửa sổ mở ra, chọn hộp bên cạnh Ứng dụng có thể xử lý không gian địa chỉ >2gb.
    5. Áp dụng và lưu tập tin.

    Như bạn có thể thấy, chương trình cho phép bạn chỉnh sửa các tham số khác, có một số lượng lớn công cụ và thậm chí cả trình dịch ngược tích hợp.

    Đảo ngược hành động giống nhau, với sự khác biệt mà chúng tôi đánh dấu di dời.

    EDITBIN.EXE

    Tiện ích nhỏ EDITBIN.EXE, được bao gồm trong Microsoft Visual Studio.

    Các bước như sau (chạy từ dòng lệnh):

    Phơi ra: EDITBIN.EXE /tên LARGEADDRESSAWARE.exe

    Cất đi: EDITBIN.EXE /PHẦN MỀM ĐỊA CHỈ LỚN: KHÔNG có tên.exe

    Tham số tương tự này (/LARGEADDRESSAWARE) kiểm soát việc sử dụng bộ nhớ cho các dự án Visual Studio.

    Phần kết luận

    Để tóm tắt những điều trên - để ứng dụng 32 bit sử dụng hơn 2 GB bộ nhớ, phải đáp ứng những điều sau: hai điều kiện.