Ir a contenido



[Proyecto] Unix actual en Pentiun MMX 166 + 64MiB RAM


  • Por favor inicia una sesión para responder
56 respuestas en este tema
  • Maxmalkav
  • Provincia:Sevilla

Un poco por culpa de RaYaNt3 y los tejemanejes que se trae con los Pentium y demás cacharros antiguos, al final me he animado a hacer algo por el 20 aniversario de mi primer ordenador (sentimental que es uno).
 
Por poneros en situación, hablamos de un Pentium MMX a 166MHz, con 32MiB de RAM y disco duro de 1.2GiB comprado en Agosto de 1997. Vino con Windows 95 instalado, estuvo ejecutando correctamente Windows 98 y acabó siendo jubilado sobre 2003, cuando ya estaba bastante obsoleto (era una época dura para temas de hardware).
 
Creo que la última vez que arrancó tenía instalada una Debian Sarge (lanzada en 2005).
 
Los objetivos de este aniversario son varios:

  • volver a arrancar el ordenador
  • intentar ampliar memoria de 32 a 64 megas de RAM
  • si la ocasión lo permite, conectar un SSD barato vía adaptador SATA a IDE (y que sea lo que $DEITY quiera)
  • instalar un sistema GNU/Linux Unix libre moderno: no estamos hablando de software de hace 20 años :-)
  • instalar entorno gráfico y navegador y postear desde él en H2M :-)

En los siguientes posts iré comentando un par de cosas sobre cómo va la consecución de los anteriores objetivos

  • Valorado por amd125 y Randemar

Escrito 05 septiembre 2017 - 23:22        Editado por Maxmalkav, 01 octubre 2017 - 01:22.


  • Maxmalkav
  • Provincia:Sevilla

Elección del software

 

Aún no estoy físicamente en el mismo lugar que el Pentium MMX y estoy en proceso de recolección de piezas y componentes para intentar "actualizarlo un poco". Mientras tanto me estoy dedicando a la elección del software, cosa que ha dado un poco más de guerra de la que esperaba.

 

Sobre la arquitectura

Cuando hablamos de la familia Pentium (incluyendo los MMX), hablamos de lo que se suele denominar arquitectura "i586". Hasta hace unos años tanto el kernel como la mayoría de distros GNU/Linux proporcionaban soporte para arquitectura Intel de 32-bit, siendo en teoría compatible con procesadores i386 y posteriores (aunque intentar ejecutar GNU/Linux en un 386 se presentaba harto complicado por otros motivos).

 

El caso es que recientemente (y de forma comprensible), se está desechando el soporte para familias muy antiguas de procesadores (+20 años), las grandes distros no están por la labor en dedicar recursos para mantener compatibilidad con hardware que tiene poca/nula utilidad en el mundo actual (y yo que lo comprendo). Muchas "exigen" como mínimo un 486 o incluso 586 (Pentium), aunque la tendencia es pasar directamente a exigir al menos un 686 (Pentium II) que parece que será el mínimo exigido en 32-bit .. hasta que el soporte de 32-bit en sí mismo empiece a ser deprecado, pero esa es otra historia :-)

 

Entra la emulación

Ya he comentado que no tengo conmigo el equipo "target" donde instalar un GNU/Linux moderno, pero para ir probando qué tal se va a comportar el software con tan pocos recursos cuento con algo bastante útil: emulación!

 

Aprovechando que el proyecto QEMU no sólo permite virtualizar sobre arquitectura Intel, si no que también permite emular plataformas completas, incluso si no son Intel (ARM, MIPS, etc). En mi caso y aprovechando el frontend "aqemu" creé en un momento una máquina virtual con las siguientes características:

  • 64 megas de RAM
  • 4GB disco duro
  • Unidad de CD virtual para montar imágines ISO
  • emulación del hardware más viejo que había disponible para interfaces de red :-)
  • procesador con un solo hilo y de tipo "pentium", con lo que todas las nuevas características del micro real serán ignoradas por el bien de una emulación fidedigna

Con esto y activando el display remoto a través de protocolo SPICE y usando un cliente (también de SPICE), tenía funcionando el banco de pruebas.

 

Se puede argumentar de que es un banco de pruebas un poco "tramposo" porque aunque se impongan límites artificiales al hardware físico, la emulación siempre sacará algo de ventaja de un hardware muy superior al emulado (por ejemplo los retrasos de acceso a disco serán probablemente mucho menores que en una máquina real con 20 años).

 

La distribución GNU/Linux

