How to have my own ASIO driver?

Dear Steinberg guys, friends,
I’m planing to let my USB audio device to support HI-FI performance with ASIO. I used foobar+ASIO4ALL for my device, but seems the performance is not good, THD+N and DR parameters shows there is some digital processing limit the performance as 16bit while set device work at 24bit or 32bit.
Question:

  1. What’s the difference between ASIO driver and ASIO4ALL?
  2. Could I have customized ASIO driver for my own USB audio device? If yes, is there any document about developing an ASIO driver?
  3. It seems ASIO4ALL is not a real kernel driver of Windows, it just a ASIO application compatible COM plugin and it talks to windows Kernel Streaming driver to exchange data. If I choose this way, does it mean I just need to build a ASIO plugin driver which exchanges audio data with device over Windows Kernel Streaming driver?

Thanks,
Steven

Hi
you can download the ASIO SKD in order to develop a driver ASIO compatible, ASIO4ALL is a ASIO Compatible driver which wraps the Windows Audio drivers into ASIO world (not developed by Steinberg).
Cheers