quinta-feira, 14 de abril de 2016

O que é Linux? - Parte 1

 

Você sabe o que é Linux?

Olá leitores do Blog Essenziale! Estamos mais uma vez aqui com uma postagem sobre informática e tecnologia e para hoje pareceu-me bom esclarecer um assunto que realmente pouca gente sabe: o Linux.
Para começo de conversa, fiz algumas postagens de como instalar uma distribuição Linux numa máquina virtual ou apresentando características de alguns sistemas, mas me perguntaram o que seria esse Linux e até mesmo o que é uma distro. Entendo que para alguém que vem do Windows, só sabe mexer com Windows e acredita que no mundo só existem Windows e Mac o Linux é algo difícil de entender.
Para começar vamos direto a resposta da pergunta sobre o conceito de Linux. Para efeito de comparação trago aqui a definição da Wikipédia, até por causa de sua péssima fama:

 
“Linux é um termo comumente utilizado para se referir a sistemas operativos (português europeu) ou sistemas operacionais (português brasileiro) que utilizam o kernel Linux. O núcleo Linux foi desenvolvido pelo programador finlandês Linus Torvalds, inspirado no sistema Minix. O seu código fonte está disponível sob a licença GPL (versão 2) para que qualquer pessoa o possa utilizar, estudar, modificar e distribuir livremente de acordo com os termos da licença. A Free Software Foundation e seus colaboradores usam o nome GNU/Linux para descrever o sistema operacional, o que tem gerado controvérsias”.

 
E o que posso dizer sobre a definição apresentada pela Wikipédia? Posso concluir que a Wikipédia está ERRADA. Ali diz que o Linux é um termo para se referir a sistemas operacionais que utilizam o núcleo Linux, o que é incorreto uma vez que o Linux em si é o kernel, o não o sistema em si. O Linux é apenas o Kernel do sistema, isto é, o núcleo do sistema operacional, que é onde o sistema é construído. De maneira fácil para se entender, você pode entender que o Linux é o motor do carro e o sistema operacional é o carro completo.

 

E o que é o kernel?


E daí você me pergunta, o que é este tal kernel? Farei outra postagem mais detalhada sobre o assunto mas, de forma mais sintética, imagine um computador como sendo uma fusão de duas grandes partes (software e hardware): Quando você liga a sua máquina a primeira coisa a ser carregada é toda a parte física da máquina, eletrizada (ventoinha, processador, placa-mãe, pentes de memória, fonte, placa gráfica), e ao ser ligada, um programa da placa-mãe é inicializada, isto é, o Bios.
Quando você formata um computador que tem um sistema que não funciona o que você faz? Insere uma mídia com a imagem do sistema bootável e altera a ordem do Setup do Bios, isto é, numa função do Bios chamada boot você informa qual dispositivo deve ser buscado pois tem os arquivos necessários para o arranque.
Beleza, você diz ao computador onde está o arquivo com a Imagem do Sistema Operacional (ISO) para começar a instalação e por sua vez, a máquina vai buscar os arquivos que farão a LIGAÇÃO DA PARTE FÍSICA OS SOFTWARES. Disso temos que a segunda parte do computador, isto é, a sua parte lógica ou softwares, apresentam divisão também: a primeira parte a ser carregada do sistema operacional, que é o núcleo do sistema, ou kernel, e mais acima, as aplicações.
Lembro que quando fiz meu curso básico de informática o professor informou que o sistema operacional é o programa mais importante que existe num computador, tando que é chamado de sistema operacional, ao passo que os demais (aqueles que você pode instalar e desinstalar) são chamados de aplicativos) e isso não está muito certo.
Se parar para pensar o que é um sistema operacional? Vem a ser um conjunto de aplicações para desempenhar determinada tarefa, não é? Vamos supor o Windows por exemplo: a ISO do Windows 7 tem algo em torno de 4,7 GB e agora venho e lhe pergunto o que é o sistema operacional, ou seja, que partes dele são Windows 7 e que partes não o são? Você olha a parte de baixo e vê aquela barra de tarefas, ou usa o botão do Windows para ativar os efeitos do Aero, ou ainda navega por pastas usando o Windows Explorer.
Essas funções são aplicações ou parte integrante do sistema operacional? Se disse que são aplicações acertou! Agora tire essas funções do Windows 7 (como se a Microsoft permitisse isso...), e veja se consegue trabalhar. Não vai conseguir acessar seus arquivos e nem seus programas. Como poderia acessar a sua pasta de usuário ou a pasta “meu computador” sem um atalho ou mesmo sem uma lugar para clicar? Então você responde “é sistema operacional”, mas lhe digo: a é, então O Windows 8 veio com um sistema operacional faltando pedaço, pois aquele lé não tinha o menu iniciar.
Respondendo, o sistema operacional é o conjunto de aplicações para o desempenho de uma ou várias tarefas. Como poderia a Microsoft vender um sistema em que o usuário não teria como acessar os seus próprios arquivos? Mas ao mesmo tempo, se a empresa permitisse a exclusão de algumas funções e deixasse você trocar por outras (é claro, por exemplo falando do Windows Explorer, remover esse sistema gerenciador de arquivos somente após ter instalado outro), continuaria funcionando. Ou seja, chamamos de sistema operacional o conjunto que veio nativo na ISO.
Agora imagine a situação: você liga seu computador com Windows 7 e a coisa finge que vai carregar mas fica numa tela preta com o texto informando que não possível o carregamento porque há arquivo corrompido na pasta System32. O que é isso? Calma, o que a máquina diz na verdade é que o boot do bios não conseguiu encontrar os arquivos que formam o núcleo do seu sistema operacional, ou seja, o kernel, para fazer a ligação entre a máquina física e os programas.
Se você acessar agora a pasta que está na unidade C:, do diretório do Windows, na pasta System32 encontrará muitos arquivos que não abrem mas que se excluídos o seu sistema irá parar de funcionar. Apenas para informação, é lá onde os vírus se estabelecem durante uma infecção.
Tá certo, mas não estamos falando do núcleo Linux? É, da mesma forma: as distribuições Linux são na verdade sistemas operacionais (ou seja, um conjunto de aplicações) construídos tendo por base o núcleo de arquivos criado pelo Finlandes Linux Torvalds. O que os leigos chamam de Linux são na verdade distribuições (distros, na forma abreviada), sendo que devemos chamar estas distros pelos seus respectivos nomes: Ubuntu, Debian, Linux Mint, Arch Linux, Gentoo, Fedora, CentOS, Manjaro, Mageia, OpenSUSE e milhares de outras.

 

