시스템이 사용 가능한 모든 RAM을 사용합니까?


4

16GB의 RAM을 메인 보드에 설치하여 가져 가면 안됩니다. 더 나은 마더 보드를 사거나 아무것도 바꾸어야합니까? 잘 작동하는 것 같습니다.

메모리 : Crucial Ballistix Sport "(8GBx2) DDR3 PC3-12800"
보드 : Asrock N68C-S UCC "시스템 메모리의 최대 용량 : 8GB"

  1. 않는 gnome-control-center.real info거짓말?

    Memory: 15,7GB
    
  2. 않습니다 dmidecode -t16내 보드가 2 배 8기가바이트 또는 8기가바이트 총을 수 있다고?

     Maximum Capacity: 8 GB
     Number Of Devices: 2
    
  3. 않는 free -h사용 15기가바이트 중 11 말을 거짓말?

                 total       used       free     shared    buffers     cached
    Mem:           15G        11G       4,2G       7,8G       140M       9,3G
    
  4. 이 출력이 dmidecode -t 171600 MHz 속도라고 말하면 안됩니까?

    Handle 0x0010, DMI type 17, 27 bytes
            Size: 8192 MB
            Speed: 400 MHz
    Handle 0x0012, DMI type 17, 27 bytes
            Size: 8192 MB
            Speed: 400 MHz
    

1
해당 사이트의 설명 텍스트가 잘못되었거나 오도 된 것으로 추측합니다. 보드가 추가 메모리를 지원하지 않는 경우 확실히에 표시되지 않아야합니다 free.
Tom Hunt

그러나 dmidecode웹 사이트가 아닌 마더 보드에서 동일한 제한 사항을 읽습니다. 이것이 제조업체가 동일한 실수를 두 번했다는 것을 의미합니까?
cprn

답변:


6

짧은 이야기 :

mobo 게시물과 시스템이 부팅되고 free / top이 램을 16gB로 표시하면 작동합니다. mobo 제작자조차도 시스템 보드의 용량을 과소보고 할 수 있으므로 실제 테스트는 램이 올바르게 설치되고 올바르게 일치하고 실행 (즉, 부팅 및 안정성이있는 상태) 즉 충돌하지 않는지 여부입니다. 모든 메모리를 무언가 또는 다른 용도로 사용하고 시스템이 안정적인지 확인하여 테스트 할 수도 있습니다. 아주 좋은 램을 가지고 있기 때문에 중요합니다. 낮은 등급의 램은 16gB에서 작동하지 않았을 가능성이 있습니다. 그렇기 때문에 16gB를 지원하지는 않지만보다 보수적 인 8gB를 선택하는 이유가 될 수 있습니다.

무료, 상단과 같이 시스템의 실제 메모리를보고하는 도구는 거짓말을하지 않습니다. 즉 커널이 액세스 할 수있는 사용 가능한 메모리입니다. dmi는 해당 데이터를 작성한 회사를 기반으로하기 때문에 dmi 데이터를 읽는 도구가 있습니다.

gnome-control-center.real info는 거짓말입니까?

Memory: 15,7GB

아니요, 그것은 당신에게 진실을 말하고 있습니다.

dmidecode -t16은 보드가 총 8GB 또는 8GB를 사용할 수 있다고 말합니까?

 Maximum Capacity: 8 GB
 Number Of Devices: 2

총 8gB입니다. 샘플 유형 16 (이 경우 광산)을 볼 때 명확하게 볼 수 있습니다. 용량은 어레이의 용량을 나타냅니다. 이것은 단일 메모리 배열입니다. 이 어레이는 8gB의 용량 (내 경우에는 맞지만)의 용량을 가지고 있으며 제 경우에는 4 개의 장치가 있습니다. 귀하의 경우에는 2 개의 장치가 있습니다. 불행히도 하나의 슬롯에서 사용할 수있는 최대 스틱으로 전체 용량을 추론 할 수는 없습니다. 즉, 8gB 용량을 가진 4 개의 슬롯을 가질 수 있지만 최대 슬롯 당 4gB를 가질 수 있으므로 4x2gG 스틱 또는 2x4gB를 사용할 수 있지만 4x4gB는 사용할 수 없습니다.

