Archivo categoría Tecnologia
Linux Home Media Center para todos
Por TheCoffeMaker - OpenSource, Tecnologia - 10/05/2010
Güenas y Zantas
… al fin pude encontrar 5 minutos para escribir y de paso una idea sobre la cual escribir jejeje … en fin … Hoy voy a hablar sobre Home Media Center con Software Libre y Linux.
Primero veamos que Software tenemos disponible, sin contar que podemos configurar el Gnome o KDE para este fin, pero personalmente no me interesa, de hecho, antes de comprar la tele tenia mi Gnome configurado para que parezca un HMC, pero carece de un par de cosas que tuvieron que programarse manualmente y no son para un usuario común de Linux, por que nos orientaremos al usuario medio, a lo fácil
Software para Home Media Center OpenSource
- Xbmc (Para Xbox y Linux)
- Moovida
- Boxee
- MythTV
- Element OS (Distribución Linux)
- GeeXboX (Distribución Linux)
- LinuxMCE (Distribución Linux)
- Mythbuntu (Distribución Linux)
- MythDora (Distribución Linux)
Debido a que mi sistema además funciona como servidor para otras tantas cosas como p2p y subversion, he decidido no depender de una distribución dedicada. Además MythTV, si bien es excelente no es lo que estoy buscando sobre todo por la complejidad que tiene para configurarlo. Boxee, para Argentina tenia algunos problemas con el tema de la localización y restricción de algunos contenidos … esto era hace algún tiempo atrás, si quieren probarlo y comentarnos como funciona todo sera bienvenido. Xbmc, no tiene lo que tiene Moovida, que justamente es por una de las cosas por las que me quedo con Moovida, compatibilidad con GrooveShark … asi pues … veamos que es esto del Moovida.
Veamos cuales son las características de Moovida:
- Libre, Media Center de Codigo Abierto
- Interface elegante e intuitiva optimizada para HDTV
- Administración sencilla de videos, musica e imagenes.
- Acceso a una gran rango de contenido multimedia on-line: YouTube, SHOUTcast, Flickr, GrooveShark, …
- Enriquece tu contenido con características de contextualizacion, como artes de tapa, sinopsis de películas y mas!
- Excelente usabilidad, pesado para ser usado desde el sillón.
Una ves que lo tenemos instalado, podremos ubicarlo en la seccion de sonido y video de nuestro menú de aplicaciones. Pero … ¿si yo quiero que Moovida reemplace al Gnome? ¿Como lo puedo hacer? Bueno … pues eso es lo mas facil, y una de las cosas que nos permite hacer Linux que son tan maravillosas.exec moovida
headless = ’0′
touchscreen = ’0′
disable_togglefullscreen = ’0′
use_gtk = ’0′
start_fullscreen = ’1′
window_width = ’1920′
CUDA, exprimiendo GPUs
Por TheCoffeMaker - OpenSource, Programación, Tecnologia - 18/02/2010
CUDA, Compute Unified Device Architecture, es una tecnología desarrollada por nVidia que permite usar el poder de calculo de los GPUs. Esta tecnología obviamente no es nueva, pero ha experimentado una gran aceptación dentro del mundo computologo
ya que nos permite usar lo que muchas veces solo sirve para jugar
. CUDA fue introducido en Noviembre del 2006 como una arquitectura de propósito general para computación paralela, que aprovecha al máximo los motores computacionales de los GPUs de nVidia para resolver problemas complejos de una manera mucho mas eficiente que los CPU.
Debido a la gran demanda del mercado para renderizar gráficos 3D de alta definición y procesamiento en tiempo real, los GPUs, o Unidades de Procesamiento de Gráficos, evoluciono mas allá de los limites impuestos por los CPUs, proveyendo procesadores con muchos núcleos, un ancho de banda de memoria excepcional y una tremenda fuerza computacional, lo que permite ejecutar muchas tareas e hilos de procesamiento en paralelo. Esto se logra gracias a que el GPU tiene mas transistores especializados en procesamiento de datos a diferencia del CPU, que debe cachear datos y controlar el flujo de control.
En definitiva, si hablamos de soluciones a problemas que pueden ser diseñadas como ejecuciones en paralelo y que necesitan un gran poder de calculo aritmético, lo mejor seria poder utilizar el GPU para resolver estos problemas, ya que es justamente para lo que fue diseñado el GPU y de lo que se tratan las tareas de renderizado, procesamiento en paralelo de grandes volúmenes de datos de punto flotante en tiempo real.
Pero …. todo lindo dirán ustedes … ¿Que ventajas me da CUDA por sobre otras APIs gráficas? … bueno …
1ro. y principal es que CUDA no es una API gráfica, es una tecnología que nos permite utilizar el poder de calculo de los GPUs para otras tareas, con lo cual no podremos renderizar texturas, por ejemplo.
2do. Se puede consultar cualquier posición de memoria, o lo que se denomina lecturas dispersas.
3ro. Existe un área de memoria compartida, la cual puede ser accedida por los hilos de ejecución, este área de memoria es extremadamente rápida, lo que nos permite utilizarla como cache.
4to. Soporta enteros y operaciones a nivel bit.
5t0. Debido al gran ancho de banda de memoria, las lecturas son extremadamente mucho mas rápidas que un CPU.
Para la gran mayoría de desarrolladores que me he cruzado en lo que llevo de vida, hablar de procesamiento en paralelo es complicarse la vida, obviamente por que no es un tópico que se vea a fondo en los primeros cursos de programación y teorías de programación en la facultad. De hecho, si se tiene la suerte de verlos, se lo hace muy por arriba. Esto podría haber sido valido durante los 80′s y 90′s … donde corríamos sobre procesadores de un solo núcleo y se sabia que correr hilos en paralelo no era mas que correr tareas paso a paso con una buena planificación del CPU. Pero ahora, con el advenimiento de CPUs de núcleos múltiples y GPUs de muchísimos núcleos (sí, con múltiples nos quedamos cortos
) es necesario cambiar nuestra estructura mental y empezar a pensar realmente en computabilidad paralela y para esto es que se crean los modelos de programación escalable, como CUDA, para aprovechar al máximo el gran incremento de núcleos de procesadores.
CUDA expone al programador, como un conjunto mínimo de extensiones de lenguaje, 3 abstracciones principales, una jerarquía de grupos de hilos, memoria compartida y barreras de sincronización. Estas abstracciones guían al desarrollador a particionar problemas para que se creen aplicaciones que de forma transparente escalen su paralelismo para poder incrementar el numero de núcleos computacionales. La estructura que se utiliza en este modelo esta definido por una matiz (o ventor de hasta 3 dimensiones) dentro del cual hay bloques de hilos.
Por el momento voy a seguir aprendiendo sobre esta tecnología y en el futuro posteare cosas mas concretas … so far … les dejo algunos links de interés.
Tarjetas graficas que soportan CUDA
The Cost to Play: CUDA Programming | Linux Magazine
Algunos proyectos que se benefician de esta tecnologia:
SETI@Home
Los investigadores en el campo científico de SETI recibieron un incremento masivo en poder de cómputo, cuando Nvidia y BOINC liberaron un cliente optimizado que le permitirá a SETI@home ser acelerado sobre GPUs GeForce. SETI@home, el proyecto más grande de BOINC con casi 200,000 usuarios activos, busca inteligencia extraterrestre mediante el uso de telescopios de radio para escuchar señales de radio de amplitud de banda corta provenientes del espacio.
GPUGRID
GPUGRID, el primer proyecto de BOINC en usar las GPUs Nvidia GeForce con tecnología CUDA para cómputo, utiliza las tarjetas de gráficos basada en Nvidia en las PCs participantes para computar simulaciones biomoleculares de alto desempeño para la investigación científica. Agregar el soporte para las GPUs Nvidia derivó en 1,000 GPUs activas que ofrecen la misma cantidad de poder de cómputo en por lo menos 20,000 CPUs en proyectos similares, brindando una velocidad promedio de hasta 20 veces.
Einstein@Home
La tecnología Nvidia CUDA pronto estará impulsando el tercer proyecto más ampliamente utilizado por BOINC, Einstein@Home, que utiliza el cómputo distribuido para buscar estrellas de neutrones giratorios (también llamadas pulsares) usando datos de detectores de ondas gravitacionales.
Saludos!
Video Streaming en Linux con WebCamStudio
Por TheCoffeMaker - GNU/Linux, OpenSource, Tecnologia - 10/11/2009
Al fin un post como la gente!!! … jajajaj … no era que no tenia sobre que escribir, no señor, tengo demasiado trabajo y tres posts que parecen la biblia (pero se que les va a servir, sobre todo a los que estan interesados en el OpenSource).
Bien, hace unas cuantas semanas atras habia querido empezar un canal de streaming, al principio para ver de que va todo eso y como es el soporte para Linux … bien … nunca pude hacer un puto stream de video y/o sonido todo por que el fucking Flash 10 no anda ni a palos … ¿por que? … realmente no lo se, se subieron varios bugs sobre eso a Adobe pero nunca solucionaron nada … en fin … siempre hay un workaround en Linux obviamente.
El programa que entra en escena es el WebCamStudio, un sencillo programilla hecho en Java, OpenSource, que nos permite hacer muchas cosas con nuestra camara … desde ponerle efectos on the fly … imaginense poder usar Skype con efectos ![]()
Vamos a pegar un salto rapido para los que lo quieren probar ya … facil … bajan el programa desde sourceforge, luego configuran su flash, utilizando este link, para que el sitio que queremos usar para streaming (ustream por ejemplo) tenga permisos para usar el mic y la webcam y listo! … ya podemos empezar a hacer streaming!!!!
Les dejo el video que encontre en la pagina oficial
Cortito y al pie
… despues seguro voy a ir metiendo truquitos que voy encontrando … Saludos!
Skype y GoogleEarth en Debian 64 a la MacGyver
Por TheCoffeMaker - GNU/Linux, Tecnologia - 14/08/2009
Hace un par de dias que me vengo resistiendo a la actualizacion de los paquetes de Debian testing … mas que nada por que queria verificar que metia y que sacaba … pero, en un dia de vagancia le di actualizar sin verificar nada
… resultado … googleearth y skype dejaron de funcionar … dough!

