Windows driver APIs not written by Microsoft

I was a little adventurous learning about how Windows platforms deal with sounds. Now I know a couple of things by taking the operating system class and reading this :

  • IO devices, such as a sound card, communicate with the OS through a device driver. Microsoft supplies the standard so that in kernel mode the OS can make certain system calls (in this case, Win32 api calls) to make the I / O device do something. Bytes or characters are transmitted over buses to any port that contains an I / O device. They are interpreted by the device controller as instructions for physical equipment.

  • There are OS calls for preparing audio devices and transferring data over them. In fact, for some reason, they have two ways to do it: MMSystem and DirectSound. I think the reason that there are 2 has something to do with the game? How was DIrectSound more focused on this, while MMsystem was more standard applications that needed audio?

  • In addition, they are also other audio APIs not written by Microsoft for the Win32 platform. ASIO and GSIF.

How do these non Microsoft standards exist on the Windows platform? How can they communicate with hardware or OS? Something like openGL (something else I'm playing with), the windows version supports the openGL version and you are using GPU too. BAM, frivolous no problem, everything is checked. As I can see it could be like this:

  • MMsystem and / or DirectSound are not part of Win32, but there is another low-level kernel driver that keeps everything under wraps because it is really ugly or
  • These other driver APIs build on top of those supplied by Microsoft

Can anyone please clarify? Where am I going wrong I am missing something. I still own the old OS tutorial (Modern Operating Systems 3rd Ed. By Tanenbaum), so if you want to point something in there, go for it.

+3


source to share





All Articles