• 카테고리

    질문 & 답변
  • 세부 분야

    시스템

  • 해결 여부

    해결됨

과거 방식에서

22.03.02 13:57 작성 조회수 121

1

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

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

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

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

 

감사합니다!

답변 1

답변을 작성해보세요.

1

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

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

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

 

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

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

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

한울님의 프로필

한울

질문자

2022.03.04

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

맞습니다!

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

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

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

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

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

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

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

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

한울님의 프로필

한울

질문자

2022.03.07

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