커널 오브젝트(Kernel Object)
커널 오브젝트(Kernel Object)
Windows 운영체제에서 리소스(Resource : 프로세스, 쓰레드, 파일)들을 관리하기 위한 데이터를 저장하는 메모리 블록
Windows에서 관리하는 리소스 특성을 변경하기 위해서는 해당 리소스의 커널 오브젝트를 조작해야합니다.
해당 리소스의 정보를 저장하고 있는 커널 오브젝트에 접근하기 위해서는
커널 오브젝트들을 구별하는 커널 오브젝트 핸들(Object Handle)을 얻어야 합니다.
커널 오브젝트와 핸들
-
커널 오브젝트는 Windows 운영체제에 종속적
-
사용자가 리소스 생성을 요청하면 운영체제에서 사용자가 요청한 대로 리소스를 생성하게 되고 이를 관리하기 위해 커널 오브젝트를 생성
-
커널 오브젝트는 Windows 운영체제에 의해 생성 및 소멸이 결정
리소스가 생성되어 커널 오브젝트가 생성되면 커널 오브젝트에 핸들이 부여되고
부모 리소스도 구조체 변수를 통해 자식의 커널 오브젝트 핸들을 획득할 수 있음
즉, 부모와 자식이 자식의 커널 오브젝트를 공유
Reference
https://dakuo.tistory.com/84