stack - 함수에 대한 호출과 리턴들에 관련된 정보 (자바의 스택)
data - 전역변수, 프로그램시작에서 종료까지 남아있는 데이터 (자바로 치면 static의 느낌)
code - 실제 CPU가 수행할 기계어가 위치하는 곳
Virtual memory에서 당장 필요한 부분은 물리적 Memory에 올라가게 되고 아직 필요하지 않은 부분은 디스크의 Swap area에 내려가있게 된다.
물리적 메모리와 가상 메모리의 주소는 다른 것이다. 읽으려면 변환을 해줘야된다. 이때 일어나는 것이 Address translation.
사용자 정의 함수
라이브러리 함수
커널 함수
프로그램이 실행되는 흐름을 나타내보았다.
애플리케이션이 실행 되면 UserMode에서 함수들이 실행.
I/O나 현재의 권한으로 할 수 없는 명령을 실행할땐 System Call로 Kernel 모드로 전환.
이러한 흐름은 프로그램이 끝날때 까지 계속 일어난다.