안녕하세요.
현재 프로그램 컴파일 후 프로그램 실행 시 진행되는 과정에 대해서 공부 중입니다.
다름이 아니라 인터넷에 제가 궁금한 부분을 도저히 찾질 못하겠어서 이렇게 질문드립니다.
프로그램이 실행되면 메인 메모리에 명령어가 적재되는 것으로 알고 있습니다.
함수 내부에 int a=10; 코드를 선언하면 "스택 영역에 4byte 크기의 데이터 영역를 확보하고 10 값을 넣어라" 라는 명령어가 적재되는 것으로 파악하고 있습니다.
(아니라면 알려주시기 바랍니다. 이 부분이 조금 모호하네요;;)
제가 현재 가장 궁금한 점은 프로그램 실행 시 로더가 실행 파일의 헤더 파일 읽어 메인 메모리에 프로그램을 적재한다는 부분입니다.
프로그램이 최초 실행되서 메인 메모리에 프로그램이 적재된다는 것 자체가
main 함수가 실행되기 위해 필요한 인자들과 전역 변수 같은 데이터들만 우선적으로 올라가는 것 인지...
아니면 명령어들만 적재되고 명령어에 따른 동작들은 명령 처리 후에 발생하는 것인지...