Site icon DBA의 정석

튜닝 관련 용어 정리 2탄

■ 문맥 교환(Context switch)

하나의 쓰레드가 실행되다가 쓰레드에게 주어진 시간을 다 사용하거나, 자발적인 잠듬(sleep),자원이 준비되기를 기다림, 또는 우선순위가 높은

쓰레드가 CPU를 사용하기 위해 대기하고 있으면 다른 쓰레드로 전환이 발생하는데 이를 컨텍스트 스위칭(Context Switching-문맥교환)이라 한다.

■ 샘플링(sampling) & 카운트(Counts)

샘플링(Sampling)은 여러 대의 서버가 있을 경우 특정 서버를 대상으로 성능 데이터를 수집하며 짧은 순간의 데이터를 수집하여 분석한다

카운트(Counts)는 모든 서버를 대상으로 성능 데이터를 수집하며 여러 번의 과정을 거쳐 데이터를 수집하여 분석한다.

■ 시스템 요청(System call)

운영체제가 제공하는 각종 서비스를 이용자가 이용할 수 있도록 개방한 것. 이용자는 이것을 호출함으로써 복잡한 프로그램을 작성할

필요가 없게 된다. 또 여러 개의 프로그램간에서 동일한 명세를 가질 수 있다.

■ 페이징(paging)

한정된 기억 용량으로 될 수 있는 대로 다수의 프로그램을 넣고, 동시에 처리할 수 있도록 하기 위해 프로그램을 한 번에 처리하는

적당한 크기(페이지)로 분할하여 페이지 단위로 처리하는 것이다. 프로그램을 실행할 때는 페이지 단위로 주기억 장치상에 로드하고,

그것 이외에는 페이지를 단위로 하여 외부 기억 장치에 언로드한다. 페이지 단위의 스와핑(swapping)이다. 또 외부 페이지 기억

장치와 실기억 장치 사이에서의 페이지 인/페이지 아웃의 조작을 하는 일, 메모리의 단편화(fragmentation)를 피하는 데 유효하다.

■ 스왑 장치(swap device) & 가상 메모리(VM: Virtual Memory)

스왑 장치는 운영체제 설치 시에 디스크 일정 영역을 가상 메모리 영역으로 설정한 디바이스이다. 가상 메모리는 프로세스가 실행될 때

메모리 어드레싱, fork(), exec()를 하기 위한 모든 메모리 주소를 위한 것으로 기본 크기는 (물리 메모리 크기 + 스왑 장치의 크기) * 약 90%정도가 된다.

■ 실행 큐(Run queue)
CPU에서 실행되기 위해서는 실행 큐를 거쳐 커널 쓰레드에 연결되어야 한다. 실행 큐에 많은 숫자가 나타나면 현재 CPU에서 처리할 내용이 많아

대기하고 있음을 의미한다. 그래서, 실행 큐는 CPU 성능 측정을 평가하는 중요한 요소이다.

■ 서비스 시간(Service time)
실질적으로 요구한 작업이 처리(processing) 하는 시간을 말하며 실제 작업시간 (대기시간 미포함), 서비스에 제공된 시간을 의미한다. 얼마나 오랫동안

작업을 수행 했는가에 대한 시간이며, 만약 큐잉(queueing)하는 것이 없다면 응답 시간(response time)과 같다. 때로는 사용 가능 시간과 같은

의미로 사용되기도 한다.

■ 라우팅 테이블(Routing table)
라우터는 네트워크 간 프로토콜에 의해 목적하는 네트워크에 도달하기 위한 다음의 게이트웨이에 대한 정보를 모아둔 표를 가지는데 이를 라우팅 테이블이라 한다.

각 라우터들은 게이트웨이에 대한 경로표를 가지고 있어야 한다.

■ 소켓 상태(Socket status)
네트워크 서비스에 따른 접속 상태를 의미한다. 대표적인 소켓 상태는 다음과 같다.

 상태 값

 내용

 BOUND

 경계 또는 분기점으로 연결(connect)/리슨(listen) 할 준비되어 있음을 의미

 CLOSED

 닫혀짐(Closed) – 완전히 닫혀진 상태로서 소켓을 사용할 수 없다.

 CLOSING

 리모트 셧다운(shutdown)을 인지하여 닫혀진 상태 – 보통 메시지가 전송 도중 분실된 상태를 나타내기도 한다

 CLOSE_WAIT

 리모트가 셧다운 되었지만 소켓이 닫혀지기 위해 기다린다.

 ESTABLISHED

 연결이 확정된 상태

 FIN_WAIT_1

 소켓이 닫혀졌지만 연결이 셧-다운 중인 상태

 FIN_WAIT_2

 소켓이 닫혀졌지만, 리모트로부터 셧다운을 위하여 기다림

 IDLE

 서비스 가능하도록 열려(open) 있지만 BOUND 상태는 아니다.

 LAST_ACK

 닫혀지는 것을 인지할 때 리모트가 셧다운

 LISTEN

 연결 요청을 오는 것에 대하여 리슨(listen)

 SYN_RECEIVED

 연결을 위해 동기화 하는 것을 초기화

 SYN_SENT

 연결을 확립하기 위하여 시도하는 상태

 TIME_WAIT

 리모트 셧다운 재전송에 대하여 닫혀진 후에 기다림 즉, 연결은 종료 되었지만 분실되었을지 모를 느린 세그멘트를 위해 당분간 소켓을 열어놓은 상태를 의미한다.

Exit mobile version