Skip to content


Trabalho – Implementação de um Kernel

Para este trabalho, deve-se realizar a implementação de um kernel capaz de controlar máquinas do padrão Intel de 32bits.

Para isso, deve-se seguir o tutorial de Brandon Friesen (osdever.org):

Download do tutorial aqui

Recomendo que implementem no GNU/Linux e que efetuem os testes do kernel no VirtualBox.

Para utilizar o kernel no VirtualBox, deve-se criar uma imagem virtual de um disquete e instalar o grub no mesmo, que será o responsável por carregar o kernel. Mais informações sobre isso neste link.

ou

Eu efetuei o download de uma imagem de diquete com GRUB e adapetei para o trabalho. Efetuem seu download aqui.
Para utilizá-la com seu kernel, vocês devem efetuar os seguintes comandos:

  1. unzip imagem_disquete.zip #(somente uma vez, para descompactar)
  2. mkdir -p pasta
  3. sudo mount -o loop imagem_disquete.img pasta
  4. sudo cp seu_kernel_compilado pasta/kernel
  5. sudo umount pasta

Para executar e ver seu kernel funcionando, você precisa de instalar o VirtualBox ou o Qemu e depois:

  • VirtualBox: Criar uma máquina virtual sem HD, adicionar uma unidade de disquete e selecionar o arquivo imagem_disquete.img
  • Qemu: executar o comando: qemu -fda imagem_disquete.img

Dentro da imagem que estou disponibilizando está o kernel inicial implementado, podem executá-lo que verão que ele não faz nada na tela, somente inicia o computador e entra em um loop infinito.

O trabalho deve ser enviado ao meu e-mail até o dia 21/07/2013. Deverá ser enviado:

  • a implementação funcionando.
  • um relatório, contendo:
    • introdução ao trabalho;
    • discussão da implementação;
    • discussão dos tópicos que foram aprendidos;
    • discussão das dificuldades do trabalho;
    • relação entre o trabalho e a teoria estudada em aula;
    • conclusão.

abs

Postado em Sistemas Operacionais, Sistemas Operacionais.