Archive for the "Diversão" Category

Então, qual o Sistema Operacional?

windows-10-logo Tux Apple_2003_logo
Na sua opinião, quanto você é bom utilizando um computador? Comum Avançado Só tenho pelo status, e gosto de quebrar a cabeça com coisas básicas.
O quê você pretende fazer com o computador? Trabalho, jogos, multimídia e Internet. Gosto de brincar com a morte e também quero dominar o mundo. Eventualmente Trabalho e Internet. Facebook!!!!!!
O quanto importante é a parte de customização para você?  Um pouco, mas eu prefiro obter tudo já pronto.  Gosto das coisas frias e sem mudanças, igual a meu coração.  Eu posso mudar o papel de parede de minha área de trabalho?
 Detesto perguntar, mas quanto de dinheiro você está disposto a gastar?  Um pouco, mas nada que uma versão pirata não resolva.  Não me preocupo com isso, dinheiro é coisa de capitalista…  Quem se importa? Papai que irá pagar ou quando for pelo CSF só para mostrar aos meus colegas!
 Você é um jogador de computador?  SIM! Steam é o que importa!  Não… Mas eu tento fazer algo com wine….  Cara! Você viu minha fazenda em FARMVILLE??
 Você tem amigos? Eles gostam de computador como você?  Sim. Mas apenas uns 5 que sempre falo pelo Skype.  SIM! Tenho vários espalhados no mundo, olhe o meu GIT!  Tenho diversos amigos hipisters! Inclusive no FBI!
 Você tem namorado (a)?  Sim ela é linda! Conheci ela em comunidades da Web.  Prefiro não opinar…  Garotas (Meninos)!!! Que nojo….
 Você tem vida sexual ativa?  Sim, Não… Talvez… Depende do que estou fazendo…  Prefiro não opinar…  Hoje tem Rave!!!!
 Sinto cheiro de coisa estranha perto de você… é esperma?  Essa toalha debaixo de minha cama não é minha! Nem as cuecas sujas!  Não tenho o plugin do flash em meu computador…. 🙁  Desculpe…. esqueci de enxaguar a boca ao sair de casa hoje… ;*

NO PRINCIPIO DEUS USOU O UNIX…

god_linuxNO PRINCIPIO DEUS USOU O UNIX…

Pois no principio só havia Deus Todo-Poderoso e o sistema UNIX (“ewe-niks”, na intimidade), multitask e multiusuário, também todo-poderoso. Aqui, unixemente, % é Deus e # UNIX.

% “Faça-se a luz!”

# Entre identificação usuário.

% Deus.

# Entre senha.

% Onisciente.

# Senha incorreta. Tente de novo.

% Onipotente.

# Senha incorreta. Tente de novo.

% Tecnocrata.

# E Deus acessou o sistema as 12:01:00, domingo, 1 de abril. Estabeleça seu crédito.

% US$ 100.00

# Confirmado. US$ 100.00

% Faça-se a luz!

# Comando inexistente. Tente de novo.

% Invente-se a luz!

# Feito.

% Rodar Céu e Terra.

# E Deus criou o Dia e a Noite. E Deus viu que havia 0 (zero) erros.

# E Deus saiu do sistema as 12:02:00, domingo, 1 de abril.

# Saldo de Deus Todo-Poderoso: US$ 98.50

# Deus voltou a acessar o sistema as 12:01:00 da segunda-feira, 2 de abril.

% Haja firmamento no meio das águas e da luz.

# Comando irreconhecível. Tente de novo.

% Criar firmamento.

# Feito.

% Rodar firmamento.

# E Deus dividiu as águas. E Deus viu que havia 0(zero) erros.

# E Deus desconectou as 12:02:00 de segunda-feira, 2 de abril.

# Saldo restante: US$ 91.40

# E Deus voltou ao sistema as 12:01:00, terça-feira, 3 de abril.

% Faça-se com que todas as águas sob o Firmamento se juntem e que a Terra Seca surja em meio a elas.

# Excesso de caracteres – impossível compactar comando. Tente de novo.

% Criar Terra Seca.

# Feito.

% Rodar Firmamento.

# Comando obedecido. Águas divididas. E Deus viu que havia 0 (zero) erros.

# Deus desconectou as 12:02:00, terça-feira, 3 de abril.

# Saldo: US$ 67.10

# Deus reconecta as 12:01:00, terça-feira, 4 de abril.

% Criar Luzes no Firmamento para dividir dia e noite.

