Novo BusyBox

Foi lançado uma nova versão do BusyBox (unstable): BusyBox 1.16.0. Esta nova versão trás um conjunto de novas ferramentas bastante interessantes como:

  • lspci
  • lsusb
  • flashcp
  • mkfs.reiser
  • mkfs_ext2
  • ntpd
  • traceroute6
  • tune2fs
  • wall

Por exemplo, com isto duas das aplicações que compilava externamente caíram fora dos meus embarcados: usbutils (que provia o lsusb) e o ntpd… Boa notícia (-:

Qual o endian?

int
main (int argc, char **argv){

	union {
		short s;
		char c[sizeof(short)];
	} un;

	un.s = 0x0102;

	if (sizeof(short) == 2){
		if (un.c[0] == 1 && un.c[1] == 2)
			printf("big-endian\n");
		else if (un.c[0] == 2 && un.c[1] == 1)
			printf("little-endian\n");
		else
			printf("Eu não entendi o que ele falou \n");
	}
	else
		printf("sizeof(short)==%d\n",sizeof(short));
}

TCC

Queridos ouvintes do Eu não sou NERD! FM…

Ontem entreguei a última versão do meu TCC, e com isto, aqui publico o texto do meu trabalho, a apresentação e o artigo científico.

Passei :)

Até que enfim posso estudar…

Hoje… Hoje… nem ontem nem amanhã, hoje fiz a minha última “prova” e resta apenas a apresentação do TCC para finalizar a minha graduação.

Desde que entrei no primário eu tinha uma meta, que na época era dos meus pais, de um dia obter a graduação no terceiro grau, e hoje fiz, após 17 anos, a minha última prova.

Ainda me lembro, mesmo que distante, dos meus primeiros passos na sala 1 do CEJSA, aos 6 anos de idade estava eu, lá, no colégio, onde meus irmãos já haviam estudado, ao lado da minha irmã gêmea e de amigos já conhecidos, como Marcos, Rafael, e outros mais. Me lembro do meu primeiro trabalho, não do tema, mas era um cartaz onde tínhamos que colocar objetos de uma cor, o meu era marrom, coloquei uma corrente da minha mãe… também me lembro que a cartolina era rosa, talvez por decisão da minha irmã… Outra coisa que me lembro era da minha mochila do Baby, comprada na Meda, da professora Mariusa, do Diretor Fernando e do barzinho do colégio, o lanche era: Rosquinha com laranjinha água da serra… Por fim, deste primeiro ano, ainda consigo me lembrar de entrar no portão de casa (no mesmo lugar que ainda é hoje, porém, a casa ainda era a de madeira), na frente da minha irmã… me lembro de ter o seguinte sentimento: “Eu já sabia que ia passar”, mas mesmo assim, lembro que abri o berro: Passei!  Passei! Passei Direto!, e sai correndo, passei pela área, fui pelo lado esquerdo da casa, passei ao lado do “cano da antena”, e entrei em casa, ainda me lembro da porta, da pedra que era o degrau…

Apesar de não gostar muito, me lembro das fazes do colégio pelas matérias da matemática:

1º Soma, subtração
2ª Divisão, Multiplicação
3ª Fração
4º Números negativos!

Lembro também de uma cena, eu e o Marcos, na garagem da casa dele, vendo um caderno de matemática do Marcelo (irmão do Marcos) com aquelas funções, cheios de X, Y… e a nossa imaginação corria solta:

Será que A = 1, B = 2… ?
leinad (este é meu nome em inglês uheuhehue)

Caramba, estou rindo sozinho… bom, o sorriso parou ao lembrar da quinta série, imagina, um professor para cada matéria! contas com “X”… ai ai ai…

Ai a coisa desandou, entre a quinta e a sétima série eu era presença confirmada nos provões, na sexta foi o pior, fiquem em segunda época! ainda lembro do Marcos G. e do Mateus passando na minha casa para irmos justos fazer a segunda época (e com a cola pronta, isto mesmo, colei pra passar nesta prova…:-) ) E infelizmente foi separado da minha irmã, o que realmente foi uma injustiça pois na verdade era eu quem copiava as tarefas dela…

Bom, Na oitava série eu aprendi a lição, e não fiquei em provão…

No segundo grau foi a reviravolta! Estudando a noite! Ainda lembro de ir pra aula de:
Camiseta amarela da seleção
Bermuda laranja da O’Neil
Chinelo havaianas vermelho…

