O que é Linux?

Linux sem segredos

O Linux é um sistema operacional para computadores desenvolvido a partir de um modelo de código aberto. Os princípios de desenvolvimento de software de código aberto são:

  • Transparência
  • Colaboração
  • Lançamentos antecipados e frequentes
  • Meritocracia inclusiva
  • Comunidade

O modelo de desenvolvimento em código aberto também é sinônimo de diversas contribuições, particulares ou corporativos, para que o produto seja amplamente discutido pela comunidade, em vez de uma única equipe de desenvolvimento ser responsável por esse processo.

O que é Kernel do Linux?

O kernel do Linux é o cerne do sistema operacional. O kernel é a interface básica entre o hardware de um computador e seus processos, certificando-se de que haja memória disponível para que os aplicativos Linux sejam executados, otimizando processadores e navegando em requisitos de sistema entre aplicativos.

O kernel do Linux se comunica entre o hardware e os aplicativos por meio de "interrupções". Quando o hardware precisa se comunicar com o aplicativo, ou com o sistema em geral, uma interrupção é emitida entre o processador e o kernel para gerenciar os recursos de forma eficiente.

O kernel, componente interno de um SO, controla todas as funções primárias do hardware, independentemente do dispositivo, incluindo celulares, tablets, desktop, notebooks, servidores etc. O foco do kernel é as seguintes funções essenciais:

  1. Gestão de memória: acompanhamento da quantidade de memória utilizada e como aproveitá-la.
  2. Gerenciamento de processos: determinar quais processos e a maneira que eles podem utilizar a unidade de processamento central (CPU).
  3. Drivers de dispositivos: atuam como um intermediário entre o hardware e os aplicativos/processos.
  4. Segurança e chamados do sistema: recebe as solicitações para atendimento emitidos pelos processos dos aplicativos.

Linux para desenvolvedores

Os desenvolvedores têm um longo relacionamento com o Linux, e existe uma boa razão por trás. O Linux possui solidez e robustez bem estabelecidos Com o Oracle Linux, os desenvolvedores podem aproveitar uma grande comunidade para compartilhar seus programas, ou aproveitar o tempo para resolver problemas.

Em nosso portal do desenvolvedor, você encontrará os benefícios do Oracle Linux oferecidos aos desenvolvedores para diversas linguagens (Python, Node.js, Go), tutoriais para aplicativos e infraestrutura, e como você pode utilizar o Oracle Linux para encontrar algumas soluções de uso de hardware.

Quem utiliza o Linux?

O sistema operacional Linux é utilizado em uma infinidade de sistemas e ambientes. Ele potencializa grandes ambientes de infraestrutura de nuvem, recursos de infraestrutura convergidos locais, servidores de aplicativos, ambientes de computação de desktop e sistemas incorporados. Algumas distribuições do Linux contam com um hipervisor para hospedar máquinas virtuais.


Vídeo: Desenvolvedores e o Linux (17:03)

A quem pertence o Linux?

Nenhuma pessoa física ou empresa tem a propriedade do Linux. Muitas pessoas e empresas contribuem com as atualizações do Linux, geralmente essas atualizações são distribuídas sob a licença Open Source Software, como a GPLv2. Linus Torvalds é o detentor da marca Linux, porém qualquer pessoa pode criar uma distribuição do Linux, combinando diversos componentes de código aberto. Geralmente as empresas cobram pelo uso das distribuições. Como alternativa, eles podem cobrar pelo suporte oferecido à distribuição, ou disponibilizar a distribuição gratuitamente, nesses casos sem o suporte incluso.


Vídeo: Como o Linux se difere? (2:43)

O que é uma distribuição do Linux?

Uma distribuição, ou distro, do Linux é uma coletânea de componentes principais e satélites que, quando combinados, formam todo o sistema operacional. Uma distribuição do Linux inclui componentes principais, incluindo um carregador de inicialização, um kernel Linux, um sistema de inicialização, daemons, um servidor gráfico e aplicativos. Algumas distribuições incluem opções adicionais, como um kernel Linux de alto desempenho, ferramentas de gerenciamento, um hipervisor ou até mesmo componentes para um ambiente nativo da nuvem.

Como e onde é possível utilizar diversas distribuições do Linux

As principais diferenças entre as distribuições do Linux estão em seu uso, suporte oferecido e no gerenciamento das atualizações de software, além de componentes extras que podem ser adicionados. Considerando apenas a lista de distribuições acima, a maioria delas é usada para servidores baseados em rede (ao contrário de computadores desktop), mas nem todos são facilmente utilizáveis em cada tipo de ambiente de servidor.

