Solaris - Swap Partition

OS/Solaris 2016. 5. 3. 13:00

<Swap Partition>


Swap은 하드디스크를 메모리처럼 쓰는 기법을 말한다. 물리적인 메모리가 모자라면 하드디스크를 메모리인양 써서 메모리를 확보한다.

예를 들어서 메모리 512MB 시스템이 있다고 할 때, 이런 저런 프로그램들을 많이 실행해서 메모리가 부족해지면, 메모리 상에 적재된 프로그램들 중에서 당장 접근하지 않아도 되는 프로그램이며 데이터를 하드디스크로 옮기고 메모리의 일부를 비운다. 그렇게 확보한 메모리를 다른 프로그램에 할당해 주는 것이다.

 

메모리 512MB 시스템이 있습니다. 예에서 편의상 스왑은 1GB, , 메모리의 2배로 잡았다고 합시다.

 

A라는 프로그램으로 100MB 사용

B라는 프로그램으로 100MB 사용

C라는 프로그램으로 150MB 사용

D라는 프로그램으로 80MB 사용

E라는 프로그램으로 35MB 사용

F라는 프로그램으로 70MB 사용

530MB 정도를 쓰게 되네요. 그럼 메모리가 부족해지죠?

 

멀티태스킹 환경을 보면 사용자가 지금 쓰는 프로그램만 활성화 되어 있다. 나머지는 비활성화 되어 있어서 창의 색깔이 다르게 된다. 이렇게 사용자가 당장 쓰지 않는 프로그램의 데이터를 하드디스크로 옮기고, 얼마나 옮기는지는 모르지만 어쨌거나 일부를 옮긴다. (이걸 스왑이라고 한다)

 

필요한 530MB 용량 중 100MB가 스왑으로 옮겨졌다고 하자. 그럼 현재 메모리 점유율은 430MB 정도 되고 80MB 정도가 여유가 생겼을 것이다.

 

80MB를 자원으로 또 다른 프로그램을 실행할 수 있다. 물론 새로 실행시키는 프로그램이 용량이 커서 많은 메모리가 필요하다면 그때도 메모리 일부를 하드디스크로 옮길 것이다.

이상 Swap의 개념이었다.



 

<Swap의 역할>


간혹 윈도우에서 가상메모리가 부족하다는 메시지가 뜨는 경우를 본 적이 있을 것이다. 그러나 시스템이 다운이 되거나 하지는 않는다. 윈도우는 기본적으로 가상메모리를 윈도우 자체로 관리하게 되어 있기 때문에 그러리라고 생각한다만 리눅스의 경우 스왑을 포함해서 메모리가 적으면 시스템이 다운된다. MS 윈도우에서도 가상메모리를 사용자가 직접 지정하는 것이 기본값(Default)이라면 아마 마찬가지일 것이다. 메모리를 통상 작업대에 비유하는데, 할 일은 많은데 작업대가 없으니 다운되는 것이 당연하겠지...?


 

<Swap의 추가>

Swap을 추가하는 것은 그리 권장할 만한 사항이 못되므로 처음 partition을 나눌 때 충분한 공간을 만들어 주는 것이 좋다.



현재 사용하고 있는 swap을 확인해보자.





다음은 swap의 용량이 여유가 있는 것을 알 수 있다.

 

swap을 추가하기 위해서는 하드디스크의 용량을 확인해야 한다.

다음 그림을 보면 c1t1d0s01.9G정도 여유가 있는 것을 알 수 있다.

 


여유 용량의 하드디스크까지 알아봤으니 본격적으로 swap을 추가해보자.

1. /test1g짜리 빈 파일을 만든다.

 


2. swap_testswap을 추가한다. 그 후, 확인해본다.



 

3. 컴퓨터를 시스템을 재부팅하면 모든 데이터들이 날라가기 때문에 /etc/vfstab에 자동 마운트 시켜준다.

다음을 /etc/vfstab에 추가시켜 준다.



'OS > Solaris' 카테고리의 다른 글

Solaris - backup  (0) 2016.05.05
Solaris - Run level  (0) 2016.05.04
Solaris - Boot PROM, EEPROM  (0) 2016.05.03
Solaris - Root password 분실시 해결방법  (0) 2016.05.02
Solaris - find  (0) 2016.05.01
posted by 경원구