Eu, Gilson, Aurélio, Rafael e Marcos éramos os fodões, disputávamos para ver quem tiraria a nota maior, tinha até ranking… Desta época me lembro de bastante coisa, eu era a contradição, conversava mais que o homem da cobra, e tirava notas boas… era motivo de indignação por parte de alguns…

Conselho de classe, Dona Oníria:
- Danielizinho, Tu é um ótimo aluno, muiiito inteligente, mas a conversa atrapalha a turma inteira…

Segundo ano do segundo grau: Bat carverna! Eterna turma, a mais foda de todos os tempos…

Mas ai no terceiro ano, com a junção da nossa turma, a mais loca, com a do pessoal um pouco mais velho, fez a coisa andar para um caminho diferente do meu, sim, sei que sou diferente… as piadas não eram as mesmas, era muito cheio de “firulas”, um querendo ser mais gatão que o outro… não tava legal, não era pra mim…

Mudei de turma: Fui para a manhã! Acertei, todo mundo simples, sem frescuras e achismo, uma turma divertida… leve… o gatão veio também, ai fechou!

Bom, durante fim do segundo ano, inicio do terceiro foi onde descobri… o COMPUTADOR!  no início, quando os outros falavam eu tinha raiva, mandava pra aquele lugar: “Ai, megabytes, memória… meu HD… ai ai meu computador é da compac”… uhehuehuehu parece engraçado, mas eu não gostava de computador, nem de video games, nada disto, minha infancia era:
Andar de bicicleta
jogar Futebol
Destruir coisas…

E foi ai, Destruir coisas, a famosa curiosidade que me fez me apegar no meu novo PIII! Da minha irmã na verdade…

Bom, voltando ao terceirão, a Leonete me deixou em provão de inglês…

Fiz a prova de cabelo raspado, pois já havia passado no vestibular – Ciência da Computação, na UNESC.

Fui fazer o provão! fiz a maior parte, já sabia que ia passar, ai comecei a conversar, conversar, conversar… até..

Pedirem pra eu ir embora uheuheuheuheuheuheuheuheh

Fim, formado no terceirão, pronto para entrar na Universidade!

(OBS: Peguei a filha da minha professora de catequese na formatura hehueuheuhe )

Faculdade!

Bom, lá pude encontrar mais dos meus,

Primeira faze, a escalação era:

  • Pinguim (eu)
  • Cabelo
  • Morta
  • Mauro
  • Maurício
  • Cabeça

Mas lá pude conhecer dois caras tão loucos por Linux quanto eu, eram o Bill e o Rodrigo…

Provas de calculo… (Colava do Mauro)
Estrutura de dados…

Foram anos incríveis, entrava na Unesc as 8:00, saia as 23:00…

Até que … Me mudei pra São José… Estava cansado querer, chegou a hora de ser…

Aqui vim para a Univali, no fim, a faculdade já passou para segundo plano, e o trabalho em primeiro.

Bom.. Tudo foi tranqüilo até este último ano…

Parece que cada hora em cima do TCC demorava 20, foi realmente um ano de sacrifício…mas hoje pela manhã, após terminar a ultima prova…
Cheguei em casa e pensei: Cumpri a missão!

e em seguida questionei-me?

- Mas agora, o que vou fazer?

Agora vou fazer o que mais gosto!

Estudar…

Você deve esta pensando, que cara loco…

Sim, eu não sou normal…

A 17 anos estudo o que me era obrigado…
agora vou ter tempo de estudar aquilo que gosto…
por prazer…
por puro prazer…

Acho que nenhuma frase me define melhor que a frase de Graham Bell:

Inventor é um homem que olha para o mundo em torno de si e não fica satisfeito com as coisas como elas são. Ele quer melhorar tudo o que vê e aperfeiçoar o mundo. É perseguido por uma idéia, possuído pelo espírito da invenção e não descansa enquanto não materializa seus projetos.

Até mais…

Desbloqueando | desbloquear | unblock | celular Samsung SGH-F275L F-275L

Desculpem o título, mas é que é para facilitar a vida de quem procurar isto no google :)

A alguns meses eu ganhei um Samsung SGH-F275 de uma operadora, só que como meus principais contatos usam outra operadora eu resolvi desbloquear o celular, então em uma vasta procura no google, achei o procedimento:

Primeiro tente desbloquear com o seguinte código:

#7465625*638*00000000#

Este código tentará desbloquear o acesso a outras redes, porém, por padrão muitas operadoras trocam a senha de proteção de 00000000 para outra, então pode ser que não funcione, no meu caso não funcionou, então usei o seguinte procedimento.

O que foi preciso:

1. Chip de uma operadora qual o celular não funciona (ex: celular da vivo, o chip da tim). OBS: O chip não deve pedir o PIN ao ligar… Se tiver pedindo, desative esta opção…

Primeiro você deve executar o custom reset no aparelho, para isto execute o seguinte comando:

*2767*2878#

Agora insira o chip, de modo que, o mesmo esteja encaixado somente pela metade, para que, assim, o aparelho ligue sem exibir o bloqueio de rede e/ou o pin do aparelho.

Levante a bateria de modo que o aparelho não desligue e empurre o cartão sim (chip) com um palito, um plástico, ou qualquer outro material que possa auxiliar de modo que o cartão esteja inserido no aparelho e o mesmo permaneça ligado (utilizei uma caneta).

Com o cartão sim (chip) já inserido e o aparelho ligado efetue o full reset:

*2767*3855#

Fim, o celular está desbloqueado.

Por segurança altere o password (nck) para o padrão de 8 zeros:

*7465625*638*00000000*00000000#

Para completar desative o código de rede:

#7465625*638*00000000#

Sobre o tempo

Opa, Faz alguns dias que não posto nada por aqui, porém não morri, nem fui abduzido por seres alienígenas…

É que estou na reta final do meu Trabalho de conclusão de curso, ai momentos nerds estão direcionados a escrita do trabalho… e pensa em uma coisa que dá trabalho?

Mas os resultados estão legais, para quem não sabe, meu TCC é a implantação de QoS em uma central telefônica IP em um sistema embarcado, onde estou adicionado suporte a IEEE 802.1p, IEEE 802q, ToS, DiffServ e Traffic Shapping, além do suporte à estas tecnologias estou fazendo experimentos para poder definir qual os efeitos da utilização destas técnicas em um sistema embarcado, apesar de preliminares já saíram alguns resultados interessantes, como a perda de 10% de performance em vazão de rede com a utilização destas técnicas… Porém ainda é cedo para dar mais resultados…

Ahh fiz o poscomp, tomara que tenha caído muitas questões com a resposta “B” porque foi nela que chutei :)

Bom, passei para dar um Oi e dizer que não estou morto, em off adianto que tenho tido boas experiências com o RTLinux, mas como ando sem tempo de escrever, vou esperar terminar o TCC para poder colocar mais a mão na massa :) impressionante, estou louco pra terminar o TCC para poder estudar…

Antes que você pense algo…

EU NÃO SOU NERD!!!

Vídeos: Embarcados e Tchê linux e o que ando fazendo

A uma semana ví uma notícia no site free-electrons.com, eles publicaram os vídeos da Embedded Linux Conference que aconteceu em abril desse ano, os vídeos tratam de vários assuntos como avaliação do JFF2 para flash grandes, kprobe e systemtap, threads de interrupção (do RTL), vídeo em embarcados, etc. Todos os vídeos são de alta qualidade e também estão disponíveis as apresentações.

Falando em vídeo, o Tchê Linux também tem uma área de vídeos bem legal, acesse: http://videos.tchelinux.org.

E sobre o que ando fazendo, semana passada visitei a Alcatel-Lucent em São Paulo para homologar um telefone IP Intelbras, gostei bastante da estrutura da empresa… principalmente do Data Center de homologação de produtos (muito organizado) onde passei dois dias e fui muito bem recebido. Esta semana estou terminando de implantar os protocolos de QoS e configurações de rede em uma placa acessório do PABX Impacta da Intelbras, e está ficando muito bom, a placa vai ter suporte a grande maioria dos padrões de QoS e vai possibilitar diversas (e mirabolantes) configurações de rede… eu amo este trabalho ;)

Publiquei o artigo do netem no VivaOLinux, está tento bastante acesso…

E para fechar:

A edição da revista Motociclismo desse mês está ótima, sugiro que comprem (essa foi só pra não dizer que sou totalmente Nerd, afinal, quem é Nerd aqui? em em em hehehe)…

Até na próxima

Simulando links com o netem

Uma das etapas do meu trabalho de conclusão de curso é simular um link de internet em um pc-gateway entre dois hosts como na ilustração abaixo:

Ambiente

Ambiente

Neste ambiente serão executados simulações de tráfego VoIP e colhidas informações estatísticas para análise de desempenho das configurações de QoS em rede do PABX. Para isto irá-se utilizar um Linux configurado como roteador e nele simular um link de internet, adicionando latência, delay, jitter e traffic Shapping ao tráfego roteado por ele.

O pc-gateway possui duas interfaces, eth0 e eth1, onde a interface eth0 está diretamente ligada a um Desktop Linux, que irá executar o cliente da ferramenta de benchmark, e a interface eth1 está diretamente ligada ao PABX que irá executar o servidor da ferramenta de benchmark. Ambos, Desktop e PABX, estão em sub-redes diferentes e possuem como roteador padrão o pc-gateway.

Para simular o Link de internet irá-se configurar o netem, que é uma disciplina de escalonamento de pacotes no kernel do Linux que possibilita simular:

  • delay;

  • perda;

  • jitter;

  • corrupção de pacote;

  • duplicação de pacotes; e

  • reordenação de pacotes.

Continue reading ‘Simulando links com o netem’ »

arm-linux-(ar|objdump), Fedora 12 Alpha and a lot of fun

A semana começou com um problema em uma biblioteca estática que ao cross compilar para o ARM perdia algumas referencias de funções que ela implementava. Resultado final: depois de um chá de arm-linux-objdump, arm-linux-ar e do Eclipse tudo funcionou.

O site linuxfordevices.com entrevistou Jim Ready, fundador da MontaVista Software, sobre os 10 anos da criação da empresa pioneira no desenvolvimento de Linux para sistemas embarcados.

O Fedora 12 ainda está no forno, mas o primeiro aperitivo já está prestes a sair: o f12-Alpha. Isto quer dizer que a maratona de QA vai começar, e com isto a diversão. A data prevista de lançamento do Fedora 12-Alpha é dia 18 de agosto. Se você está interessado em ajudar o Fedora, entre para o time de Garantia de Qualidade! é um dos poucos pontos onde é possível acompanhar o desenvolvimento de todos os sub-sistemas e aprender sobre o desenvolvimeto do Fedora. O calendário  do time de  QA para o f12 está aqui, e a pagina dos dias de testes aqui. Esta semana espero achar um tempo para escrever um post sobre o Fedora 12 e seu processo de Quality Assurance.

Entre para o Fedora

Entre para o Fedora

O fato triste na semana é a discussão na equipe do CentOS, espero que tudo seja superado.

Esta semana saiu o 2.6.30.4, mas apenas para algumas correções de bugs, de especial mesmo só o Bug do BIND 9 e a correria das distribuições para atualiza-lo.

Fechando a semana, quem acordou cedo hoje pode ler uma discussão das boas na linux-arm-kernel sobe um detalhe de Buffer Overflow no ARM… Russell King e Andrew Morton discutindo é algo legal de se ver.

Para esta semana espero reservar um tempo para terminar um artigo sobre o KProbe, escrever sobre a fase de testes do Fedora 12 e fazer alguns testes do RTLinux em processadores ARM…

Ahhh, para não dizer que só falei de nerdice: dia 8 vou completar 23 anos, se quiser me enviar um presente… não ficarei bravo, principalmente se for um kit de desenvolvimento da TI com dois processadores OMAP :D

uncompressing new week .......................................... done.
...
all bugs addeded by Daniel Bristot de Oliveira.
...
have a lot of fun...
~ #

Jprobe

  1. #include <linux/module.h>
  2. #include <linux/kprobes.h>
  3. #include <linux/fs.h>
  4.  
  5. static void jprobe_do_sys_open(int dfd, const char __user
  6. *filename, int flags, int mode)
  7. {
  8.         printk(KERN_INFO "filename: %s %d\n", filename, mode);
  9.         jprobe_return();
  10. }
  11.  
  12. static struct jprobe my_jprobe = {
  13.         .kp.symbol_name = "do_sys_open",
  14.         .entry = (kprobe_opcode_t *) jprobe_do_sys_open,
  15. };
  16.  
  17. int init_module(void)
  18. {
  19.         register_jprobe(&my_jprobe);
  20.         return 0;
  21. }
  22.  
  23. void cleanup_module(void)
  24. {
  25.   unregister_jprobe(&my_jprobe);
  26. }
  27.  
  28. MODULE_LICENSE("GPL");