Por exemplo, o Red Hat Enterprise Linux é popular entre data centers locais e em algumas nuvens, porém não são todas que possuem suporte necessário. O Amazon Linux está disponível na Amazon Web Services (AWS), mas não está disponível imediatamente, nem tem suporte em outras nuvens ou localmente. O CentOS é normalmente usado por clientes que preferem evitar um contrato de suporte de um fornecedor e desejam fazer seu próprio autoatendimento. Os usuários de RHEL estão no lado oposto, pagam uma taxa relativamente alto pelo suporte, para receberem as atualizações e o atendimento pelo telefone. O Fedora é direcionado para usuários menos preocupados com uma configuração estável de longo prazo e desejam incorporar constantemente os últimos recursos experimentais em seus sistemas. No final de 2020, o CentOS anunciou que irá trilhar um novo caminho, migrando de uma distribuição estável a longo prazo para algo próximo de uma versão beta do RHEL.

A melhor distribuição do sistema operacional Linux para cada uso

Existem quase tantas distribuições Linux quanto casos de uso para Linux, portanto, embora provavelmente não exista o melhor Linux, pode haver um melhor Linux para cada situação. As seções abaixo abordam as diferenças entre os tipos de Linux para ajudar você a identificar qual sistema operacional Linux para determinada situação.

Versões do Linux

Como qualquer pessoa pode criar uma distribuição do Linux a partir de um código-fonte disponível e escolher alguns componentes, você encontrará distribuições que são muito similares. Algumas distribuições são disponibilizadas por diversas empresas, porém acabam sendo intercambiáveis.

Diversas distribuições podem ser otimizadas de acordo com o propósito. Algumas prezam pelo minimalismo; enquanto outras fornecem amplo suporte para o hardware utilizado. Ademais, algumas distribuições incluem: recursos específicos, tais como, atualizações e correções automatizadas, ou alto desempenho para banco de dados.

Entre as distribuições mais populares estão:

  • IBM Red Hat/Red Hat Enterprise Linux (RHEL ou Red Hat Linux)
  • Amazon Linux
  • CentOS
  • Fedora
  • Oracle Linux
  • SUSE Linux
  • Ubuntu

Como as distribuições Linux gerenciam as atualizações e correções

Outra distinção é como o sistema operacional gerencia atualizações e correções de software opcionais. Muitos, porém, não todos, os sistemas mencionados anteriormente utilizam o RPM (antigo Red Hat Package Manager, Gerenciamento de Pacotes Red Hat) Outras distribuições utilizam o sistema de pacote Debian (dpkg).

O gerenciamento individual de pacotes não tem muita relevância por si só, porém ele cria uma diferença de compatibilidade entre os sistemas, criando certa dicotomia. Por exemplo, dependendo de quais recursos você está usando, você pode facilmente trocar sistemas que usem o sistema RPM (às vezes chamado de "distros do Linux rpm") entre si, pois eles podem fazer download de pacotes muito semelhantes de servidores de distribuição semelhantes.

Você também pode converter pacotes CentOS e RHEL em pacotes compatíveis com o Oracle, apontando o gerenciador de pacotes para um novo servidor de atualizações. Isso acontece, devido ao sistema RPM, entre outras características. (Observe que esta é uma declaração técnica - os fornecedores podem ter termos de licença adicionais que você deve cumprir, mas esses termos estão fora do escopo deste documento.) Esta conversão seria mais difícil com uma distribuição como o Ubuntu, que usa o sistema de pacotes Debian.

Alguns fatores para serem considerados ao escolher uma distribuição Linux

Benefícios proporcionados pela base dos subsistemas

Para muitas empresas o sistema operacional é a base de todo subsistema de uma plataforma de software. Nesse cenário, os aplicativos comerciais ocupam o topo dos subsistemas. Isso pode fazer com que pareça que o sistema operacional é menos importante que as camadas mais altas do conjunto, portanto a distribuição escolhida não interfere. Alguns podem até pensar que todas as distribuições são praticamente as mesmas.

Porém, como o sistema operacional Linux está na base, ou próximo a ela, dos subsistemas, ele consegue afetar tudo o que estiver acima. Melhorias nos recursos de segurança, desempenho, confiabilidade e solução de problemas nesse nível baixo podem significar melhorias nesses fatores ao longo da pilha. Por exemplo, uma tecnologia conhecida como Ksplice pode permitir que o administrador aplique as correções sem a necessidade de reiniciar o servidor. Por si só, o benefício não parece ser muito grande. Mas quando você considera o custo de baixar a aplicação de negócios e o risco alternativo de deixar o sistema sem correções para a ameaça de segurança mais recente, a capacidade de corrigir sem perturbar a aplicação de negócios de repente tem um impacto muito grande.

