최근 수정 시각 : 2023-03-08 23:38:19

스와핑(동음이의어)

1. 개요2. 성적 의미의 스와핑3. 스왑4. 채팔이 작가의 소설5. 소설 원작 웹툰6. 게임에서의 스와핑7. 컴퓨터 자원 확보 기법8. 컴퓨터 모듈 교체(추가/제거) 방식

1. 개요

스와핑(Swapping)은 우리말로 교환이라고 한다.
  • 1960년도에 미국에서 유행한 중고품 교환 장터.
  • 컴퓨터 용어 중 하나. 주로 두 변수의 값을 교환하거나, 프로세스가 차지하는 메모리 공간이 충분치 않을 때 저장매체에 잠시 내리고 올리는 행위를 뜻한다.
  • 선물환 거래에 있어서 현물환과 선물환이 동시에 매매되거나 선물환 매도와 선물환 매입이 동시에 이뤄지는 거래.
  • 외환 부족 문제를 해결하기 위해 이루어지는 통화의 교환[1]

다만, 비영미권인 우리나라나 일본에서는 이 단어를 들으면 다른 성적 의미로 변질되어 받아들이는 경우가 많다.[2]

2. 성적 의미의 스와핑

파일:상세 내용 아이콘.svg   자세한 내용은 스와핑 문서
번 문단을
부분을
참고하십시오.

3. 스왑

파일:상세 내용 아이콘.svg   자세한 내용은 스왑 문서
번 문단을
부분을
참고하십시오.

4. 채팔이 작가의 소설

파일:상세 내용 아이콘.svg   자세한 내용은 스와핑(소설) 문서
번 문단을
부분을
참고하십시오.

5. 소설 원작 웹툰

파일:상세 내용 아이콘.svg   자세한 내용은 스와핑(웹툰) 문서
번 문단을
부분을
참고하십시오.

6. 게임에서의 스와핑

어원은 스와핑의 우리말 뜻인 교환. 주로 줄여서 스왑이라고 많이 부른다.
테란은 건물에 달 수 있는 부속 건물은 기술실, 반응로의 두 종류가 있는데, 기술실은 본 건물에서 고급 유닛을 뽑게 해 주고 추가적인 업그레이드를 하게 해 주는 기능을 가지고 반응로는 기본 유닛만을 한 번에 두 기씩 생산하게 하는 기능을 가진다.

일단 종류만 맞으면 부속 건물을 다른 본 건물과 연결할 수 있는 테란의 특성을 활용한 것으로, 전작에서는 건물마다 연결할 수 있는 부속 건물이 달랐지만 본작에서는 모든 부속 건물이 호환되기 때문에 미리 지어놓는 방법이 가능해졌다. 예를 들면 병영에 기술실을 지어 놓고 군수공장이 만들어지면 병영을 다른 곳으로 치우고(이제 이 병영은 기술실이나 반응로를 다시 지을 수 있게 된다) 남은 기술실 옆에 공장을 놓으면 공장이 그 기술실을 쓸 수 있다.

