반응형

2024/12/18 4

39. WinDbg

WinDbg가 몰까..MS에서 무료로 제공하는 디버거유저모드랑 커널 모드 다 커버하는데 주로 커널 디버깅할 때 쓴다.. https://learn.microsoft.com/en-us/windows-hardware/drivers/debugger/debugger-download-tools Debugging Tools for Windows - Windows driversThis page provides downloads for the Windows Debugging tools, such as WinDbg.learn.microsoft.com여기서 받으면됨 WinDbg은 CUI환경으로 동작한다 winDgb실행심볼: 디버깅 정보 파일 .pdb를 의미함함수 이름, 변수, 소스코드 라인 등 PE 파일의 디버깅 정보를 포..

38. PE32+

64비트 Windows OS 에서 프로세스의 가상 메모리 크기는 16테라임유저영역이 8테라 커널이 8테라변경 된거 맞춰서 PE파일 포맷도 바뀌었다.. PE32+(PE+, PE64)PE32+은 64비트 네이티브 모드에서 실행되는 포멧이고 기존 32비트 파일의 확장된 형태임 IMAGE_NT_HEADERS// Define IMAGE_NT_HEADERS64 structure for PE32+typedef struct _IMAGE_NT_HEADERS64 { DWORD Signature; // Signature of the NT Header IMAGE_FILE_HEADER FileHeader; // File Header IMAGE_OPTIONAL_..

37. x64 프로세서 이야기

x64는 x86을 확장시킨 형태뭐가 추가 변경된걸까.. 64비트는 메모리 주소가 64비트로 표현됨 ( 64비트의 포인터를 사용한다는 뜻 )컴구 내용 정리해둔 부분에 있을거같음.. IA기준으로 글 써뒀었나 기억이 안나넴 메모리x64 프로세스 가상 메모리의 실제 크기는 16TBx86은 4기가임 범용 레지스터개수랑 크기 다 증가함. x64는 R로 시작하고 x86은 E로 시작함 레지스터 이름이.. EAX이런거처럼하위호환 되려고 하위 비트 레지스터 액세스도 제공함   CALL/JMP Intruction 32비트 x86 (절대주소 방식)FF15 XXXXXXXX 명령어는 4바이트 절대주소(VA)를 사용CALL DWORD PTR DS:[00405000]처럼 명령어 뒤에 바로 절대 주소64비트 x64 (상대주소 방식)F..

36. 64비트 컴퓨팅

64비트 컴퓨팅 환경Intel의 32비트 CPU인 80386은 1985년에 발표되었으나 높은 가격과 지원 OS 부족으로 보급이 미미했다. 이후 1995년 Microsoft의 Windows 95 출시로 본격적인 32비트 시대가 열렸으며, 기존 16비트 DOS 프로그램도 호환되었다. 과도기를 거쳐 Windows 2000/XP 시대에 32비트 프로그램이 주류를 이루게 되었으나, 물리 메모리 4GB 제한 등의 한계로 64비트 CPU와 OS가 등장하며 64비트 컴퓨팅 환경이 시작되었다. 64비트 CPUIntel은 최초의 64비트 CPU **IA-64(이타늄)**을 발표했지만, 기존 x86(IA-32)과 호환되지 않아 시장에서 실패했다. 반면 AMD는 x86과 호환되는 AMD64를 발표해 주목받았고, Intel도 ..

반응형