Linux, como uma derivação do Unix, naturalmente tem muito em comum com os BSDs. Como o BSD, as distribuições Linux também são gratuitas e de código aberto. Apesar das semelhanças fundamentais, o Linux ofuscou amplamente os BSDs em popularidade, com mais de 74% dos smartphones modernos sendo baseados em Linux baseados.
Então isso levanta a questão: se o BSD e o Linux são apenas iterações da pesquisa Unix, o que exatamente os torna diferentes?
Bem, as diferenças entre as duas mentiras nos fundamentos, e as diferenças são muito. Mas ler todos eles em um único post seria bastante tedioso para os leitores. Portanto, este post se concentrará apenas nos fundamentos e deixará os detalhes intrincados por uma questão de brevidade e para não intimidar os novos leitores.
Mas o que é Linux, realmente?
A primeira coisa que muitas pessoas erram é que o Linux é um kernel, não um sistema operacional. Então isso faz com que seja apenas uma parte do sistema operacional, não o próprio sistema operacional.
Vamos discutir kernels por um segundo. Os grãos servem como pivô em qualquer sistema operacional, pois retém todo o código subjacente sobre o qual esse sistema operacional está. Ele habilita e agiliza a interação entre os componentes de hardware e software de um sistema, gerencia suas solicitações de entrada/saída para e para os aplicativos de software e é responsável por lidar com os dispositivos de hardware também.
Em resumo, um kernel é a característica mais integral de qualquer sistema operacional em que se baseia e, portanto, é retraído para uma parte altamente protetora na memória do sistema, onde toda e qualquer solicitação de acesso de aplicativos são negados, barrados alguns que são integrais para operação do sistema.
Agora que entendemos o que é um kernel, podemos seguir em frente e ver o que o Linux, como um kernel, faz no sistema operacional.
Linux Kernel dentro de um sistema operacional
Entre os sistemas operacionais Linux mais populares estão Debian, Ubuntu, Fedora e Deepin. Então, sempre que você ouve alguém dizer que usa o Linux, saiba que é realmente uma dessas distribuições. Essas distribuições são "baseadas em linux" porque são construídas no kernel Linux. Os ajustes no kernel junto com os novos aplicativos carregados nele tornam cada distribuição diferente de outra.
O que é BSD e como é diferente do Linux?
Como mencionado anteriormente, as diferentes distribuições de BSD são todos sistemas operacionais. E isso faz do BSD, como Linux, um kernel.
Mas para complicar as coisas, o BSD também é um sistema operacional independente, que Linux não é. Vamos explicar como exatamente.
Para distribuições de BSD, vários programas são adicionados ao kernel BSD. Essa combinação é então lançada como um pacote independente e completo que precisa ser instalado, e a coisa está pronta para ir. Portanto, a principal diferença entre as distribuições BSD, como FreeBSD, OpenBSD, etc., é por causa dos programas adicionados ao sistema operacional do kernel. Para baixar pacotes de software adicionais, os usuários do BSD usam o sistema Ports, que mantém esses pacotes em forma de origem. O código -fonte é compilado pelo sistema cada vez que o software é lançado. Embora isso possa ser pesado, especialmente ao executar códigos mais longos e mais complexos, os sistemas BSD podem pular a etapa de compilação em cada lançamento inteiramente se o programa for instalado em um estado binário, aliviando assim o processo em grande parte.
O Linux é diferente do BSD, na consideração, que cada uma de suas distribuições usa programas completamente diferentes, e as distribuições não têm um repositório centralizado para pacotes de software, pois cada distribuição tem seu próprio repositório.
Diferenças no licenciamento
Uma das diferenças fundamentais entre BSD e Linux é a do sistema de licenciamento sob o qual suas distribuições são liberadas.
Quando você baixará o software do repositório de portas no BSD ou instala uma distribuição como um todo, o software ou distribuição é alocada para você sob a licença BSD, que é um sistema de licença personalizado empregado pelos desenvolvedores da BSD. Enquanto o BSD é completamente de código aberto e gratuito a partir de agora, o sistema de licenciamento da BSD permite que os desenvolvedores declarem o BSD de código fechado a qualquer momento. Como usuário do FreeBSD, você não tem direito legalmente de lançamentos adicionais da BSD Devs. No entanto, os desenvolvedores do BSD tornaram público que eles têm toda a intenção de mantê-lo de código aberto no futuro.
As distribuições Linux são divulgadas sob a licença pública geral da GNU (GPL). Sob este sistema de licenciamento, os desenvolvedores do Linux são legalmente obrigados a liberar todas as instâncias de alterações feitas no kernel do Linux. O sistema de licenciamento, em essência, garante que o Linux permaneça de código aberto, independentemente das alterações feitas ao próprio kernel.
Por que o Linux é mais popular? (Spoilers: disponibilidade de software)
Se você está se perguntando o tempo todo por que não ouviu falar sobre os BSDs tanto quanto ouve sobre as distribuições do Linux, eis o porquê: quando se trata de compatibilidade de software, o Linux bate no parque. Para todos os softwares lá fora, é uma versão compatível com Linux. Este não é o caso do FreeBSD, que permanece amplamente negligenciado por esse motivo.
O kernel Linux simplifica os programas de software de escrita e distribuição em comparação com outros kernels; portanto, os desenvolvedores estão naturalmente inclinados a trabalhar para versões do Linux. A distribuição, especialmente, é facilitada pelo sistema de pacotes binários pré-instalados que facilita. O Linux permite que os pacotes de software sejam baixados e instalados por meio de gerentes de pacotes como APT, Yum, Pacman, etc.
Em comparação com a distribuição de software no Linux, os usuários de BSD têm muito difícil. Os pacotes de software são baixados pela primeira vez como códigos de origem no BSD através do sistema de portas. Esses códigos de origem são compilados toda vez que são lançados, um processo que consome tempo e frustrante na era moderna, onde o software é instalado com o clique de um botão. Isso é igualmente frustrante para os desenvolvedores, pois eles precisam fazer muito esforço para fazer a compilação o mais rápido possível.
Embora a introdução de pacotes binários pré-compilados tenha atenuado amplamente o processo de obter software no FreeBSD, a disponibilidade de software ainda permanece um problema enorme para o BSDS.
Escolhendo entre Linux e BSD
Além das janelas e iOS mais mainstream, as distribuições Linux são trancos e barrancos à frente de qualquer outro sistema operacional por aí. É gratuito, de código aberto e tem tudo a oferecer que o FreeBSD tem, sem as advertências.
BSD e Linux são muito mais comuns do que diferentes, com o licenciamento e a distribuição de software sendo as únicas diferenças principais. Ainda assim, apesar das semelhanças, usar um é uma troca de outro.
Por um lado, o FreeBSD mantém uma biblioteca de ferramentas e dependências em todas as distribuições, facilitando para os desenvolvedores iterarem o conteúdo e criar aplicativos de seus próprios. É aqui que o FreeBSD tem uma vantagem considerável sobre o Linux, pois a suíte GNU incluída no Linux não permite isso.
Mas, por outro lado, a falta de compatibilidade e disponibilidade de software dificulta severamente a experiência com FreeBSD. Esse problema pode ser resolvido usando o pacote de compatibilidade do Linux, que permite que o software Linux seja executado em distribuições de BSD, mas essa é uma etapa extra que ainda dificulta a experiência, no entanto.
No que diz respeito ao licenciamento, a licença Linux GPL é muito mais restritiva do que o licenciamento da BSD. Desenvolvedores ou usuários não podem fazer variações no kernel Linux ou SourCecode sem torná -lo público. Os usuários de BSD não têm essas obrigações; Portanto, os desenvolvedores devem pelo menos tentar BSD. Ser capaz de manter o código -fonte privado é uma vantagem considerável que o Linux não fornece.
O licenciamento para distribuições Linux é tendencioso a favor dos usuários, pois confirma que qualquer desenvolvimento feito para melhorar os aplicativos para o sistema será disponibilizado aos usuários. O licenciamento da BSD, por outro.
Nossa recomendação
Recomendamos uma distribuição Linux se você for usá -la para fins gerais. Sua compatibilidade de software é motivo suficiente para recomendá -lo. No entanto, se você é um fabricante, o BSD é a opção certa para você. Possui um repositório centralizado para software e é bem-reproduzido por sua confiabilidade. E no que diz respeito ao licenciamento de BSD, você não precisará se preocupar em tornar seu trabalho de código aberto.
Se você optou pelo kernel Linux, recomendamos usar o Ubuntu. É atualizado regularmente a cada seis meses, uma consistência que, na minha opinião, encontra um grande equilíbrio entre acompanhar os problemas de segurança e não frustrar os usuários.
E se você optar por ir com o kernel BSD, recomendamos o FreeBSD, que é em geral a distribuição mais usada de BSD por aí.