Uma das características que muitos esperavam no novo firmware era a capacidade de fazer dual-boot com outro sistema operacional. E muitos ficaram decepcionados quando viram que nada mudou em relação a isso.

Na verdade houve uma mudança sim! O Multiboot, antes a única forma de iniciar o N900 com outro sistema operacional sem auxílio de um computador, funcionava reescrevendo o kernel necessário a cada boot. Isso traz dois problemas:

1- o kernel precisa reconhecer o Multiboot para que outro sistema possa ser carregado (era o que acontecia com o MeeGo…era possível entrar no sistema, mas nunca mais sair dele, pois o kernel dele não reconhecia o Multiboot e portanto era sempre o MeeGo a ser carregado)

2- o kernel fica numa memória flash. E esse tipo de memória possui uma vida útil de gravações! Alternar entre um kernel e outro significa gravar o código nessa memória, e diminuir sua vida útil

O que foi feito no PR1.3 foi corrigir uma característica do Linux que estava com um bug no Maemo: o kexec. Ele é um mecanismo que permite carregar outro kernel na memória do aparelho e iniciar a sua execução imediata. Em linhas gerais, o normal seria carregar um kernel e ele carregar o sistema operacional. Mas usando o kexec é possível carregar outro kernel à partir do kernel “inicial”, e rodá-lo. Em outras palavras: substituir o kernel que está rodando por outro, sem necessidade de reiniciar o aparelho nem gravar nada em lugar alguma.

Quem faz essa mágica é um outro programa, chamado U-Boot, portado já faz algum tempo para o Maemo, mas por causa do bug do kexec não facilmente utilizável. Ele está no repositório extras-devel.

Mas antes de continuar há um detalhe importantíssimo: ele só funciona com o kernel original! Nada de power kernel e afins (pelo menos por enquanto). Portanto é bom você abrir um terminal e digitar o comando abaixo:

~ $ uname -a
Linux Nokia-N900 2.6.28-omap1 #1 PREEMPT Fri Aug 6 11:50:00 EEST 2010 armv7l unknown

E também o seguinte:

~ $ dpkg -l | grep kernel-modules
ii  kernel-modules          2.6.28-20103103+0m5        Linux kernel modules

Se as saídas não forem iguais às mostradas, é capaz que você danifique a instalação do Maemo ao instalar o U-Boot e tenha que partir para o Flasher.

Após instalado o U-Boot, ao reiniciar o aparelho irá aparecer esta tela, indicando que a instalação foi bem sucedida:

Para instalar o MeeGo, você precisará da imagem do sistema, obtida aqui. E então seguir as instruções daqui para escrever a imagem num cartão de memória (pode ser usado um computador com Linux ou Windows). Atenção: todos os dados do cartão de memória serão apagados!

Depois de gerado o cartão, basta colocá-lo no N900, e reiniciá-lo! Pronto!! Já está com o MeeGo rodando!!!!

Para voltar ao Maemo, reinicie o aparelho, e antes que o timeout estoure, pressione qualquer tecla do aparelho, e digite isto:

run noloboot

Para remover o U-Boot, é preciso rodar este comando no terminal, como root, no Maemo:

apt-get install --reinstall kernel-flasher

Ao rodar o MeeGo à partir do cartão de memória nada do Maemo será tocado.

Outra informação importante é que existem duas imagens do MeeGo para o N900: uma obtida no endereço passado acima, e outra nos repositórios do próprio MeeGo. A imagem do repositório do MeeGo não faz dual-boot.

fonte: MeeGo wiki

Tags: ,