# Tipo de tecnologia não especificado. Tente de novo.

% Criar um Sol, uma Lua e 100 mil Estrelas.

# Feito.

# Deus criou os Céus. E Deus viu que havia 0 (zero) erros.

# Deus desconectou as 12:02:00, quarta-feira, 4 de abril.

# Saldo: US$ 61.00

# Deus reconectou as 12:01:00 da quinta-feira, 5 de abril.

% Criar peixes.

# Feito

% Criar aves de modo geral e Ovo de galinha em particular. Caprichar na embalagem.

# Aves criadas. Impossível Ovo só de galinha. Tente de novo.

% Criar Ovo genérico, inclusive para jacaré. Caprichar na embalagem do Ovo genérico

# Feito.

% Rodar peixes, aves, ovos.

# Deus criou os Monstros marinhos e todas as criaturas vivas até as águas se escurecerem com rebanhos e cardumes de peixes e semelhantes e o céus ficarem cheios com todos os animais alados. E Deus viu que havia 0 (zero)erros.

# Deus desconectou as 12:02:00 da quinta-feira, 5 de abril.

# Saldo remanescente: US$49.74

# Deus reconecta as 12:01:00, sexta-feira, 6 de abril.

% Criar o gado.

# Feito.

% Criar as coisas rasteiras, horripilantes, hediondas e nojentas.

# Feito.

% Fazer o homem a nossa imagem.

# Características não especificadas. Tente de novo.

% Criar o homem de qualquer maneira.

# Feito.

% Fazer o homem multiplicar e povoar a Terra e dominar os peixes no mar, as aves do ar, e ter ascendência sobre todas as coisas que rastejam sobre a Terra.

# Excesso de comandos simultâneos. Tente novamente.

% Rodar multiplicai.

# Comando realizado. 7 erros.

% Incluir respirar.

# Feito.

% Repetir multiplicar sem limite.

# Execução completa. 4 erros.

% Mover homem para Jardim do Éden.

# Feito.

% Rodar multiplicai. Sem limite.

# Execução terminada. 3 erros.

% Inserir mulher no homem.

# Parâmetros invertidos. Retifique.

% Inserir homem na mulher.

# Feito.

% Rodar multiplicai. Sem limite.

# Operação executada. 345 erros.

% Criar desejo.

# Feito.

% Rodar multiplicai. Sem limite.

# E Deus viu o homem e a mulher sendo frutíferos e multiplicando no Jardim do Éden. 666 erros.

* Atenção: Rodar sem limite de tempo. 4212 erros.

% Criar livre arbítrio.

# Feito.

% Rodar livre arbítrio.

# Feito.

% Eliminar desejo.

# Desejo não pode ser eliminado devido a criação do livre arbítrio.

% Destruir livre arbítrio.

# Livre arbítrio é arquivo inacessível e não pode ser destruído.

* Acione tecla de substituição, cancelamento ou help.

% Criar arvore da ciência do conhecimento.

# E Deus viu o homem e a mulher sendo frutíferos e multiplicando no Jardim do Éden, já não respeitando parâmetros estabelecidos.

% Criar o bem e o mal.

# Feito.

% Ativar mal.

# E Deus viu que tinha criado a vergonha.

* Atenção: Erro do sistema na última operação E96. Homem e mulher não estão em Jardim do Éden. 4277732 erros.

% Scannear Jardim, E.D.E.N. homem-mulher.

# Busca negativa.

% Apagar vergonha.

# Vergonha não pode ser apagada com mal ativado.

% Destruir livre arbítrio.

# Arquivo inacessível. Não pode ser destruído.

* Acione tecla de substituição, cancelamento ou help.

% Interromper programa!

# Exclamação imperativa torna comando irreconhecível. Tente interrogação ou Help.

% Suspender programa.

% Suspender programa.

% Suspender programa, porra!

# Atenção todos usuários. Atenção todos usuários. Sistema desligado para manutenção rotineira. Por favor, desliguem.

% Criar novo mundo.

# O usuário ultrapassou o espaço-tempo estático-dinâmico do arquivo criação. Eliminar arquivos anteriores para que novos arquivos possam ser alocados.

% Destruir Terra.

# Destruir Terra, confirmar.

% Destruir Terra, confirmado.

# Terra destruída. Confirmado. Desligando sistema. Dez segundos para sistema fora do ar. Saldo final: US$ 0.00

% Init Dinossauros

Humor

Início de período para alunos

fry

