So in the above example you gave the layers would be Hardware > ASIO > Driver > Host software
Well, maybe. Some operating systems (like Windows NT/2000/XP) won't let you go directly from an API to hardware. There's usually something in between, which in most cases is the driver. It would really look more like this:
1. Hardware
2. Driver
3. ASIO
4. Application
. . . which is why I used 2a and 2b for the driver and the operating system.
Don't get too excited about using a Sound Blaster for multichannel recording and playback. With my Sound Blaster Live!, I have five usable inputs (line in 1, line in 2, and mic in), but the first two are bonded stereo channels--the left and right channels can't be controlled independently. The same goes for the outputs (front left/right and rear left/right). The newer cards may be a bit more flexible, but you're still going to have to deal with the Sound Blaster's crappy audio. Don't be fooled by the THX logo. :-) But if you're a musician on a budget, it's a great deal. And let's face it, a great musician can make just about anything sound good.
So, with ASIO, you're bypassing the operating system's audio interface and talking directly to the hardware driver. Now, I'm not an ASIO guru, so in operating systems like Windows NT/2000/XP, there may be an ASIO driver that sits below the OS layer and talks to the hardware using a pluggable driver interface. That makes sense for performance. . . . I guess it's time to read the manual. :-P
Trev