[CS기초] Process와 Thread 핵심 정리

2025. 5. 9. 19:38·크래프톤 정글/CS기초(키워드, 개념정리)

Process와 Thread 핵심 정리

현대 운영체제에서의 프로그램 실행은 단순히 ‘코드 실행’ 그 이상이라고 할 수 있는데요. 사용자의 명령을 수행하기 위해 운영체제는 각각의 작업을 프로세스와 스레드라는 형태로 관리하게 됩니다.

 

이 두 개념은 시스템 자원 관리, 동시성 처리, 응답성 향상 등에서 핵심 요소로 작용합니다. 이 글에서는 프로세스와 스레드의 개념과 차이점을 명확히 정리하고, 시스템 프로그래밍과 병렬 처리에 대한 이해를 돕고자 합니다.

 

Process(프로세스)

  • 실행 중인 프로그램
  • 운영체제로부터 독립된 메모리 영역을 할당받아 실행된다
  • 각 프로세스는 고유한 코드, 데이터, 힙, 스택 영역을 가진다
  • 프로세스 간 통신은 파이프, 메시지 큐, 소켓 등 IPC(Inter-Process Communication)가 필요하다
  • 컨텍스트 스위칭 시 오버헤드가 크다

 

Thread(스레드)

  • 프로세스 내의 실행 흐름
  • 하나의 프로세스는 여러 개의 스레드를 가질 수 있다
  • 스레드들은 코드, 데이터, 힙은 공유하고, 스택은 별도로 가진다
  • 스레드 간 통신은 메모리 공유로 간단하고 빠르다
  • 컨텍스트 스위칭 비용이 적다

 

Process와 Thread 비교

구분 Process Thread
실행 단위 독립적인 실행 단위 프로세스 내의 실행 흐름
메모리 공간 독립적 공유
생성 비용 높음 낮음
컨텍스트 스위칭 느리고 비용 큼 빠르고 비용 적음
통신 방법 IPC 필요 메모리 공유

 

 

Thread 사용의 장점과 주의점

장점

  • 시스템 자원을 효율적으로 활용할 수 있다
  • 응답성과 처리 속도를 향상시킬 수 있다
  • 동시성 프로그래밍을 쉽게 구성할 수 있다

주의점

  • 동기화 문제 발생 가능 (경쟁 상태, 데드락 등)
  • 디버깅과 유지보수가 어려울 수 있음

 

마치면서

Process와 Thread 이 둘에 대해 각자의 특징을 이해하고 상황에 맞게 활용하는 것이 효율적이고 안정적인 시스템 설계에 있어 핵심이라고 할 수 있는데요. 올바른 선택 하나가, 프로그램의 성능과 안정성을 극적으로 바꿀 수 있습니다.

저작자표시 비영리 변경금지

'크래프톤 정글 > CS기초(키워드, 개념정리)' 카테고리의 다른 글

[CS기초] Semaphore와 Mutex, 동시성 제어의 핵심 도구  (0) 2025.05.09
[CS기초] CPU Scheduling 알고리즘 핵심 정리  (0) 2025.05.09
[중간정리] 8주차 - HTTP, 파일 디스크립터, TCP/UDP, C언어(포인터)  (0) 2025.05.06
[CS기초] 8주차 개념 정리  (1) 2025.05.06
[CS기초] HTTP (요청/응답, 헤더, 메서드, 상태코드, HEAD 메서드) 핵심 정리  (0) 2025.05.05
'크래프톤 정글/CS기초(키워드, 개념정리)' 카테고리의 다른 글
  • [CS기초] Semaphore와 Mutex, 동시성 제어의 핵심 도구
  • [CS기초] CPU Scheduling 알고리즘 핵심 정리
  • [중간정리] 8주차 - HTTP, 파일 디스크립터, TCP/UDP, C언어(포인터)
  • [CS기초] 8주차 개념 정리
그냥사람_
그냥사람_
IT 관련 포스팅을 합니다. 크래프톤 정글 8기 정경호
  • 그냥사람_
    그냥코딩
    그냥사람_
  • 전체
    오늘
    어제
    • 글 전체보기 N
      • 크래프톤 정글 N
        • 로드 투 정글(입학시험)
        • CS기초(키워드, 개념정리) N
        • 컴퓨터구조(CSAPP)
        • Code 정글(C언어) N
        • 마이 정글(WIL, 에세이) N
      • 자료구조&알고리즘
        • 자료구조
        • 알고리즘
      • 일상
  • 블로그 메뉴

    • 홈
  • 링크

    • Github
  • hELLO· Designed By정상우.v4.10.3
그냥사람_
[CS기초] Process와 Thread 핵심 정리
상단으로

티스토리툴바