top

Principal

Blog

ABR 17 2014
Comentar Busca Avancada Em PDF

7 razões (evidências) que fazem o Kernel Linux muito superior ao do Windows

Todo sistema operacional possui um núcleo (kernel), inclusive o MS-Windows. Obviamente cada qual possui suas peculiaridades, e o da Microsoft é bem mais acoplado ao Sistema Operacional que o kernel do Linux. O objetivo deste texto, é mostrar evidências, coisas fáceis de verificar, que demonstram que o kernel do Linux é bastante superior ao dos seus concorrentes nos seguintes aspectos:

1- Rapidez de preparo e uso de hardware

De fato, uma das coisas mais evidentes, é comparar o tempo em que um pendrive, que nunca foi inserido na máquina, leva para ler o conteúdo da memória flash. Foi a primeira coisa que percebi quando migrei para o Linux. E isto vale não só para memórias flash, serve para qualquer equipamento, principalmente os com interface USB: webcam, mouse e etc...

Isto acontece principalmente porque os drivers, que fazem estes equipamentos físicos funcionarem, que são inicialmente desenvolvidos separadamente, posteriormente são unidos ao pacote principal do kernel, e compilados conjuntamente. Isso explica também porque é tão fácil e automático instalar novas peças em sistemas linux, e também como é tão simples migrar para um novo hardware (ex. trocar a placa mãe - desde que não mude a arquitetura) sem mudar sequer uma vírgula de configuração no sistema.

Diferentemente, no MS-Windows, você precisa aguardar aquele tempão o sistema instalar o dispositivo, sem contar que na maioria das vezes você precisa instalar antes os drivers indicando os arquivos .inf e muitas vezes reiniciar o sistema.

2- Atualização e testes no mesmo Sistema Operacional

Essa é uma das coisas mais fantásticas que o kernel linux pode realizar. É muito comum nas atualizações do Ubuntu, Fedora, etc, atualizar também o núcleo do sistema, que contém o kernel. Atualmente no Ubuntu, são cerca de 35MB, e qualquer nova função, driver ou característica do novo kernel, estará disponível automaticamente assim que a máquina for reiniciada.

Se você não limpar manualmente, as outras versões de kernel ficarão disponíveis nos sistemas Linux, e você poderá voltar a estas versões se houver qualquer problema. Isso é possível através do menu do inicializador GRUB - acessado quando pressionando SHIFT durante o processo de boot.

3- As opções de depuração

Já passei por problemas variados, que só pude resolver por ter acesso às mensagens de log do sistema disponíveis geralmente em /var/log/messages. O fato é que algumas vezes são variáveis demais a se considerar, e estes erros difíceis de rastrear geralmente são problemas no hardware, algumas vezes o problema é na integração hardware-software.

O kernel linux registra por exemplo, erros de entrada e saída (IO) - quando um disco está com blocos danificados, também inacessibilidade ou falhas de dados na memória, má configuração de dispositivos diversos (ex. resolução não suportada pela placa de vídeo), etc.

O Windows geralmente não lhe oferece nada, ou se oferece, é geralmente incompleto e genético demais para a resolução dos problemas. Cabe a você neste caso recorrer à tentativa e erro, testando timtim por timtim às cegas!

4- Interação em baixo nível

Talvez você não ligue pra isso. Aliás, este é um ponto até meio controverso, pois supostamente um usuário comum do sistema não deveria ter acesso a tal peculiaridade. O fato é, estamos falando de um componente muito básico, e é bom termos o maior controle possível de tudo o que roda na máquina, mesmo que você não precise, é bom ter a opção.

É comum em algumas placas de vídeo, ser necessário desativar algumas configurações de vídeo não muito genéricas através do parâmetro nomodeset, especialmente ao iniciar um LiveMedia; isso normalmente antes de instalar o sistema operacional na máquina. É até natural o entendimento da questão, diferentes partes físicas, necessitam de diferentes configurações, é uma tarefa extremamente desafiadora "adivinhar" quais os requisitos de cada placa previamente.

Praticamente tudo pode ser parametrizado e configurado em tempo de inicialização através do menu do inicializador (boot). Basta saber como, e quais opções disponíveis. Posso citar por exemplo o iommu, que já me foi útil, e também o parâmetro mem, que configura a quantidade de memória que será "enxergada" pelo sistema, muito importante para testes e simulação de situações para desenvolvedores.

5- Arquitetura modular enxuta

Infelizmente é desafiador para qualquer sistema funcionar em todo e qualquer dispositivo. Existe uma variedade enorme de hardware, e isto são "variáveis" que os desenvolvedores não podem controlar. Para a Microsoft é muito mais fácil, ela não se responsabiliza por fazer funcionar dispositivos de terceiros, eles que desenvolvam seus drivers e que façam funcionar suas peças na plataforma Windows. Infelizmente alguns fabricantes não têm interesse em fazer funcionar seus produtos no Linux, e alguns destes, quando justifica (são bons), acabam passando por engenharia reversa e tendo uma versão livre de seus drivers disponibilizados para o Linux.

Bom, o ponto em questão é, mesmo que alguns apontem o produto da Microsoft suportando uma maior parcela das peças disponíveis, o Linux funciona em uma parcela muito mais variada de dispositivos. Como Androids, DVRs, Roteadores, e em sistemas embarcados dos mais diversos. Isso é devido ao fato de que a arquitetura é muito bem organizada, e compensa reutilizar boa parte do código existente para dar vida aos fios de cobre e blocos de silício.

6- Desenvolvido por várias pessoas e entidades

O primeiro ponto a se ponderar a respeito desta característica (trunfo), é a organização necessária para que isto não se torne um caos. Qualquer um que já trabalhou numa equipe de desenvolvimento de software sabe o quão complicado é dividir o trabalho, e fazer com que duas pessoas representem o dobro de esforço convertidos em benefícios ao sistema.

Não existem tantas pessoas assim desenvolvendo diretamente o kernel Linux, mas são bem mais de duas. Além do mais, existem mais desenvolvedores que criam módulos que interferem diretamente no funcionamento e integração com o kernel. Alguns deles querem adicionar novas funcionalidades, por exemplo algum fabricante de processadores que quer fazer com que seus chips funcionem melhor. Pode ser também empresas que desejam fazer seus smartphones consumirem menos bateria, enfim, até algumas provedoras de serviços que desejam diminuir a quantidade de servidores necessários para desempenhar determinado papel.

É esta diferença de objetivos e variedade de mentes que fazem com que o kernel linux tenha tão clara, bem definida e crescente lista de melhorias.

7- Auditoria livre

Outra importantíssima característica, que já foi a muito tempo percebida por grandes provedores de serviços, mas que a cada dia se torna mais evidente, é a liberdade de verificar o que de fato implementa certo pedaço de código. Isto impacta gigantescamente (não existe palavra para expressar) na segurança dos sistemas.

Algumas falhas são extramente difíceis de descobrir e explorar, e com o código aberto, é mais fácil chegar numa qualidade melhor, porque é possível testes mais dirigidos. Em qualquer sistema, falhas podem ficar dormentes durante anos, isso foi demonstrado recentemente por uma falha no OpenSSL, se fosse um sistema caixa-preta, talvez o bug não teria sido encontrado, e muito provavelmente a correção teria demorado muito mais para surgir.

E o pior, é a questão ética envolvida. Você está a mercê das empresas detentoras dos direitos dos sistemas fechados. Pode ser que elas por interesse próprio, não divulguem a falha para não causar constrangimentos, pode ser que estes mantenham as falhas "controladas" para tirar proveito a seu bel prazer. Infelizmente, corrupção existe!

Conclusões

Poderíamos citar outras questões, como por exemplo eficiência/eficácia e performance, mas estas características são um pouco mais complexas de descrever, e muitas vezes não é senso comum. Comentem portanto deixando sua opinião e perspectiva a respeito dos kernels disponíveis no mercado!

Não existe produto perfeito, tudo pode e deve melhorar!

Newsletter
Assunto: Software | Comentários(0) | Postado por André EXPANDIR
JAN 10 2014
Comentar Busca Avancada Em PDF

Inscrível história: Como instalar um Sistema Operacional remotamente a 6.914 Km de distância

Essa é a história de como eu recuperei um Sistema Operacional Lubuntu, que rodava no notebook da minha mãe, ela estava nos Estados Unidos da América, e eu aqui no Brasil. Isto não é um tutorial, mas creio que daqui se possa tirar bastante conhecimento e experiência.

Tudo se inicia quando minha mãe me mandou uma mensagem via Facebook, dizendo que o laptop estava travado numa tela preta, e não entrava no sistema, não importando quantas vezes reiniciasse. Em outra oportunidade, fizemos um bate-papo virtual via Hangouts do Google, por sorte ela tem um tablet com Android, e foi bem mais fácil entender de fato qual era o problema, quando ela me mostrou na câmera, numa vídeo chamada.

O computador estava travando logo após o boot, o grub deixava uma mensagem de erro, que eu agora não me lembro qual era... Até hoje não sei ao certo o que ocasionou o problema, mas creio que foi uma atualização mal sucedida da distribuição, nesta época tinham acabado de liberar o 13.10. Minha mãe deve ter pensado que se tratava de atualizações corriqueiras e foi: Next + Next + Finish = &$&(*)()@%%$%

Não posso culpá-la, eu poderia ter evitado o estrago. Essa foi a primeira lição: Desabilitar atualizações de distribuição em computadores de pessoas altamente leigas!

Para você entender a gravidade da situação, minha mãe tem seus quase 50 anos, precisa de minha ajuda toda vez que vai anexar arquivos no e-mail... E eu estava a 6.914 Km de distância, ela não tinha um CD do Lubuntu, ou qualquer outro sistema operacional Live, não conhecíamos ninguém que pudesse nos socorrer tendo conhecimentos em Linux nas redondezas, eu não poderia simplesmente deixar numa assistência qualquer, pois só um Unix-Like poderia montar a partição /home - reiserfs, para fazer backup. O notebook dela ainda tem a partição de Recovery do Windows original, mas se eu a instruísse a fazer isto, ela simplesmente perderia todos os seus arquivos! Não era uma opção!

Eu sabia, se ela tivesse um Live CD do Lubuntu, em mãos, seria fácil, instruindo via telefone ou hangouts eu poderia reinstalar o sistema, preservando os dados já separados na partição /home. Eu pensei em mandar um CD ou um pendrive com o sistema Lubuntu por correio, mas minhas cartas demoram quase um mês para chegar lá, fora o risco de chegar avariado... Foi aí que a força da comunidade fez a diferença, lembrei da lista de discussão que participo, de usuários Lubuntu de todo o mundo. O que fiz foi pedir ajuda a algum deles que morasse nos EUA, alguém que poderia gravar este CD e postar no correio, e em cerca de 4 dias meu problema seria resolvido. E assim foi feito, e consegui um chegado do Texas para salvar a pátria!

Por sorte eu já tinha configurado o redirecionamento da porta 5900 para a interface de rede do notebook da minha mãe. Eu tinha feito a regra no DHCP, então tinha certeza que não teria erro, na parte estrutural eu estava garantido. A configuração do moden, fiz pelo compartilhamento de tela do Hangouts anteriormente, era pra eu conseguir controlar toda a máquina, mas você sabe como é o suporte a este tipo de software pra Linux, fraco! Pelo menos eu conseguia ver o que minha mãe fazia, então fui instruindo passo a passo até conseguir o redirecionamento, e poder de fato fazer o acesso remoto via VNC.

Não por sorte, mas por competência, o Lubuntu é bem fácil e direto para fazer a maioria das tarefas, até as não corriqueiras. Com a maravilha tecnológica Live Lubuntu rodando, é possível instalar programas (mesmo rodando apenas na memória RAM). Instrui minha mãe: Vá na tela preta e digite sudo apt-get install x11vnc. Além de fazer isto, ela teria de fazer o serviço VNC rodar, e mais uma vez por sorte, eu já tinha deixado um atalho configurado na partição /home que executa o comando: x11vnc -forever -display :0 -rfbport 5900. Então, foram só dois cliques para montar a partição, mais dois cliques para ativar o x11vnc, e pronto! Eu já estava pronto para fazer o acesso e seguir com o instalador Ubiquity, que apesar de simples, exige certos cuidados, para montar e não excluir os dados em /home.