Criação do Linux


Quando uma pessoa que não entende do assunto fala em Linux geralmente, pra não dizer sempre, ela induz em sua mente que Linux é ao mesmo tempo um Sistema Operacional e um Núcleo. O Kernel Linux propriamente dito foi criado em 1991 pelo programador Linus Torvalds e hoje em dia o Linux é mantido por desenvolvedores de todo o mundo, desde os desenvolvedores individuais até empresas como a IBM, HP, Canonical (desenvolvedora do Ubuntu). Mas cabe as pessoas que sabem da diferença sempre alertar que Linux não é o sistema operacional, então quando ouvir alguém dizendo que está pensando em instalar um Linux corrija, pois o que a pessoa quer fazer é instalar uma distro com kernel Linux.
E mais ainda, quando alguém disser que Linux não presta, que é mal feito ou que ninguém usa, informe que há milhares de distribuições construídas sob a licença GNU/Linux e cada uma tem foco num tipo de usuário. Assim, se a pessoa veio do Windows e não se adaptou ao Gentoo (uma distribuição MUITO DISFÍCIL) não é por causa do Gentoo em si, mas por culpa dela não ter procurado uma que fosse de acordo com o seu perfil.

Empresas por detrás do Linux


Foi núcleo em questão desenvolvido pelo finlandês Linus Torvalds foi inspirado no sistema Minix. O seu código fonte está disponível sob licença GPL para qualquer pessoa que utilizar, estudar, modificar e distribuir de acordo com os termos da licença.
Nisso temos uma grande diferença com os sistemas da Apple e da Microsoft: no mundo Linux você tem total acesso ao núcleo do sistema, seu código fonte, tanto para estudá-lo quanto para melhorá-lo. Inicialmente desenvolvido e utilizado por grupos de entusiastas em computadores pessoais, o Linux passou a ter a colaboração de grandes empresas, como a IBM, Sun Microsystems, Hewlett-Packard (HP), Red Hat, Novell, Oracle, Google, Mandriva e a Canonical.
Entre estas empresas destacamos a Red Hat, desenvolvedora de uma das poucas distros comerciais (pagas), que é o Red Hat Enterprice, mas que criou sisitemas operacionais gratuitos – Fedora e CentOS, sendo este último mais utilizado em servidores.
A Mandriva, empresa francesa que criou a sua versão de distro, o Mandriva, mas que após muitos anos veio a acabar, mas como no mundo livre quem faz as coisas acontecer muitas vezes é a comunidade de usuários, estes criaram uma distro baseada no Mandriva: o Mageia. Mas ainda é comum ao comprar um computador fraco (netbook) este vir de fábrica (sistema embarcado) com um Mandriva totalmente desatualizado.
Não poderíamos deixar de lado dois ícones de tecnologia: a Canonical e a Google. A primeira é a desenvolvedora do Ubuntu, uma distro focada no usuário final, assim, é feita de modo mais intuitivo possível e tem até a sua própria interface gráfica (o Unity). A empresa tem como estratégia fazer com que o Ubuntu seja a distro mais usada no mundo e segundo dados da empresa, cerca de 25 milhões de pessoas no mundo usam o sistema (isto apenas das que estão cadastradas em serviços do Ubuntu e que baixaram a ISO). Também é primeira distro a ter uma versão para o mercado mobile.
Para quem se interesse indico que pesquise sobre a Canonical e seu criador. Afinal de contas não é toda empresa que é criada com o capital de um entusiasta de software livre milionário que já foi até ao espaço como turista espacial.
A Google, por sua vez é desenvolvedora do sistema operacional Linux para smartfones, é estou falando do Android. Para tudo! E androide é Linux?! Com certeza que sim! Então lhe pergunto: qual o sistema operacional mais usado no mundo? Windows? Errado. Imaginemos que existam cerca de 2 bilhões de computadores em todo o mundo e que 90% destes utilizem Windows. Teríamos então 1,6 milhão de Windows. Tá, e quantos smartfones existem? Cerca de 6 bilhões. Pronto, qual o sistema mais usado no mundo, levando em conta que Android é uma distro Linux? Preciso perguntar? E aliado a isso, a Google desenvolveu uma distro Linux para computadores, o ChromeOS.
E se insiste em dizer que Linux não é nada, pergunto: dos 100 maiores supercomputadores do mundo, quantos usam Windows Server?