Bom, na era tecnológica que estamos, percebemos que cada vez mais é exigido dos profissionais, e é onde começa a discussão. A postura que deve ser tomada pelo professor na área de TI.
O que mais se espera do graduado nas áreas de TI é a forma de lidar com os obstáculos diários. E a cada passo que a tecnologia dá, percebe-se um comportamento analítico, curioso por parte do profissional que lança idéias que motivam e cativam o cidadão atual. Desse modo, necessita-se de um comprometimento e um constante papo sobre a importância da TI no decorrer do curso. Apresentando o que cada aluno tem de melhor, tem facilidade de entendimento e discernimento.
Dessa maneira é colocado o professor como um tutor, um conselheiro, mas não que tome decisões e sim incrementar informações já presentes no aluno. Causando uma atividade que demonstre o potencial do aluno em vários quesitos, em várias posições na divisão de tarefas. Sendo o professor um analista que ao perceber tais qualidades, compor uma maneira ideal de lidar com os problemas no curso, tais como deficiências, dentre outros.
Assim, defino o professor como um mentor que dispõe de um conhecimento mais profundo, porém, que se define como aluno-professor. Pois ao decorrer do tempo, e da grande gama de informações há um vácuo no discernimento de alguns temas e novas tecnologias. Algo a ser ensinado mutuamente.
Fonte:
http://www.seplan.am.gov.br/adm/imgeditor/file/art_nilson_pimentel/9Chegou%20a%20Temporada%20dos%20TIs.pdf
segunda-feira, 22 de junho de 2009
domingo, 31 de maio de 2009
Linguagens de Programação
Bom, hoje irei falar sobre duas linguagens de programação. O PHP e o Java.
PHP
Surgiu por volta de 1994, como um pacote de programas CGI(tecnologia que permite gerar páginas dinâmicas) criados por Rasmus Lerdof, com o nome Personal Home Page Tools, para substituir um conjunto de scripts Perl que ele usava no desenvolvimento de sua página pessoal. Mais tarde, Zeev Suraski desenvolveu o analisador do PHP 3 que contava com o primeiro recurso de orientação a objetos, que dava poder de alcançar alguns pacotes, tinha herança e dava aos desenvolvedores somente a possibilidade de implementar propriedades e métodos.
É uma linguagem de programação de computadores interpretada, livre, estruturada e muito utilizada para gerar conteúdo dinâmico na World Wide Web.
Trata-se de uma linguagem extremamente modularizada, o que a torna ideal para instalação e uso em servidores web. Além disso, independe da plataforma. É muito parecida, em tipos de dados, sintaxe e mesmo funções, com a linguagem C e com a C++. Pode ser, dependendo da configuração do servidor, embarcada no código HTML.
A linguagem PHP é uma linguagem de programação de domínio específico, ou seja, seu escopo se estende a um campo de atuação que é o desenvolvimento web, embora tenha variantes como o PHP-GTK(Proporciona uma interface orientada a objeto para as classes e funções do GTK+ e simplifica, e muito, o desenvolvimento de aplicações desktop multi-plataforma). Seu propósito principal é de implementar soluções web velozes, simples e eficientes.
Java
Em 1991, na Sun Microsystems, foi iniciado o Green Project, o berço do Java, uma linguagem de programação orientada a objetos. Os mentores do projeto eram Patrick Naughton, Mike Sheridan, e James Gosling. O objetivo do projeto não era a criação de uma nova linguagem de programação, mas antecipar e planejar a “próxima onda” do mundo digital. Eles acreditavam que, em algum tempo, haveria uma convergência dos computadores com os equipamentos e eletrodomésticos comumente usados pelas pessoas no seu dia-a-dia.
Desde seu lançamento, em maio de 1995, a plataforma Java foi adotada mais rapidamente do que qualquer outra linguagem de programação na história da computação. Java tornou-se popular pelo seu uso na Internet e hoje possui seu ambiente de execução presente em web browsers, mainframes, SOs, celulares, palmtops e cartões inteligentes, entre outros.
A linguagem Java foi projetada tendo em vista os seguintes objetivos:
• Orientação a objeto - Baseado no modelo de Smalltalk e Simula67;
• Portabilidade - Independência de plataforma - "write once, run anywhere";
• Recursos de Rede - Possui extensa biblioteca de rotinas que facilitam a cooperação com protocolos TCP/IP, como HTTP e FTP;
• Segurança - Pode executar programas via rede com restrições de execução;
Além disso, podem-se destacar outras vantagens apresentadas pela linguagem:
• Sintaxe similar a Linguagem C/C++ e principalmente, a C#.
• Facilidades de Internacionalização - Suporta nativamente caracteres Unicode;
• Simplicidade na especificação, tanto da linguagem como do "ambiente" de execução (JVM);
• É distribuída com um vasto conjunto de bibliotecas (ou APIs);
• Possui facilidades para criação de programas distribuídos e multitarefa (múltiplas linhas de execução num mesmo programa);
• Desalocação de memória automática por processo de coletor de lixo (garbage collector);
• Carga Dinâmica de Código - Programas em Java são formados por uma coleção de classes armazenadas independentemente e que podem ser carregadas no momento de utilização.
http://pt.wikipedia.org/wiki/PHP
http://www.php.net/
http://pt.wikipedia.org/wiki/Java_(linguagem_de_programa%C3%A7%C3%A3o)
http://java.sun.com/
PHP
Surgiu por volta de 1994, como um pacote de programas CGI(tecnologia que permite gerar páginas dinâmicas) criados por Rasmus Lerdof, com o nome Personal Home Page Tools, para substituir um conjunto de scripts Perl que ele usava no desenvolvimento de sua página pessoal. Mais tarde, Zeev Suraski desenvolveu o analisador do PHP 3 que contava com o primeiro recurso de orientação a objetos, que dava poder de alcançar alguns pacotes, tinha herança e dava aos desenvolvedores somente a possibilidade de implementar propriedades e métodos.
É uma linguagem de programação de computadores interpretada, livre, estruturada e muito utilizada para gerar conteúdo dinâmico na World Wide Web.
Trata-se de uma linguagem extremamente modularizada, o que a torna ideal para instalação e uso em servidores web. Além disso, independe da plataforma. É muito parecida, em tipos de dados, sintaxe e mesmo funções, com a linguagem C e com a C++. Pode ser, dependendo da configuração do servidor, embarcada no código HTML.
A linguagem PHP é uma linguagem de programação de domínio específico, ou seja, seu escopo se estende a um campo de atuação que é o desenvolvimento web, embora tenha variantes como o PHP-GTK(Proporciona uma interface orientada a objeto para as classes e funções do GTK+ e simplifica, e muito, o desenvolvimento de aplicações desktop multi-plataforma). Seu propósito principal é de implementar soluções web velozes, simples e eficientes.
Java
Em 1991, na Sun Microsystems, foi iniciado o Green Project, o berço do Java, uma linguagem de programação orientada a objetos. Os mentores do projeto eram Patrick Naughton, Mike Sheridan, e James Gosling. O objetivo do projeto não era a criação de uma nova linguagem de programação, mas antecipar e planejar a “próxima onda” do mundo digital. Eles acreditavam que, em algum tempo, haveria uma convergência dos computadores com os equipamentos e eletrodomésticos comumente usados pelas pessoas no seu dia-a-dia.
Desde seu lançamento, em maio de 1995, a plataforma Java foi adotada mais rapidamente do que qualquer outra linguagem de programação na história da computação. Java tornou-se popular pelo seu uso na Internet e hoje possui seu ambiente de execução presente em web browsers, mainframes, SOs, celulares, palmtops e cartões inteligentes, entre outros.
A linguagem Java foi projetada tendo em vista os seguintes objetivos:
• Orientação a objeto - Baseado no modelo de Smalltalk e Simula67;
• Portabilidade - Independência de plataforma - "write once, run anywhere";
• Recursos de Rede - Possui extensa biblioteca de rotinas que facilitam a cooperação com protocolos TCP/IP, como HTTP e FTP;
• Segurança - Pode executar programas via rede com restrições de execução;
Além disso, podem-se destacar outras vantagens apresentadas pela linguagem:
• Sintaxe similar a Linguagem C/C++ e principalmente, a C#.
• Facilidades de Internacionalização - Suporta nativamente caracteres Unicode;
• Simplicidade na especificação, tanto da linguagem como do "ambiente" de execução (JVM);
• É distribuída com um vasto conjunto de bibliotecas (ou APIs);
• Possui facilidades para criação de programas distribuídos e multitarefa (múltiplas linhas de execução num mesmo programa);
• Desalocação de memória automática por processo de coletor de lixo (garbage collector);
• Carga Dinâmica de Código - Programas em Java são formados por uma coleção de classes armazenadas independentemente e que podem ser carregadas no momento de utilização.
http://pt.wikipedia.org/wiki/PHP
http://www.php.net/
http://pt.wikipedia.org/wiki/Java_(linguagem_de_programa%C3%A7%C3%A3o)
http://java.sun.com/
segunda-feira, 25 de maio de 2009
Relação do Curso com os desafios da SBC
Hoje, falarei um pouco da relação de algumas disciplinas com os desafios da SBC.
- Estrutura de Dados - é o ramo da computação que aborda meios de organizar os dados para atender aos diversos requisitos de processamento.
- Desenvolvimento de Software - aplica os processos da Engenharia do Software juntamente com a necessidade do produto para implementar software. Assim, utiliza ferramentas para a construção do software de maneira que atenda às necessidades de uso do software.
- Interface Humano-Computador - é uma área que correlaciona outras disciplinas, é o estudo da relação entre computadores e máquinas para atender a sistemas cuja complexidade é a maneira de que irá relacionar suas ações com as de um humano aumentando as possibilidades de construção de sistemas aderentes a uma determinada necessidade.
segunda-feira, 11 de maio de 2009
BlueWater, o supercomputador
Apesar de já ser aprovado em agosto de 2007, o BlueWater, da IBM, impressiona pela capacidade de processamento, e será o primeiro computador em escala Peta na história da computação.
Se você está pensando que um quad-core impressiona, imagine um processador com 200 mil nucleos!! Ou seja, 2 petaflops de processamento, 1 petabyte de memoria e 10 petabytes de armazenamento. Valores esses correspondentes a estudos teóricos.
Bom, um peta só corresponde a 10 elevado a 15 potência de bytes, pouco não??
Esse experimento custará uma regalia de somente $208 milhões de dólares.Cmo não é um supercomputador barato, a IBM entrou numa parceria com os E.U.National Science Foundation, que recebeu luz verde dos Estados Unidos National Science.
Só para comparar, o supercomputador mais rápido do mundo atual, o Blue Gene(imagem abaixo) da IBM possui 1/3 da capacidade de processamento esperado pelo Blue Waters.

Irá ser constantemente ocupado trabalhando com projetos da Defense Advanced Research Projects Agency, ou DARPA, que é o braço direito de investigação do pentágono.
Será usado para simulações na medicina, meteorologia, biofísica, bioquímica, estudar buracos negros e medicina molecular.
Seu término é esperado para 2011.
Fontes
Se você está pensando que um quad-core impressiona, imagine um processador com 200 mil nucleos!! Ou seja, 2 petaflops de processamento, 1 petabyte de memoria e 10 petabytes de armazenamento. Valores esses correspondentes a estudos teóricos.
Bom, um peta só corresponde a 10 elevado a 15 potência de bytes, pouco não??
Esse experimento custará uma regalia de somente $208 milhões de dólares.Cmo não é um supercomputador barato, a IBM entrou numa parceria com os E.U.National Science Foundation, que recebeu luz verde dos Estados Unidos National Science.
Só para comparar, o supercomputador mais rápido do mundo atual, o Blue Gene(imagem abaixo) da IBM possui 1/3 da capacidade de processamento esperado pelo Blue Waters.

Irá ser constantemente ocupado trabalhando com projetos da Defense Advanced Research Projects Agency, ou DARPA, que é o braço direito de investigação do pentágono.
Será usado para simulações na medicina, meteorologia, biofísica, bioquímica, estudar buracos negros e medicina molecular.
Seu término é esperado para 2011.
Fontes
- http://www.newlaunches.com/archives/university_of_illinois_to_get_blue_water_the_worlds_fastest_public_supercomputer.php
- http://www.gadgettastic.com/2008/09/05/blue-waters-world%E2%80%99s-first-petascale-supercomputer-costing-around-208-million/
- http://news.softpedia.com/news/Universities-And-Supercomputers-62630.shtml
segunda-feira, 4 de maio de 2009
Debug.exe e Assembler
Nesse post irei comentar sobre o Debug.exe e alguns comandos do Assembler.
Debug.exe é um comando que funciona no DOS, MS-DOS e outros S.O.s. Ele roda o programa debug.exe que verifica programas permitindo ao usuário interativamente examinar o conteúdo da memória(em linguagem assembly, hexadecimal ou ASCII), modificar e seletivamente executar arquivos com, exe e outros tipos. Possui vários subcomandos que são usados para o acesso específico em setores de disco, portas de Entrada e Saída(I/O) e endereços de memória.
Assembler é um programa usado para traduzir declarações em linguagem assembly dentro do código de máquina do computador alvo.
Foram colocados em pesquisa esses comandos:
0CF2:0100 mov cx,100
0CF2:0103 mov ah, 2
0CF2:0105 mov dl, cl
0CF2:0107 int 21
0CF2:0109 loop 103
O comando mov é utilizado para mover o valor do segundo operando no registrador indicado pelo primeiro operando.No primeiro comando, coloca o valor 100 no cx(registrador acumulador).
No segundo, move o valor 2 para o registrador ah.
No 3º move o registrador cl para o registrador dl
O comando int indica uma interrupção, assim que é encontrada uma INT no código, o programa recorre a esta interrupção. Uma interrupção aponta para um programinha, como aquele da Bios, porém não precisa sernecessáriamente um programinha da Bios, existem outros.
Fontes:
http://magnum.ime.uerj.br/~alexszt/cursos/softsis/material/asm/tutasm/
http://br.groups.yahoo.com/group/ma_list/message/113
Debug.exe é um comando que funciona no DOS, MS-DOS e outros S.O.s. Ele roda o programa debug.exe que verifica programas permitindo ao usuário interativamente examinar o conteúdo da memória(em linguagem assembly, hexadecimal ou ASCII), modificar e seletivamente executar arquivos com, exe e outros tipos. Possui vários subcomandos que são usados para o acesso específico em setores de disco, portas de Entrada e Saída(I/O) e endereços de memória.
Assembler é um programa usado para traduzir declarações em linguagem assembly dentro do código de máquina do computador alvo.
Foram colocados em pesquisa esses comandos:
0CF2:0100 mov cx,100
0CF2:0103 mov ah, 2
0CF2:0105 mov dl, cl
0CF2:0107 int 21
0CF2:0109 loop 103
O comando mov é utilizado para mover o valor do segundo operando no registrador indicado pelo primeiro operando.No primeiro comando, coloca o valor 100 no cx(registrador acumulador).
No segundo, move o valor 2 para o registrador ah.
No 3º move o registrador cl para o registrador dl
O comando int indica uma interrupção, assim que é encontrada uma INT no código, o programa recorre a esta interrupção. Uma interrupção aponta para um programinha, como aquele da Bios, porém não precisa sernecessáriamente um programinha da Bios, existem outros.
Fontes:
http://magnum.ime.uerj.br/~alexszt/cursos/softsis/material/asm/tutasm/
http://br.groups.yahoo.com/group/ma_list/message/113
Regulamentação da Informática.
Bom, esse debate coloca em pauta questões antagônicas e que geram incertezas aos profissionais na área de Informática. De início, a regulamentação provém uma segurança aos graduados, já que não será qualquer curioso que poderá dar suporte ou planejar sistemas.
Mas, no entanto, o diploma por si só não é necessário para comprovar o exercício profissional do atuante na área de Computação. E aí entram suposições e fatos, cujos atacam a questão de não ser graduado mas ser capaz de manipular as ferramentas da computação.
Antes de serem colocados cursos de nível superior, eram profissionais ligados à Física, Engenheiros e ligados às exatas manipulavam os computadores da época. Está aí um fato.
E aos curiosos que dão suporte, sim, aquela boa manutenção, que o vizinho curioso executa, como fica?
É nesse ponto que eu, como estudante ligado à área da informática fico a favor da regulamentação. Sim, pois a não regulamentação abriria uma brecha aos não graduados e às empresas, que sempre querem pagar menos, e sabendo que um não graduado tem um conhecimento específico na área de seu interesse, prefere pagar menos, do que em um profissional, sem saber é claro das suas aptidões na área da informática.
E sim, há muitas oportunidades para um não graduado formar-se e ter um conhecimento mais vasto.
Mas, no entanto, o diploma por si só não é necessário para comprovar o exercício profissional do atuante na área de Computação. E aí entram suposições e fatos, cujos atacam a questão de não ser graduado mas ser capaz de manipular as ferramentas da computação.
Antes de serem colocados cursos de nível superior, eram profissionais ligados à Física, Engenheiros e ligados às exatas manipulavam os computadores da época. Está aí um fato.
E aos curiosos que dão suporte, sim, aquela boa manutenção, que o vizinho curioso executa, como fica?
É nesse ponto que eu, como estudante ligado à área da informática fico a favor da regulamentação. Sim, pois a não regulamentação abriria uma brecha aos não graduados e às empresas, que sempre querem pagar menos, e sabendo que um não graduado tem um conhecimento específico na área de seu interesse, prefere pagar menos, do que em um profissional, sem saber é claro das suas aptidões na área da informática.
E sim, há muitas oportunidades para um não graduado formar-se e ter um conhecimento mais vasto.
segunda-feira, 20 de abril de 2009
Configurando meu computador
Quase todos os computadores trabalham sob a chamada “arquitetura de von Neumann”, proposta no final da década de 40 por John von Neumann. O método divide um computador em quatro seções: a ULA (unidade lógica e aritmética), a unidade de controle, a memória e os dispositivos de entrada e saída (E/S ou I/O). Tais setores comunicam-se por fios ou barramentos.
Processador -meu computador usa um Intel Core2Duo 2.00Ghz com 2mb de cache. A nomenclatura 2Duo simboliza que o processador possui dois nucleos de processamento. Os 2.00GHz bom, o Hz é uma medida de frequencia, ciclos por segundo, no computador instruções por segundo, assim equivale a 2 bilhões de instruções por segundo.
O cache é um dispositivo de acesso rápido, interno a um sistema, que serve de intermediário entre um operador de um processo e o dispositivo de armazenamento ao qual esse operador acede, evitando o acesso ao dispositivo de armazenamento - que pode ser demorado -, armazenando os dados em meios de acesso mais rápidos .
Mas é claro que a velocidade do computador não depende somente do processador também da memória ram e do acesso ao disco rígido.
Memoria - A memória de um computador é normalmente dividida entre primária e secundária. A primária é classificada como RAM (Random Acess Memory ou Memória de Acesso Aleatório) e memória ROM (Read Only Memory ou Memória Somente de Leitura). A RAM permite tanto a leitura como a gravação e regravação de dados. Porém, quando o usuário desliga o computador, esse tipo de memória perde todos os seus dados. Possuo uma memória de 2Mb, tipo DDR2 e frequencia de 667 MHz.A DDR2 é uma evolução ao antigo padrão DDR SDRAM, conforme homologação da JEDEC. A nova tecnologia DDR2 veio com a promessa de aumentar o desempenho, diminuir o consumo elétrico e o aquecimento, aumentar a densidade e minimizar a interferência eletromagnética (ruído).
A Memória Secundária (Rom), é utilizada para gravar imensas quantidades de dados, que também não são perdidos quando você desliga seu PC, mesmo que depois fique um bom tempo sem usá-lo. O Disco Rígido (HD) é o principal meio para se gravar informações no computador. O Hd do meu pc é um Sata de 160 GB, 5400 RPM. SATA é o padrão de discos rígidos criado para substituir os discos ATA, também conhecidos como IDE. A taxa de transferência máxima teórica de um disco Serial ATA é de 150 MB/s ou 300 MB/s, contra os 133 MB/s de um disco rígido IDE.
Dispositivos de Entrada - os mais comuns são teclado e mouse.
Dispositivos de Saída - Monitor.
Barramentos - é um conjunto de circuitos e linhas de comunicação que se ligam ao resto do PC com a finalidade de possibilitar a expansão de periféricos e a instalação de novas placas no PC.
Permitem a conexão de dispositivos como:
Placa gráfica - melhor o desempenho de programas que necessiam de uma interface gráfica.Uso uma Intel Graphics Media Accelerator X3100 que é onboard (quando a placa-mãe integra outros dispositivos)
Mouse
Teclado
etc
Minha placa-mãe possui barramentos USB (o padrão atual de conecção, conecta mouses, teclados, impressoras, enfim, é o conector universal.) e o PCI-Express O PCI Express é um barramento ponto a ponto, onde cada periférico possui um canal exclusivo de comunicação com o chipset. Isto contrasta fortemente com o padrão PCI, que é um barramento em que todos os dispositivos compartilham a mesma comunicação, de 32 bits (ou 64 bits), num caminho paralelo, no meu caso, conecta à minha placa de vídeo.
Processador -meu computador usa um Intel Core2Duo 2.00Ghz com 2mb de cache. A nomenclatura 2Duo simboliza que o processador possui dois nucleos de processamento. Os 2.00GHz bom, o Hz é uma medida de frequencia, ciclos por segundo, no computador instruções por segundo, assim equivale a 2 bilhões de instruções por segundo.
O cache é um dispositivo de acesso rápido, interno a um sistema, que serve de intermediário entre um operador de um processo e o dispositivo de armazenamento ao qual esse operador acede, evitando o acesso ao dispositivo de armazenamento - que pode ser demorado -, armazenando os dados em meios de acesso mais rápidos .
Mas é claro que a velocidade do computador não depende somente do processador também da memória ram e do acesso ao disco rígido.
Memoria - A memória de um computador é normalmente dividida entre primária e secundária. A primária é classificada como RAM (Random Acess Memory ou Memória de Acesso Aleatório) e memória ROM (Read Only Memory ou Memória Somente de Leitura). A RAM permite tanto a leitura como a gravação e regravação de dados. Porém, quando o usuário desliga o computador, esse tipo de memória perde todos os seus dados. Possuo uma memória de 2Mb, tipo DDR2 e frequencia de 667 MHz.A DDR2 é uma evolução ao antigo padrão DDR SDRAM, conforme homologação da JEDEC. A nova tecnologia DDR2 veio com a promessa de aumentar o desempenho, diminuir o consumo elétrico e o aquecimento, aumentar a densidade e minimizar a interferência eletromagnética (ruído).
A Memória Secundária (Rom), é utilizada para gravar imensas quantidades de dados, que também não são perdidos quando você desliga seu PC, mesmo que depois fique um bom tempo sem usá-lo. O Disco Rígido (HD) é o principal meio para se gravar informações no computador. O Hd do meu pc é um Sata de 160 GB, 5400 RPM. SATA é o padrão de discos rígidos criado para substituir os discos ATA, também conhecidos como IDE. A taxa de transferência máxima teórica de um disco Serial ATA é de 150 MB/s ou 300 MB/s, contra os 133 MB/s de um disco rígido IDE.
Dispositivos de Entrada - os mais comuns são teclado e mouse.
Dispositivos de Saída - Monitor.
Barramentos - é um conjunto de circuitos e linhas de comunicação que se ligam ao resto do PC com a finalidade de possibilitar a expansão de periféricos e a instalação de novas placas no PC.
Permitem a conexão de dispositivos como:
Placa gráfica - melhor o desempenho de programas que necessiam de uma interface gráfica.Uso uma Intel Graphics Media Accelerator X3100 que é onboard (quando a placa-mãe integra outros dispositivos)
Mouse
Teclado
etc
Minha placa-mãe possui barramentos USB (o padrão atual de conecção, conecta mouses, teclados, impressoras, enfim, é o conector universal.) e o PCI-Express O PCI Express é um barramento ponto a ponto, onde cada periférico possui um canal exclusivo de comunicação com o chipset. Isto contrasta fortemente com o padrão PCI, que é um barramento em que todos os dispositivos compartilham a mesma comunicação, de 32 bits (ou 64 bits), num caminho paralelo, no meu caso, conecta à minha placa de vídeo.
Assinar:
Postagens (Atom)