목록분류 전체보기 (154)
LISTORY
뇌를 자극하는 윈도우즈 시스템 프로그래밍 유투브 강의 정리이다. 이번 시간에 정리할 내용은 프로세스간 통신 부분이다. ⊙ YouTube 주소 ⊙ ☞ 프로세스간 통신(IPC) 프로세스간 통신(IPC) ⊙ 핸들테이블의 이해 프로세스가 메일 슬롯을 생성하면, 메일슬롯 커널 오브젝트가 자동으로 생성된다. 이 커널 오브젝트에는 주소와 핸들 값이 저장되고, 이는 이를 생성한 프로세스의 핸들 테이블에도 저장되게 된다. 이때, A프로세스의 핸들테이블은 A프로세스에만 의미가 있다. 여기까지가 저번 시간에 배웠던 내용이다. 사실, 핸들테이블에는 상속여부도 저장된다. 핸들테이블은 조건에 맞는다면, 부모 프로세스에서 자식 프로세스로 상속을 할 수 있다. 부모 프로세스인 A 프로세스가 있고 자식 프로세스인 B 프로세스가 있다고..
뇌를 자극하는 윈도우즈 시스템 프로그래밍 유투브 강의를 정리한 내용이다. 오늘 정리할 내용은 파이프 방식의 IPC 부분이다. ⊙ YouTube 강의 주소 ⊙ ☞ 파이프 방식의 IPC 파이프 방식의 IPC 메일 슬롯 이름없는 파이프 이름 있는 파이프 방향성 단방향, 브로드 캐스팅 단방향 양방향 통신 범위 제한 없음 부모 자식 프로세스 제한 없음 지난 시간에, 메일 슬롯은 단방향이라 배웠다. 메일 슬롯을 양방향으로 사용하기 위해선 두개의 메일 슬롯이 있어야 한다. 메일슬롯은 리시버를 여러 개 두어 SENDER가 각각의 RECEIVER에게 전송이 가능하다.(브로드 캐스팅) 하지만 브로드캐스팅을 사용하기 위해 메일 슬롯을 쓰는 경우는 잘 없고, 주로 소켓 통신을 통해 이용한다. 여기서 말하는 통신 범위란 무엇일..
뇌를 자극하는 윈도우즈 시스템 프로그래밍 책 관련 유투브 강의 내용 정리본이다. 오늘 정리할 강의는 프로세스 환경변수 부분이다. YouTube 주소 ☞ 프로세스 환경 변수 프로세스 환경변수 환경변수는 일반적으로 IPC라 생각 안하는 사람들이 많지만, IPC라 생각하는 사람 또한 존재한다. 사실 이 부분은 별도의 내용으로 접근해도 상관이 없다. 환경변수는 DATA 블록인데, 부모 프로세스는 자식에게 상속할 수 있고 이 부분을 통신으로 볼 수 있다. 하지만 일반적으로 이런 용도로는 잘 사용되지 않는다. 환경변수는 프로세스가 자신만의 고유 정보를 담았다 뺐다 할 때 사용된다. 즉, 부모 자식간의 통신은 부가적인 부분이다. 프로세스는 프로세스 별로 독립적인 메모리 공간이 있어, 환경변수는 메모리 블록에 할당된다..
뇌를 자극하는 윈도우즈 시스템 프로그래밍 YouTube 강의 정리이다. 이번에는 저번 강의에 이어 7장 내용을 계속 정리하겠다. 이번 강의 주제는 Signaled vs Non-Signaled 이다. ⊙ YouTube 강의 주소 ⊙ ☞ Signaled vs Non-Signaled Signaled vs Non-Signaled ⊙ 커널 오브젝트의 상태 * 커널 오브젝트? - 커널의 리소스의 정보를 담고있는 데이터 블록 예전에 설명했던 커널 오브젝트안에 멤버 중엔, 커널 오브젝트의 상태를 반영하기 위한 boolean 형 멤버가 존재한다. 이 멤버의 값에 따른 상태는 다음과 같다. TRUE : SIGNALED 상태 FALSE : NON-SIGNALED 상태 그렇다면 이 값은 왜 존재하며, 이 상태가 변경되는 시점..
뇌를 자극하는 윈도우즈 시스템 프로그래밍 책 유투브 강의 정리이다. 이번에 정리할 주제는 프로세스간 통신(IPC) 이다. ⊙ YouTube ⊙ ☞ 주소 프로세스간 통신(IPC) 1 프로세스간 통신(IPC) 기본적으로 프로세스간의 통신이란 둘 이상의 독립된 프로세스가 존재 할 때, 프로세스끼리 데이터를 주고받는 것을 뜻한다. 여기서 독립된 프로세스가 하나의 독립된 프로그램으로 생각하는 경우가 많은데, 사실 그렇지 않다. 대부분의 프로그램은 하나의 프로세스로 구성되긴 하나, 하나의 프로그램은 여러 개의 프로세스로 구성될 수도 있다. ⊙ 프로세스간 통신 둘 이상의 프로세스 간에 데이터를 송수신 하는 것을 뜻한다. 여기서 통신이란 데이터의 흐름으로 주고 받는 것을 뜻하진 않는다. 본론적으로 이해를 하자면 프로세..