Archive for the "Professores" Category

Apresentação IoT Semana de Tecnologia IFPE

Peguem aqui neste link a apresentação

[ARQUITETURA DE COMPUTADORES] Horário de monitorias

Isnard Malafaia JuniorTerça e Quinta – 13:30 na sala de estudos F47.3

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… ;*

[Sistemas Embarcados] Datas de Práticas Avaliativas e Projetos

1ª Avaliação – 20 de outubro de 2016 calendario2

2ª Avaliação / Projeto – 15 de dezembro de 2016

Avaliação Final – 05 de janeiro de 2017

[Sistemas Operacionais] Datas de Práticas Avaliativas e Projetos

1ª Avaliação – 19 de outubro de 2016 calendario2

2ª Avaliação / Projeto – 14 de dezembro de 2016

Avaliação Final – 04 de janeiro de 2017

[Arquitetura de Computadores] UPDATE – Notas da Prova

gatoPessoal a nota da prova escrita está aqui. Não é a nota definitiva ainda! Falta colocar as avaliações feitas em sala de aula e a participação em dúvidas e monitoria.

Pessoal, as notas da primeira avaliação está aqui.

Upgrade Linux Mint “Qiana” 2 “Rebecca”

Maiores queixas que tenho dos alunos é sobre atualização de  distribuições Linux. Já falei a eles  que depois que programaram o “apt” o processo é simples, mudando apenas o nome nos arquivos de repositórios e seguir os passos usuais. Então vamos lá:

Em um terminal do Linux digite:

$ sudo su –

# cp -vax /etc/apt/sources.list.d/* /tmp

# sed -i s/qiana/rebecca/g /etc/apt/sources.list.d/*

# apt-get update && sudo apt-get dist-upgrade

Ao final reinicie o computador e depois digite em um terminal “sudo apt-get autoremove“.

Pronto

Aula de Linguagem C

Alunos de Eletrônica. Segue aqui a aula de Linguagem C.

Usando o Eclipse + PTP + MPI

Este mês tenho participado do curso da MPI, Message Passing Interface, ofertado pela UFRGS. Esta é uma iniciativa interessante para as pessoas que estão trabalhando com sistemas multiprocessador e que necessitam adaptar suas aplicações a tal ambiente. Além do ambiente que é disponibilizado pelos organizadores do curso, tinha a necessidade de ter um lugar que pudesse testar sem a necessidade de estar constantemente conectado na Internet. Por esse motivo pesquisei algumas coisas e acabei utilizando o MPICH, com integração com o Eclipse, no qual já possui um plug-in para tal sistema. O MPICH é uma implementação portátil, de alto desempenho e amplamente conforme com o padrão MPI (MPI-1, MPI-2 e MPI-3).

Os objetivos do MPICH são:

  1. Fornecer uma implementação eficiente da MPI que suporte diferentes plataformas de computação e comunicação (sistemas de desktop, sistemas de memória compartilhada e arquiteturas multicore), redes de alta velocidade (Gigabit Ethernet, InfiniBand, Myrinet , Quadrics) e sistemas de computação high-end (Blue Gene, Cray);
  2. Permitir o desenvolvimento de ponta em MPI através de uma fácil estrutura modular.

Passos

1 – Você deve baixar o software disponível no site da MPICH. Como estou usando o ambiente Linux, os links abaixo são para a versão 3.0.4.

http://www.mpich.org/static/downloads/3.0.4/mpich-3.0.4.tar.gz

Possui versões para outros sistemas tais para Windows e também pacotes pré-determinados de diferentes distribuições. Lembrando que os passos abaixo o símbolo “$” indica que se trata de um terminal de usuário e tudo será instalado no diretório /opt. A maioria das distribuições não permite que usuários tenham acesso a escrita nesse diretório. Nesse caso aconselho que mude as permissões de acesso para que tenha acesso. Caso você tenho problemas com o Linux, e como mudar as permissões de acesso, aconselho ler este material e este daqui.

$ cd /opt

$ wget -c http://www.mpich.org/static/downloads/3.0.4/mpich-3.0.4.tar.gz

2 – Ao fim do download, execute os seguintes comandos:

$ mkdir /opt/mpich

$ tar zxpvf mpich-3.0.4.tar.gz

$ cd mpich-3.0.4

$ ./configure --prefix=/opt/mpich

$ make 2>&1 | tee m.txt

$ sudo make install |& tee mi.txt

Observe que após a instalação os executáveis estarão disponíveis no diretório /opt/mpich/bin , logo as variáveis de ambiente de usuário devem ser modificadas.

3 – Em um ambiente baseado em Ubuntu e com algum editor de texto, nesse caso específico foi utilizado o vim, digite:

$ cp -vax ~/.profile ~/.profile.bak

$ cp -vax ~/.bashrc ~/.bashrc.bak

$ echo "export PATH=/opt/mpich/bin:$PATH" >> ~/.profile

$ echo "export PATH=/opt/mpich/bin:$PATH" >> ~/.bashrc

Os dois primeiros comandos acima estão criando cópias dos arquivos, caso algo de errado aconteça e você poderá reverter. Depois saia do terminal e abra o mesmo novamente.

4 – Baixe o ambiente de desenvolvimento Eclipse, nesse caso estou usando o Kepler para Linux x86_64, disponível aqui nesse link. No entanto no mesmo site encontra-se uma IDE já preparada para trabalhar com o ambiente de multiprocessamento, que está disponível aqui. Porém no nosso exemplo vamos instalar esses pacotes manualmente, caso queira utilizar o ambiente para outra linguagem de programação, tais quais, java ou C/C++.

Como o arquivo já se encontra em uma versão pré compilada, a única ação para realizar a instalação é apenas descompactar o arquivo baixado para algum lugar no disco rígido. No caso aqui do tutorial, colocamos na pasta /opt do linux. Ficando nesse caso /opt/eclipse

Para executar o eclipse no linux, basta apenas executar o arquivo eclipse que se encontra na pasta citada anteriormente, ou criar um atalho na área de trabalho para este arquivo.

5 – Executando o eclipse, este irá executar o processo de descoberta do ambiente de trabalho, esta área é responsável para trabalhar com os arquivos fontes de seus programas. Neste caso colocamos em uma pasta nomeada como workspace na pasta do usuário, conforme figura abaixo:

eclipse1

Ao clicar em OK, o ambiente de desenvolvimento irá aparecer conforme imagem abaixo, então feche esta mensagem conforme círculo vermelho destacado a seguir:

eclipse2

Após essa parte, clique no menu HELP e escolha INSTALL NEW SOFTWARE… A seguinte tela irá aparecer:

 

eclipse3

Após este processo, na lista “drop down” ao lado da escrita “Work with” escolha o site de configuração do Kepler:

eclipse4

Espere alguns segundos, dependo da sua conexão de Internet, e a seguinte tela com os complementos do Eclipse irá aparecer:

eclipse5

Em seguida onde tem a inscrição “type filter text” digite “PTP“, aguarde alguns instantes – dependendo da conexão da Internet deve durar alguns minutos – que irá aparecer uma imagem como a da figura a seguir. Marque todas as opções do “check box” como na figura e aperte o botão “next

eclipse5

Aceite e confirme todas as outras opções que aparecerem. Ao final o sistema de instalação pedirá ao usuário que reinicie. Confirme a opção e na próxima vez que o ambiente Eclipse for inicializado, o mesmo estará com o PTP instalado.

6 – Para configurar o MPI, inicialize o Eclipse, escolha as opções de menu Windows -> Preferences… na tela que abrirá clique em cima do menu “Parallel Tools“, uma mensagem de erro aparecerá, nesse caso é porque a instalação não encontrou um diretório temporário para o compilador. Como sugestão coloque conforme a figura a seguir, que indica o diretório “/tmp“:

eclipse6

Clique no botão “Apply” e em seguida clique em cima do sub menu “Parallel Language” e escolha o sub menu “MPI“. Esta opção é para indicar ao ambiente onde se encontra o MPICH. No exemplo do tutorial, instalamos no diretório “/opt/mpich“. Clique no botão NEW e abra o diretório “/opt/mpich/include“, além de indicar os executáveis do mpicc e mpi++.

eclipse7

Confirma as alterações clicando no botão OK, e seu ambiente estará configurado.

7 – Para testar o ambiente se está configurado corretamente, na tela principal escolha a opção de menu: File -> New -> C Project..

Na tela que irá aparecer escolha a opção Executable -> MPI Empty C Project. Observe que o “Toolchain” esteja na opção Linux GCC. Em “Project Name” coloque a descrição “teste“:

eclipse8

Clique em Next, Next e depois Finish. Um novo projeto será criado. Crie um novo arquivo fonte, na opção File -> New -> Source File.

eclipse9

Coloque o nome de main.c. A versão do arquivo já com o conteúdo, pode ser baixada aqui. Senão copie e cole o conteúdo do arquivo abaixo para o recém criado main.c:

/*
============================================================================
Name        : main.c
Author      : Anderson Moreira
Version     :
Copyright   : IFPE
Description : Program 01 - teste
============================================================================
*/
#include <mpi.h>
#include <stdio.h>
#include <string.h>

int main (int argc, char *argv[ ])
{
   int processId; /* rank dos processos */
   int noProcesses; /* Numero de processos */
   int nameSize; /* Tamanho do nome */
   char computerName[MPI_MAX_PROCESSOR_NAME];
   MPI_Init(&argc, &argv);
   MPI_Comm_size(MPI_COMM_WORLD, &noProcesses);
   MPI_Comm_rank(MPI_COMM_WORLD, &processId);
   MPI_Get_processor_name(computerName, &nameSize);
   fprintf(stderr,"Hello gerado pelo processo %d na máquina %s\n", processId, computerName);
   MPI_Finalize( );
   return 0;
}

Pode ser que clicando duas vezes em cima do arquivo main.c, aparece uma mensagem de erro:

eclipse10

Para resolver este problema, clique em cima com o botão direito do mouse sobre o arquivo fonte e escolha, Open with -> C/C++ Editor. Após, este passo, salve o arquivo. Clique com o botão direito do projeto “teste” e escolha “Properties“. Outra forma é clicar em cima do projeto e apertar a combinação de teclas <ALT> + <ENTER>.

Na tela que aparece escolha a opção C/C++ Build -> Settings -> GCC C Linker -> Libraries, conforme figura:

eclipse11

Apague o caminho para biblioteca “mpi” clicando no botão “Delete” que é o que possui um “X” vermelho.

Saia da tela clicando no botão “OK” e pronto. Ao compilar o programa – combinação de teclas <CTRL> + <B> – você verá que o mesmo estará sendo verificado pelo ambiente do mpi.

Para executar o programa. Clique no menu Run -> Run configurations… Na tela que segue, escolha “C/C++ Remote Application” e depois clique em cima de New Launch Configuration (new). Na linha onde está “Remote Absolute File Path” digite o caminho do executável do programa com o prefixo do mpirun (mpirun -np 3 /home/alsm/workspace/teste/Debug/teste) conforme figura abaixo:

new_configuration

Clique em “Run” e pronto! Na tela de console irá aparecer a seguinte mensagem:

saida

Lembrando que a máquina “alsm-dadt” é a máquina identificada no arquivo “machinefile” localizado na pasta “home” do usuário e que tenha o seguinte conteúdo:

alsm-dadt:4

Agradecer a Professora Carla Osthoff, pela ajuda no curso rápido de MPI.

Fontes: http://www.top500.org, http://mpi.deino.net/manual.htm, http://www.lam-mpi.org/tutorials/, http://www.cesup.ufrgs.br/informacoes-ao-usuario/manuais, http://www.mcs.anl.gov/research/projects/mpi/, http://www.mpich.org/, http://www.mpi-forum.org/

Informações TCC-2

Alunos de TCC-2 da turma (Y606601). Segue as datas e passos para entrega do TCC e defesa:

  • A data final de entrega da parte escrita é 01/06/12;
  • A data final de marcação de defesa é 09/07/12;
  • O aluno juntamente com o professor orientador deverá propor um nome para compor a banca de avaliação. Sendo que este professor externo pode ser da própria coordenação, do IFPE ou de outra Instituição de Ensino;
  • Do período entre 01/06 a 09/07 o aluno deverá juntamente com o professor da disciplina marcar uma data para defesa. Lembrando que essa data deverá ser em um dia em que não tenha mais de duas defesas já pré-marcadas. Isso para facilitar o trabalho da escrita da ATA e convite do professor externo;
  • Deverá ser entregue três vias da parte escrita para a banca: uma para o professor da disciplina, outra para o professor orientador e outra para o professor externo;
  • Após a defesa, o aluno estará com as três vias corrigidas. O mesmo deverá se dirigir a biblioteca e solicitar a ficha catalográfica do TCC. A versão final deverá ser encadernada nos padrões propostos pela biblioteca do IFPE (encadernação quente e capa preta).

Segue nesse link uma cópia do calendário do período.