It seems fairly clear how FreeBSD helps OpenSolaris, and vice versa: since they are both open source, source code can (and is) moved between the platforms, allowing each to accomplish more than they would alone. Would OpenSolaris have such a capable 802.11 framework without being able to borrow it from FreeBSD? Would FreeBSD have a file system like ZFS without OpenSolaris?
Especially in the current economy, it's easy to subscribe to a doom-and-gloom view of the world, but let's be honest: the computer industry is, and has always been, a highly dynamic place. Twenty years ago, do we think many of the "visionaries" of the industry could predict many of the things that have happened in the last twenty years? It's also easy to ignore the facts on the ground: if you look at the rather extensive world of FreeBSD (and BSD) use generally, there has been a massive increase in FreeBSD deployment around the world. Market share is hard to measure, FreeBSD was and is a strong player in the ISP world, does get heavy use in other service areas, but adoption of FreeBSD in part or in whole by companies like NetApp, Juniper, Apple, Citrix, Cisco, Nokia, Isilon, etc, mean the reach of the platform is incredibly broad. We see significant contributions coming back from these places -- be it work on network stack virtualization, Xen platform support, NFS lock manager support, significant work on network performance, SMP scalability, security audit support, or a variety of other things that have come in in the last few years as a result of these consumers becoming contributors.
I think you're right, though: we need to work harder to increase mindshare, and especially to help universities teach computer science using FreeBSD. For example, can we make teaching operating system courses easier on our platform by providing course material, exercises, etc, and will this let programs that previously couldn't do an OS course now do one?