Notas Anteriores

feed icon RSS 


Avisos Destacados

Campaña

Control de Calidad

10 años de XMLW3C XML 10th anniversary

 Esta pagina cumple con 

 ¡CSS Válido! Valid XHTML 1.0 Transitional

Derechos, Legales...

Creative Commons License
Esta obra está registrada bajo una Licencia Creative Commons Atribución 2.5 Argentina .

Destacado

 

Servidor Apache+php+mysql con Gentoo

Experiencia interesante fue armar un Web Server con Gentoo. Más allá de mi preferencia por Gentoo, no es muy común pensar en esta distribución al momento de montar un servidor productivo.
Aún así, opté por usar mi distribución preferida, y de hecho estoy bastante contento con el rseultado.
Los pasos para llevarlo adelante son los del Handbook para x86. En caso de utilizar otra plataforma, solo deberán seguirse el manual apropiado.
Respecto de los pasos para montar la infraestructura:
Hay que modificar la variable USE del /etc/make.conf para que se vea asi:

USE="apache php mysql"

Luego ejecutar:

# emerge --newuse world

De otro modo, tambien puede utilizarse el comando emerge directamente:

# emerge mysql apache dev-lang/php

Al finalizar este comando, deberiamos contar ya con nuestro Web Server Gentoo instalado y en condiciones de prestar servicios.
Respecto de los upgrade, Gentoo cuenta con un sistema de proteccion de los archivos de configuracion en /etc, pero debera probarse antes el procedimiento en un servidor de Desarrollo/Testing.

Qemu y Redes

Iniciamos una nueva etapa, empiezo a regalar experiencias de otro tipo. En este caso, tecnica. Desde hace algun tiempo, encontre un emulador de PC muy interesante, llamado QEMU.
Qemu tiene muchas particularidades, entre ellas, que no simula una PC x86 sino que tambien lo hace con procesadores Sparc, PPC y otros. Esto lo convierte en una herramienta sin igual para estudio y trabajo en Tecnologia.
Mas alla de la versatilidad respecto de las plataformas, no emula completamente el hardware. Por esta razon, pedazos enteros de Codigo son traspasados directamente al procesador, sin traslacion de direcciones ni instrucciones, lo que lo hace muy, pero muy rapido.
Notablemente mas rapido que las variante comerciales, y en encima, GRATIS! Dios salve a la comunidad.
Lo unico un poco dificil que tiene es el networking, al menos en Linux. Por esta razon, transcribo algunos datos interesantes para configurar networking en linux con Bridges.
Esta configuracion es para Gentoo 2007.1, pero sirve para otras distribuciones con cambios menores:
Elementos:
- Imagen funcional de Linux, Windows, *BSD
- Sistema Operativo Host con Networking funcional
- vi, y un poco de astucia

Primero, configurar el script de arranque de qemu, puede verse de la siguiente manera:

XLIB_SKIP_ARGB_VISUALS=1 qemu -M pc -m 412 -hda /home/qemu/wxp001/wxp001.hd0 -hdb /home/qemu/wxp001/wxp001.hd1 -cdrom /dev/cdrom -boot c -net nic,macaddr=52:54:00:12:34:56 -net tap,ifname=tap1,script=wxp-ifup.sh -kernel-kqemu -localtime

Los parametros importantes son: -net nic,macaddr=52:54:00:12:34:56 -net tap,ifname=tap1,script=wxp-ifup.sh donde definimos, lam macaddress, el tipo de interface (tap) y luego el script para levantar la interface. Luego el script wxp-ifup.sh.
#====================================================
if test $(/sbin/ifconfig | grep -c $1) -gt 0;
then
/sbin/brctl delif br0 $1
ifconfig $1 down
fi

/sbin/ifconfig $1 0.0.0.0 promisc up
/sbin/brctl addif br0 $1
#====================================================
Y por ultimo la configuracion en /etc/conf.d/net:


bridge_br1="eth1"
config_eth1=( "null" )
config_br1=( "dhcp" )
dhcpcd_br1="-t 10"
RC_NEED_br1="net.eth1"
brctl_br1=( "setfd 0" "sethello 0" "stp off" )


Esta configuracion es para DHCP, de otro modo, debe configurarse la direccion fija, para la interface br1, no para la eth.
Es importante notar ademas, que al momento esta configuracion solo funciona con placas Ethernet, no Wireless. Por ultimo, se debera crear el archivo tun, para clonar las interfaces tap.

# mknod /dev/net/tun c 10 200

Ahora podemos arrancar la virtual machine con networking y empezar a probar la nueva configuracion.
Si falla algo, escribame, y si puedo ayudo!

Hal 9000

Todavía recuerdo la primera vez que vi 2001 Odisea en el espacio . En realidad mas allá de todos los efectos visuales, con un claro tinte de vision futurista de los años 60, es obra realmente cautivante. Lo mas llamativo, fue escuchar una computadora hablando. Tomando decisiones, cuidando a astronautas durante el viaje. Realmente logro llamar mi atención y provocar un recuerdo muy fuerte. Casi como la primera vez en que vi Blade Runner.
El hecho de que las computadoras puedan tomar conciencia, de sí mismas, de su existencia tomar decisiones, reconocer a otros seres vivos. Es fascinante, aunque tambien me provoca algunos escalofrios.
Un link interesante:
Hal Project

Mainframe y otras cosas del arcon del abuelo!