Buscando en la web y consultando en canales de IRC me pasaron el dato de ia32-apt-get, pero el problema fue que desde unstable sacaron ese paquete y en testing y stable tampoco esta, por lo cual no ya no puedo instalar librerias de 32bits y mantenerlas con apt.
Solucion, simple … bajar el paquete que contiene las librerias, desempaquetarlo a mano (dpkg -x paquete destino) y copiar las librerias a /lib32.
Pero … ¿como saber en que paquete esta la libreria requerida por determinado programa?
Bueno, si estamos haciendo pining entre arquitecturas podemos usar dpkg -s … pero yo no estoy haciendo pining entre arquitecturas, sobre todo por que puede llegar a traer algunos problemas por la ubicacion de las librerias y/o programas … en fin … para encontrar que paquete tiene las librerias que necesitamos vamos a la pagina oficial de paquetes de Debian y buscamos el formulario de busqueda “Buscar en el contenido de los paquetes” … ponemos el nombre de la libreria y nos tira una lista de paquetes, de todas las versiones y arqutecturas … seleccionamos la que nos interesa, la descargamos, la descomprimimos usando dpkg -x como lo indique anteriormente y copiamos las librerias a /lib32, en caso de ser necesario le cambiamos el dueño y grupo a root y listo! … problema solucionado … googleearth y skype andando … ojo! … no es la forma mas limpia de hacerlo … vamos a tener que mantener esos archivos a mano … yo me he guardado una copia de los paquetes para mantenerlos en caso de ser necesario.
Saludos!
Espero que les sirva.
Dell E6500, Logitech VX Nano y Debian
Por TheCoffeMaker - GNU/Linux, OpenSource, Tecnologia - 10/08/2009
Comprar una laptop y pensar en no utilizar Windows en absoluto muchas veces puede llegar a sonar descabellado, no por el hecho de no usar Windows en si, sino por el hecho de que muchas empresas utilizan hardware solo compatible con Windows. De hecho, comprar una laptop 0km sin Windows es una de las tareas mas dificiles de conseguir, Dell tiene algunos modelos a los cuales se les puede sacar el sistema operativo “recomendado” por ellos, descontando los costos de licencia, que … creanme … hacen una diferencia. Fue asi que me decidi por una Vostro 1720 … sí algo grande, quizas me hubiese arrepentido de haberla comprado … pero Dios estuvo de mi lado XD … y Dell empezo a tener problemas en la linea de produccion y no me la podian entregar … por lo que empezamos las negociaciones para no tener que iniciar acciones legales ya que la compra estaba cerrada y pagada completamente. En fin … Dell accedio a darme una E6500 con el hardware que habia pedido
(me salio redondisima la compra jejeje) , el unico inconveniente era que no podian sacarle el Windows … pero, como se hacian cargo de la diferencia no tenia ningun problema con que venga con Windows total se lo iba a sacar igual
… de todas formas, siendo previsor les pregunte si perdia la garantia y … la respuesta fue satisfactoria para mis oidos …
“El cliente es dueño de la maquina y puede hacer lo que quiera, la garantia de harware sigue vigente, pero, no podran dar soporte de software ni tampoco aplica la garantia en caso de fallos de hardware por culpa del sistema operativo”
Pffff … ¿Quien necesita soporte de software teniendo una comunidad tan grande como es la del OpenSource? Nunca se me ha quemado ninguna maquina por usar Linux … tan solo hay que saber que se hace
… asi que … chau Windows … bienvenido Debian.

