Month: October 2011

Compilando o Unix didatico Xv6

Alguem publicou na lista do kernelnewbies sobre um Unix-like didatico:

http://pdos.csail.mit.edu/6.828/2011/xv6.html

Para compilar e testar execute:

$ git clone git://pdos.csail.mit.edu/xv6/xv6.git
$ sudo apt-get install mpage qemu
$ cd xv6
$ make qemu

Se tudo ocorrer bem voce recebera’ a seguinte mensagem:

$ make qemu
...
qemu -serial mon:stdio -hdb fs.img xv6.img -smp 2 -m 512 
xv6...
cpu1: starting
cpu0: starting
init: starting sh
$

Comparando esquematicos eletronicos

Recentemente o EvilMadScientist publicou um tutorial explicando como comparar esquematico eletronicos:

http://www.evilmadscientist.com/article.php/visdiff

Converta o pdf do esquematico para png:

$ convert -density 150x150 +antialias -negate Placa_P4.pdf P4.png
$ convert -density 150x150 +antialias -negate Placa_P5.pdf P5.png

Comparando as modificacoes da placa P4 para a P5:

$ composite -stereo 0 P5-0.png P4-0.png compdiff_p4_p5-0.png
$ composite -stereo 0 P5-1.png P4-1.png compdiff_p4_p5-1.png
...

Observe que primeiro você coloca o .png da P5 e depois o .png da P4.

Veja os problemas pelo lado facil

Certa vez uma pessoa fez um desafio a John Von Neumann:

“Dois ciclistas separados por uma distancia de 20Km comecam a se deslocar a 10Km/h em sentidos opostos (ate se encontrarem). No momento que eles comecam a pedalar, uma mosca que viaja a 15Km/h comeca a voar da roda dianteira do ciclista que esta’ no norte ate a roda dianteira do ciclista que esta ao sul, e retornando ate a roda dianteira do ciclista ao norte e assim fazendo ate’ ser esmagada pelo encontro das duas rodas dianteiras dos ciclistas. Quantos quilometros a mosca percorreu do inicio da trajetoria ate ser esmagada?”

Para surpresa de todos Neumann resolveu o problema rapidamente, entao quem fez a pergunta disse: “Ah, voce ja deveria conhecer o truque”. “Truque? Apenas somei as series infinitas”, respondeu Neumann.

A solucao mais simples consiste apenas em calcular em quanto tempo os ciclistas percorreram a distancia de 20Km (como os dois estavam a 10Km/h cada um percorre 10Km em 1 hora, quando se encontram) e multiplicar o tempo decorrido (1h) pela velocidade da mosca (15Km/h). Portanto a mosca percorreu 15Km.

Neumann resolveu o problema usando a segunda ferramenta mais importante da humanidade: a matematica. Ele poderia ter usado criatividade, que acredito ser a ferramenta mais importante que o ser humano tem.

“Criatividade é ver os problemas pelo lado fácil”
— Alan C. Assis