Cuanta excelente tecnología que va dejando paso a otros cosas nuevas ( pero en secreto algunos vemos que son las mismas de hace 30 años...).  Excelente desarrollo, conceptos, diseños e implementaciones.  Pero por sobre todo, la diversidad.

Estuve corriendo Hércules, un emulador de la familia de computadoras 360, de una famosa compañía norteamericana.  Que gran ejemplo de constancia e inteligencia al desarrollar una línea de computadoras; compatibles en gran parte unas con otras, pequeñas, grandes y por sobre todo, a través de los años.

En Hércules estoy experimentando un poco con un MVT, un MVS, un viejo VM/370 sobre el que pensaba montar un z/Linux desde hace tiempo...  Y la joya de la corona:  TSS/370.  Un sistema operativo diseñado para competir con Multics, CTSS y el mismo VM/370, quien termino consumiéndolo lentamente.

Con funcionalidades HOY fuera de lo normal, TSS era un entorno Time Sharing cuando la mayoría eran monotarea o intentaba dejar de serlo;  Configuración Dinámica de Hardware, multiprocesamiento, interrupciones entre procesadores, memoria compartida... A fin de cuentas, un entorno que hoy en día no es fácil encontrar, mas de 30 años después.

En este viaje somos pocos, a los valientes, los invito:

El emulador:

http://www.hercules-390.org

Los Sistemas Operativos:

http://www.ibiblio.org/jmaynard/

(Del abuelo, por el cielo...)

 

Plan9, no del espacio exterior

En mi nostálgica vuelta sobre viejos fuentes e imágenes he vuelto a instalar Plan9 en una de mis PCS.  Realmente una experiencia terrorífica por momentos, pero altamente gratificante en otros.

Sorprendentemente existen grupos de desarrollo y usuarios ( hay uno o dos...), cosa inédita para un Sistema Operativo tan de culto.

Es increíble la cantidad de desarrollos que comenzaron en los años 90 y han muerto o migrado hacia la nada... Mach, Oberon, ErOS, la mayoría surgen como nueva reencarnación, otros han desaparecido.  Pero es notable que la mayor parte del desarrollo e investigación no abandona la senda comercial.  Esto es algo preocupante al ver que se abandona el trabajo científico en pos de caminos ya recorridos o bien andados.

Aunque no todo es verde en esta vida de teorías grises.  Si bien Linux es revolucionario en algunos sentidos, es Unix, o una reencarnación mas.  Que sucedió con KeyKos, Multics, TSS 360...  Que ha sucedido con los programadores de estas plataformas?  Cuantos conceptos e ideas han muerto dejando paso a otros sistemas con fallas reiteradas por problemas estructurales y de diseño.

Es preocupante.  Quizá, un pequeño grano de arena pueda mover una montaña algún día.

 

Minix Vive!

Navegando por la web, encontré el sitio Web de Minix.  Pensé encontrar otro proyecto muerto o abandonado en aquellos años 90, cuando instale el ultimo que vería en mi vida.

Este hermoso sistema operativo, creado por Andrew S. Tanenbaum como herramienta de Estudio junto con un texto que todo estudiante de sistemas ha consultado alguna vez.  Es anterior a Linux, por muchos años y fue el primer Sistema Operativo al estilo Unix que instale en mi vida.  Recuerdo haber bajado muchas imágenes de diskettes para instalar cambiándolos uno por uno!

El diseño de este sistema operativo es sorprendente.  El Kernel es extremadamente pequeño y confiable.   Los drivers para dispositivos corren en User Space lo que genera una estabilidad extrema aun con errores catastróficos de hardware.  Los drivers se cargan y descargan dinámicamente. 

Para mas información:

http://www.minix3.org

Minix no solo es buena fuente para conocer y entender el Hardware de Intel sino también Unix, Sistemas de Archivos, IPC y programación avanzada en lenguaje C.

 

 

Homenaje, Eliza

En homenaje a Joseph Weinzenbaum, he implementado como chatbot una versión de Eliza.  Puede ejecutar una sesión de Chat para ver el comportamiento del algoritmo.  Por momentos engaña y parece un terapeuta.

El software pertenece a John Nolan.  El modulo perl esta disponible en CPAN.

Eliza, en ingles

Eliza, versión Alpha en Castellano

 

 

Emuladores

   Pequeñas joyas de Software perdidas por la red. No se si por nostalgia, o en realidad por que no subestimo estas cosas, sigo usando cada tanto viejos juegos y programas. Sobre todo algún que otro juego de Timex Sinclair 2068. Una gloriosa obra de arte de la ingeniería. En 72Kb, se acomodaba un interprete de Basic, y quedaba espacio todavía para cargar aplicaciones.

Una mención sobre esta vieja computadora, me trajo tantos recuerdos, que corrí por la Web a buscar nuevamente algún emulador perdido. Las digitalizaciones de casettes, estaban bien guardadas! Así que a jugar nuevamente, para retroceder en el tiempo 25 años.

Pagina del Emulador, WARAJEVO HOME PAGE

Logo Emulador

Para correr el el emulador Warajevo, debero utilizar ademas:

DOSBOX BANNER

Y que esas pequeñas piezas de software perdidas, que ahora nos ahorran espacio físico, nos devuelvan un poco de la niñez...

Bonus link: Juegos DOS  http://www.abandonwarering.com/