Unix/Linux OS별로 메모리를 관리하는 방식에 대해 간략히 알아 보도록 하겠습니다.
1. Linux
1) 메모리 할당 방식
- 리눅스는 여유 메모리를 캐쉬 영역으로 사용하려고 하는 습성이 있습니다.
- 이유는 여유 메모리를 최대한 캐쉬영역으로 활용하면 성능향상에 도움이 되기 때문입니다.
- 커널 2.6부터는 이 부분에 대해 제한을 두게 되며,(#cat /proc/sys/vm/swappiness) 기본적으로 60%로 설정되어 있어서 물리 메모리 사용률이 해당 값 이상으로 사용되면 Swapping을 하기 시작합니다.
2) 참조사항
- Linux 의 경우 Filecache영역이 큰경우 Used+Filecache 사용률이 100% 가까이 발생할 수 있는데, 이는 리눅스가 자체적으로 유휴 공간을 Cache 영역으로 잡아두어 최대한 Cache를 활용하여 성능향상을 하기위함 입니다.
2. AIX
1) 메모리 할당 방식
- AIX 의 경우 Comp(연산)와 Noncomp(Filecache) 영역으로나누며, 메모리 사용률이 100%가까이 나타날 수 있는데 이유는 물리적인 메모리를 100% 사용할 수 있도록 구성되어 있기 때문입니다.
- 즉, Comp영역을 제외하고 나마지 영역은 Noncomp 영역으로 할당 되어 사용되고, Comp영역에서 메모리가 필요하게 되면 Noncomp 영역을에서 가져와 사용하도록 되어 있습니다.
- 해서 AIX에서 메모리 병복의 기준은 Pagingspace Activity로 판단하게 됩니다.
- SUN과 다르게 미리 Reserved영역을 할당하지 않고, Deferred형태로 동작합니다.
2) 메모리 관리
가) Comp
- CPU에 의해 동작하는 프로세스들이 사용하는 메모리 사용률.
나) NonComp
- 파일쪽 I/O작업시 사용하기 위해 캐시로 돌려놓은 메모리 사용률.
- 즉, Disk I/O 성능 향상을 위해 File Cache로 사용되는 영역을 의미.
3) 참조사항
- CPU에 의해 계산되는 작업이 많으면 Comp사용률이 높아지고, 파일쪽에서 메모리에 올려놓은 작업이 많으면 NonComp사용률이 높아집니다.
- Comp와 NonComp 합친값이 100을 사용하되, PagingSpace값이 올라가지 않을때 가장 적당한 Memory를 사용하고 있는 것이고, 지속적으로 Paging이 일어나면 메모리 부족으로 간주합니다.
3. HP-UX
1) 메모리 할당 방식
- HP의 메모리 할당 정책은 arena라고 부르는 부분과 관련이 깊습니다.
- 시스템은 메모리를 할당하기 위해 메모리풀(arena)을 관리하는데 쓰레드 프로그램의 경우 이 arena를 통해 메모리를 할당 받게 됩니다. 만일, 쓰레드의 개수가 많이 증가할 경우 arena의 개수를 조정함으로써 동시성 측면에서 성능 향상을 도모할 수 있습니다.
4. Solaris
1) 메모리 할당 방식
- 솔라리스는 reserved라는 형태로 메모리를 할당합니다.
- reserved 영역은 swap영역에 존재하며, 어떤 프로세스가 10M를 요청하면 swap영역에 10M를 먼저 할당해 놓고, 실제 해당 프로세스가 메모리에 접근할 때 물리적 메모리에 10M를 할당하는 형태로 동작합니다.
'OS > Linux' 카테고리의 다른 글
[Linux] CentOS 부팅 실패 사례 (0) | 2024.11.26 |
---|---|
리눅스 FC Adapter LVM 생성 및 관리 (기존 VG 확장) (0) | 2024.11.21 |
리눅스 FC Adapter LVM 생성 및 관리 (VG 신규 생성) (0) | 2024.11.21 |
[Linux] 리눅스 Disk 상태 체크 방법 (0) | 2022.11.10 |
[Linux] 리눅스 메모리 사용현황 파악 (0) | 2021.02.08 |