Tại sao Windows chỉ hiển thị khoảng 3,5 GB RAM 4 GB của tôi?


90

Gần đây tôi đã nâng cấp RAM máy tính của mình lên 4 GB. Cài đặt Windows 32 bit của tôi chỉ hiển thị 3574 MB bộ nhớ. Làm cách nào để Windows có thể sử dụng toàn bộ RAM?


2
Điều này chỉ được trả lời vào sáng nay trong superuser.com/questions/27006/ Khăn
Tom

3
Điều này cần phải được tăng lên như 2000 phiếu bầu vì dường như hàng ngày tôi gặp phải một người khác hỏi "trí nhớ của tôi ở đâu?" Microsoft chỉ nên lấy nó ra khỏi hộp thoại. . .
Surfasb

2
Anh bạn, bạn cần một hệ điều hành 64 bit. Nghiêm túc, bắt đầu tiết kiệm tiền của bạn bây giờ. Sau đó, câu hỏi này sẽ trở thành một điểm cần thiết khi bạn có một hệ thống thực sự sẽ hỗ trợ tất cả bộ nhớ bạn có thể nhét vào bo mạch chủ.
Phòng thí nghiệm Fiasco

1
Cảm thấy cẩn thận xung quanh đơn vị hệ thống cho bất kỳ độ ẩm hoặc ẩm ướt. Nó có thể là một "rò rỉ bộ nhớ".
EleventhDoctor

@ala: Do bộ nhớ kernel bị tách ... (1Gb cấp phát bởi kernel). Có vẻ như bạn đã sử dụng công tắc / 3gb ...
user2284570

Câu trả lời:


70

Bạn không thể:

Xem Dude, RAM 4 GB của tôi ở đâu?

nếu bạn muốn điều chỉnh bộ nhớ và thiết bị trong phạm vi địa chỉ 32 bit: không phải tất cả 4GB không gian địa chỉ có thể được cung cấp cho bộ nhớ.
Vậy điều gì thực sự xảy ra nếu bạn ra ngoài và mua 4GB bộ nhớ cho PC?
Có một lỗ hổng trên bản đồ bộ nhớ của bạn cho IO. (Bây giờ chỉ chiếm 25% tổng không gian địa chỉ, nhưng nó vẫn là một lỗ hổng lớn.) Vì vậy, 3 GB bộ nhớ dưới cùng của bạn sẽ khả dụng, nhưng có vấn đề với 1GB cuối cùng đó.

Giải pháp thực tế duy nhất là cài đặt hệ điều hành 64 bit. Trong Windows Vista trở lên, các khóa cấp phép 32 bit và 64 bit có thể hoán đổi cho nhau. Nếu bạn có thể nhận phương tiện cài đặt Windows cho phiên bản 64 bit của hệ điều hành, bạn có thể cài đặt lại bằng mã bản quyền gốc.


Tôi không hiểu - không phải là 2 ^ 32 4 gigabyte?
Matt

6
À, đừng bận tâm, thực sự đã đọc bài viết được liên kết
Matt

thật tốt khi biết điều này
LiuYan 刘

@VonC: Thế còn cái này ?
dùng2284570

@ user2284570 đúng, PAE có thể giúp, nhưng ai vẫn còn trên WXp? ;)
VonC

8

Đầu tiên, Windows XP (32 bit) chỉ hỗ trợ 4 GB. Điều đó không chỉ áp dụng cho Windows XP. Thay vào đó, nó áp dụng cho máy tính để bàn 32 bit Windows - hệ thống Linux 32 bit với PAE và nhiều phiên bản Windows Server 32 bit hỗ trợ nhiều hơn 4GB cho mỗi bài viết được liên kết. Bạn sẽ không bao giờ thấy trên 4 GB nếu bạn đang sử dụng Windows XP 32 bit. Tuy nhiên, tôi đã tìm thấy một lý do chi tiết hơn tại sao hệ thống của bạn hiển thị ít ram hơn so với những gì thực sự được cài đặt.

