Emezeta.com

Tópicos informáticos en las películas


Independientemente de lo buenas (o malas) que sean algunas películas, siempre me ha llamado la atención lo tópico que pueden llegar a ser determinados temas. Uno de ellos, por ejemplo, es el uso de un sistema o dispositivo informático.

1. Cuenta atrás y contraseñas

Quizás, lo más probable en una película, es el uso de un dispositivo con una cuenta atrás, un panel numérico y grandes botones de Descargar, Conectar o Apagar. Eso, sin olvidarnos de las famosas escenas con el mensaje Acceso denegado u Operación no permitida, tras la introducción de una contraseña o clave de acceso.

Nivel 13: Cuenta atrás

Nivel 13: Cuenta atrás, panel numérico y botones gigantes.

2. Cobrar vida o hablar con el usuario

Otra de las típicas acciones utilizadas en estas películas, es aquella en la que el sistema tiene vida propia (o aparenta, suplanta, o simula ser otra persona), comunicándose con el usuario. Famosa era la frase de la primera parte de Tron donde se escribía en pantalla aquello de End of line, traducido como fin de impresión.

Matrix: Sigue al conejo blanco y Tron: Control central de procesos

Matrix: Sigue al conejo blanco y Tron: Control Central de Procesos.

3. Interfaz pseudo-humano

En otras películas se optaba por darle un toque más humano a la interfaz o panel de un robot, como la carismática y tierna carita de Gerty, el robot asistente de la película Moon, o incluso la siniestra y misteriosa luz roja de HAL 9000 en 2001 Odisea en el espacio.

2001 Odisea en el espacio: HAL 9000 y Moon: El robot Gerty.

2001 odisea en el espacio: HAL 9000 y Moon: Gerty el robot.

4. Descuidar detalles

Hay ocasiones en las que se descuidan detalles. Por ejemplo, en mi querida franquicia de Stargate, que a pesar de cuidar muy bien durante la serie los temas de programación del Stargate (aparecen pizarras con código en C), en una de sus últimas películas (El arca de la verdad) miran el código de los replicantes, que resulta ser código javascript.

Stargate: El arca de la verdad. Código de los replicantes: Javascript.

Stargate (El arca de la verdad) Código de los replicantes: Javascript.

5. Tron Legacy: El buen ejemplo

Sin embargo, el trabajo realizado en la película Tron Legacy resultó ser bastante acertado y detallado, aunque a priori pueda no parecerlo.

Tron Legacy: Título de la película

Sam Flynn llega a los recreativos y encuentra un ordenador con una sesión iniciada. En la pantalla se muestra una especie de contador 20:11:20:16:22:14:73, que probablemente representa los 20 años que lleva desaparecido el padre, junto a otras cantidades de menor magnitud (días, horas, minutos, segundos, microsegundos...).

Al acceder al sistema, se encuentra con la sesión de su padre abierta, menciona que accede con una puerta trasera (otro tópico del cine) y activa el láser.

Tron Legacy: Terminal de texto de Flynns

Tron Legacy: Comandos en la terminal del sistema.

La cuestión es que cada uno de los comandos que aparecen en pantalla, son comandos reales de UNIX. Veamos detenidamente cada uno de ellos...

$ whoami
flynn

El símbolo $ en entornos UNIX o Linux simboliza que la cuenta que estamos utilizando es una cuenta de usuario «limitada». Cuando aparece el símbolo # simboliza que estamos con una cuenta de administrador o root, con todos los privilegios del sistema.

En el comando anterior, Flynn utiliza el comando whoami, un comando que muestra el usuario actual que está utilizando el sistema.

$ uname -a
SolarOS 4.0.1 Generic_50203-02 sun4m i386 Unknown.Unknown

En estas líneas, Sam pregunta con el comando uname (información del sistema) que tipo de sistema está funcionando. El parámetro -a muestra toda la información posible.

El sistema utilizado es SolarOS en su versión 4.0.1, un sistema operativo ficticio, derivado de Solaris (nucleo SunOS). Aunque en realidad existe un SolarOS, es bastante diferente al de la película.

$ login -n root
Login incorrect
login: backdoor
No home directory specified in password file!
Logging in with home=/

Gracias a Jesús por facilitarme información sobre esta característica.

En esta parte, Sam comenta que intentará acceder con una puerta trasera, mientras aparentemente accede con un nombre de usuario backdoor. Esto puede parecer una burrada, pero tiene su historia detrás.

El comando login sirve para acceder al sistema con una determinada cuenta de usuario. Si buscamos información sobre el comando login veremos que el parámetro -n no existe.

En la versión 4.0.1 de Solaris 386i, existió un agujero de seguridad conocido, debido a que la utilidad logintool necesitaba realizar tareas de limpieza (pero desconocía la password de root). Así pues, se le añadió la opción no documentada -n, esperando que nadie la encontrara.

El mecanismo de funcionamiento era idéntico al que se utiliza en Tron Legacy. Al realizar un login -n root, el sistema devolvía un error y preguntaba de nuevo un nombre de usuario. Al escribir un nuevo nombre de usuario (por lo visto, cualquiera), te dejaba entrar como administrador.

# bin/history
488 cd /opt/LLL/controller/laser/
489 vi LLLSDLaserControl.c
490 make
491 make install
492 ./sanity_check
493 ./configure -o test.cfg
494 vi test.cfg

Una vez accedió con una cuenta con privilegios de administrador, ejecuta un history, comando que muestra las últimas operaciones realizadas en el sistema.

Se pueden ver las últimas tareas realizadas, como accediendo a la ruta /opt/LLL/controller/laser/, y editando el fichero LLLSDLaserControl.c (supuesto controlador del laser, en lenguaje C) con el editor vi.

Más adelante, realiza un make para compilarlo y un make install para realizar su respectiva instalación. También se ejecuta un sanity_check (una serie de tests específicos) y se ejecuta el script configure, guardando las opciones en el archivo de configuración test.cfg, el cuál modificará mediante el editor vi posteriormente.

495 vi ~/last_will_and_testament.txt
496 cat /proc/meminfo
497 ps -a -x -u
498 kill -9 2207
499 kill 2208
500 ps -a -x -u
501 touch /opt/LLL/run/ok

En el siguiente comando del historial de comandos ejecutados por el padre, se ve como editó un archivo llamado last_will_and_testament.txt, el testamento de Flynn (¿preparando detalles para la segunda parte?).

Posteriormente, comprueba el uso de memoria del sistema haciendo un cat /proc/meminfo, examina las tareas que están funcionando actualmente con el ps y finaliza algunos procesos con el kill.

Finalmente, comprueba de nuevo los procesos activos y actualiza el archivo /opt/LLL/run/ok (probablemente, para especificar que está preparado para activar el laser).

502 LLLSDLaserControl -ok 1
# bin/LLLSDLaserControl -ok 1
* Starting up...
* PSU online
* HV online
* Analog core memory... OK!
* Booting pattern recognition systems
* Merging current data model
* Starting laser emitter
* Particle traps test OK!
* Entangling laser with particle traps

Finalmente, la última línea del historial del padre de Sam, muestra activación del láser ejecutando LLLSDLaserControl con el parametro -ok establecido a 1. Esto hace varias comprobaciones y pregunta al usuario si quiere realizar la apertura del láser.

El láser de Tron Legacy

¿Se te ocurre alguna anécdota más sobre tópicos de dispositivos o sistemas informáticos en otras películas a parte de las ya mencionadas?