Primeiramente, eu gostaria de deixar claro que este não é um tópico de fanboy e eu não vou fazer nenhum juízo de valor sobre qual sistema operacional é melhor ou pior, eu apenas vou apresentar a minha perspectiva de quem usa ambos, tudo isso respeitando os limites do meu nível de conhecimento técico.
Minha motivação pra criar este tópico, é que existem muitas pessoas que acham que o macOS é um Linux, pelo fato de ambos serem sistemas baseados em arquitetura Unix.
(O fato de ser baseado em arquitetura Unix, não quer dizer necessariamente que usou código do Unix, mas sim que existe toda uma estética e funcionalidade parecida e feita para ser compatível com Unix até um certo ponto)
Eu estou criando este tópico no subfórum de Linux, porque eu não consigo criar este tópico em 2 subfóruns ao mesmo tempo, mas acredito que algum admin possa talvez resolver este problema e colocar um atalho no subfórum da Área Mac.
Tentarei evitar pontos que podem ser ser diferentes entre distros Linux, como bootloader, shell, init system e etc, mas poderei abrir algumas exceções se eu achar isto conveniente.
Interface do usuário
O macOS utiliza uma interface gráfica proprietária conhecida como Aqua e com compositor chamado de Quartz, sendo esta a interface homem-computador padrão do sistema operacional.
Problema conhecido: Há falta de flexibilidade e eficiência pra usar fora do propósito de ambiente desktop ou workstation, já que você não existe a opção de ficar sem a interface gráfica no sistema da Apple.
O Linux utiliza um sistema multi terminal, geralmente com 6 terminais em interface de linhas de comando, mas é possível também usar um ou mais destes terminais para executar um ambiente gráfico com servidor gráfico X11 ou com compositor baseado no protocolo Wayland.
Problema conhecido: O kernel panic do Linux é baseado em interface de texto e ainda não se sobrepõe à interface gráfica, então muitas pessoas podem achar que o computador travou sem motivo, quando o motivo está especificado no kernel panic; recomendo aprender a ler os logs do kernel e do init system para contornar este problema.
Kernel
Linux é um kernel monolítico com suporte a módulos que podem incluir drivers e também pode suportar módulos dinamicamente ligados via DKMS, além de também ser possível ter drivers ligados estaticamente no kernel sem ser via módulo se você compilar; O Linux também tem inúmeros parâmetros em tempo de compilação até mesmo em tempo de execução que permitem mudar a forma como ele lida com os recursos da máquina.
macOS utiliza o kernel XNU, que usa componentes do FreeBSD para pilha de redes e sistemas de arquivos, componentes do Mach para escalonamento de processos e para gerenciamento de memória virtual, além I/O kit para tratar de comunicação com dispositivos de entrada e saída, possui uma baixa latência no escalonamento de processos por ser otimizado pra produção audiovisual; Ao contrário do que muitos afirmam, o macOS não é um sistema totalmente baseado em FreeBSD.
API básica
O macOS tem compatibilidade com Posix, porém extendida pelo core Darwin, que inclui uma API pra programas em Objective-C, Swift e dentre outros, e claro que também tem elementos proprietários como é de se esperar.
O Linux tem implementações que variam do Toybox ao GLIBC, mas ele também pode ser compatível em tempo de compilação com o macOS se instalar o GNUstep, o que não significa que você poderá pegar um programa de mac e rodar no Linux.
Existem programas de Linux que não rodam no macOS e existem também programas de macOS que não rodam no Linux, porque apesar de compartilharem o POSIX, existem diferenças nas funções das bibliotecas e nas funções do sistema.
Instalação de programas
Em ambos os sistemas operacionais, a prática de segurança recomendada é sempre baixar e instalar os programas dos repositórios oficiais, sendo assim você deve sempre usar a App Store ou os repositórios oficiais utilizados no gerenciador de pacotes da sua distribuição Linux favorita, além disso, você tem menos chance de outros problemas, se seguir estas recomendações; A diferença está na hora de baixar programas de fora.
Linux: Os programas fora dos repositórios oficiais geralmente são distribuídos em forma de binário sem nenhuma extensão, mas também existem aqueles que são distribuídos em formado de código-fonte ou que são empacotados de outra forma.
Existem muitos programas que não possuem bibliotecas ligadas estaticamente, então isso coloca sobre o usuário a responsabilidade de resolver dependências quando elas não são atendidas.
macOS: Os programas fora dos repositórios oficiais geralmente são distribuídos em imagem de discos em formato DMG, que são montadas e tem seu conteúdo copiado pra um diretório específico.
Observação importante: Instalar programas do repositório oficial da Apple requer uma conta iCloud, e eu não recomendo usar conta iCloud em hachintosh, porque apesar de não parecer, existe risco de ban, já que você está violando os termos de uso do software proprietário da Apple.
Estrutura de diretórios:
Linux: A grande maioria das distros seguem o padrão FHS, as exceções dessa regra que eu conheço são o NixOS, o Android e o GoboLinux.
macOS: Existe compatibilidade com o padrão FHS, mas também existem diretórios que só existem no sistema operacional da Apple.
Ambos os sistemas operacionais tem em comum, o fato de terem uma raíz única, não é que nem o Windows que tem 1 raíz para cada dispositivo de bloco separado por letra.
_____
Se você conhecer outra diferença importante que eu não mencionei ou perceber algum erro, sinta-se a vontade pra responder este tópico, lembrando que o meu objetivo com este tópico não é treta.
Minha motivação pra criar este tópico, é que existem muitas pessoas que acham que o macOS é um Linux, pelo fato de ambos serem sistemas baseados em arquitetura Unix.
(O fato de ser baseado em arquitetura Unix, não quer dizer necessariamente que usou código do Unix, mas sim que existe toda uma estética e funcionalidade parecida e feita para ser compatível com Unix até um certo ponto)
Eu estou criando este tópico no subfórum de Linux, porque eu não consigo criar este tópico em 2 subfóruns ao mesmo tempo, mas acredito que algum admin possa talvez resolver este problema e colocar um atalho no subfórum da Área Mac.
Tentarei evitar pontos que podem ser ser diferentes entre distros Linux, como bootloader, shell, init system e etc, mas poderei abrir algumas exceções se eu achar isto conveniente.
Interface do usuário
O macOS utiliza uma interface gráfica proprietária conhecida como Aqua e com compositor chamado de Quartz, sendo esta a interface homem-computador padrão do sistema operacional.
Problema conhecido: Há falta de flexibilidade e eficiência pra usar fora do propósito de ambiente desktop ou workstation, já que você não existe a opção de ficar sem a interface gráfica no sistema da Apple.
O Linux utiliza um sistema multi terminal, geralmente com 6 terminais em interface de linhas de comando, mas é possível também usar um ou mais destes terminais para executar um ambiente gráfico com servidor gráfico X11 ou com compositor baseado no protocolo Wayland.
Problema conhecido: O kernel panic do Linux é baseado em interface de texto e ainda não se sobrepõe à interface gráfica, então muitas pessoas podem achar que o computador travou sem motivo, quando o motivo está especificado no kernel panic; recomendo aprender a ler os logs do kernel e do init system para contornar este problema.
Kernel
Linux é um kernel monolítico com suporte a módulos que podem incluir drivers e também pode suportar módulos dinamicamente ligados via DKMS, além de também ser possível ter drivers ligados estaticamente no kernel sem ser via módulo se você compilar; O Linux também tem inúmeros parâmetros em tempo de compilação até mesmo em tempo de execução que permitem mudar a forma como ele lida com os recursos da máquina.
macOS utiliza o kernel XNU, que usa componentes do FreeBSD para pilha de redes e sistemas de arquivos, componentes do Mach para escalonamento de processos e para gerenciamento de memória virtual, além I/O kit para tratar de comunicação com dispositivos de entrada e saída, possui uma baixa latência no escalonamento de processos por ser otimizado pra produção audiovisual; Ao contrário do que muitos afirmam, o macOS não é um sistema totalmente baseado em FreeBSD.
API básica
O macOS tem compatibilidade com Posix, porém extendida pelo core Darwin, que inclui uma API pra programas em Objective-C, Swift e dentre outros, e claro que também tem elementos proprietários como é de se esperar.
O Linux tem implementações que variam do Toybox ao GLIBC, mas ele também pode ser compatível em tempo de compilação com o macOS se instalar o GNUstep, o que não significa que você poderá pegar um programa de mac e rodar no Linux.
Existem programas de Linux que não rodam no macOS e existem também programas de macOS que não rodam no Linux, porque apesar de compartilharem o POSIX, existem diferenças nas funções das bibliotecas e nas funções do sistema.
Instalação de programas
Em ambos os sistemas operacionais, a prática de segurança recomendada é sempre baixar e instalar os programas dos repositórios oficiais, sendo assim você deve sempre usar a App Store ou os repositórios oficiais utilizados no gerenciador de pacotes da sua distribuição Linux favorita, além disso, você tem menos chance de outros problemas, se seguir estas recomendações; A diferença está na hora de baixar programas de fora.
Linux: Os programas fora dos repositórios oficiais geralmente são distribuídos em forma de binário sem nenhuma extensão, mas também existem aqueles que são distribuídos em formado de código-fonte ou que são empacotados de outra forma.
Existem muitos programas que não possuem bibliotecas ligadas estaticamente, então isso coloca sobre o usuário a responsabilidade de resolver dependências quando elas não são atendidas.
macOS: Os programas fora dos repositórios oficiais geralmente são distribuídos em imagem de discos em formato DMG, que são montadas e tem seu conteúdo copiado pra um diretório específico.
Observação importante: Instalar programas do repositório oficial da Apple requer uma conta iCloud, e eu não recomendo usar conta iCloud em hachintosh, porque apesar de não parecer, existe risco de ban, já que você está violando os termos de uso do software proprietário da Apple.
Estrutura de diretórios:
Linux: A grande maioria das distros seguem o padrão FHS, as exceções dessa regra que eu conheço são o NixOS, o Android e o GoboLinux.
macOS: Existe compatibilidade com o padrão FHS, mas também existem diretórios que só existem no sistema operacional da Apple.
Ambos os sistemas operacionais tem em comum, o fato de terem uma raíz única, não é que nem o Windows que tem 1 raíz para cada dispositivo de bloco separado por letra.
_____
Se você conhecer outra diferença importante que eu não mencionei ou perceber algum erro, sinta-se a vontade pra responder este tópico, lembrando que o meu objetivo com este tópico não é treta.
Última edição: