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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/02—Terminal devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/325—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the network layer [OSI layer 3], e.g. X.25
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72403—User 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".
"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.
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
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:
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:
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"
\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.
\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
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":
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":
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:
\hskip1.6cmValores 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:
Las sub-estructuras del cuerpo
son:
Cuerpos para WM_AT_SEND_RSP:
(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:
(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:
(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:
(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:
\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:
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
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.
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.
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.
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.
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.
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)
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)
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 | 通信装置及び通信方法 |
-
2001
- 2001-10-02 FR FR0112692A patent/FR2830403B1/fr not_active Expired - Fee Related
-
2002
- 2002-09-09 WO PCT/FR2002/003058 patent/WO2003030572A1/fr not_active Application Discontinuation
- 2002-09-09 EP EP02774916A patent/EP1433343B1/fr not_active Expired - Lifetime
- 2002-09-09 CN CNB028224744A patent/CN100514990C/zh not_active Expired - Fee Related
- 2002-09-09 AT AT02774916T patent/ATE293873T1/de not_active IP Right Cessation
- 2002-09-09 US US10/490,995 patent/US20050118995A1/en not_active Abandoned
- 2002-09-09 ES ES02774916T patent/ES2242067T3/es not_active Expired - Lifetime
- 2002-09-09 DE DE60203811T patent/DE60203811T2/de not_active Expired - Fee Related
- 2002-09-09 KR KR1020047004938A patent/KR100962614B1/ko not_active IP Right Cessation
-
2004
- 2004-04-20 ZA ZA2004/02988A patent/ZA200402988B/en unknown
-
2005
- 2005-06-29 HK HK05105478.5A patent/HK1072867A1/xx not_active IP Right Cessation
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. |