[CS/운영체제] 스레드기초 - 1부

황제연·2025년 6월 18일
0

CS학습

목록 보기
109/193
post-thumbnail

Thread의 개요

Thread(스레드) 란 운영체제에서 프로세스 내에서 실행되는 개별적인 실행 흐름입니다
프로세스가 운영체제로부터 자원을 할당받아 동작하는 독립적인 작업 단위라면,
스레드는 프로세스의 자원을 공유하며 병렬적으로 동작 가능한 단위입니다

스레드는 동일 프로세스 내에서 메모리 공간을 공유하기 때문에 프로세스 간 통신보다 빠르게 작업을 수행할 수 있습니다

프로세스 vs 스레드

특징프로세스스레드
정의독립적으로 실행 가능한 작업 단위프로세스 내의 병렬 실행 단위
메모리독립적인 메모리 공간 사용프로세스의 메모리 공간 공유
자원 관리운영체제에서 독립적으로 관리프로세스 내에서 공유
생성/종료 비용상대적으로 높은 비용낮은 비용으로 빠른 생성/종료

스레드의 장점

  • 병렬성 (Parallelism): 여러 작업을 동시에 실행하여 CPU 자원을 효율적으로 활용할 수 있습니다
  • 응답성 (Responsiveness): 멀티 스레드를 사용하면 긴 작업으로 인해 화면이 멈추는 현상을
    방지하고, 사용자의 응답성을 유지할 수 있습니다
  • 자원 공유 (Resource Sharing): 같은 프로세스 내에서 메모리, 파일 등
    자원을 쉽게 공유할 수 있습니다
  • 경제성 (Economy): 스레드 간의 컨텍스트 전환 비용이 프로세스 간 컨텍스트 전환보다 적어
    효율적입니다
profile
Software Developer

0개의 댓글