주로 빠른 밴시 테크에도 쓰이고[3], 상황에 따라 엄청나게 다방면에 많이 쓰인다.
  • FPS 게임에서 들고 있던 무기를 다른 무기로 교체하는 행위.[4] 버블파이터란 게임에선 같은 뜻으로 체인지란 단어를 쓴다.
  • MMORPG에서 착용하고 있는 장비를 전투 도중에 교체하는 행위[5]로 게임에서 정식으로 지원해주는 경우도 있다. 스와핑 대신 스위칭이라는 용어로도 많이 쓰인다. 반대로 전투중 장비를 교체해버리면 쿨타임을 먹이거나 버프를 날려버리는등 스왑을 방지하는 경우도 있는데, 이러면 컨트롤 난이도가 수직상승하기 때문에, 보통 PVP나 레이드등 고도의 컨트롤이 필요한 구간에서 제한적으로 사용된다.
  • AOS게임에서의 라인 스왑
    일반적으로 가는 라인을 가지 않고 다른 라이너와 서로서로 라인을 바꿔 가는 행위. 이 방법을 쓰는 경우는 크게 2가지가 있다.
    1. 듀오가 가는 라인을 솔로가 가고, 솔로가 가는 라인을 듀오가 가는 것. 일반적으로 대회나 팀랭 등에서 말하는 스왑은 이쪽이다. 이 경우, 이쪽의 듀오가 상대방 솔로 라이너의 성장을 크게 위축시키고, 상대방을 타워 안쪽에다 밀어넣어 타워 체력을 계속 깎으면서 라인 상황에 따라 다이브도 칠 수 있는 등 이득을 볼 여지가 많다. 다만, 이 플레이들은 반대로 라인을 스왑한 아군에게도 그대로 적용되기에 이 점을 유의해야한다. 또,이렇게 라인을 스왑했다면 십중팔구 이쪽이 타워를 먼저 부숴 운영을 쉽게 풀거나 상대 라이너의 성장을 억제시키기 위해서인데, 오히려 이쪽 솔로 라이너가 상대보다 더 심하게 성장을 못하거나, 타워가 먼저 깨지거나, 심지어 똑같이 크는 것조차 스욉을 한 쪽에서는 손해이기에 어떻게든 빨리 이득을 봐야한다. 결정적으로, 이렇게 비대칭적인 라인을 계속 설 수는 없기에 결국 정상 라인으로 복귀해야하는데, 이 과정이 매끄럽지 못할 경우 오히려 스왑한 쪽이 손해를 왕창 보기에 보이는것보다 훨씬 고난이도의 운영법이다. 이렇듯 라인 스왑을 하기 위해선 서로가 라인 스왑의 이해도가 높아야하고, 소통이 원활하며, 손발을 잘 맞춰 이득을 굴리기 쉬운 팀랭에 특화된 운영법이다. 이렇다보니 솔랭에서는 어림도 없고, 팀랭에서도 오랜기간 손발을 맞춰야 쉽게 해낼수 있다. 이렇듯 라인 스왑은 운영법 중에서도 상당히 고난이도의 운영이라, 종종 프로팀들이 아마팀들을 상대로 자주 사용하고, 이를 대처하는 속도에 따라 팀의 운영 수준의 척도가 된다.
    2. 상대방 라이너가 이쪽의 하드카운터라 도저히 숨도 쉴수 없을때 게임 시작 전 합의를 보고 바꾸는 것. 솔랭에서의 스왑은 보통 이쪽을 말한다. 이경우, 바꿔 주는 쪽에서 그 캐릭터를 상대하기 편하거나 대등하고, 바꾸는 쪽에서도 상대방을 상대하기 쉬울때 요청하는 편. 허나 이렇게 라인을 스왑하면 그 라인에 섰을때 이득을 극대화 할수 있는 캐릭터들의 효율이 반토막 나고,[6] 요청받은 사람도 상대방을 하드카운터 칠 요양으로 뽑은 경우라면 상당히 곤란하다. 결정적으로, 솔로 랭크인 만큼 '니가 알아서 잘해봐라', '바꿔주기 싫은데?'처럼 상대방이 거부하면 끝이다(...). 그리고 거절당한 당사자는 "똥싸도 난 모른다"를 시전하고 게임이 터진다. 차라리 양쪽다 극상성끼리 만나서 한쪽이 압도적으로 불리해도 다른쪽이 압도적으로 유리한 상황이면 또 모를까 그렇지 않고 한쪽이 불리하기만 하다면 터지는 경우가 상당수.

7. 컴퓨터 자원 확보 기법

컴퓨터 내부에 있는 다양한 저장 장치들을 적절하게 사용하여 주 메모리를 확보하는 기술이다. 흔히 가상 메모리 또는 스왑이라고 부른다.

현대 컴퓨터의 메모리 관리는 TLB에 의해서 메모리 맵핑을 진행하고 메모리 영역은 논리 메모리 영역에서 몇단계의 가상화를 통해 분리된 공간을 가지게 되는데, 저 레벨에서 메모리의 물리 공간은 한정되어 있어 다른 바이너리를 올리려면 일부는 내려야 하는 문제가 생긴다. 이 때 스왑을 통해 메모리 영역을 좀 더 확보하는 것이다. 여기에는 다음과 같은 조건이 붙는다.

1) 보조 저장 장치는 주 저장 장치보다 크다.
2) 보조 저장 장치는 주 저장 장치보다 느리다.
3) 메모리는 가상의 논리 영역에서 분할되어야 한다.

작동 시퀀스.

시스템에서 자원이 얼마 안 남았을 때 OS는 메모리에서 안 쓰는 부분들(블럭)을 검색하고, 필요하지 않은 메모리 블럭들을 보조 저장 장치의 swap 영역으로 보내 버린다. 이후, 메모리 맵핑 리스트에서 해당 메모리 블럭들은 주 메모리에 없다는 bool 값을 세워 낸다. 이후, 다음 작업에 필요한 바이너리를 불러와 작업을 계속 진행한다.

작업 도중 쓰레드가 어떤 논리 메모리 주소를 참조하려고 하는데 그 메모리 주소를 따라가 보니[12] 맵핑 리스트에서 주 메모리에 없다는 값을 확인하면 OS 는 일단 그 쓰레드를 동결처리한다.

이후 해당 메모리 블럭을 swap 영역에서 검색하고 swap에 있던 데이터를 메모리에 다시 올린다. 이후 동결된 쓰레드를 해동하면 쓰레드는 아무 일 없었다는듯 계속 작동한다.