No lo voy a negar, yo tengo un romance con Debian, por muchas razones que no vienen al caso. Debian era mi primera opción, ya que el ordenador había estado funcionando con la versión Sarge (lanzada en 2005), el sistema mínimo puede llegar a ser bastante liviano y ofrece muchísimos paquetes preparados para instalar a través de repositorios (muchos de ellos también muy livianos).

 

Primer problema: la última versión estable de Debian (9.1, nombre en clave "Stretch", lanzada este mismo verano de 2017) exige ya como mínimo un procesador de arquitectura i686. El propio instalador se negará a seguir con el proceso argumentando que el procesador carece de un juego de instrucciones necesario para continuar (juego de instrucciones presente a partir de los PII)

 

Segunda opción: retrocederemos un par de años el el tiempo hasta 2015 y Debian Jessie. El instalador aún acepta i586, el problema es que .. requiere un poco menos de 80MiB de RAM, un poco por encima de los 64 que esperamos tener en la máquina física. Es posible iniciar el instalador de Debian en modo avanzado, eligiendo con mucho cuidado qué cargar en memoria durante el proceso de instalación, pero las pruebas no fueron satisfactorias: instalaciones que se bloquean, o directamente no avanzan.

 

Tercera opción?: una posibilidad era seguir retrocediendo versiones de Debian en el tiempo hasta dar con una cuyo instalador por defecto fuese feliz con 64 MiB de RAM. Esa fue Debian 6.0 (nombre en clave Squeeze), lanzada en Feb 2011 .. demasiado antigua! Aunque la instalación avanzaba correctamente con sólo 64 MiB de RAM, fue necesario recurrir a repositorios "legacy" para poder instalar paquetes, en concreto a los localizados en http://archive.debian.org

 

La cuarta (y definitiva) opción: tras un poco de investigación encontré una posible alternativa que ha resultado muy interesante: Alpine Linux. Entre otras bondades:

  • soporta arquitectura i586
  • requerimientos de hardware ridículos
  • el instalador no pasa de ser un script de Bash o similar (y eso requiere poca memoria)
  • software realmente moderno: decir que viene por defecto con un kernel 4.9
  • unos repositorios bastante completos: no se puede decir que sea Debian, pero sumando repositorios oficiales he encontrado las aplicaciones simples que necesitaba para dar un poco de funcionalidad al sistema.

Escrito 05 septiembre 2017 - 23:23        Editado por Maxmalkav, 05 septiembre 2017 - 23:53.


  • Maxmalkav
  • Provincia:Sevilla

Resultado de la primera prueba de emulación

 

Una imagen vale más que mil palabras:

 

https://photos.app.g...iC9sLzaHQ7n3Fg1

a2znYjA.png

 

(el editor me dice "No tienes permitido el uso de esta extensión de imagen en esta comunidad" cuando intento incrustar la imagen)

 

Sobre la máquina virtual (emulando un triste Pentium MMX) he logrado instalar sin mucho dolor Alpine Linux con las siguientes características:

  • instalación inicial de la versión estable Alpine Linux 3.6
  • añádidos repositorios para el modo "rolling release" y actualización a la última versión
  • inclusión de los repositorios "community" para disponer de más paquetes listos para instalar
  • instalado el servidor grafico Xorg (y con una configuración realmente sencilla teniendo en cuenta lo espartano del entorno
  • Fluxbox como gestor de ventanas de lujo :-) (que conste que lo he estado usando hasta hace un par de años en mi equipo de trabajo)
  • xterm como emulador de terminal, por ser lo mínimo de lo mínimo en consumo de RAM
  • tiramos la casa por la ventana e instalamos el navegador Midori para poder surfear por H2M (tenéis prueba gráfica
  • neofetch para sacar un banner "reshulon" de las características del equipo
  • scrot para sacar la foto de familia de todas las aplicaciones conviviendo felices dentro de Fluxbox

Si os fijáis bien en la captura de pantalla, en el banner generado por neofetch podéis ver que estamos hablando de software muy actual y vigente ... ejecutado en 64 MB de RAM!

  • kernel 4.9, con todo lo que supone en términos de seguridad, soporte de hardware, y cualquier mejora que se ha ido añadiendo en los últimos 20 anos con respecto al kernel 2.0, el disponible en la época en la que el Pentium MMX vio la luz.
  • si bien el procesador es detectado como Pentium MMX, está vitaminado a más de 3GHz :-) Teniendo en cuenta el tiempo que llevó la instalación de las aplicaciones, diría que QEMU impone restricción a la velocidad aunque el sistema detecte la frecuencia real. Aunque una experiencia seguramente mejorada, creo que no distará enormemente de la que tendré frente al Pentium MMX
  • Podéis ver que, si bien tirando de un poco de swap (captura de htop arriba), el sistema está usando 35 de los 56 MiB disponibles mientras surfeo los últimos envíos de H2M :-)
  • No se aprecia, pero la cantidad de HDD usado está ahora mismo entorno a los 700 MiB (la instalación inicial no llegaba a los 400 MiB), aunque hay que tener en cuenta que todos los paquetes descargados (consideradlos como los "instaladores") siguen en caché ocupando espacio a pesar de haber sido instalados, mayormente porque no sé ni me he parado a mirar cómo purgarlos.