Từ sự cố RAM 3 GB không phải 4GB (blog Microsoft MSDN):

Do một quyết định kiến ​​trúc được đưa ra từ lâu, nếu bạn đã cài đặt 4GB RAM vật lý, Windows chỉ có thể báo cáo một phần 4GB RAM vật lý (dao động từ ~ 2,75GB đến 3,5GB tùy thuộc vào các thiết bị được cài đặt, chipset của bo mạch chủ & BIOS).

Hành vi này là do "đặt chỗ IO ánh xạ bộ nhớ". Những đặt chỗ đó che phủ không gian địa chỉ vật lý và che giấu những địa chỉ vật lý đó để chúng không thể được sử dụng cho bộ nhớ làm việc. Điều này là độc lập với hệ điều hành chạy trên máy.

Các khối đáng kể của không gian địa chỉ dưới 4GB (địa chỉ cao nhất có thể truy cập qua 32 bit) được dành riêng để sử dụng bởi phần cứng hệ thống:

  • BIOS - bao gồm ACPI và hỗ trợ video kế thừa
  • Bus PCI bao gồm cả cầu nối, vv
  • Hỗ trợ PCI Express sẽ dự trữ ít nhất 256 MB, tối đa 768 MB tùy thuộc vào bộ nhớ được cài đặt card đồ họa

Điều này có nghĩa là một hệ thống điển hình có thể thấy giữa ~ 256 MB và 1GB không gian địa chỉ dưới 4GB dành riêng cho sử dụng phần cứng mà HĐH không thể truy cập. Thông số kỹ thuật chipset Intel khá tốt trong việc giải thích phạm vi địa chỉ nào được bảo lưu theo mặc định và trong một số trường hợp gọi rằng 1,5 GB luôn được bảo lưu và do đó không thể truy cập được vào Windows.

Có nhiều thông tin hơn nếu bạn kiểm tra nguồn. Tuy nhiên, bạn có thể tận dụng 8 GB đầy đủ được cài đặt nếu bạn làm theo các hướng dẫn này .

Nói từ kinh nghiệm cá nhân, đây không phải là vấn đề mới. Tôi đã gặp vấn đề tương tự vài năm trước khi tôi xây dựng hệ thống Windows Vista 4 bit 32 GB khi Vista được phát hành lần đầu tiên. Có vô số bài viết diễn đàn trực tuyến liên quan đến cùng chủ đề này.

Đọc thêm Microsoft KB 929605 - Bộ nhớ hệ thống được báo cáo trong hộp thoại Thông tin hệ thống trong Windows Vista sẽ ít hơn bạn mong đợi nếu 4 GB RAM được cài đặt .


Các tài liệu của Microsoft ở đây cho rằng Windows XP hỗ trợ tới 128GB RAM, nếu kiến ​​trúc cơ bản là 64 bit. Bạn có thể vui lòng cập nhật câu trả lời của bạn?
Dan Dascalescu

@SgtOJ: Thế còn cái này ?
dùng2284570

1
@SgtOJ: Giới hạn RAM 4 GB KHÔNG áp dụng cho "tất cả các hệ điều hành 32 bit". Hệ điều hành 32 bit hỗ trợ đầy đủ PAE (như Windows Server 2003) có thể vui vẻ sử dụng hơn 4 GB RAM. "32 bit" giới hạn không gian địa chỉ ảo, không phải vật lý.
Jamie Hanrahan

@JamieHanrahan vẫn có nghĩa là một chương trình không thể sử dụng nhiều hơn 4GB. Và tôi nghĩ rằng ông có nghĩa là chi phí đặt phòng IO là độc lập với hệ điều hành.
jiggunjer

@jiggunjer Không ở đâu trong câu hỏi hoặc câu trả lời mà tôi đang bình luận là nó được nói hay ngụ ý rằng những gì đang được hỏi là "chương trình duy nhất" có thể sử dụng. Cũng không phải là đặt phòng I / O hoàn toàn độc lập với hệ điều hành.
Jamie Hanrahan

3

