ES2774282T3 - Sistema y método de servidor de pantalla jerárquico - Google Patents
Sistema y método de servidor de pantalla jerárquico Download PDFInfo
- Publication number
- ES2774282T3 ES2774282T3 ES12800376T ES12800376T ES2774282T3 ES 2774282 T3 ES2774282 T3 ES 2774282T3 ES 12800376 T ES12800376 T ES 12800376T ES 12800376 T ES12800376 T ES 12800376T ES 2774282 T3 ES2774282 T3 ES 2774282T3
- Authority
- ES
- Spain
- Prior art keywords
- server
- user
- slave
- network
- user system
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/14—Display of multiple viewports
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1423—Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2360/00—Aspects of the architecture of display systems
- G09G2360/06—Use of more than one graphics processor to process data before displaying to one or more screens
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2370/00—Aspects of data communication
- G09G2370/02—Networking aspects
- G09G2370/022—Centralised management of display operation, e.g. in a server instead of locally
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- User Interface Of Digital Computer (AREA)
- Digital Computer Display Output (AREA)
Abstract
Un sistema de servidores, estando el sistema de servidores configurado para comunicarse a través de una red con un sistema de usuario (407), comprendiendo el sistema de usuario: al menos un componente de hardware (408, 410); caracterizado por que: el al menos un componente de hardware (408, 410) tiene una capacidad de procesamiento limitada que consiste en una unidad de control (318) configurada para multiplexar y demultiplexar las comunicaciones para transformar los tipos de datos nativos empleados en al menos un componente de hardware (408, 410) del sistema de usuario a/desde mensajes de red adecuados para la comunicación a través de la red; y por que el sistema de servidores comprende: un servidor maestro (400) configurado para controlar de manera comunicativa el al menos un componente de hardware (408, 410) usando mensajes de servidor-a-usuario comunicados a través de la red, en donde los mensajes de servidor-a-usuario proporcionan datos/control que representan directrices o instrucciones para el al menos un componente de hardware del sistema de usuario; y al menos un servidor esclavo de primer nivel (401, 402, 403, 413, 414) conectado de manera comunicativa al servidor maestro (400), estando el servidor maestro configurado para proporcionar al sistema de usuario derechos de acceso al por lo menos un servidor esclavo de primer nivel, permitiendo de este modo que el al menos un servidor esclavo de primer nivel controle de manera comunicativa uno cualquiera del al menos un componente de hardware (408, 410) a través de la red, en donde el al menos un servidor esclavo de primer nivel puede transferir sus derechos de acceso a uno o más servidores esclavos de nivel inferior diferentes a los que está conectado, y en donde los derechos de acceso son parte de un mensaje de conexión que comienza la comunicación entre servidores.
Description
DESCRIPCIÓN
Sistema y método de servidor de pantalla jerárquico
Campo técnico
La presente invención se refiere, en general, a dispositivos de servidor y dispositivos de usuario no inteligentes conectados por una red de comunicación, y más específicamente se refiere a sistemas de servidor de pantalla que incluyen un dispositivo de servidor maestro y unos dispositivos de servidor esclavo jerárquicos conectados de manera comunicativa a los dispositivos de usuario que tienen componentes de visualización, entrada-salida y de red con capacidad de procesamiento limitada o nula.
Antecedentes
A lo largo de los años ha habido diversos tipos de sistemas informáticos. Cuatro de los tipos principales son servidor, cliente, cliente-servidor y servidor de pantalla. Todos los tipos de sistemas informáticos realizan una tarea informática para un usuario.
Los sistemas de servidor consisten en un sistema único donde toda la informatización se realiza en una localización central y no hay interacción del usuario con la tarea informática que no sea el inicio inicial de la tarea. Un sistema de servidor típico es un ordenador central tradicional.
Los sistemas de cliente consisten en un único sistema que realiza toda la informatización, pero en los sistemas de cliente hay una interacción constante del usuario con la tarea informática. Los sistemas de cliente típicos son ordenadores personales, ordenadores portátiles, teléfonos inteligentes y consolas de juegos.
Los sistemas de cliente-servidor consisten en un sistema informático de servidor y un sistema informático de cliente que juntos realizan una única tarea informática. Cada uno de estos sistemas opera por separado como tanto un sistema de servidor como un sistema de cliente. Operando como servidor y cliente, el sistema de cliente-servidor realiza una única tarea informática que requiere la interacción del usuario en la tarea, al menos en relación con la actuación como cliente en la tarea. Los sistemas de cliente-servidor típicos que se usan actualmente son los sistemas de reserva de aerolíneas y los sistemas de puntos de venta de grandes tiendas minoristas. Un tipo especial de sistema de cliente-servidor es el servidor web/cliente de navegador. Como es el caso con cualquier aplicación cliente-servidor, el servidor web realiza una sola tarea única, proporcionando respuestas a las solicitudes recibidas. Sin embargo, en lugar de tener un programa de cliente único asociado con cada programa de servidor, el programa de navegador sirve como un programa de cliente genérico. El navegador se usa por todos los servidores web. Debería observarse que los navegadores actualmente pueden operar una aplicación descargando un programa sobre la marcha que se procesa en el navegador; por lo tanto, la informatización de navegador web/servidor, específicamente en el caso de descarga de programas, es muy similar a la informatización cliente-servidor convencional.
Los sistemas de servidor de pantalla consisten en un sistema informático de servidor y un sistema del lado del usuario no inteligente. Un aspecto predominante de este sistema de usuario no inteligente es una pantalla. Por lo tanto, el sistema de usuario a veces se denomina como "pantalla", de ahí el término sistema de servidor de pantalla para este tipo de sistemas informáticos. Al igual que con el sistema informático de servidor único, el servidor realiza sustancialmente todas las tareas informáticas en el sistema de servidor de pantalla, y la pantalla realiza poca, si es que la hay, informatización (que no sea en la medida necesaria para las operaciones de entrada y salida). Sin embargo, en estos sistemas de servidor de pantalla, la pantalla es altamente interactiva con la tarea informática que se procesa por el servidor. El servidor realiza sustancialmente todas las funciones de procesamiento y otras funciones de un sistema de cliente (de un tipo de sistema de cliente de un sistema informático) debido a que la pantalla tiene una capacidad de procesamiento muy limitada, si es que tiene alguna. En efecto, la pantalla simplemente visualiza los píxeles correspondientes a los datos (que representan los píxeles) recibidos del servidor por la pantalla. En la mayoría de los casos, el servidor entrega los datos (que representan píxeles para su visualización) a la pantalla para su visualización (tal como una secuencia de vídeo u otra secuencia de datos) y los eventos de usuario de bajo nivel en la pantalla (tal como la pulsación de teclas y los movimientos del ratón) se envían de manera nativa por la pantalla al servidor.
La informatización de servidor de pantalla es la al menos una disposición empleada para los sistemas informáticos actuales, pero los sistemas de servidor de pantalla pueden proporcionar beneficios y se espera que aumente su popularidad. Un entorno informático típico servidor de pantalla se denomina informatización de cliente cero. En la informatización de cliente cero, un sistema operativo de escritorio (SO) y las aplicaciones son procesados por un servidor (en lugar de por un sistema de cliente, tal como un ordenador personal típico). El sistema del lado del usuario a menudo es principalmente un dispositivo de "cliente ligero" no inteligente, acoplado con una pantalla y un teclado (u otros dispositivos de entrada y salida).
Otro entorno en el que se emplea la informatización de servidor de pantalla son los juegos 3D. Los juegos 3D son
procesados por un sistema de servidor, en general un ordenado servidor de alto rendimiento, y el sistema de servidor entrega una secuencia de vídeo en píxeles del juego a un sistema del lado del usuario muy "cliente ligero" conectado a un televisor. Un dispositivo de entrada de controlador de juego tradicional en el sistema del lado del usuario comunica las entradas de un usuario al sistema de servidor durante el juego.
Sería ventajoso, por lo tanto, proporcionar una mayor flexibilidad operativa y una mayor escalabilidad para los sistemas de servidor de pantalla.
El documento US 2003/061323 describe técnicas jerárquicas para la gestión y configuración de redes de clientes ligeros distribuidas.
Sumario
De acuerdo con la invención, se proporciona un sistema de servidores como se establece en la reivindicación 1, y un método de comunicación mediante un conjunto jerárquico de servidores con un dispositivo de usuario como se establece en la reivindicación 18.
Una realización de la invención es un sistema de servidor de pantalla que incluye un sistema de "servidor múltiple jerárquico" de pantalla. El sistema de servidor de pantalla incluye uno o más sistemas de usuario no inteligentes (la pantalla) conectados a través de una red a una pluralidad de dispositivos de servidor conectados en una jerarquía controlada.
El sistema de usuario incluye una pantalla, uno o más componentes de entrada-salida, tal como un teclado, ratón, altavoces, micrófono y/u otros dispositivos periféricos similares, y un conector de interfaz de red conectado de manera comunicativa a una red de comunicación. El sistema de usuario envía de manera comunicativa a través de la red datos de muy bajo nivel que representan entradas/acciones de un usuario a través del dispositivo periférico, a un sistema de servidor de la red. Igualmente, el sistema de servidor comunica a través de la red a la pantalla o a otro dispositivo periférico datos de muy bajo nivel que representan los resultados de una operación del sistema de servidor, tal como en respuesta al dispositivo periférico. Los datos de bajo nivel comunicados de este modo representan, por ejemplo: píxeles (vídeo) enviados por el sistema de servidor a la pantalla de sistema de usuario, una entrada de un usuario a un teclado del sistema de usuario enviada por el teclado al sistema de servidor, muestras de audio enviadas por el sistema de servidor al altavoz del sistema de usuario, etc. El procesamiento está limitado para el sistema de usuario, por ejemplo, el sistema de usuario solo puede realizar la multiplexación y demultiplexación de las comunicaciones según sea necesario para la red. Puede ser necesario multiplexar y demultiplexar, por ejemplo, para transformar los tipos de datos nativos empleados en componentes del sistema de usuario a/desde mensajes de red adecuados para la comunicación a través de la red.
Los servidores están dispuestos en una jerarquía con un único servidor maestro y múltiples conjuntos de servidores esclavos en cascada. El servidor maestro se comunica con los servidores esclavos de primer nivel y los servidores esclavos de primer nivel se comunican con los servidores esclavos de segundo nivel y así sucesivamente. Todos los servidores son capaces de comunicarse directamente con el sistema de usuario. El servidor maestro tiene control completo de todos los componentes respectivos del sistema de usuario. El servidor maestro proporciona a cada servidor esclavo de nivel inferior en la jerarquía una cantidad igual o menor de control, respectivamente, sobre los componentes respectivos del sistema de usuario. El servidor maestro informa al o a los componentes del sistema de usuario de qué servidor(es) de bajo nivel, si los hay, pueden acceder de manera controlada al componente. Este acceso jerárquico por los respectivos servidores esclavos de la jerarquía y por el servidor maestro a los componentes respectivos del sistema de usuario de manera flexible y extremadamente segura permite el procesamiento por parte de los servidores, y la entrada/salida por parte de los componentes del sistema de usuario sin un procesamiento significativo necesario por el sistema de usuario.
El sistema de usuario y el sistema de servidor jerárquico se localizan en general de manera remota entre sí, y el sistema de usuario y el sistema de servidor se conectan de manera comunicativa a través de una red de comunicación física, tal como Ethernet, Wi-Fi, 3G u otra red de datos. Sin embargo, en ciertas alternativas, el sistema de usuario y el sistema de servidor pueden estar contenidos en un solo dispositivo físico y la red, en tal caso, es un cable local u otro enlace local del dispositivo.
El sistema de usuario y el sistema de servidor combinados, ya sea incorporados como un sistema de usuario no inteligente y un sistema de servidor jerárquico, como un único dispositivo físico u otra disposición similar, a veces se denomina en el presente documento un sistema de servidor de pantalla jerárquico que opera para la informatización de servidor de pantalla jerárquica.
Breve descripción de los dibujos
La presente invención se ilustra por medio de un ejemplo y no como limitación en las figuras adjuntas, en las que referencias similares indican elementos similares, y en las que:
la figura 1 ilustra un sistema de servidor jerárquico y dos sistemas de usuario no inteligentes conectados por una red, de acuerdo con ciertas realizaciones de la invención;
la figura 2 ilustra dos sistemas de usuario típicos a modo de ejemplo: un sistema de usuario de escritorio a modo de ejemplo y un sistema de usuario de dispositivo portátil a modo de ejemplo, de acuerdo con ciertas realizaciones de la invención;
la figura 3 ilustra unos componentes a modo de ejemplo de un sistema de usuario de dispositivo portátil a modo de ejemplo, de acuerdo con ciertas realizaciones de la invención;
la figura 4 ilustra un sistema de servidor jerárquico a modo de ejemplo en conexión comunicativa con una pantalla de sistema de usuario a modo de ejemplo, que incluye unas ventanas visualizadas a través del control del sistema de servidor, de acuerdo con ciertas realizaciones de la invención;
la figura 5 ilustra los derechos de acceso/control a modo de ejemplo que un servidor maestro y los servidores esclavos de un sistema de servidor jerárquico pueden tener para los componentes respectivos de un sistema de usuario, de acuerdo con ciertas realizaciones de la invención;
la figura 6 ilustra unos mensajes de ejemplo comunicados entre el sistema de servidor y los sistemas de usuario, en operación de un sistema de servidor de pantalla jerárquico, de acuerdo con ciertas realizaciones de la invención;
la figura 7 ilustra un servidor maestro a modo de ejemplo con dos servidores esclavos a modo de ejemplo en operación de una pantalla y un altavoz de un sistema de usuario, de acuerdo con ciertas realizaciones de la invención;
la figura 8 ilustra las comunicaciones entre cada uno del servidor maestro, los servidores esclavos y la pantalla y el altavoz del sistema de usuario de la figura 7, de acuerdo con ciertas realizaciones de la invención;
la figura 9 ilustra un sistema de servidor a modo de ejemplo que se comunica con dos sistemas de usuario, respectivamente, donde los sistemas de usuario también se comunican entre sí, de acuerdo con ciertas realizaciones de la invención;
la figura 10 ilustra una interfaz de usuario de estilo escritorio a modo de ejemplo implementada en un sistema de usuario por un sistema de servidor, de acuerdo con ciertas realizaciones de la invención;
la figura 11 ilustra un sistema de servidor a modo de ejemplo en operación, en el que un usuario no estacionario se mueve entre múltiples sistemas de usuario, de acuerdo con ciertas realizaciones de la invención;
la figura 12 ilustra un sistema de usuario a modo de ejemplo en operación con un sistema de servidor a modo de ejemplo, sin necesidad de interfaces de programación de aplicaciones (API) convencionales, de acuerdo con ciertas realizaciones de la invención;
la figura 13 ilustra otro sistema a modo de ejemplo en operación con un sistema de servidor a modo de ejemplo, sin necesidad de interfaces de programación de aplicaciones (API) convencionales, de acuerdo con ciertas realizaciones de la invención;
la figura 14 ilustra las comunicaciones, en presencia de un cortafuegos, entre cada uno del servidor maestro, los servidores esclavos y la pantalla y el altavoz del sistema de usuario de la figura 7, de acuerdo con ciertas realizaciones de la invención;
la figura 15 ilustra sistemas de usuario a modo de ejemplo en operación con un sistema de servidor a modo de ejemplo para acceder de manera segura a un sistema de archivos, de acuerdo con ciertas realizaciones de la invención;
la figura 16 ilustra un sistema de servidor a modo de ejemplo junto con un hipervisor para virtualizar un servidor maestro y múltiples servidores esclavos dentro de un único dispositivo de servidor físico, de acuerdo con ciertas realizaciones de la invención;
la figura 17 ilustra un sistema de servidor a modo de ejemplo, junto con una virtualización de hipervisor de un servidor maestro y múltiples servidores esclavos, así como un sistema de usuario, todo incluido dentro de un mismo dispositivo de servidor físico único, de acuerdo con ciertas realizaciones de la invención; y
la figura 18 ilustra un sistema de servidor de pantalla jerárquico en operación comunicativa con un sistema de usuario en comunicación a través de una red, que incluye una entrada de mensaje de pulsación de tecla a modo de ejemplo a través de un teclado del sistema de usuario, recibiéndose y procesándose la entrada de mensaje de pulsación de tecla por un navegador del sistema de servidor de pantalla jerárquico, de acuerdo con ciertas realizaciones de la invención.
Descripción detallada
Haciendo referencia a la figura 1, un sistema de servidor jerárquico 10 incluye un servidor maestro 100 conectado de manera comunicativa, respectivamente y o bien directa o indirectamente, a cinco servidores esclavos: servidor esclavo A 102, servidor esclavo B 101, servidor esclavo C 111, servidor esclavo D 103 y servidor esclavo E 110. El sistema de servidor 100 se conecta de manera comunicativa, tal como a través de una red de comunicaciones, a un sistema de usuario A 104 y a un sistema de usuario B 109. El servidor maestro 100 se conecta específicamente a tres servidores esclavos de primer nivel: el servidor esclavo A 102, el servidor esclavo B 101 y el servidor esclavo C 111. Dos de estos servidores esclavos de primer nivel (servidor esclavo A 102 y servidor esclavo C 111) se conectan a los servidores esclavos de segundo nivel: el servidor esclavo A 102 se conecta al servidor esclavo D 103 y el servidor esclavo C 111 se conecta al servidor esclavo E 110.
El sistema de usuario A 104 es un sistema de usuario no inteligente de estilo escritorio, por ejemplo, que comprende cuatro componentes físicos: pantalla 105, teclado 106, ratón 108 y altavoz 107. El teclado 106, el ratón 108 y el
altavoz 107 se conectan a la pantalla 105. La pantalla 105 incluye una interfaz de red para la conexión a una red de comunicaciones conectada de manera comunicativa al sistema de servidor. El sistema de usuario B 109 es un sistema de usuario no inteligente de estilo dispositivo portátil, tal como un teléfono móvil, una pantalla de tableta, un asistente digital personal o un dispositivo móvil comunicativo. El sistema de usuario B 109 comprende, por ejemplo, una pantalla y un teclado contenidos dentro de una única carcasa unitaria. Tanto el sistema de usuario A 104 como el sistema de usuario B 109 pueden conectarse de manera comunicativa a todos los servidores 100, 101, 102, 111, 103, 110 del sistema de servidor, tal como a través de una red de comunicación.
Un servidor maestro tiene acceso a todos los componentes de cada sistema de usuario en comunicación con el servidor maestro. El servidor maestro 100, por ejemplo, a través del acceso comunicativo a través de la red, controla todos los componentes del sistema de usuario A, es decir, cada uno del teclado 106, el ratón 108 y el altavoz 107 del sistema de usuario A 104, y cada componente similar, aunque integrado en una única carcasa unitaria del sistema de usuario B 109, es decir, la pantalla y el teclado del sistema de usuario B 109. Por lo tanto, por ejemplo, el servidor maestro 100 puede enviar video a cualquier parte de la pantalla 105 del sistema de usuario 104 y reproducir audio en el altavoz 107. El servidor maestro 100 recibe las comunicaciones a través de la red por las entradas al teclado 106 y al ratón 108 para el sistema de usuario A 104. El servidor maestro 100, igualmente, accede de manera comunicativa a cada componente del sistema de usuario B 109.
Un servidor maestro puede proporcionar acceso a cualquiera de los componentes de un sistema de usuarioservidores esclavos (o cualquiera de estos) conectados al servidor maestro. El servidor maestro 100 puede dar acceso al servidor esclavo A 102 a todos o algunos del sistema de usuario A 104, por ejemplo, a la pantalla 105 y a continuación el servidor esclavo A 102 puede controlar de manera comunicativa la pantalla 105, tal como para visualizar video. En otro ejemplo, el servidor maestro 100 puede dar acceso al servidor esclavo A 102 al altavoz 107 del sistema de usuario A 104, y el servidor esclavo A 102 puede controlar de manera comunicativa el altavoz 107, tal como para reproducir un tono u otro sonido.
Un servidor esclavo puede proporcionar acceso a cualquiera de los componentes de un sistema de usuarioservidores esclavos de nivel inferior conectados al servidor esclavo. El servidor esclavo A 102, si el servidor maestro 100 proporciona acceso, por ejemplo, al altavoz A 104 del sistema de usuario 107 puede proporcionar ese acceso al servidor esclavo D 103 (es decir, un servidor esclavo de nivel inferior). Por lo tanto, el servidor esclavo D 103 puede controlar de manera comunicativa el altavoz 107 del sistema de usuario A 104. El sistema de usuario A 104 mezcla todo el audio recibido para el altavoz 107. Cuando un servidor proporciona un acceso de servidor de nivel inferior a un componente de sistema de usuario, se informa al sistema de usuario de ese acceso. Si no se informa a un sistema de usuario de que un servidor específico puede acceder a un componente dado, entonces el sistema de usuario ignorará todas las comunicaciones para ese componente dado desde ese servidor.
Las conexiones entre servidores y entre servidores y sistemas de usuario son conexiones de red tales como Ethernet, WiFi, 4G, WiMax o cualquier otra red comunicativa o combinación de dichas redes.
Haciendo referencia a la figura 2, dos tipos de sistema de usuario a modo de ejemplo, pero no exclusivos, son un sistema de usuario de escritorio 200 y un sistema de usuario de dispositivo portátil 217. El sistema de usuario de escritorio 200 incluye, por ejemplo, componentes separados físicamente de: una unidad flash USB 201, micrófono 202, altavoz 203, pantalla 204, cámara 205, ratón 206, impresora 207 y teclado 208. Todos los componentes 201 208 se conectan a una unidad de control 209, que a su vez está conectada a la red 210. La unidad de control 209 puede estar físicamente integrada en uno de los otros componentes, tal como la pantalla 204, o la unidad de control 209 puede ser un procesador separado del sistema de usuario de escritorio 200 empleado solo para operaciones de control limitadas (por ejemplo, operaciones no significativas del sistema operativo). Más adelante se describe una unidad de control a modo de ejemplo con respecto a la figura 3. El sistema de usuario de dispositivo portátil 216 incluye, por ejemplo, componentes básicos similares, pero todos internos, de: un micrófono 210, teclado 211, pantalla 212, cámara 213, altavoz 214, unidad de control 219 e interfaz de red 215. En el ejemplo, el sistema de usuario de dispositivo portátil 217 no tiene una impresora, ratón o unidad flash, al igual que el sistema de usuario de escritorio 200. Sin embargo, el sistema de usuario de dispositivo portátil 217 tiene una unidad GPS 216 y unos componentes de memoria 218 que no están presentes en el sistema de usuario de escritorio 200 en el ejemplo. La conexión de red 210 del sistema de usuario de escritorio 200 puede ser cableada, como Ethernet, o inalámbrica, tal como WiFi, 4G, WiMax u otra red de comunicaciones o una combinación de las mismas. La conexión de red 215 del sistema de usuario de dispositivo portátil 217 es, por ejemplo, inalámbrica. El sistema de usuario de escritorio 200 y el sistema de usuario de dispositivo portátil 217, aunque solo son ejemplos, ilustran dispositivos y componentes de los dispositivos que pueden operarse en las realizaciones. Otros dispositivos y componentes, con al menos capacidades de comunicación de red y ciertas características, son también o alternativamente posibles en las realizaciones.
Haciendo referencia a la figura 3, un diagrama de bloques de componentes/funcionalidades internas detallado de un sistema de usuario típico, tal como un pequeño dispositivo portátil 300, incluye componentes de hardware: una pantalla LCD 306, altavoz 307, zumbador 308, pantalla táctil 305, micrófono 312, cámara 313 y un teclado 314. Todos los componentes de hardware se conectan a la circuitería lógica del dispositivo 300 que transforma los datos de bajo nivel del dispositivo 300 en datos que pueden comunicarse a través de la red. Una unidad de control 318 del
dispositivo 300 controla la operación general del dispositivo 300, incluidos los componentes. Los mensajes recibidos a través de la interfaz de red 301 se procesan por la unidad de control 318, que virtualmente desmultiplexa 302 los mensajes y entrega los datos de mensaje desmultiplexado apropiados al componente respectivo para los datos. Un decodificador de video 304 convierte los datos de comunicaciones de red recibidos para su entrega a la pantalla LCD 306. El decodificador de video 304 puede ser un decodificador de estilo MPEG2, H.264, VC-1 convencional o un decodificador de video propietario. El decodificador de audio 303 convierte los datos de la red en señales analógicas para enviar al altavoz 307. El decodificador de audio 303 puede ser un decodificador de estilo AAC, MP3, G711 convencional o un decodificador de audio propietario. Un decodificador háptico 309 convierte los datos de red en un formato para activar un zumbador 308. Lo contrario es cierto para los mensajes salientes, en los que la unidad de control 318 multiplexa virtualmente 315 los datos de mensaje del componente respectivo y crea mensajes para entregar a la interfaz de red 301 para las comunicaciones de red. El codificador de pantalla táctil 310 convierte los datos de la pantalla táctil 305 para su entrega a través de la red. El codificador de audio 311 convierte los datos analógicos del micrófono 315 en datos digitales para su entrega a través de la red. Los formatos de los datos del codificador de audio 311 son los mismos que los formatos de los datos del decodificador de audio 303. El codificador de video 317 convierte los datos de la cámara 305. Los formatos de los datos del codificador de video 317 son los mismos que los formatos de los datos del decodificador de video 304. El sistema de usuario no realiza un procesamiento sustancial de datos; más bien, el sistema de usuario convierte los datos generados por el hardware del dispositivo 300 y recibidos por el dispositivo 300 en mensajes de red salientes y mensajes de red entrantes, respectivamente, en forma comunicable a través de la red y utilizable por el hardware, respectivamente.
Haciendo referencia a la figura 4, los servidores jerárquicos, tal como el tratado anteriormente, permiten comunicarse con un sistema de usuario, cada uno crea una ventana respectiva y, por lo tanto, el sistema de usuario visualiza múltiples ventanas (es decir, una ventana distinta para cada servidor). Los servidores respectivos tienen derechos de acceso a las ventanas respectivas de la pantalla. Un servidor que tiene acceso a una ventana envía, por ejemplo, píxeles que representan pantallas gráficas para llenar esa ventana. Los píxeles pueden ser la salida gráfica de una aplicación, tal como un navegador o una hoja de cálculo, los píxeles pueden ser video (o bien en vivo o leídos desde un disco duro), o los píxeles pueden ser otros medios según corresponda en la realización.
Los servidores de la figura 4 tienen una asociación jerárquica, tal como la de los servidores de la figura 1, a saber: servidor maestro 400 y cinco servidores esclavos A 401, B 402, C 414, D 403 y E 413. El servidor maestro 400, en el ejemplo de la figura 4, tiene derechos de acceso a la pantalla completa 408 y ha creado la ventana 404, que cubre la zona completa de la pantalla 408 y llena la ventana 404 con píxeles que representan pantallas gráficas en la ventana 404 (o video u otro medio, según corresponda). El servidor maestro 400 también ha creado la ventana 405 y ha dado derechos de acceso al servidor esclavo A 401 para llenar la ventana 405 con píxeles que representan gráficas u otras visualizaciones en la ventana 405. A su vez, el servidor esclavo A 401 ha creado la ventana 409 y ha dado derechos de acceso al servidor esclavo D 403 para llenar la ventana 409, por ejemplo, con píxeles que representan una pantalla gráfica u otra pantalla diferente o la misma. El servidor maestro 400 ha creado la ventana 406 y ha dado derechos de acceso al servidor esclavo B 402 para llenar la ventana 406 también, por ejemplo, con píxeles que representan una pantalla u otro medio gráfico diferente o igual. El servidor maestro 400 ha creado la ventana 412 y ha dado derechos de acceso al servidor esclavo C 414 para llenar la ventana 412, tal como con píxeles que también representan una pantalla gráfica u otra pantalla diferente o la misma. A su vez, el servidor esclavo C 414 ha creado la ventana 411 y ha dado derechos de acceso al servidor esclavo E 413 para llenar la ventana 411, también con píxeles que representan una pantalla gráfica u otra pantalla diferente o la misma. La figura 4 muestra que los servidores de nivel superior crean ventanas y los servidores de nivel inferior llenan las ventanas con píxeles; para cada servidor de nivel inferior, la ventana creada para ese servidor específico en la pantalla de sistema de usuario es la única localización en la que se visualizarán los píxeles del servidor de nivel inferior. Los servidores esclavos solo pueden crear ventanas contenidas dentro de la ventana (o ventanas, según corresponda) a las que el servidor maestro 400 o un servidor esclavo de mayor prioridad de la asociación jerárquica da derechos de acceso al servidor esclavo respectivo.
Haciendo referencia a la figura 5, ciertos derechos de acceso a modo de ejemplo, de acuerdo con ciertas realizaciones, se dan a servidores esclavos por servidores de nivel superior, según corresponda. Hay, por ejemplo, tres categorías generales de derechos de acceso: componentes físicos 500, ventanas en una pantalla 501 e interacción de servidor a servidor 502. Para los componentes físicos 500, un servidor específico tiene o no tiene derecho para acceder (y, por lo tanto, el uso operativo) al componente. Las ventanas de pantalla 501 se crean jerárquicamente, como se trata en relación con la figura 4 y como se describe más adelante con respecto a la figura 7. Un servidor de nivel superior crea una ventana y da derechos de acceso a un servidor de nivel inferior para llenar esa ventana. Hay diversas interacciones de servidor a servidor 502 que tienen derechos de acceso asociados con las mismas. Los servidores pueden tener derechos de acceso para intercambios de información copiar/pegar y arrastrar/soltar, derechos de acceso a archivos como se describe más adelante con respecto a la figura 15, derechos de acceso para intercambiar comunicaciones privadas de servidor a servidor y otras. Además, un servidor esclavo puede solicitar acceso para operaciones de archivo desde un servidor de mayor prioridad. Además, un servidor esclavo puede necesitar y, por lo tanto, solicitar acceso a servidores o servidores esclavos de nivel inferior, donde se necesita dicho acceso.
Haciendo referencia a la figura 6, ciertos mensajes de red a modo de ejemplo fluyen entre el servidor y el sistema de
usuario, entre servidor y servidor y, en algunos casos, entre dos o más sistemas de usuario respectivos. Por ejemplo, los mensajes de usuario-servidor 600 proporcionan datos que representan entradas o direcciones de componentes de hardware, tales como teclado, ratón, GPS u otra entrada o dirección, del sistema de usuario al servidor a través de la comunicación de red. Un mensaje de conexión, por ejemplo, es el primer mensaje que envía un sistema de usuario para comenzar las comunicaciones con el servidor maestro. Los mensajes de servidor-ausuario 601 proporcionan, por ejemplo, directrices o instrucciones que representan datos/control para los componentes de hardware del sistema de usuario, tales como impresora, altavoz (volumen) y cámara. Al menos alguno de los mensajes de servidor-a-usuario 601 son datos que representan comandos para ventanas de sistema de usuario y gestión de derechos digitales (DRM). Una categoría de mensaje 602 consiste en mensajes de audio y video que pueden enviarse entre el servidor y el sistema de usuario, el sistema de usuario y el servidor y directamente entre los sistemas de usuario. Los servidores de nivel superior envían mensajes a los servidores de nivel inferior 603 y también un servidor de nivel inferior envía mensajes al servidor de nivel superior 604.
Haciendo referencia a la figura 18, un sistema de usuario a modo de ejemplo 1820 y un sistema de servidor 1833 (cuyo sistema de servidor puede ser cualquiera de un servidor maestro o cualquier servidor de nivel superior o inferior con acceso permitido para el sistema de usuario) en operación incluye una pulsación de tecla del sistema de usuario 1820 comunicado con un navegador 1829 del sistema de servidor 1833, tal como una aplicación de software de navegador procesada por el sistema de servidor 1833. El sistema de usuario 1820 incluye un sistema de pantalla jerárquico del lado del usuario 1821 capaz de procesar instrucciones comunicadas del sistema de servidor 1833 y realizar pantallas correspondientes u otras operaciones de salida en el sistema de usuario 1820 en respuesta. El sistema de usuario 1820 también incluye un mensaje 1822 y una unidad de comunicación 1823 (tal como una unidad de hardware y/o software TCP/UDP e IP para protocolos y comunicaciones con sistemas de servidor en una disposición jerárquica). El sistema de usuario 1820 incluye además un teclado 1824 u otro dispositivo de entrada.
El sistema de servidor 1833 incluye el navegador 1829. El sistema de servidor 1833 también incluye un sistema jerárquico 1830 capaz de una interacción y una disposición jerárquica con otros sistemas de servidor en un sistema de servidor de pantalla jerárquico de acuerdo con las realizaciones. Además, el sistema de servidor 1833 incluye un mensaje 1831 y una unidad de comunicación 1832 (tal como una unidad o componentes de software y/o hardware TCP/UDP e IP para protocolos y comunicaciones con el sistema de usuario 1820 y otros sistemas de servidor en una disposición jerárquica).
En operación, el sistema de pantalla jerárquico del lado del usuario 1821 detecta una pulsación de tecla 1825 en el teclado 1824 (tal como la que puede introducir un usuario del sistema de usuario 1820). El sistema de pantalla jerárquico 1821 procesa la pulsación de tecla detectada 1825 para determinar que los datos que representan la pulsación de tecla 1825 deberían comunicarse al sistema de servidor 1833. A continuación, el sistema de pantalla jerárquico 1821 pasa los datos 1826 que representan la pulsación de tecla 1825 al mensajero 1822. El mensajero 1822 formatea los datos que representan la pulsación de tecla 1825 como un mensaje 1828 legible por el sistema de servidor 1833. El mensajero 1822 comunica el mensaje 1827 a la unidad de comunicación 1823. La unidad de comunicación 1823 formatea y comunica el mensaje 1827 al sistema de servidor 1833, tal como a través de una red de comunicaciones de acuerdo con un protocolo de paquete TCP/UDP IP aplicable del mensaje comunicado 1828.
La unidad de comunicación 1832 del sistema de servidor 1833 recibe de manera comunicativa de la red el mensaje comunicado 1828. La unidad de comunicación 1832 extrae un mensaje 1836 (correspondiente al mensaje 1827) del mensaje comunicado 1828, y entrega el mensaje 1836 al mensajero 1831. El mensajero 1831 determina que el mensaje 1836 representa una pulsación de tecla 1825 introducida en el teclado 1824 del sistema de usuario 1820 y entrega el mensaje 1836 como una entrada 1835 al sistema jerárquico 1830 del sistema de servidor 1833. El sistema jerárquico 1830, en dicha entrada 1835, extrae de la misma una entrada de navegador 1834 que representa la pulsación de tecla 1825 en el sistema de usuario 1820. La entrada de navegador 1834 se comunica al navegador 1829 por el sistema jerárquico 1830. El navegador 1829 procesa a continuación la entrada de navegador 1834 para las operaciones de comunicación y visualización u otra salida en el sistema de usuario 1820.
Las figuras 7 y 8 ilustran la interacción a modo de ejemplo de un servidor maestro 700 con dos servidores esclavos 702, 704 y un sistema de usuario 716 que consiste en una pantalla 715 y un altavoz 714. La figura 7 muestra la interacción pictóricamente. La figura 8 ilustra el proceso etapa a etapa para configurar esta interacción. Cuando el sistema de usuario 716 se enciende, envía un mensaje de conexión 705 al servidor maestro 700. El servidor maestro 700 responde con el mensaje de la ventana 706 para crear la ventana X 717 en las coordenadas 0,0. El servidor maestro 700 envía a continuación el video 707 (en el ejemplo) para llenar la ventana 717 con píxeles que representan un medio de video para visualizar en la ventana X 717 del sistema de usuario 716. El servidor maestro 700 envía a continuación los mensajes de ventana y conexión de esclavo 708 para el sistema de usuario 716. El mensaje de ventana 708 crea la ventana Y 718 en las coordenadas 80,40 y la parte de conexión de esclavo del mensaje 708 informa al sistema de usuario 716 que el servidor esclavo A 702 se conectará. Los derechos de acceso que tiene el servidor esclavo A 702 también forman parte del mensaje de conexión 708. El servidor maestro 700 envía un mensaje de conexión 701 al servidor esclavo A 702 informándole que se conecte al sistema de usuario 716. El servidor esclavo A 702 envía ahora el mensaje de video 709 (en el ejemplo) al sistema de usuario 716 que llena la ventana Y 718 con píxeles que representan un medio de video para visualizar en la ventana Y 718.
Un proceso similar se repite ahora para la ventana Z 719. El servidor esclavo 702 envía una ventana y un mensaje de conexión de esclavo 710 para el sistema de usuario 716. El comando de ventana crea la ventana Z 719 en las coordenadas 160,50 y la parte de conexión de esclavo del mensaje informa al sistema de usuario 716 que el servidor esclavo B 704 se conectará. Los derechos de acceso que tiene el servidor esclavo B 704 también forman parte del mensaje 710. El servidor esclavo A 702 envía un mensaje de conexión 703 al servidor esclavo B 704 informándole que se conecte al sistema de usuario 716. El servidor esclavo B 704 envía ahora el mensaje de video 711 (en el ejemplo) al sistema de usuario 716 que llena la ventana Z 719 con píxeles que representan un medio de video visualizado en la ventana Z 719.
Ahora tanto el servidor maestro 700 como el servidor esclavo A 702 envían mensajes de audio 713, 712 (de acuerdo además con el ejemplo) para el sistema de usuario 716. El sistema de usuario 716 mezcla el audio y lo reproduce en el altavoz 714. Con el fin de que el sistema de usuario 716 acepte audio del servidor esclavo A 702, el servidor maestro 700 habría informado al sistema de usuario 716 que el servidor esclavo A 702 tiene derechos de acceso de altavoz.
Haciendo referencia a la figura 9, en una realización a modo de ejemplo de la interacción detallada de un servidor 900 y dos sistemas de usuario 901 y 908, los sistemas de usuario 901 y 908 envían mensajes de audio 923, 924 y video 921, 922 directamente entre sí. Podría usarse una configuración tal como la representada en la figura 9, por ejemplo, en una conferencia de video/audio entre los dos usuarios. El servidor 900 envía el mensaje 917 para crear la ventana J 903 y el mensaje 915 para crear la ventana K 904 en la pantalla 902 del sistema de usuario A 901. El servidor 900 envía un mensaje de video 916 que llena la ventana J 903 con píxeles que representan los medios de audio y video para visualizar en el sistema de usuario A 901. El servidor 900 crea a continuación un conjunto similar de ventanas en la pantalla 909 del sistema de usuario B 908: la ventana M 910 y la ventana N 101 en el ejemplo. El servidor 900 llena la ventana M 910 con el mensaje de video 919. El servidor 900 informa a continuación al sistema de usuario A 901 y al sistema de usuario B 908 de que cada uno tiene acceso a los respectivos altavoces y ventanas de pantalla del otro, respectivamente. Por lo tanto, el sistema de usuario B 908 envía un mensaje de video 921 desde la cámara 912 a la ventana K 904 del sistema de usuario A 901. Del mismo modo, el sistema de usuario A 901 envía un mensaje de video 922 desde la cámara 905 a la ventana N 911 del sistema de usuario B 908. El audio se intercambia de manera similar entre el micrófono y el altavoz de cada sistema de usuario respectivo. El micrófono 906 del sistema de usuario A 901 envía mensajes de audio 923 al altavoz 914 del sistema de usuario B 908 y el micrófono 913 del sistema de usuario B 908 envía mensajes 924 de audio al altavoz 907 del sistema de usuario A 901. El video y el audio son componentes comunes para los que se permite el acceso a un sistema de usuario, pero los derechos de acceso a cualquier componente pueden pasarse de un servidor a un dispositivo de usuario, permitiendo de este modo que el dispositivo de usuario se comunique de esta manera con otro dispositivo de usuario.
La figura 10 ilustra una interfaz de usuario de estilo escritorio convencional a modo de ejemplo de una pantalla de un sistema de usuario, de acuerdo con las realizaciones. En el ejemplo, la interfaz de usuario de estilo escritorio convencional incluye un escritorio de fondo junto con unos marcos de ventana respectivos, conteniendo cada uno de los cuales una unidad de aplicación respectiva. El marco de ventana de cada unidad de aplicación puede proporcionar el redimensionamiento, minimización, maximización y cierre de la unidad de aplicación. El marco de ventana puede proporcionar adicionalmente mover la ventana de la unidad de aplicación a diferentes localizaciones de la pantalla. En la realización, un servidor maestro 1010 y dos servidores de aplicaciones esclavos 1017, 1021 se conectan a una pantalla de sistema de usuario 1016. El servidor maestro 1010 envía un mensaje de ventana 1011 y un mensaje de video 1012 para crear y completar la ventana de escritorio principal 1024 con píxeles que representan gráficas, texto y/o medios de video. La ventana de escritorio 1024 contiene el fondo de escritorio y los iconos de escritorio usados para iniciar las unidades de aplicación. Cuando se desea iniciar, por ejemplo, una unidad de aplicación de reloj el servidor maestro 1010 envía un mensaje de ventana 1018 y un mensaje de video 1019 para la pantalla de sistema de usuario 1016. Estos mensajes crean y llenan la ventana de marco 1025 de píxeles que representan un reloj u otro medio de sincronización. El servidor maestro 1010 también envía un mensaje de ventana 1020 a la pantalla de sistema de usuario 1016 para crear una ventana de aplicación 1026 de la unidad de aplicación de reloj. El servidor maestro 1010 envía a continuación un mensaje de conexión 1009 a un servidor esclavo 1017 que puede servir un mensaje de aplicación de reloj. El servidor esclavo 1017 envía a continuación el mensaje de video 1022 para llenar la ventana de la aplicación 1026 con los píxeles de la aplicación de reloj que representan el reloj o temporizador.
Un proceso similar se produce cuando un servidor esclavo 1021 capaz de servir un mensaje de aplicación de calendario comienza a comunicarse con una pantalla de sistema de usuario 1016. El servidor maestro 1010 envía un mensaje de ventana 1013 y un mensaje de video 1014 para la pantalla de sistema de usuario 1016, ordenando a la pantalla 1016 que cree y llene una ventana de marco con píxeles que representan el calendario, tal como la ventana de marco 1028. El servidor maestro 1010 envía un mensaje de ventana 1015 para crear una ventana de aplicación de calendario 1027. El servidor maestro 1010 envía a continuación un mensaje de conexión 1008 al servidor esclavo 1021. El servidor esclavo 1021 envía el mensaje de video 1023 para llenar la ventana de aplicación de calendario 1027 con píxeles que representan el calendario. De este modo, puede crearse un entorno de escritorio convencional en un sistema de usuario, de una manera muy segura, teniendo cada unidad de aplicación respectiva derechos limitados para que el sistema de usuario llene las ventanas, tal como con píxeles que representan texto, gráficas,
video u otros medios de programas de software u otras unidades operativas y procesadas por el sistema de servidor maestro y esclavo aplicable.
Haciendo referencia a la figura 11, una realización a modo de ejemplo de una pluralidad de servidores, en una asociación jerárquica, puede prestar servicio a un usuario específico de los respectivos de una pluralidad de sistemas de usuario, a medida que el usuario se mueve de un sistema de usuario a otro de los sistemas de usuario. En la realización de ejemplo, el servidor maestro 1100 se conecta al navegador de servidor esclavo 1101 y a la hoja de cálculo de servidor esclavo 1102. Hay tres sistemas de usuario de acuerdo con la realización: un sistema de usuario de escritorio 1104, un sistema de usuario de dispositivo portátil 1109 y un sistema de usuario de tableta 1112. Solo hay un único usuario 1105, que periódicamente puede moverse de un sistema de usuario a otro. Inicialmente, el usuario 1105 está operando el sistema de usuario de escritorio 1104. Los servidores respectivos están interconectados, en el ejemplo, con el conjunto de conexión 1103 al sistema de usuario de escritorio 1104 como se ha descrito. Si el usuario deja de usar el sistema de usuario de escritorio 1104 y se mueve 1106 para usar el sistema de usuario de dispositivo portátil 1109, el sistema de usuario de dispositivo portátil 1109 envía a continuación un mensaje de conexión al servidor maestro 1100.
El servidor maestro 1100 determina/detecta/averigua que el usuario 1105 se ha movido al sistema de usuario de dispositivo portátil 1109, y el servidor maestro 1100 informa de manera comunicativa al navegador de servidor esclavo 1101 y a la hoja de cálculo de servidor esclavo 1102 del movimiento del usuario desde el sistema de usuario de escritorio 1104 al sistema de usuario de dispositivo portátil 1109. El servidor maestro 1100 y ambos servidores esclavos 1101 y 1102 pueden redirigir, a continuación, sus respectivos mensajes desde la transmisión 1103 al sistema de usuario de escritorio 1104, en lugar de, a la transmisión de 1110 al sistema de usuario de dispositivo portátil 1109.
Debido a que cualquiera del sistema de usuario de escritorio específico 1104 y del sistema de usuario de dispositivo portátil 1109 es específico, cada uno puede tener hardware y componentes distintos respectivos. Por ejemplo, el sistema de usuario de escritorio 1104 y el sistema de usuario de dispositivo portátil 1109 pueden incluir diferentes componentes, tales como tipo o tamaño de pantalla variado, tipo de teclado, entrada táctil frente a ratón y otros de una amplia variedad de tipos y estilos de componentes. Por lo tanto, el sistema de usuario de escritorio 1104 y el sistema de usuario de dispositivo portátil 1109, comunican cada uno a los servidores los detalles de hardware/componentes respectivos para el sistema 1104 u 1109 empleados para las comunicaciones en cada momento. Los servidores usan los detalles correspondientes para el sistema respectivo 1104 u 1109, según corresponda, modificando automáticamente las operaciones de comunicación y mensajería en consecuencia. Por ejemplo, las operaciones pueden cambiarse para proporcionar un tamaño global variado de las ventanas, respuesta a eventos táctiles y otras entradas y salidas de cada sistema respectivo 1104 u 1109, y otros eventos, características y respuestas de los sistemas respectivos 1104, 1109.
Además, en la realización a modo de ejemplo, si el usuario 1105 se mueve 1107 para comenzar a comunicarse a través del sistema de usuario de tableta 1112, en lugar del sistema de usuario de dispositivo portátil 1109, las comunicaciones de mensaje 1110 siguen 1111 y la mensajería 1113 es para el sistema de usuario de tableta 1112 por los servidores. Como anteriormente, si el sistema de usuario de dispositivo portátil 1109 y el sistema de usuario de tableta 1112 informan de diferentes componentes a los servidores, los servidores modifican las operaciones en consecuencia. El usuario ha usado ahora tres sistemas de usuario diferentes y los servidores proporcionan operaciones de servicio para cada sistema único 1104, 1109 y 1112, respectivamente, por ejemplo, ajustándose para alojar diferentes entradas/salidas de los dispositivos respectivos, el tamaño respectivo de pantalla y otras características y componentes únicos, según corresponda.
Haciendo referencia a la figura 12, un método a modo de ejemplo de operación de servidores jerárquicos para comunicarse con el o los dispositivos de usuario prescinde de los requisitos de interfaz de programación de aplicaciones (API) convencionales para los dispositivos de usuario. En este ejemplo, el servidor esclavo 1206 visualiza una notificación de evento emergente en el sistema de usuario 1207. El servidor esclavo 1206 envía un mensaje de solicitud 1203 al servidor maestro 1200. El mensaje de solicitud 1203 informa al servidor maestro 1200 que la aplicación del servidor esclavo 1206 desea visualizar la notificación de evento emergente en el sistema de usuario 1207. Si lo permite el servidor maestro 1200, el servidor maestro 1200 envía un mensaje de ventana 1201 para el sistema de usuario 1207. Se visualiza una ventana 1205 en el sistema de usuario 1207. El servidor maestro 1200 responde al servidor esclavo 1206 con un mensaje de actualización 1204. El servidor esclavo 1206 envía el mensaje 1202, tal como un mensaje de video, para el sistema de usuario 1207. El mensaje 1202 se visualiza en la ventana 1205 como unos píxeles que representan el mensaje de video. El servidor maestro 1200 puede animar la localización de la ventana 1205 visualizada por el sistema de usuario 1207, por ejemplo, para llamar la atención sobre el mensaje 1202 por un usuario del sistema de usuario 1207. No es necesario que el servidor esclavo 1206 tenga conocimiento de la animación o dirección similar del servidor maestro 1200, si corresponde, y el servidor maestro 1200 (o cualquier otro servidor permitido de este modo por la jerarquía) puede dirigir la operación del sistema de usuario 1207 de manera similar. En este ejemplo se destaca que, no se necesita una API de notificación de eventos especial.
Haciendo referencia a la figura 13, otro método a modo de ejemplo de la operación de los servidores jerárquicos
para comunicarse con el o los dispositivos de usuario también prescinde de los requisitos de la interfaz de programación de aplicaciones (API) convencional para los dispositivos de usuario. En el ejemplo, el servidor maestro 1300 visualiza una lista alimentada de noticias, a través de las comunicaciones de más de un servidor de noticias, por ejemplo, cuatro servidores de noticias: los servidores esclavos A 1307, B 1308, C 1309 y D 1310. El servidor maestro 1300 se comunica con el sistema de usuario 1301 creando cuatro ventanas idénticas 1303, 1304, 1305, 1306 en la pantalla 1302 del sistema de usuario 1301. El servidor maestro 1300 se conecta a continuación a los cuatro servidores esclavos A 1307, B 1308, C 1309 y D 1310, respectivamente, y los servidores esclavos A 1307, B 1308, C 1309 y D 1310 envían los mensajes de video respectivos para el sistema de usuario 1301. Cada uno de los mensajes llena una respectiva de las ventanas 1303, 1304, 1305 o 1306 del sistema de usuario 1301 con píxeles que representan un mensaje de video aplicable. El mensaje del servidor esclavo A 1307 llena la ventana 1303, el mensaje del servidor esclavo B 1308 llena la ventana 1304, el mensaje del servidor esclavo C 1309 llena la ventana 1305 y el mensaje del servidor esclavo D 1310 llena la ventana 1306. Por lo tanto, no se requiere una API especial de noticias.
Haciendo referencia a la figura 14, otro método a modo de ejemplo de la operación de los servidores jerárquicos para comunicarse con el o los dispositivos de usuario permite el acceso entre servidores y sistemas de usuario aplicables en presencia de un cortafuegos para el o los sistemas de usuario. En la realización, un servidor maestro 1400 y un servidor esclavo 1401 se conectan a un sistema de usuario 1403 a través de un cortafuegos 1402 del lado del usuario entre los servidores 1400, 1041 y el sistema de usuario 1403. Este tipo de cortafuegos, por ejemplo, permite que las comunicaciones se inicien desde dispositivos, tales como el sistema de usuario 1403, detrás del cortafuegos 1402 para pasar a través del cortafuegos 1402, pero restringe las comunicaciones por y a través del cortafuegos 1402 para el sistema de usuario 1403 desde el exterior el cortafuegos 1402. Una vez que el sistema de usuario 1402 inicia las comunicaciones a través del cortafuegos 1402 hacia el exterior, las comunicaciones pueden fluir en ambos sentidos, con dispositivos fuera del cortafuegos 1402 que se comunican a través del cortafuegos 1402 para el sistema de usuario 1403, y viceversa. Sin embargo, al finalizar una sesión de comunicación, tal como a través del tiempo de espera de acceso/comunicaciones o de otro modo, el o los servidores aplicables interrumpen la comunicación con el sistema de usuario 1402 hasta que se reinicie la comunicación como se ha descrito.
Además, con respecto a la figura 14, el cortafuegos 1402 permite las comunicaciones iniciales desde el sistema de usuario 1403 para los servidores 1400 y 1401, pero no permite la comunicación inicial desde los servidores 1400 o 1401 al sistema de usuario 1403. En operación, el sistema de usuario 1403 se comunica inicialmente 1404 con el servidor maestro 1400. Esto abre una ruta de comunicación en el cortafuegos 1402 y el servidor maestro 1400 puede enviar el mensaje 1405 al sistema de usuario 1403. Cuando se desea que el servidor esclavo 1401 se comunique con el sistema de usuario 1403, el servidor maestro 1400 envía al servidor esclavo 1401 un mensaje de conexión 1406. El servidor esclavo 1401 responde con un mensaje correcto 1407. El servidor maestro 1400 envía al sistema de usuario 1403 un mensaje de conexión siguiente 1408 para el servidor esclavo 1401. Al recibir el mensaje de conexión 1408, el sistema de usuario 1403 envía al servidor esclavo 1041 otro mensaje de conexión 1409. La ruta de comunicaciones en el cortafuegos 1402 está abierta ahora para las comunicaciones bidireccionales entre ambos servidores 1400, 1406 y el sistema de usuario 1403. El servidor esclavo 1041, por ejemplo, envía el mensaje 1410 al sistema de usuario 1403.
Si las comunicaciones de los mensajes entre el servidor esclavo 1401 y el sistema de usuario 1403 se interrumpen durante un período de tiempo de espera, el cortafuegos 1402 cierra la ruta de comunicaciones disponible para las comunicaciones bidireccionales entre el servidor esclavo 1401 y el sistema de usuario 1403, por ejemplo, el servidor esclavo 1401 envía un mensaje 1411 al sistema de usuario 1403 pero el mensaje 1411 no puede pasar por el cortafuegos 1402. El sistema esclavo 1401 debe enviar un mensaje de solicitud de conexión 1412 al servidor maestro 1400 con el fin de restablecer las comunicaciones bidireccionales a través del cortafuegos 1402. El sistema maestro 1400 responde enviando un mensaje de conexión 1413 al sistema de usuario 1403. Al recibir el mensaje de conexión 1413, el sistema de usuario 1403 envía un mensaje de conexión 1414 al servidor esclavo 1401 para abrir el cortafuegos 1402 para las comunicaciones bidireccionales a través del servidor esclavo 1401. El servidor esclavo 1401 reenvía el mensaje 1411 como el mensaje 1415, y el mensaje 1415 pasa por el cortafuegos 1402 para su recepción por el sistema de usuario 1403.
Haciendo referencia a la figura 15, una jerarquía de servidores controla el acceso de los servidores esclavos y, en consecuencia, del o los sistemas de usuario desde dichos servidores esclavos, a los archivos que contienen un sistema de archivos 1500, tal como una base de datos de archivos. Los dispositivos y las características de la figura 14 son similares a los de la figura 1, con la adición del sistema de archivos 1500. En la realización, el servidor maestro 100 se conecta directamente al sistema de archivos 1500 y puede acceder a todos los archivos contenidos en el sistema de archivos 1500. El servidor maestro 100 controla el permiso de acceso del servidor esclavo 102, y puede proporcionar al servidor esclavo 102 derechos de acceso a todos o a un subconjunto de los archivos en el sistema de archivos 1500, según corresponda para la realización. Por ejemplo, dicho subconjunto puede ser un archivo, un directorio de archivos, un grupo de archivos u otro. Los derechos de acceso a los archivos pueden ser de solo lectura, lectura-escritura, añadir-solo o cualquier otro tipo de acceso a archivos de acuerdo con la implementación. De acuerdo con los permisos y la jerarquía, así como en otros aspectos, cualquier servidor esclavo puede transferir sus derechos de acceso a uno o más servidores esclavos de nivel inferior a los que está conectado.
Haciendo referencia a la figura 16, una realización de ejemplo de servidores jerárquicos proporciona servidores maestros y esclavos virtualizados dentro de un único dispositivo de servidor físico (o más de uno de dichos dispositivos de servidor, en combinación, según pueda corresponder). En el ejemplo, los servidores jerárquicos, tal como el de la figura 4, incluyen cada servidor 400, 401, 402, 414, 403, 413 en un solo dispositivo de servidor (o más de un dispositivo, en combinación, según corresponda). Para fines de explicación y ejemplo, todos los servidores 400, 401, 402, 414, 403, 413 están contenidos en un solo dispositivo 1600. El servidor maestro 400 y los servidores esclavos 401, 402, 414, 403 y 413 están virtualizados cada uno por el hipervisor 1601 y están contenidos dentro del mismo dispositivo único 1600. El sistema de usuario 407, por ejemplo, que incluye una pantalla 408 y un teclado 410, está conectado al único dispositivo servidor 1600 a través de una conexión de red 1602, y el acceso permitido y las comunicaciones del servidor maestro respectivo 400 y los servidores esclavos 401, 402, 414, 403 y 413, cada uno virtualizado en el único dispositivo 1600, se controlan mediante asociaciones entre los respectivos servidores de acuerdo con el hipervisor 1601.
Haciendo referencia a la figura 17, otra realización a modo de ejemplo incluye servidores jerárquicos virtuales. En el ejemplo y con fines explicativos, los servidores maestro y esclavo respectivos y también el sistema de usuario (en el presente ejemplo) están contenidos dentro de un único dispositivo de servidor físico (o, de acuerdo con la implementación, más de uno de esos dispositivos en combinación). El dispositivo único 1700 en el ejemplo incluye el servidor maestro 400 y los servidores esclavos 401, 402, 414, 403, 413, así como una pantalla 408 y un teclado 410. Esta configuración a modo de ejemplo de los servidores virtuales y un sistema de usuario en el mismo dispositivo 1700 puede ser un dispositivo 1701 u otra disposición similar que incluye características de entrada/salida de pantalla, teclado, comunicaciones, almacenamiento y similares, según pueda aplicarse en la configuración.
En la memoria descriptiva anterior, la invención se ha descrito haciendo referencia a realizaciones específicas. Sin embargo, un experto en la materia apreciará que pueden realizarse diversas modificaciones y cambios sin alejarse del alcance de la invención como se expone en las siguientes reivindicaciones. Por consiguiente, la memoria descriptiva y los dibujos se han de considerar en un sentido ilustrativo en lugar de restrictivo.
Claims (25)
1. Un sistema de servidores, estando el sistema de servidores configurado para comunicarse a través de una red con un sistema de usuario (407), comprendiendo el sistema de usuario:
al menos un componente de hardware (408, 410); caracterizado por que:
el al menos un componente de hardware (408, 410) tiene una capacidad de procesamiento limitada que consiste en una unidad de control (318) configurada para multiplexar y demultiplexar las comunicaciones para transformar los tipos de datos nativos empleados en al menos un componente de hardware (408, 410) del sistema de usuario a/desde mensajes de red adecuados para la comunicación a través de la red;
y por que el sistema de servidores comprende:
un servidor maestro (400) configurado para controlar de manera comunicativa el al menos un componente de hardware (408, 410) usando mensajes de servidor-a-usuario comunicados a través de la red, en donde los mensajes de servidor-a-usuario proporcionan datos/control que representan directrices o instrucciones para el al menos un componente de hardware del sistema de usuario; y
al menos un servidor esclavo de primer nivel (401, 402, 403, 413, 414) conectado de manera comunicativa al servidor maestro (400),
estando el servidor maestro configurado para proporcionar al sistema de usuario derechos de acceso al por lo menos un servidor esclavo de primer nivel, permitiendo de este modo que el al menos un servidor esclavo de primer nivel controle de manera comunicativa uno cualquiera del al menos un componente de hardware (408, 410) a través de la red,
en donde el al menos un servidor esclavo de primer nivel puede transferir sus derechos de acceso a uno o más servidores esclavos de nivel inferior diferentes a los que está conectado, y
en donde los derechos de acceso son parte de un mensaje de conexión que comienza la comunicación entre servidores.
2. El sistema de la reivindicación 1, que comprende además el sistema de usuario (407) conectado de manera comunicativa a la red, en el que el servidor maestro y el al menos un servidor esclavo de primer nivel forman parte de un conjunto jerárquico de servidores.
3. El sistema de la reivindicación 2,
en el que el al menos un componente de hardware (408, 410) se selecciona del grupo que consiste en: cámara, micrófono, altavoz, impresora, unidad flash, receptor GPS, pantalla para visualizar ventanas, otro dispositivo de entrada y otro dispositivo de salida.
4. El sistema de la reivindicación 2, en el que:
el acceso comunicativo a través de la red por parte de los servidores esclavos al sistema de usuario (407) puede ser controlado por el servidor maestro (400) y cualquier servidor esclavo (401) con prioridad en el conjunto jerárquico de servidores (400, 401), concediendo un permiso aplicable cualquiera del servidor maestro (400) y otro servidor esclavo (401) con prioridad en el conjunto jerárquico de servidores (400, 401).
5. El sistema de la reivindicación 2, que comprende además:
un sistema de archivos conectado a al menos a uno del grupo que consiste en: el servidor maestro (400), cualquier servidor esclavo (401, 402, 403, 413, 414) y el conjunto jerárquico de servidores (400, 401);
en donde el servidor maestro (400) está configurado para acceder a todos los archivos del sistema de archivos y el servidor esclavo (401, 402, 403, 413, 414) está configurado para el control comunicativo por el servidor maestro (400) a través de la red para controlar de manera comunicativa el sistema de archivos.
6. El sistema de la reivindicación 2, en el que:
el servidor maestro (400) y el servidor esclavo (401) configurados para el control comunicativo por el servidor maestro (400) a través de la red para controlar de manera comunicativa el sistema de usuario (407), están configurados para comunicarse a través de un cortafuegos con el sistema de usuario (407), cuando el sistema de usuario (407) inicia la comunicación a través del cortafuegos con cualquiera de los servidores maestros (400) y cualquier servidor esclavo (401) del conjunto jerárquico de servidores (400, 401), y en donde;
el servidor maestro (400), junto con las comunicaciones del servidor maestro (400) con el sistema de usuario (407) a través de la red de comunicaciones, (401) está configurado para el control comunicativo por el servidor maestro (400) a través de la red del servidor esclavo (401) para controlar de manera comunicativa el sistema de usuario (407) a través del cortafuegos.
7. El sistema de la reivindicación 2, que comprende además:
un hipervisor, y en el que el conjunto jerárquico de servidores (400, 401) es un dispositivo unitario que comprende un servidor maestro virtual y al menos un servidor esclavo virtual, conectados de manera comunicativa al hipervisor.
8. El sistema de la reivindicación 7, en el que:
el sistema de usuario (407) está incluido en el dispositivo unitario del servidor maestro virtualizado y el al menos un servidor esclavo virtualizado.
9. El sistema de servidores de la reivindicación 1, en el que:
una ventana (404) puede visualizarse interactivamente en el sistema de usuario (407) a través, o bien solo o en combinación, del servidor maestro (400) y cualquier servidor esclavo de primer nivel (401, 402, 403, 413, 414) configurado para el control comunicativo por el servidor maestro (400) a través de la red para controlar de manera comunicativa la ventana (404), y en donde;
puede crearse un marco de ventana distinto (405, 406, 409, 411, 412) respectivo en la ventana (404) del sistema de usuario (407) para controlar el sistema de usuario (407) por cada servidor maestro (400) y cualquier servidor esclavo de primer nivel (401, 402, 403, 413, 414) configurado para el control comunicativo por el servidor maestro (400) a través de la red para controlar de manera comunicativa el marco de ventana (405, 406, 409, 411, 412), según corresponda, pudiendo el marco de ventana distinto (405, 406, 409, 411, 412) respectivo del servidor maestro (400) y cualquier servidor de primer nivel (401, 402, 403, 413, 414) crearse a través de las comunicaciones a través de la red entre el servidor maestro (400) y el servidor esclavo de primer nivel (401, 402, 403, 413, 414), según corresponda, y el sistema de usuario (407), y en donde;
una o más unidades de aplicación de cualquier servidor maestro (400) y cualquier servidor esclavo de primer nivel (401, 402, 403, 413, 414), configurado para el control comunicativo por el servidor maestro (400) a través de la red para controlar de manera comunicativa el marco de ventana distinto (405, 406, 409, 411, 412) respectivo, pueden visualizarse en el marco de ventana distinto (405, 406, 409, 411, 412) respectivo.
10. El sistema de servidores de la reivindicación 1, que comprende además:
una pluralidad de sistemas de usuario (407) de un mismo usuario conectado de manera comunicativa, o bien de manera síncrona o asíncrona, a la red, en donde el servidor maestro (400) y el servidor esclavo de primer nivel (401, 402, 403, 413, 414) configurado para el control comunicativo por el servidor maestro (400) a través de la red para controlar de manera comunicativa el marco de ventana (405, 406, 409, 411, 412), está configurado para comunicarse en la red con cada uno de la pluralidad de sistemas de usuario (407), y el sistema de servidores está configurado para ajustar automáticamente la operación del sistema de servidores basándose en el sistema de usuario (407) que el usuario emplea para las comunicaciones.
11. El sistema de servidores de la reivindicación 1, en el que:
el al menos un servidor esclavo de primer nivel (401, 402, 403, 413, 414) está configurado para el control comunicativo por el servidor maestro (400) a través de la red para controlar de manera comunicativa el marco de ventana (405, 406, 409, 411, 412).
12. El sistema de servidores de la reivindicación 1, que comprende además:
una o más ventanas (405, 406, 409, 411, 412) del sistema de usuario (407), en donde el servidor maestro (400) crea unas ventanas distintas (405, 406, 409, 411, 412) respectivas en el sistema de usuario (407) para cada servidor esclavo de primer nivel (401, 402, 403, 413, 414) respectivo al que el servidor maestro (400) permite el acceso al sistema de usuario (407);
en donde el servidor esclavo de primer nivel (401, 402, 403, 413, 414), al que el servidor maestro (400) permite el acceso al sistema de usuario (407) a través de la red, está configurado para llenar la ventana (405, 406, 409, 411, 412) del sistema de usuario (407) con píxeles a través de datos comunicados al sistema de usuario (407) que representan píxeles a visualizar en la ventana (405, 406, 409, 411, 412) respectiva.
13. El sistema de servidores de la reivindicación 1, que comprende además:
al menos un servidor de nivel superior (400, 401, 402, 403, 413, 414) seleccionado del grupo de: el servidor maestro (400), el servidor esclavo de primer nivel (401, 402, 403, 413, 414), otro servidor (401, 402, 403, 413, 414) esclavo del servidor esclavo de primer nivel (401, 402, 403, 413, 414) y otro servidor (401, 402, 403, 413, 414) esclavo de cualquier otro servidor esclavo (401, 402, 403, 413, 414) de mayor jerarquía, y;
al menos un servidor de nivel inferior (401, 402, 403, 413, 414) en relación con el al menos un servidor de nivel superior (400, 401, 402, 403, 413, 414), seleccionado del grupo de: el servidor esclavo de primer nivel (401, 402, 403, 413, 414), otro servidor (401, 402, 403, 413, 414) esclavo del servidor esclavo de primer nivel (401, 402, 403, 413, 414) y otro servidor (401, 402, 403, 413, 414) esclavo de cualquier otro servidor esclavo (401, 402, 403, 413, 414) de mayor jerarquía; y
una ventana (405, 406, 409, 411, 412) del sistema de usuario (407), en donde cualquier servidor de nivel superior (401, 402, 403, 413, 414) crea una ventana (405, 406, 409, 411, 412) respectiva en el sistema de usuario (407) para cada servidor de nivel inferior (401, 402, 403, 413, 414) al que el servidor de nivel superior (401, 402, 403, 413, 414) permite el acceso al sistema de usuario (407) y, si el servidor maestro (400) no es el servidor de nivel superior (401, 402, 403, 413, 414) mediante el servidor maestro (400);
en donde el servidor esclavo de nivel inferior (401, 402, 403, 413, 414) al que se permite el acceso al sistema de usuario (407) está configurado para llenar la ventana (405, 406, 409, 411, 412) del sistema de usuario (407) con
píxeles a través de datos comunicados al sistema de usuario (407) que representan píxeles para visualizar en la ventana (405, 406, 409, 411, 412) respectiva.
14. El sistema de servidores de la reivindicación 13, en el que:
los píxeles se seleccionan del grupo de: un marco, salida de gráficas de un programa de aplicación del servidor de nivel inferior (401, 402, 403, 413, 414), un navegador, hoja de cálculo, video en vivo y video almacenado en el servidor de nivel inferior (401, 402, 403, 413, 414).
15. El sistema de servidores de la reivindicación 13, en el que:
la ventana (405, 406, 409, 411, 412) respectiva del servidor de nivel inferior (401, 402, 403, 413, 414) es la única localización en que se permite al servidor de nivel inferior (401, 402, 403, 413, 414) rellenar con píxeles en el sistema de usuario (407).
16. El sistema de servidores de la reivindicación 14, en el que:
puede crearse una segunda ventana (405, 406, 409, 411, 412) por el servidor de nivel superior (401, 402, 403, 413, 414) en el sistema de usuario (407) dentro de la ventana (405, 406, 409, 411, 412); y
el servidor de nivel superior (401, 402, 403, 413, 414) está configurado para permitir el acceso a la segunda ventana (405, 406, 409, 411, 412) por cualquiera de los servidores de nivel inferior (401, 402, 403, 413, 414).
17. El sistema de servidores de la reivindicación 16, en el que:
al servidor de nivel inferior (401, 402, 403, 413, 414) al que se permite el acceso a la segunda ventana (405, 406, 409, 411, 412) solo se le permite el acceso a la segunda ventana (405, 406, 409, 411,412) y está configurado para llenar la segunda ventana (405, 406, 409, 411, 412) con píxeles en el sistema de usuario (407) a través de las comunicaciones a través de la red.
18. Un método de comunicación mediante un conjunto jerárquico de servidores (400, 401) con un dispositivo de usuario (407) a través de una red de comunicaciones conectada al dispositivo de usuario (407), comprendiendo el dispositivo de usuario:
al menos un componente de hardware (408, 410) que tiene una capacidad de procesamiento limitada que consiste en una unidad de control (318) configurada para multiplexar y demultiplexar las comunicaciones para transformar los tipos de datos nativos empleados en al menos un componente de hardware (408, 410) del sistema de usuario a/desde mensajes de red adecuados para la comunicación a través de la red;
caracterizado por que el método comprende:
controlar de manera comunicativa por un servidor maestro (400) del conjunto jerárquico de servidores (400, 401) el al menos un componente de hardware (408, 410) del dispositivo de usuario (407) usando mensajes de servidor-a-usuario comunicados a través de la red de comunicaciones, en donde los mensajes de servidor-a-usuario proporcionan datos/control que representan directrices o instrucciones para el al menos un componente de hardware del sistema de usuario;
proporcionar el servidor maestro (400) derechos de acceso al sistema de usuario a al menos un servidor esclavo de primer nivel, para permitir que el al menos un servidor esclavo de primer nivel (401, 402, 403, 413, 414) controle de manera comunicativa uno cualquiera del al menos un componente de hardware (408, 410) del dispositivo de usuario (407) a través de la red,
controlar por el al menos uno de la pluralidad de servidores esclavos de primer nivel (401, 402, 403, 413, 414) el al menos un componente de hardware (408, 410) del dispositivo de usuario (407);
transmitir los derechos de acceso desde al menos uno de la pluralidad de servidores esclavos de primer nivel (401, 402, 403, 413, 414) a uno o más servidores esclavos de nivel inferior a los que está conectado, para permitir que el servidor esclavo de nivel inferior controle el al menos un componente de hardware (408, 410) del dispositivo de usuario (407) a través de la red de comunicaciones;
controlar por el servidor esclavo de nivel inferior el al menos un componente de hardware (408, 410) del dispositivo de usuario (407),
en donde los derechos de acceso son parte de un mensaje de conexión que comienza la comunicación entre servidores.
19. El método de la reivindicación 18, que comprende además:
crear, a través de las comunicaciones del servidor maestro (400) con el dispositivo de usuario (407) a través de la red de comunicaciones, al menos una ventana distinta (404) del dispositivo de usuario (407) para el servidor maestro (400); y
crear, a través de las comunicaciones a través de la red de comunicaciones de cada servidor esclavo (401) al que se permite el acceso al dispositivo de usuario (407), una ventana distinta (405, 406, 409, 411, 412) respectiva del dispositivo de usuario (407) para cada servidor esclavo (401, 402, 403, 413, 414).
20. El método de la reivindicación 19, que comprende además:
comunicar por el dispositivo de usuario (407) a través de la red, datos que representan la entrada de un componente (408, 410) del dispositivo de usuario (407) a cualquiera de (i) el servidor maestro (400) y (ii) al menos un servidor esclavo (401, 402, 403, 413, 414) al que se permite el acceso al dispositivo de usuario (407); en donde un programa de aplicación almacenado en cualquiera de (i) el servidor maestro (400) o (ii) cualquier servidor esclavo (401, 402, 403, 413, 414) procesa los datos que representan la entrada del componente (408, 410) del dispositivo de usuario (407).
21. El método de la reivindicación 20, que comprende además:
comunicar al dispositivo de usuario (407) a través de la red, datos que representan la salida de un componente (408, 410) del dispositivo de usuario (407), o bien por el servidor maestro (400) o el servidor esclavo (401, 402, 403, 413, 414), los datos que representan la entrada del componente (408, 410) del dispositivo de usuario (407) comunicados al servidor por el dispositivo de usuario (407),
en donde los datos que representan la salida son para emitirlos el dispositivo de usuario (407).
22. El método de la reivindicación 21, en el que:
los datos que representan la salida para emitirlos el dispositivo de usuario (407) se seleccionan del grupo de: video, audio, texto, gráficas, multimedia y sus combinaciones.
23. El método de la reivindicación 20, en el que:
el dispositivo de usuario (407) está configurado para un procesamiento limitado de entrada y salida por el dispositivo de usuario (407) y las comunicaciones en la red con el servidor maestro (400) y cualquier servidor esclavo (401, 402, 403, 413, 414) autorizado para controlar al menos uno cualquiera de los componentes (408, 410) del dispositivo de usuario (407).
24. El método de la reivindicación 20, en el que:
el servidor maestro (400) y los servidores esclavos (401, 402, 403, 413, 414) incluyen cada uno de los mismos una unidad de aplicación respectiva para una salida de aplicación respectiva por el dispositivo de usuario (407); la etapa de comunicación por el dispositivo de usuario (407) se realiza con o bien (i) el servidor maestro (400) o (ii) el servidor esclavo (401, 402, 403, 413, 414) al que se permite el acceso al dispositivo de usuario (407), de la unidad de aplicación respectiva, para la operación de la unidad de aplicación respectiva a través de comunicaciones a través de la red; y
el servidor aplicable crea una respectiva ventana distinta separada (405, 406, 409, 411, 412) del dispositivo de usuario (407) para la unidad de aplicación respectiva operada para el dispositivo de usuario (407).
25. El método de la reivindicación 24, en el que:
la unidad de aplicación respectiva se selecciona del grupo de: unidad de productividad empresarial, calendario, reloj, videojuego, unidad de desarrollador de fotos, reproductor multimedia y sus combinaciones.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/160,122 US8700723B2 (en) | 2010-06-15 | 2011-06-14 | Hierarchical display-server system and method |
PCT/US2012/042189 WO2012174072A2 (en) | 2011-06-14 | 2012-06-13 | Hierarchical display-server system and method |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2774282T3 true ES2774282T3 (es) | 2020-07-20 |
Family
ID=45097141
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES12800376T Active ES2774282T3 (es) | 2011-06-14 | 2012-06-13 | Sistema y método de servidor de pantalla jerárquico |
Country Status (7)
Country | Link |
---|---|
US (4) | US8700723B2 (es) |
EP (1) | EP2721505B1 (es) |
JP (1) | JP6114264B2 (es) |
CN (1) | CN104081374B (es) |
CA (2) | CA2839067C (es) |
ES (1) | ES2774282T3 (es) |
WO (1) | WO2012174072A2 (es) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8700723B2 (en) * | 2010-06-15 | 2014-04-15 | Netzyn, Inc. | Hierarchical display-server system and method |
US8799358B2 (en) | 2011-11-28 | 2014-08-05 | Merge Healthcare Incorporated | Remote cine viewing of medical images on a zero-client application |
JP6062639B2 (ja) * | 2012-01-25 | 2017-01-18 | イプシロン ソフト コーポレイション ア.エス. | クラウドにおけるファイルの拡張可能処理のためのシステム |
CN104092711A (zh) * | 2013-04-01 | 2014-10-08 | 云联(北京)信息技术有限公司 | 一种云游戏实现方法及系统 |
US11240349B2 (en) | 2014-12-31 | 2022-02-01 | Ebay Inc. | Multimodal content recognition and contextual advertising and content delivery |
WO2016166183A1 (en) * | 2015-04-13 | 2016-10-20 | Barco N.V. | Browser based display system for displaying image data |
US11106417B2 (en) * | 2015-06-23 | 2021-08-31 | Airwatch, Llc | Collaboration systems with managed screen sharing |
JP6559583B2 (ja) * | 2016-01-21 | 2019-08-14 | 株式会社東芝 | 遠隔操作装置、遠隔操作方法、及びプログラム |
JP6786892B2 (ja) * | 2016-06-09 | 2020-11-18 | 富士ゼロックス株式会社 | サーバ装置、情報処理システム及びプログラム |
CN106911698B (zh) * | 2017-03-03 | 2020-06-09 | 天津天地伟业信息系统集成有限公司 | 一种多路高清解码器集群的控制方法 |
CN107342978B (zh) * | 2017-05-27 | 2020-12-22 | 广州市百果园信息技术有限公司 | 直播间连麦控制方法、装置及相应的终端设备 |
Family Cites Families (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6006266A (en) * | 1996-06-03 | 1999-12-21 | International Business Machines Corporation | Multiplexing of clients and applications among multiple servers |
AU748788B2 (en) * | 1998-02-13 | 2002-06-13 | British Telecommunications Public Limited Company | Telecommunications platform |
US6249294B1 (en) * | 1998-07-20 | 2001-06-19 | Hewlett-Packard Company | 3D graphics in a single logical sreen display using multiple computer systems |
US6348933B1 (en) * | 1998-07-20 | 2002-02-19 | Hewlett-Packard Company | Single logical screen display using multiple remote computer systems |
US6215486B1 (en) * | 1998-07-20 | 2001-04-10 | Hewlett-Packard Company | Event handling in a single logical screen display using multiple remote computer systems |
US20030061323A1 (en) | 2000-06-13 | 2003-03-27 | East Kenneth H. | Hierarchical system and method for centralized management of thin clients |
JP2002123785A (ja) * | 2000-10-16 | 2002-04-26 | Nissay Information Technology Co Ltd | 画面表示処理方法及び業務処理システム |
WO2002088999A1 (en) * | 2001-04-30 | 2002-11-07 | Multiworks, Inc., Dba Contextit | Methods and systems for providing technology-assisted content development |
US20030200178A1 (en) * | 2002-04-18 | 2003-10-23 | International Business Machines Corporation | Managing licensing of distributed applications |
US8549114B2 (en) * | 2002-06-12 | 2013-10-01 | Bladelogic, Inc. | Method and system for model-based heterogeneous server configuration management |
US20040267955A1 (en) * | 2003-06-27 | 2004-12-30 | Dell Products L.P. | System and method for network communication |
KR100827573B1 (ko) * | 2003-10-29 | 2008-05-07 | 퀄컴 인코포레이티드 | 높은 데이터 레이트 인터페이스 |
US7685257B2 (en) | 2003-11-10 | 2010-03-23 | Sun Microsystems, Inc. | Portable thin client for the enterprise workspace |
CN100370739C (zh) * | 2003-12-26 | 2008-02-20 | 华为技术有限公司 | 应用分布式的网管系统及方法 |
US20060053216A1 (en) * | 2004-09-07 | 2006-03-09 | Metamachinix, Inc. | Clustered computer system with centralized administration |
JP4323421B2 (ja) * | 2004-12-22 | 2009-09-02 | インスティチュート フォー インフォメイション インダストリ | 分散仮想環境管理システムと方法 |
CN100452861C (zh) * | 2005-01-05 | 2009-01-14 | 中央电视台 | 分级存储管理系统 |
WO2006077481A1 (en) | 2005-01-19 | 2006-07-27 | Truecontext Corporation | Policy-driven mobile forms applications |
US8766993B1 (en) * | 2005-04-06 | 2014-07-01 | Teradici Corporation | Methods and apparatus for enabling multiple remote displays |
US20070174429A1 (en) * | 2006-01-24 | 2007-07-26 | Citrix Systems, Inc. | Methods and servers for establishing a connection between a client system and a virtual machine hosting a requested computing environment |
US8197322B2 (en) * | 2006-04-28 | 2012-06-12 | King Show Games, Inc. | System, apparatus, and method for configuring gaming experiences |
US8566389B2 (en) * | 2006-07-10 | 2013-10-22 | Samsung Electronics Co., Ltd. | Thin network protocol |
US8196169B1 (en) * | 2006-09-18 | 2012-06-05 | Nvidia Corporation | Coordinate-based set top box policy enforcement system, method and computer program product |
US7827138B2 (en) * | 2006-10-02 | 2010-11-02 | Salesforce.Com, Inc. | Method and system for synchronizing a server and an on-demand database service |
JP5032191B2 (ja) * | 2007-04-20 | 2012-09-26 | 株式会社日立製作所 | サーバ仮想化環境におけるクラスタシステム構成方法及びクラスタシステム |
US8667396B2 (en) * | 2007-07-18 | 2014-03-04 | Adobe Systems Incorporated | Master slave region branding |
WO2009043030A2 (en) * | 2007-09-28 | 2009-04-02 | Xcerion Aktiebolag | Network operating system |
US20090287571A1 (en) | 2008-03-26 | 2009-11-19 | Robb Fujioka | Hypervisor and virtual machine ware |
WO2009143187A2 (en) * | 2008-05-19 | 2009-11-26 | Citrix Systems, Inc. | Systems and methods for remoting multimedia plugin calls |
EP2304578A4 (en) | 2008-06-13 | 2012-08-29 | Hewlett Packard Development Co | HIERARCHICAL POLICY MANAGEMENT |
JP5074327B2 (ja) * | 2008-08-21 | 2012-11-14 | 株式会社日立製作所 | 経路制御システム |
US8171517B2 (en) * | 2008-12-12 | 2012-05-01 | At&T Intellectual Property I, L.P. | Apparatus and method for distributing media content to vehicles |
CA2752837A1 (en) * | 2009-02-17 | 2010-08-26 | John Michael Walker | Method for controlling a communication network, servers, systems including servers, and computer programs |
US8782755B2 (en) * | 2009-03-20 | 2014-07-15 | Citrix Systems, Inc. | Systems and methods for selecting an authentication virtual server from a plurality of virtual servers |
US9078033B2 (en) * | 2009-03-27 | 2015-07-07 | Guest Tek Interactive Entertainment Ltd. | Coax and IP hybrid digital TV and VOD system |
US9553953B2 (en) * | 2009-04-15 | 2017-01-24 | Dell Products L.P. | Method and apparatus for extending capabilities of a virtualization domain to support features available in a normal desktop application |
US8205035B2 (en) * | 2009-06-22 | 2012-06-19 | Citrix Systems, Inc. | Systems and methods for integration between application firewall and caching |
EP2467812A4 (en) * | 2009-08-17 | 2014-10-22 | Deal Magic Inc | PROPERTY MONITORING WITH CONTEXT KNOWLEDGE |
CN101719853B (zh) * | 2009-11-30 | 2011-11-09 | 英业达股份有限公司 | 检测服务器运行状态的处理方法 |
US20110145341A1 (en) * | 2009-12-16 | 2011-06-16 | Alcatel-Lucent Usa Inc. | Server platform to support interactive multi-user applications for mobile clients |
US20110231353A1 (en) * | 2010-03-17 | 2011-09-22 | James Qingdong Wang | Artificial intelligence application in human machine interface for advanced information processing and task managing |
US8700723B2 (en) * | 2010-06-15 | 2014-04-15 | Netzyn, Inc. | Hierarchical display-server system and method |
-
2011
- 2011-06-14 US US13/160,122 patent/US8700723B2/en active Active
-
2012
- 2012-06-13 CA CA2839067A patent/CA2839067C/en active Active
- 2012-06-13 WO PCT/US2012/042189 patent/WO2012174072A2/en active Application Filing
- 2012-06-13 EP EP12800376.1A patent/EP2721505B1/en active Active
- 2012-06-13 ES ES12800376T patent/ES2774282T3/es active Active
- 2012-06-13 CA CA3019730A patent/CA3019730C/en active Active
- 2012-06-13 JP JP2014515940A patent/JP6114264B2/ja active Active
- 2012-06-13 CN CN201280037859.9A patent/CN104081374B/zh active Active
-
2014
- 2014-02-26 US US14/190,333 patent/US9300763B2/en active Active
-
2016
- 2016-02-19 US US15/048,376 patent/US9762699B2/en active Active
-
2017
- 2017-08-07 US US15/670,224 patent/US20180048736A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20180048736A1 (en) | 2018-02-15 |
CA3019730A1 (en) | 2012-12-20 |
CA2839067C (en) | 2018-11-20 |
CA2839067A1 (en) | 2012-12-20 |
EP2721505A4 (en) | 2015-04-29 |
US20160241678A1 (en) | 2016-08-18 |
JP6114264B2 (ja) | 2017-04-12 |
JP2014529367A (ja) | 2014-11-06 |
US20110307571A1 (en) | 2011-12-15 |
US9300763B2 (en) | 2016-03-29 |
EP2721505B1 (en) | 2019-12-11 |
WO2012174072A2 (en) | 2012-12-20 |
US8700723B2 (en) | 2014-04-15 |
CN104081374B (zh) | 2017-12-08 |
CN104081374A (zh) | 2014-10-01 |
CA3019730C (en) | 2021-03-16 |
EP2721505A2 (en) | 2014-04-23 |
US20140181190A1 (en) | 2014-06-26 |
WO2012174072A3 (en) | 2014-05-08 |
US9762699B2 (en) | 2017-09-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2774282T3 (es) | Sistema y método de servidor de pantalla jerárquico | |
US11422951B2 (en) | Electronic tool and methods for meetings between two users | |
US9722986B2 (en) | Electronic tool and methods for meetings | |
EP2941715B1 (en) | Unified communications with a cloud client device | |
EP2756667B1 (en) | Electronic tool and methods for meetings | |
US10038719B2 (en) | Single-step custom configuration of a cloud client device | |
US10050800B2 (en) | Electronic tool and methods for meetings for providing connection to a communications network | |
US9667703B1 (en) | System, method and computer program product for generating remote views in a virtual mobile device platform | |
US20210037579A1 (en) | System, method and computer program product for implementing bluetooth in a virtual mobile device platform | |
US10965480B2 (en) | Electronic tool and methods for recording a meeting | |
US10305888B2 (en) | Secure data entry via audio tones | |
WO2024170471A1 (en) | Computer implemented method |