Handle 0x0012, DMI type 16, 15 bytes
Physical Memory Array
        Location: System Board Or Motherboard
        Use: System Memory
        Error Correction Type: None
        Maximum Capacity: 8 GB
        Error Information Handle: Not Provided
        Number Of Devices: 4

free-h는 15GB 중 11 개가 사용되었다고 말하는가?

아닙니다, 자유 는 당신에게 진실을 말하고 있습니다. top 은 같은 사실을 알려줄 것입니다 (커널이 자유 롭다고 생각하는 것이 자유롭지 않은지에 대한 질문은 매우 간결하며 이러한 도구의 구현에 따라 다르지만이 질문의 주제와는 거리가 먼 것입니다). 이것은 액세스 할 수있는 램과 사용 된 내용을 사용자에게보고하는 커널입니다.

이 dmidecode -t 17의 출력이 1600 MHz 속도를 말하면 안됩니까?

시스템에 따라 다릅니다. 그리고 dmidecode가 데이터를 해석하는 방법에 대해. 나는 질문의이 부분에 녹슬었다.

긴 이야기 :

램보고 문제를 처리해야했기 때문에 dmidecode 램 데이터 보고서의 품질 차이를 발견해야했습니다. dmidecode의 결함은 DMI 데이터를 해석하거나 수정하지 않고보고하는 것이기 때문에 dmidecode의 결함이 아닙니다.

첫째 : dmidecode는 본질적으로 두 가지 데이터 세트를보고합니다. 한 모델에 적합한 다음 해당 데이터를 다른 모델로 복사하기 만하면됩니다. 2 : 램 슬롯에 램이 있는지 여부와 같은 실제 데이터, 크기, 유형, 속도 등

따라서 시스템 보드 램 용량의 경우 dmidecode는 dmidecode가 실행될 때 사용할 수있는 실제 기술 사양을 기반으로 용량을 알려주지 않습니다. 그 일을하는 것은 하드웨어를 운송하기 전에 앞서 언급 한 미불 한 사람이 일부 상자를 확인하라는 내용의 데이터를 반복하는 것입니다.

일부 mobo 공급 업체는이 데이터를 완벽하게 제공하므로 해당 진술을 완전히 신뢰할 수 있습니다. 다른 사람들은 완전히 무의미한 진술을 제공하여 dmidecode가 설치된 4x2gB 램을 올바르게보고하지만 용량은 4gB입니다.

예를 들어, dmidecode는 항상 그렇지는 않더라도 설치된 램에 대한 정확한 정보를 아주 정확하게 말하지만 dmi 데이터는 종종 용량에 대한 잘못된 데이터를 포함한다고 생각합니다.

이 문제를 처리해야 할 때는 항상 스틱 별보고를 정식으로 사용했으며, 실제 용량이 아니기 때문에 항상 실제 용량에 대한 dmidecode 데이터를 무시하도록했습니다.

# can be true, false, totally off, or pure fiction re capacity
# the rest of the data is usually pretty good though
dmidecode -t 5 

# extremely accurate and reliable, per stick information. Trust it.
dmidecode -t 6 

# same as 5, might be right re maximum capacity, might not be
dmidecode -t 16 

# extremely accurate, can trust it, but can't learn max 
dmidecode -t 17 capacity.

기본적으로 마더 보드 공급 업체에 따라 다르며 5와 16이 올바르게 사용하는 데이터 필드를 완성 했습니까? 나는 그들이 채우고 싶지 않은 필드를 명확하게 보여주는 예를 줄 것입니다.

Handle 0x001A, DMI type 17, 27 bytes
Memory Device
        Array Handle: 0x0012
        Error Information Handle: Not Provided
        Total Width: 64 bits
        Data Width: 72 bits
        Size: 2048 MB
        Form Factor: DIMM
        Set: None
        Locator: DIMM3
        Bank Locator: BANK3
        Type: DDR2
        Type Detail: Synchronous
        Speed: 400 MHz
        Manufacturer: Manufacturer3
        Serial Number: SerNum3
        Asset Tag: AssetTagNum3
        Part Number: PartNum3