Nếu bạn đang sử dụng Windows XP 32 bit thì không thể. Vì không có đủ Không gian Địa chỉ để sử dụng thêm RAM

Giải pháp tốt nhất sẽ là nâng cấp lên Phiên bản Windows 64 bit vì nó hỗ trợ hơn 4 GB RAM.


2^32là đủ "không gian địa chỉ" để vừa với 4 GiB. Bạn nhầm không gian địa chỉ và bộ nhớ vật lý. Mọi quy trình trên các phiên bản Windows hiện đại đều thấy không gian địa chỉ 4 GiB đầy đủ mặc dù thông thường chỉ có 2 GiB có thể sử dụng được do phân vùng UM / KM của không gian địa chỉ ảo.
0xC0000022L

@ 0xC0000022L: Đó không phải là vấn đề đang được thảo luận ở đây.
Ben Voigt

Theo Microsoft , hầu hết các phiên bản Windows 7 (bao gồm 32 bit), hỗ trợ tối đa 192GB RAM. Yêu cầu duy nhất là kiến ​​trúc cơ bản là 64 bit. Vì vậy, giải pháp tốt nhất sẽ là nâng cấp từ XP lên Windows 7. Bạn có thể vui lòng cập nhật câu trả lời của mình không?
Dan Dascalescu

@Shaharyar: Thế còn cái này ?
dùng2284570

3

Như những người khác đã nói, nó không thể.

Giải trình:

Mỗi phần của bộ nhớ có một địa chỉ. Hệ điều hành chỉ định độ dài của địa chỉ. Đối với các hệ điều hành cũ, độ dài địa chỉ là 32 bit, chỉ cho phép 2 ^ 32 (4 294 967 296) địa chỉ. Bây giờ, nhìn vào con số đó, có vẻ như hệ điều hành của bạn sẽ hỗ trợ 4 GB, nhưng tất cả phần cứng khác (đáng kể nhất là ram video trong thẻ video của bạn) có bộ nhớ trong cũng được ánh xạ vào không gian địa chỉ đó.

Giống như bạn đang cố gắng phân phối 1.200.000 số điện thoại sáu chữ số.


Bạn đang trộn RAM và không gian địa chỉ.
0xC0000022L

@ 0xC0000022L: Không anh ấy không. Anh ấy đang nói về không gian địa chỉ vật lý, trong khi RAM phải được ánh xạ để có thể sử dụng được.
Ben Voigt

@BenVoigt: Thế còn cái này ?
dùng2284570

PAE là tuyệt vời, nếu tất cả các mã hạt nhân được viết để sử dụng nó. Thật không may, rất nhiều mã hạt nhân là trình điều khiển được viết bởi các bên thứ ba, những người hầu như không thể có được công cụ ổn định với mô hình bộ nhớ phẳng. Kích hoạt PAE yêu cầu vứt bỏ tất cả các trình điều khiển hiện có với giả định mô hình phẳng. Đó là lý do tại sao máy chủ Windows cho phép PAE và máy khách thì không. Xem câu trả lời của steveb.
Ben Voigt

@BenVoigt: Từ năm 1997, Trình điều khiển giả sử bộ nhớ <4GB rất hiếm vì TẤT CẢ trình điều khiển WDM có thể được cài đặt trên Windows 2000/2003 ...
user2284570

3

Bo mạch chủ cũ chỉ hỗ trợ 4Gb RAM vật lý, những cái hiện đại hỗ trợ nhiều hơn thế. CPU Intel P4 luôn có thể xử lý nhiều hơn 4Gb (bằng cách sử dụng thứ gọi là Tiện ích mở rộng địa chỉ vật lý hoặc PAE)

Microstoft đã đưa ra một 'quyết định tiếp thị' không hỗ trợ thêm không gian địa chỉ vật lý 4Gb trong các phiên bản 'máy khách' của tất cả các phiên bản 32 bit của Hệ điều hành - bao gồm tất cả sau đó từ Windows 8 đến 32 bit (nếu bạn truy cập MS KB các trang bạn sẽ lưu ý rằng các phiên bản Máy chủ 32 bit có thể hỗ trợ nhiều hơn - lên tới 128Gb Tôi tin với Phiên bản 32 bit 'Enterprise Edition') - đó là lý do tại sao 'hệ điều hành 32bit' (Linux, v.v.) trên chính xác phần cứng luôn có thể truy cập TẤT CẢ RAM vật lý.

