If you don't already know which files are open (or you want to trackdown a leak) and you have access to a rooted device with busybox, you can run the "lsof" (list open file descriptors) command from "adb shell" or a terminal emulator application (you need to run it as root).
This command will list all the files which the sdcard process has open:
lsof | grep ^sdcard
And this command will count the number of file descriptors the sdcard process has open:
lsof | grep ^sdcard -c
On my Nexus 7 (with a few apps running in the background) the sdcard process only has 23 open files.