swap을 사용하는 경우 전체적인 시스템 성능이 좀 저하된다. 보조메모리는 주 메모리보다 느려서 병목현상이 발생하며 설령 주메모리와 보조메모리의 속력이 같아도 메모리 리스트에서 계속해서 대조하여 실제 메모리 위치로 맵핑하기 때문에, 맵핑에 걸리는 시간이 전체적인 오버헤드를 점유하기 때문이다. 대신 필요한 경우 소프트웨어를 유연하게 사용(…이라기보단 억지로라도 구동 가능.)할 수 있다는 것이 장점일 것이다.

이 때문에 주메모리(DDR 1 ~ 3)와 보조메모리(HDD, eMMC)의 속력차이가 심각하게 나던 시절에는 시스템 성능 저하가 심각해서 가상 메모리스왑 기능을 사용하지 않는 방법이 유행하기도 했다. 그러나 최근 보조메모리의 속력이 비약적으로 발전해서(NVMe, UPS)와 주 메모리의 병목 현상이 많이 나아진 현재에는 스와핑 기능을 적극적으로 활용하고 있다.

현대 OS는 모두 swap을 지원하며, UNIX 계열에서는 swap 파티션, 혹은 swap 드라이브를 잡아 cache로 사용할 수 있으며, 윈도우 계열에선 페이징 파일을 생성하는 식으로 사용하거나 USB 드라이브를 Readyboost를 통해 swap으로 사용하게 된다. 안드로이드 단말기도 LINUX 계열이므로 스왑을 할 수 있다.

8. 컴퓨터 모듈 교체(추가/제거) 방식

위의 메모리 스와핑과는 다른 의미로, 컴퓨터 시스템을 구성하는 모듈(보조기억장치, 주변장치 등)을 시스템에 추가하거나 제거하는 방식의 분류다.
핫 스와핑(hot swapping)은 시스템이 가동되고 있는 상태에서 모듈을 추가/제거하는 것이다.
그 반대 개념은 콜드 스와핑(cold swapping)으로, 해당 모듈이나 전체 시스템을 작동 중지(대개 전원 차단)한 상태에서 모듈을 추가/제거하는 것이다.
당연히 핫 스와핑이 더 편리하지만 그것이 가능하도록 모듈과 시스템을 설계해야 하며 운영체제에서 핫 스와핑을 지원해야 한다. 21세기 운영체제들은 거의 전부 핫 스와핑을 지원한다.
과거에는 USB 포트도 핫 스와핑이 안 되어, 컴퓨터에게 제거(eject) 명령을 내려 그 장비의 전원을 차단한 후에 제거해야 했다. 물론 그걸 모르고 그냥 손으로 잡아빼는 경우도 많았고 운이 좋으면 그래도 별 탈 없었지만, 운 나쁘면 저장된 데이터가 날아가거나 장비가 손상될 수도 있었다.

[1] 이명박 정권 중기에 벌어진 세계 경제 위기로 인해 환율이 급등세를 보이자 이를 해결하기 위해 추진된 '한미 스와프'가 화제에 오르기도 했다. 일반적으로는 국제통화기금을 비롯한 국제/지역 금융기구에서 차관을 받는 것도 이에 해당된다.[2] FPS에서 쓰이는 테크닉은 우리나라에선 보통 스왑이라고 부른다.[3] 밴시 생산에 필요한 기술실을 군수공장이나 병영에서 미리 건설해 두고 우주공항이 완성되자마자 바로 서로 자리를 바꿔서 테크를 25초 가량 단축시킬 수 있다.[4] 들고 있던 무기를 버리고 다른 무기를 줍는 의미가 아니라 이미 들고 있는 무기를 자신이 가진 다른 무기로 바꾼다는 의미이다. 예를 들자면 주무기인 돌격 소총에서 보조 무기인 권총으로 바꾸는 식. 일반적으로 스나이퍼, 특히 볼트액션식 스나이퍼 라이플에서 종종 보이는데 한발 쏘고 재장전 하는 시간보다 쏘고-스왑-재스왑하는 시간이 오히려 짧은 경우가 많아 자주 쓰인다. 일종의 모션캔슬로 익숙해지면 볼트액션식이 반자동 스나로 변신하는 연사력을 보여준다.[5] 주로 교체하는 아이템의 추가 효과를 이용하기위해 사용된다.(스킬 레벨 증가나 능력치 증가 등등)[6] 대표적으로 로밍에 특화된 캐릭터들. 이런 캐릭터들은 보편적으로 중간 라인에 서고, 뛰어난 기동성과 강력한 CC를 바탕으로 전라인에 개입하여 이득을 확실히 굴리는데 뛰어난 능력을 보인다. 허나 이들을 스왑하여 가장자리 라인에 새울 경우 끽해야 중간 라인 정도 밖에 개입할 수가 없어 운영이 꼬이게 된다.


파일:CC-white.svg 이 문서의 내용 중 전체 또는 일부는 문서의 r200에서 가져왔습니다. 이전 역사 보러 가기
파일:CC-white.svg 이 문서의 내용 중 전체 또는 일부는 다른 문서에서 가져왔습니다.
[ 펼치기 · 접기 ]
문서의 r200 (이전 역사)
문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)