반응형
실행 파일의 기본 구조
- 윈도우에서의 실행 파일인 경우 PE(Protable Executable) - EXE/DLL/SYS/SCR
- 리눅스에서의 실행 파일인 경우 ELF(Exectuable Linkable File) - SO 의 포맷으로 되어 있다.
- 컴파일러로 컴퓨터가 이해할 수 있는 변환하는것이 코딩이며, 코딩된 프로그램의 최종 실행은 CPU가 한다.
사람의 뇌에 동작방식에 가까운 언어 : 고급어 -> C , JAVA , C# 등등
컴퓨터에 동작방식에 가까운 언어 : 저급어 -> 기계어, 어셈블리어
사람의 코드를 컴파일하여 기계가 이해할 수 있게 하는것 : 컴파일러
실행 파일의 라이프 사이클
Address of Entrypoint(Offset) - 실행 파일이 메모리에 로드된 후 최초로 실행 되어야 할 코드의 주소 : 00400000
ImageBase (Virtual Address)- 실행 파일이 적재될 메모리상의 가상 주소 : 1000
가장 먼저 실행되는 코드의 Virtual Address : 00401000
실행파일 각 영역들이 메모리 상에서 가져야 할 권한 - Section Table에 위치
각 섹션들의 파일상 위치와 메모리상 위치 - Section Table에 위치
반응형