Sistemas Empotrados y Ubicuos
En la actualidad casi todo lo que nos rodea cuenta con un sistema empotrado. Es interesante como interactuamos con microchips con total normalidad, he ahi donde se encuentra la ubicuidad. ¿Cuál sera la clave de acceptation de los sistemas empotrados? La clave podría encontrarse en el hecho de que su diseño y creación es concebido con la finalidad de cumplir un objetivo específico y que el usuario ni se imagine muchas veces que interactúan con un dispositivo que posee cierta inteligencia. Por dicha razón las personas los han incluido en su vida diaria como parte de su entorno.
“Si redondeamos todos los sistemas empotrados el 100% del consumo mundial es microprocesadores” Jim Turley.
En la evolución como sociedad Hemos pasado de un sistema de muchas personas por CPU a ciento de miles de CPU por persona marcando un antes y un después. Esto se refleja muy bien con la Ley de Moore en el que la reducción del coste de silicio ha llevado a que en la actualidad la cantidad de chips que podemos poner en una placa sea mucho mayor, esto ha traído consigo otras implicaciones que se podrían muy bien detallar en otro post.
La evolución tecnológica ha marcado una brecha entre la computación de propósito general (SPG por sus siglas en ingles) y a computación de propósito especifico (SPI) uno de las diferencias más importantes es su tiempo de vida los dispositivos de propósito general son creados y pensados para ser reemplazados no actualizados después de un periodo muy corto de tiempo. Mientras que los dispositivos de propósito especifico son creadas en general pensando en un mayor tiempo de vida.
Estas diferencias en tiempo de vida tienen efectos en las actualizaciones y la compatibilidad con versiones anteriores. Esto conlleva problemas especialmente en el entorno de dispositivos de propósito específicos donde por temas de compatibilidad se descartan avances por el simple hecho de oponerse al cambio o lo costoso que puede ser su implementación. Como es de esperar la forma como se diseñan y crean es diferente. Los primeros básicamente son creados con la capacidad de desenvolverse en muchos entornos, lo que a priori hace que tengas ciertas características estándares, además no suelen actualizarse después de un periodo predeterminado (dos años comúnmente). Por el otro lado tenemos sistemas empotrados que cumplen una tarea específica en el momento de su diseño y creación se conoce la tarea que resolverá y que características debe poseer para resolver dicha tarea puntual por lo que debe ser duradero, esto conlleva a otros problemas. Esto presenta un problema en los sistemas empotrados dado que el menor cambio en los requerimientos hace que la solución previa pierde validez. Esto se debe a que la solución está estrechamente relacionada al hardware he aquí la necesidad de abstraer un poco más el hardware de responsabilidades para poder brindar mayor flexibilidad y adaptabilidad dado que un core programable por software puede hacer posibles diseños mucho más económicos y moldeables a las necesidades.
Sera posible que en un futuro las líneas que separa los CPU de propósitos generales y los CPU de propósitos específicos que cada vez es más delgada desaparca? Nos encontramos constantemente añadiendo nuevas funcionalidades a distintos dispositivos y esto es posible gracias en parte a que cada vez se pueden tener muchas más cosas dentro de un solo chip (SoC), es decir muchos microprocesadores donde cada uno cuenta con una tarea específica dentro de una sola placa de silicio.
Es posible pensar en compatibilidad binaria siguiendo la filosofía de Nintendo (hasta cierto punto) en donde los juegos de las antiguas versiones son compatibles con las nuevas consolas esto evitará una migración forzada que interrumpiría el mercado. Además, que podría avanzar en ámbitos de redes y comunicaciones en los que poco a poco se busca desacoplar el hardware del software las SDN son un buen ejemplo, dado los costes que implica usar chips de propósitos específicos, esto es lo que ha permitido a que dispositivos como los teléfonos puedan llevar a cabo multiples tareas, inclusos algunas que no fueron pensadas en el momento de su concepción.
Por último, existen otros problemas como es la falta de una interfaz o aplicación independientes con la que se puedan manejar todos los sistemas empotrados sin tener que instalar miles de aplicaciones custom para cada de los dispositivos con los que interactuamos a diario: bombillas inteligentes, regletas, interruptores, etc.... Ni hablar de lo tedioso que es configurarlos nuevamente cuando ocurren fallos. Es posible dentro de unos años contar con dispositivos con mayor portabilidad que sean independientes de sus creadores.
¡Gracias por leer!
- Clap Si aprendisteis algo interesante en este post!
- Connect with Shamuel on LinkedIn!