Esses benefícios podem se tornar ainda mais valiosos conforme a progressão. Economizar o tempo de reinicialização, a nível de sistema operacional, pode levar apenas alguns minutos cruciais do administrador. Porém, evitar a dor da empresa e o impacto da receita em potencial oriundo da desativação programada de um aplicativo principal do cliente pode custar milhares de vezes mais do que o salário-base do administrador. Além de todos os custos e riscos envolvidos ao ignorar as atualizações de segurança.

Vantagens sobre o desempenho

Nessa mesma perspectiva, parece ser irrelevante melhorar o desempenho do sistema operacional, porque os administradores gastam pouquíssimo tempo trabalhando diretamente no SO, e os usuários gastam ainda menos tempo com essa tarefa. Porém, traduzidas até o nível da aplicação corporativa, pequenas melhorias de desempenho podem ser multiplicadas por milhões de transações de alto valor, levando a economia de custo por operação ou até mesmo a uma vantagem competitiva para os negócios, entregando transações sensíveis ao tempo mais rapidamente do que as concorrentes.

Por que escolher o Linux?

É aberto e completo

Com um ambiente operacional aberto e completo, o Oracle Linux fornece ferramentas de computação nativas de virtualização, gerenciamento e nuvem, junto com o sistema operacional Linux, em uma única oferta de suporte. O Oracle Linux é 100% compatível com aplicações RHEL. Por conta dessa compatibilidade, o sistema operacional é um bom substituto para outras distribuições baseadas em RPM

É gratuito

Você pode utilizar o Oracle Linux gratuitamente para ambientes pessoais (por exemplo, como um substituto para o CentOS). Ou, também existe contratos de suporte Linux para fluxos de trabalhos corporativos.

O sistema é constantemente atualizado

Para suportar o alto desempenho do Oracle Database, os engenheiros da Oracle realizaram melhorias contínuas ao Unbreakable Enterprise Kernel. Embora o alvo dessas melhorias fosse o Oracle Database, elas acabaram beneficiando qualquer aplicativo que necessite de muita memória e processamento. Alguns usuários relataram um aumento de 30% no desempenho sobre essa variante do kernel do Linux.

O sistema não precisa ser reinicializado após instalar as atualizações

Adicionalmente, o Oracle Linux inclui uma tecnologia em que elimina a necessidade de reiniciar após as atualizações chamada de Ksplice. Esse recurso permite que os servidores sejam atualizados e corrigidos regularmente, sem a necessidade de reinicialização e, mais importante, mantendo todas as aplicações ativas e funcionais durante todo o processo. Com isso, mais correções podem ser feitas, aumentando a confiança e segurança dos sistemas. Essa prática também reduz a carga administrativa de aplicações comerciais massivos, que precisam de um trabalho extenso de agendamento e aprovações de todas as partes interessadas antes da reinicialização em si. O Oracle Linux também inclui o hipervisor KVM de código aberto e (com um contrato de suporte) o gerenciador de virtualização (PDF).

O sistema conta com muitas ferramentas nativas na nuvem já integradas

Muitos fluxos de trabalhos estão migrando para um ambiente na nuvem, e os sistemas locais muitas vezes são projetados com padrões e tecnologias de nuvem nativa, como Kubernetes, contêiner Kata e Istio. O Oracle Linux é o sistema operacional base da Oracle Cloud Infrastructure (OCI)e conta com muitas das ferramentas de nuvem nativa que a arquitetura exige. Ou seja, o Oracle Linux é testado no ambiente mais largo e com a maior demanda, que corresponda aos padrões de design dos aplicativos mais modernos. As lições aprendidas são convertidas em melhorias diretas para o sistema operacional. Mas, em contrapartida de outros fornecedores de nuvem que têm um sistema proprietário subjacente à nuvem, o Oracle Linux está disponível na mesma configuração para todos os usuários, estejam eles no OCI, em outra nuvem ou no data center do próprio cliente.

É a base do Oracle Autonomous Linux

O Oracle Linux também é a base do único sistema operacional autônomo do mundo, que aplica correções diariamente para reduzir as ameaças à segurança e o esforço administrativo ao mesmo tempo.

Desde 2006, o Oracle Linux é gratuito para baixar e usar: código-fonte, binários e atualizações livres Livremente redistribuível. Gratuito para uso em produção.