(lưu ý bên lề - Người dùng Win7 32 bit đã quá chán ngán với giới hạn 'ngu ngốc' này đến nỗi họ đã 'hack' Kernal để cho phép sử dụng hết RAM vật lý .. không cần phải nói, điều này phá vỡ Giấy phép của bạn và thực sự là bất hợp pháp tại Hoa Kỳ (DCMA )

Windows XP 32bit 'dự trữ một phần không gian địa chỉ 4Gb để sử dụng trình điều khiển. Không có lý do nào khiến bạn không thể 'giải quyết' RAM vật lý vượt quá 4Gb (sử dụng PAE), tuy nhiên, rất nhiều OLTER DRIVERS vào thời điểm Windows XP Pro không thực hiện được và bạn sẽ gặp lỗi 'BSOD' (trình điều khiển hiện đại sử dụng PAE chính xác và TRONG LÝ THUYẾT không có lý do tại sao họ cần nhiều hơn khoảng 32Mb trang không gian (dưới dạng 'cửa sổ') để hỗ trợ thẻ Đồ họa 2Gb (2gb sẽ ở trong không gian 'hi' tức là trên 4Gb dấu)

Trong XP SP2, MS gần như tăng gấp ba lượng không gian địa chỉ 'dành riêng' cho các trình điều khiển trong nỗ lực loại bỏ BSOD và từ đó đến nay (MS không muốn 'gỡ lỗi' trình điều khiển == họ muốn bán cho bạn 64 bit Hệ điều hành thay thế). Phần cứng THỰC TẾ có hiệu lực gần như bằng không đối với không gian 'dành riêng' này.

VÌ VẬY, nếu bạn có RAM vật lý từ 4Gb trở lên, phần lớn XP Pro sp2 + sẽ thấy là khoảng 3.25Gb .. phần còn lại CÓ THỂ được truy cập bằng nhiều Trình điều khiển đĩa RAM khác nhau (tất nhiên không phải là MS one) = hãy tìm thứ gì đó sử dụng 'Không gian địa chỉ vô hình' hoặc 'không gian 4gb cao' trên XP Pro) .. sử dụng 'thiếu' .75Gb như một phần của 'bộ nhớ ảo' có thể tăng tốc hệ thống của bạn ...

Lưu ý rằng công tắc / 3G có thể cho phép các ứng dụng 32 bit truy cập tối đa 3Gb trên HĐH 32 bit (nếu chúng có cờ LargeAddressAware được đặt trong tiêu đề .exe của chúng - trong trường hợp chúng có thể truy cập lên tới 4Gb trên HĐH 64 bit) nhưng trên XP, bạn cũng cần chỉ định / USERVA để ngăn hệ điều hành bị 'vắt kiệt' RAM :-)


Hỗ trợ Windows XP SP1> 4GB RAM nếu bạn thêm công tắc / PAE vào boot.ini
user2284570

0

Nếu bạn muốn sử dụng 4GB hoàn chỉnh, tùy chọn duy nhất là nâng cấp lên hệ điều hành 64 bit:

  • Windox XP 64
  • Windows Vista 64
  • Linux
  • Max OS / X (ok, bạn cũng có thể cần một PC mới)

Windows XP bình thường chỉ có 32 bit và điều này giới hạn bộ nhớ ở mức tối đa 3,5gb. Kiểm tra liên kết VonC đăng để biết chi tiết về chủ đề này.


Là 32 bit không giới hạn bộ nhớ tối đa 3,5Gb. Đó là các thiết bị khác ăn không gian địa chỉ khả dụng, vì vậy cũng có thể có 3,75Gb. -1
MaxVT