Início de período para professores

gilma

O legado de Erno Rubik e o famoso cubo

rc_namesEstes dias tenho vistos muitos alunos com o Cubo de Rubik – ou “cubo mágico” nos corredores do IFPE e nos grupos de discussão alguns querendo até montar um robô que solucione o problema. Acho fantástico isso, pois exige uma perspicácia lógica para solução do problema.

Uma vez lancei um desafio aos alunos para otimizar o processo de montagem do curso e quem fizesse isso estaria automaticamente aprovado na disciplina. Apenas o aluno Felype Nery, propôs a fazer. O Cubo de Rubik, que já foi matéria de capa da revista Scientific American, nasceu em Budapest, capital da Hungria. Seu idealizador e criador foi Erno Rubik, professor de design de interiores da Academia de artes e trabalhos manuais de Budapest.

Em 1974 o primeiro protótipo foi desenvolvido. Erno Rubik inspirou-se em quebra-cabeças já conhecidos, como o Tangram. No início a idéia parecia impossível, criar um mecanismo para sustentar os cubos devido a grande quantidade de movimentos possíveis, mas Rubik acabou encontrando a solução enquanto observava despreocupado o curso do Rio Danubio numa tarde de domingo.

Em 1978 o cubo começava a ser produzido sem incentivos. Mesmo sendo inicialmente rejeitado, um ano depois, atingira uma publicidade tal que se podia ver pessoas entretidas com seus cubos nos trens, restaurantes, etc.

Sua explosão de popularidade iniciou-se em 1980, quando o cubo passou a ser um brinquedo internacional. Mesmo saindo da Hungria aos milhões por ano, a demanda não era contida, surpreendendo os industriais. Em 1981 a demanda cresceu exponencialmente. Foram criados centros de produção na China, em Hong Kong, no Brasil, entre outros.

O desejo de ver as seis faces do cubo organizadas atingia todas as idades e profissões. Foram lançados mais de 60 livros para ajudar tais pessoas. Nenhum outro quebra-cabeças teve tantos adeptos, o que o torna um brinquedo genial.

Em 1985 os direitos autorais sobre o cubo foram comprados por Seven Towns, que reintroduziu-o no mercado, obtendo muito sucesso. Atualmente Erno Rubik e Seven Towns trabalham próximos. Rubik está engajado a descobrir novos quebra-cabeças e continua sendo o principal beneficiado com sua invenção.

Confusões entre padrões de 32 bits e 64 bits do Windows

index_32-bit_vs_64-bitEstou na Universidade Federal Rural de Pernambuco na unidade de Serra Talhada esses dias. Na lanchonete, sentei ao lado de um grupo de alunos e uma “aluninha” fez uma pergunta simples ao seu colega de mesa, porém a resposta quase derreteu meus ouvidos, aqui vai uma breve transcrição da conversa:

Aluna: “Troquei meu notebook , no entando não estou conseguindo utilizar o software que a professora passou. Aparece a mensagem dizendo que o sistema é para máquinas de 64 bits. Qual a diferença entre processadores de 32 e 64 bits?”

Aluno: “É muito simples Aninha! você vai saber o que é 32 bits, ou 64 bits abrindo a máquina e vendo um PROCESSADOR. O processador é uma peça pequena quadrada que tem: 32 pinos ou 64 pinos de ouro. Isso mesmo OURO. Na placa mãe, vem uma peça quadrada branca que tem 32 buraquinhos, ou 64 buraquinho. Onde você vai acoplar o processador, nos buraquinhos.”

Aluna: “Que bom ter colegas inteligentes. Chegar em casa faço isso!”

Aluno: “Depois da aula passo em sua casa e faço isso para você…”

Notei um ar de sarcasmo na resposta final do aluno, pois sei que ele quer abrir muito mais do que o computador da colega. E quase engasguei com a resposta do sujeito. Intervi na conversa, falando que era professor novato do curso e estava conhecendo a Universidade. Elogiei o aluno, para ele não ficar triste se o consertasse, e perguntei onde ele tinha aprendido isso. O mesmo me disse: “No programa Olhar Digital!” Não revelei minha identidade secreta… ainda… pois os mesmos me convidaram para uma cervejada a noite na praça da cidade….