E6500 con Debian instalado
Luego de un par de meses de espera, desde el pedido de la Vostro … ha llegado mi E6500, tenia Windows XP instalado (lo que me llamo la atencion, pense que me la iban a mandar con Vista, pero como Dell recomienda el downgrade mandaron XP instalado con un CD de XP y otro de Vista …
) por lo que la prendí solo para ver que todo estuviera en orden y acto seguido, meter un cd de netinstall de Debian y a rebootear.
No voy a explicar el proceso de instalacion de Debian, la realidad es que es muy sencillo y ademas hay miles de guias polulando por la internerd, pero si voy a comentarles como he logrado hacer andar todo el hardware.
Para instalar el sistema asegurence de tener una conexion a internet cableada, ya que la placa Wifi Broadcom no es reconocida por ningun modulo del kernel, para poder utilizarla vamos compilar el modulo desde los drivers de Broadcom … los pasos son realmente muy sencillos, bajamos el driver oficial de la pagina de Broadcom y luego seguimos las instrucciones del archivo txt que esta en la misma pagina.
Listo, ya tenemos wifi configurado, el proximo paso es configurar las X para que anden como la gente con la Nvidia Quadro. Esto tambien es sencillo … utilizando apt-get instalamos los paquetes propietarios de nvidia y luego ejecutamos nvidia-xconfig … hay otras formas de hacerlo … pueden googlear y van a encontrar muchisima info al respecto.
En caso de que hallamos instalado una version de 32 bits de Debian, y que tengamos 4 Gb de Ram o mas, veremos que el kernel solo nos toma 3.5 aprox de los 4 Gb de Ram, esto se debe a que el espacio de direcciones por defecto para 32 bits esta restringido, lo que se puede hacer es instalar un kernel BIGMEM, que obviamente el uso completo de la memoria vendra con una leve disminucion de la performance … pero … no es para preocuparse.
No hay mucho mas tunning para hacerla andar bien, salvo que quieran poder controla el mouse pad, para esto hace falta instalar los paquetes gpointing-device-settings y xinput, y luego configurar las x para que utilizen el driver del mouse correspondiente … esto se hace facilmente, editando el xorg.conf
Section “InputDevice”
Identifier “Mouse0″
Driver “synaptics”
Option “Protocol” “auto”
Option “Device” “/dev/psaux”
Option “Emulate3Buttons” “no”
Option “ZAxisMapping” “4 5″
Option “SHMConfig” “true”
EndSection
Con esto configurado, podremos desactivar el mousepad, personalmente me molesta mucho usarlos, salvo en situaciones en donde no tengo lugar para usar un mouse externo.
Otro tema que hay que tener en cuenta, es la instalación del paquete de librerias y herrameintas SMBIOS, SMBIOS es un esfuerzo de los fabricantes de hardware para poder estandarizar la representacion de datos de administracion de hardware para ser consumidos por el sistema operativo y sistemas de administracion de configuraciones de hardware. Estos paquetes son libsmbios2, libsmbios-bin y libsmbios-doc. Con estos paquetes instalados vamos a poder hacer unas cuantas cosas, como por ejemplo actualizar la BIOS del sistema cuando sea necesario. Para mas info pueden visitar la pagina del proyecto.
Veamos ahora un poco del harware
… tuve en mis manos varias maquinas Dell y tambien HP (actualmente en el trabajo me dieron una Compaq 6910p … una porqueria comparada con la E6500) y la verdad es que siempre he preferido las Dell o IBM en su defecto.

