반응형 전체 글289 2011.01.05 간략 메모 WebZIP : 웹사이트 긁어오는 프로그램 인터넷 연결이 불가한 환경에서 어쩔 수 없이 긁어와야하니 ㅇㅅ ㅇ 가끔 애용할 예정 2011. 1. 5. 세그먼테이션 (Segmentation) 코드가 있는 메모리 영역과 데이터가 있는 메모리 영역을 혼합하여 사용하면 일반 데이터를 인스트럭션 등으로 해석해버리는등의 문제가 발생할 소지가 다분하다. 따라서 코드 영역, 데이터 영역등을 구분하여 사용하는데 이것을 세그먼테이션이라고 한다. 페이징과는 달리 한 구획의 크기가 일정하지 않고 단순히 크기대로 자르는 대신 사용 용도에 따라 나누어지기 때문에 프로그래머는 세그먼트 레지스터만 설정하면 절대 주소 체계로 프로그래밍이 가능하고 사용용도 또한 논리적으로 제약이 가능해 메모리 액세스에 대한 차등 권한을 줄 수 있다. 실제로는 세그먼테이션과 페이징의 장점을 결합하여 사용된다. CPU가 생성한 논리주소는 세그먼트 레지스터(16bit)와 오프셋(32bit)으로 구성되고 세그먼트 레지스터의 인덱스를 사용하여 세.. 2010. 12. 28. 페이징 (Paging) 공간구역성 -프로세스가 특정메모리 위치에 접근을 하면 그 주변 메모리에 접근할 확률이 높음 시간구역성 -최근 액세스한 메모리는 다시 액세스 될 확률이 높음 문맥 교환이 일어날 때 프로세스 전체를 스와핑 하지 않고 액세스가 발생한 일정한 작은 영역에 한해서 스와핑한다. 이렇게 페이징을 사용하면 잦은 스와핑으로 인한 처리 지연 문제도 해결되고 한 영역의 크기를 일정하게 (일반적으로 4kb) 나누어 사용하면 외부 단편화가 발생하지 않는 대신 내부단편화가 발생할 수 있는데 마지막 한 페이지 등에 매우 한정적으로 발생하기때문에 크게 문제되지 않는다. 나누어진 실제 메모리 구획 : 프레임 나누어진 프로세스 구획 : 페이지 하지만 페이지가 메모리에 로드된 순서대로 프레임에 배치되면 코드가 뒤죽박죽이 되고 프로세스의 .. 2010. 12. 28. 2010.12.26 정리 예정 세그먼테이션,페이징 세그먼트 디스크립터 FS.GS.ES 세그먼트 레지스터 용도 SEH(Structured Exception Handling)의 정의 -윈도우에서 제공하는 예외처리 방식 -Termination Handling과 Exception Handling으로 분류됨 SEH 참고 사이트 ------------------------------------ http://ezbeat.tistory.com/284 http://serious-code.net/moin.cgi/SEH ------------------------------------ 세그먼트 참고 사이트 ------------------------------------ http://ezbeat.tistory.com/143 ----------------.. 2010. 12. 26. 유닉스 계열 NIC 속도 설정 NIC 설정 확인 #ethtool [인터페이스명] ex:)#ethtool eth0 NIC 설정 변경 #ethtool -s [인터페이스명] [속도] [전송모드] [자동설정여부] ex:)#ethtool -s eth0 speed 100 duplex full autoneg off 2010. 12. 24. mov EDI,EDI (Hot Patching) DLL 등을 리버싱하다보면 함수가 5개의 NOP 코드와 함께 MOV EDI,EDI로 시작되는데, 이 코드는 핫패칭을 위해 존재하는 코드이다. 핫 패칭은 필요한 코드를 시스템 재부팅 없이 즉각 메모리에 적용할 수 있는 기술로써, mov EDI,EDI에 앞의 5바이트 NOP 코드를 가리키도록 short JMP 명령을 패치하고, 5바이트 NOP 코드에 실제 long jmp 명령을 넣을 수 있게 MS에서 추가로 삽입한 코드이다. ※5바이트만 있으면 32비트 메모리 주소의 어디든지 jmp가 가능하다. 이렇게 핫 패칭을 사용하게되면, jmp 코드가 실제 코드를 덮어쓸 염려 없이 안전하게 후킹이 가능하다. 2010. 12. 21. 이전 1 ··· 25 26 27 28 29 30 31 ··· 49 다음 반응형