Vamos a algumas observações. Objetos no padrão de 32 bits (executáveis, bibliotecas e DLL´s do Windows) tem diferentes números mágicos (magic numbers) e cabeçalhos (headers) e não são iguais aos de 64 bits. Essa confusão sempre é feita principalmente pelos alunos de Computação nos primeiros anos de curso. A criar um programa o desenvolvedor tem de está atento a essas obscuridades. Executáveis de 32 bits requerem temporizadores e bibliotecas de 32 bits e de 64 bits também requerem temporizadores e bibliotecas de 64 bits. Isto implica diretamente no modo de execução das aplicações. Apenas processos de 32 bits são suportados em Windows de 32 bits, no entanto ambos, 32 e 64 bit, podem ser executados em Windows de 64 bits.

A diferença vai além de você ficar contando pinos dos processadores. A DLL de tempo de execução nativa do Windows sempre busca no PATH do sistema pelos executáveis. O sistema entende que todos executáveis no PATH estão no mesmo padrão da máquina e que “teoricamente” não teriam problemas em sua execução. O tamanho do tipo HANDLE no sistema da Microsoft é de 32 bits em um Windows de 32 bits e de 64 bits em Windows de 64 bits, mas apenas em processos de ordem baixa de 32 bits podem ser utilizados em sistemas de 64 bits. Além disso outros manipuladores com a mesma ordem baixa podem ser trocados entre processos de 32 e 64 bits.

Um único bit pode assumir duas possibilidades: 1 ou 0, o que é lógico, pois POW(2,1) (2 elevado a 1) é igual a 2 (possibilidades de com binação). Pelo mesmo raciocínio, POW(2,32) = 4294967296 possibilidades e, de igual modo, POW(2,64) = 18446744073709551616 .

Qual a diferença ou a vantagem? Simplesmente a precisão. Suponha que você trocou a placa de vídeo do seu computador, uma de 8 bits para uma com 16 bits. Nas especificações da placa mãe a amplitude máxima da voltagem do circuito é de 10V. Se o nosso processador da placa de vídeo fosse de apenas 8 bits, teríamos POW(2,8) = 256 combinações. Como o nível máximo é de 10V, temos = 10V/256 = 0,0390625V ≈ 39062,5 microvolts (1 microvolt é 1Volt / 1000000 = 0,000001V).

Isso significa que um pixel na tela somente seria identificado se ele subisse ou abaixasse 39062,5 microvolts. Por outro lado, com 64K (POW(2,16)) teríamos 10V/65536 ≈ 153 microvolts. Logo, para sentirmos uma variação na intensidade/tonalidade de determinada cor numa tela de vídeo, seriam precisos apenas 153 microvolts, o que determinaria uma resolução ou qualidade de imagem quase que reais. Ou seja, quanto menor o número na voltagem mais rápido e quanto mais bits mais rápido ou melhor resolução uma dada informação é processada.

O problema do WOW!

Windows on Windows, ou simplesmente WOW é uma terminologia que a Microsoft utiliza para ter suporte de 32 bits em máquinas nativas 64 bits. É uma emulação contínua que todo sistema Windows de 64 bits tem. Mais informações podem ser obtidas aqui. É fácil de entender o que é isso simplesmente pensando que grandes sistemas legados ainda utilizam o Windows como principal base de controle. Se retirar isso bilhões podem ser perdidos simplesmente pelo fato da migração. Isso é uma verdadeira bagunça!.

A lógica de armazenamento nos Windows de 32/64 bits é:

  • Executáveis do sistema e DLLs estão em: “C:\Windows\System32″;
  • Entradas de registros estão em: “HKLM\…”.

No entanto, certas chaves de registro tem visões de 32 e 64 bits. Em alguns casos as visões são separadas e mantidas consistentes entre elas no Windows. Em outros casos elas são completamente separadas:

O local de instalação de software no Windows:

  • Em Windows de 32 bits aplicações são instaladas em: “C:\Program Files”.
  • Em Windows de 64 bits aplicações são instaladas em “C:\Program Files (x86)” e aplicações de 64 bits são instaladas em: “C:\Program Files”.
  • Se considerarmos os arquivos de duplicação de nomes para linguagens fora do Inglês tem: “C:\Arquivos de Programas”.