E6500 Full Metal Jacket
Esta hecha completamenta de aleación de magnesio, lo que le da una durabilidad y rigidez incomparables, como puden ver en las imagenes, las bisagras son de aluminio, hechas en un solo bloque, lo que le da una firmeza notable, casi sin tambaleos.

Bisagras de un solo bloque de aluminio
En cuanto al diseño, bueno … Dell ha logrado transmitir una maxima seriedad y profecionalismo incomparables … me encanta el negro matte … es muy discreto y los LEDs azules, ubicados arriba del teclado rompen con el negro profundo de la maquina, dandole una linda vista. Quizas paresca un poco cuadrada, pero las lineas del diseño son bien minimalistas, no tanto como la Adamo … pero suficiente como para ser linda
.

Elegancia sin mucho esfuerzo
Con respecto a la conectividad, la Dell E6500 presenta un completo abanico de posibilidades, cuenta con un puerto e-SATA, un Firewire ieee 1394 y 3 USB, uno de los cuales permite compartir energia hasta cuando la maquina esta apagada, permitiendo cargar dispositivos como celulares utilizando la bateria del equipo. Tambien cuenta con un conector VGA y un DisplayPort. Ranura PCMCIA, SmartCard y un slot ExpressCard. Ademas de un modem (la mia no lo tiene pero esta tapado con un plastico que indica que alli va un modem
), BlueTooth con utra broadband (UBB), Wifi con soporte de la nueva norma n-draft.

