쓰레드 질문있습니다.
안녕하세요. 이번에 새로 운영체제 강의를 듣게 된 사람입니다. 프로세스와 쓰레드 챕터에서 쓰레드 강의 내에서 0:45초 에서는 웹 브라우저(정확히는 chrome.exe)를 실행 할때 마다 프로세스 하나가 생성된다고 하셨습니다. 그리고 1:33초 이후에는 쓰레드의 관해서 설명해주시고 2:32초 에서는 다시 웹 브라우저를 예로 설명해주셨는데 웹 브라우저가 하나 실행될 때마다 프로세스 내의 쓰레드가 하나씩 생성된다고 하셨습니다. 이 예시는 단순히 프로세스와 쓰레드의 개념을 구분해주시기 위해서 이렇게 설명해주신건가요?? 둘의 개념은 이해가 되지만 실제로 어떤 때는 웹 브라우저를 실행할 때마다 프로세스가 추가되고 어떤 때는 쓰레드가 추가되고 그런 경우는 없나요??
답변 1
1
네 예시를 위해서 그렇게 설명한 것입니다.
실제로는 프로세스를 한 개 생성하면 쓰레드도 무조건 하나가 생성됩니다.
크롬의 경우 탭 하나에 프로세스가 하나 생성되니까 실제로는 프로세스와 쓰레드 하나가 추가되는 것이지요.
반면 파이어폭스의 경우 탭 4개까지는 프로세스(+쓰레드)를 생성하다가 4개 이상부터는 생성된 프로세스에서 쓰레드만 늘리는 방식으로 동작합니다.
크롬과 파이어폭스가 서로 자신들이 좋다고 생각한대로 구현한 것이죠.
만약 크롬에서 탭을 계속 생성한다면 다음과 같은 구조로 프로세스가 계속 늘어납니다.
프로세스(+쓰레드),
프로세스(+쓰레드),
프로세스(+쓰레드),
프로세스(+쓰레드),
...
반면 파이어 폭스에서 탭을 계속 생성한다면 다음과 같은 구조로 늘어납니다.
프로세스(+쓰레드)
프로세스(+쓰레드)
프로세스(+쓰레드)
프로세스(+쓰레드)
이후부터 생성된 프로세스에서 쓰레드만 추가되는 방식입니다.
궁금증이 해결되셨나요??
프로그램과 프로세스 강의 3분47초
1
649
1
컴파일 과정
1
559
1
페이징&가상메모리 관련 질문 드립니다.
1
411
1
페이징(배치정책) CPU에 논리주소를 물리주소로 전달해 줄때 계산 단위
1
486
1
운영체제의 역사 영상에서
1
484
2
프로세스 동작 및 스케줄링 알고리즘 관련 질문 드립니다.
1
506
1
인터럽트 발생 시점과 비동기 방식
1
602
2
PCB 상태 실행에서 대기 상태에서 준비 상태로 변경시
1
480
2
프로세스 동기화 질문 드립니다.
1
359
1
부모 프로세스는 프로그램을 실행하지 않아도 생기는 건가요?
1
421
1
페이지드 세그멘테이션 기법에서 메모리 주소 변환 할때요
4
409
1
오버헤드란?
1
4067
1
논리주소와 BoundAddress의 비교에 대한 질문
1
319
1
MLFQ 알고리즘
2
415
1
FIFO 알고리즘 / RR 알고리즘
1
455
1
블로그 업로드 질문
1
388
1
다중큐 강의에서 I/O 작업시 질문
2
254
1
예제코드 질문
1
308
1
하드디스크와 메모리 질문 있습니다!
0
227
1
컴파일 과정 예시와 관련해서 질문드립니다!!
1
283
1
예제 코드 관련 질문입니다!
1
269
1
공유 메모리 및 프로세스 생성 관련
3
504
1
레지스터 관련
2
402
1
"컴파일과 프로세스" 강의 1분 37초
1
251
1