Đó là lý do tại sao tôi nói "kiểm tra liên kết để biết chi tiết" :-)
FrankS

Chính xác. Microsoft liệt kê rằng XP 64-bit hỗ trợ tối đa 128GB RAM .
Dan Dascalescu

0

Nếu bạn sử dụng đồ họa tích hợp thì bạn có thể tắt nó đi, và điều đó có nghĩa là hệ thống sẽ có thể xử lý nhiều RAM hệ thống của bạn hơn.

Nhưng, giải pháp tốt nhất chắc chắn là có được hệ điều hành x64.

Không có lý do không quá. Hầu hết các chương trình hoạt động trong x64 với XP / Vista / 7 có lớp mô phỏng x86. Nó chỉ là trình điều khiển có thể là vấn đề.


1
Trình điều khiển x64 trên Windows XP Pro x64 là rác, nhưng trình điều khiển Vista và 7 x64 đã rất trưởng thành trong một thời gian.
MDMarra

0

Đây là một câu hỏi khá phức tạp vì phải mất một số thành phần để giải quyết. Những thành phần đó là:

  • Bộ phận xử lý trung tâm; đơn vị xử lý trung tâm; Bộ phận điện tử Trung tâm
  • Bộ điều khiển bộ nhớ
  • BIOS / (U) EFI
  • Hệ điều hành
  • Ứng dụng

Mục cuối cùng không liên quan trực tiếp đến vấn đề, nhưng tôi đã thêm nó cho mục đích hoàn chỉnh.

Tóm lại, tất cả các thành phần trên phải hỗ trợ hơn 4 GB bộ nhớ để thành công.

Bộ phận xử lý trung tâm; đơn vị xử lý trung tâm; Bộ phận điện tử Trung tâm

Hãy bắt đầu với CPU. Nhưng trước tiên, điều quan trọng cần lưu ý là CPU không có bất kỳ khả năng kỳ diệu nào để sử dụng bất kỳ bộ nhớ nào cả. Thay vào đó, nó chỉ có thể truy cập bất kỳ địa chỉ nào trong không gian địa chỉ của nó . Bây giờ đến đây bitness-điều. CPU 32 bit có khả năng truy cập các địa chỉ trong phạm vi từ 0 đến 4 GiB. Tuy nhiên, phạm vi này không chỉ chứa được RAM, ROM, SMRAM , Bảng ánh xạ địa chỉ đồ họa mà còn tất cả các I / O được ánh xạ bộ nhớ cần thiếtvà nhiều hơn nữa, có thể yêu cầu một phần đáng kể của dải địa chỉ này. Kết quả là có thể hoàn toàn có thể, một số địa chỉ bộ nhớ bị che khuất bởi những sử dụng đó và do đó không có sẵn cho các hoạt động trên RAM. Để lấy lại bộ nhớ ẩn, cần phải mở rộng không gian địa chỉ CPU có thể truy cập . Trong trường hợp mở rộng địa chỉ vật lý CPU 32 bit có thể giúp đỡ. Cho phép đánh địa chỉ lên tới 64 GiB. Theo mặc định, CPU 64 bit hoạt động ở chế độ 64 bit có khả năng truy cậplên tới 16 EiB, khá lớn và không yêu cầu các thủ thuật như vậy. Nhưng mặt khác, CPU 64 bit sử dụng địa chỉ 64 bit là không thực tế, vì vậy trong thực tế, chúng vẫn bị giới hạn bởi bus địa chỉ của chúng ở phạm vi nhỏ hơn 16 EiB.

Bộ điều khiển bộ nhớ

Ban đầu, nó được đặt tại Northbridge , nhưng đã được AMD chuyển sang bộ xử lý chết bởi AMD bắt đầu với bộ xử lý AMD64 và Intel với bộ xử lý Nehalem của họ. Ngay cả khi CPU có PAE có khả năng tự truy cập 64 GiB, nó vẫn cần MCU để truy cập RAM. Nói một cách đơn giản: CPU truy cập vào địa chỉ cụ thể sẽ nhận được phản hồi từ thiết bị PCI, flash ROM BIOS hoặc MCU, nếu địa chỉ được yêu cầu nằm trong RAM, v.v. Tuy nhiên, không có gì lạ khi MCU (có thể ở Northbridge hoặc CPU) hỗ trợ không gian địa chỉ ít hơn nhiều so với 64 GiB vì lý do tiếp thị chẳng hạn.