De izq. a der.: USB Powershare, E-Sata, VGA, ExpressCard, SD y slot de HD
En el frente solo vemos el boton para abrir la maquina, nada mas

De Izq. a Der.: Ranura PCMCIA, CD-RW/DVD+-RW, SmartCard, switch Wifi y BlueTooth, puerto ieee 1394, miniplugs de sonido y dos puertos USB

De izq. a der.: Modem (patado xq no lo pedi), Ethernet, Bateria, DisplayPort y Power
Tambien cuenta con soporte de banda ancha UMTS, HSDPA y HSUPA … la SIM Card del provedor de banda ancha se coloca debado de la ranura de la bateria.

Stol para meter la SIM Card
Toda una bestia esta maquina
, les dejo otras fotos:

PowerShare USB, nos permite compartir energia con dispositivos USB aunque la maquina este apagada.

Debajo de la ExpressCard y la SD, podemos ver la tapa donde se aloja el HD, permitiendo una facil extranccion.

Las teclas de Insert, Suprimir, Inicio, Fin, Retroceder y Avanzar Pagina estan ubicadas sobre el BackSpace ... muy comodas

WebCam 2 mpx, led testigo de activacion de webcam y Mic

Boton Power

Vista de la base ... un solo panel de magnesio, facil para desarmar

Ficha del cargador con led para ubicarla facilmente en la oscuridad

Brushed Black Metal! ... es hermosa ... no puedo decir nada mas
Bien, como les conté anteriormente, me es muy incomodo utilizar el mouse pad, sobre todo cuando se trata de escribir documentos y programar, ya que suelo apollar los pulgares debajo de la barra espaciadora, muchas veces tocando el mousepad, resultando en un completo desastre ya que me voy a escribir en cualquier lado
… es por eso que compre un mouse inalambrico, un Logitech VX Nano … alto mouse
.

Logitech Nano VX


Nano, por que el transmisor USB es chico y bastante comodo, ya que no hace falta sacarlo cuando guardamos la maquina
. Como veran en la foto es tan diminuto que ni molesta. No requiere instalacion de ningun tipo, lo conecte y salio andando sin problemas, con todos los botones … una cosa que hay que destacar, es la modolidad de fast-track the la rueda, presionando sobre esta, se destraba y funciona girando casi sin resistencia, facilitando la navegacion de documentos y paginas largas … ademas la calidad del producto es excelente.
Saludos!




Comentarios recientes