The whole "root" directory you picture, and finder shows actually does not exist at all. It's kind of a "meta" directory. The unix root directory (e.g.
/) points to the folder OS X calls "Macintosh HD". Everything is a sub-directory of that, even other drives.
Basically, when you connect a external drive, insert a CD, mount a
DMG, or map a network drive, the resources contained within the new drive are actually made available (called "mounting") as a subdirectory of
/Volumes/[Drive name here].
Finder (and finder only) has a facility that shows a fake-directory that contains all the mounted drives.
In other words, the reason you can have two
home directories is because they're not actually in the same folder. One is actually located at
/Volumes/home and the other is
net directories actually exist as folders on your main drive. If you open the root directory of your drive (IN your picture, its labeled "Macintosh HD"), you'll see where they are actually located.
home directory seems to be related to enterprise environments, where various network drives can be defined using a directory service. I believe that, in such a situation, the automounted drives appear in
/home/[Network drive name], rather then the OS X traditional
/Volumes/[Drive name]. In any event, it's part of the
autofs underpinnings of OS X. More here.
/net directory also seems to be related to the automounter. There is a thread about it on the apple support forums here.
/net is built into the automounter in OS X and uses the special map
-hosts. This built in map will consist of the exports from the named server, when that server is accessed via the /net path. For example,
if I have an NFS server at the IP address 192.168.1.10 and it exports
a directory /exports, then if I do this from my Mac:
prompt$ cd /net/192.168.1.10/exports
the Mac automounter will contact the server, mount the export, and put
me in that directory. All without me having to issue any "mount"
As such, it may be possible to use the
/net directory as a shortcut to access network drives, assuming you're working from the command line. It doesn't seem to work for SMB (i.e. windows) shares (at least for me), though.
Incidentally, if you want to look at what's mounted where, all you have to do is open a command-prompt, and type
mount. It will return a list of all the drives your computer has, and where they are mounted.