BIOS / (U) EFI

BIOS / (U) EFI cũng rất quan trọng vì nhiệm vụ của họ là cấu hình phần cứng trước khi mọi thứ thực sự có thể hoạt động. Trong số những thứ khác, họ chịu trách nhiệm ánh xạ toàn bộ không gian địa chỉ của bộ xử lý với phạm vi bộ nhớ của các thiết bị phần cứng, xe buýt, RAM, v.v. Điều thú vị có thể xảy ra là toàn bộ RAM bị chia thành từng mảnh và được ánh xạ tại một số điểm không liền kề có sẵn. Vấn đề với BIOS là các nhà phát triển của nó có thể không mong đợi nhiều hơn 3 GiB sử dụng RAM trong hệ thống của họ và vì vậy BIOS sẽ không ánh xạ chính xác tất cả bộ nhớ sẽ được sử dụng. Nhiều khả năng điều này sẽ không xảy ra với (U) EFI.

Hệ điều hành

Hệ điều hành cũng nên hỗ trợ giải quyết nhiều hơn 4 GiB bộ nhớ. Để cụ thể hơn, nó nên cấu hình CPU để sử dụng PAE. Một số HĐH 32 bit hoàn toàn có khả năng sử dụng PAE và truy cập hơn 4 GiB, một số khác có giới hạn phần mềm trên bộ nhớ tối đa, mặc dù chúng cho phép PAE tăng cường bảo mật (ví dụ Windows XP). Một lần nữa, các hệ điều hành 64 bit tự nhiên không gặp khó khăn như vậy và thường hỗ trợ hơn 4 GiB bộ nhớ.

Ứng dụng

Điểm cuối cùng là từ một thế giới khác, vì các ứng dụng thường hoạt động trong Không gian địa chỉ ảo , tôi đã thêm nó cho mục đích hoàn chỉnh. Tuy nhiên, phải mất một số bước bổ sung trong khi biên dịch cho ứng dụng để có thể sử dụng nhiều bộ nhớ hơn. Theo mặc định, ứng dụng 32 bit chỉ có khả năng sử dụng 2 GiB bộ nhớ. Ứng dụng 32 bit tương tự có thể giải quyết tới 4 GiB bộ nhớ, miễn là HĐH hỗ trợ điều đó và đã kích hoạt CPU PAE. Cụ thể hơn, nó có thể sử dụngtối đa 3 GiB bộ nhớ, 1 GiB còn lại sẽ có thể được định địa chỉ là các thư viện và nhân hệ điều hành chung, nhưng không thể ghi được (cuối cùng điều này phụ thuộc vào kiến ​​trúc hệ điều hành thay vì chính ứng dụng). Một lần nữa, các ứng dụng 64 bit thực sự hỗ trợ giải quyết hơn 4 GiB bộ nhớ và không gặp rắc rối như vậy ngay từ đầu.

Để đặt tất cả những điều này vào quan điểm, hãy xem xét một số ví dụ.

Xem xét Bộ điều khiển bộ nhớ Intel® 82945G . Trang web của Intel tuyên bố rằng nó không hỗ trợ PAE và bị giới hạn ở 4 GB RAM. Hãy tham khảo đoạn văn bản 9 System Address Mapdữ liệu. Nó có rất nhiều thông tin. Thú vị nhất là Figure 9-3. Main Memory Address Range: Hình 9-3.  Phạm vi địa chỉ bộ nhớ chính và đoạn văn 9.2 Main Memory Address Range (1 MB to TOLUD), có nội dung như sau:

Phạm vi địa chỉ này kéo dài từ 1 MB đến đỉnh bộ nhớ vật lý được phép (G) MCH (như được lập trình trong thanh ghi TOLUD). Tất cả các quyền truy cập vào các địa chỉ trong phạm vi này đều được (G) MCH chuyển tiếp đến bộ nhớ chính trừ khi chúng rơi vào TSEG tùy chọn, lỗ ISA tùy chọn hoặc bộ nhớ VGA bị đánh cắp IGD tùy chọn. (G) MCH cung cấp không gian giải mã địa chỉ bộ nhớ chính tối đa là 4 GB (2 GB cho 82945GC / 82945GZ / 82945PL). (G) MCH không ánh xạ lại không gian bộ nhớ APIC hoặc PCI Express. Điều này có nghĩa là khi dung lượng bộ nhớ vật lý trong hệ thống đạt 4 GB (2 GB cho 82945GC / 82945GZ / 82945PL), sẽ có bộ nhớ vật lý tồn tại nhưng không thể truy cập được và do đó hệ thống không thể sử dụng được.

Như đã nói, vì nó không hỗ trợ PAE, nên cuối cùng không thể ánh xạ lại PCI và mọi MMIO khác trên 4 GiB, do đó một số bộ nhớ sẽ bị che khuất và không được sử dụng. Điều đó có nghĩa là ngay cả khi nó được sử dụng với CPU hỗ trợ địa chỉ 36 bit, bộ nhớ trên 4 GiB vẫn sẽ không khả dụng một số bộ nhớ gần giới hạn 4 GiB cũng sẽ không được sử dụng.

Ngược lại, hãy xem xét Bộ điều khiển bộ nhớ Intel® 82955X , có liên quan đến bộ nhớ trước, nhưng nó được chỉ định để hỗ trợ 8 GB trái với bộ nhớ trước! Đoạn dữ liệu 2.1 Host Interface Signalsgợi ý rằng nó sử dụng bus địa chỉ 36 bit cho CPU, đây là một dấu hiệu tốt. Đoạn văn 7 System Address Mapcó những hiểu biết sâu sắc hơn. So sánh Figure 7-1. System Address Rangesvới cái mà chúng ta đã thấy trước đây: Hình 7-1.  Phạm vi địa chỉ hệ thống Điều này cho thấy rõ ràng rằng nó có khả năng sử dụng hơn 4 GiB RAM, với điều kiện là nó được sử dụng với CPU cũng có khả năng đánh địa chỉ 36 bit. Cũng đáng lưu ý rằng đoạn văn 7 System Address Mapnói rằng MCH supports 64 GB of addressable memory space. Tuy nhiên, điều rõ ràng hơn nữa là RAM có thể sử dụng tối đa được giới hạn ở mức 8 GB. Điều này một lần nữa tuyên bố sự khác biệt giữa địa chỉcó thể sử dụng khi tôi đang cố gắng truyền đạt trong phần CPU.

Để kết luận điều này, tôi muốn lưu ý rằng hai chipset liên quan trên thực tế có sự khác biệt rất lớn trong việc xử lý bộ nhớ.

Hãy kiểm tra Intel® Pentium® Processor Extreme Edition 840 . Nó không hỗ trợ tập lệnh 64 bit, nhưng không hỗ trợ PAE. Điều đó có nghĩa là nếu chạy ở chế độ 32 bit, nó sẽ không thể sử dụng hơn 4 GiB RAM (xin vui lòng, sửa cho tôi nếu tôi sai với giả định này). Hãy kiểm tra bảng dữ liệu và bảng Table 4-3. Signal Description. Mặc dù CPU này có khả năng 64 bit, nhưng nó vẫn bị giới hạn bởi bus địa chỉ rộng 36 bit, do đó giới hạn ở phạm vi địa chỉ có thể truy cập bắt đầu từ 0 đến 64 GiB.

