O projeto Omnislash nasceu da vontade de conseguir aumentar a fluidez na utilização do sistema Linux através de modificações diretamente no Kernel, fazendo com que o hardware seja aproveitado da melhor forma possível. Dando uma sensação de leveza e conseqüentemente uma melhora no desempenho.
No início quando utilizava o kernel 2.6.23 e se chamava ck1 apenas inseria a configuração do Sidux fazia pequenas modificações e o patch do Con Kolivas para melhorar a velocidade do sistema.
Conseguia bons resultados… para mim já era o suficiente mas…
Foi aí que comecei a desenvolver o kernel chrono, edge e slash onde descobri que havia outros patches que também aumentavam o desempenho e eles eram derivados do projeto Kamikaze e Zen (também voltados para aumentar o desempenho do Kernel).
Depois comecei a desenvolver o Kernel Omnislash em sua geração 2 já que considerava a geração 1 o kernel slash.
No Omnislash descobri que podia fazer mais ajustes e melhorar mais um pouco a performance, aí veio a geração 3 desse Kernel onde fiz uma análise e efetuei a mudança para a config do Zenwalk e fiz novos ajustes para conseguir melhores resultados.
O ganho de performance já estava bem melhor, porém uma dúvida ainda pairava sobre a minha cabeça.
“Se existem distribuições rápidas e elas não utilizam o Patch do Con Kolivas e nem o do Kamikaze, nem alteram muito a configuração elas fazem o quê para ter tanta velocidade??”
Aí pessoal, posso dizer que nesse momento comecei realmente a virar um desenvolvedor de kernel. Vi que o google não ia me ajudar muito. (rs)
Na procura da resposta baixei diversos kernels de diversas distros e comecei não só a analisá-los como também observar ativamente as listas de desenvolvimento das mesmas.
Enfim obtive a resposta:
As distros que possuem boa performance desenvolvem seus próprios patchs para otimizar os seus kernels.
Porém não há cooperação entre elas…
O que o Suse faz o Fedora não aproveita e vice-versa por exemplo. São poucos os casos em que uma distribuição usa os patches de outra.
Além do mais existem muitas distribuições porém poucas se preocupam com o Kernel algumas são simplesmente uma cópia da distro mãe com instalador diferente e um tema diferente (é melhor eu deixar de falar senão vou citar nomes e vou criar uma discussão daquelas).
A partir desse momento, tive que entender o funcionamento de cada patch (o que ele poderia fazer para melhorar a performance do sistema ou aumentar a segurança do mesmo) e colocar eles para trabalharem em conjunto (o que é bem complicado, já que alguns entram em conflito ao detectar certas alterações no código do Kernel), notei que o limite da geração 3 com o kernel 2.6.23 tinha chegado e precisaria mudar a base para o Kernel 2.6.24.
Descobri também que esse kernel (2.6.24) por padrão tem problemas que não deixam ele demonstrar todo o seu potencial com o CFS e o meu foco principal foi consertar esses problemas.
“Tudo” corrigido e agora???
Os patches a minha disposição eram muitos (a quantidade era enorme) pq eu estava trabalhando com kernels de mais de 20 distribuições.
Por isso resolvi apenas focar em determinadas áreas como:
-CFS
-Sistema de Arquivos
-Gerenciamento da memória RAM e da Cache
-Mtrr
-HD
-Wireless
-USB
-Swap
-Plug and Play
-Acpi
-Partes do kernel 2.6.25 e 2.6.26 que foram portadas para a versão 2.6.24 por serem muito boas ou por corrigirem bugs.
-Correção de Bugs do kernel 2.6.24
Fiz diversos testes e de muitos patches fiquei reduzido a menos de 200. Mais alguns testes e diminui pela metade os patches.
Enfim aconteceu meu primeiro teste com os patches que eu usaria definitivamente e puxa… quanta diferença.
Lembro que no dia estava com um colega em casa e tinha pedido o pendrive dele para um teste e ele que usa Windows se surpreendeu com a velocidade de transferência de dados e do sistema em geral.
Conclui os testes para verificar a estabilidade e tudo o que eu tinha feito e a distribuição que uso (Kubuntu 7.10) estava realmente mais rápida em meu hardware.
Agora sim estava pronta a nova versão do omnislash, uma nova geração agora chamada omnislash4.
Agora sim posso parar de ficar trocando de distribuição pq o meu hardware não é bem aproveitado.
Não quis que esse trabalho enorme ficasse restrito ao KXUbuntu e ainda por cima tendo que compilar para i686 tirando um pouco da performance e ainda restringindo o uso apenas aos usuários desktop.
Por isso liberei para a comunidade Linux para que ele possa ser adaptado da forma que bem entenderem (seja para um servidor, desktop, laptop) e em qualquer distribuição.
Também deixo a minha configuração no fonte (32bits) para que os patches sejam ativados corretamente.
Hoje depois de mais de 6 meses compilando kernels especificamente para a comunidade (compilo kernels aproximadamente desde o lançamento do Slackware 10) vejo uma quantidade expressiva de usuários usando esse kernel (alguns chegam a adicionar em sua assinatura) e relatando seus problemas e a diferença de performance existente.
O projeto Omnislash é GNU/GPL sendo utilizado oficialmente por uma distro e existe o Omni-BD-Mod um script interativo mantido pelo bernardo0cd0 que facilita a instalação do Omnislash
Só peço que pelo menos ao utilizarem esse kernel me notifiquem dizendo o que acharam, fazendo sugestões, relatando problemas, etc.
Para que ele enfim possa melhorar mais e mais.
Muito Obrigado a todos que ajudam o projeto de diversas formas (em fóruns, no blog, etc, se for citar nomes eu vou esquecer e vou cometer injustiças).
O que eu ganho com isso?? Conhecimento!! Faço esse trabalho por prazer em minhas horas vagas (e de insônia hehehe) e ainda continuo aprendendo e convido vc a me ajudar tb, sinta-se a vontade.
Bem vindos ao projeto Omnislash!
Abraços
Hqxriven
Links:
Kubuntu 7.10 – Aprendendo a voar sem segredos (aqui mostra a minha jornada do ck1 ao omnislash5, são 68 páginas no momento com mais de 1000 mensagens)
http://ubuntuforum-br.org/index.php/topic,29799.0.html
Kernel 2.6.27.6-omnislash5 – Compilando e Instalando um kernel otimizado no seu KUXbuntu (porém o kernel serve para qualquer distribuição)
Kernel 2.6.27.6-omnislash5
Script Gerador de Kernel Otimizado (Omni-BD-Mod)
http://www.guiadohardware.net/comunidade/script-gerador/865908/#post3726075
Alguns relatos de usuários com posts completos (se alguém deseja que eu retire pode falar)
http://www.guiadohardware.net/comunidade/compilar-kernel/864573/
http://www.guiadohardware.net/comunidade/recompilar-kernel/869574/
Ele em funcionamento usando pouca memória no Kubuntu 7.10:
http://ubuntuforum-br.org/index.php/topic,29799.msg215083.html#msg215083