Aunque la estructura del sistema es muy parecido, tanto Mac como Linux disponen de llamadas al sistema distintas.
Si se usa algún tipo de librería multiplataforma como QT, los ports se simplifican enormemente.
En cuanto al tamaño de los programas... Pues no se, supongo que no habrá tanta reutilización de librerías y cada programa debe traer todas las necesarias y no confiar en que estas ya estén instaladas en el sistema.