Sensaciones

Aunque la realidad no va a ser tan bonita ni fluida con un Pentium MMX real, la sensación es que el sistema es muy usable con tan solo 64MiB de RAM y un microprocesador emulado. A nivel gráfico el movimiento de ventanas es muy fluido, probablemente aprovechando las bondades de la emulación.

 

Alpine Linux es una opción muy válida como sistema Linux moderno ultra minimalista. El gestor de paquetes (apk) es bastante trivial a la hora de manejarlo y el software suficiente para tener funcionalidad de escritorio "básica".


Escrito 05 septiembre 2017 - 23:23        Editado por Maxmalkav, 07 septiembre 2017 - 20:21.


  • Maxmalkav
  • Provincia:Sevilla

El hardware (real)

 

A dia 22 de Septiembre de 2017 (20 años y 1 mes después de que mi P166 MMX llegase a mi vida), he podido reencontrarme con el hardware, y todo está yendo mejor de lo esperado :-)

 

Abriendo la cápsula del tiempo :-)

Spoiler

 

Tendiendo en cuenta que el espacio es bastante limitado para trabajar y los slots de memoria EDO son el infierno para jugar con la RAM, he decidido darle a la configuración un toque más "diáfano" mientras le voy dando forma a la configuración final.

 

Spoiler

 

El ventilador de la fuente de alimentación tiene dos características: mueve una barbaridad de caudal y regala una maravillosa serenata de ruido de ventilador (no de uno a punto de morir, sino uno sano y a demasiadas revoluciones), así que he optado por "upgradear" la fuente con una ATX marca FSP de calidad bastante decente. La diferencia de conectores la he solucionado con un simple adaptador AT - ATX y un elegantísimo puente al pin verde con tierra para que todo arranque.

 

La memoria

Esta parte me ha llenado de (orgullo y) satisfacción. El P166 MMX llegó a mi casa con 32MB de RAM repartidos entre 2 chips de memoria EDO de 72 contactos, y así ha permanecido por 20 años ..

 

Da la casualidad que ayudé hace unos 6 años a realizar la limpieza de un laboratorio de computación donde se jubiló muchísimo material Pentium, y donde aproveché para guardar, principalmente por nostalgia, unos cuantos módulos de memoria de la época, muchas sin un etiquetado que indicase la capacidad, por lo que mi pequeño alijo era un misterio.

 

Hoy ha sido el momento perfecto para ver qué había en esa bolsa de memorias EDO. El inicio fue bastante decepcionante, con unas memorias donadas (no del laboratorio) de 4MB de capacidad cada una. La tanda siguiente fue más prometedora, con varios módulos funcionales de 16MB cada uno. Esto ya me permitiría ocupar todos los slots de la placa base y alcanzar la respetable cantidad de 64 MB cada uno.

 

Y de repente ... el descubrimiento: 4 módulos de 32MB cada uno :-)

Spoiler

 

Si bien estaban etiquetados como 8x32, nunca estoy muy seguro cuando hablamos de RAM antigua a lo que se refiere, así que lo mejor era probarlo, confirmar la capacidad y que eran reconocidas por la placa, que ya se había mostrado delicada con ciertas combinaciones de módulos de distintos fabricantes.

 

E voilà: 128MB funcionales de RAM EDO :-)

Spoiler

 

Los periféricos

El equipo va a estar funcionando con Linux, así que con teclado (y eventualmente un ratón a puerto serie) será más que suficiente.

 

Aprovechando que tengo un problema con los teclados, he podido reusar sin adaptadores uno de los pocos teclados membrana que tengo (y conservo porque por diseño y prestaciones mola mucho):

 

Spoiler

 

El modelo clásico de teclado ergonómico Microsoft, con conector AT :-) Son muchas casualidades las que están convergiendo para que pueda darle otra vez vidilla al P166 :-)

 

Con el tema de conexión de red, descartaba intentar usar ningún dispositivo wireless, así que una simple tarjeta Ethernet 100Mpbs PCI sería suficiente. Como no tengo ningún router cerca y no me apetecía configurar el portátil para compartir la conexión inalámbrica con los equipos conectados por cable (porque NetworkManager en Linux es el MAL y hace lo que quiere), decidí reusar otra pieza hardware "vintage": una Fonera, con 16 flamantes megas de RAM y OpenWRT Backfire (lanzado sobre el año 2010) instalado y configurado como cliente wireless y reenviando a la única interfaz Ethernet. El resultado: tenemos Intenet out of the box en la Debian Sarge de 2007 :-)

 

