Uma solução simples para agilizar o Desktop Linux tem dado muito o que falar nos últimos dias. Mike Galbraith, um desenvolvedor do Kernel Linux, aplicou ao Kernel um patch muito pequeno, com aproximadamente 200 linhas de código, que faz um verdadeiro milagre: é capaz de aumentar o desempenho de certas tarefas em até 60 vezes, segundo testes realizados! Tudo isso agrupando as tarefas enviadas para o Kernel de acordo com os seu tty e escalonando-as.

O patch ainda está sofrendo alterações, e com certeza estará em novas versões do Kernel, mas por enquanto aplicar o patch pode ser um processo penoso para quem entende pouco de compilação de Kernel para o Linux. Felizmente, já existem alternativas: Lennart Poettering, um desenvolvedor da Red Hat publicou uma alternativa para o patch que requer apenas a execução de alguns poucos comandos e a edição de alguns arquivos. Como a versão original não funciona no Ubuntu, vou apresentar os dois modelos, assim você pode aplicá-los em qualquer distro Linux que estiver usando.

Patch para Ubuntu:

No terminal, abra o arquivo rc.local com o comando:

sudo gedit /etc/rc.local

Com o arquivo aberto, insira as linhas abaixo antes da linha “exit 0”;

mkdir -p /dev/cgroup/cpu
mount -t cgroup cgroup /dev/cgroup/cpu -o cpu
mkdir -m 0777 /dev/cgroup/cpu/user
echo "1" > /dev/cgroup/cpu/user/notify_on_release
echo "/usr/local/sbin/cgroup_clean" > /dev/cgroup/cpu/release_agent

Salve o arquivo e feche. Agora dê direitos de execução para o arquivo rc.local:

sudo chmod +x /etc/rc.local

Agora, crie o arquivo cgroup_clean

sudo gedit /usr/local/sbin/cgroup_clean

E insira no arquivo o conteúdo abaixo:

#!/bin/sh
if [ "$1" != "/user" -a "$1" != "/user/" ]; then
rmdir /dev/cgroup/cpu$1
fi

Salve o arquivo, feche e de direitos de execução para ele:

sudo chmod +x /usr/local/sbin/cgroup_clean

Calma que falta pouco! Agora edite o arquivo /etc/bash.bashrc

sudo gedit /etc/bash.bashrc

E insira as linhas abaixo logo no começo do arquivo:

if [ "$PS1" ] ; then
mkdir -m 0700 /dev/cgroup/cpu/user/$$
echo $ > /dev/cgroup/cpu/user/$$/tasks
fi

Ufa! Agora é só reiniciar o computador. 🙂

Patch para outras distros

Abra o arquivo ~/.bashrc

sudo gedit ~/.bashrc

E insira as linhas abaixo:

if [ "$PS1" ] ; then
mkdir -m 0700 /sys/fs/cgroup/cpu/user/$$
echo $$ > /sys/fs/cgroup/cpu/user/$$/tasks
fi

Agora, e só rodar os comandos abaixo no terminal:

mount -t cgroup cgroup /sys/fs/cgroup/cpu -o cpu
mkdir -m 0777 /sys/fs/cgroup/cpu/user

Pronto, salve o arquivo, feche e reinicie o computador.

Se você aplicar as alterações, conte para nós como ficou a sua instalação Linux. 🙂

Comentários

Envie uma pergunta

Os mais notáveis

Comentários com a maior pontuação

Kernel_panic
xeque mate, gamer
Kernel_panic
kkkkkkkkkkkkkk
Victor
Wine e darwine podem ser usados, se eles não emularem, tem o virtual Box. : )
Guilherme Mac
Silicon Graphics? Acho q nunca vou ver uma de perto =O
Marcos
heieiaieaiehaheia, Reiser, meu velho, bom te reencontrar, vc não tem aparecido mais no Mb, quicouve?
Guilherme Mac
Mas é o jeito. Até no Mac OS X usam na surdina (muitos jogos que parecem ser nativos na verdade tem WINE por baixo. Vide jogos da EA para Mac). Esse é o preço de escolher o DirectX.
Hernani
Vou ver como me saio nessas configs aqui no Fedora.
Hernani
HAuhauaHAUHauaHAUAHu RUN BOY, RUN!
Hernani
Conheço esse avatar de velho filosófico de algum lugar (H123er here!)
kylefurtado
O que você acha?
Marcos
Não apresenta porcaria pros outros, é feio... No dia que o Wine suportar jogos como o F1 2010 eu saio de baiana no próximo carnaval.
JoseRenan
fail de comentário, eu tinha digitado e postado mas não tinha aparecido! o.O
Guilherme Mac
Mas existe tudo isso. O sistema está pronto pra usar, sem complicação*. A personalização é outra coisa; é de caráter pessoal. Não devemos confundir. (*) Veja: http://migre.me/2qtWt
Alexandre
certamente. mas minha relacao com unix sempre foi à distancia, sonhando em pilotar uma silicon graphics... coisas do passado.
Fredson Sousa
Hoje teve atualização no Kernel Linux, pelo Gerenciador de Atualizações do ubuntu será que este patch estava nessa atualização?
Exibir mais comentários