Para facilitar a vida, os IPs nos EUA costumam ser fixos, eu já sabia qual era o que chegava até o moden da minha mãe então foi tranquilo. Mas se não fosse, também seria simples de resolver, bastava visitar o google e pesquisar uma daquelas páginas que informam seu IP de internet e pronto!

E foi assim, que o dia foi salvo novamente... Graças a eficácia de um bom Sistema Operacional, e a solidariedade dos membros da comunidade de software livre. O meu colega do Texas não quis receber o custo do CD e do envio via PayPal... Então eu tratei de mandar-lhe um presentinho, comprei um kit de velcro bastante útil na china e mandei direto pra casa dele! Foi outra forma de mostrar minha gratidão à ajuda prestada!

Newsletter
Assunto: Software | Comentários(0) | Postado por André EXPANDIR
NOV 21 2013
Comentar Busca Avancada Em PDF

Como Aumentar em 4.5 vezes o Desempenho de um Computador - HD vs SSD (comparativo gráfico)

SSDs são Solid State Drives, substituem o HD na função de armazenar dados, porém com várias vantagens, a principal delas, desempenho! Imagens falam mais que mil palavras, especialmente quando o assunto é mensuração. Então veja:

HD Seagate 500Gb
Isto é o que um HD comum lhe entrega. Média de 109.3 MB/s em leitura e 74.5 MB/s em escrita. Este HD não consegue o desempenho máximo que o Sata II oferece.

SSD Sandisk 64Gb
Isso é o máximo que um SSD lhe entrega na interface Sata II. Média de 248.9 MB/s em leitura e 137.1 MB/s em escrita. Observe que este desempenho está limitado ao que o Sata II pode oferecer...

Daqui já dá pra ver a enorme diferença de desempenho. O SSD oferece maior velocidade em escrita do que o HD pode oferecer em leitura! Vejamos mais...

SSD Sandisk 256Gb
Isto é o que um SSD pode lhe oferecer no Sata III, o máximo desempenho das placas atuais. Média de 494.2 MB/s em leitura e 219.6 MB/s em escrita.

Fica claro a diferença entre um HD e um SSD em termos de desempenho. Observe ainda os valores médios de tempo de acesso - 0.29 milisegundos no SSD com Sata 2 contra 15.69 milisegundos no HD com Sata 2. Isso é o que mais faz diferença no dia-a-dia, na hora de iniciar ou desligar o computador, afinal a maioria dos arquivos são pequenos e em lugares diferentes, alguns deles estão fragmentados...

Atualmente a diferença em desempenho se encherga também na diferença em preço entre os dois dispositivos quando comparados em capacidade parecida. O $/GB do SSD é ainda mais variado que dos dispositivos HDs. Porém, quando o fator espaço (GB) não é levado em conta, é possível comprar um bom dispositivo para usar apenas com o sistema operacional e programas instalados por um preço parecido, fazendo assim, uso do melhor dos  "dois mundos ".

Algumas opções no famoso DX.com:

Observações:

Os testes foram feitos em dispositivos diferentes e máquinas diferentes devido à disponibilidade.

Assim como nos HDs, o desempenho dos SSDs podem variar grandemente dependendo da tecnologia empregada no produto. Existem HDs com melhor desempenho e também SSDs melhores. Estes foram apenas exemplos de dispositivos comumente encontrados no mercado, com bom custo x benefício.

Os dispositivos SSDs são encontrados também em outros tipos de interface que não seja o SATA, em especial em MACs, é utilizado outro tipo de socket que é bastante comum em sistemas embarcados.

Os SSDs em sua maioria vêm em tamanho de 2.5 ", que é o tamanho padrão de HDs para notebook. Isso não impede que você use o mesmo dispositivo para desktops, basta comprar um adaptador para 3.5 ". Aqui outra opção.

Newsletter
Assunto: Hardware | Comentários(0) | Postado por André EXPANDIR

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 

Feed RSS Boletim de novidades via email Siga-me no twitter
Lab de Garagem Lubuntu Espirito Livre Diolinux

FRASE DO DIA

spacer

Encontrou-se, em boa política, o segredo de fazer morrer de fome aqueles que, cultivando a terra, fazem viver os outros.

Voltaire


bottom