ES2242067T3 - Modulo de radiocomunicaciones que ejecuta un programa de ordenador principal, donde las capas bajas estan abiertas a un programa de ordenador cliente que tambien es ejecutado por el modulo. - Google Patents

Modulo de radiocomunicaciones que ejecuta un programa de ordenador principal, donde las capas bajas estan abiertas a un programa de ordenador cliente que tambien es ejecutado por el modulo.

Info

Publication number
ES2242067T3
ES2242067T3 ES02774916T ES02774916T ES2242067T3 ES 2242067 T3 ES2242067 T3 ES 2242067T3 ES 02774916 T ES02774916 T ES 02774916T ES 02774916 T ES02774916 T ES 02774916T ES 2242067 T3 ES2242067 T3 ES 2242067T3
Authority
ES
Spain
Prior art keywords
application
client
level
client application
source
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.)
Expired - Lifetime
Application number
ES02774916T
Other languages
English (en)
Inventor
Jacques Montes
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.)
Sierra Wireless SA
Original Assignee
Wavecom SA
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 Wavecom SA filed Critical Wavecom SA
Application granted granted Critical
Publication of ES2242067T3 publication Critical patent/ES2242067T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/325Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the network layer [OSI layer 3], e.g. X.25
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Stored Programmes (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephonic Communication Services (AREA)
  • Transceivers (AREA)
  • Storage Device Security (AREA)

Abstract

Módulo de radiocomunicaciones que garantiza las funciones de radiocomunicaciones y destinado a ser: - integrado en un terminal de un radioteléfono, o - integrado en un dispositivo que necesita una funcionalidad de comunicaciones inalámbricas, o - propuesto en forma independiente, como módem que puede ser hecho cooperar con un equipo de terceros, siendo dicho módulo de radiocomunicaciones del tipo que alberga y ejecuta un software principal, que comprende: - una aplicación de gestión del sistema de explotación (OS), - una aplicación de gestión de las radiocomunicaciones (capa 3 GSM), - una aplicación de gestión de periféricos que pueden ser conectados al módulo de radiocomunicaciones (HWL), caracterizado porque cada una de las mencionadas aplicaciones incluidas en el software principal está asociada a un juego de funciones de ejecución de nivel 1, porque dicho módulo de radiocomunicaciones alberga y ejecuta, además, al menos un software cliente que comprende, por lo menos, una aplicación cliente, asociada a un juego de funciones de nivel 1, y porque dicho software principal y/o dicho software cliente comprenden una aplicación de interconexión de nivel 1, que permite la interconexión de funciones fuente de nivel 1, asociada a la citada aplicación cliente, con las funciones de ejecución de nivel 1 asociadas a la citada aplicación de gestión del sistema de explotación y a, por lo menos, una de las citadas aplicaciones de gestión de las radiocomunicaciones y de gestión de periféricos, con el fin de abrir, para dicha al menos una aplicación cliente, el acceso a, por lo menos, determinadas funcionalidades del software principal.

Description

Módulo de radiocomunicaciones que ejecuta un programa de ordenador principal, donde las capas bajas están abiertas a un programa de ordenador cliente que también es ejecutado por el módulo.
El campo del invento es el de los sistemas de radiocomunicaciones, en particular, pero no exclusivamente, según la norma (GSM (en inglés "Global System for Mobile communications", es decir, "Sistema global para comunicaciones móviles"), DCS 1800 (en inglés "Digital Cellular System 1800 MHz", es decir, "Sistema celular digital a 1800 MHz"), PCS 1900 (en inglés "Personal Communication System", es decir, "Sistema personal de comunicaciones"), GPRS (en inglés "General Packet Radio Service", es decir, "Servicio general de radio por paquetes") o, incluso, UMTS (en inglés "Universal Mobile Telecommunication System", es decir, "Sistema universal de comunicaciones móviles").
Más precisamente, el invento se refiere a un módulo de radiocomunicaciones. Se recuerda que el módulo de radiocomunicaciones constituye un elemento esencial de un radioteléfono.
Habitualmente (primera aplicación), el módulo de radiocomunicaciones está incluido en un terminal (un ME o "Mobile Equipment" en inglés, es decir, un "equipo móvil") que coopera con una tarjeta SIM (acrónimo, en inglés, de "Subscriber Identity Module", o "Módulo de identidad de abonado").
Otras aplicaciones han sido consideradas, desde ahora, para el mencionado módulo de radiocomunicaciones.
En especial, se ha propuesto (segunda aplicación) integrar el módulo de radiocomunicaciones en dispositivos que no son terminales de radiocomunicaciones pero que, no obstante, requieren una funcionalidad de comunicaciones inalámbricas. A título de ejemplo, se pueden citar los dispositivos de telemetría (registros de ordenador), los dispositivos de alarma o, incluso, los dispositivos lectores de tarjetas bancarias.
Igualmente, se ha propuesto (tercera aplicación) suministrar el módulo de radiocomunicaciones en forma independiente: entonces, se le denomina módem. Un módem de esta clase no incluye ningún elemento material (pantalla, teclado, altavoz,...) para interconexión hombre/máquina. Está destinado a cooperar con un equipo de terceros (que soporta un software cliente), que posee los elementos materiales de interconexión hombre/máquina. De manera más particular, aunque no en forma exclusiva, el tercer equipo es un micro-ordenador.
Típicamente, el módulo de radiocomunicaciones alberga y ejecuta un software principal que comprende:
\bullet
una aplicación de gestión del sistema de explotación, denominada también bloque "OS" (en inglés "Operating System", es decir, "Sistema operativo") que administra los aspectos del sistema tales como la gestión de tareas, la gestión de memoria, la gestión de temporización, etc.;
\bullet
una aplicación de gestión de radiocomunicaciones, denominada también bloque "capa 3 GSM" que administra los aspectos de la red tales como la gestión de llamadas salientes y entrantes, la gestión de recepción y envío de mensajes cortos de texto, etc. Se observará que el bloque "capa 3 GSM" puede que no respete la totalidad de las recomendaciones GSM para las capas 3. Igualmente, puede estar conforme a otra norma (DCS 1800, PCS 1900, GPRS, UMTS,...);
\bullet
una aplicación de gestión de periféricos que pueden conectarse al módulo de radiocomunicaciones, denominada también bloque "HWL" (en inglés "Hardware Layer", es decir, "Capa de hardware"). Por periféricos se entiende, en particular pero no exclusivamente, una pantalla, un teclado, un micrófono, un altavoz, una línea general de transmisión en serie, un elemento de entrada/salida (GPIO) (en inglés "General Purpose Inputs/Outputs", es decir, "Entrada/salida para fines generales"), una batería, un lector de SIM, etc.;
\bullet
una aplicación propietaria, que accede a los tres bloques "OS", "capa 3 GSM" y "HWL" citados con el fin de ofrecer al usuario una pluralidad de funcionalidades propias de un dispositivo que integra el módulo de radiocomunicaciones. Se recuerda que este dispositivo es, por ejemplo, un radioteléfono (primera aplicación mencionada), "otro dispositivo" (segunda aplicación mencionada) o, incluso, un módem (tercera aplicación mencionada).
En la actualidad, el software principal es un software propietario, desarrollado por el fabricante del módulo de radiocomunicaciones. Comprende un fichero binario que contiene, en particular, la aplicación propietaria así como los bloques "OS", "capa 3 GSM" y "HWL" mencionados. De manera clásica, este fichero binario es el resultado de la compilación de una pluralidad de ficheros fuente (por ejemplo, en lenguaje "C") más una edición posterior de enlace entre los ficheros fuente compilados (denominados, también, ficheros objeto).
La técnica actual, según la cual el software principal es un software propietario, presenta diversos inconvenientes.
De entrada, no permite que un cliente desarrolle, por sí mismo, su propia aplicación. En efecto, el cliente imperativamente debe desarrollar su aplicación por medio del constructor del módulo de radiocomunicaciones (para conseguir la aplicación propietaria mencionada).
Otro inconveniente de la técnica actual es que si el cliente quiere introducir modificaciones en la aplicación propietaria, debe también, imperativamente, recurrir al constructor del módulo de radiocomunicaciones. El cliente no es dueño, por tanto, de las evoluciones que desea realizar en su aplicación y debe contar, permanentemente, con los recursos del constructor del módulo de radiocomunicaciones.
El invento tiene por objeto, en particular, paliar estos distintos inconvenientes del estado de la técnica.
Más precisamente, uno de los objetos del presente invento es ofrecer una técnica que le permita a un cliente desarrollar su propia aplicación y, luego, alojarla y ejecutarla en un módulo de radiocomunicaciones. Esta aplicación, denominada "aplicación cliente", debe poder ser desarrollada por el propio cliente, con independencia del constructor del módulo de radiocomunicaciones. Debe sustituir a la mencionada "aplicación propietaria" en el seno del módulo de radiocomunicaciones.
El invento tiene igualmente por objeto permitir que el cliente desarrolle una aplicación cliente "distribuida", que comprenda una pluralidad de aplicaciones "de trabajo" que ejecutan varias tareas en tiempo real, entre las que el cliente puede definir sus prioridades.
Otro objeto del invento es ofrecer una arquitectura de software, en el seno de un módulo de radiocomunicaciones, que permita soportar una nueva técnica de control del módulo de radiocomunicaciones, que sea sencilla y barata (en términos de material y de consumo energético).
Se recuerda que la técnica actual de control de un módulo de radiocomunicaciones por un equipo de terceros, presenta varios inconvenientes. De entrada, requiere un doble juego de recursos (procesador y memoria). En efecto, el módulo de radiocomunicaciones comprende un procesador y una memoria (primer juego de recursos) y el equipo de terceros dispone, igualmente, de un procesador y de una memoria (segundo juego de recursos). La técnica actual mencionada es, por tanto, costosa en términos de material y de consumo energético. Otro inconveniente de la técnica actual mencionada es que el módulo de radiocomunicaciones soporta totalmente el control efectuado por el equipo de terceros. En efecto, el software cliente de control, residente en el equipo de terceros y ejecutado por él, es el "dueño" mientras que el software principal, residente en el módulo de radiocomunicaciones y ejecutado por él, es el
"esclavo".
Según otro objeto del invento, la nueva técnica de control del módulo de radiocomunicaciones, soportada por la nueva arquitectura de software según el invento, permite que el módulo de radiocomunicaciones, cuando el control lo realiza un equipo de terceros, pueda supervisar el desarrollo de este control (e incluso actuar sobre él). Dicho de otro modo, se desea que el módulo de radiocomunicaciones no juegue simplemente, un papel de esclavo.
Todavía otro objeto del invento es, en el contexto de la nueva técnica de control mencionada de un módulo de radiocomunicaciones, facilitar la tarea del cliente en el proceso de desarrollo de su propia aplicación cliente.
El invento tiene igualmente por objeto proponer una solución, simple y eficaz, a los problemas que surgen en el diálogo entre sub-aplicaciones cliente (principal y secundaria) a consecuencia de la puesta en práctica de un modo de realización particular del presente invento, en el que:
-
la aplicación cliente está "distribuida" en el sentido antes mencionado, y comprende:
*
una primera aplicación "de trabajo", que lleva a cabo una primera tarea en tiempo real de ejecución de comandos de control (por ejemplo, comandos AT),
*
una segunda aplicación "de trabajo", que lleva a cabo una segunda tarea en tiempo real tal que la segunda aplicación "de trabajo" juega el papel de una aplicación cliente de control y/o el papel de una aplicación cliente de supervisión;
-
la segunda aplicación "de trabajo" comprende, a su vez:
*
una sub-aplicación cliente principal,
*
al menos una sub-aplicación cliente secundaria.
Estos diferentes objetos, así como otros que aparecerán en lo que sigue, se alcanzan, según el invento, con ayuda de un módulo de radiocomunicaciones del tipo que aloja y ejecuta un software principal, que comprende: una aplicación de gestión del sistema de explotación (OS), una aplicación de gestión de las radiocomunicaciones (capa 3 GSM) y una aplicación de gestión de periféricos que pueden conectarse al módulo de radiocomunicaciones (HWL). Según el invento, cada una de las citadas aplicaciones incluidas en el software principal está asociada a un juego de funciones de ejecución de nivel 1. Dicho módulo de radiocomunicaciones aloja y ejecuta además, al menos, un software cliente que comprende, por lo menos, una aplicación cliente asociada a un juego de funciones fuente de nivel 1. Dicho software principal y/o dicho software cliente comprenden una aplicación de interconexión de nivel 1, que permite interconectar las funciones fuente de nivel 1, asociadas con dicha aplicación cliente, con las funciones de ejecución de nivel 1, asociadas a dicha aplicación de gestión del sistema de explotación y a, por lo menos, una de dichas aplicaciones de gestión de las radiocomunicaciones y de gestión de los periféricos. De esta forma, se abre a dicha al menos una aplicación cliente el acceso a, por lo menos, determinadas funcionalidades del software principal.
El principio general del invento consiste, por tanto, en utilizar dos software (principal y cliente) que pueden dialogar entre ellos, y alojar sobre el software cliente residente (al menos) una aplicación cliente. Así, el software principal no comprende ninguna aplicación principal propietaria. Dicho de otro modo, el acceso a las capas inferiores del módulo de radiocomunicaciones (bloques "OS", "capa 3 GSM" y "HWL" mencionados) desarrollados por el fabricante del módulo de radiocomunicaciones, está abierto a las aplicaciones cliente, desarrolladas por los clientes. El conjunto de estas capas inferiores se denomina también, en ocasiones, "Open-Stack" ("pila-abierta") en la descripción que sigue.
La nueva técnica según el invento puede contemplarse como una plataforma de software que permite que los clientes desarrollen sus propias aplicaciones cliente y las puedan telecargar en los módulos de radiocomunicaciones.
Los clientes pueden desarrollar, con independencia del constructor del módulo de radiocomunicaciones, sus propias aplicaciones y, luego, alojarlas en los módulos de radiocomunicaciones y hacer que estos las ejecuten. Igualmente, los clientes pueden modificar sus aplicaciones cliente, o hacerlas evolucionar, sin que para ello necesiten la intervención del fabricante del módulo de radiocomunicaciones.
Así, según el presente invento, se pueden distinguir los tres tipos de interconexión siguientes, según la aplicación de interconexión de nivel 1:
-
interconexión de la o de las aplicaciones cliente con los bloques "OS" y "capa 3 GSM";
-
interconexión de la o de las aplicaciones cliente con los bloques "OS" y "HWL";
-
interconexión de la o de las aplicaciones cliente con los bloques "OS", "capa 3 GSM" y "HWL".
Se observará que la o las aplicaciones cliente pueden estar contenidas en el software cliente en diversas formas:
-
sea una sola aplicación cliente, contenida en el software cliente en forma de fichero binario. La aplicación de interconexión de nivel 1 está contenida, en este caso, bien en este fichero binario (se supone que el fichero objeto que contiene la aplicación cliente ha sido objeto de una edición de enlace con el fichero objeto que contiene la aplicación de interconexión de nivel 1), bien en otro fichero binario;
-
sean varias aplicaciones cliente, contenidas en el software cliente en forma de un mismo fichero binario. La aplicación de interconexión de nivel 1 está contenida, en este caso, bien en este fichero binario (se supone que los ficheros objeto que contienen las aplicaciones cliente han sido objeto de una edición de enlace con el fichero objeto que contiene la aplicación de interconexión de nivel 1), bien en otro fichero binario;
-
sean varias aplicaciones cliente, contenidas en el software cliente en forma de varios ficheros binarios (conteniendo cada fichero binario una o más aplicaciones cliente). La aplicación de interconexión de nivel 1 está contenida, en este caso, en uno de estos ficheros binarios (se supone, para el fichero binario en cuestión, que el o los ficheros objeto que contienen la o las aplicaciones cliente han sido objeto de una edición de enlace con el fichero objeto que contiene la aplicación de interconexión de nivel 1), bien en otro fichero binario.
Se observará que la expresión "de nivel 1" se utiliza para calificar las entidades implicadas en las relaciones entre aplicación o aplicaciones cliente y aplicación o aplicaciones comprendidas en el software principal. Estas "entidades de nivel 1" son, en particular, las funciones de ejecución asociadas a las aplicaciones comprendidas en el software principal, las funciones fuente asociadas a la o a las aplicaciones cliente o, incluso, la aplicación de interconexión entre aplicación o aplicaciones cliente y aplicación o aplicaciones comprendidas en el software principal.
En lo que sigue, se utiliza una expresión distinta, a saber "de nivel 2", para calificar las entidades implicadas en las relaciones entre dos aplicaciones cliente, en el marco de un modo de realización particular del invento en relación con el control del módulo de radiocomunicaciones. Estas "entidades de nivel 2" son, especialmente, las funciones de ejecución y las funciones fuente específicas para los comandos de control (según la norma AT, por ejemplo) o, incluso, la aplicación de interconexión entre ellas.
De preferencia, el citado software cliente comprende una aplicación cliente de arranque global y, al menos, una aplicación cliente de trabajo que realiza por lo menos una tarea en tiempo real. El juego de funciones fuente de nivel 1 asociadas a la aplicación cliente de arranque global comprende una función fuente de nivel 1 de arranque global cuya misión es suministrar al software principal las informaciones que le permitan inicializar cada aplicación cliente de trabajo y dialogar con ella.
Así, el software principal no tiene por qué conocer esta función fuente de nivel 1 de arranque global para poder lanzar, cuando sea deseable, la aplicación cliente de arranque global. Por tanto, no tiene que conocer los puntos de diálogo (funciones fuente de nivel 1 de inicialización y de tratamiento de un mensaje) de cada aplicación cliente de trabajo. Estos puntos de diálogo se presentan con detalle en lo que sigue.
De manera preferente, dicho software cliente comprende, al menos, dos aplicaciones cliente de trabajo, cada una de ellas asociada a un juego de funciones fuente de nivel 1 y cada una de las cuales realiza, por lo menos, una tarea diferente en tiempo real. Dicho software principal y/o dicho software cliente comprende o comprenden medios para compartir los recursos de cálculo entre las mencionadas aplicaciones cliente de trabajo, con el fin de hacer posible un funcionamiento multitarea en tiempo real.
Ventajosamente, el juego de funciones fuente de nivel 1 asociadas a cada aplicación cliente de trabajo, comprende una función fuente de nivel 1 de inicialización, que permite inicializar dicha aplicación cliente de trabajo. Esta función fuente de nivel 1 de inicialización es llamada una vez por el software principal para inicializar la tarea realizada por la aplicación cliente de trabajo en cuestión.
De preferencia, dichas informaciones suministradas por la función fuente de arranque global al software principal, comprenden:
-
el número de aplicaciones cliente de trabajo que han de inicializarse;
-
para cada aplicación cliente de trabajo a inicializar, la función fuente de nivel 1 de inicialización correspondiente.
De manera preferible, el juego de funciones fuente de nivel 1 asociadas a cada aplicación cliente de trabajo, comprende una función fuente de nivel 1 de recepción y de tratamiento de un mensaje proveniente del software principal, siendo dicho mensaje un parámetro de la mencionada función fuente de nivel 1 de recepción y de tratamiento.
Esta función fuente de nivel 1 de recepción y de tratamiento de un mensaje es llamada cada vez que el software principal envía un mensaje a la aplicación cliente de trabajo correspondiente. Cada aplicación cliente posee su propia función fuente de nivel 1 de recepción y de tratamiento de un mensaje.
Preferiblemente, las citadas informaciones suministradas por la función fuente de nivel 1 de arranque global al software principal comprenden, además, para cada aplicación cliente de trabajo a inicializar, la función fuente de nivel 1 de recepción y de tratamiento.
De esta manera, el software principal dispone de dos puntos de diálogo (funciones fuente de nivel 1) con cada aplicación cliente, a saber, la función fuente de nivel 1 de inicialización y la función fuente de nivel 1 de recepción y tratamiento.
En un modo de realización particular del invento, el juego de funciones fuente de nivel 1 asociado a cada aplicación cliente de trabajo, comprende una función fuente de nivel 1 de inscripción en un servicio de buzón gestionado por el software principal, que permite a la mencionada aplicación cliente de trabajo destinar un buzón a las comunicaciones que le son dirigidas y en el que desea recibir informaciones provenientes de, al menos, una fuente predeterminada.
Preferiblemente, cada fuente predeterminada de informaciones es un buzón destinado a, al menos, una tarea principal efectuada por el software principal, y que contiene la informaciones que dicha tarea principal desea comunicar a otra u otras entidades. La o las otras entidades a las que una tarea principal desea comunicar las informaciones, son las aplicaciones clientes de trabajo y/u otras tareas principales.
En un modo ventajoso de realización del invento, dicho software cliente comprende, al menos:
-
una primera aplicación cliente que realiza una primera tarea en tiempo real de ejecución de comandos de control, enviados a dicha primera aplicación por, al menos, una aplicación cliente de control y que pertenecen a un juego de comandos de control predeterminado, estando basada dicha primera aplicación cliente, en particular, en un juego de funciones de ejecución de nivel 2, específicas para los comandos de control y, cada una de las cuales, permite la ejecución de, al menos, uno de los citados comandos de control,
-
una segunda aplicación cliente que realiza una segunda tarea en tiempo real, tal que dicha segunda aplicación cliente juegue, al menos, uno de los dos papeles siguientes:
*
el de una aplicación cliente de control, enviando los comandos de control a la primera aplicación cliente y recibiendo de la primera aplicación cliente las respuestas resultantes de la ejecución de determinados comandos de control;
*
el de una aplicación cliente de supervisión, gestionando la ejecución de comandos de control enviados por una aplicación cliente de control, denominada aplicación externa, que reside y se ejecuta en un equipo de terceros que coopera con el módulo de radiocomunicaciones;
basándose dicha segunda aplicación cliente, en particular, en un juego de funciones de nivel 2, específicas de los comandos de control y que permiten, cada una, el envío o la recepción, hacia o desde la primera aplicación cliente, de comandos de control o de respuestas a los comandos de control,
-
una aplicación de interconexión de nivel 2, específica de los comandos de control, que permite la interconexión de las denominadas funciones fuente de ejecución de nivel 2, apoyándose dicha aplicación de interconexión de nivel 2, a su vez, en la citada aplicación de interconexión de nivel 1.
Así, el presente invento propone una nueva arquitectura de software en el seno del módulo de radiocomunicaciones (aberturas en las capas inferiores para un software cliente residente), que permite soportar una nueva técnica de control del módulo de radiocomunicaciones, sencilla y económica.
Esta nueva técnica de control del módulo de radiocomunicaciones consiste en alojar, en el módulo de radiocomunicaciones, un software cliente que comprende:
-
una primera aplicación cliente capaz de ejecutar los comandos de control (por ejemplo, comandos AT). En la práctica, esta primera aplicación cliente podría ser suministrada por el fabricante del módulo de radiocomunicaciones;
-
una segunda aplicación cliente, que asegure el control y/o la supervisión del módulo de radiocomunicaciones, haciendo que la primera aplicación cliente ejecute los comandos.
En el caso de que la segunda aplicación cliente asegure el control del módulo de radiocomunicaciones, este último presenta un funcionamiento autónomo y económico. En efecto, no tiene que cooperar con un equipo de terceros y el software principal y el software cliente utilizan los mismos recursos (mismo procesador y misma memoria).
En el caso de que la segunda aplicación cliente asegure la supervisión del módulo de radiocomunicaciones, este último no se limita a cumplir un papel de esclavo frente al equipo de terceros que ejecuta el software cliente de control. En efecto, la segunda aplicación cliente gestiona el control solicitado por el software cliente (externo) de control, ejecutado por el equipo de terceros. Ha de observarse que, en este caso, el software cliente residente es un software suplementario con respecto a la configuración de la técnica anterior. Sin embargo, este software suplementario es económico por cuanto utiliza los mismos recursos (procesador y memoria) que el software principal igualmente residente en el módulo de radiocomunicaciones.
Preferiblemente, para permitir que la segunda aplicación cliente juegue el papel de una aplicación cliente de control:
-
la segunda aplicación cliente comprende medios de envío de comandos de control hacia los medios de ejecución comprendidos en la primera aplicación cliente;
-
la primera aplicación cliente comprende medios de envío de las respuestas, resultantes de la ejecución de determinados comandos de control por parte de los medios de ejecución incluidos en la primera aplicación cliente, hacia la segunda aplicación cliente;
-
la segunda aplicación cliente comprende medios de tratamiento de las respuestas enviadas hacia ella por la primera aplicación cliente.
De manera preferible, para permitir que la segunda aplicación cliente juegue el papel de una aplicación cliente de supervisión:
-
la primera aplicación cliente comprende medios de encaminamiento de comandos, que trabajan en función de una política de encaminamiento de comandos determinada, con el fin de transmitir los comandos de control que provienen de la aplicación cliente externa hacia la segunda aplicación cliente externa y/o hacia los medios de ejecución comprendidos en la primera aplicación cliente;
-
la segunda aplicación cliente comprende medios de tratamiento de los comandos de control dirigidos a ella por los mencionados medios de encaminamiento de comandos.
Ventajosamente, la segunda aplicación cliente comprende medios de selección de la política de encaminamiento de comandos aplicada por los citados medios de encaminamiento de comandos, entre un conjunto de políticas de encaminamiento de comandos tales que, respectivamente:
-
los comandos de control provenientes de la aplicación cliente externa sean transmitidos, únicamente, a los medios de ejecución comprendidos en la primera aplicación cliente;
-
los comandos de control provenientes de la aplicación cliente externa sean transmitidos, únicamente, a la segunda aplicación cliente;
-
los comandos de control provenientes de la aplicación cliente externa sean transmitidos a los medios de ejecución incluidos en la primera aplicación cliente y la segunda aplicación cliente.
\newpage
De manera ventajosa, dichos medios de tratamiento de comandos toman, para cada comando, por lo menos una decisión de entre un grupo que comprende:
-
envío del comando de control hacia los medios de ejecución incluidos en la primera aplicación cliente, comprendiendo la segunda aplicación cliente, a este efecto, medios de envío de comandos de control hacia los medios de ejecución;
-
emisión, o no, de una respuesta en función, únicamente, de al menos una información relativa al comando, sin ejecutar éste, comprendiendo la segunda aplicación cliente, a este efecto, medios de envío de la respuesta a la aplicación cliente externa, a través de la segunda aplicación cliente.
Preferiblemente, para permitir que la segunda aplicación cliente juegue el papel de una aplicación cliente de supervisión:
-
la primera aplicación cliente comprende medios de encaminamiento de respuestas, en función de una política de encaminamiento de respuestas determinada, con el fin de transmitir las respuestas, resultantes de la ejecución de determinados comandos de control por parte de los medios de ejecución incluidos en la primera aplicación cliente, hacia la segunda aplicación cliente y/o hacia la aplicación cliente exter- na;
-
la segunda aplicación cliente comprende medios de tratamiento de las respuestas dirigidas a ella por los mencionados medios de encaminamiento de respuestas.
Ventajosamente, la segunda aplicación cliente comprende medios de selección de la política de encaminamiento de las respuestas aplicada por dichos medios de encaminamiento de respuestas, entre un conjunto de políticas de encaminamiento de respuestas tales que, respectivamente:
-
las respuestas provenientes de los medios de ejecución son transmitidas únicamente a la aplicación cliente externa;
-
las respuestas provenientes de los medios de ejecución son transmitidas únicamente a la segunda aplicación cliente;
-
las respuestas provenientes de los medios de ejecución son transmitidas a la segunda aplicación cliente y a la aplicación cliente externa.
De preferencia, dicho juego de funciones fuente de nivel 2 comprende, en especial, una función de tratamiento de un mensaje proveniente de la primera aplicación, siendo el citado mensaje un parámetro de dicha función de tratamiento.
De manera preferible, dicho juego de comandos de control es un juego de comandos AT estándar. Esto permite un desarrollo rápido de la primera y de la segunda aplicaciones cliente al ser, los comandos AT, bien conocidos y ya utilizados para el desarrollo de software de clientes externos (residentes en los equipos de terceros). Esto facilita, igualmente, el desarrollo de una segunda aplicación cliente fuertemente basada en un software de cliente externo existente.
Ventajosamente, el citado juego de comandos de control comprende, además de los comandos AT estándar, un comando AT suplementario, denominado comando de carga, que permite que la aplicación cliente externa desactive la segunda aplicación cliente.
En un modo de realización particular del invento, dicha segunda aplicación cliente comprende una sub-aplicación cliente principal y, al menos, una sub-aplicación cliente secundaria, esclava de la sub-aplicación cliente principal, repartiéndose los tratamientos efectuados por dicha segunda aplicación cliente entre dicha sub-aplicación cliente principal y dicha, al menos una, sub-aplicación cliente secundaria.
El presente modo de realización particular del invento se sitúa, por tanto, en el contexto de la nueva técnica citada de control de un módulo de radiocomunicaciones.
En este contexto, se propone utilizar no una segunda aplicación cliente "monobloque", sino una segunda aplicación cliente "distribuida" ("multibloque") que comprende una sub-aplicación cliente principal combinada con una o varias sub-aplicaciones cliente secundarias. Cada sub-aplicación cliente secundaria es una sub-aplicación esclava, en cuanto a su lanzamiento e interrupción, de la sub-aplicación cliente principal que la llama. Pero, una vez lanzada, la sub-aplicación cliente secundaria accede, independientemente de la sub-aplicación cliente principal, al conjunto de las funciones de ejecución ofrecidas por la primera aplicación cliente (a través de un mecanismo, que se detalla en lo que sigue, de abono a un servicio de envío de mensajes provenientes de la primera aplicación cliente).
Las sub-aplicaciones cliente secundarias son "bloques elementales" que pueden ser suministrados a los clientes por un tercero desarrollador (típicamente, el fabricante del módulo de radiocomunicaciones). Así, se reduce el trabajo de desarrollo del cliente por cuanto no desarrolla mas que la "sub-aplicación cliente principal", que realiza un tratamiento secundario de determinados tratamientos llamando a una o varias sub-aplicaciones cliente secundarias.
Se observará que el cliente puede, igualmente, desarrollar por sí mismo sub-aplicaciones cliente secundarias, si desea poder llamarlas en las diferentes sub-aplicaciones cliente principales que desarrolle.
De manera preferible, dicha función de nivel 1 de inicialización está comprendida en el juego de funciones fuente de nivel 1 asociadas a la segunda aplicación cliente de trabajo y permite inicializar dicha sub-aplicación cliente principal.
De preferencia, la sub-aplicación cliente principal está asociada a un juego de funciones fuente de nivel 2 que comprenden una función fuente de nivel 2 de abono a un servicio de envío de mensajes provenientes de la primera aplicación cliente. Durante este abono, la sub-aplicación cliente principal comunica a la primera aplicación cliente la dirección de una función fuente de nivel 2 de tratamiento de un menaje, en la cual la sub-aplicación cliente principal desea recibir los mensajes provenientes de la primera aplicación cliente.
Es este mecanismo de abono a un servicio de envío de mensajes provenientes de la primera aplicación cliente, lo que permite a la sub-aplicación cliente principal llamar al conjunto de las funciones de ejecución ofrecidas por la primera aplicación cliente, es poder recibir los mensajes enviados por la primera aplicación cliente en el marco de la ejecución de estas funciones.
De preferencia, la sub-aplicación cliente secundaria está asociada a un juego de funciones fuente de nivel 2 que comprenden una función fuente de nivel 2 de inicialización de la sub-aplicación cliente secundaria, que es llamada por la sub-aplicación cliente principal.
De esta forma, la sub-aplicación cliente principal no tiene que conocer mas que este punto de diálogo ("función fuente de nivel 2 de inicialización de la sub-aplicación cliente secundaria"), y su duración ofrecida en lo que sigue ("función fuente de nivel 2 de parada de la sub-aplicación cliente secundaria"). Se trata, por tanto, de una solución simple y eficaz a los problemas de diálogo entre sub-aplicación cliente principal y sub-aplicación cliente secundaria. En efecto, el desarrollador de una sub-aplicación cliente secundaria no tiene que escribir tantas versiones de ella como los clientes deseen integrar en sus sub-aplicaciones cliente principales. Basta con que les indique los dos puntos de diálogo mencionados.
Ha de observarse que conviene evitar que dos desarrolladores de sub-aplicaciones cliente secundarias utilicen puntos de diálogo idénticos. Para ello, se puede prever, por ejemplo, que cada desarrollador solicite de un servicio central un identificativo único para cada sub-aplicación cliente secundaria que desee desarrollar.
Por otra parte, el mecanismo de diálogo entre la sub-aplicación cliente principal y la sub-aplicación cliente secundaria permite especialmente a la sub-aplicación cliente secundaria comunicar a la sub-aplicación cliente principal los resultados de la ejecución de su tarea o de sus tareas. El diálogo puede ser bidireccional o monodireccional.
Con preferencia, el juego de funciones fuente de nivel 2 asociado a la sub-aplicación cliente secundaria comprende una función fuente de nivel 2 de abono a un servicio de envío de mensajes provenientes de la primera aplicación cliente. Durante este abono, la sub-aplicación cliente secundaria comunica a la primera aplicación cliente la dirección de una función fuente de nivel 2 de tratamiento de un mensaje, en la que la sub-aplicación cliente secundaria desea recibir los mensajes provenientes de la primera aplicación cliente.
Preferiblemente, dicha función fuente de nivel 2 de inicialización de la sub-aplicación cliente secundaria comprende, al menos, un parámetro que permita la puesta en práctica de un mecanismo de diálogo entre la sub-aplicación cliente principal y la sub-aplicación cliente secundaria.
De hecho, preferiblemente, el juego de funciones fuente de nivel 2 asociado a la sub-aplicación cliente secundaria comprende una función fuente de nivel 2 de parada de la sub-aplicación cliente secundaria, que es llamada por la sub-aplicación cliente principal.
De preferencia, el juego de funciones fuente de nivel 2 asociado a la sub-aplicación cliente secundaria comprende una función fuente de nivel 2 de interrupción del abono al citado servicio de envío de mensajes provenientes de la primera aplicación cliente.
El invento se refiere, igualmente, a un procedimiento de apertura del acceso a, por lo menos, ciertas funcionalidades de un software principal de un módulo de radiocomunicaciones. Se supone que el módulo de radiocomunicaciones es del tipo que aloja y ejecuta un software principal que comprende una aplicación de gestión del sistema de explotación (OS), una aplicación de gestión de las radiocomunicaciones (capa 3 GSM) y una aplicación de gestión de periféricos, que pueden ser conectadas al módulo de radiocomunicaciones (HWL). Según el invento, cada una de las mencionadas aplicaciones comprendidas en el software principal está asociada a un juego de funciones de ejecución de nivel 1. El módulo de radiocomunicaciones aloja y ejecuta, además, por lo menos un software cliente que comprende, al menos, una aplicación cliente, asociada a un juego de funciones fuente de nivel 1. El software principal y/o dicho software cliente comprenden una aplicación de interconexión de nivel 1 que permite la interconexión de las funciones fuente de nivel 1, asociadas a la mencionada aplicación cliente, con las funciones de ejecución de nivel 1, asociadas a la citada aplicación de gestión del sistema de explotación y a, por lo menos, una de dichas aplicaciones de gestión de radiocomunicaciones y de gestión de periféricos.
Otras características y ventajas del invento se pondrán de manifiesto a partir de la lectura de la descripción siguiente de un modo de realización preferido del invento, dado a título de ejemplo indicativo y no limitativo, y de los dibujos adjuntos, en los que:
- la figura 1 presenta un esquema simplificado de un modo de realización particular de un módulo de radiocomunicaciones según el presente invento, que representa el software principal que comprende las capas bajas, así como el software cliente que comprende una aplicación de interconexión de nivel 1 y una pluralidad de aplicaciones cliente;
- la figura 2 ilustra un mecanismo de lanzamiento de aplicaciones cliente incluido en el software cliente;
- la figura 3 ilustra un mecanismo de diálogo entre dos aplicaciones cliente de trabajo incluidas en el software cliente;
- la figura 4 ilustra un mecanismo de llamada, en el seno de una aplicación cliente, de una función fuente de nivel 1 relativa al bloque "HWL";
- la figura 5 ilustra un mecanismo de llamada, en el seno de una aplicación cliente, de una función fuente de nivel 1 relativa al bloque "capa 3 GSM";
- la figura 6 ilustra un mecanismo de llamada, en el seno de una aplicación cliente, de funciones fuente de nivel 1 relativas a los bloques "HWL" y "capa 3 GSM";
- la figura 7 ilustra un mecanismo de abono de una aplicación cliente a un servicio de buzón gestionado por el software principal;
- la figura 8 ilustra una nueva técnica de control del módulo de radiocomunicaciones, soportada por la arquitectura de software según el invento, en el seno de un módulo de radiocomunicaciones.
El invento se refiere, por tanto, a un módulo de radiocomunicaciones que aloja y que ejecuta, con el mismo juego de recursos (procesador y memoria) un software principal y (al menos) un software cliente residente.
De forma clásica, como se ilustra en la figura 1, el software principal 3 comprende:
-
un bloque "HWL" 3a, que es una aplicación de gestión de los periféricos que pueden conectarse al módulo de radiocomunicaciones;
-
un bloque "OS" 3b que es una aplicación de gestión del sistema de explotación que gestiona aspectos del sistema tales como la administración de tareas, la administración de memoria, la gestión de la temporización, etc.;
-
un bloque "capa 3 GSM" que es una aplicación de gestión de las radiocomunicaciones, que gestiona aspectos de la red tales como la gestión de las llamadas salientes y entrantes, la gestión de la recepción y el envío de mensajes cortos de texto, etc.
Cada uno de los tres bloques "HWL", "OS" y "capa 3 GSM" está asociado a un juego de funciones de ejecución de nivel 1.
En el modo de realización particular ilustrado en la figura 1, el software cliente residente 6 (concepto propio del presente invento), comprende:
-
tres aplicaciones cliente, a saber: una aplicación cliente de arranque 6a y dos aplicaciones cliente de trabajo núm. 1, 6b, y núm. 2, 6c, estando asociada cada una de estas aplicaciones a un juego de funciones fuente de nivel 1;
-
una aplicación de interconexión de nivel 1, 6d, que permite la interconexión de las funciones fuente de nivel 1 (asociadas a las aplicaciones cliente 6a, 6b y 6c) con las funciones de ejecución de nivel 1 (asociadas a los bloques "HWL" 3a, "OS" 3b y "capa 3 GSM" 3c).
Así, las aplicaciones cliente 6a, 6b y 6c comunican con los bloques "HWL" 3a, "OS" 3b y "capa 3 GSM" 3c a través de la aplicación de interconexión de nivel 1 6d. A este efecto, cada uno de estos elementos comprende una interconexión "API" (en inglés "Application Programming Interface", es decir, "Interconexión de programación de aplicaciones"). Se recuerda que una interconexión "API" es una descripción de las reglas de comunicaciones correspondientes a un cierto conjunto funcional.
Cada una de las aplicaciones cliente 6a, 6b y 6c comprende un bloque "aplicación obligatoria API", que forma la interconexión que deriva las funciones que deben definirse en la aplicación cliente. Es evidente que los bloques "aplicación obligatoria API" de las distintas aplicaciones cliente pueden no ser estrictamente idénticos.
La aplicación de interconexión (o biblioteca de interconexión de aplicación) de nivel 1, 6d, comprende los cuatro bloques siguientes:
-
un bloque "HWL API" que forma la interconexión que describe el acceso al bloque "HWL" 3a; esta interconexión describe las funciones que se encuentran en la biblioteca de interconexión de aplicación de nivel 1;
-
un bloque "OS API", que forma la interconexión que describe el acceso al bloque "OS" 3b; esta interconexión describe las funciones que se encuentran en la biblioteca de interconexión de aplicación de nivel 1;
-
un bloque "capa 3 GSM API" que forma la interconexión que describe el acceso al bloque "capa 3 GSM" 3c; esta interconexión describe las funciones que se encuentran en la biblioteca de interconexión de aplicación de nivel 1;
-
un bloque "estándar API" que forma la interconexión que describe el acceso a las funciones estándar; esta interconexión describe las funciones que se encuentran en la biblioteca de interconexión de nivel 1.
Lado software principal 3:
-
el bloque "HWL" 3a comprende un bloque "HWL API", que cuelga del bloque del mismo nombre incluido en la aplicación de interconexión de nivel 1 6d;
-
el bloque "OS" 3b comprende un bloque "OS API" que cuelga del bloque del mismo nombre incluido en la aplicación de interconexión de nivel 1 6d;
-
el bloque "capa 3 GSM" 3c comprende un bloque "capa 3 GSM API" que cuelga del bloque del mismo nombre incluido en la aplicación de interconexión de nivel 1 6d.
La aplicación de interconexión de nivel 1 6d es, por ejemplo, un fichero binario resultante de una edición del enlace entre una pluralidad de ficheros objeto resultantes, a su vez, de la compilación de ficheros fuente que contienen en especial los bloques "HWL" 3a, "OS" 3b y "capa 3 GSM" 3c.
En lo que concierne a las aplicaciones cliente 6a, 6b y 6c, se pueden considerar las siguientes variantes:
-
o las aplicaciones cliente están contenidas en el software cliente 6 en forma de un único fichero binario, resultante de una edición del enlace que implica, especialmente, a los ficheros objeto que contienen estas aplicaciones cliente;
-
o las aplicaciones cliente están contenidas en el software cliente 6 en forma de varios ficheros binarios (conteniendo cada fichero binario una o varias aplicaciones cliente).
El software cliente residente 6 y el software principal 3 utilizan, cada uno, una parte diferente de la misma memoria viva (RAM). El cliente define la dimensión de la pila de memoria necesaria para la buena ejecución del software cliente residente. Un intento de acceso de uno de los dos software a una parte viva de la memoria reservada al otro, provocada una parada en el funcionamiento.
Se presenta ahora, con relación a la figura 2, un mecanismo de lanzamiento de las aplicaciones cliente 6a, 6b y 6c incluidas en el software cliente 6.
Los elementos incluidos en el módulo 1 de radiocomunicaciones y ya presentados anteriormente en relación con la figura 1, conservan las mismas referencias numéricas.
Cada una de las etapas de este mecanismo se ilustra en la figura 2 mediante un círculo en el que está inscrito el número de la etapa en cuestión. El mismo criterio de designación se adopta en las figuras siguientes relacionadas con el presente invento (y que se describen con detalle en la descripción que sigue).
El funcionamiento de este mecanismo de lanzamiento de las aplicaciones cliente 6a, 6b y 6c puede resumirse de la siguiente forma:
- etapa "1":
el software principal 1 detecta la presencia de una aplicación cliente de arranque 6a y la lanza mediante el gestor OS 3b (otro nombre del bloque "OS" presentado anteriormente);
- etapa "2":
el lanzamiento de la aplicación cliente de arranque 6a se realiza mediante la aplicación de interconexión de nivel 1 6d. Esta última llama, en el seno de la aplicación cliente de arranque 6a, a una función fuente (de nivel 1) de arranque global. Esta función fuente ("wm_apmGlobalInit_level1()") se presenta con detalle en la descripción que sigue;
- etapa "3":
en el seno de la aplicación cliente de arranque 6a, la función fuente "wm_apmGlobalInit_level1()" efectúa un arranque global consistente en suministrar al software principal 3 las informaciones que le permitan inicializar cada aplicación cliente de trabajo 6b y 6c y dialogar con ellas. Estas informaciones son, por ejemplo, las siguientes:
\quad
- el número de aplicaciones cliente de trabajo (dos en el ejemplo descrito en lo que sigue) comprendidas en el software cliente residente,
\quad
- las funciones de diálogo asociadas con cada una de estas aplicaciones clientes de trabajo. Estas funciones fuente de diálogo ("AppliInit_nºx_level1" y "AppliParser_nºx_level1") se presentan con detalle en la descripción que sigue;
- etapa "4":
en el seno del software principal 3, el gestor OS 3b inicializa las aplicaciones cliente de trabajo 6b y 6c llamando a sus funciones de inicialización respectivas ("AppliInit_1_level1" y "AppliInit2_level1").
Se presenta ahora, en relación con la figura 3, un mecanismo de diálogo entre dos aplicaciones cliente de trabajo 6b, 6c incluidas en el software cliente 6.
El funcionamiento de este mecanismo puede resumirse así:
- etapa "1":
el software principal 3 ha inicializado la aplicación de cliente de trabajo núm. 1 mediante la llamada de la función fuente "AppliInit1_level1()" a través de la aplicación de interconexión de nivel 1 6d. Esta función fuente efectúa la llamada a una función ("wm_osStartTimer_level1()") de disparo de una temporización en el software principal;
- etapa "2":
la aplicación de interconexión 6d llama, en el seno del software principal 3, a la o a las funciones de ejecución apropiadas;
- etapa "3":
en el seno del software principal 3, el gestor OS 3b efectúa el tratamiento solicitado, que consiste en montar una temporización;
- etapa "4":
después de expirar la temporización, el gestor OS 3b informa a la aplicación cliente de trabajo núm. 1 de que ya ha iniciado la temporización, a través de la aplicación de interconexión 6d;
- etapa "5":
el diálogo con la aplicación cliente de trabajo núm. 1 se realiza a través de la aplicación de interconexión 6d, que llama en el seno de la aplicación cliente de trabajo núm. 1, a la función fuente "AppliParser1_level1()" antes citada;
- etapa "6":
en el seno de la aplicación cliente de trabajo núm. 1, la función fuente "AppliParser_level1()" llamada envía un mensaje a la aplicación cliente de trabajo núm. 2, llamando a una función fuente "wm_osSendMsg_level1()" (presentada con detalle en lo que sigue);
- etapa "7":
la aplicación de interconexión 6d llama, en el seno del software principal 3, a la o a las funciones de ejecución apropiadas;
- etapa "8":
en el seno del software principal 3, el gestor OS 3b efectúa el tratamiento solicitado, que consiste en enviar el mensaje a la aplicación cliente de trabajo núm. 2, a través de la aplicación de interconexión 6d;
- etapa "9":
el diálogo con la aplicación cliente de trabajo núm. 2 se realiza a través de la aplicación de interconexión 6d, que llama, en el seno de la aplicación cliente de trabajo núm. 2 a la función fuente "AppliParser2_level1()" antes citada;
- etapa "10":
en el seno de la aplicación cliente de trabajo núm. 2, la función fuente "AppliParser2_level1()" llamada, trata el mensaje recibido.
Se presenta ahora, en relación con la figura 4, un mecanismo de llamada, en el seno de una aplicación cliente, de una función fuente de nivel 1 en relación con el bloque "HWL".
Se supone que la aplicación cliente de trabajo núm. 1 ha puesto en marcha una temporización y que está a la espera de que expire este recuento de tiempo.
En este ejemplo, las llamadas al gestor HWL 3a son efectuadas por la aplicación cliente de trabajo núm. 1, siendo evidente que este ejemplo sigue siendo válido si las llamadas son efectuadas por cualquier otra aplicación cliente de trabajo del software cliente residente.
El funcionamiento de este mecanismo puede resumirse así:
- etapa "1":
tras expirar la temporización, el gestor OS 3b informa a la aplicación cliente de trabajo núm. 1 que la ha iniciado, a través de la aplicación de interconexión 6d;
- etapa "2":
el diálogo con la aplicación cliente de trabajo núm. 1 se realiza a través de la aplicación de interconexión 6d, que llama en el seno de la aplicación cliente de trabajo núm. 1 a la función fuente "AppliParser1_level1()";
- etapa "3":
en el seno de la aplicación cliente de trabajo núm. 1, la función fuente "AppliParser1_level1()" quiere, por ejemplo, leer un valor almacenado en la memoria Eeprom. Para ello, llama a la función "wm_hwlE2pRead_level1()";
- etapa "4":
la aplicación de interconexión 6d llama, en el seno del software principal 3, a la o a las funciones de ejecución apropiadas en el gestor HWL 3a;
- etapa "5":
en el seno del software principal 3, el gestor HWL 3a efectúa el tratamiento solicitado, que consiste en leer un valor almacenado en la memoria Eeprom. Después, la aplicación cliente de trabajo núm. 1, a través de la aplicación de interconexión 6d, devuelve el valor leído a la aplicación cliente de trabajo núm. 1.
Es evidente que la función "wm_hwlE2pRead_level1()", descrita en lo que antecede, no es mas que un ejemplo de entre una pluralidad de funciones fuente de nivel 1 relacionadas con el bloque "HWL".
Se presenta ahora, en relación con la figura 5, un mecanismo de llamada, en el seno de una aplicación cliente, de una función fuente de nivel 1 con relación al bloque "capa 3 GSM".
Las hipótesis y las observaciones indicadas en lo que antecede en comentarios relacionados con la figura 4, se aplican, igualmente, a la presente figura 5.
El funcionamiento del mecanismo puede resumirse de la forma siguiente:
- etapa "1":
tras expirar la temporización, el gestor OS 3b informa a la aplicación cliente de trabajo núm. 1 que la ha iniciado, a través de la aplicación de interconexión 6d;
- etapa "2":
el diálogo con la aplicación cliente de trabajo núm. 1 se realiza a través de la aplicación de interconexión 6d, que llama en el seno de la aplicación cliente de trabajo núm. 1 a la función fuente "AppliParser1_level1()";
- etapa "3":
en el seno de la aplicación cliente de trabajo núm. 1, la función fuente "AppliParser1_level1()" quiere, por ejemplo, enviar un mensaje a la red. Para ello, llama a la función "wm_osRtkSend_level1()";
- etapa "4":
la aplicación de interconexión 6d llama, en el seno del software principal 3, a la o a las funciones de ejecución apropiadas en el gestor "capa 3 GSM" 3c;
- etapa "5":
en el seno del software principal 3, el gestor "capa 3 GSM" 3c efectúa el tratamiento solicitado;
- etapa "6":
después del tratamiento (envío de un mensaje a la red) y de obtener una respuesta de la red, el gestor "capa 3 GSM" informa a la aplicación cliente de trabajo núm. 1 a través de la aplicación de interconexión 6d;
- etapa "7":
el diálogo con la aplicación cliente de trabajo núm. 1 se realiza a través de la aplicación de interconexión 6d, que llama, en el seno de la aplicación cliente de trabajo núm. 1 a la función fuente "AppliParser1_level1()" mencionada;
- etapa "8":
en el seno de la aplicación cliente de trabajo núm. 1, la función fuente "AppliParser1_level1()" trata el mensaje recibido.
Es evidente que la función "wm_osRtkSend_level1()", descrita en lo que antecede, no es mas que un ejemplo de entre una pluralidad de funciones fuente de nivel 1 relacionadas con el bloque "capa 3 GSM".
Se presenta ahora, en relación con la figura 6, un mecanismo de llamada, en el seno de una aplicación cliente, de funciones fuente de nivel 1, relacionadas con los bloques "HWL" y "capa 3 GSM".
En este ejemplo, se supone que la aplicación cliente de trabajo núm. 1 quiere leer un valor almacenado en la memoria Eeprom y enviar, después, un mensaje a la red. Para ello, dialoga:
-
con el bloque "HWL" 3a (etapas "1" a "5" correspondientes a las etapas "1" a "5" de la figura 4 descritas en lo que antecede),
-
después, con el bloque "capa 2 GSM" 3c (etapas "3bis", "6" y "7" correspondientes a las etapas "3" a "5" de la figura 5 descrita en lo que antecede).
Se presenta ahora, en relación con la figura 7, un mecanismo de abono de una aplicación cliente a un servicio de buzón administrado por el software principal.
El funcionamiento de este mecanismo puede resumirse de la forma siguiente:
- etapa "1":
tras expirar la temporización, el gestor OS 3b informa a la aplicación cliente de trabajo núm. 1 que la ha iniciado, a través de la aplicación de interconexión 6d;
- etapa "2":
el diálogo con la aplicación cliente de trabajo núm. 1 se realiza a través de la aplicación de interconexión 6d que llama, en el seno de la aplicación cliente de trabajo núm. 1, a la función fuente "AppliParser1_level1()";
- etapa "3":
en el seno de la aplicación cliente de trabajo núm. 1, la función fuente "AppliParser1_level1()" quiere, por ejemplo, solicitar un abono a informaciones relativas a la batería (por ejemplo, indicación de nivel de carga). Para ello, llama a una función fuente ("wm_MbxSubscribe()") de inscripción a un servicio de buzón administrado por el software principal, de manera que se le asigne el buzón apropiado y en el que desea recibir las informaciones proveniente de, al menos, una fuente predeterminada (en este ejemplo, la tarea "batería"). Esta función fuente se presenta con detalle en lo que sigue;
- etapa "4":
la aplicación de interconexión 6d llama, en el seno del software principal 3, a la o a las funciones de ejecución apropiadas en el gestor OS 3b;
- etapa "5":
en el seno del software principal 3, el gestor OS 3b efectúa el tratamiento solicitado que, en este ejemplo, consiste en almacenar en memoria la aplicación cliente de trabajo núm. 1 como destinataria de las informaciones relativas a la batería;
- etapa "6":
cuando están disponibles las informaciones relativas a la batería, el gestor HWL 3a las envía a la aplicación cliente de trabajo núm. 1 a través de la aplicación de interconexión6d. Para ello, el gestor HWL 3a consulta internamente al gestor OS 3b a fin de conocer el o los buzones destinatarios de estas informaciones;
- etapa "7":
el diálogo con la aplicación cliente de trabajo núm. 1 se realiza a través de la aplicación de interconexión 6d que, en el seno de la aplicación cliente de trabajo núm. 1 llama a la función fuente "AppliParser1_level1()" antes mencionada;
- etapa "8":
en el seno de la aplicación cliente de trabajo núm. 1, la función fuente "AppliParser1_level1()" trata las informaciones recibidas sobre la batería.
Ha de observarse que el bloque "OS" 3b comprende un gestor de tareas. Este último administra tanto las tareas ofrecidas por el software principal 3 como las ofrecidas por el software cliente 6. Cada tarea está asociada a un buzón, que es asimilado a la fuente de informaciones generadas para esta tarea. Así, cada vez que una tarea se comunica con otra tarea, utiliza el gestor de tareas del bloque "OS". Ciertas tareas del software principal 3 son informaciones que han de comunicarse al software cliente residente 6. Este último puede decidir para cual de sus aplicaciones de trabajo quiere recibir estas informaciones. Así, en el ejemplo descrito en lo que antecede, la tarea "batería" del software principal 3 posee informaciones que conciernen a la gestión de la batería y es la aplicación cliente núm. 1 la que las gestiona (y, por tanto, la que desea recibirlas en su buzón).
Se presenta ahora, en relación con la figura 8, una nueva técnica de control del módulo de radiocomunicaciones, soportada por la arquitectura lógica según el invento, en el seno del módulo de radiocomunicaciones.
En lo que antecede se ha presentado, en relación con las figuras 1 a 7, un modo de realización particular de la arquitectura lógica del módulo de radiocomunicaciones según el invento. En este modo de realización particular, el software principal 3 comprende los bloques "HWL" 3a, "OS" 3b y "capa 3 GSM" 3c, y el software cliente residente 6 comprende una aplicación cliente de arranque 6a, dos aplicaciones cliente de trabajo (núm. 1) 6b y (núm. 2) 6c, y una aplicación 6de de interconexión de nivel 1.
En la descripción que sigue, se supone que los comandos de control son los comandos AT. Para una exposición más precisa en relación con los comandos AT, se puede hacer referencia, por un lado, a las normas "GSM 07.05" y "GSM 07.07" de la ETSI y, por otro lado, a la recomendación V25 del ITU-T, que se incorporan a esta memoria como referencia.
Es evidente, sin embargo, que el presente invento no está, en absoluto, limitado a este tipo de comandos de control.
A fin de proponer una nueva técnica de control del módulo de radiocomunicaciones, se prevé que:
-
la aplicación cliente de trabajo núm. 1 realice una primera tarea, en tiempo real, de ejecución de comandos AT. Estos últimos son enviados a la aplicación cliente de trabajo núm. 1 por (al menos) una aplicación cliente de control;
-
la aplicación cliente de trabajo núm. 2 realiza una segunda tarea, en tiempo real, que le permite jugar, al menos, uno de los dos papeles siguientes:
*
el papel de una aplicación cliente de control, enviando los comandos AT a la aplicación cliente de trabajo núm. 1 y recibiendo, de la aplicación cliente de trabajo núm. 1, las respuestas resultantes de la ejecución de ciertos comandos AT;
*
el papel de una aplicación cliente de supervisión, gestionando la ejecución de los comandos AT enviados por una aplicación cliente de control, denominada aplicación cliente externa, residente en un equipo de terceros que coopera con el módulo de radiocomunicaciones y ejecutada por dicho equi- po.
La aplicación cliente de trabajo núm. 1 se basa, especialmente, en un juego de funciones de ejecución de nivel 2, específicas de los comandos AT y que permiten, cada una, la ejecución de, al menos, uno de los comandos AT.
La aplicación cliente de trabajo núm. 2 se basa, especialmente, en un juego de funciones fuente de nivel 2, específicas de los comandos AT y que permiten, cada una, el envío o la recepción, hacia o desde la aplicación cliente de trabajo núm. 1, de comandos AT o de respuestas a los comandos AT.
Se prevé, además, una aplicación de interconexión de nivel 2, 6e, específica de los comandos AT. Esta aplicación permite la interconexión de las funciones fuente y de ejecución de nivel 2. Esta interconexión de nivel 2, 6e, se basa, a su vez, en la aplicación de interconexión de nivel 1, 6d.
Es importante distinguir bien:
-
los juegos de funciones fuente y de ejecución de nivel 2, específicas de los comandos AT, y que se utilizan en las relaciones entre las aplicaciones cliente de trabajo núm. 1 y núm. 2;
-
los juegos de funciones fuente y de ejecución de nivel 1, que se han presentado en lo que antecede de manera detallada en relación con las figuras 1 a 7 y con el anexo 1, y que se utilizan en las relaciones entre cada aplicación cliente de trabajo (núm. 1 o núm. 2) y los bloques "HWL", "OS" y "capa 3 GSM" del software principal 3.
En el caso en que la aplicación cliente de trabajo núm. 2 juegue el papel de una aplicación cliente de control, el funcionamiento de la técnica de control puede resumirse de la forma siguiente:
- etapa "1":
la aplicación cliente de trabajo núm. 2 llama a una función fuente ("wm_atSendCommand _level2") de envío hacia la aplicación cliente de trabajo núm. 1, de uno o varios comandos AT. Esta función fuente se presenta con detalle en la descripción que sigue;
- etapa "2":
la aplicación de interconexión de nivel 2, 6e, llama a la o a las funciones de ejecución apropiadas, en el seno de la aplicación cliente de trabajo núm. 1;
- etapa "3":
la aplicación cliente de trabajo núm. 1 ejecuta el o los comandos AT;
- etapa "4":
después de la ejecución, la aplicación cliente de trabajo núm. 1 envía la o las respuestas AT a la aplicación cliente de trabajo núm. 2 (si el comando de envío mencionado ha sido parametrizado en este sentido);
- etapa "5":
está o estas respuestas son enviadas, a través de la aplicación de interconexión de nivel 2 que llama, en el seno de la aplicación cliente de trabajo núm. 2, a la función fuente ("wm_apmAppliParser_level2") de tratamiento de un mensaje procedente de la aplicación cliente de trabajo núm. 1. Un parámetro de esta función fuente de tratamiento es el mensaje que contiene la o las citadas respuestas. Esta función fuente se presenta con detalle en la descripción que sigue;
- etapa "6":
en el seno de la aplicación cliente de trabajo núm. 2, la función fuente de tratamiento trata la respuesta.
Se presenta ahora, de forma detallada, el caso en que la aplicación cliente de trabajo núm. 2 juegue el papel de una aplicación cliente de supervisión.
En este segundo caso, el módulo de radiocomunicaciones no es autónomo (al contrario que en el primer caso), sino que está controlado por un equipo de terceros con el que coopera, por ejemplo, mediante una conexión en serie. Una aplicación cliente externa, residente en el equipo de terceros, envía los comandos AT al módulo de radiocomunicaciones, con vistas a que sean ejecutados por este último.
La aplicación cliente de trabajo núm. 2 (aplicación de supervisión) puede decidir sobre la puesta en práctica, en el seno del módulo de radiocomunicaciones, en especial de:
-
un mecanismo de encaminamiento y de tratamiento de los comandos AT enviados por la aplicación cliente externa. Se proponen, por ejemplo, tres variantes de puesta en práctica de este mecanismo, según los cuales la aplicación cliente de trabajo núm. 1 transmite los comandos AT que recibe: únicamente a los medios de ejecución incluidos en la aplicación cliente de trabajo núm. 1 (primera variante), o únicamente a una aplicación cliente de trabajo núm. 2 (segunda variante), o bien a ambos (tercera variante);
-
Un mecanismo de encaminamiento y de tratamiento de las respuestas AT, resultantes de la ejecución por los medios de ejecución incluidos en la aplicación cliente de trabajo núm. 1, de los comandos AT. Se proponen, por ejemplo, tres variantes de puesta en práctica de este mecanismo, según las cuales las respuesta AT generadas por la aplicación cliente de trabajo núm. 1 son transmitidas, respectivamente, sólo a la aplicación cliente externa (primera variante), sólo a la aplicación cliente de trabajo núm. 2 (segunda variante) o bien a ambas (tercera variante).
Se observará que la primera variante de cada uno de los dos mecanismos citados (relativos a los comandos AT y a las respuestas AT, respectivamente), significa que la aplicación cliente de trabajo núm. 2 puede decidir ser totalmente pasiva en ciertos momentos.
Se presenta ahora la segunda variante del mecanismo de encaminamiento y de tratamiento de los comandos AT, que permite que la aplicación cliente de trabajo núm. 2 filtre los comandos AT procedentes de la aplicación cliente externa.
El funcionamiento de esta segunda variante del mecanismo de encaminamiento y de tratamiento de los comandos AT puede resumirse en dos fases sucesivas, a saber:
-
una fase previa de selección, por parte de la aplicación cliente externa, de la (segunda) política de encaminamiento de los comandos AT, según la cual los comandos AT sólo son retransmitidos a la aplicación cliente de trabajo núm. 2, y
-
una fase de tratamiento, según la (segunda) política de encaminamiento de comandos seleccionada, de los comandos AT enviados por la aplicación cliente externa.
La fase previa de selección de la segunda política de encaminamiento de comandos AT comprende las siguientes etapas:
- etapa "1":
la aplicación cliente de trabajo núm. 2 llama a una función fuente ("wm-atCmdPreParserSubscribe_level2") de inscripción de la aplicación cliente de trabajo núm. 1, a un servicio de encaminamiento de comandos AT (en inglés "command pre-parsing service", es decir, "servicio de análisis previo de comandos"), con un parámetro de esta función de inscripción que indica la elección de la segunda política de encaminamiento de comandos AT. Esta función fuente se presenta con detalle en la descripción que sigue;
- etapa "2":
la aplicación de interconexión de nivel 2, 6c, llama, en el seno de la aplicación cliente de trabajo núm. 1, a la o las funciones de ejecución apropiadas, denominadas funciones de registro de la inscripción al servicio de encaminamiento de comandos AT;
- etapa "3":
la aplicación cliente de trabajo núm. 1 establece la inscripción solicitada por la aplicación cliente de trabajo núm. 2 a través de la aplicación de interconexión de nivel 2.
Con el propósito de simplificar, en la descripción que sigue se supone que la o las funciones de registro de la inscripción al servicio de encaminamiento de comandos AT están incluidas, en el seno de la aplicación cliente de trabajo núm. 1, en los medios de ejecución de los comandos AT. Igualmente, con el propósito de simplificar, en la descripción que sigue se supone que los medios de encaminamiento de comandos (descritos más adelante) están incluidos, en el seno de la aplicación cliente de trabajo núm. 1, en los medios de ejecución de los comandos
AT.
\newpage
La fase de tratamiento de los comandos AT comprende las etapas siguientes:
- etapa "4":
la aplicación cliente externa envía un comando AT a la aplicación cliente de trabajo núm. 1;
- etapa "5":
la conexión en serie transmite el comando AT a los medios de encaminamiento de comandos, incluidos en los medios de ejecución comprendidos en la aplicación cliente de trabajo núm. 1 y que funcionan de acuerdo con la segunda política de encaminamiento de comandos AT (seleccionada durante la fase previa);
- etapa "6":
sin ser considerado por los medios de ejecución, el comando AT es retransmitido únicamente a la aplicación cliente de trabajo núm. 2;
- etapa "7":
el comando AT es expedido por la aplicación de interconexión de nivel 2, que llama, en el seno de la aplicación cliente de trabajo núm. 2, a la función fuente ("wm_apmAppliParser_level2") de tratamiento de un mensaje procedente de la aplicación cliente de trabajo núm. 1, parametrizada en este caso, en especial, por un mensaje que contenga el comando AT y que indique que se trata del comando "AT" original. Esta función fuente se presenta con detalle en la descripción que sigue;
- etapa "8":
en el seno de la aplicación cliente de trabajo núm. 2, la función fuente de tratamiento trata el comando AT.
Este tratamiento consiste, por ejemplo, en reenviar el comando AT hacia los medios de ejecución incluidos en la aplicación cliente de trabajo núm. 1 (según el mecanismo correspondiente al primer caso descrito en lo que antecede). Igualmente, puede consistir en el suministro arbitrario de una respuesta para la misma aplicación cliente de trabajo núm. 2, sin que se ejecute el comando AT. En este caso, la aplicación cliente de trabajo núm. 2 tiene en cuenta, por ejemplo, al menos una información relativa al comando AT en cuestión (tipo de comando, naturaleza del o de los parámetros, etc.). De forma general, sea cual sea el tratamiento efectuado, se comprende que la aplicación cliente de trabajo núm. 2 "filtra" el comando AT.
Se presenta ahora la tercera variante del mecanismo de encaminamiento y de tratamiento de los comandos AT, que permite que la aplicación cliente de trabajo núm. 2 "espíe" los comandos AT procedentes de la aplicación cliente externa.
El funcionamiento de esta tercera variante del mecanismo de encaminamiento y de tratamiento de los comandos AT puede resumirse, también, en dos fases sucesivas, a saber:
-
una fase previa de selección, por la aplicación cliente externa, de la (tercera) política de encaminamiento de comandos AT, según la cual los comandos AT son retransmitidos no sólo a la aplicación cliente de trabajo núm. 2, sino también a los medios de ejecución comprendidos en la aplicación cliente de trabajo núm. 1, y
-
una fase de tratamiento, según la (tercera) política de encaminamiento de comandos seleccionada, de los comandos AT enviados por la aplicación cliente externa.
Esencialmente, el funcionamiento de esta tercera variante difiere del de la segunda variante en que:
-
durante la etapa "1" de la fase previa, la aplicación cliente de trabajo núm. 2 selecciona la tercera (y no la segunda) política de encaminamiento de comandos AT;
-
durante la etapa "6" de la fase de tratamiento, el comando AT es transmitido a los medios de ejecución y una copia de este comando AT es transmitida a la aplicación cliente de trabajo núm. 2;
-
durante la etapa "8" de la fase de tratamiento, en el seno de la aplicación cliente de trabajo núm. 2, la función fuente de tratamiento trata la copia del comando AT;
-
la fase de tratamiento comprende, además, una etapa "7" en el curso de la cual los medios de ejecución incluidos en la aplicación cliente de trabajo núm. 1, ejecutan el comando AT.
Se presenta ahora la segunda variante del mecanismo de encaminamiento y de tratamiento de las respuestas AT, que permite que la aplicación cliente de trabajo núm. 2 filtre las respuestas AT destinadas a la aplicación cliente de trabajo núm. 1.
El funcionamiento de esta segunda variante del mecanismo de encaminamiento y de tratamiento de las respuestas AT puede resumirse, también, en dos fases sucesivas, a saber:
-
una fase previa de selección, por la aplicación cliente externa, de la (segunda) política de encaminamiento de respuestas AT, según la cual las respuestas AT generadas por la aplicación cliente de trabajo núm. 1 son transmitidas sólo a la aplicación cliente de trabajo núm. 2;
-
una fase de tratamiento, según la (segunda) política de encaminamiento de respuestas seleccionada, de las respuestas AT generadas por la aplicación cliente de trabajo núm. 1.
La fase previa de selección de la segunda política de encaminamiento de las respuestas AT comprende las etapas siguientes:
- etapa "1":
la aplicación cliente de trabajo núm. 2 llama a una función fuente ("wm_atRspPreParserSubscribe_ level2") de inscripción de la aplicación cliente de trabajo núm. 1, a un servicio de encaminamiento de respuestas AT (en inglés "response pre-parsing service", es decir, "servicio de análisis previo de respuestas"), con un parámetro de esta función de inscripción que indica la elección de la segunda política de encaminamiento de respuestas AT. Esta función fuente se presenta con detalle en la descripción que sigue;
- etapa "2":
la aplicación de interconexión de nivel 2, 6e, llama, en el seno de la aplicación cliente de trabajo núm. 1, a la o las funciones de ejecución apropiadas, denominadas funciones de registro de la inscripción en el servicio de encaminamiento de respuesta AT;
- etapa "3":
la aplicación cliente de trabajo núm. 1 establece la inscripción solicitada por la aplicación cliente de trabajo núm. 2, a través de la aplicación de interconexión de nivel 2.
Con el fin de simplificar, en la descripción que sigue se supone que la o las funciones de registro de la inscripción en el servicio de encaminamiento de respuestas AT, están incluidas, en el seno de la aplicación cliente de trabajo núm. 1, en los medios de ejecución de comandos AT. Igualmente, con el fin de simplificar, en la descripción que sigue se supone que los medios de encaminamiento de respuestas (descritos en lo que sigue) están comprendidos, en el seno de la aplicación cliente de trabajo núm. 1, en los medios de ejecución de comandos AT.
La fase de tratamiento de las respuestas AT comprende las siguientes etapas:
- etapa "4":
la aplicación cliente externa envía un comando AT a la aplicación cliente de trabajo núm. 1;
- etapa "5":
la conexión en serie transmite el comando AT a los medios de ejecución comprendidos en la aplicación cliente de trabajo núm. 1;
- etapa "6":
los medios de ejecución ejecutan el comando AT y generan una respuesta AT;
- etapa "7":
los medios de encaminamiento de respuestas comprendidos en los medios de ejecución y que funcionan según la segunda política de encaminamiento de respuestas AT (seleccionada durante la fase previa), envían la respuesta AT a la aplicación cliente de trabajo núm. 2;
- etapa "8":
la respuesta AT es expedida por la aplicación de interconexión de nivel 2 que llama, en el seno de la aplicación cliente de tarea núm. 2, a la función fuente ("wm_apmAppliParser_level2") de tratamiento de un mensaje procedente de la aplicación cliente de trabajo núm. 1, parametrizado en este caso, en especial, por un mensaje que contiene la respuesta AT y que indica que se trata de la respuesta AT "original";
- etapa "9":
en el seno de la aplicación cliente de trabajo núm. 2, la función fuente de tratamiento trata la respuesta AT. Se puede hablar en este caso de "filtrado" de las respuestas AT por la aplicación cliente de trabajo núm. 2.
Se presenta ahora, en relación con la figura 7, la tercera variante de mecanismo de encaminamiento y de tratamiento de las respuestas AT, que permite que la aplicación cliente de trabajo núm. 2, "espíe" las respuestas AT destinadas a la aplicación cliente de trabajo núm. 1.
El funcionamiento de esta tercera variante del mecanismo de encaminamiento y de tratamiento de las respuesta AT puede resumirse, así, en dos fases sucesivas, a saber:
-
una fase previa de selección, por la aplicación cliente externa, de la (tercera) política de encaminamiento de respuestas AT, según la cual las respuestas AT son retransmitidas no solamente a la aplicación cliente de trabajo núm. 1 sino, también, a la aplicación cliente de trabajo núm. 2, y
-
una fase de tratamiento, según la (tercera) política de encaminamiento de respuestas seleccionada, de las respuestas AT generadas por la aplicación cliente de trabajo núm. 1.
El funcionamiento de esta tercera variante difiere del de la segunda variante esencialmente en que:
-
durante la etapa "1" de la fase previa, la aplicación cliente de trabajo núm. 2 selecciona la tercera (y no la segunda) política de encaminamiento de respuestas AT;
-
durante la etapa "7" de la fase de tratamiento, la respuesta AT es transmitida a la aplicación cliente externa y una copia de esta respuesta AT es transmitida hacia la aplicación cliente de trabajo núm. 2;
-
durante la etapa "9" de la fase de tratamiento, en el seno de la aplicación cliente de trabajo núm. 2, la función fuente de tratamiento trata la copia de la respuesta AT;
-
la fase de tratamiento comprende, además, una etapa "8" en el curso de la cual la respuesta es enviada a través de la conexión en serie, y una etapa "9" en el curso de la cual la aplicación cliente externa recibe y trata la respuesta.
En una variante de la nueva técnica según el invento de control del módulo de radiocomunicaciones (un modo de realización particular de la cual se ha descrito en lo que antecede), la aplicación cliente de trabajo núm. 2, 6c, no es "monobloque", sino "distribuida" ("multibloque"). Comprende una sub-aplicación cliente principal 7 combinada con una o varias sub-aplicaciones cliente secundarias 8. Cada sub-aplicación cliente secundaria 8 es una sub-aplicación esclava, en términos de lanzamiento y de parada, de la sub-aplicación cliente principal 7 que la llama. Pero, una vez iniciada, la sub-aplicación cliente secundaria 8 tiene acceso, independientemente de la sub-aplicación cliente principal 7, al conjunto de funciones de ejecución ofrecidas por la sub-aplicación cliente de trabajo núm. 1 (a través de un mecanismo, detallado en lo que sigue, de abono a un servicio de envío de mensajes procedentes de la aplicación cliente de trabajo núm. 1).
Cada sub-aplicación cliente secundaria es un "bloque elemental" que puede serle suministrado al cliente por un tercero desarrollador (típicamente, el fabricante del módulo de radiocomunicaciones). Así, se reduce el trabajo de desarrollo del cliente, por cuanto no se desarrolla mas que la sub-aplicación cliente principal, que somete a tratamiento secundario a determinados procesos que realizan llamadas a una o a varias sub-aplicaciones cliente secundarias.
Se observará que el cliente puede, igualmente, desarrollar por sí mismo las sub-aplicaciones cliente secundarias, si quiere poder llamarlas en distintas sub-aplicaciones cliente principales que desarrolle.
Se presenta en lo que sigue, en sucesión, la puesta en práctica de varios mecanismos en el marco de la variante precitada de la nueva técnica, según el invento, de control del módulo de radiocomunicaciones.
De entrada, se presenta un mecanismo de lanzamiento de la sub-aplicación cliente principal 7 y de abono de la misma a un servicio de envío de mensajes procedentes de la aplicación cliente de trabajo núm. 1. El funcionamiento de este mecanismo puede resumirse de la siguiente forma:
- etapa "1":
la aplicación cliente de trabajo núm. 1 detecta la presencia de una sub-aplicación cliente principal y la lanza;
- etapa "2":
el lanzamiento de la sub-aplicación cliente principal se realiza mediante la aplicación de interconexión de nivel 2 que, en el seno de la sub-aplicación cliente principal, llama a una función fuente de inicialización de la sub-aplicación cliente principal. Esta función fuente ("wm_apmAppliInit2_level1") se presenta con detalle en la descripción que sigue;
- etapa "3":
en el seno de la sub-aplicación cliente principal, la función fuente "wm_apmApplinit2_level1" inicializa la sub-aplicación cliente principal. Como se explica con detalle en las etapas siguientes ("4" a "6"), esta inicialización consiste, especialmente, en proporcionar a la aplicación cliente de trabajo núm. 1, la dirección de una función fuente (por ejemplo, "wm_apmAppliParer_level2") que le permita a la sub-aplicación cliente principal recibir los ajes procedentes de la aplicación cliente de trabajo núm. 1;
- etapa "4":
la sub-aplicación cliente principal llama a una función fuente de abono a un servicio de envío de mensajes procedentes de la aplicación cliente de trabajo núm. 1 ("wm_osMsgParserSubscribe_level2". Esta función fuente se presenta con detalle en la descripción que sigue;
- etapa "5":
la aplicación de interconexión de nivel 2 llama, en el seno de la aplicación cliente de trabajo núm. 1, a la o las funciones de ejecución apropiadas, denominadas función de registro del abono (o inscripción) al servicio de envío de mensajes destinados a la sub-aplicación cliente principal;
- etapa "6":
la aplicación cliente de trabajo núm. 1 establece la inscripción solicitada, a través de la aplicación de interconexión de nivel 2, para la sub-aplicación cliente principal.
Según una variante, la aplicación cliente de trabajo núm. 1 llama a la función fuente "wm_osMsgParserSubscribe_ level2" cuando lo desea (independientemente de la ejecución de la función fuente de inicialización).
Se presenta ahora un mecanismo de lanzamiento de la sub-aplicación cliente secundaria 8 y de abono de la misma a un servicio de envío de mensajes procedentes de la aplicación cliente de trabajo núm. 1.
\newpage
El funcionamiento de este mecanismo puede resumirse como sigue:
- etapa "1":
la sub-aplicación cliente principal, tras la recepción de un mensaje en su función fuente "wm_ apmAppliParser_level2()", llama a una función fuente de la sub-aplicación cliente secundaria, a saber, la función fuente de inicialización de la aplicación cliente secundaria 8 ("wm_app2Pipe_level2(init)"). Esta función fuente (que debe ser conocida de la sub-aplicación cliente principal, se presenta con detalle en la descripción que sigue;
- etapa "2":
en el seno de la sub-aplicación cliente secundaria, la función fuente "wm_app2Pipe_level2(init)" inicializa la sub-aplicación cliente secundaria. Como se explica con detalle en las etapas siguientes ("3" a "5"), esta inicialización consiste, en especial, en proporcionar a la aplicación cliente de trabajo núm. la dirección de una función fuente (por ejemplo "wm_app2MsgParser_level2") que le permita a la sub-aplicación cliente secundaria recibir los menajes procedentes de la aplicación cliente de trabajo núm. 1;
- etapa "3":
la sub-aplicación cliente secundaria llama a la función fuente de abono a un servicio de envío de mensajes procedentes de la aplicación cliente de trabajo núm. 1 ("wm_osMsgParserSubscribe_level2"). Esta función fuente se presenta con detalle en la descripción que sigue;
- etapa "4":
la aplicación de interconexión de nivel 2 llama, en el seno de la aplicación cliente de trabajo núm. 1, a la o las funciones de ejecución apropiadas, denominadas función de registro y de abono (o inscripción) al servicio de envío de los mensajes destinados a la sub-aplicación cliente secundaria;
- etapa "5":
la aplicación cliente de trabajo núm. 1 establece la inscripción solicitada, a través de la aplicación de interconexión de nivel 2, 6e, para la sub-aplicación cliente secundaria 8.
Una vez así lanzada, la sub-aplicación cliente secundaria 8 ejecuta su función (conjunto de tratamientos o de tareas), de forma autónoma con respecto a la sub-aplicación cliente principal 7. Como se explica con detalle más adelante, tiene a su disposición el conjunto de funciones de ejecución ofrecidas por la aplicación cliente de trabajo núm. 1.
Según una variante, la sub-aplicación cliente secundaria 8 llama a la función fuente "wm_osMsgParserSubscribe_ level2" cuando lo desea (independientemente de la ejecución de la función fuente de inicialización de la sub-aplicación cliente secundaria).
Se observará que la función fuente de inicialización de la sub-aplicación cliente secundaria puede comprender, al menos, un parámetro que permita la puesta en práctica de un mecanismo de diálogo entre la sub-aplicación cliente principal y la sub-aplicación cliente secundaria. Esta característica del invento se detalla en la descripción que sigue.
Se presenta ahora un mecanismo de parada de la sub-aplicación cliente secundaria 8 y de borrado del abono de la misma al servicio de envío de mensajes procedentes de la aplicación de trabajo núm. 1.
El funcionamiento de este mecanismo puede resumirse de la forma siguiente:
- etapa "1":
la sub-aplicación cliente principal 7, tras la recepción de un mensaje en su función fuente "wm_ apmAppliParser_level2()", llama a una función fuente de la sub-aplicación cliente secundaria 8, a saber, la función fuente de parada de la sub-aplicación cliente secundaria ("wm_app2Pipe_level2(stop)"). Esta función fuente (que debe ser conocida de la sub-aplicación cliente principal) se presenta con detalle en la descripción que sigue;
- etapa "2":
en el seno de la sub-aplicación cliente secundaria 8, la función fuente "wm_app2Pipe_level2(stop)" efectúa los tratamiento de parada de la sub-aplicación cliente secundaria. Como se explica con detalle en las etapas siguientes ("3" a "5"), estos tratamientos consisten, en especial para la sub-aplicación cliente secundaria, en borrar su abono al servicio de envío de mensajes procedentes de la aplicación cliente de trabajo núm. 1;
- etapa "3":
la sub-aplicación cliente secundaria llama a la función fuente de borrado de abono al servicio de envío de mensajes procedentes de la aplicación cliente de trabajo núm. 1 ("wm_osMsgParserUnsubscribe_ level2"). Esta función fuente se presenta con detalle en la descripción que sigue;
- etapa "4":
la aplicación de interconexión de nivel 2 llama, en el seno de la aplicación cliente de trabajo núm. 1, a la o a las funciones de ejecución apropiadas, denominadas función de borrado del abono (o de retirada de la inscripción) al servicio de envío de mensajes destinados a la sub-aplicación cliente secundaria;
- etapa "5":
la aplicación cliente de trabajo núm. 1 establece la parada de la inscripción solicitada a través de la aplicación de interconexión de nivel 2, por la sub-aplicación cliente secundaria.
Se presenta ahora un ejemplo de los tratamientos que pueden ser efectuados por la sub-aplicación cliente secundaria, para descargar la sub-aplicación cliente principal. En este ejemplo, se supone que:
-
la aplicación cliente de trabajo núm. 2 juega el papel de una aplicación cliente de control;
-
los tratamientos consisten en el envío, por la sub-aplicación cliente secundaria 8, de un comando y en la recepción de la respuesta correspondiente;
-
la sub-aplicación cliente secundaria 8 ha sido inicializada y es abonada al servicio de envío de mensajes procedentes de la aplicación cliente de trabajo núm. 1;
-
durante el abono, la sub-aplicación cliente secundaria 8 ha proporcionado "wm_app2MsgParser_level2()" como función fuente de recepción de los mensajes.
El funcionamiento de este ejemplo de tratamientos puede resumirse como sigue:
- etapa "1":
la sub-aplicación secundaria 8 llama a una función fuente de envío hacia la aplicación cliente de trabajo núm. 1 de uno o varios comandos AT, a fin de que esta última los ejecute (y efectúe, por tanto, un "tratamiento de comandos AT"). Esta función fuente ("wm_atSendCommand_level2") se presenta con detalle en la descripción que sigue;
- etapa "2":
la aplicación de interconexión de nivel 2, 6e, llama, en el seno de los medios de ejecución incluidos en la aplicación cliente de trabajo núm. 1, a la o las funciones de ejecución apropiadas, denominadas función de tratamiento de los comandos AT;
- etapa "3":
los medios de ejecución 4 ejecutan el o los comandos AT;
- etapa "4":
tras la ejecución, los medios de ejecución 4 envían la o las respuestas AT a la sub-aplicación cliente secundaria 8 (si la función fuente de envío ha sido parametrizada en este sentido);
- etapa "5":
esta o estas respuestas son enviadas, a través de la aplicación de interconexión de nivel 2, hacia la sub-aplicación cliente secundaria 8;
- etapa "6":
en el seno de la sub-aplicación cliente secundaria, la función fuente de recepción y tratamiento "wm_app2MsgParser_level2()" trata la respuesta. Esta función fuente es la que la sub-aplicación cliente secundaria ha proporcionado, en el momento de la inscripción, para la recepción de los mensajes procedentes de la aplicación cliente de trabajo núm. 1. Un parámetro de esta función fuente de recepción y tratamiento es el mensaje que contiene la o las respuestas antes citadas.
Se expone ahora, siempre en el marco de la variante de la nueva técnica según el invento para el control de un módulo de radiocomunicaciones, el caso en que la aplicación cliente de trabajo núm. 2 juega el papel de una aplicación de supervisión. En este caso, la sub-aplicación cliente secundaria 8 puede efectuar, por ejemplo, los tratamientos siguientes:
-
puesta en práctica de un mecanismo de encaminamiento de comandos, que permita a la sub-aplicación cliente secundaria 8 filtrar o "espiar" los comandos procedentes de la aplicación cliente externa;
-
puesta en práctica de un mecanismo de encaminamiento de respuestas, que permita a la sub-aplicación cliente secundaria 8 filtrar o "espiar" las respuestas destinadas a la aplicación cliente externa.
En lo que sigue no se describen con detalle estos ejemplos de tratamientos efectuados por la sub-aplicación cliente secundaria. Ha de observarse, sin embargo, que puede obtenerse un texto explicativo en relación con la puesta en práctica por parte de la sub-aplicación cliente secundaria de los dos mecanismos de encaminamiento (de comandos y de respuestas, respectivamente), llevando a cabo la siguiente transposición:
-
en parte del texto explicativo anterior en el caso de la aplicación cliente de trabajo núm. 2 sea "monobloque", y
-
se considera que es la sub-aplicación cliente secundaria la que está implicada (en lugar de la aplicación cliente de trabajo núm. 2).
En el Anexo 1 se encontrará una presentación detallada de ciertas funciones fuente de nivel 1, en las que se basan la aplicación cliente de arranque, 6a, y las aplicaciones cliente de trabajo, 6b, 6c.
En el Anexo 2 se encontrará una presentación detallada de ciertas funciones fuente de nivel 2 en las que se basan la aplicación cliente de trabajo núm. 2 y las sub-aplicaciones cliente principal y secundaria (en el caso de la variante), introducidas en el marco de la nueva técnica según el invento para el control de un módulo de radiocomunicaciones (véase la descripción anterior en relación con la figura 8).
Anexo 1
Presentación detallada de ciertas funciones fuente de nivel 1, en las que se basan la aplicación cliente de arranque y las aplicaciones cliente de trabajo
Observación preliminar: la lista que sigue no tiene carácter exhaustivo. Ha de observarse que todos los ejemplos de funciones fuente de nivel 1, asociadas a las aplicaciones cliente de trabajo, están relacionadas con el bloque "OS". Del mismo modo, aunque no aparezcan en la lista siguiente, es evidente que existen numerosas funciones fuente de nivel 1, asociadas a las aplicaciones cliente de trabajo, relacionadas con los bloques "HWL" y "capa 3 GSM" (un ejemplo de función relativa a cada uno de estos dos bloques puede encontrarse en las explicaciones antes facilitadas en relación con las figuras.
A1)"wm_apmGlobalInit_level1()"
Función fuente de nivel 1 de arranque global, cuya misión es suministrar al software principal 3 las informaciones que le permiten inicializar cada aplicación cliente de trabajo 6b, 6c, y dialogar con ella.
A2)"apmAppliInit_nºx_level1()"
Función fuente de nivel 1 de inicialización, que permite inicializar una aplicación cliente de trabajo núm. x. Esta función es llamada una vez durante la inicialización de la aplicación cliente de trabajo en cuestión.
Nombre exacto:
void AppliInit1(wm_apmInitType_e InitType);
Parámetros:
InitType:
indica el elemento que da comienzo a la inicialización. Los valores correspondientes son:
101
A3)"apmAppliParser_nºx_level1()"
Función fuente de nivel 1 de recepción y tratamiento de un mensaje procedente del software principal. Se llama a esta función cada vez que una aplicación cliente recibe un mensaje procedente del software principal.
Nombre exacto:
bool AppliParser1(wm_apmMsg_t*Message);
Parámetros:
Mensaje:
La estructura de "Mensaje" depende de su tipo:
102
TypMsg puede adoptar los valores siguientes:
WM_OS_TIMER: significa que el mensaje se envía al expirar una temporización.
WM_HWL_xxx...
WM_L3xxx...
Valores devueltos:
El parámetro de retorno indica si se ha tenido en cuenta (verdadero) o no (falso) el mensaje.
A4)"Informaciones de tareas globales"
104
\newpage
/* Identificadores de buzones (MBX) de tareas cliente */
WM_OS_MBX_CUST_1 /* MBX asociado a WM_OS_MBX_CUST_1 */
WM_OS_MBX_CUST_2 /* MBX asociado a WM_OS_MBX_CUST_2 */
WM_OS_MBX_CUST_3 /* MBX asociado a WM_OS_MBX_CUST_3 */
WM_OS_MBX_CUST_4 /* MBX asociado a WM_OS_MBX_CUST_4 */
/* Identificadores de buzones (MBX) de tareas del software principal */
WM_OS_MBX_CORE_CC, /* asociada al gestor de control de llamada (Call Control Management) */
WM_OS_MBX_CORE_SS, /* asociada al gestor de servicios suplementarios (Supplementary Services management) */
WM_OS_MBX_CORE_SMS, /* asociada al gestor de servicios de mensajes cortos (Short Message Services management) */
WM_OS_MBX_CORE_MM, /* asociada al gestor de movilidad (Mobility management) */
WM_OS_MBX_CORE_RR, /* asociada al gestor de recursos de radio (Radio Resource management) */
WM_OS_MBX_CORE_DATA, /* asociada al gestor de datos de llamada (Data Call management) */
WM_OS_MBX_CORE_IR, /* asociada al gestor de infrarrojos (Infrared management) */
WM_OS_MBX_CORE_IP, /* asociada al gestor de IP (IP management) */
WM_OS_MBX_CORE_SIM, /* asociada al gestor de SIM (SIM management) */
/* Identificadores de buzones (MBX) de HWL y BATT */
WM_OS_MBX_CORE_HWL, /* asociada al gestor de HWL (HWL management) */
WM_OS_MBX_CORE_BATT, /* asociada al gestor de batería (Battery management) */
}Mbx_t;
A5)"wm_osSendMsg_level1()";
Función fuente de nivel 1 de envío de un mensaje (previamente asignado y relleno) hacia otra aplicación cliente de trabajo, mediante la aplicación de interconexión y el software principal.
Nombre exacto:
bool wm_osSendMsg (void * Msg);
Parámetros:
Msg: el mensaje a enviar
Valores devueltos:
El parámetro de retorno indica si el mensaje ha sido enviado (verdadero) o no (falso).
A6)"wm_osStartTimer_level1()"
Función fuente de nivel 1 que da comienzo a una temporización en el software principal.
A7)"wm_osStopTimer_level1"
Función fuente de nivel 1 de parada de una temporización previamente iniciada en el software principal.
A8)"wm_osDebugFatalError_level1"
Función fuente de nivel 1 de seguimiento de la puesta a punto.
A9)"wm_osDebugFatalError_level1"
Función fuente de nivel 1 de indicación de un error fatal y de nuevo arranque.
A10)"wm_osWriteFlashData_level1"
Función fuente de nivel 1 de escritura de datos en una memoria incluida en el módulo de radiocomunicaciones.
A11)"wm_osReadFlashData_level1"
Función fuente de nivel 1 de lectura de datos en una memoria incluida en el módulo de radiocomunicaciones.
A12)" wm_osGetLenFlashData_level1"
Función fuente de nivel 1 que suministra la longitud de datos almacenados en una memoria incluida en el módulo de radiocomunicaciones.
A13)"em_osDeleteFlashData_level1"
Función fuente de nivel 1 para la supresión de datos almacenados en una memoria incluida en el módulo de radiocomunicaciones.
A14)"wm_osGetAllowedMemoryFlashData_level1"
Función fuente de nivel 1 que suministra la cantidad de memoria asignada en el seno de una memoria incluida en el módulo de radiocomunicaciones.
A15)"wm_osGetFreeMemoryFlasData_level1"
Función fuente de nivel 1 que suministra la cantidad de memoria libre en el seno de una memoria incluida en el módulo de radiocomunicaciones.
A16)"wm_osGetMemoryFlashData_level1"
Función fuente de nivel 1 para solicitar la asignación de memoria en el seno de una memoria incluida en el módulo de radiocomunicaciones.
A17)"wm_osReleaseMemoryFlashData_level1"
Función fuente de nivel 1 que solicita la liberación de memoria en el seno de una memoria incluida en el módulo de radiocomunicaciones.
A18)"wm_MbxSubscribe"
Función fuente de nivel 1 para inscripción en un servicio de buzón gestionado por el software principal, que permite que a una aplicación cliente de trabajo se le asigne un buzón propio y en el que desea recibir las informaciones procedentes de, al menos, una fuente predeterminada. Por defecto, todas las informaciones son enviadas a WM_OS_CUST_MBX_1, es decir, al buzón asociado a WM_OS_CUST_TASK_1 (la aplicación cliente de trabajo núm. 1).
Nombre exacto:
bool wm_MbxSubscribe(wm_apmMbxSubscription_t *TabMbxSubs);
Parámetros:
TabMbsSubs
Tabla que contiene las entidades y sus buzones asociados.
106
\vskip1.000000\baselineskip
Valores devueltos:
El parámetro de retorno indica si la inscripción ha sido tenida en cuenta (verdadero) o no (falso).
Anexo 2
Presentación detallada de ciertas funciones de nivel 2, en las cuales se basan la aplicación cliente de trabajo núm. 2 y las sub-aplicaciones cliente principal y secundaria (en el marco de la variante), introducida en el marco de la nueva técnica según el invento para el control de un módulo de radiocomunicaciones
Observación preliminar: la lista que sigue no es exhaustiva.
A1)"wm_osMsgParserSubscribe_level2()"
Función de inscripción de la aplicación cliente de trabajo núm. 2 o de una sub-aplicación cliente (principal o secundaria) dependiente de la aplicación cliente de trabajo núm. 1 a un servicio de recepción de mensajes procedentes de la aplicación cliente de trabajo núm. 1. La aplicación cliente de trabajo núm. 1 guarda en memoria esta función y la utilizará cada vez que haya de transmitir algo a la sub-aplicación cliente (principal o secundaria) en cuestión.
Nombre exacto:
void wm_osMsgParserSubscribe_level2(void(* SubscribeFunction)(wm_apmMsg_t*);
Parámetros:
Subscribe Function (wm_apmMsg_t*): función ofrecida por la parte que llama (aplicación cliente de trabajo núm. 2 o sub-aplicación cliente (principal o secundaria)) para que el software principal pueda enviarle los mensajes. Un prototipo de esta función ofrecida se detalla en lo que sigue ("wm_apmAppliParser_level2" para la sub-aplicación cliente principal, o "wm-app2MsgParser_level2" para la sub-aplicación cliente secundaria).
Valor devuelto:
El parámetro de retorno indica si el abono ha sido tenido en cuenta (VERDADERO) o no (FALSO).
A2)"wm_osMsgParserUnsubscribe_level2()"
Función de cese de la inscripción de una aplicación cliente de trabajo núm. 2 o de una sub-aplicación cliente (principal o secundaria), dependiente de la aplicación cliente de trabajo núm. 1, a un servicio de recepción de mensajes procedentes de la aplicación cliente de trabajo núm. 1. La aplicación cliente de trabajo núm. 1 olvida la función anteriormente almacenada en memoria.
Nombre exacto:
bool wm_osMsgParserUnsubscribe_level2 (void(* SubsFunction) (wm_apm_msg_t*);
Parámetros:
SubsFunction(wm_apmMsg_t*): función ofrecida por la parte que llama (aplicación cliente de trabajo núm. 2 o sub-aplicación cliente (principal o secundaria) para que la aplicación cliente de trabajo núm. 1 pueda enviarle los mensajes. Esta función debe ser la misma que la ofrecida durante el abono a este servicio pues, de no serlo, no se tendría en cuenta el cese del abono.
\vskip1.000000\baselineskip
Valor devuelto:
El parámetro de retorno indica si el cese del abono ha sido tenido en cuenta (VERDADERO) o no (FALSO).
A3)"wm_app2Pipe_level2(FunctionType función...)"
Prototipo de la función que debe ofrecer la sub-aplicación cliente secundaria a la sub-aplicación cliente principal para poder dialogar con ella. Esta función tiene argumentos variables, dependiendo el número y el tipo de los argumentos del primer parámetro "función".
Nombre exacto:
void wm_app2Pipe_level2(FunctionType function...);
Parámetros:
function: función solicitada. Implica el número y el tipo de los parámetros siguientes. Ciertos valores están reservados (por ejemplo, de 0 a 127), los otros (por ejemplo, de 128 a 255) quedan libres para ser utilizados por los diálogos particulares entre la sub-aplicación cliente principal y la sub-aplicación cliente secundaria.
A3-1)"Parámetros variables para función = WM_APP_FUNCTION_INIT":
200
La sub-aplicación secundaria debe inicializarse y ejecutar su tratamiento.
InitType_t Init: el tipo de inicialización (APM_INIT_POWER_ON o APM_INIT_REBOOT)
void (* MainAppDialogFunction)(wm_apmMsg_t *): dirección de la función que debe utilizar la sub-aplicación cliente secundaria para enviar los mensajes a la sub-aplicación cliente principal. Si la sub-aplicación cliente principal no desea tal función, pasa un valor NULL (NULO).
void *(* SecondaryAppDialogFunction)(wm_apmMsg_t *): La sub-aplicación cliente secundaria debe proporcionar la dirección de la función que ofrece a la sub-aplicación cliente principal. Si la sub-aplicación cliente secundaria no ofrece esta función, debe asignarle el valor NULL (NULO).
A3-2)"Parámetros variables para función = WM_APP_FUNCTION_STOP":
107
La sub-aplicación cliente secundaria debe interrumpir sus tratamientos, borrarse de todas las subscripciones a que se ha abonado y dejar libres el conjunto de recursos utilizados.
A4)"wm_apmAppliParser_level2"
Prototipo de la función fuente que debe proponer la aplicación cliente de trabajo núm. 2 para recibir los mensajes procedentes de la aplicación cliente de trabajo núm. 1. El mensaje que constituye el parámetro de esta función de tratamiento (denominada, también, "de recepción") contiene en particular un comando AT o una respuesta a un comando AT.
Se observará que todo lo que se expone en lo que sigue es aplicable, igualmente, a la función fuente, en la que la sub-aplicación cliente principal o la sub-aplicación cliente secundaria desean recibir los mensajes procedentes de la aplicación cliente de trabajo núm. 1. Sólo cambia el nombre de la propia función (por ejemplo, "wm_app2MsgParser_ level2" en lugar de "wm_apm_appliParser_level2").
Nombre exacto:
bool wm_apmAppliParser_level2(wm_apm_msg_t* Message);
Parámetros:
Message
La estructura del mensaje cambia con cada tipo de mensaje recibido:
109
\hskip1.6cm
Valores de MsgTyp >>:
WM_AT_SEND_RSP
El mensaje contiene una respuesta a un comando AT previamente enviado a la aplicación cliente de trabajo núm. 1 por la aplicación cliente de trabajo núm. 2
WM_AT_UNSOLICITED
El mensaje contiene un comando AT no solicitado.
WM_AT_CMD_PRE_PARSER
El mensaje contiene un comando AT enviado por una aplicación cliente externa, a través de la aplicación cliente de trabajo núm. 1.
WM_AT_RSP_PRE_PARSER
El mensaje contiene una respuesta AT resultante de la ejecución, por parte de la aplicación cliente de trabajo núm. 1, de un comando AT procedente de una aplicación externa.
WM_OS_TIMER
El mensaje es enviado al expirar una temporización.
La estructura del cuerpo es:
111
112
Las sub-estructuras del cuerpo son:
Cuerpos para WM_AT_SEND_RSP:
113
(véase el detalle de la función "wm_atSendCommand_level2", para la descripción de "wm_atSendRspType_e description").
Cuerpos para WM_AT_UNSOLICITED:
114
(véase el detalle de la función "wm_atUnsolicitedSubscription_level2", para la descripción de "wm_atUnsolici- ted_e").
Cuerpos para WM_AT_CMD_PRE_PARSER:
116
(véase el detalle de la función "wm_atRspPreParserSubscribe_level2", para la descripción de "wm_atCmdPreSubs- cribe_e").
\newpage
Cuerpos para WM_AT_RSP_PRE_PARSER:
117
118
(véase el detalle de la función "wm_atRspPreParserSubscribe_level2", para la descripción de "wm_atRspPreSubs- cribe_e").
Cuerpo para WM_OS_TIMER:
119
\hskip1.5cm
(véase el detalle de la función "wm_osStartTimer_level2", para la descripción de "Ident").
Valores devueltos:
El parámetro de retorno indica si el mensaje ha sido tratado (VERDADERO) o no (FALSO).
A5)"wm_atSendCommand_level2"
Función de envío, hacia la aplicación cliente de trabajo núm. 1 de, al menos, un comando AT, un parámetro del cual indica la o las aplicaciones destinatarias (a saber, la aplicación cliente de trabajo núm. 2 (o la sub-aplicación cliente (principal o secundaria)) residente y/o la aplicación cliente externa) de la respuesta resultante de la ejecución de este comando AT.
Nombre exacto:
120
Parámetros:
AtString
Este parámetro puede consistir en cualquier tipo de cadena de comandos AT, en caracteres ASCII.
Al mismo tiempo se pueden enviar varias cadenas.
AtStringSize
Dimensión del parámetro precedente: AtString.
ResponseType
Tipo de la respuesta
121
WM_AT_SEND_RSP_TO_EMBEDDED
Todas las respuestas son redirigidas hacia la aplicación cliente de trabajo núm. 2 (o la sub-aplicación cliente (principal o secundaria)) residente (Aplicación "empotrada"). Este es el modo por defecto.
WM_AT_SEND_RSP_TO_EXTERNAL
Todas las respuestas son redirigidas hacia la aplicación cliente externa (PC).
WM_AT_SEND_RSP_BROADCAST
Todas las respuestas son redirigidas ("difundidas") hacia la aplicación cliente de trabajo núm. 2 (o la sub-aplicación cliente (principal o secundaria) residente y la aplicación cliente externa (PC).
A6)"wm_atUnsolicitedSubscription_level2"
Función de inscripción de la aplicación cliente de trabajo núm. 1 a un servicio de recepción de comandos AT no solicitados, un parámetro de la cual indica hacia cual o hacia cuales aplicaciones destinatarias (a saber, la aplicación cliente de trabajo núm. 2 (o la sub-aplicación cliente (principal o secundaria)) residente y/o la aplicación cliente externa) debe ser redirigido cada uno de los comandos AT no solicitados.
Nombre exacto:
void wm_atUnsolicitedSubscription_level2(wm_atUnsolicited_e Unsolicited);
Parámetros:
Unsolicited
Este parámetro describe la acción ejecutada cuando llega un comando AT no solicitado.
122
WM_AT_UNSOLICITED_TO_EXTERNAL
Todos los comandos no solicitados serán redirigidos hacia la aplicación cliente externa (PC) (modo por defecto).
WM_AT_UNSOLICITED_TO_EMBEDDED
Todos los comandos no solicitados serán redirigidos hacia la aplicación cliente de trabajo núm. 2 (o la sub-aplicación cliente (principal o secundaria) residente.
WM_AT_UNSOLICITED_BROADCAST
Todos los comandos no solicitados serán redirigidos (difundidos) hacia la aplicación cliente externa (PC) y la aplicación cliente de trabajo núm. 2 (o la sub-aplicación cliente (principal o secundaria)) residente.
A7)"wm_atCmdPreParserSubscribe_level2"
Función de inscripción de la aplicación cliente de trabajo núm. 1 a un servicio de encaminamiento de comandos AT, un parámetro de la cual indica hacia qué aplicación o aplicaciones destinatarias (a saber, la aplicación cliente de trabajo núm. 2 (o la sub-aplicación cliente (principal o secundaria) residente y/o la aplicación cliente de trabajo núm. 1) debe ser dirigido cada uno de los comandos AT procedentes de una aplicación externa.
Nombre exacto:
void wm_atCmdPreParserSubscribe_level2 (wm_atCmdPreSubscribe_e SubscribeType)
Parámetros
SubscribeType
Este parámetro describe la acción que se ejecuta cuando llega un comando AT.
123
WM_AT_CMD_PRE_WAVECOM_TREATMENT
La aplicación cliente de trabajo núm. 2 (o la sub-aplicación cliente (principal o secundaria)) residente no quiere filtrar (ni "espiar") los comandos enviados por la aplicación cliente externa (modo por defecto).
WM_AT_CMD_PRE_EMBEDDED TREATMENT
La aplicación cliente de trabajo núm. 2 (o la sub-aplicación cliente (principal o secundaria)) residente quiere filtrar los comandos enviados por la aplicación cliente externa.
WM_AT_CMD_PRE_BROADCAST
La aplicación cliente de trabajo núm. 2 (o la sub-aplicación cliente (principal o secundaria)) residente quiere "espiar" los comandos enviados por la aplicación cliente externa.
A8)"wm_atRspPreParserSubscribe_level2"
Función de inscripción de la aplicación cliente de trabajo núm. 1 a un servicio de encaminamiento de respuestas, un parámetro de la cual indica hacia qué aplicación o aplicaciones destinatarias (a saber, la aplicación cliente de trabajo núm. 2 (o la sub-aplicación cliente (principal o secundaria)) residente y/o la aplicación cliente externa), ha de ser dirigida cada una de las respuestas resultantes de la ejecución, por la aplicación cliente de trabajo núm. 1, de un comando AT procedente de una aplicación externa.
Nombre exacto:
void wm_atRspPreParserSubscribe_level2 (wm_atRspPreSubscribe_e SubscribeType);
Parámetros
SubscribeType
Este parámetro describe la acción ejecutada cuando llega un comando AT.
124
WM_AT_RSP_PRE_WAVECOM_TREATMENT
La aplicación cliente de trabajo núm. 2 (o la sub-aplicación cliente (principal o secundaria)) residente no quiere filtrar (ni "espiar") las respuestas enviadas a la aplicación cliente externa (modo por defecto).
WM_AT_RSP_PRE_EMBEDDED_TREATMENT
La aplicación cliente de trabajo núm. 2 (o la sub-aplicación cliente (principal o secundaria)) residente quiere filtrar las respuestas enviadas a la aplicación cliente externa.
WM_AT_RSP_PRE_BROADCAST
La aplicación cliente de trabajo núm. 2 (o la sub-aplicación cliente (principal o secundaria)) residente quiere "espiar" las respuestas enviadas a la aplicación cliente externa.
A9)"wm_atSendRspExternalApp_level2"
Función de envío hacia la aplicación cliente externa, a través de la aplicación cliente de trabajo núm. 1, de al menos una respuesta. La utilización de esta función no es posible mas que si se ha efectuado una inscripción previa al servicio de encaminamiento de respuestas, dirigiéndose una copia de las respuestas, en particular, a la aplicación cliente de trabajo núm. 2 (o la sub-aplicación cliente (principal o secundaria) residente.
Nombre exacto:
void wm_atSendRspExternalApp_level2(u16 AtStringSize,
Parámetros
AtString
Puede ser cualquier tipo de cadena de respuestas AT, en caracteres ASCII.
AtStringSize
Dimensión del parámetro precedente: AtString
A10)"DataFlowService_level2"
Función de emisión y/o de recepción de datos para la aplicación cliente de trabajo núm. 2 (o la sub-aplicación cliente (principal o secundaria)) residente, a través de la aplicación cliente de trabajo núm. 1, una vez establecida una comunicación de datos.

Claims (37)

1. Módulo de radiocomunicaciones que garantiza las funciones de radiocomunicaciones y destinado a ser
-
integrado en un terminal de un radioteléfono, o
-
integrado en un dispositivo que necesita una funcionalidad de comunicaciones inalámbricas, o
-
propuesto en forma independiente, como módem que puede ser hecho cooperar con un equipo de terceros,
siendo dicho módulo de radiocomunicaciones del tipo que alberga y ejecuta un software principal, que comprende:
-
una aplicación de gestión del sistema de explotación (OS),
-
una aplicación de gestión de las radiocomunicaciones (capa 3 GSM),
-
una aplicación de gestión de periféricos que pueden ser conectados al módulo de radiocomunicaciones (HWL),
caracterizado porque cada una de las mencionadas aplicaciones incluidas en el software principal está asociada a un juego de funciones de ejecución de nivel 1,
porque dicho módulo de radiocomunicaciones alberga y ejecuta, además, al menos un software cliente que comprende, por lo menos, una aplicación cliente, asociada a un juego de funciones de nivel 1,
y porque dicho software principal y/o dicho software cliente comprenden una aplicación de interconexión de nivel 1, que permite la interconexión de funciones fuente de nivel 1, asociada a la citada aplicación cliente, con las funciones de ejecución de nivel 1 asociadas a la citada aplicación de gestión del sistema de explotación y a, por lo menos, una de las citadas aplicaciones de gestión de las radiocomunicaciones y de gestión de periféricos, con el fin de abrir, para dicha al menos una aplicación cliente, el acceso a, por lo menos, determinadas funcionalidades del software
principal.
2. Módulo de radiocomunicaciones según la reivindicación 1, caracterizado porque dicha aplicación de interconexión está comprendida en el citado software cliente.
3. Módulo de radiocomunicaciones según una cualquiera de las reivindicaciones 1 y 2, caracterizado porque dicho software cliente comprende un fichero binario que contiene, al menos, dos aplicaciones cliente.
4. Módulo de radiocomunicaciones según una cualquiera de las reivindicaciones 1 y 2, caracterizado porque dicho software cliente comprende, al menos, dos ficheros binarios, cada uno de los cuales contiene, al menos, una aplicación cliente.
5. Módulo de radiocomunicaciones según una cualquiera de las reivindicaciones 1 a 4, caracterizado porque dicho software cliente comprende una aplicación cliente de arranque global y, al menos, una aplicación cliente de trabajo que realiza, por lo menos, una tarea en tiempo real.
6. Módulo de radiocomunicaciones según una cualquiera de las reivindicaciones 1 a 5, caracterizado porque dicho software cliente comprende, al menos, dos aplicaciones cliente de trabajo, cada una de ellas asociada a un juego de funciones fuente de nivel 1 y que ejecutan, por lo menos, una tarea diferente en tiempo real.
7. Módulo de radiocomunicaciones según una cualquiera de las reivindicaciones 5 y 6, caracterizado porque el juego de funciones fuente de nivel 1 asociado a cada aplicación cliente de trabajo comprende una función fuente de nivel 1 de inicialización, que permite inicializar la mencionada aplicación cliente de trabajo.
8. Módulo de radiocomunicaciones según la reivindicación 5 y la reivindicación 7, caracterizado porque las citadas informaciones suministradas por la función fuente de arranque global del software principal, comprenden:
-
el número de aplicaciones cliente de trabajo que han de inicializarse;
-
para cada aplicación cliente de trabajo a inicializar, la función fuente de nivel 1 de inicialización correspondiente.
9. Módulo de radiocomunicaciones según una cualquiera de las reivindicaciones 5 a 8, caracterizado porque el juego de funciones fuente de nivel 1 asociado a cada aplicación cliente de trabajo comprende una función fuente de nivel 1 de recepción y de tratamiento de un mensaje procedente del software principal, siendo el mencionado mensaje un parámetro de la citada función fuente de nivel 1 de recepción y tratamiento.
10. Módulo de radiocomunicaciones según las reivindicaciones 8 y 9, caracterizado porque las mencionadas informaciones suministradas por la función fuente de nivel 1 de arranque global del software principal comprenden, además:
-
para cada aplicación cliente de trabajo a inicializar, la función fuente de nivel a de recepción y tratamiento.
11. Módulo de radiocomunicaciones según una cualquiera de las reivindicaciones 5 a 10, caracterizado porque el juego de funciones fuente de nivel 1 asociado a cada aplicación cliente de trabajo comprende una función fuente de nivel 1 de inscripción a un servicio de buzón gestionado por el software principal, que permite que a dicha aplicación cliente de trabajo se le asigne un buzón propio y en el que desea recibir las informaciones procedentes de, al menos, una fuente predeterminada.
12. Módulo de radiocomunicaciones según la reivindicación 11, caracterizado porque cada fuente predeterminada de informaciones es un buzón asignado a, por lo menos, una tarea principal ejecutada por el software principal y que contiene las informaciones que la mencionada tarea principal desea comunicar a una o a varias otras entidades.
13. Módulo de radiocomunicaciones según una cualquiera de las reivindicaciones 1 a 12, caracterizado porque dicho software cliente comprende, por lo menos, una aplicación cliente de trabajo asociada a un juego de funciones fuente de nivel 1 y que ejecutan, cada una, al menos una tarea diferente en tiempo real,
y porque el juego de funciones fuente de nivel 1 asociado a cada aplicación cliente de trabajo comprende, al menos, una función perteneciente al grupo constituido por:
-
una función fuente de nivel 1 de envío de un mensaje (previamente asignado y relleno) hacia otra aplicación cliente de trabajo, a través de la citada aplicación de interconexión y de software principal;
-
una función fuente de nivel 1 de inicio de una temporización en dicho software principal;
-
una función fuente de nivel 1 de parada de la temporización previamente iniciada en dicho software principal;
-
una función fuente de nivel 1 de seguimiento de la puesta a punto;
-
una función fuente de nivel 1 de indicación de un error fatal y de nuevo arranque;
-
una función fuente de nivel 1 de grabación de datos en una memoria comprendida en el módulo de radiocomunicaciones;
-
una función fuente de nivel 1 de lectura de datos de una memoria comprendida en el módulo de radiocomunicaciones;
-
una función fuente de nivel 1 de suministro de la longitud de datos almacenados en una memoria comprendida en el módulo de radiocomunicaciones;
-
una función fuente de nivel 1 de supresión de datos almacenados en una memoria comprendida en el módulo de radiocomunicaciones;
-
una función fuente de nivel 1 de la cantidad de memoria asignada en el seno de una memoria comprendida en el módulo de radiocomunicaciones;
-
una función fuente de nivel 1 de la cantidad de memoria libre en el seno de una memoria comprendida en el módulo de radiocomunicaciones;
-
una función fuente de nivel 1 de solicitud de asignación de memoria en el seno de una memoria comprendida en el módulo de radiocomunicaciones;
-
una función fuente de nivel 1 de solicitud de liberación de memoria en el seno de una memoria comprendida en el módulo de radiocomunicaciones.
14. Módulo de radiocomunicaciones según una cualquiera de las reivindicaciones 1 a 13, caracterizado porque el software cliente residente y el software principal utilizan, cada uno, una parte distinta de una misma memoria viva, provocando un intento de acceso de uno de ellos a una parte de la memoria viva reservada al otro, una parada funcional.
15. Módulo de radiocomunicaciones según una cualquiera de las reivindicaciones 1 a 14, caracterizado porque dicho software cliente comprende, al menos:
-
una primera aplicación cliente que lleva a cabo una primera tarea en tiempo real de ejecución de comandos de control, enviados a dicha primera aplicación por, al menos, una aplicación cliente de control y que pertenecen a un juego de comandos de control predeterminado, basándose dicha primera aplicación cliente, en particular, en un juego de funciones de ejecución de nivel 2, específicas de dichos comandos de control y que permiten, cada una, la ejecución de, al menos, uno de los mencionados comandos de control,
-
una segunda aplicación cliente que lleva a cabo una segunda tarea en tiempo real, tal que la citada segunda aplicación cliente juega, por lo menos, uno de los dos papeles siguientes:
*
el papel de una aplicación cliente de control, que envía los comandos de control a la primera aplicación cliente y que recibe, de la primera aplicación cliente, las respuestas resultantes de la ejecución de determinados comandos de control;
*
el papel de una aplicación cliente de supervisión, que gestiona la ejecución de comandos de control enviados por una aplicación cliente de control, cooperando la citada aplicación cliente externa, alojada en un equipo de terceros, y que se ejecuta en él, con el módulo de radiocomunicaciones;
basándose la mencionada segunda aplicación cliente, en particular, en un juego de funciones fuente de nivel 2, específicas de los comandos de control y que permiten, cada una, el envío o la recepción, hacia o desde la primera aplicación cliente, de comandos de control o de respuestas a los comandos de control,
-
una aplicación de interconexión de nivel 2, específica de los comandos de control, que permite la interconexión de las citadas funciones fuente y de ejecución de nivel 2, apoyándose dicha aplicación de interconexión de nivel 2, a su vez, en la mencionada aplicación de interconexión de nivel 1.
16. Módulo de radiocomunicaciones según la reivindicación 15, caracterizado porque, para permitir que la segunda aplicación cliente juegue el papel de una aplicación cliente de control:
-
la segunda aplicación cliente comprende medios de envío de comandos de control hacia los medios de ejecución incluidos en la primera aplicación cliente;
-
la primera aplicación cliente comprende medios de envío de las respuestas resultantes de la ejecución de determinados comandos de control por parte de los medios de ejecución incluidos en la primera aplicación cliente, hacia la segunda aplicación cliente;
-
la segunda aplicación cliente comprende medios de tratamiento de las respuestas enviadas hacia ella por la primera aplicación cliente.
17. Módulo de radiocomunicaciones según una cualquiera de las reivindicaciones 15 y 16, caracterizado porque, para permitir que la segunda aplicación cliente juegue el papel de una aplicación cliente de supervisión:
-
la primera aplicación cliente comprende medios de encaminamiento de comandos, en función de una política de encaminamiento de comandos determinada, con el fin de transmitir los comandos de control procedentes de la aplicación cliente externa hacia la segunda aplicación cliente y/o hacia los medios de ejecución comprendidos en la primera aplicación cliente;
-
la segunda aplicación cliente comprende medios de tratamiento de los comandos de control dirigidos hacia ella por los citados medios de encaminamiento de comandos.
18. Módulo de radiocomunicaciones según la reivindicación 17, caracterizado porque la segunda aplicación cliente comprende medios de selección de la política de encaminamiento de comandos aplicada por los mencionados medios de encaminamiento de comandos, de entre un conjunto de políticas de encaminamiento de comandos tales que, respectivamente:
-
los comandos de control procedentes de la aplicación cliente externa sean transmitidos únicamente a los medios de ejecución incluidos en la primera aplicación cliente;
-
los comandos de control procedentes de la aplicación cliente externa sean transmitidos únicamente a la segunda aplicación cliente;
-
los comandos de control procedentes de la aplicación cliente externa sean transmitidos a los medios de ejecución incluidos en la primera aplicación cliente y la segunda aplicación cliente.
19. Módulo de radiocomunicaciones según una cualquiera de las reivindicaciones 17 y 18, caracterizado porque los mencionados medios de tratamiento de comandos toman, para cada comando, al menos una decisión de entre el grupo que incluye:
-
envío del comando de control hacia los medios de ejecución comprendidos en la primera aplicación cliente, incluyendo la segunda aplicación cliente, a este efecto, medios de envío de comandos de control hacia los medios de ejecución;
-
aportación o no de una respuesta, únicamente en función de, al menos, una información relativa al comando, sin ejecutar éste, comprendiendo la segunda aplicación cliente, a este efecto, medios de envío de la respuesta a la aplicación cliente externa, a través de la segunda aplicación cliente.
20. Módulo de radiocomunicaciones según una cualquiera de las reivindicaciones 15 a 19, caracterizado porque, para permitir que la segunda aplicación cliente juegue el papel de una aplicación cliente de supervisión:
-
la primera aplicación cliente comprende medios de encaminamiento de respuestas, en función de una política de encaminamiento de respuestas determinada, con el fin de transmitir las respuestas resultantes de la ejecución de determinados comandos de control por parte de los medios de ejecución incluidos en la primera aplicación cliente, hacia la segunda aplicación cliente y/o hacia la aplicación cliente externa:
-
la segunda aplicación cliente comprende medios de tratamiento de las respuestas dirigidas hacia ella por los mencionados medios de encaminamiento de respuestas.
21. Módulo de radiocomunicaciones según la reivindicación 20, caracterizado porque la segunda aplicación cliente comprende medios de selección de la política de encaminamiento de respuestas aplicada por los citados medios de encaminamiento de respuestas, de entre un conjunto de políticas de encaminamiento de respuestas tales que, respectivamente:
-
las respuestas procedentes de los medios de ejecución sean transmitidas únicamente a la aplicación cliente externa;
-
las respuestas procedentes de los medios de ejecución sean transmitidas únicamente a la segunda aplicación cliente;
-
las respuestas procedentes de los medios de ejecución sean transmitidas a la segunda aplicación cliente y a la aplicación cliente externa.
22. Módulo de radiocomunicaciones según una cualquiera de las reivindicaciones 15 a 21, caracterizado porque dicho juego de funciones fuente de nivel 2 comprende, en particular, una función de tratamiento de un mensaje procedente de la primera aplicación, siendo el citado mensaje un parámetro de dicha función de tratamiento.
23. Módulo de radiocomunicaciones según la reivindicación 22, caracterizado porque dicho mensaje, que constituye el parámetro de la mencionada función de tratamiento, posee una estructura que comprende:
-
un primer campo que contiene una información relativa al tipo de dicho mensaje;
-
un segundo campo que contiene el cuerpo específico del citado mensaje.
24. Módulo de radiocomunicaciones según la reivindicación 23, caracterizado porque el tipo de dicho mensaje pertenece al grupo que comprende:
-
un mensaje que contiene una respuesta a un comando de control previamente enviado a la primera aplicación por la segunda aplicación;
-
un mensaje que contiene un comando de control no solicitado;
-
un mensaje que contiene un comando de control enviado por una aplicación cliente externa, a través de la primera aplicación;
-
un mensaje que contiene una respuesta resultante de la ejecución, por la primera aplicación, de un comando de control enviado por la aplicación cliente externa;
-
un mensaje enviado al expirar una temporización.
25. Módulo de radiocomunicaciones según una cualquiera de las reivindicaciones 22 a 24, caracterizado porque el citado juego de funciones fuente de nivel 2 comprende, además, al menos una función que pertenece al grupo que comprende:
-
una función fuente de nivel 2 de envío hacia la primera aplicación de, al menos, un comando de control, siendo dicho al menos un comando de control un primer parámetro de dicha función de envío, indicando un segundo parámetro de la mencionada función de envío la o las aplicaciones destinatarias, a saber, la segunda aplicación y/o la aplicación cliente externa, de la respuesta resultante de la ejecución del mencionado comando de control;
-
una función fuente de nivel 2 de inscripción de la primera aplicación a un servicio de recepción de comandos de control no solicitados, indicando un parámetro de la citada función de inscripción, hacia qué aplicación o aplicaciones destinatarias, a saber, la segunda aplicación cliente y/o la aplicación cliente externa, debe ser redirigido cada uno de los comandos de control no solicitados;
-
una función fuente de nivel 2 de inscripción de la primera aplicación a un servicio de encaminamiento de comandos de control, indicando un parámetro de dicha función de inscripción hacia qué aplicación o aplicaciones, a saber, la primera aplicación y/o la segunda aplicación, debe ser dirigido cada uno de los comandos de control procedentes de la aplicación cliente externa;
-
una función fuente de nivel 2 de inscripción de la primera aplicación a un servicio de encaminamiento de respuestas, indicando un parámetro de la citada función de inscripción hacia qué aplicación o aplicaciones, a saber, la aplicación cliente externa y/o la segunda aplicación, debe ser encaminada cada una de las respuestas resultantes de la ejecución, por la primera aplicación, de un comando de control;
-
una función fuente de nivel 2 de envío hacia la aplicación cliente externa, a través de la primera aplicación, de al menos una respuesta, siendo dicha al menos una respuesta un parámetro de la mencionada función de envío.
26. Módulo de radiocomunicaciones según una cualquiera de las reivindicaciones 15 a 25, caracterizado porque dicho juego de comandos de control es un juego de comandos AT estándar.
27. Módulo de radiocomunicaciones según la reivindicación 26, caracterizado porque dicho juego de comandos de control comprende, además de los comandos AT estándar, un comando AT suplementario (AT+WDWL), denominado comando de carga, que permite que la aplicación cliente externa cargue una nueva segunda aplicación cliente o la totalidad de un nuevo software cliente, en el módulo de radiocomunicaciones.
28. Módulo de radiocomunicaciones según una cualquiera de las reivindicaciones 26 y 27, caracterizado porque dicho juego de comandos de control comprende, además de los comandos AT estándar, un comando AT suplementario, denominado comando de desactivación (AT+WOPEN), que permite que la aplicación cliente externa desactive la segunda aplicación cliente.
29. Módulo de radiocomunicaciones según una cualquiera de las reivindicaciones 15 a 28, caracterizado porque dicha segunda aplicación cliente comprende una sub-aplicación cliente principal y, al menos, una sub-aplicación cliente secundaria, esclava de la sub-aplicación cliente principal, repartiéndose los tratamientos efectuados por dicha segunda aplicación cliente entre dicha sub-aplicación cliente principal y dicha al menos una sub-aplicación cliente secundaria.
30. Módulo de radiocomunicaciones según la reivindicación 29 y la reivindicación 7, caracterizado porque dicha función fuente de nivel 1 de inicialización, está incluida en el juego de funciones fuente de nivel 1 asociado a la segunda aplicación cliente de trabajo y permite inicializar la mencionada sub-aplicación cliente principal.
31. Módulo de radiocomunicaciones según la reivindicación 30, caracterizado porque la sub-aplicación cliente principal está asociada a un juego de funciones fuente de nivel 2 que comprende una función fuente de nivel 2 de abono a un servicio de envío de mensajes procedentes de la primera aplicación cliente,
y porque durante este abono, la sub-aplicación cliente principal comunica a la primera aplicación cliente la dirección de una función fuente de nivel 2 de tratamiento de un mensaje, en la que la sub-aplicación cliente principal desea recibir los mensajes procedentes de la primera aplicación cliente.
32. Módulo de radiocomunicaciones según una cualquiera de las reivindicaciones 29 a 31, caracterizado porque la sub-aplicación cliente secundaria está asociada a un juego de funciones fuente de nivel 2 que comprenden una función fuente de nivel 2 de inicialización de la sub-aplicación cliente secundaria, que es llamada por la sub-aplicación cliente principal.
33. Módulo de radiocomunicaciones según la reivindicación 32, caracterizado porque el juego de funciones fuente de nivel 2 asociado a la sub-aplicación cliente secundaria comprende una función fuente de nivel 2 de abono a un servicio de envío de mensajes procedentes de la primera aplicación cliente,
y porque, durante este abono, la sub-aplicación cliente secundaria comunica a la primera aplicación cliente la dirección de una función fuente de nivel 2 de tratamiento de un mensaje, en la que la sub-aplicación cliente secundaria desea recibir los mensajes procedentes de la primera aplicación cliente.
34. Módulo de radiocomunicaciones según una cualquiera de las reivindicaciones 32 y 33, caracterizado porque dicha función fuente de nivel 2 de inicialización de la sub-aplicación cliente secundaria, comprende al menos un parámetro que permite la puesta en práctica de un mecanismo de diálogo entre la sub-aplicación cliente principal y la sub-aplicación cliente secundaria.
35. Módulo de radiocomunicaciones según una cualquiera de las reivindicaciones 32 a 34, caracterizado porque el juego de funciones fuente de nivel 2 asociado a la sub-aplicación cliente secundaria comprende una función fuente de nivel 2 de interrupción de la sub-aplicación cliente secundaria, que es llamada por la sub-aplicación cliente principal.
36. Módulo de radiocomunicaciones según una cualquiera de las reivindicaciones 32 a 35, caracterizado porque el juego de funciones fuente de nivel 2 asociado a la sub-aplicación cliente secundaria comprende una función fuente de nivel 2 de interrupción del abono al mencionado servicio de envío de mensajes procedentes de la primera aplicación cliente.
37. Procedimiento de apertura del acceso a, por lo menos, determinadas funcionalidades de un software principal de un módulo de radiocomunicaciones que garantiza las funciones de radiocomunicación, y destinado a ser:
-
integrado en un terminal de un radioteléfono, o
-
integrado en un dispositivo que requiere una funcionalidad de radiocomunicaciones inalámbricas, o
-
propuesto en forma independiente, como módem que pueda ser hecho cooperar con un equipo de terceros,
siendo el mencionado módulo de radiocomunicaciones del tipo que alberga y ejecuta un software principal que comprende:
-
una aplicación de gestión del sistema de explotación (OS),
-
una aplicación de gestión de las radiocomunicaciones (capa 3 GSM),
-
una aplicación de gestión de periféricos que pueden conectarse al módulo de radiocomunicaciones (HWL),
caracterizado porque cada una de las mencionadas aplicaciones comprendidas en el software principal está asociada a un juego de funciones de ejecución de nivel 1,
porque dicho módulo de radiocomunicaciones alberga y ejecuta, además, por lo menos un software cliente que comprende, al menos, una aplicación cliente, asociada a un juego de funciones fuente de nivel 1,
y porque dicho software principal y/o dicho software cliente comprenden una aplicación de interconexión de nivel 1, que permite la interconexión de las funciones fuente de nivel 1, asociadas a la citada aplicación cliente, con las funciones de ejecución de nivel 1 asociadas a dicha aplicación de gestión del sistema de explotación y a, por lo menos, una de las mencionadas aplicaciones de gestión de radiocomunicaciones y de gestión de periféricos.
ES02774916T 2001-10-02 2002-09-09 Modulo de radiocomunicaciones que ejecuta un programa de ordenador principal, donde las capas bajas estan abiertas a un programa de ordenador cliente que tambien es ejecutado por el modulo. Expired - Lifetime ES2242067T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0112692 2001-10-02
FR0112692A FR2830403B1 (fr) 2001-10-02 2001-10-02 Module de radiocommunication executant un logiciel principal dont les couches sont ouvertes a un logiciel client egalement execute par le module

Publications (1)

Publication Number Publication Date
ES2242067T3 true ES2242067T3 (es) 2005-11-01

Family

ID=8867862

Family Applications (1)

Application Number Title Priority Date Filing Date
ES02774916T Expired - Lifetime ES2242067T3 (es) 2001-10-02 2002-09-09 Modulo de radiocomunicaciones que ejecuta un programa de ordenador principal, donde las capas bajas estan abiertas a un programa de ordenador cliente que tambien es ejecutado por el modulo.

Country Status (11)

Country Link
US (1) US20050118995A1 (es)
EP (1) EP1433343B1 (es)
KR (1) KR100962614B1 (es)
CN (1) CN100514990C (es)
AT (1) ATE293873T1 (es)
DE (1) DE60203811T2 (es)
ES (1) ES2242067T3 (es)
FR (1) FR2830403B1 (es)
HK (1) HK1072867A1 (es)
WO (1) WO2003030572A1 (es)
ZA (1) ZA200402988B (es)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102004062869A1 (de) * 2004-12-21 2006-07-06 Mayr, Ralph Modul zur Datenübertragung und Peripheriegerät zur Aufnahme des Moduls
FR2905819B1 (fr) * 2006-09-12 2013-01-18 Wavecom Procede de gestion de l'architecture logicielle d'un circuit de radiocommunication,application,produit programme d'ordinateur et circuit correspondants.
WO2016070127A1 (en) * 2014-10-30 2016-05-06 Be-Bound Inc. Asynchronous application data access system and method

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2239985C (en) * 1995-12-08 2002-05-14 Amsc Subsidiary Corporation Mobile communications terminal for satellite communications system
SE520934C2 (sv) * 1998-06-05 2003-09-16 Telia Ab Anordning och metod för att hantera tele- och datatjänster i en mobil terminal som utnyttjar SIM Application Toolkit (SIMAT) baserade informationsmeddelanden
FR2805912A1 (fr) * 2000-03-01 2001-09-07 Gemplus Card Int Procede de commande d'une carte a puce
JP2001251366A (ja) * 2000-03-07 2001-09-14 Sony Corp 通信装置及び通信方法

Also Published As

Publication number Publication date
CN1586086A (zh) 2005-02-23
KR20040047889A (ko) 2004-06-05
FR2830403A1 (fr) 2003-04-04
EP1433343B1 (fr) 2005-04-20
HK1072867A1 (en) 2005-09-09
FR2830403B1 (fr) 2003-11-21
DE60203811T2 (de) 2006-01-26
US20050118995A1 (en) 2005-06-02
DE60203811D1 (de) 2005-05-25
CN100514990C (zh) 2009-07-15
ATE293873T1 (de) 2005-05-15
ZA200402988B (en) 2005-04-26
KR100962614B1 (ko) 2010-06-11
WO2003030572A1 (fr) 2003-04-10
EP1433343A1 (fr) 2004-06-30

Similar Documents

Publication Publication Date Title
US11843578B2 (en) eSIM-based card pool system and control method thereof
US11064343B2 (en) Management of subscriber profiles simultaneously active in an eUICC card using a plurality of separate links
ES2231190T3 (es) Soporte de almacenamiento de informacion.
ES2287498T3 (es) Activacion de un modulo de identidad para un sistema de comunicacion.
RU2196393C2 (ru) Способ управления в режиме меню с поддержкой в оконечных устройствах дополнительных услуг в мобильных системах связи
ES2221535B1 (es) Un dispositivo de telefonia movil y un metodo de gestion de datos.
US8954114B2 (en) Apparatuses and methods for providing multi-standby mode of wireless communications using single subscriber identity card with multiple subscriber numbers
ES2346045T3 (es) Sistema y metodo de control de acceso a memoria compartida para una arquitectura de ordenador para redes de banda ancha.
RU2129760C1 (ru) Способ эксплуатации мобильной радиосети
ES2339677T3 (es) Personalizacion de estaciones moviles.
ES2241367T3 (es) Acceso a un ordenador servidor.
CN104303587B (zh) 对偶网络无线电资源管理中的快速通信恢复
CN108028749B (zh) 用于虚拟化可再编程的通用集成电路芯片的装置、方法以及系统
ES2802548T3 (es) Método de control de un módulo de identidad de abonado integrado
WO2003005738A3 (en) Sms routing
EP1331559A2 (en) System for personalizing applications of a mobile terminal SIM or USIM card
ES2242067T3 (es) Modulo de radiocomunicaciones que ejecuta un programa de ordenador principal, donde las capas bajas estan abiertas a un programa de ordenador cliente que tambien es ejecutado por el modulo.
CN102065582B (zh) 一种通信方法和通信系统
ES2316551T3 (es) Modulo de radiocomunicacion que alberga y ejecuta un software cliente, y procedimiento correspondiente de puesta en practica de un software cliente de control o mando.
ES2318907T3 (es) Sistema de servicios en una red.
US11259160B1 (en) Provisioning a voicemail platform
CN102065579A (zh) 一种通信方法和通信系统
ES2299293B1 (es) Sistema de acceso remoto a servici0s de telefonia movil de un equipo movil.
WO2019219175A1 (en) Multi-virtual subscriber identity module communication terminal
ES2274219T3 (es) Procedimiento para cargar datos en un puesto movil utilizando una tarjeta sim proactiva.