• Feed
  • Explore
  • Ranking
/
/
    정보처리

    프로세스와 스레드

    프로세스스레드자격증정보처리
    전
    전상욱
    2025.04.10
    ·
    7 min read

    프로세스

    일반적으로 프로세서(처리기, CPU)에 의해 처리되는 사용자 프로그램, 시스템 프로그램, 즉 실행중인 프로그램을 의미 (작업, 태스크라도도 함)

    프로세스는 다음과 같이 여러 형태로 정의할 수 있음

    • PCB를 가진 프로그램

    • 실기억장치에 저장된 프로그램

    • 프로세서가 할당되는 실체, 디스패치가 가능한 단위
      (디스패치는 준비->실행 단계로 변경되는 것)

    • 프로시저가 활동중인 것

    • 비동기적 행위를 일으키는 주체

    • 지정된 결과를 얻기 위한 일련의 계통적 동작

    • 목적 또는 결과에 따라 발생되는 사건들의 과정

    • 운영체제가 관리하는 실행 단위

    상태 전이

    프로세스가 시스템 내에 존재하는 동안 프로세스의 상태가 변하는 것을 의미한다.

    4963

    프로세스의 상태를 다음과 같이 상태 전이도로 표시할 수 있다.

    제출

    • 작업을 처리하기 위해 사용자가 작업을 시스템에 제출한 상태

    접수

    • 제출된 작업이 스풀 공간인 디크스의 할당 위치에 저장된 상태

    준비

    • 프로세스가 프로세서를 할당받기 위해 기다리고 있는 상태

    • 준비상태 큐에서 실행을 준비하고 있다.

    • 접수 상태에서 준비 상태로의 전이는 Job 스케줄러에 의해 수행된다.

    실행

    • 준비상태 큐에 있는 프로세스가 프로세서를 할당받아 실행되는 상태

    • 프로세스 수행이 완료되기 전에 프로세스에게 주어진 프로세서 할당 시간이 종료되면 프로세스는 준비 상태로 전이된다.

    • 실행중인 프로세스에 입출력(I/O) 처리가 필요하면 실행중인 프로세스는 대기 상태로 전이된다.

    대기, 보류, 블록

    • 프로세스에 입출력 처리가 필요하면 현재 실행중인 프로세스가 중단되고, 입출력 처리가 완료될 때까지 대기하고 있는 상태

    종료

    • 프로세스의 실행이 끝나고 프로세스 할당이 해제된 상태


    스레드

    프로세스 내에서의 작업 단위로서 시스템의 여러 자원을 할당받아 실행하는 프로그램의 단위

    • 하나의 프로세스에 하나의 스레드가 존재하는 경우에는 단일 스레드, 하나 이상의 스레드가 존재하는 경우에는 다중 스레드라고 한다.

    • 프로세스의 일부 특성을 갖고 있기 떄문에 경량 (Light Weight) 프로세스라고도 한다.

    • 스레드 기반 시스템에서 스레드는 독립적인 스케줄링의 최소 단위로서 프로세스의 역할을 담당한다.

    • 동일 프로세스 환경에서 서로 독립적인 다중 수행이 가능하다.

    분류

    사용자 수준의 스레드

    • 사용자가 만든 라이브러리를 사용하여 스레드를 운용한다.

    • 커널 모드로의 전환이 없어 오버헤드가 줄어든다.

    • 속도는 빠르지만 구현이 어렵다.

    커널 수준의 스레드

    • 운영체제의 커널에 의해 스레드를 운용한다.

    • 한 프로세스가 운영체제를 호출할 때 전체 프로세스가 대기하지 않으므로 시스템의 성능을 높일 수 있다.

    • 여러 스레드가 커널에 동시에 접근할 수 있다.

    • 스레드의 독립적인 스케줄링이 가능하다.

    • 구현이 쉽지만 속도가 느리다.

    스레드 사용 장점

    • 하나의 ㅍ로세스를 여러 개의 스레드로 생성하여 병행성을 증진시킬 수 있다.

    • 하드웨어, 운영체제의 성능과 응용프로그램의 처리율을 향상시킬 수 있다.

    • 응용 프로그램의 응답 시간 (Response Time)을 단축시킬 수 있다.

    • 실행 환경을 공유시켜 기억장소의 낭비가 줄어든다.

    • 프로세스들 간의 통신이 향상된다.

    • 스레드는 공통적으로 접근 가능한 기억장치를 통해 효율적으로 통신한다.







    - 컬렉션 아티클