ES2779321T3 - Procedimiento para realizar una actualización de un sistema operativo - Google Patents

Procedimiento para realizar una actualización de un sistema operativo Download PDF

Info

Publication number
ES2779321T3
ES2779321T3 ES16175806T ES16175806T ES2779321T3 ES 2779321 T3 ES2779321 T3 ES 2779321T3 ES 16175806 T ES16175806 T ES 16175806T ES 16175806 T ES16175806 T ES 16175806T ES 2779321 T3 ES2779321 T3 ES 2779321T3
Authority
ES
Spain
Prior art keywords
operating system
bus
update
bus device
application
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES16175806T
Other languages
English (en)
Inventor
Peter Hoch
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens Schweiz AG
Original Assignee
Siemens Schweiz AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens Schweiz AG filed Critical Siemens Schweiz AG
Application granted granted Critical
Publication of ES2779321T3 publication Critical patent/ES2779321T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

Procedimiento para realizar una actualización de un sistema operativo para un dispositivo bus (G1 - G8) de una instalación eléctrica programable orientada al bus (GBS1, GBS2), en el que el dispositivo bus (G1 - G8) está compuesto de un procesador (MK) y una memoria flash (SP1 - SP3), el procedimiento consta de los siguientes pasos: (VS1) proporcionar una aplicación de actualización (UP-A1- UP-A3) que comprende una pila de comunicación (CS) y una adaptación del hardware correspondiente para la comunicación y el acceso flash del dispositivo (G1 - G8); Cargar la aplicación de actualización (UP-A1 - UP-A3) en la memoria flash, en el que después de la carga, la aplicación de actualización (UP-A1- UP-A3) toma el control del dispositivo bus (G1 - G8) y el sistema operativo existente (BS) ya no responde; Inicializar los vectores de interrupción para que se remitan a la aplicación de actualización (UP-A1 - UP-A3) en la memoria flash; Realizar la actualización del sistema operativo, en el que los datos individuales del dispositivo (G1 - G8) se almacenan de tal manera que, la aplicación de actualización (UP-A1 - UP-A3) puede acceder a ellos mientras se realiza la actualización del sistema operativo; y en el que, mientras se realiza la actualización del sistema operativo, se produce la comunicación del dispositivo bus (G1 - G8) a través de la aplicación de actualización (UP-A1 - UP-A3).

Description

