Category Archives: Bibliotecas

Implementando malloc() e free() — dividindo blocos grandes

When implementing malloc(), it is important to consider the size of the allocated blocks. For example, reusing blocks too big for smaller requests cause memory waste. How to solve that? Let’s see on this post of our series on malloc() and free().

Implementando malloc() e free() — reduzindo ainda mais o heap

Este post faz parte de uma série sobre como implementar as funções malloc() e free(). No artigo anterior, aprendemos como reutilizar blocos de memória. Foi um grande avanço, mas há muito mais a melhorar. Um exemplo é a redução do tamanho do heap. Quando liberamos o último bloco de memória, movemos o topo do heap […]

Implementando malloc() e free() — reutilizando blocos de memória

Este post faz parte de uma série sobre como implementar as funções malloc() e free(). No artigo anterior, alteramos nossas funções para liberar alguns blocos de memória. Contudo, isto apenas ocorria se os blocos liberados fossem desalocados do mais novo ao mais antigo. Isto não faria muita diferença. Raramente a memória alocada dinamicamente se comporta […]

Implementando malloc() e free() — adicionando metadados aos blocos de memória

Este post faz parte de uma série sobre como implementar as funções malloc() e free(). Anteriormente, fizemos uma implementação são simplória que praticamente não libera memória nenhuma: um ponteiro aponta para o último bloco alocado, o que permite que abfree() o desaloque, mas somente ele. Uma opção melhor é fazer o último bloco apontar para […]

Busca textual no Liferay Portal com Elasticsearch – Parte 1: História

Implementar busca textual em um portal web é um desafio e tanto! Como resolvemos no Liferay? Vamos ver a história