So I know that Linux is considered "Unix-like" while OSX is Unix.
Why is this? I feel like Linux is much more "Unix-like" than OSX is.
What makes OSX more "Unix" than Linux?
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems. It only takes a minute to sign up.Sign up to join this community
As suggested in the comments, OS X primary is a real Unix since it is certified by The Open Group (owner of the UNIX™ trademark), allowing it to legally claim itself to be UNIX.
Primary requirement for being UNIX certified is being conforming to the POSIX standard(s). Second one is being able to pay The Open Group the certification process. I think the latter point is the main problem why Linux is not certified. ;)
Another good reason for not taking the afford of certification is that there isn't really one Linux. Of course, there is a primary source for the actual operating system's kernel, but most distributors don't ship exactly this kernel, but patch it themselves, which would break certification. Even if you take the vanilla kernel (Linus's tree), there are dozens of possible configurations, and the kernel config even allows you to explicitly break POSIX compliance. This sounds strange at first glance, but absolutely makes sense, for example if you're planning to run your kernel on an embedded system with hard resource constraints. It could be advantageous to disable certain features that simply are not needed by such a setup, but would break POSIX compatibility (by disabling parts of the API, etc.).
OS X on the other hand does not have this problems. There's only one vendor which has complete control to decide which features the kernel supports and which not.
But even in the »iWorld« you can spot this problem: iOS or the system used on Apple's iTV although descendant of and closely tied to development of OS X are not UNIX certified. This most probably is caused by a reduced feature set breaking certification requirements.
Edit: The Open Group actually has a (draft status and rather moldy) document describing the conflicts between POSIX and LSB (the Linux Standard Base) you can find here.