DirectDraw is a rather flexible and powerful API, with the help of which a programmer can create almost any graphic application for the Windows operating system.
On the other hand, DirectDraw is a kind of video memory manager. The application allocates memory blocks and monitors the status of each block individually. Programs, in turn, can create, copy, modify and delete such blocks at their own discretion, but all the details of such operations are hidden from the programmer.
At the same time, DirectDraw uses not only video memory, but also RAM. In addition, the design of memory managers focuses on reliability rather than performance. When designing DirectDraw, the main goal was performance.
From a technical point of view, DirectDraw is a portable API combined with a set of device drivers. DirectDraw completely bypasses the standard Windows graphical mechanism (GDI, interface of graphic devices). GDI is notorious for its low performance, so independence from it is essential to achieve optimal speed.