Entradas

Mostrando entradas de agosto, 2015

Tres proyectos didácticos para Edison Arduino

Desde ya algunos meses que tenía la curiosidad de hacer algunas pruebas y aprender como programar las tarjetas arduino. Josech me hizo el favor de agenciarme una Edison con su breakout board y llegó hace unos 5 días a casa. El primer experimento fué hacer parpadear un led, cosa que fué sencilla. Realicé el parpadeo de led desde arduino IDE y con python.
Ahora en mente tengo algunos proyectos meramente didácticos para los cuales necesitaré algunos sensores: Un medidor de litros despachados (para ver que te den litros de a litro en las gasolineras)Puede subir los resultados a internet, ya que la Edison tiene wifiPuede geolocalizarse con su respectivo GPS para referenciar a la gasolineraUn display que vaya en la luneta trasera del auto (que despliegue un texto que tu envíes con voz)Un despachador de comida de perro automático (que de N kg de comida cada cierto tiempo) Ya les platicaré que tal van esos proyectitos.

Getting the Pktgen LUA exposed functions from pktgen-dpdk

Currently there's no documentation on which functions are exposed to LUA from Pktgen.

Not documented and got this hint from Keith:
Search at the bottom of the ./app/lpktgenlib.c file to see the LUA functions.

  // Set the single packet value on main screen
  {"set_mac",     pktgen_set_mac},     // Set the MAC address for a port
  {"set_ipaddr",  pktgen_set_ip_addr}, // Set the src and dst IP addresses
  {"mac_from_arp",  pktgen_macFromArp},      // Configure MAC from ARP packet
  {"set_proto",   pktgen_prototype},      // Set the prototype value
  {"set_type",    pktgen_set_type},    // Set the type value

For instance you can now call the pktgen.set_type function on your lua script.

Anotaciones: negar un patrón de bash

En ocasiones me sucede que quiero utilizar la negación de un wildcard para eliminar archivos o moverlos en bash. Siempre olvido como hacerlo así que aquí dejo la nota:
http://www.gnu.org/software/bash/manual/html_node/The-Shopt-Builtin.html
$ shopt -s extglob (extended pattern matching)
Quiero eliminar todo lo que haya dentro de /tmp excepto lo que empiece con abc1*
$ rm -fr !(/tmp/abc1*) 
Fin

What is DPDK about?

Imagen
Before a couple of months ago I was not aware of a new technology called DPDK intended to accelerate packet processing on common commodity servers. Instead of running propietary hardware with high cost licenses DPDK allow a very modest server to process 24x the amount of packets compared to a single core network appliance. It use an source BSD license.

A brief and easy 4 minutes explanation of DPDK can be found on the following video:


Next just for fun experiment would be to build a virtualized DPDK appliance under openstack.

HipHop Virtual Machine or HHVM

What is this about?

Taken from the official HHVM website:

"HHVM is an open-source virtual machine designed for executing programs written in Hackand PHP. HHVM uses a just-in-time (JIT) compilation approach to achieve superior performance while maintaining the development flexibility that PHP provides."

"Rather than directly interpret or compile PHP code directly to C++, HHVM compiles Hack and PHP into an intermediate bytecode. This bytecode is then translated into x64 machine code dynamically at runtime by a just-in-time (JIT) compiler. This compilation process allows for all sorts of optimizations that cannot be made in a statically compiled binary, thus enabling higher performance of your Hack and PHP programs."

Worth taking a look at this technology.

Checking your linux hardware clock source

Current clock source:
# cat /sys/devices/system/clocksource/clocksource0/current_clocksource
tsc

And about the available clock sources:
# cat /sys/devices/system/clocksource/clocksource0/available_clocksource
tsc hpet acpi_pm

Source: http://serverfault.com/questions/459901/hpet-missing-from-available-clocksources-on-centos

¿Qué es lo que nos motiva?

1 de Agosto de 2015.

A un año de haber tomado un rumbo y ritmo distinto al que había llevado laboralmente durante aproximadamente 6 años. Se acaba de cumplir una vuelta al sol trabajando en Intel, y durante esta vuelta he cambiado muchas percepciones y aprendido bastantes cosas en el camino.

El aprendizaje técnico ha sido una rampa empinada, desde los fierros hasta el software y middleware. Llena de high performance computing, benchmarks, virtualización, mediciones, instrumentación, código, scrums, automation.

Es un tanto liberador poder proponer soluciones, sugerir cambios y que estos sean tomados en cuenta. Dice el video de ¿Qué es lo que nos motiva? que para trabajos que requieren habilidades específicas, 3 cosas importan mucho para mantener un "engagement": autonomía, maestría y propósito.

Para no hacer largo el monólogo: FIN