아치 리눅스는 내가 8 개만있을 때 약 16 기가의 램이 있다고 생각한다


10

몇 가지 검색을했는데 왜 Google에서 왜 아치에 대해 7.7 기가 할당되고 7.9 기가 스왑에 할당되었는지 아무것도 찾을 수 없습니다.

  • 나는 8 기가 있습니다.

  • 일반보다 스왑에 더 많은 램을 할당했습니다.

할당을 어떻게 변경할 수 있습니까?

출력 cat /proc/meminfo: MemTotal: 8091960 kB MemFree: 4925736 kB MemAvailable: 6131188 kB Buffers: 268936 kB Cached: 1219460 kB SwapCached: 0 kB Active: 1527516 kB Inactive: 1301140 kB Active(anon): 768904 kB Inactive(anon): 711440 kB Active(file): 758612 kB Inactive(file): 589700 kB Unevictable: 32 kB Mlocked: 32 kB SwapTotal: 8300540 kB SwapFree: 8300540 kB Dirty: 1960 kB Writeback: 0 kB AnonPages: 1306968 kB Mapped: 382800 kB Shmem: 140100 kB Slab: 197964 kB SReclaimable: 163104 kB SUnreclaim: 34860 kB KernelStack: 6864 kB PageTables: 29200 kB NFS_Unstable: 0 kB Bounce: 0 kB WritebackTmp: 0 kB CommitLimit: 12346520 kB Committed_AS: 3927808 kB VmallocTotal: 34359738367 kB VmallocUsed: 0 kB VmallocChunk: 0 kB HardwareCorrupted: 0 kB AnonHugePages: 186368 kB HugePages_Total: 0 HugePages_Free: 0 HugePages_Rsvd: 0 HugePages_Surp: 0 Hugepagesize: 2048 kB DirectMap4k: 584316 kB DirectMap2M: 7716864 kB DirectMap1G: 0 kB


21
스왑 은 정의에 따라 RAM을 사용하지 않습니다.
user4556274

1
같은 (또는 조금 더) 스왑은 RAM이 좋은 시작입니다 ... 또한 최대 절전 모드 (RAM을 디스크에 넣으십시오)로 바꾸면 스왑 공간이 사용될 수 있습니다. 예전에는 RAM보다 2 배 많은 스왑이 있었지만 Linux의 경우 "규칙"은 512MB 이하 (또는 256MB) 일 때만 적용되었습니다. 그러나 유닉스 시스템 (적어도 하나)은 디자인이 항상 최소한 2 배의 스왑 가져야 하는 디자인이었습니다 . 초기 Linux에는 파티션 당 스왑 크기, 스왑 파티션 수 및 / 또는 총 스왑 수에 제한이있었습니다. TBC
Baard Kopperud

2
계속 ... 필요한 스왑의 양을 실제로 결정하려면 실제로 프로세스 (및 사용자)가 실제로 실행하는 프로세스의 양을 신중하게 감사해야합니다. 그러나 스왑은 너무 작은 RAM을 대체 할 수는 없습니다. 이 말은-2GB (당신과 같은 "8GB"만이 아닌) RAM을 가진 누군가로부터-대부분의 시스템은 모든 프로세스를 RAM 에 유지할 수 있습니다 . 그러나 그들은하지 않습니다 필요 하고 때로는 전체 "사용하지 않는"프로세스 - - 스왑이 프로세스의 "사용되지 않는"메모리 페이지를 저장하는 데 사용됩니다, 그래서에 따라서 RAM ...이 "사용하지 않는"RAM을 확보를 다음 버퍼로 사용되며 캐시, 일의 속도를 높이기 위해.
Baard Kopperud

2
7.7GB 숫자는 아마도 300MB의 실제 RAM이 커널에 영구적으로 할당 된 것입니다. 해당 RAM은 여전히 ​​존재하지만 일반 프로그램에는 사용할 수 없습니다.
zwol

1
"Arch가 16GB RAM을 가지고 있다고 생각합니다"를 어떻게 믿게됩니까?
marcelm

답변:


26

이것이 말한 것은 16GB의 가상 메모리 가 있다는 것 입니다.

가상 메모리는 추가 된 총 실제 RAM 및 스왑 공간입니다.

물리적 공간보다 시스템이 더 많은 프로그램을 실행하게하는 방법입니다.

머신에 얼마나 많은 스왑을 할당해야하는지는 복잡하고 의견이 많은 질문입니다. 2 명에게 질문하고 3 개의 답변을받습니다. :-)

설정이 나쁘지 않으므로 가상 메모리의 작동 방식과 조정 방법에 대해 자세히 배울 때까지 변경하지 않는 것이 좋습니다. 좋은 출발점입니다.


5
" 가상 메모리는 총 실제 RAM과 스왑 공간이 합산 된 것입니다. "아닙니다. 예를 들어, 4GB의 RAM과 4GB의 스왑이있는 64 비트 컴퓨터에서 64GB 파일을 메모리 매핑 할 수 있습니다. RAM과 스왑이 최대 8GB를 추가하더라도 64GB의 가상 메모리입니다.
David Schwartz

1
@DavidSchwartz가 정확합니다. 그것은 가상 메모리는 말을 더 적절한의 메모리로 해결 될 수있는 것이 바람직와 함께 뭔가 를 백업. 이는 RAM 칩, 일부 I / O 포트, 스왑 파티션, 디스크의 스왑 파일 또는 운영 체제 나 메모리 관리자에 특별한 의미가없는 일반 파일 일 수 있습니다. 또한 무언가를 쓰고 즉시 다시 읽으면 쓴 것을 다시 읽는 방식으로 작동하지 않아도됩니다. (예를 들어 일부 I / O 레지스터는 이런 식으로 작동합니다.)
CVn

1
"Unix 101 초보자 버전"입니다. 또한 실행 가능 페이지를 메모리 맵에 대한 읽기 전용 페이지로 추가하는 방법과 초과 할당과 같은 다른 재미있는 것들에 대해서는 언급하지 않았습니다. 그러나 첫 번째 수준의 근사치로, VM = RAM + swap은 충분히 가깝고이 모든 질문에 대한 것입니다.
Stephen Harris

"이것이 말한 것은 16GB의 가상 메모리가 있다는 것입니다." -OP가 Arch에 16GB가 있다고 생각하는 이유 를 설명하지 않았으므로 알 수있는 방법이 없습니다 .
marcelm

1
@StephenHarris이 질문 뒤에 오해를 일으키는 것은 첫 번째 수준의 근사치입니다. 그들이 단순화했거나 실제로 정확하다는 것을 나타내는 한, 단순화는 괜찮습니다.
David Schwartz
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.