Bây giờ hãy kiểm tra CPU gần đây hơn. Lấy Bộ xử lý Intel® Core ™ i7-7700 làm ví dụ. Nó được quảng cáo là hỗ trợ tới 64 GB RAM. Bây giờ hãy kiểm tra bảng dữ liệu của nó. Đoạn văn 2.3 System Address Mapthuyết phục chúng tôi rằng phạm vi địa chỉ của CPU này là từ 0 đến 512 GiB do bus địa chỉ 39 bit. Lưu ý rằng nó vẫn còn xa so với phạm vi 16 EiB lý thuyết cho CPU 64 bit. Đáng ngạc nhiên mặc dù nó làm rõ thêm rằng CPU này hỗ trợ tối đa 32 GiB RAM tối đa có thể sử dụng (trái với 64 GB trên trang web). Ngoài ra còn có một hình ảnh đáng quan tâm ở đây Figure 2-2. System Address Range Example: Hình 2-2.  Ví dụ về phạm vi địa chỉ hệ thống Nó thực hiện tốt công việc minh họa vấn đề với việc che mờ bộ nhớ của các thiết bị PCI, v.v. Ngoài ra, nó còn gợi ý cách khắc phục vấn đề này bằng cách ánh xạmột phạm vi từ RAM thực đến phạm vi địa chỉ trên trong phạm vi địa chỉ CPU . Do đó, đòi lại bộ nhớ ẩn để sử dụng. Lưu ý rằng việc ánh xạ lại này được thực hiện bởi BIOS / (U) EFI khi khởi tạo phần cứng và chính xác là vì lý do này, tôi đã đưa BIOS / (U) EFI vào danh sách đạn ở trên.

Tôi đã lấy các sản phẩm của Intel làm ví dụ, nhưng điều tương tự cũng đúng với AMD.

Bây giờ hãy thảo luận về cách thức hệ điều hành có liên quan. Hạt nhân Linux bao gồm hỗ trợ chế độ PAE đầy đủ bắt đầu từ phiên bản 2.3.23 và hoàn toàn có thể có hơn 4 GiB bộ nhớ có thể sử dụng với nhân Linux trên hệ thống 32 bit. Tuy nhiên, hãy lưu ý đến sự cố không xác định với nhân Linux 32 bit trên hệ thống có hơn 4 GiB RAM trên một số phần cứng (theo kinh nghiệm của tôi, nó có liên quan đến việc bắn hạ TLB). Dù sao Wikipedia có một thông tin tốt về hỗ trợ PAE . Điều thú vị là cách Windows XP bị giới hạn ở mức 4 GB, trong khi Windows Server 2003 Enterprise / Datacenter SP2 có khả năng đầy đủ 64 GB. Tương tự là cho các cặp Windows Desktop-Server khác.

Như bạn có thể thấy có nhiều kết hợp giữa các thành phần được liệt kê và trong một số trường hợp, việc thay thế CPU hoặc HĐH có thể giúp ích. Đối phó với BIOS / (U) EFI hoặc MCU khó hơn nhiều vì cái trước là độc quyền và được tích hợp vào hệ thống và không dễ sửa đổi, cái sau được tích hợp vào CPU hoặc được hàn trên tàu.


-4

nó hiển thị Ram 3574 MB vì ​​đó là bao nhiêu RAM MIỄN PHÍ và có sẵn cho máy tính sử dụng bất cứ lúc nào. Con số này là RAM mà máy tính của bạn có toàn quyền truy cập vì các chương trình và cài đặt được cài đặt sẵn trên PC sử dụng một lượng RAM được đặt, trong trường hợp của bạn, là 426mb. PC 6GB 64 bit của tôi hiển thị 5,8 GB RAM khả dụng không phải là 6GB đầy đủ. Đặt cược tốt nhất của bạn sẽ là xem xét nâng cấp PC của bạn


Nếu 3,5 GB là RAM miễn phí, thì tại sao Windows vẫn chia nó thành RAM miễn phí và RAM đã sử dụng? Đó là một hệ điều hành, nó nên biết mọi thứ, đặc biệt là nếu có thứ gì đó sử dụng tới 0,5 GB bộ nhớ. Các chương trình đã cài đặt không chiếm RAM cho đến khi chúng được khởi động.
gronostaj
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.