I guess when a program asks to read a file, dropbox has to intervene at quite a low level to get it from a remote server rather than the local file system where the program thinks it is.
On Linux you can use Fuse in userland. On OSX I'm not sure.
Fuse filesystems on OS X are user-land applications entirely outside the kernel. However, I believe OSXFUSE itself, atop which the filesystems are built and operate, requires/includes a kernel extension.
(Edited for better explanation than initial wording)
That's right. OSXFUSE includes a kernel extension (https://github.com/osxfuse/kext). There is no other technical way to achieve this without a kernel extension on both Windows and OSX.
There is FUSE on OSX, but Dropbox said it was not performant enough for them
Fuse in Linux also requires a kernel module. It's just that it is available everywhere these days.