Soft Ware/Windows Driver

디스패치 오브젝트 중 세마포어 오브젝트와 타이머 오브젝트에 대해서 !!!

달려가보자 2012. 2. 19. 16:29

뮤텍스 오브젝트는 특정한 스레드만 획득 할수 있었다면

세마포어 오브젝트는 하나 이상의 스레드가 동시에 공유된 자원을 사용 할 수 있도록 허락 합니다 ^^

그럼으로서 드라이버는 뮤텍스 오브젝트와 달이 얼마나 많은 스레드가 동시에 세마포어 오브젝트를

얻을 수 있는지를 제어 할수 있습니다 .

세마포어 초기 함수를 보면

VOID KeInitializeSemaphore(IN PRKSEMAPHORE  Semaphore,   IN LONG Count,  IN LONG Limit)

여기서 Count 는 커널에서 얼마나 많은 스레드가 세마포어 오브젝트를 사용할수 있는지를

Limit는 동시에 사용할수 있는지를 나타낸다 .

--------------------------------------------------------------------------------------------

타이머 오브젝트는 시간의 경과를 기록하기 위해 사용 되는 오브젝트이다 .