이 모든 것은 dmi 데이터와 / sys 내부에서 채워지지 않았거나 공급 업체가 채우지 않았거나 잘못 채워진 데이터를 통해 볼 수 있습니다. 속도 이후의 항목이 제대로 채워지지 않았습니다. 개인적으로 가장 좋아하는 것은 다음과 같습니다. 생각보다 내부적으로 훨씬 일반적입니다.

[Field Name]: To be filled by O.E.M.

이 시대에 실제로 시스템에 정확히 무엇이 있는지 알려주는 무언가가있을 것이라고 생각할 것입니다. 그러나 슬프게도 그렇지 않습니다.

이 문제를 보여주는 수백 개의 머신 dmidecode 데이터 인스턴스를 보여줄 수 있지만 실제로는 1-2 개만 표시하면됩니다. 나는 더 나은 mobo 제작자들이 dmi 데이터 세트를 더 잘 채우는 경향이 있다고 생각하는 경향이 있고, 더 낮은 moz 제작자들은 그렇게하지 않는 경향이 있지만 그것에 대해 단단하고 빠른 규칙은 없습니다.

기본적으로이 정보는 dmidecode 및 ram에서 신뢰할 수있는 정보입니다.

DMI type 5
# Almost nothing in there except some generic information
Error Detecting Method: 64-bit ECC
Error Correcting Capabilities::
                None
Associated Memory Slots: 4
Enabled Error Correcting Capabilities:
                None


DMI type 6
Socket Designation: DIMM3
Current Speed: 167 ns
Installed Size: 2048 MB (Double-bank Connection)
Enabled Size: 2048 MB (Double-bank Connection)
Error Status: OK # probably

DMI type 16
Number Of Devices: 4

DMI type 17
Data Width: 72 bits
Size: 2048 MB
Locator: DIMM0
Bank Locator: BANK0
Type: DDR2
Type Detail: Synchronous # usually anyway

Gilles의 의견 :

dmidecode가 최대 용량을 과소보고하는 또 다른 이유는 X GB 스틱이 아직 보드가 제조되지 않았을 때 (또는 보드 제조업체가 어떤 이유로 테스트를 귀찮게하지 않았을 때) 보드에 Y GB를 문서화 한 것입니다. Y <X 인 경우 최대 값이지만 X GB 스틱이 나타나면 작동하는 것으로 나타났습니다.

핵심은 dmidecode가 메모리 어레이에보고하는 최대 용량이 계산되지 않는다는 것을 인식하는 것입니다. 이는 누군가가 mobo에 대한 dmi 테이블을 만들 때 입력 한 일부 데이터 일뿐입니다. 나는 일반적으로 dmi 데이터에 대한 공급 업체 mobo 문서를 신뢰하지만이 포스터가 발견 한 것처럼 신뢰할 수는 없습니다.


와! 최대한 포괄적입니다! :) 대단히 감사합니다!
cprn

dmidecode가 최대 용량을 과소보고하는 또 다른 이유는 X GB 스틱이 아직 보드가 제조되지 않았을 때 (또는 보드 제조업체가 어떤 이유로 테스트를 귀찮게하지 않았을 때) 보드에 Y GB를 문서화 한 것입니다. Y <X 인 경우 최대 값이지만 X GB 스틱이 나타나면 작동하는 것으로 나타납니다.
Gilles

네, 많은 이유가 있습니다. 당신이 말하는 것은 다른 것일 수도 있습니다. 그것에 대해 조금 더 추가하도록 업데이트되었습니다.
Lizardx

1
DDR2 램은 클럭 당 4 번 전송되므로 실제로 400MHz로 실행되지만 x4 곱셈기를 계산할 때 실제로 "1600"입니다.
psusi

그의 마지막 질문을 명확하게 알려주는 psusi에게 감사드립니다.
Lizardx
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.