inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

그림으로 쉽게 배우는 운영체제

멀티프로그래밍과 멀티프로세싱

과거 방식에서

해결된 질문

260

한울

작성한 질문수 36

1

안녕하세요 좋은 강의 잘 듣고 있습니다!
다름이 아니라, 과거 방식에 대해서 설명해주실 때 

메모리에 프로세스를 올려서 CPU로 처리를 하고 해당 프로세스를 다른 저장장치에 저장 및 다른 저장장치에 있던 프로세스를 메모리에 올려 CPU로 처리한다고 하셨는데

1. 프로세스를 하드디스크 같은 다른 저장장치에 저장할 때 프로그램 형태로 전환되는 과정 없이 프로세스  형태 그대로 저장되게 되는 것인가요? 

2. 마지막 부분에서는 메모리에 있는 데이터를...이라고 말씀해주셨는데 이 데이터는 프로세스의 데이터가 맞는지, 맞다면 프로세스와 프로세스의 데이터 사이에는 어떤 차이점이 있는지 궁금합니다

 

감사합니다!

운영체제

답변 1

2

감자

안녕하세요 온수옴님!
질문에 답변드리겠습니다!

1. 프로세스를 하드디스크 같은 다른 저장장치에 저장할 때 프로그램 형태로 전환되는 과정 없이 프로세스  형태 그대로 저장되게 되는 것인가요? 

하드디스크같은 보조저장장치에 프로세스가 저장할 때 프로세스의 상태도 같이 저장합니다.
그래야 멀티프로세싱으로 다른 프로세스를 처리하고 다시 다른 프로세스가 실행될 때 이전에 했던 작업을 이어서 실행할 수 있기 때문입니다.
프로세스와 프로그램은 별개로 저장됩니다!

 

2. 마지막 부분에서는 메모리에 있는 데이터를...이라고 말씀해주셨는데 이 데이터는 프로세스의 데이터가 맞는지, 맞다면 프로세스와 프로세스의 데이터 사이에는 어떤 차이점이 있는지 궁금합니다

해당 영상에서 데이터로 표현한 것은 프로세스입니다! 따라서 차이점이 없다고 이해하시면되겠습니다.
프로세스는 실제로 PCB라는 형태로 저장하는데 이 PCB는 프로세스에 필요한 모든 데이터가 저장됩니다.
PCB는 바로 다음 강의에서 배웁니다!

궁금증 해결이 되셨나요?
더 궁금하신 점 있으시면 언제든지 질문해주세요!

0

한울

프로세스의 상태가 저장된다는 것이 '나는 지금 프로그램 상태가 아닌 프로세스 상태로 하드디스크에 저장되어 있다.' 이런 의미인가요? 아니면 프로세스의 상태에도 여러 가지가 있는 것인가요?

1

감자

맞습니다!

프로세스는 프로그램과 달리 동적인 존재입니다. 프로세스가 생성되면 그 순간부터 프로그램과 구분됩니다.

로봇으로 비유한다면 프로그램은 로봇이 어떻게 동작하는지 기록되어있는 설계도로 볼 수 있습니다.

프로세스는 이 정보를 바탕으로 로봇이 만들어져서 걸어다니기도하고 공격도 하기도 하는 것입니다. 로봇의 상태는 공격하거나 걷고있거나 하는 등 여러가지 상태가 존재할 수 있겠죠!

만약 로봇이 걷고있는데 자기가 무슨발을 내딛었는지 모르면 계속 한발만 내밀면서 걸어다닐 수 있습니다. 따라서 로봇의 현재상태도 저장해야합니다!

사용자가 게임을 실행시켰다고하면 게임에 필요한 수많은 정보가 있을겁니다. 이 정보가 저장되어야 컨텍스트 스위칭을하고 다시 해당 프로세스(게임)의 정보가 복구되기 때문에 올바르게 실행될 수 있습니다!

프로세스도 상태가 존재합니다.

프로세스가 만들어지고 컨텍스트 스위칭도 거치면서 종료되기까지 모든 상태를 운영체제에서 관리합니다!

이 부분은 프로세스 상태와 컨텍스트 스위칭에서 자세히 다루니 참조해주세요!

0

한울

그렇군요 정말 감사합니다!

프로그램과 프로세스 강의 3분47초

1

635

1

컴파일 과정

1

545

1

페이징&가상메모리 관련 질문 드립니다.

1

394

1

페이징(배치정책) CPU에 논리주소를 물리주소로 전달해 줄때 계산 단위

1

470

1

운영체제의 역사 영상에서

1

470

2

프로세스 동작 및 스케줄링 알고리즘 관련 질문 드립니다.

1

488

1

인터럽트 발생 시점과 비동기 방식

1

583

2

PCB 상태 실행에서 대기 상태에서 준비 상태로 변경시

1

460

2

프로세스 동기화 질문 드립니다.

1

340

1

부모 프로세스는 프로그램을 실행하지 않아도 생기는 건가요?

1

410

1

페이지드 세그멘테이션 기법에서 메모리 주소 변환 할때요

4

397

1

오버헤드란?

1

4033

1

논리주소와 BoundAddress의 비교에 대한 질문

1

305

1

MLFQ 알고리즘

2

401

1

FIFO 알고리즘 / RR 알고리즘

1

439

1

블로그 업로드 질문

1

376

1

다중큐 강의에서 I/O 작업시 질문

2

243

1

예제코드 질문

1

297

1

하드디스크와 메모리 질문 있습니다!

0

215

1

컴파일 과정 예시와 관련해서 질문드립니다!!

1

271

1

예제 코드 관련 질문입니다!

1

252

1

공유 메모리 및 프로세스 생성 관련

3

491

1

레지스터 관련

2

387

1

"컴파일과 프로세스" 강의 1분 37초

1

237

1