inflearn logo
강의

講義

知識共有

クマの本で簡単に学ぶ最低限のオペレーティングシステム論

プロセスとスレッド

Application Program 설계 시 multi-process vs. multi-thread

解決済みの質問

440

basketcree

投稿した質問数 2

0

안녕하세요, 늘 좋은 강의 감사드립니다.

강의 중 Process=Program 이라고 생각하면 된다고 하셨는데,

하나의 Application Program을 설계 할 때 동시에 수행되어야 하는 task에 대해 multi-process로 동작하도록 할 것 인가 multi-thread로 동작하도록 할 것 인가는 설계자의 선택의 문제인가요?

Process=Program 개념으로 생각하면 설계자 입장에서 하나의 Application Program 내에 여러개의 Process를 만드는 것은 불가능 한 것인가? 이렇게 생각이 들기도 하는데 궁금해서 여쭤봅니다.

운영체제 운영체제

回答 1

1

nullnull8537

네, 그렇습니다. 특히 GUI가 있는 경우와 없는 경우도 생각해야 합니다. 한 프로그램을 여러 프로세스로 구성하는 경우는 생각보다 많습니다. 다만 한 프로그램에 대해 같은 프로세스가 여럿 존재하는 경우는 경험하지 못했습니다. 가령 Word나 PPT처럼 문서 편집 도구라면 한 프로그램에 대해 여러 프로세스가 존재하더라도 그 각각이 개별 문서 데이터를 로드하고 있는 독립적인 프로세스로 구성됩니다. 그러가 문서 하나를 위해 PPT 프로세스가 2개 이상 실행되어야 할 이유는 없다고 보는 것이 좋겠습니다.

다만 웹 브라우저의 경우 내부 구성요소(기능)들이 개별 프로세스로 로딩되기도 합니다. 예를 들어 어떤 페이지 하나에 접속했을 때 눈에 보이는 브라우저는 1개뿐이라 해도 내부적으로는 2~3개가 실행 중일 수 있습니다.

결론은...불가능이라기 보다 개발자의 선택이 맞겠습니다. 어떤 구조가 더 적절한 것인지 판단하고 그에 맞는 구조를 택하면 되겠습니다. 감사합니다.

32bit app에서 vms 4gb 설명에 대한 질문입니다.

0

77

2

레이스 컨디션 문제

0

207

2

스레드 종료 순서

0

150

1

제가 이해한게 맞는지 궁금합니다. (비디오 카드에 output)

0

229

2

플랫폼 bit관련 질문입니다

0

153

3

백그라운드 스케쥴링관련 질문입니다.

0

165

2

ready queue에 있던 프로세스들이 sleep이나 suspend되는 게 가능한가요?

0

249

2

IPC는 곧..?

0

358

2

interrupt와 DirectX 질문

0

403

2

공유자원과 임계구역

0

318

2

DMA와 고성능 소켓관련 질문입니다.

0

294

3

2강 DMA와 고성능 소켓 질문

0

420

3

I/O 관리자, 메모리 매니저 사용 이유

0

292

2

*pszResult =A; 포인터 사용 부분에 대한 질문입니다.

0

199

1

교착상태와 게임이 튕기는 현상

0

218

1

멀티스레딩

0

409

2

자료구조 공부

0

419

2

윈도우 레지스트리 질문

0

261

1

파일시스템과 가상메모리

0

341

1

Page fault 메시지가 나오면 스왑 인, 스왑 아웃은 일어나지 않는 건가요?

0

257

1

가상 주소, 절대 주소 부분이 헷갈립니다.

0

340

2

운영체제 스레드 공부 중 궁금한 점 있습니다.

0

355

3

직업 관련 질문

0

326

1

페이징 기법의 주소 변환

0

299

2