DESCRIPCIÓN
Procedimiento para realizar una actualización de un sistema operativo
La invención se refiere a un procedimiento para realizar una actualización de un sistema operativo para un dispositivo bus de una instalación eléctrica programable orientada al bus. La invención se refiere además a un dispositivo bus adecuado para realizar una actualización del sistema operativo. La invención se refiere además a un programa de ordenador para realizar una actualización del sistema operativo para un dispositivo bus de una instalación eléctrica programable orientada al bus y un medio legible por ordenado que tiene comandos ejecutables en un ordenador para realizar una actualización del sistema operativo para un dispositivo bus de una instalación eléctrica programable orientada al bus.
Para permitir un manejo sencillo y cómodo de los diversos dispositivos bus en edificios o casas modernas, estos se pueden controlar a través de un bus de instalación. Tal bus de instalación es, por ejemplo, el bus de instalación europeo (EIB), que se describe en el estándar KNX.
Un dispositivo de instalación de edificios permite controlar individualmente las instalaciones individuales del edificio, como, por ejemplo, una lámpara o un radiador, según un plan de funcionamiento predeterminado, al proporcionar un dispositivo bus en cada instalación del edificio que controla la instalación del edificio respectiva, por ejemplo, enciende y apaga automáticamente una lámpara o regula el termostato de un radiador. Los dispositivos bus se pueden conectar entre sí y también a un dispositivo de configuración central a través de un bus de instalación del edificio, de modo que los dispositivos pueden intercambiar datos entre sí y los dispositivos de bus se pueden configurar o reconfigurar centralmente a través del dispositivo de configuración. Los datos que se intercambian entre los dispositivos de bus pueden ser, por ejemplo, datos del sensor o datos de control.
El sistema de bus subyacente se basa en el hecho de que cada usuario del bus tiene su propio microprocesador y, por lo tanto, gestiona sus datos de forma independiente y autónoma de un procesador central. Con este fin, se asigna a cada usuario de bus un programa de aplicación con objetos y parámetros de comunicación. Al poner en marcha un sistema de bus de este tipo, se deben configurar las relaciones de comunicación de los usuarios del bus. En el caso del bus KNX, a menudo se utiliza la herramienta software de ingeniería (ETS). Este es un software que se ejecuta en una PC o portátil y se conecta al bus. Algunos tipos de conexiones posibles son RS232, USB, radio o Ethernet. El ETS es una herramienta gráfica basada en una base de datos para configurar una instalación eléctrica programable orientada al bus. En la base de datos ETS se almacenan los datos de configuración para cada usuario de bus individual o para cada programa de aplicación individual.
El intercambio de programas de aplicación para dispositivos de bus se conoce desde hace tiempo y muchos fabricantes lo hacen posible, especialmente para los consumidores finales.
Hasta ahora, sin embargo, no ha sido posible para los clientes finales realizar una actualización del sistema operativo o una sustitución del sistema operativo para un dispositivo bus en una instalación eléctrica programable orientada al bus (por ejemplo, el bus KNX). Para hacer esto, el cliente debe retirar un dispositivo bus, enviarlo y luego reinstalarlo. Esto es complicado, costoso y requiere mucho tiempo.
La solicitud de patente europea EP0947920A2 describe un procedimiento para modificar un programa básico en un sistema informático con un microordenador y un medio de almacenamiento externo, que está en comunicación con el microordenador, para almacenar varios programas y varios elementos de datos, en el que el microordenador tiene una ROM no borrable que almacena un programa básico y datos básicos para controlar el funcionamiento del sistema informático, una RAM para almacenar varios programas o varios tipos de datos, una CPU para ejecutar programas y procesar datos y un circuito de interfaz para realizar comunicaciones con dispositivos externos, en el que el medio de almacenamiento externo almacena un programa de modificación que sirve como datos de programa para modificar parte de los datos de programa que están contenidos en el programa básico y una dirección de inicio de la modificación que indica una posición en el programa básico en el que la modificación del programa básico debe ser iniciada por el programa de modificación, en el que la CPU tiene una función de interrupción de dirección para procesar una interrupción en una dirección de interrupción predeterminada, en el que el procedimiento para modificar el programa básico comprende: el paso de lectura para leer el programa de modificación y la dirección de inicio de modificación desde los medios de almacenamiento externo para la transmisión del programa de modificación a la RAM y el almacenamiento de la dirección de inicio de modificación en la CPU como la dirección de interrupción, y el paso de ejecutar una instrucción para saltar a una dirección de encabezado del programa de modificación en la RAM para una interrupción de dirección.
En la solicitud de patente alemana (número de registro 102015207900.7, fecha de presentación 29.04.2015) el solicitante describe un procedimiento para realizar una actualización del sistema operativo, pero este procedimiento requiere relativamente más memoria.
Por lo tanto, el objeto de la presente invención es proporcionar un procedimiento de espacio de almacenamiento eficiente para realizar actualizaciones del sistema operativo para un dispositivo de bus de una instalación eléctrica programable orientada al bus.
El objetivo se logra mediante un procedimiento para realizar una actualización del sistema operativo para un dispositivo bus de una instalación eléctrica programable orientada al bus, en el que el dispositivo bus comprende un procesador (microcontrolador) y una memoria, el procedimiento comprende los siguientes pasos:
Proporcionar una aplicación de actualización que incluye una pila de comunicación y una adaptación de hardware correspondiente para la comunicación y el acceso flash del dispositivo;
Cargar la aplicación de actualización en la memoria, por lo que después de la carga la aplicación de actualización toma el control del dispositivo bus y el sistema operativo existente ya no responde;
Inicializar los vectores de interrupción para que se remitan a la aplicación de actualización;
Realizar la actualización del sistema operativo, en la que los datos individuales del dispositivo se almacenan de tal manera que la aplicación de actualización pueda acceder a ellos durante la realización de la actualización del sistema operativo; y en la que la comunicación del dispositivo bus se lleva a cabo a través de la aplicación de actualización durante la realización de la actualización del sistema operativo. Debido a la separación de la aplicación de actualización y el nuevo sistema operativo, la aplicación de actualización requiere poco espacio de almacenamiento en el dispositivo bus. Además, el esfuerzo de desarrollo de la aplicación de actualización es menor, ya que no es necesario integrar el sistema operativo en una aplicación. Se puede desarrollar una aplicación de actualización estándar que se pueda adaptar fácilmente a diferentes hardware y que se pueda usar para diferentes actualizaciones del sistema operativo en el mismo hardware sin necesidad de realizar cambios. Ventajosamente el dispositivo bus es un usuario de bus KNX. La provisión de la aplicación de actualización se puede realizar, por ejemplo, creando, generando, programando o proporcionándola desde una biblioteca de programas.
Una primera realización ventajosa de la invención es que, después de que se haya realizado la actualización del sistema operativo, los vectores de interrupción del dispositivo bus se establecen para el nuevo sistema operativo. Una vez completada la actualización, los vectores de interrupción se inicializan para que se ajusten al nuevo sistema operativo. Ventajosamente el dispositivo se reinicia después de que se hayan inicializado los vectores de interrupción.
Otra realización ventajosa de la invención es que después de que se haya realizado la actualización del sistema operativo, los datos individuales del dispositivo bus se fijan para el nuevo sistema operativo. Los datos individuales del dispositivo bus son, por ejemplo, el número de serie, la fecha de producción, la dirección individual o los datos de calibración de la inspección final.
Otra realización ventajosa de la invención es que después de reiniciar el dispositivo bus, el nuevo sistema operativo toma el control del dispositivo bus. Después de cargar y reiniciar la aplicación de actualización, la aplicación de actualización toma el control exclusivo del dispositivo bus. El sistema operativo existente ya no responde.
Otra realización ventajosa de la invención es que la aplicación anterior ya presente en el dispositivo bus está desactivada antes de que se realice la actualización del sistema operativo. Al desactivar la aplicación anterior que ya está en el dispositivo bus se garantiza que no interfiere en la realización de la actualización del sistema operativo.
Otra realización ventajosa de la invención es que después de que se haya realizado la actualización del sistema operativo, se carga una nueva aplicación en el dispositivo bus.
Debido a que una nueva aplicación se carga en el dispositivo bus inmediatamente después de que se haya realizado la actualización del sistema operativo, el tiempo de cambio o actualización para el dispositivo bus se mantiene muy bajo.
Otra realización ventajosa de la invención es que la aplicación de actualización y el nuevo sistema operativo se cargan a través de una interfaz de bus (KNX) del dispositivo bus para la instalación eléctrica programable orientada al bus. En esta realización, no se requiere ninguna herramienta externa (como herramienta de carga), porque se usa otro dispositivo bus del sistema de automatización de edificios como herramienta de carga.
Otra realización ventajosa de la invención es que la carga de la aplicación de actualización y del nuevo sistema operativo se lleva a cabo a través de una interfaz externa del dispositivo bus. Por ejemplo, se puede cargar la aplicación de actualización a través de una interfaz USB del dispositivo bus utilizando un dispositivo de configuración (por ejemplo, ETS). Como resultado, el tráfico del bus (traffic) no se ve afectado durante el proceso de carga.
El objetivo se logra además mediante un programa informático para realizar una actualización del sistema operativo para un dispositivo bus de una instalación eléctrica programable orientada al bus con instrucciones para ejecutar el procedimiento según la invención. Esto permite que una actualización del sistema operativo se realice asistido por el ordenador y de manera efectiva, por ejemplo, mediante un ordenador personal (PC), en particular por un cliente final.
El objetivo se logra además mediante un medio legible por ordenador que tiene instrucciones que se pueden ejecutar en un ordenador para llevar a cabo una actualización del sistema operativo de acuerdo con el procedimiento según la invención. Como resultado, el programa de ordenador para realizar una actualización del sistema operativo puede implementarse o instalarse muy fácilmente en un ordenador (en particular en un cliente final en el campo).
El objetivo se consigue además mediante un dispositivo bus de una instalación eléctrica programable orientada al bus, adecuada para llevar a cabo el procedimiento según la invención. Con un dispositivo bus de este tipo, un cliente final puede realizar una actualización del sistema operativo. Un cliente para una actualización del sistema operativo no necesita retirar el dispositivo bus, enviarlo al fabricante o proveedor y luego reinstalarlo.
La invención, así como las realizaciones ventajosas de la presente invención, se explican usando como ejemplo las figuras siguientes. En ellas se muestra:
FIGURA 1 muestra un primer ejemplo de disposición de un sistema de automatización de edificios con dos dispositivos de bus ejemplares,
FIGURA 2 muestra un segundo ejemplo de disposición de un sistema de automatización de edificios con varios usuarios de bus ejemplares,
FIGURA 3 muestra un primer ejemplo de memoria de un dispositivo bus de una instalación eléctrica programable orientada al bus con aplicación y sistema operativo cargados,
FIGURA 4 muestra un segundo ejemplo de memoria de un dispositivo bus de una instalación eléctrica programable orientada al bus con aplicación de actualización cargada y sistema operativo,
FIGURA 5 muestra un primer ejemplo de diagrama de flujo para un procedimiento para realizar una actualización del sistema operativo para un dispositivo bus de una instalación eléctrica programable orientada al bus, y
FIGURA 6 muestra un segundo ejemplo de diagrama de flujo para un procedimiento para realizar una actualización del sistema operativo para un dispositivo bus de una instalación eléctrica programable orientada al bus.
Las instalaciones de edificios, en particular las instalaciones eléctricas para el control de fuentes de luz, persianas, ventiladores, calefacción, sistemas de alarma, etc., a menudo se llevan a cabo utilizando tecnología de bus estandarizada, por ejemplo, con un sistema de bus KNX. Con un sistema de bus KNX, están conectados y controlados los elementos de control (sensores) y los actuadores correspondientes en un edificio. Cada usuario en dicho sistema de bus tiene su propio microprocesador y, por lo tanto, puede administrar sus datos por su propia cuenta e independientemente de cualquier procesador central. Para este propósito, a cada dispositivo bus se asigna un programa de aplicación con los objetos y parámetros de comunicación correspondientes. Al poner en funcionamiento un sistema de bus KNX (o un sistema similar), se deben proyectar las relaciones de comunicación y los parámetros de los dispositivos de bus. La herramienta de software de ingeniería (ETS) se usa normalmente para proyectar sistemas de bus KNX. El ETS es una herramienta gráfica basada en una base de datos para proyectar instalaciones eléctricas programables orientadas al bus. Usando una base de datos, los datos de proyección, es decir las relaciones de comunicación y los parámetros del dispositivo, son creados por separado en el ETS para cada dispositivo bus o para cada programa de aplicación y finalmente son transferidos o alimentados al sistema de bus y sus dispositivos de bus a través de una interfaz (por ejemplo, interfaz de datos USB).
Un dispositivo de instalación de edificios permite controlar individualmente las instalaciones individuales del edificio, como por ejemplo una lámpara o un radiador, de acuerdo con un plan de funcionamiento predeterminado, al proporcionar un dispositivo bus en cada instalación del edificio que controla la instalación del edificio respectiva, por ejemplo, enciende y apaga automáticamente una lámpara o regula el termostato de un radiador. Los dispositivos de bus se pueden conectar entre sí y también a un dispositivo de configuración central a través de un bus de instalación del edificio, de modo que los dispositivos pueden intercambiar datos entre sí y los dispositivos de bus se pueden configurar o reconfigurar de manera centralizada a través del dispositivo de configuración. Los datos que se intercambian entre los dispositivos de bus pueden ser, por ejemplo, datos de los sensores o datos de control.
La Figura 1 muestra un ejemplo de disposición para un sistema de automatización de edificios GBS1 basado en una instalación eléctrica programable orientada al bus con dos dispositivos de bus ejemplares G1, G2, que están conectados a través de un bus de instalación B1, por ejemplo, un bus KNX. La representación según la figura 1 es solo una representación esquemática, en la que las proporciones de tamaño de los elementos mostrados no se muestran en función de la realidad.
Un dispositivo bus G1, G2 generalmente tiene un procesador MK como unidad de control, por ejemplo, un microcontrolador. La unidad de control MK puede generar comandos de control para la instalación de edificio conectada GBS1 y/o evaluar los datos del sensor de la instalación del edificio GBS1. Para permitir que la unidad de control MK intercambie datos con el bus de instalación del edificio B1, un dispositivo bus G1, G2 suele tener un circuito de conexión especial como acoplador de bus BK. Esto puede ser, por ejemplo, un circuito integrado (circuito integrado IC). El circuito de conexión BK también incluye las conexiones eléctricas para conectar el dispositivo bus G1, G2 al bus de instalación del edificio B1.
Un procesador MK como unidad de control de un dispositivo bus G1 generalmente dispone de los siguientes tipos de memoria:
- una memoria RAM (memoria de acceso aleatorio) para almacenar los datos generados durante el funcionamiento;
- una memoria ROM (memoria de solo lectura), en la que, por ejemplo, también se pueden almacenar los datos individuales del dispositivo;
- una memoria flash (por ejemplo, EEPROM) para el almacenamiento persistente de los programas de aplicación y los datos de configuración correspondientes, así como del sistema operativo. Los datos individuales del dispositivo también se pueden almacenar en una parte de la memoria flash.
En la ilustración según la figura 1, el procesador MK del dispositivo bus G1 comprende una memoria flash ejemplar SP1, especialmente adecuada para recibir el sistema operativo y las aplicaciones (los programas y las parametrizaciones correspondientes) para el dispositivo bus G1.
El dispositivo bus G1 es ventajosamente un usuario de bus (por ejemplo, un actuador o sensor) de una instalación eléctrica programable orientada al bus GBS1 (por ejemplo, sistema KNX), en el que el dispositivo bus G1 comprende al menos un procesador (por ejemplo, microcontrolador) MK y una memoria SP1 (por ejemplo, una memoria flash persistente).
El dispositivo bus G1 está configurado para cargar en la memoria SP, a través de una interfaz de bus BK (acoplador de bus) o mediante una interfaz externa SS1 (por ejemplo, interfaz USB), una aplicación de actualización UP-A1, que incluye una pila de comunicación y una adaptación de hardware correspondiente para la comunicación y el acceso flash del dispositivo bus G1. Sobre la interfaz externa SS1 la aplicación de actualización UP-A1 puede ser transferida, por ejemplo, desde un dispositivo de configuración, (herramienta de carga por ejemplo ETS (herramienta software de ingeniería)) sobre el dispositivo G1.
La Figura 2 muestra un segundo ejemplo de disposición para un sistema de automatización de edificios GBS2 con varios usuarios de bus ejemplares G3 - G6, y una central de control opcional LS (por ejemplo, una estación de gestión de edificios), que están conectados a través de un bus de instalación de edificios B2 (por ejemplo, bus KNX).
En la ilustración según la figura 2, una actualización del sistema operativo para el dispositivo bus G3 se lleva a cabo cargando la aplicación de actualización UP-A2, que comprende una pila de comunicación y una adaptación de hardware correspondiente para la comunicación y el acceso flash del dispositivo G3, a través de la interfaz externa SS2, por ejemplo, una interfaz USB. El dispositivo bus G3 está configurado para que la aplicación de actualización UP-A2 se cargue en la memoria del dispositivo G3, en el que tras completarse la carga, la aplicación de actualización UP-A2 asume el control del dispositivo bus G3 y el sistema operativo existente ya no responde. Igualmente, los vectores de interrupción se inicializan para que estos se remitan a la aplicación de actualización UP-A2. A continuación se realiza la actualización del sistema operativo, en el que los datos individuales del dispositivo se almacenan de tal manera que la aplicación de actualización UP-A2 puede acceder a ellos mientras se realiza la actualización del sistema operativo, y en el que mientras se realiza la actualización del sistema operativo se produce la comunicación del dispositivo bus a través de la aplicación de actualización UP-A2.
En la ilustración según la figura 2, la aplicación de actualización UP-A2 y el nuevo sistema operativo se cargan en el dispositivo G3 a través de la conexión de comunicación KV (por ejemplo, un cable de transmisión USB) y a través de la interfaz SS2.
El dispositivo de configuración KG es ventajosamente un ETS (herramienta software de ingeniería) para sistemas KNX.
La figura 3 muestra un primer ejemplo de memoria SP2 de un dispositivo bus G7 de una instalación eléctrica programable orientada al bus con aplicación cargada A y sistema operativo BS. El sistema operativo BS incluye una pila de comunicación CS para comunicar el dispositivo G7, por ejemplo, con otros usuarios del bus. La pila de comunicación CS consta de la funcionalidad requerida para que un dispositivo bus envíe y reciba datos.
La ilustración de la figura 3 muestra el escenario inicial, con el sistema operativo BS como sistema operativo a intercambiar. En la Figura 3, tanto la aplicación A como el sistema operativo BS están activos.
La figura 4 muestra un segundo ejemplo de memoria SP3 de un dispositivo bus G8 de una instalación eléctrica programable orientada al bus con la aplicación de actualización cargada UP-A3 y el sistema operativo BS. La aplicación de actualización UP-A3 incluye una pila de comunicación y la adaptación de hardware correspondiente para la comunicación y el acceso flash del dispositivo G8.
Esta aplicación de actualización UP-A3 se carga en el dispositivo en la posición en la que también estaría la aplicación "normal".
Después de cargar la aplicación de actualización UP-A3, la aplicación de actualización UP-A3 toma el control exclusivo del dispositivo G8. El sistema operativo existente BS ya no responde. Esto también significa que los vectores de interrupción se inicializan de tal manera que todos se refieran a la aplicación de actualización UP-A3.
Ventajosamente se almacenan todos los datos individuales de tal manera que la aplicación de actualización UP-A3 puede acceder a ellos mientras se realiza la actualización del sistema operativo y esta área de memoria se borra o se reescribe. Los datos individuales incluyen, por ejemplo, la dirección individual, el número de serie, los datos de fabricación del dispositivo G8.
Durante la actualización del sistema operativo (o la carga del nuevo sistema operativo), la comunicación con el dispositivo G8 se realiza a través de la aplicación de actualización UP-A3 y el espacio de memoria para el sistema operativo puede ser escrito directamente por la herramienta de actualización (por ejemplo, ETS para sistemas KNX).
Una vez que se ha completado la carga del nuevo sistema operativo, los vectores de interrupción se inicializan para adaptarse al nuevo sistema operativo y ventajosamente el dispositivo G8 se reinicia. Esto da como resultado que después del reinicio el control pasa al nuevo sistema operativo.
Al final (antes de reiniciar), la aplicación de actualización UP-A3 puede configurar de nuevo los datos individuales en el nuevo sistema operativo, o la imagen para la actualización se parchea con los datos previamente leídos por la herramienta de carga (por ejemplo, ETS) de esta manera los datos ya están almacenados correctamente en la imagen del sistema operativo.
En determinadas circunstancias puede ser necesario, durante la carga, escribir el bloque con los vectores de interrupción en otro lugar. La aplicación de actualización UP-A3 copia los datos en la posición correcta en la memoria SP3 (por ejemplo, memoria flash) antes de reiniciar. Esto es necesario para garantizar que el tiempo en que un corte de energía causa un dispositivo defectuoso sea lo más corto posible. La fuente de alimentación para volver a copiar el bloque está proporcionada por el electro condensador de carga de la fuente de alimentación.
Como paso siguiente la nueva aplicación también se puede cargar en el dispositivo GB.
Con este procedimiento, el nuevo sistema operativo a transmitir también puede transmitirse en forma comprimida o encriptada. En este caso, la aplicación de actualización UP-A3 también se encarga de la desencriptación o descomprensión. La clave para la descompresión se puede negociar entre la aplicación de actualización UP-A3 y la herramienta (herramienta de carga, por ejemplo, ETS) en tiempo de ejecución. Se pueden utilizar procedimientos de comprimir habituales (por ejemplo, RLE) o de cifrado (por ejemplo, RSA).
De esta manera se evita que los datos del sistema operativo (código de programa) sean espiados durante la transmisión. Debido al almacenamiento permanente de los datos individuales en la aplicación de actualización UP-A3, este procedimiento no puede verse influenciado o perturbado por una avería (por ejemplo, fallo de suministro) de tal manera que el dispositivo GB ya no se inicie de nuevo, ya que todos los datos relevantes continúan estando disponibles durante la actualización. Así, si se produce un fallo de suministro, el dispositivo puede reiniciarse normalmente (con la aplicación de actualización UP-A3) y la actualización puede continuar.
Ventajosamente la aplicación de actualización UP-A3 solo implementa aquellas partes de la pila de comunicación que se requieren para la identificación (después de un fallo de suministro) y la carga.
La figura 5 muestra un primer ejemplo de diagrama de flujo para un procedimiento para realizar una actualización del sistema operativo para un dispositivo bus de una instalación eléctrica programable orientada al bus, en el que el dispositivo bus comprende un procesador (microcontrolador) y una memoria, el procedimiento abarca los siguientes pasos:
(VS1) proporcionar una aplicación de actualización que comprende una pila de comunicación y una adaptación del hardware correspondiente para la comunicación y el acceso flash del dispositivo;
(VS2) cargar la aplicación de actualización en la memoria, en el que después de la carga, la aplicación de actualización toma el control del dispositivo bus y el sistema operativo existente ya no responde;
(VS3) inicializar los vectores de interrupción para que se remitan a la aplicación de actualización;
(VS4) realizar la actualización del sistema operativo, en el que los datos individuales del dispositivo se almacenan de tal manera que, la aplicación de actualización pueda acceder a ellos mientras se realiza la actualización del sistema operativo; y en el que, mientras se realiza la actualización del sistema operativo, se produce la comunicación del dispositivo bus a través de la aplicación de actualización.
Ventajosamente la aplicación anterior se desactiva antes de llevar a cabo el procedimiento. La aplicación de actualización se puede proporcionar, por ejemplo, creándola, generándola o programándola o proporcionándola desde una biblioteca de programas. La aplicación de actualización puede, por ejemplo, obtenerse como software "COTS" (Commercials Off The Shelf) descargándolo de Internet. La aplicación de actualización puede incluir la pila de comunicación o los medios (por ejemplo, el código de programa correspondiente) para administrar la pila de comunicación.
El procedimiento puede llevarse a cabo con el hardware (bus de comunicación, dispositivos de bus, dispositivos de configuración (por ejemplo, ETS)) generalmente disponible en una instalación eléctrica programable orientada al bus con el software apropiado.
En particular, el procedimiento se utiliza ventajosamente para los productos KNX (actuadores, sensores, etc.).
La figura 6 muestra un segundo ejemplo de diagrama de flujo para realizar la actualización del sistema operativo según la invención para un dispositivo bus de una instalación eléctrica programable orientada al bus, en el que el dispositivo bus comprende un procesador (microcontrolador) y una memoria, el procedimiento comprende los siguientes pasos:
(VS1') desactivar la aplicación anterior (opcional);
(VS2') cargar la aplicación de actualización en el dispositivo;
(VS3') la aplicación de actualización toma el control y aplica los vectores de interrupción y recuerda los datos individuales del dispositivo;
(VS4') el sistema operativo anterior se reemplaza por un nuevo sistema operativo;
(VS5') los vectores de interrupción y los individuales se configuran para el nuevo sistema operativo;
(VS6') después de un reinicio, el nuevo sistema operativo toma el control;
(VS7') la nueva aplicación se carga en el dispositivo (opcional).
El procedimiento puede llevarse a cabo con el hardware (bus de comunicación, dispositivos bus, dispositivos de configuración (por ejemplo, ETS)) generalmente disponibles en una instalación eléctrica programable orientada al bus, con el software apropiado.
Ventajosamente, el procedimiento se utiliza en particular para los productos KNX (actuadores, sensores, etc.).
La ventaja de la presente invención radica, en particular, en la separación de la aplicación de actualización y el nuevo sistema operativo. Como resultado, la aplicación de actualización es más pequeña, es decir ocupa menos espacio de memoria. Esta separación permite, tras la negociación de una clave, proteger los datos del sistema operativo contra el acceso no autorizado durante la transmisión.
Además, el esfuerzo de desarrollo es menor, ya que no es necesario integrar el sistema operativo en una aplicación. Se puede desarrollar una aplicación de actualización estándar que se pueda adaptar fácilmente a diferentes hardware (por ejemplo, diferentes tipos de dispositivos) y que se pueda usar para diferentes actualizaciones del sistema operativo en el mismo hardware sin cambios. En este sentido, el mismo hardware significa que solo el hardware en el área de comunicación tiene que ser idéntico. Todo lo demás solo tiene que ser inicializado para que el hardware se mantenga en un estado seguro. Por lo tanto, es posible crear una aplicación de actualización dedicada para una familia completa de dispositivos (por ejemplo, actuadores binarios con 2, 4, 8 o 12 canales). Esto facilita la creación automática de actualizaciones del sistema operativo durante el desarrollo, o se pueden utilizar directamente los datos necesarios para la producción de los dispositivos.

Claims (11)

REIVINDICACIONES
1. Procedimiento para realizar una actualización de un sistema operativo para un dispositivo bus (G1 - G8) de una instalación eléctrica programable orientada al bus (GBS1, GBS2), en el que el dispositivo bus (G1 - G8) está compuesto de un procesador (MK) y una memoria flash (SP1 - SP3), el procedimiento consta de los siguientes pasos:
(VS1) proporcionar una aplicación de actualización (UP-A1- UP-A3) que comprende una pila de comunicación (CS) y una adaptación del hardware correspondiente para la comunicación y el acceso flash del dispositivo (G1 - G8);
Cargar la aplicación de actualización (UP-A1 - UP-A3) en la memoria flash, en el que después de la carga, la aplicación de actualización (UP-A1- UP-A3) toma el control del dispositivo bus (G1 - G8) y el sistema operativo existente (BS) ya no responde;
Inicializar los vectores de interrupción para que se remitan a la aplicación de actualización (UP-A1 - UP-A3) en la memoria flash;
Realizar la actualización del sistema operativo, en el que los datos individuales del dispositivo (G1 - G8) se almacenan de tal manera que, la aplicación de actualización (UP-A1 - UP-A3) puede acceder a ellos mientras se realiza la actualización del sistema operativo; y en el que, mientras se realiza la actualización del sistema operativo, se produce la comunicación del dispositivo bus (G1 - G8) a través de la aplicación de actualización (UP-A1 - UP-A3).
2. Procedimiento según la reivindicación 1,
en el que, después de la realización de la actualización del sistema operativo, los vectores de interrupción del dispositivo bus (G1 - G8) se establecen para el nuevo sistema operativo.
3. Procedimiento según una de las reivindicaciones anteriores,
en el que después de la realización de la actualización del sistema operativo, los datos individuales del dispositivo bus (G1 - G8) se establecen para el nuevo sistema operativo.
4. Procedimiento según una de las reivindicaciones anteriores,
en el que después de reiniciar el dispositivo bus (G1 - G8) el nuevo sistema operativo toma el control del dispositivo bus (G1 - G8).
5. Procedimiento según una de las reivindicaciones anteriores,
en el que la antigua aplicación ya existente en el dispositivo bus (G1 - G8) se desactiva antes de que se realice la actualización del sistema operativo.
6. Procedimiento según una de las reivindicaciones anteriores,
en el que se carga una nueva aplicación en el dispositivo bus (G1 - G8) después de realizar la actualización del sistema operativo.
7. Procedimiento según una de las reivindicaciones anteriores,
en el que la carga de la aplicación de actualización (UP-A1 - UP-A3) y del nuevo sistema operativo tiene lugar a través de una interfaz de bus (KNX) del dispositivo bus (G1 - G8) para la instalación eléctrica programable orientada al bus (GBS1, GBS2).
8. Procedimiento según una de las reivindicaciones anteriores,
en el que la carga de la aplicación de actualización (UP-Al - UP-A3) y del nuevo sistema operativo se realiza a través de una interfaz externa del dispositivo bus (G1 - G8).
9. Programa informático para realizar una actualización del sistema operativo para un dispositivo bus (G1 - G8) de una instalación eléctrica programable orientada al bus (GBS1, GBS2) con instrucciones para llevar a cabo el procedimiento según una de las reivindicaciones 1 a 8.
10. Medio legible por ordenador que tiene comandos que pueden ejecutarse en un ordenador para realizar una actualización del sistema operativo según un procedimiento según una de las reivindicaciones 1 a 8 para un dispositivo bus (G1 - G8) de una instalación eléctrica programable orientada al bus (GBS1, GBS2).
11. Dispositivo bus (G1 - G8) de una instalación eléctrica programable orientada al bus (GBS1, GBS2), adecuado para llevar a cabo un procedimiento según una de las reivindicaciones 1 a 8.
ES16175806T 2015-07-14 2016-06-22 Procedimiento para realizar una actualización de un sistema operativo Active ES2779321T3 (es)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102015213138.6A DE102015213138A1 (de) 2015-07-14 2015-07-14 Verfahren zur Durchführung eines Betriebssystem-Updates

Publications (1)

Publication Number Publication Date
ES2779321T3 true ES2779321T3 (es) 2020-08-14

Family

ID=56263540

Family Applications (1)

Application Number Title Priority Date Filing Date
ES16175806T Active ES2779321T3 (es) 2015-07-14 2016-06-22 Procedimiento para realizar una actualización de un sistema operativo

Country Status (3)

Country Link
EP (1) EP3118739B1 (es)
DE (1) DE102015213138A1 (es)
ES (1) ES2779321T3 (es)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114879988A (zh) * 2022-04-20 2022-08-09 宁波天擎航天科技有限公司 一种在线升级方法、装置、计算机设备及存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2995030B2 (ja) * 1998-03-31 1999-12-27 三洋電機株式会社 コンピュータシステム、並びにコンピュータシステムにおけるプログラム及びデータの修正方法
JP3727485B2 (ja) * 1999-04-02 2005-12-14 シャープ株式会社 不揮発性メモリ内蔵マイクロコンピュータ
US7093244B2 (en) * 2001-04-18 2006-08-15 Domosys Corporation Method of remotely upgrading firmware in field-deployed devices
DE102015207900B4 (de) 2015-04-29 2022-01-20 Siemens Schweiz Ag Verfahren zur Durchführung eines Betriebssystem-Updates

Also Published As

Publication number Publication date
EP3118739A1 (de) 2017-01-18
EP3118739B1 (de) 2020-01-29
DE102015213138A1 (de) 2017-01-19

Similar Documents

Publication Publication Date Title
US9411574B2 (en) System and method for updating firmware across devices in a process facility
JP6520545B2 (ja) サポート装置およびサポートプログラム
US20150149783A1 (en) Method and Apparatus for Secure Distribution of Embedded Firmware
US10387141B2 (en) Upgradable firmware system
JP6623856B2 (ja) スレーブ装置、スレーブ装置の制御方法、情報処理プログラム、および記録媒体
CN110178117B (zh) 控制装置
TW201721412A (zh) 選擇及載入韌體卷區之技術
TW201525870A (zh) 可更新積體電路無線電
ES2779321T3 (es) Procedimiento para realizar una actualización de un sistema operativo
JP2009070144A (ja) Plcにおけるプログラミング方法
WO2019207729A1 (ja) 産業用コンピュータ、産業用コンピュータシステム、オペレーティングシステム更新方法及びプログラム
JP2010022175A (ja) インバータ制御システム,インバータ装置の周辺機器
JP2006221274A (ja) 車両用電子制御装置および制御プログラムの書換え方法
CA3073525C (en) Stack safety for independently defined operations
KR102392474B1 (ko) 사물인터넷 모듈
JP2007249748A (ja) バージョン管理機能を有するネットワーク機器
TWI708148B (zh) 用於將移動裝置介接至一或多個週邊裝置的設備及用於配置移動裝置及一或多個週邊裝置間之通訊路徑的方法
CN102763046A (zh) 可编程控制器以及程序设计装置
EP3951518A1 (en) Control system, security device, and method
JP6001962B2 (ja) インバータ装置
JP2018128722A (ja) プログラマブルロジックコントローラ
CN110471675B (zh) 一种程序烧录方法、***、装置及计算机可读存储介质
JP2010134591A (ja) 制御システムおよびこれに用いるプログラマブルコントローラ
US20170076073A1 (en) License information management device, license information management method, and program
JP6582438B2 (ja) 情報処理装置、システム設定方法、及び、コンピュータ・プログラム