FreeBSD used to need a kernel module called opensolaris.ko in order to load ZFS (not sure if that’s still the case). So whilst ZFS has been ported to many OSes, it still relies / relied on a paravirtualized Solaris kernel.
Note: it’s not a critique; I love ZFS and use it to secure all my data.