Puntero automático con contador de referencias

C++ es un lenguaje que no tiene manejo automático de memoria incorporado en su versión más pura. Es decir, en los compiladores o IDEs más populares entre quienes se dedican a este lenguaje. Existen algunas implementaciones de garbage collectors para C++ y las versiones más nuevas del estándar incluyen una implementación de puntero automático en la biblioteca de plantillas STL. Pero consideraría correcta la afirmación general de que el manejo de memoria en el lenguaje es manual.

La semana pasada estaba pensando en un ejercicio muy simple que requiriese conocimiento de varios aspectos del lenguaje en una cantidad de líneas reducida. Y se me ocurrió que programar un puntero automático podría cumplir con la premisa. Este es el resultado.

Continue reading Puntero automático con contador de referencias

Encontrar las direcciones MAC en una red

Cuando una red ethernet es suficientemente grande como para que el administrador no pueda tener a la mano todas las bocas de conexión, la simplicidad de conexión de esta topología se puede convertir en un problema. Descubrir los dispositivos que se encuentran conectados en un momento determinado, puede resultar complejo. Y es algo que debí solucionar más de una vez. Pero en la última ocasión se me presentó el requerimiento adicional de automatizar el control. Así que tras buscar infructuosamente una solución adecuada terminé programando una pequeña herramienta que obtiene las direcciones MAC de todos los dispositivos conectados en la red (siempre y cuando implementen el protocolo IP). Y compara el resultado con un listado de direcciones autorizadas, indicando aquellas encontradas en la red pero no listadas.

Continue reading Encontrar las direcciones MAC en una red

Borrar definitivamente archivos de un disco

Aunque podemos sorprendernos, hay muchas personas que utilizan computadoras y no saben que cuando eliminan un archivo (incluso cuando lo eliminan de la papelera de reciclaje) la información no se borra del disco realmente. Para quien ha llegado aquí sin saber esto, aclaro. Lo que ocurre en realidad es que el sistema operativo marca el archivo como eliminado y ya no lo muestra cuando se inspecciona el disco. Pero la información permanece allí. Y sólo se pierde realmente cuando, durante el proceso de guardar nueva información en el disco, el sistema operativo se ve obligado a escribir sobre el espacio en donde antes había un archivo.

Continue reading Borrar definitivamente archivos de un disco

Una virtud poco conocida de Daphne

Hace unos años agregué en Daphne un módulo para recibir información estadística sobre qué opciones los usuarios prefieren, o los comandos que ejecutan más frecuentemente. Cuando tuve datos significativos me sorprendió saber que la mitad de los usuarios que ejecutan la herramienta en el inicio, no utilizan la integración con el explorador de archivos de Windows.

Daphne integración con Windows explorer

 

Continue reading Una virtud poco conocida de Daphne