The /3GB switch takes some memory away form the kernal side, and gives it to the user side. In the process, the amount of memory for system resources is reduced. On of those resources is page table entries. The number of page table entries is severely restricted if you use the /3GB switch. This can have adverse affects on any process that uses PTEs, like device drivers for your storage.
We used to give some memory back, by setting the system pages registry value to 30,000 or so. In 2003 Microsoft introduced the /USERVA switch, which does essentially the same thing without editing the registry. Adding the /USERVA=3030 switch to the boot.ini has about the same effect as setting system pages to 30,000 in Windows 2000.
In addition to redistributing memory between user and kernal mode in order to give more memory to applications, the /3GB switch can intesifiy virtual memory fragmentation. To lessen this effect, we usually set the heapdecommitfreeblockthreshold value to 40,000.