제17편: 구불구불한 길이 그윽한 곳으로 통하고 선방의 꽃과 나무가 깊다--초심자 WDDM 구동 학습 노트(一)

마침 WINDOWS의 WDDM에 대한 이해가 필요해서 MSDN을 뒤적였다.
마이크로소프트는 설비 구동의 구조에 대한 설계가 매우 주도면밀하다.
WDDM, AVSTREAM, USB STACK, STORAGE 및 기타 기술 유형의 설비 구동은 모두port/miniport,class/miniclass의 형식으로 전개된다. 마이크로소프트는 엄밀한 설계, 개발, 테스트를 거친port/class 구동을 IHV에 제공할 것이다. IHV는 미니 구동의 개발에 중심을 두어 프로젝트 리스크, 인력 원가와 시간 원가를 크게 낮추었다.
AVSTREAM은 PCTV의 구조로 마이크로소프트가 디자인한 FILTER(factory), PIN(factory)을 통해 구체적인 설비를 구성하는Graph/Topology이다.
IHV는 KS를 기반으로 개발만 하면 된다.sys miniport 드라이버.
USB Stack은port/miniport의 장점을 더욱 보여주었고 usb1.1의 OHCI, UHCI 및 usb2.0의 EHCI는 모두 usbport를 기반으로 합니다.sys 드라이브는 같은 개발 작업을 대량으로 반복하지 않도록 한다.
usb3.0 Stack은 원래의 usbport를 사용하지 않습니다.sys, 원인은 2.0에서 3.0까지 원래의 EHCI의 인터페이스 규범을 완전히 포기하고 xHCI의 표준을 채택하여 임무의 스케줄링 작업을 CPU에서 xHC로 전달하는 것이 USB 서브시스템의 큰 발전이다.
WDDM도 이와 유사하다. DirectX graphics kernel subsystem은port 드라이브의 기능을 통합하는 동시에 메모리 관리와 GPU의 스케줄링 임무를 담당하고 하부 하드웨어와 무관한 업무를 가능한 한 분리하여 display miniport driver의 개발 업무를 크게 낮추었다.
WDDM과 관련된 내용을 이해하기 위해서는 먼저 WDDM1.3의 새로운 내용이 시작된다.
구체적으로 참조:
http://msdn.microsoft.com/en-us/library/dn265512(v=vs.85).aspx
Enumerating GPU engine capabilities
GPU Node 아키텍처
BDA(broadcast driver architecture)에도 Node라는 개념이 있지만 GPU Node는 개념적으로 BDA Node보다 더 명확한 것 같다.
GPU NODE 하나가 하나 이상입니다(
 if that node is associated with multiple adapters—such as in linked display adapter (LDA) configuration, where multiple physical GPUs are linked to form a single, faster, virtual GPU.)같다
engines의 논리적 표시.
GPU에서
engines의 유형은 주로 다음과 같다.
3D
VIDEO_DECODE
VIDEO_ENCODE
VIDEO_PROCESSING
SCENE_ASSEMBLY
COPY
OVERLAY

비디오 프로세싱 포함
Such processing can include RGB surface conversion, filtering, stretching, color correction, deinterlacing, or other steps that are required before the final image is rendered to the display screen.
scene에는 다음이 포함됩니다.
vertex processing of 3-D workloads

좋은 웹페이지 즐겨찾기