스페이스x
232
2020-04-28 18:55:34
2
170

process와 register 관계가 헷갈리네요


cpu가 process를 실행하기위해 register라는 저장공간을 사용한다



이렇게만 알고 세부적으로는 헷갈리네요


프로세스마다 각각 담당하는 레지스터가 여러개있나요?

0
0
  • 답변 2

  • 줄무늬고라니
    44
    2020-04-28 20:29:44

    프로세스마다 각각 담당하는 레지스터가 있는 것이 아니라 레지스터는 CPU 옆에 단독으로 있는 것입니다.


    레지스터는 프로세서(CPU) 옆에 물리적으로 붙어서 연산을 빠르게 할 수 있도록 도와주는 역할을 합니다.

    실제로 거의 대부분의 범용 컴퓨터들이 GPR(범용 레지스터)를 사용해서 연산을 하고 있습니다.

    (프로세서가 혼자서 뚝딱 덧셈 뺄셈 할 수 있는 게 아니라, 값을 저장하고 불러오고 이런 일을 하면서 연산을 진행합니다. 그리고 이런 접근 속도를 빠르게 하기 위한 방법 중 하나가 레지스터를 사용하는 것이고요)

    그런데 이 레지스터는 프로세서의 개수가 정해져있듯이 개수가 무한정 많지 않습니다(GPR은 32개 정도로 알고 있어요)

    그러다보니 하나의 프로세서를 여러 프로세스들이 돌아가며 사용하듯이 레지스터 또한 돌아가면서 사용합니다.


    더 궁금하시면 'Context switch' 검색 해보셔도 좋을 것 같아요.
    어떤 과정으로 일어나는지 알면 이해에 도움이 될 것 같아요.



    1
  • 스페이스x
    232
    2020-04-28 23:10:32

    감사합니다!

    0
  • 로그인을 하시면 답변을 등록할 수 있습니다.