What's the difference when set ScatterGather TURE and FALSE

Hi All,
When I set the ScatterGather to TRUE, IoGetDmaAdapter will
return mapRegisterCount as 0x101. However, when I set it
FALSE, IoGetDmaAdapter will return mapRegisterCount as 8.
In my understanding, when ScatterGather is TRUE, the system will divide the
user buffer into many pieces of memory with the size 4K(Page size). The
system will allocate the map register(x86 don’t have this concept, it’s just
virtual map register), fill the registers one by one with these pieces of
memory’s physical memory address. But how about when ScatterGather is

Dude… you REALLY should look before you ask: