Blog:Memory Leak

De juliano.info

Um memory leak é o consumo desnecessário de memória por um programa de computador. A manifestação mais comum é a falha em liberar memória não utilizada que foi alocada. Um memory leak ocorre quando o programa perde a capacidade de liberar a memória ou simplesmente se esquece de liberar a memória que não é mais necessária. (fonte: Wikipedia, A Enciclopédia Livre.)


Wikilog v1.1.0 lançado

Wikilog.png

Wikilog versão 1.1.0 foi lançado hoje. Esta versão e o ramo subsequente almejam o ramo 1.16 do MediaWiki, que foi lançado em 28 de julho. Esta versão também pode ser utilizada com o MediaWiki 1.15.

Wikilog é a extensão do MediaWiki que roda este blog. Wikilog melhora o MediaWiki com alguns recursos de blog comuns, tornando-o um híbrido wiki-blog.

Wikilog v1.0.0 lançado

Wikilog.png

A primeira versão estável do Wikilog, 1.0.0, foi lançada hoje. Wikilog é a extensão do MediaWiki que roda este blog. Wikilog melhora o MediaWiki com alguns recursos de blog comuns, tornando-o um híbrido wiki-blog.

Minicurso VCS na Seccomp 2009

Ministrarei mais uma edição do minicurso sobre Sistemas de Controle de Versões, desta vez na XVII Semana da Ciência da Computação, do curso de Ciências da Computação do IGCE/UNESP Rio Claro. O minicurso será no dia 12 de novembro, à partir das 14h, e terá quatro horas de duração, incluindo um intervalo.

Ainda não tenho informações sobre inscrições.

Importação de Livros

AST Computer Networks 4th Cover.jpg

Tive que investir na compra de um novo livro, Computer Networks, de Andrew S. Tanenbaum, para o próximo curso que eu vou ministrar. Eu tinha a edição anterior deste livro, traduzida. O problema é que a edição anterior é de 1996, e já estava muito desatualizada, precisava de algo um pouco mais recente.

Fui então pesquisar os preços...

→ continuar lendo...

Experiência como professor universitário

Eu terminei meu mestrado em fevereiro deste ano, e logo em seguida comecei a ministrar aulas na UNESP de Rio Claro, no mesmo curso em que me formei em 2005. Quando defendi minha dissertação de mestrado, em abril, eu já estava em meio às aulas.

Eu já havia ministrado palestras e minicursos sobre variados assuntos, além das várias apresentações para o grupo de pesquisa durante o curso de mestrado. Além disso, o Programa de Aperfeiçoamento de Ensino (PAE) da USP também colaborou bastante para a minha experiência. Contudo, essa foi a primeira vez que eu assumi a responsabilidade de uma disciplina universitária curricular para um semestre inteiro. Eis algumas coisas que eu aprendi durante o último semestre:

→ continuar lendo...

M.Sc.

Não costumo escrever sobre mim, mas hoje é especial e merece um texto. Acabei de receber meu grau de Mestre em Ciências da Computação. De agora em diante eu sou um Mestre em Ciências, ou M.Sc.

O resumo da minha dissertação:

Este trabalho apresenta o projeto e a implementação da política de escalonamento com suporte à migração de processos JUMP. A migração de processos é uma ferramenta importante que complementa a alocação inicial realizada pela política de escalonamento em um ambiente paralelo distribuído, permitindo um balanceamento de carga dinâmico e mais refinado, resultando em um melhor desempenho do ambiente e menor tempo de resposta das aplicações paralelas distribuídas. A nova política unifica a alocação inicial e migração de processos em um único algoritmo, de forma a compartilhar decisões para o objetivo comum de prover um melhor desempenho para aplicações de uso intensivo de processamento em clusters heterogêneos. A política é implementada sobre o ambiente de escalonamento flexível e dinâmico AMIGO, adaptado para o suporte à migração de processos. A avaliação de desempenho mostrou que a nova política oferece ganhos expressivos nos tempos de resposta quando comparada às outras duas políticas de escalonamento implementadas no AMIGO, em quase todos os cenários, para diversas aplicações e diversas situações de carga do ambiente.

Minha mais sincera gratidão ao meu orientador Dr. Marcos José Santana, e ao Conselho Nacional de Desenvolvimento Científico e Tecnológico (CNPq).

O fotógrafo mal-preparado

Essa é uma notícia simples, provavelmente sobre um acontecimento tão comum e trivial que sequer chegará à mídia em massa, mas que é um bom exemplo de um grande problema com a forma como computadores são utilizados na nossa sociedade:

Juiz condena estúdio fotográfico a indenizar clientes
Tribunal de Justiça do Estado de Goiás, 16/mar/2009. Texto por Myrelle Motta.

O juiz Luís Antônio Alves Bezerra, do 8º Juizado Especial Cível de Goiânia, condenou um estúdio fotográfico de Goiânia a indenizar um casal em R$ 4 mil, por danos morais, e R$ 400 reais, por danos materiais, pela perda de metade das fotos de seu casamento. (...)

Eles pagaram à vista 800 reais por 50 fotos, mas o cartão de memória de um dos cds enviados para a escolha das fotografias estava danificado, sem possibilidade de recuperação. (...)

Os clientes do estúdio fotográfico, citados na notícia, são meus parentes. O problema está descrito de forma um pouco confusa no texto da notícia. Em resumo, o fotógrafo utilizou uma câmera digital com cartão de memória para fotografar o casamento. Quando este foi recuperar as fotografias do cartão de memória, elas não estavam lá.

→ continuar lendo...

Sequestro de DNS

Sempre tive o costume de usar os meus próprios servidores DNS recursivos, por várias razões: maior confiança (sou eu que administro), maior disponibilidade (o provedor já apresentou inúmeros problemas com seus servidores DNS) e também porque eu hospedo um domínio de uso pessoal para a minha rede local.

Em casa, utilizamos uma conexão de banda larga fornecida pelo provedor Speedy da Telefônica. A rede é compartilhada por um roteador caseiro, os outros computadores da casa utilizam as configurações do próprio roteador para navegação, ou seja, o DNS é direcionado para o roteador, que por sua vez redireciona para o provedor.

No começo desse ano (2008), por uma razão qualquer eu estava acessando a Internet pelo computador de minha mãe, quando digitei um endereço errado e para minha grande surpresa fui redirecionado para uma página do provedor.

→ continuar lendo...

Convertendo rapidamente a codificação de nomes de arquivos

As vezes, pessoas me mandam arquivos (geralmente empacotados em algum formato que não reconhece Unicode) com nomes em codificações de caracteres que diferem da configuração do meu sistema, e eu acabo com nomes de arquivos quebrados em meu sistema de arquivos.

Algum tempo atrás eu escrevi um script, i18n-rename, para converter rapidamente a codificação de caracteres de um conjunto de nomes de arquivos. Uma vez que isso pode ser útil para mais alguém, estou liberando ao público.

Minicurso VCS na SemComp11

Ministrarei novamente o minicurso sobre Sistemas de Controle de Versões durante a 11ª Semana da Computação (SemComp) do ICMC/USP São Carlos, no dia 14 de outubro, a partir das 8:00. O minicurso terá seis horas de duração, mais intervalos para almoço e coffee break.

Palestra sobre Controle de Versões

Dia 1º de Setembro passado ministrei uma nova versão da minha palestra sobre Sistemas de Controle de Versões, para meu laboratório de pesquisa no ICMC/USP São Carlos. A apresentação foi atualizada para abordar sistemas de controle de versões distribuídos, e a ferramenta Mercurial (além do Subversion). A apresentação está disponível no link acima.

Um resumo sobre a vulnerabilidade do DNS

Este é um resumo dos eventos envolta da recentemente descoberta vulnerabilidade do Sistema de Nomes de Domínio (DNS). Em poucas palavras, um dos protocolos de núcleo da Internet possui uma séria falha de projeto. Esta falha compromete todo o sistema de nomes de domínio, a privacidade e a segurança de todos os usuários da Internet. Não há solução real pronta para desenrolar hoje, mas correções para mitigar o problema foram liberadas. É importante verificar seu sistema e tomar ação imediata se você descobrir que está vulnerável.

Continue lendo para mais informações.

→ continuar lendo...

Otimizando conexões ADSL

ADSL Transfer.png

Muitos usuários de Internet banda larga já presenciaram este efeito: ao começarmos um upload, a taxa de transferência de download fica severamente prejudicada. Usuários Linux podem se beneficiar de toda uma infraestrutura de gerenciamento de largura de banda embutida no núcleo do sistema, através da qual é possível otimizar o uso da conexão de forma a obter o máximo de transmissão sem prejudicar em nada o recebimento.

→ continuar lendo...

Visualizações