minyule.log
로그인
minyule.log
로그인
프로세스와 쓰레드
김민영
·
2023년 1월 17일
팔로우
0
운영체제
0
CS 스터디
목록 보기
12/32
개념
프로세스
자신만의 고유 공간과 자원을 할당받아 사용
CPU 시간, 운영되기 위한 주소 공간.
Code, Data, Stack, Heap 구조의 독립된 메모리 영역
메모리 상에서 실행중인 프로그램.
최소 하나의 쓰레드 보유. 각각 별도의 주소공간을 독립적으로 할당 받음.
쓰레드
다른 쓰레드와 공간과 자원을 공유하며 사용
프로세스 안에서 실행되는 흐름 단위.
쓰레드는 stack만 따로 할당, code, heap 은 쓰레드끼리 공유
프로세스 문제점
프로세스 생성에 큰 오버헤드 존재 ( 생성시 시간 오래 걸림 )
프로세스 context switching 비효율, 오버헤드 큼
프로세스 사이 통신 어려움. (IPC 사용 필요)
쓰레드 출현 목적
프로세스보다 크기가 작은 실행 단위 필요
프로세스의 생성 및 소멸에 따른 오버헤드 감소
빠른 context switcing
프로세스간 통신 시간, 방법 어려움 해소
쓰레드 주소 공간
사적공간 : 쓰레드 코드 공간, 쓰레드 전용 전역변수 공간, 스택 공간
공유공간 : 데이터 공간, 힙 공간, 커널 스택
김민영
노션에 1차 정리합니당 - https://cream-efraasia-f3c.notion.site/4fb02c0dc82e48358e67c61b7ce8ab36?v=
팔로우
이전 포스트
운영체제란?
다음 포스트
멀티 프로세스와 멀티 스레드
0개의 댓글
댓글 작성