So, if we want to get technical, Linux is just the OS *kernel.* You can’t really do anything with it unless you add some other software (traditionally, this is the GNU userspace and compiler stuff, but there are some other options now).
The line between a distribution and a fully different OS is a thin one, IMO. Most distros are similar enough that they may as well be considered the same OS with different bells and or whistles (my opinion). E.g. most common distributions ship the GNU C/C++/Fortran compiler and libraries and build all their packages with them. While the exact version thereof and compiler flags used will differ, the resultant software is theoretically compatible with any similar distro with the right version of GLibC and the needed dependencies. For example, I can easily convert Debian/Ubuntu packages to Arch packages and install them on my system without much fuss.
Things get more hairy when you get into distros that use LLVM/CLANG and/or MUSL libC for their packages.
As for the MacOS x BSD thing, I wouldn’t call it a full on UNIX distribution. It uses *some* BSD derived code under the hood, but it’s got enough proprietary custom stuff in there to be considered it’s own animal within the UNIX phylum.
Latest Answers