해결된 질문
작성
·
169
0
개발자가 작성한 프로그램을 여러개의 프로세스로 기동할 때
실행코드는 모든 프로세스가 공유하는 건지요?
만약 그렇다면 사용자 코드는 사용자 메모리에 어떻게 올라가서 어떤식으로 모든 프로세스가 공유할 수 있는건지 궁금합니다.
답변 1
1
네, 모두 같은 코드로 실행이 됩니다. 윈도우의 경우 실행파일의 형식은 PE 형식입니다. 이 형식은 각종 Section으로 구성되며 여러 섹션 중 특별히 실행 코드(기계어)를 담고 있는 섹션이 있습니다. 이를 운영체제가 각 프로세스의 가상 메모리 공간에 저장해주고 명령들을 하나씩 가져와 연산(실행) 해줍니다. 프로세스가 공유하는 것이 아니라 같은 코드를 운영체제가 프로세스 별 가상메모리에 똑같이 저장해주는 것입니다. 참고하시기 바랍니다. 😄