Isso significa que o instalador deve mudar o diretório de instalação entre um e outro. Porém aí vem a complicação da Microsoft. Quem tiver o Visual Studio 11 – Visual C (mas pode ser outra versão) :

  • Compilador e binários do SDK 32 bits além das bibliotecas estão instalados nesses diretórios:
    C:\Program Files (x86)\Microsoft Visual Studio 11\VC\bin
    C:\Program Files (x86)\Microsoft Visual Studio 11\VC\lib
    C:\Program Files\Microsoft SDKs\Windows\vx86\bin
    C:\Program Files\Microsoft SDKs\Windows\amd\lib
  • Compilador e binários do SDK e bibliotecas de 64 bits:
    C:\Program Files (x86)\Microsoft Visual Studio 11\VC\bin\(amd64|x64)
    C:\Program Files (x86)\Microsoft Visual Studio 11\VC\lib\(amd64|x64)
    C:\Program Files\Microsoft SDKs\Windows\vx86\bin\x64
    C:\Program Files\Microsoft SDKs\Windows\amd\lib\x64

Notem que a Microsoft quebrou a própria regra dela! O Visual C por convenção deveria está instalado na pasta de 64 bits mas está nas duas!!! 'C:\Program Files (x86)’.

A bagaça mesmo acontece quando um processo de 32 bits tenta acessar arquivos e registros de 64 bits:

  • Em 64 bit o diretório 'C:\Windows\System32′ é 'C:\Windows\SysNative’.
  • Registros e chaves de de 64 bits devem ser acessados via flag KEY_WOW64_64KEY no Reg*() API. Não há nenhum nome ou mecanismo de registro e para isto requer recodificação no nível de aplicação.
  • O Visual C de 64 bits é envolto nisso, deve sempre ser recodificado para executar em um ambiente de 64 bits!

Mais engraçado ainda é quando um processo de 64 bits tenta acessar arquivos ou registros de 32 bits:

  • O diretório de 32 bit 'C:\Windows\System32′ é 'C:\Windows\SysWOW64′.
  • 'C:\Windows\System32′ é para executáveis e DLL´s de  for 64 bits, mas 'C:\Windows\SysNative’ é um caminho inválido para processos de 64 bits;
  • As chaves de registros de 32 bits devem ser acessados via flag KEY_WOW64_32KEY em Reg*() API. Não existe um mecanismo de registro de nomes: todas as chaves de 32 bits são alocadas em uma subchave de Wow6432Node, mas toas as documentações da Microsoft alesta sobre o uso disso!

Existem uma série de API que podem ajudar o Windows a se livrar de emulação da WOW tais como: GetSystemWow64Directory, Wow64DisableWow64FsRedirection, Wow64EnableWow64FsRedirection e Wow64RevertWow64FsRedirection. Isso não é coisa para crianças então não aconselho usar tais ferramentas.

As chaves de 32 e 64 bits são incompatíveis, a solução poderia utilizar recursos semelhantes ao Linux que não permite  uso de chaves de um em outro. Além das modificações diretas entre o que é de um sistema e outro no SO. Então cuidado quando for falar de SO de 32/64 bits… a não ser que queira impressionar as coleguinhas….

Mais informações em: blog.tune-up.com/windows-insights/32-bit-vs-64-bit-more-bit-more-performance/

Vídeos da Semana de Robótica

Alguns vídeos referentes a oficina de robótica do IFPE

Jogos de Linux

Quer jogar no Linux com qualidade? Acesse o site do PenguSpy. Aconselho dois jogos, o Beats of Rage, que lembra muito o antigo Street of Rage do Genesis = Mega Drive com os personagens do King of Fighters, aí me baixo vai um vídeo do mesmo:

E o outro jogo bem legal é o Spiral Knights que lembra bastante o jogo Zelda do Nintendinho.

Mapa interativo do kernel Linux

Um site bem legal que mostra como os diversos componentes do linux relacionam-se é o MakeLinux. Vale a pena dá uma olhada principalmente os alunos de Sistemas Operacionais e Arquitetura. Detalhe para o site é também a estrutura interna do Android, e o Linux Man Page. Vale a pena conferir.

iCub o bebê robô

Fonte: iCub

Eu não sei se fico empolgado com o projeto ou com medo do protótipo.

É um desses que queria em casa

Mostrei um outro dia um vídeo do PR2, base robótica, que fazia bolos. Agora ele está aqui novamente com dois vídeos legais. O primeiro é ele pegando uma cerveja no freezer e depois abrindo para a galera. O outro é o mesmo PR2 que está servindo um refrigerante. Queria um desses em casa, principalmente quando estou no escritório. Só aumentaria a velocidade de utilização dele. A velocidade dos vídeos foi aumentada, por isso que é rápido a exibição. A conta de luz no final do mês….

PR2 busca cerveja

PR2 busca refrigerante e coloca em um escravo para entregar