프로그램이 512MB RPi에서 실행 중인지 어떻게 확인합니까?


12

512MB RPI의 보드 버전이 달라 집니까?

즉, /proc/cpuinfo512MB RPi가 있는지 확인하기 위해 개정판을 볼 수 있습니까?

그렇지 않으면 가장 쉬운 방법은 무엇입니까?


시작 파일을 변경하기위한 도구를 작성하지 않거나 사용자에게 파일을 가지고 있거나 현재 부팅 구성이 하드웨어를 최대한 활용하고 있는지 여부를 사용자에게 알리려는 경우가 아니라면 궁극적으로 지식으로 많은 것을 수행 할 수 없습니다. Linux 커널에서 ARM의 응용 프로그램은 GPU 시작 코드에 의해 부여되지 않으면 실제로 추가 메모리를 사용할 수 없습니다.
Chris Stratton

답변:


10

당신이 말했듯이, cat /proc/cpuinfo | grep Revision명령은 보드 개정판을 제공합니다. 수정본은 16 진수 값입니다. 동등한 10 진수를 표시하려면이 명령을 실행하십시오 printf '%d\n' 0x#. 여기서 #이전 명령과 함께 표시되는 16 진 값입니다.

다음 차트에 따르면 코드 13 , 1415512MB 보드를 나타냅니다.

Model and revision                                          Decimal code(s)     Hexadecimal equivalent
Model B Revision 1.0                                        2                   0x2
Model B Revision 1.0 + ECN0001 (no fuses, D14 removed)      3                   0x3
Model B Revision 2.0                                        4, 5, 6             0x4, 0x5, 0x6
Model B Revision 2.0 (512 MB)                               13, 14, 15          0xd, 0xe, 0xf

출처 : Element14 커뮤니티 문서


1
향후 변경 될 수 있습니다. 코드 13,14,15는 항상 512MB의 RAM이 있지만 다른 코드가있을 수 있음을 확신합니다. 그리고 13 이상인 모든 코드가 512MB라고 가정하는 것은 좋지 않습니다. 왜냐하면 그것이 사실인지 알 수 없기 때문입니다. 따라서 스크립트 등에서 사용해서는 안됩니다.
Krzysztof Adamski

1
내 Pi는 큰 글자로 "512MB RAM"이라는 스티커가 붙은 상자에 들어 있지만 /proc/cpuinfo말합니다 Revision : 0005. 나는의 이미지에서 부팅하고있어 2012-09-18-wheezy-raspbian.zip에서http://www.raspberrypi.org/downloads
RedGrittyBrick

@ RedGrittyBrick : 나도 같은 것. 방금 어제 Pi를 받았으며 공식 블로그 에 따르면 512MB RAM 버전이 있습니다 (칩에서 "4G"를 볼 수 있음). 그러나 cat /proc/cpuinfo개정판 5를 반환합니다. 개정판이 SoC에 하드 기록되어 있지 않습니까? Raspian은 512MB RAM 버전을 "인식"하기 위해 업데이트가 필요합니까?
Morgan Courbet

@ 모건 : 당신과 마찬가지로, 내 Pi의 CPU에서 상단 칩 (RAM)은 Samsung K4P4G324EB로 표시되며 Samsung의 정보 는 이것이 "128Mx32"= 4GBit = 512MB임을 확인합니다. 나는 펌웨어 업데이트가 필요한 제안 포럼 항목 어딘가에 (나는이 SD 카드에있는 파일 중 하나입니다 생각)를 읽을했다
RedGrittyBrick

@ RedGrittyBrick : 나는 지금있다 Revision: 000f. 아마 최근에 dist-upgrade.
Morgan Courbet

7

Linux와 같은 최신 운영 체제에서 실제로 확인해야 할 것은 범용으로 사용할 수있는 메모리 양입니다. 물리적으로 설치된 전체보다 작을 수 있습니다. 예를 들어, 256MB 설치를 실행하는 512MB pi는 해당 메모리를 사용할 수 없게합니다.

그런 다음 파이에서 CPU 대 GPU 메모리 분할의 추가 문제가 있습니다 .GPU 부팅 프로세스가 이미 있기 때문에 Linux 부팅시 ARM CPU를 사용하기 위해 현재 메모리보다 훨씬 적은 양을 사용할 수도 있습니다. start.elf 파일이 결정된대로 상당한 양을 청구했습니다.

직접적인 질문에 대답하기 위해 첫 번째 줄 /proc/meminfo또는 free명령은 Linux에서 전체적으로 사용할 수있는 실제 메모리 양을 알려줍니다.

주어진 응용 프로그램에서 사용할 수있는 메모리의 양이 다시 더 복잡해집니다. 커널, 버퍼 및 기타 응용 프로그램은 메모리를 요구합니다. 그리고 아마도 "디스크"로 SD 카드와 함께 일반적으로 사용되지는 않지만 스왑 파티션은 사용 가능한 가상 메모리가 실제 RAM을 초과하게 만들 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.