Para los que trabajan en el departamento de sistemas de información, el término “virtualización” es una palabra que se oye con frecuencia. Debería ser una palabra muy familiar, sobre todo si se dedica a construir y mantener servidores. Sin embargo, si usted es un ingeniero en el sistema de fabricación, puede haber personas que digan: “A menudo oigo la palabra, pero no conozco los detalles”. Echemos un vistazo a la relación entre los sistemas de producción y edge computing la virtualización, con definiciones y ejemplos concretos de la misma.
Definición de virtualización
La definición de virtualización es “ocultar y abstraer los detalles técnicos del sistema”.
En los sistemas de información, al abstraer los recursos del sistema, es posible absorber las diferencias en el sistema operativo y el hardware para que el mismo programa pueda ejecutarse incluso en diferentes sistemas operativos y hardware. Esto se llama garantizar la portabilidad. Además, cuando se ejecutan varios programas al mismo tiempo, se intenta que los programas se ejecuten sin ser conscientes de los programas de los demás. Estas técnicas son muy importantes para los sistemas operativos multitarea y los servidores que ejecutan varios programas en un único hardware.
Especialmente en los servidores, los recursos del sistema, como la ocupación de la memoria y de la CPU, suelen ser excedentes, por lo que es concebible instalar varios programas de servidor en un mismo hardware para hacer un uso eficaz de los recursos. Sin embargo, dependiendo del software de servidor, el entorno operativo, los usuarios y el nivel de seguridad requerido pueden ser diferentes, y puede que no sea posible operar en una sola pieza de hardware al mismo tiempo. Por lo tanto, hay muchos casos en los que se instala un software de virtualización en el servidor. Al introducir el software de virtualización, diferentes programas pueden funcionar de forma independiente al mismo tiempo sin conocer las condiciones de funcionamiento de cada uno.
Por otro lado, la virtualización en los sistemas de producción es un concepto relativamente nuevo que ha empezado a utilizarse recientemente. Básicamente, se trata de “ocultar y abstraer los detalles técnicos del sistema”, pero se trata de que estas abstracciones las realice la tecnología informática.
En concreto, se trata de reproducir la línea de producción de la fábrica en un ordenador y simular el movimiento, el rendimiento, la disposición, etc. del trabajador antes de construir realmente la línea de producción. También incluye el uso de equipos informáticos para controlar las líneas de producción y controlar la producción. Por así decirlo, se puede decir que se “virtualiza” la línea de producción mediante equipos informáticos.
Ventajas y ejemplos concretos de la virtualización en los sistemas de información
La ventaja de la virtualización es, al fin y al cabo, la libertad del sistema. Por ejemplo, la portabilidad permite que el software existente se ejecute en diferentes sistemas operativos y en nuevo hardware. También es posible ejecutar varios programas al mismo tiempo sin conocer el comportamiento de los demás. Esto puede reducir el coste total del sistema, lo que suele ser especialmente útil para los servidores.
Por otro lado, la desventaja es que el mecanismo de virtualización se complica y ralentiza. Por lo tanto, cuando se construye un sistema pensando en la virtualización, se requiere una capacidad de hardware suficiente.
A continuación, veamos un ejemplo concreto de tecnología de virtualización.
- MVS
MVS (Multiple Virtual Storage) es un sistema operativo para mainframes desarrollado por IBM, pero es conocido como el sistema operativo más rápido y práctico del mundo. La memoria virtual es una tecnología que puede llamarse “virtualización del espacio de memoria”, y es una tecnología indispensable para los SO multitarea. Por ejemplo, supongamos que se ejecutan varios programas al mismo tiempo cuando la memoria virtual no es compatible. En este entorno, supongamos que el programa A escribe datos X en un espacio de memoria. ¿Qué ocurre si el programa B escribe datos Y en el mismo espacio de memoria? Después de eso, aunque el programa A intente leer los datos, leerá los datos Y, y los datos no serán consistentes, por lo que el programa A no funcionará correctamente.
Por lo tanto, antes de que el programa B escriba los datos Y mediante MVS, los datos X se guardan en un dispositivo de almacenamiento externo. A continuación, devuelve los datos X a la memoria antes de que el programa A los lea. El principio de la memoria virtual consiste en realizar esta operación de forma que los programas A y B no tengan conocimiento de ella. Esto permite que el programa se ejecute de forma independiente, independientemente del comportamiento de otros programas. - Java VM
Creo que la gente que se dedica a los sistemas embebidos oye hablar a menudo de Java. Java es un lenguaje de programación, pero al mismo tiempo tiene el aspecto de una “máquina virtual”. Por regla general, el compilador de Java no produce código nativo (código que puede ser ejecutado directamente por la CPU), sino que produce código intermedio. Este código intermedio es una forma de código que puede ser ejecutado por la Java VM (Java Virtual Machine). El código intermedio es más lento de ejecutar que el código nativo, pero aunque el SO y la configuración del hardware sean diferentes, si se prepara una VM Java para ese SO y ese hardware, se puede ejecutar el código intermedio común.
Existen varios tipos de SO para sistemas embebidos con diferentes propósitos, y a menudo es más fácil desarrollar una Java VM que preparar un compilador para todos los SO. JavaVM tiene la ventaja de absorber las diferencias de SO y hardware y ejecutar código intermedio común. Por esta razón, Java se utiliza a menudo en los sistemas embebidos. - WINE
“WINE” es un software que ejecuta aplicaciones de Windows en Linux. Es un tipo de emulador que se interpone entre las aplicaciones de Linux y las de Windows y actúa como puente entre las API (interfaces de programación de aplicaciones). Desde el punto de vista de la absorción de las diferencias de los sistemas operativos, se puede decir que este tipo de emulador es de virtualización.
Virtualización del sistema de producción y ejemplos concretos
Por otro lado, ¿cuáles son las ventajas de virtualizar los sistemas de producción?
Al reproducir la línea de producción de la fábrica en un ordenador y simular la línea de producción, es posible examinar y mejorar diversos problemas antes de iniciar realmente la producción. También es posible mejorar la eficiencia de la producción y ahorrar mano de obra gestionando la producción mediante equipos informáticos.
A la hora de virtualizar los sistemas de producción, especialmente la supervisión y el control de la producción mediante equipos informáticos, el problema es que los protocolos de control y los formatos de datos de los equipos de fabricación son diferentes. Los fabricantes de equipos de fabricación suelen emplear protocolos de control y formatos de datos óptimos para maximizar el rendimiento de sus equipos de fabricación. Existe un movimiento para crear estos estándares unificados, pero la situación actual es que aún no se han hecho realidad.
Por lo tanto, es concebible introducir un servidor edge entre el sistema de control del equipo de fabricación y el servidor cloud y realizar operaciones en el servidor edge para absorber estas diferencias. De este modo, desde la perspectiva del servidor cloud , los formatos de datos y los protocolos de control parecen todos iguales. Por lo tanto, este sistema también puede denominarse “virtualización” en el sentido de que absorbe las diferencias entre los equipos de fabricación. La introducción de edge computing para este fin tiene la ventaja de lograr tanto el control como la velocidad de los equipos de fabricación.
Además, si el propio servidor edge está virtualizado, se pueden supervisar varios dispositivos de fabricación de forma independiente con una sola pieza de hardware para el servidor edge , y el software se puede añadir posteriormente. Esto también reducirá los costes de funcionamiento.
Tecnología de virtualización y edge computing
Examinamos la importancia y los ejemplos concretos de la virtualización tanto desde el punto de vista de los sistemas de información como de los de producción. Las diferencias en los protocolos de control y los formatos de datos de los equipos de fabricación en la línea de producción suelen ser problemas en el campo, pero absorberlos por edge computing es uno de los medios eficaces. Además, si el propio servidor edge está virtualizado, es posible construir de forma flexible un sistema en torno a la línea de producción. Además, dado que el servidor edge puede ser reequipado, es posible virtualizar la fábrica paso a paso aprovechando los equipos existentes. En este contexto, el hecho de que admita o no la virtualización es una consideración importante a la hora de desplegar un edge.