Tutorial definitivo para recompilar o Minix 3
Estudando sistemas operacionais, provavelmente você terá que recompilar seu código fonte várias vezes. Esse tutorial explica como fazer isso e garantir que tudo que você fez funcione.
O primeiro passo, é editar o código. Para isso, você pode transferir os “.c” via FTP, alterar em outro SO ou, a maneira mais simples, que explicarei aqui, editar no próprio Minix.
No exemplo, vamos alterar a mensagem de boas vindas do Minix.
cd /usr/src/kernel cp main.c main.c.back elle main.c
Isso criará um backup do main.c, caso você faça alguma besteira e abrirá o programa Elle (um editor básico, mas que dá pro gasto) com o main.c.
Agora vá na parte que tem a mensagem de boas vindas (Copyright…..) e altere o código. Eu alterei para “By Russo – Sao Paulo – Brasil – 2009″.
Aperte CONTROL+W para salvar o arquivo e depois CONTROL+S para sair do Elle.
Agora digite
cd /usr/src make clean make install
edit: ou digite:
cd /usr/src/tools/ make hdboot
Depois que terminar a recompilação, basta reiniciar o Minix com
reboot
Pode acontecer disso simplesmente não funcionar, aí entra a segunda parte desse tutorial.
Alternando entre as recompilações
Depois de MUITO apanhar com recompilações e mais recompilações do Minix, com resultados alternados de funcionamento, testes e mais testes com VirtualBox, VMware Fusion (que insiste em dar um kernel panic no Mac OSX cada vez que dou um boot no Minix), Parallels Desktop e Q (versão do QEMU pro OSX), consegui entender o que acontece e como fazer uma compilação do kernel funcionar corretamente!

VMware tirando um sarro da minha cara
Acabei decidindo por utilizar o VirtualBox 3.0. Pesquisei que nem um condenado pelo mundo virtual e descobri que cada vez que o código é recompilado é gerado uma nova versão do kernel. O grande mistério que fica sem resposta é: por que às vezes ele reinicia com o kernel recém compilado e às vezes não?
Enfim, digite
ls /boot/image
Isso mostrará todas aquelas 300 vezes que você compilou o kernel para tentar alterar a “disgrama” da tela de login!

Versões das recompilações
Pode-se observar que recompilei o kernel três vezes (com a mesma alteração estúpida de teste), já que a primeira versão é a original.
Para utilizar uma dessas versões (no exemplo, vou usar a 3.1.3ar4), você deve digitar
#shutdown image=/boot/image/3.1.3ar4 boot
Isso irá reiniciar o Minix com as alterações feitas em cada uma das versões. Além de resolver o problema de recompilações que aparentemente não funcionam, permite que você volte a versões pré-cagada!

Antes e depois de trocar o kernel em uso
No caso de dar caca, basta, na hora que o Minix te dá 3 opções (antes do boot) pressionar esc. Dessa forma, você tem a opção de escolher qual versão bootar.
Mas… se der caca numa alteração de driver… se danou! Faça backups com a maquina virtual para esses casos, já que mudanças nos drivers não tem nada a ver com o kernel do Minix e não adianta voltar atrás.



Eduardo Russo, unico lugar em portugues que achei foi esse site, por favor
Eu tenho interesse e uma vontade enorme de compilar o meu kernel minix 3 que eu tenho, mas porem eu não tenho o minix propriamente dito, queria compilar usando o cross-compilador do linux (opensuse ou ubuntu) tentei varias vezes, mas nunca obtive exito, sempre com erro.
Alguns dizem que pode ser feito, pois o linux foi compilado dentro do minix.
poderia me ajudar nessa? não sou estudante, sou apenas um curioso que também ama esse mundo de kernel, tenho varios micro kerneis de varios tipos, alguns eu consegui compilar no linux, mas esse minix é complicado, talvés eu tente atraves de um freeBSD, opensolaris, sei lá, mas no momento tenho instalado linux
Rick,
faz uns bons séculos que não toco no Minix. Mexemos bastante com ele por ser uma disciplina da faculdade.
Não tenho como te ajudar, mas o pessoal que está fazendo essa matéria nesse momento, pode.
[]s