728x90
반응형
Zw함수의 접두사의 의미는?
Kernel 모드 드라이버를 개발하다보면 Zw가 붙은 함수들을 호출 하게 된다. Kernel 모드 함수들의 접두어는 Zw 이외에도 여러가지 접두어들이 있다. 그 예는 아래와 같다.
접두사 | 커널 구성요소 | 루틴 예 |
---|---|---|
Cm | Configuration manager | CmRegisterCallbackEx |
Ex | Executive | ExAllocatePool |
Hal | Hardware abstraction layer | HalGetAdapter |
Io | I/O manager | IoAllocateIrp |
Ke | Kernel core | KeSetEvent |
Mm | Memory manager | MmUnlockPages |
Ob | Object manager | ObReferenceObject |
Po | Power manager | PoSetPowerState |
Tm | Transaction manager | TmCommitTransaction |
Nt,Zw | Native system services | NtCreateFile , ZwCreateFile |
MSDN에 따르면 어이없게도 Nt는 NT의 약자이지만 Zw는 의미가 없다고 한다. 다른 API와 충돌을 회피하기위해 Zw로 정하고 앞으로 Zw가 접두사로 붙는 함수는 사용하지 않겠다는 의미로 Zw를 정했다고 한다.
https://docs.microsoft.com/ko-kr/windows-hardware/drivers/kernel/what-does-the-zw-prefix-mean-
728x90
반응형
'개발 > Windows' 카테고리의 다른 글
DeviceIoControl 버퍼 사용법 (0) | 2020.01.07 |
---|---|
드라이버와 통신하기 IRP_MJ_DEVICE_CONTROL (0) | 2020.01.07 |
커널드라이버 Buffered I/O 처리 하기 (MFC, CFile) (0) | 2020.01.03 |
장치 드라이버와 커널 오브젝트 (Device Driver & Kernel Object) (0) | 2019.12.30 |
장치 드라이버와 파일의 관계? (0) | 2019.12.30 |
댓글