Spoiler
  • Valorado por Oddie_

Escrito 05 septiembre 2017 - 23:23        Editado por Maxmalkav, 23 septiembre 2017 - 13:16.


  • Maxmalkav
  • Provincia:Sevilla

[RESERVADO]


Escrito 05 septiembre 2017 - 23:23


  • Maxmalkav
  • Provincia:Sevilla

[RESERVADO]


Escrito 05 septiembre 2017 - 23:23


  • kingpmi
  • Provincia:Barcelona

Pillo sitio :)
  • Valorado por Maxmalkav

Escrito 05 septiembre 2017 - 23:44


  • amd125
  • Provincia:Madrid

Me encantan estas cosillas. Mucha suerte con el proyecto.

  • Valorado por Maxmalkav

Escrito 05 septiembre 2017 - 23:51

PLATAFORMA........
"" YO TAMBIEN SOY EDUCADO, Y DEVUELVO LOS MENSAJES PRIVADOS ""
.......unete y pasalo


  • Tew
  • Provincia:Malaga

Mi primer GNU/Linux vivió en un Pentium a 120MHz y con 8 o 16 MB de RAM (no recuerdo la cantidad exacta). Empecé a lo bruto con una Slackware y un libro bastante gordito con muchísima info sobre Linux...

 

¡¡Que recuerdos!!

  • Valorado por Maxmalkav

Escrito 06 septiembre 2017 - 00:01        Editado por Tew, 06 septiembre 2017 - 00:02.


  • Maxmalkav
  • Provincia:Sevilla

[RESERVADO]

 

 

Pillo sitio :)

 

Pues ahí tenéis ya un poco de chicha, a falta de tener hardware real ;-)


Escrito 06 septiembre 2017 - 00:12


  • Maxmalkav
  • Provincia:Sevilla

Por cierto, estoy siendo muy optimista con el estado actual del hardware, teniendo en cuenta que a RaYaNt3 le doné el hermano gemelo de este ordenador y todos los componentes funcionaban (incluyendo placa, disco y fuente de alimentación), espero no llevarme una desagradable sorpresa cuando esté por casa de mis padres y pruebe a encender el equipo :-/

 

Sobre la ampliación de RAM de 32 a 64MiB, tengo bastantes módulos EDO pendientes de ser probados, pero confío que pueda reunir dos módulos de 16MiB para completar la actualización, en caso contrario, recurriré a la solidaridad chatarrera :rolleyes:


Escrito 06 septiembre 2017 - 00:19


  • RaYaNt3
  • Provincia:Murcia

Ánimo, te vas a entretener... Jeje.
  • Valorado por Maxmalkav

Escrito 06 septiembre 2017 - 00:19


  • Maxmalkav
  • Provincia:Sevilla

Ánimo, te vas a entretener... Jeje.

 

La noche ya la he echado :-D

 

Si todo sale bien me voy a venir arriba y voy a escribir desde el Pentium MMX un par de documentos en LaTeX para unos temas de la universidad (usando Vim en terminal y ya si eso compilando en otro equipo), no te digo más ;-)


Escrito 06 septiembre 2017 - 00:22


  • RaYaNt3
  • Provincia:Murcia

Yo lo que pasa es que soy el tonto de Linux, pero seguro que algo aprendo... Estaremos a la espera del cacharreo duro.

Escrito 06 septiembre 2017 - 00:24


  • Maxmalkav
  • Provincia:Sevilla

Yo lo que pasa es que soy el tonto de Linux, pero seguro que algo aprendo... Estaremos a la espera del cacharreo duro.

 

La verdad es que lo que voy a escribir cae un poco en tierra de nadie: no voy a detallar los pasos con Linux (porque creo que no son interesantes) ni va a ser un proyecto de cacharreo duro (un poco de actualización hardware y ya veremos por donde van los tiros).

 

Lo veo poco más que una serie de notas comentando qué he probado y qué ha ido bien, y sobre todo mostrar software reciente ejecutándose en hardware de hace 20 años y permitiendo hacer un par de cosas "reales" sin morir en el intento.

 

De todas formas, si alguien está interesado en los detalles o incluso en material (scripts y demás), no sería mucho problema para mí proporcionarlos.


Escrito 06 septiembre 2017 - 00:30



0 usuario(s) estan leyendo este tema

0 miembros, 0 invitados, 0 usuarios anónimos