
프로세스간의 통신 방법
메모리 이용하는 방식: 고정 길이
파일을 이용하는 방식: 증가 할 수 있다.
소켓을 이용하는 방법
RPC를 사용하는 방법
Registry를 사용하는 방법

data_seg pragma
DLL을 Application(EXE)이나 다른 DLL과 연동하여 사용할 때 쓴다. 후킹 목적의 DLL이 타겟 프로세스에 인젝션 되어 있다면 공유 섹션을 이용하여 데이터를 전달할 수 있다. 결국 DLL 내부에서 생성한 데이터(메모리)를 외부 프로세스에서 공유해야 할 필요가 생길 수 도 있는데 그 상황에 맞춰 쓰는 2가지 방법 중 하나
여러 프로세스가 하나의 자원에 접근 했을 때 레이스 컨디션이 발생된다.
공유자원 (메모리, 파일)을 사용하여 하나의 스레드가 실행될 때 중간에 다른 스레드가 공유 자원을 사용하지 못하게 하여 끝까지 방해없이 실행되는 원자성이 보장 되어야 한다.
임계구간
최소화해야 함, 구간이 길어질 수록 좋지 않다.
동기화를 위해선 Queue가 반드시 필요하다.
임계구간에 영향을 주는 요소가 많으면 많을 수록 교착 상태가 발생한다.
상태 감시 스레드를 넣어줘서 해결할 수 있다.
교착상태가 발생하여 지연이 되는 프로세스를 OS가 메모리Dump이후 강제 회수
| 9. 절대 주소와 상대 주소 (0) | 2023.07.03 |
|---|---|
| 8. (물리)메모리 관리 (0) | 2023.07.01 |
| 6. 멀티스레드와 동기화 기본 / CPU스케줄링 개요 (0) | 2023.06.29 |
| 5. 프로세스 생성과 복사 (0) | 2023.06.28 |
| 4. 프로세스와 스레드 / 프로세스 휴식, 보류 상태와 문맥 (0) | 2023.06.27 |