Introdução ao Linux
Linux é uma família de sistema operacional de código aberto semelhante ao Unix no kernel Linux, e o kernel do sistema operacional foi publicado pela primeira vez em 17 de setembro de 1991 por Linus Torvalds . Normalmente, o Linux é empacotado como uma distribuição Linux, que contém as bibliotecas de suporte, o software do sistema e o kernel, vários dos quais são oferecidos pelo Projeto GNU. Várias distribuições Linux usam o termo 'Linux' no título, mas a Free Software Foundation usa o 'GNU/Linux' título para focar na necessidade do software GNU, causando algumas controvérsias.
Distribuições Linux famosas são Ubuntu, Fedora Linux e Debian, este último composto por diversas modificações e distribuições diferentes, incluindo Xubuntu e Lubuntu. As distribuições comerciais são SUSE Linux Enterprise e Red Hat Enterprise Linux. As distribuições de desktop do Linux são sistemas de janelas como Wayland ou X11 e ambientes de desktop como KDE Plasma e GNOME.
- Originalmente, o Linux foi projetado para computadores pessoais baseados na arquitetura Intel x86, mas desde então foi movido para mais ambientes do que outros sistemas operacionais.
- Incluindo o Android, o Linux tem a maior base instalada de todos os sistemas operacionais de uso geral devido ao controle do Android baseado em Linux sobre smartphones em maio de 2022.
- No entanto, o Linux era usado por apenas cerca de 2,6% dos computadores desktop em novembro de 2022.
- Além disso, o Linux é executado em muitos sistemas embarcados, ou seja, dispositivos cujo sistema operacional é normalmente projetado no firmware e extremamente customizado para o sistema.
- Inclui naves espaciais (perseverance rover, cápsula de tripulação Dragon e foguete Falcon 9), automóveis (Toyota, Hyundai, Mercedes-Benz, Audi e Tesla), televisões (LG e Samsung Smart TVs), consoles de videogame, dispositivos domésticos inteligentes, controles de automação e roteadores.
Linux é um dos exemplos mais notáveis de colaboração de software livre e de código aberto. O código-fonte pode ser distribuído, modificado e usado de forma não comercial ou comercial por qualquer pessoa sob as condições de suas respectivas licenças, como a GNU GPL (Licença Pública Geral). Por exemplo, o kernel Linux é licenciado sob a GPLv2.
História do sistema operacional Linux
O sistema operacional baseado em Unix foi implementado e concebido em 1969 em Sino da AT&T laboratórios de Joe Ossanna, Douglas Mcllroy, Dennis Ritchie e Ken Thompson nos Estados Unidos. Publicado pela primeira vez em 1971, o Unix foi inteiramente escrito em linguagem assembly, como era a prática básica da época. Ele foi atualizado na linguagem C por Dennis Ritchie de forma pioneira em 1973. A disponibilidade de uma implementação de linguagem Unix de alto nível tornou conveniente sua portabilidade para plataformas de computador distintas.
Torvalds matriculou-se em um curso Unix enquanto visitava a Universidade de Helsinque no outono de 1990. O curso utilizou um minicomputador MicroVAX executando Ultrix, e um dos textos necessários era Sistemas Operacionais: Design e Implementação, de Andrews S. Tanenbaum. O livro continha uma cópia do sistema operacional MINIX de Tanenbaum. Foi junto com este curso que Torvalds inicialmente se abriu ao Unix. Ele se interessou por sistemas operacionais em 1991. Frustrado com o licenciamento do MINIX, que na época o limitava apenas ao uso educacional, ele começou a trabalhar no kernel de seu sistema operacional, que eventualmente se tornou o Kernel Linux.
Torvalds iniciou o desenvolvimento do kernel Linux no MINIX, e o software escrito para o MINIX também foi usado no Linux. Mais tarde, o Linux foi cultivado e então o desenvolvimento do kernel Linux apareceu nos sistemas Linux. Além disso, os aplicativos GNU substituíram todos os componentes do MINIX porque era benéfico usar o código livre através do Projeto GNU com o novo sistema operacional; o código licenciado sob a GNU GPL pode ser reaplicado em outras funções do computador, desde que também sejam publicados sob uma licença compatível ou com a mesma licença.
Torvalds iniciou uma mudança de sua licença atual, que proibia a distribuição comercial, para a GNU GPL. Os desenvolvedores operaram para desenvolver elementos GNU com o Kernel Linux, criando um sistema operacional gratuito e totalmente funcional.
O principal mantenedor do Kernel Linux é Greg Kroah-Hartman quem orienta o seu desenvolvimento. O diretor executivo da Free Software Foundation é William John Sullivan , que por sua vez suportava os componentes GNU. Corporações e indivíduos finalmente desenvolvem componentes de terceiros não-GNU.
Os componentes de terceiros são compostos por um amplo conjunto de trabalhos e podem conter bibliotecas e aplicativos de usuário e módulos de kernel. A comunidade e os fornecedores Linux distribuem e combinam o kernel, componentes não-GNU e componentes GNU com software extra de gerenciamento de pacotes no estilo das distribuições Linux.
Em ambientes de produção, a adoção do Linux começou a decolar inicialmente em meados da década de 1990 na comunidade de supercomputação, em vez de ser usado apenas por hobbyistas, onde organizações como a NASA começaram a substituir cada vez mais suas máquinas caras por clusters de computadores baratos e baratos rodando Linux. O uso comercial começou quando a IBM e a Dell, perseguidas pela Hewlett-Packard, começaram a fornecer suporte ao Linux para escapar do monopólio da Microsoft no mercado de sistemas operacionais para desktop.
Os sistemas Linux são totalmente usados na computação hoje, desde sistemas embarcados até todos os supercomputadores virtualmente, e garantiram uma posição em instalações de servidores como a famosa pilha de aplicativos LAMP. O uso de distribuições Linux em desktops empresariais e domésticos tem se desenvolvido.
Além disso, as distribuições Linux se tornaram famosas no mercado de netbooks, com vários dispositivos migrando com distribuições Linux customizadas instaladas e o Google publicando seu ChromeOS desenvolvido para netbooks.
Design do sistema operacional Linux
Vários desenvolvedores de código aberto admitem que o kernel do Linux não foi desenvolvido, mas evoluiu a partir da seleção natural. Um sistema baseado em Linux é um sistema operacional compatível com Unix, derivado muito de seu design comum de princípios criados em Unix durante as décadas de 1970 e 1980. Tal sistema aplica o kernel Linux, um kernel monolítico que gerencia sistemas de arquivos, acesso periférico, rede e controle de processos. Os drivers de dispositivo são diretamente integrados ao kernel ou incluídos como módulos carregados enquanto o dispositivo está ativo.
Os componentes do sistema Linux instalados incluem o seguinte:
- A carregador de inicialização , por exemplo, systemd-boot, SYSLINUX, LILO e GNU GRUB. É um programa que pode carregar o kernel do Linux na memória principal do computador, sendo executado pelo computador após o login do firmware ser realizado e quando ele estiver ligado.
- Um entre no programa , como o sysvinit tradicional e os mais recentes Upstart, OpenRC e systemd. É o primeiro processo anunciado pelo kernel Linux e pela raiz da árvore de processos. Em outras palavras, todo processo é aberto a partir do init. Ele inicia processos como prompts de login e serviços do sistema (seja em modo terminal ou gráfico).
- A biblioteca padrão C é necessária para executar programas C em um sistema usando a biblioteca GNU C como padrão. Alternativas como uClibc (desenvolvido para uClinux), EGLIBC (fork glibc usado pelo Debian uma vez) e musl foram desenvolvidas. No entanto, os dois primeiros não são mantidos agora. O Android usa sua biblioteca C, conhecida como Biônico .
- Os shells GUI são as interfaces de usuário mais famosas em sistemas de desktop, empacotados com amplos ambientes de desktop como Xfce, Pantheon, LXDE, Cinnamon, MATE, GNOME e KDE Plasma, embora uma variedade de diversas interfaces de usuário esteja disponível.
- As interfaces de usuário mais famosas trabalham com o conceito do X Window System, conhecido como 'X' .
- Oferece transparência na rede e permite que uma aplicação gráfica ativa em um sistema seja mostrada em outro no qual um usuário possa colaborar com a aplicação.
- Embora certas extensões do X Window System não consigam funcionar na rede.
- Muitos servidores de exibição X estão disponíveis com o servidor X.Org, sendo a implementação de referência a mais famosa.
Além disso, a interface do usuário é chamada de shell. É uma GUI (interface gráfica do usuário), uma CLI (interface de linha de comando) ou controles anexados ao hardware relacionado, o que é normal para sistemas embarcados. A interface do usuário padrão é gráfica para sistemas desktop. No entanto, a CLI está disponível em janelas de emulador de terminal ou em um console virtual isolado.
Os shells da interface de linha de comando são UIs baseadas em texto, que utilizam texto para saída e entrada. O shell dominante é o bash (Bourne-Again Shell) usado no Linux, originalmente projetado para o projeto GNU. Quase todos os componentes de baixo nível do Linux, incluindo várias partes da área do usuário, usam exclusivamente a CLI. Particularmente, a CLI é compatível com automação de tarefas atrasadas ou repetitivas e proporciona uma comunicação entre processos muito fácil.
Atualmente, o Linux tem duas APIs de espaço de usuário do kernel para lidar com dispositivos de entrada de vídeo: API DVB para recepção de TV e API V4L2 para fluxos de rádio e vídeo.
Esta infraestrutura precisa evoluir para melhor se adequar a outros dispositivos devido à diversidade e complexidade dos diferentes dispositivos e ao grande número de padrões e formatos gerenciados por essas APIs. Uma biblioteca de dispositivos de espaço de usuário melhor também é a chave do sucesso para ter aplicativos de espaço de usuário que possam funcionar com todos os formatos suportados pelos dispositivos.
Usos do sistema operacional Linux
Vários estudos quantitativos de software livre/de código aberto concentram-se em tópicos como confiabilidade e participação de mercado, com muitos estudos examinando especificamente o Linux. O mercado Linux está se desenvolvendo, e o tamanho do mercado do sistema operacional Linux deverá ver um desenvolvimento de 19,2% até 2027, atingindo 15,64 bilhões de dólares, em comparação com 3,89 bilhões de dólares em 2019. Proponentes e analistas atribuem o sucesso associativo do Linux à sua liberdade e baixo custo. , confiabilidade e segurança contra o aprisionamento do fornecedor.
W3Cook lança estatísticas que utilizam os 1.000.000 principais domínios Alexa, que estimam que 96,55% dos servidores web usam Linux, 1,73% usam Windows e 1,72% usam FreeBSD em maio de 2015.
Em maio de 2022, a participação estimada no mercado do Linux era de cerca de 2,5% em computadores desktop, de acordo com estatísticas de servidores web. O Microsoft Windows tem uma participação de mercado de aproximadamente 75,5%, enquanto o macOS tem cerca de 14,9%.
O Android se tornou o sistema operacional líder para smartphones baseado no kernel Linux. Em julho de 2022, 71,9% dos smartphones em todo o mundo que usavam internet usavam Android. Além disso, o Android é um sistema operacional famoso para tablets, sendo responsável por mais de 60% das vendas de mesas em 2013.
O Linux tem sido a plataforma preferida na indústria cinematográfica há anos. O primeiro grande filme lançado em um servidor Linux foi Titanic, de 1997. Desde então, grandes estúdios, incluindo Industrial Light & Magic, Weta Digital, Pixar e DreamWorks Animation, mudaram para o Linux.
As distribuições Linux também ganharam popularidade em vários governos nacionais e locais. Kerala chegou ao ponto obrigatório de que todas as escolas estaduais de ensino médio usem Linux em seus sistemas. A China utiliza Linux exclusivamente como sistema operacional para sua família de processadores Loongson para alcançar independência tecnológica.
Algumas regiões integraram a sua distribuição Linux em Espanha, que é amplamente utilizada em instituições oficiais e educacionais. Além disso, a Alemanha e a França tomaram medidas no sentido da adopção do Linux. O sistema operacional Red Star da Coreia do Norte é baseado em uma versão do Fedora Linux desenvolvida desde 2002.
Sistema operacional Linux funcionando
O sistema operacional Linux segue um design padrão que é a chave para suas diversas distribuições e variações. Cada distribuição Linux é baseada no kernel Linux, mas pode diferir com base em fatores como:
- Drivers de dispositivo, que utilizam código que gerencia o funcionamento dos dispositivos vinculados.
- Drivers de sistema de arquivos, que utilizam código que gerencia como o kernel opera com sistemas de arquivos distintos.
- Chamadas de sistema, que utilizam código que gerencia como os programas reivindicam serviços por meio do kernel.
- Inicializando e carregando o kernel Linux.
- O kernel lida com todas as saídas e entradas do sistema depois de inicializado. O sistema é inicializado e os processos podem ser inicializados.
- O sistema pode ser utilizado para processos que contêm comandos inseridos interativamente pela linha de comando, funções de servidor de rede, aplicativos de desktop ou qualquer programa ou aplicativo à medida que os processos do sistema são inicializados.
O kernel é a única coisa que todo sistema tem em comum no Linux. Linux opera por:
A experiência do usuário pode variar amplamente, dependendo de como o sistema Linux está sendo utilizado, enquanto o kernel pode ser quase idêntico, com algumas diferenças de compilação e divergência de configuração. Por exemplo, alguns casos de uso do Linux com experiências de usuário distintas são:
O Linux opera de forma muito semelhante a qualquer sistema operacional baseado em GUI quando usado como GUI em um ambiente de desktop. Aplicativos e muitos outros recursos podem ser iniciados pressionando ícones, e os arquivos podem ser excluídos, copiados ou movidos usando um trackpad ou mouse.
Distribuições Linux
O Linux aceitou as disposições de copyleft da Free Software Foundation, que produziu a GNU GPL desde o seu início de desenvolvimento. A GPL descreve que qualquer coisa tomada para modificação e gratuita deve ser distribuída gratuitamente.
Centenas de versões do Linux, também chamadas de distros ou distribuições, estão disponíveis. Normalmente, as distribuições diferenciam-se através do pacote, definindo um objetivo específico, mercado-alvo, função ou filosofia.
Existem muitas distribuições feitas para funções específicas, como segurança, jogos, desktops, servidores ou dispositivos incorporados, como sistemas Raspberry Pi. Quase todas as distribuições modernas estão prontas para uso e pré-compiladas, enquanto outras, como o Gentoo Linux, são compostas de código-fonte que qualquer usuário pode compilar localmente durante o início da instalação para usar a configuração do sistema.
Prós e contras do sistema operacional Linux
Alguns benefícios de usar Linux estão listados e explicados abaixo:
Algumas desvantagens do Linux são: