BOCHS - O emulador de x86

Este artigo fala sobre umas das várias belezas que vivem no Sourceforge.net, o Bochs, um incrível emulador de PC que nos permite executar sistemas operacionais dentro de sistemas operacionais.

[ Hits: 54.328 ]

Por: Jarno Trulli em 19/11/2005


Rodando o seu sistema operacional: shell script para rodar o Bochs



Agora vamos para algo um pouco mais divertido: um script simples para rodar o seu Bochs! Ele não é necessário, mas não há nada tão divertido como economizar teclas no Unix :)

# run_menuet.sh
#
# Script para rodar o menuetOS no Bochs
# Facilmente adaptável para outros scripts
# de inicialização do Bochs
#
#
# Variáveis de caminho:

# Aqui vai o diretório onde estão as BIOS virtuais
# Verifique o nome desta variável no arquivo bochsrc
# que você estiver usando. Geralmente ela pode ter
# o nome BXSHARE em algumas imagens retiradas do site do Bochs
#


export BXBIOS="~/bochs/bios"

# Executável:
export BOCHS="~/bochs/bochs"

# O diretório onde estão a imagem e o bochsrc:
export IMAGEM="~/diskimages/menuet"

# O arquivo bochsrc:
export RCFILE="$IMAGEM/bochsrc.config"

# Opções para iniciar o Bochs (existem outras):
export OPCOES="-f"

cd $IMAGEM
$BOCHS $OPCOES $RCFILE

Agora é só fazer no terminal:

$ sh run_freedos.sh

Se tudo der certo, aparece um menu no seu terminal e você apenas aperta <ENTER> e se esbalda!

Senão, leia com atenção as mensagens de erro que aparecerem. Elas serão úteis na hora de consertar os "estragos" e refazer o .bochsrc e o run.sh.

Veja que, apenas mudando os valores de umas poucas variáveis, você consegue rodar outros sistemas operacionais em outros diretórios.

Página anterior     Próxima página

Páginas do artigo
   1. Apresentações
   2. Rodando o seu sistema operacional: obtendo as fontes
   3. Rodando o seu sistema operacional: obtendo a imagem
   4. Rodando o seu sistema operacional: arquivo de configuração .bochsrc
   5. Rodando o seu sistema operacional: shell script para rodar o Bochs
   6. Conclusões
Outros artigos deste autor

Mais sobre recursividade em C/C++

GNU Emacs (Intro)

Rage Against Binary Blob - sobre documentação aberta para hardware

Leitura recomendada

Considerações sobre medição de JITTER em operadoras VOIP no Wireshark

Experimentos com remasterização de Sabayon

Gravando vídeo com placa de TV através do transcode

eViacam no Ubuntu 10.10 - Acessibilidade: Movendo o mouse com movimentos da cabeça

Ubuntu Packages - Uma forma mais rápida e simples de instalar programas

  
Comentários
[1] Comentário enviado por removido em 19/11/2005 - 22:52h

Ótimo artigo sobre uma ótima ferramenta.

Pra quem insiste em dizer que o Software Livre é fraco, aí está uma prova do contrário. É gratificante ver uma ferramenta como essa ser lançada.

Continue o bom trabalho. ;-)

[]'s

[2] Comentário enviado por croscato em 20/11/2005 - 09:54h

Olha compilei o Bochs com uma configuração diferente e percebi um ganho de velocidade. A configuração foi a seguinte:

./configure --enable-config-interface --enable-plugins --enable-x86-64 --enable-ne2000 --enable-pci --enable-pcidev --enable-usb --enable-guest2host-tlb --enable-repeat-speedups --enable-icache --enable-fast-function-calls --enable-global-pages --enable-host-specific-asms --enable-ignore-bad-msr --enable-port-e9-hack --enable-all-optimizations --enable-instrumentation --enable-raw-serial --enable-vbe --enable-mmx --enable-3dnow --enable-sse=2 --enable-cdrom --enable-sb16=linux --enable-gameport --enable-xpm

Espero que esse comando ajuda a todos.

Até mais.

[3] Comentário enviado por Jarnotrulli em 21/11/2005 - 19:07h

Valeu aê galera!
Levou um tempo para eu recuperar este artigo mas valeu a pena...
Nada como um Google Hacking: olhar os caches recentes que o Google mantém no site: só precisei copiar e colar (e talvez mudar as pontuações para algo mais útil...).
Valeu a dica, croscato! Tô pensando em fazer um package para o Slackware, e estava pensando em como compilar para ficar "um pouco" mais rápido.
Talvez isso ajude...

[4] Comentário enviado por efologan em 23/11/2005 - 16:19h

beleza... ótimo artigo... so que aqui deu pau... to com xfree86 com todas as libs e ele me retorna a mensagem:

ERROR: X windows gui was selected, but X windows libraries were not found.

oque pode ser e como eu soluciono isso, pois como disse, todas as libs do meu x estao ok.. (fedora 1.0)
Valeu pelo art... abraços

[5] Comentário enviado por efologan em 23/11/2005 - 16:30h

Só pra constar, o pacote rpm funcionou legal... mas eu gostaria mesmo de usar a versão tar.gz pra poder usar as opções mostradas pelo grande parceiro croscato... portanto o pedido de ajuda anterior continua valendo...

[6] Comentário enviado por Jarnotrulli em 28/04/2006 - 01:39h

Tente ver onde estao als libs do X e passe --with_x_libs=(ondeEsta)

[7] Comentário enviado por paulodangelo em 06/05/2007 - 13:10h

Quando dou o ./configure ele diz que falta o /lib/cpp/ alguém pode me ajudar?


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts