BRPI0707220A2 - métodos e sistemas para fornecer acesso a um ambiente de computação - Google Patents
métodos e sistemas para fornecer acesso a um ambiente de computação Download PDFInfo
- Publication number
- BRPI0707220A2 BRPI0707220A2 BRPI0707220-1A BRPI0707220A BRPI0707220A2 BR PI0707220 A2 BRPI0707220 A2 BR PI0707220A2 BR PI0707220 A BRPI0707220 A BR PI0707220A BR PI0707220 A2 BRPI0707220 A2 BR PI0707220A2
- Authority
- BR
- Brazil
- Prior art keywords
- machine
- client
- computing environment
- virtual machine
- remote
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- 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/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/562—Brokering proxy services
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45562—Creating, deleting, cloning virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45575—Starting, stopping, suspending or resuming virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/541—Client-server
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2149—Restricted operating environment
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Storage Device Security (AREA)
Abstract
MéTODOS E SISTEMAS PARA FORNECER ACESSO A UM AMBIENTE DE COMPUTAçãO. Em um aspecto, os problemas de estratégias atuais da distribuição do desktop são endereçado. Uma disposição de máquinas físicas baratas pode ser dividida em máquinas virtuais múltiplas, criando um PC virtual para cada usuário, O exame as máquinas podem ser usuários tais como usuários rack-mount, usuários da lâmina, ou carrinho usuários sozinhos. As máquinas físicas podem igualmente ser estações de trabalho ou estação de trabalho lâminas ou computadores pessoais. Um sistema dinâmico política-baseado da distribuição provisions as máquinas virtuais e associa a máquina virtual com máquina da execução (isto é, uma máquina física) e um usuário. Acolhimento centralizado fornecer a viabilidade da computação usuário-baseada quando o dedicado o ambiente fornece a flexibilidade e a compatibilidade as aplicações que a o computador de secretária permite. Entretanto, o sistema tem um custo total muito mais baixo de posse - porque o sistema é executado no software, um pouco do que sendo dependente da ferragem, o sistema tem um custo total muito mais baixo da posse. Em um outro aspecto, o ciclo de vida da ferragem pode ser estendido aumentando a quantidade de recursos de ferragem atribuiu às máquinas virtuais como computacionais as demandas aumentam sobre o tempo. Adicionalmente, o uso da virtualização facilita dificuldade em tratar as imagens múltiplas do ósmio.
Description
MÉTODOS E SISTEMAS PARA FORNECER ACESSO A UM AMBIENTE DE
COMPUTAÇÃO
Campo da invenção
A invenção relaciona-se geralmente a fornecer o acessoã computação ambientes. Mais particular, a invençãorelaciona-se aos métodos e aos sistemas para estabeleceruma conexão entre um sistema do cliente e uma máquinavirtual.
Informação dos Fundamentos
As redes informáticas contemporâneas consistem em umnúmero de computador sistemas que comunicam-se com outrossistemas informáticos através das ligações de comunicação.Tipicamente, alguns dos sistemas são máquinas de cliente eoutros sistemas são usuário máquinas. Uma máquina dousuário pode hospedar uma variedade de programas deaplicação que podem seja alcançado e executado por máquinasde cliente. Quando uma máquina de cliente se lança umprograma de aplicação, a execução desse programa deaplicação pode ocorrer em a máquina de cliente ou a máquinado usuário, dependendo da computação o modelo seguiu pelarede informática. Em alguns ambientes, o usuário a máquinaexecuta uma máquina virtual, que execute o programa deaplicação e fornece dados de saída à máquina de cliente.
Um departamento da tecnologia da informação podeenfrentar muitos desafios dentro desdobrando um recurso àsmáquinas de alvo que suportam a execução de variaçãoambientes e execução de subconjuntos diferentes de recursosdisponíveis, cada um recurso que tem diferente, e oporpotencial, exigências da instalação. Um tal desafio refere-se à introdução de entregar recursos ao ambientes em queexecutarão eventualmente - um grande número máquinas tendoambientes diferentes da execução com tipos de variação deacesso ao múltiplo redes incorporadas. Um segundo desafiorefere-se a fornecer um ambiente sobre uma máquina de alvopermitindo a execução de um recurso sem interferir com aoutro recursos, que podem ter exigências de oposição, e nosambientes dentro qual o recurso não pode ter sido projetadofuncionar.
Estratégias da distribuição da área de trabalho, taiscomo a distribuição pessoal da área de trabalho ou asestratégias de computação usuário-baseadas da distribuição,sofrem dos inconvenientes. As estratégias convencionais dadistribuição do computador de secretária criam problemassignificativos com gerência, ciclos do melhoramento eexigências de sustentação que traduzem diretamente em umcusto total elevado da posse. Cada computador de secretáriaé instalado no usuário s a área de trabalho, e toda amanutenção de ferragem exigem-no tipicamente pessoais virao usuário mesa de s. Adicionalmente, os PCs envelhecemrápida e são substituídos geralmente em a base de retornocomo a ferragem torna-se datado e/ou obsoleta. Remoto oacesso e distribuído, distribuições do multi-escritóriopode amplificar estes problemas.
Um modelo de computação usuário-baseado resolve muitosdo computador de secretária problemas modelo dadistribuição, mas às expensas de um ambiente menosflexível. Em arquiteturas de computação usuário-baseadastípicas, cada usuário hospeda o um número usuários eaplicações, significando que uma usuário ou aplicação podemafetar o desempenho percebido por outros usuários seriupelo mesmo usuário, a edição de desempenho associou com osclientes finos pode conduzir à utilização das empresascomputação usuário-baseada somente para aplicaçõesespecificas da ameia, tais como o telecontrole aplicaçõesde acesso. A estratégia da distribuição de combinar ocomputador de secretária e o cliente fino/modelo decomputação usuário-baseado é sujeitos a estas mesmaslimitações como cada PC ainda precisa de ser controlado, eo sistema de exploração e o software pode ainda precisar deser remendado e atualizado.
Um outro inconveniente de redes informáticascontemporâneas é esse cliente as máquinas podem serinconscientes dos programas e dos recursos de aplicaçãodisponíveis para o uso nas máquinas do usuário. De fato, asmáquinas de cliente não podem mesmo estar cientes de cadamáquina disponível do usuário na rede. Adicionalmente, nos- ambientes em qual uma máquina virtual fornece o acesso a umrecurso para a máquina de cliente, a máquina virtual poderealocado de uma máquina do usuário a um outro usuário. Emoutros ambientes em que uma máquina virtual fornece oacesso a um recurso para a máquina de cliente, a máquina decliente não pode saber que uma máquina virtual fornece oacesso ao programa de aplicação. Para encontrar a aplicaçãodisponível os programas em uma máquina do usuárioparticular, um usuário da máquina de cliente podem precisarde encontrar e aceder a essa máquina do usuário e deexecutar uma lista do diretório de as limas que existemnessa máquina do usuário. Mesmo então, esta lista não pôdeindicar ao usuário aquelas aplicações que o usuário éautorizado se usar.Além disso, uma vez que o usuário está ciente dosprogramas de aplicação em um usuário a máquina,freqüentemente esse usuário deve estabelecer uma ligação 2aquelas aplicações. Há ferramentas de software para ajudarao usuário em criar estas ligações. Entretanto, estasferramentas exija tipicamente que o usuário seja umadministrador com uma compreensão detalhes de protocolos ede domínios de trabalhos em rede a fim estabelecer aconexão.
Assegurar a conformidade com várias políticasincorporadas cria adicional interesses para administradoresde ambientes típicos da empresa. Uma máquina de alvo podesatisfazer as exigências técnicas de um recurso particularao falhar a satisfaça uma política aplicável à máquina dealvo, ou ao usuário do alvo máquina. Por exemplo, umapolítica pode exigir que um acesso de usuário conectadorecursos usando as máquinas de cliente que têmconfigurações específicas, ou através do detalhe tipos deconexões de rede. Conseqüentemente, mesmo se uma máquina decliente fornece o ambiente que suporta a execução de umrecurso pedido, uma política pode proíba o acesso pedido.Se o acesso é negado, alterne maneiras de fornecimento oacesso de usuário ao programa de aplicação pedido é útil.
Convencionalmente, os usuários em uma máquina decliente usaram uma combinação da o navegador de rede eoutro cliente-basearam aplicações para alcançar uma limasatisfeita ou aplicação recuperada de uma posição remota.Os processos convencionais exigem transferindo a lima e/oua aplicação associada a uma máquina de cliente para a visãoe manipulação. Entretanto, transferindo recursos conectadosa um cliente a máquina cria tipicamente desafiosadministrativos e relativos à segurança. Para exemplo,máquinas de cliente - ou usuários particulares de máquinasde cliente - possa ou possa para não ter a autorizaçãoalcançar limas ou as aplicações exigidas para processarlimas recuperadas. Assegurar a conformidade com váriaspolíticas incorporadas cria interesses adicionais paraadministradores de ambientes típicos da empresa. Avaliandoe autorizando a execução de programas de aplicaçãoparticulares no alvo as máquinas em uma aplicaçãoindividual podem ser pouco práticas.
Na tentativa de resolver estes interesses, métodosconvencionais do acesso o controle pode exigir credenciaisparticulares da autenticação do cliente antes de conceder oacesso e pode negar o acesso das posições ou dosdispositivos impróprios. Entretanto, uma limitação aosmétodos convencionais exige tipicamente que o acessoresultado da decisão do controle em uma negação ou em umaconcessão do acesso a um recurso. No o evento de umanegação, os métodos não fornece nenhuns métodosalternativos do acesso. No caso de uma concessão, osmétodos podem fornecer a somente divulgação cheia ecompleta do recurso.
Em alguns ambientes, um usuário de uma máquina decliente pode ver a aplicação dados de saída das fontesmúltiplas. Estas fontes podem incluir aplicações executandoem uma máquina de cliente, em um navegador ou em uma parteexterna do navegador, aplicações que executam em umamáquina do usuário, ou aplicações que executam em umvirtual faça à máquina que executa em uma máquina dousuário. Combinando dados de saída de as várias fontes emuma única exposição apresentam diversos desafios.Tentativas adiantadas foram feitos para fazer com que asaplicações usuário-baseadas escrevam diretamente no localjanelas. Embora este método possa indicar a aplicaçãooutput de vário usuários em uma única exposição, falta ahabilidade de arranjar as janelas no cliente responsivo arequisitar do z-axis das janelas em cada usuárioindividual. Assim, se um usuário traz uma janela nova ãparte superior de seu área de trabalho, nenhumacorrespondência a mudança aparece ao usuário no cliente.
Comportamento do usuário do computador e aestabilidade das canais de comunicação da rede sobre queusuários os computadores comunicam-se são freqüentementeimpredizíveis. Os usuários conectados na ocasião precisamde mudar ambientes de computação ao esquecer, ou sem a tera oportunidade de conservar inteiramente seu produto dotrabalho ou de interromper seus sistemas. Em outros casos,as canais de comunicação falham inesperada ou oscomputadores deixam de funcionar, que podem conduzir àperda de produto do trabalho, se a sessão não é restauradanem não é terminada graciosa.
Não cessam graciosa o uso de um recurso de redecompartilhada, incluindo originais remoto-alcançados, asaplicações, e os área de trabalhos forneceram por usuáriosremotos diretamente, ou indiretamente através das máquinasvirtuais, podem conduzir a uma variedade de dificuldadespara usuários conectados da aplicação. Muitas aplicações desoftware restringem o outro usuários habilidade de alcançarrecursos de rede compartilhada quando um recurso estiver nouso. Entretanto, se um usuário perde acessos sem graciosaterminar a conexão ao recurso, o recurso pode ser tornadoinacessível a esse usuário, e a outro.
Adicionalmente, quando um usuário do computador mudade um ambiente de computação a outro, as decisões docontrolo de acessos podem mudar. Os métodos existentes nãofornecem o reconexão liso do usuário às sessões onde oacesso não muda ao manter sessões desautorizadas para oreconexão futuro quando o usuário retorna a um ambienteautorizado.
Sumário da invenção
Em um aspecto, os problemas de estratégias atuais dadistribuição da área de trabalho são endereçado. Umadisposição de máquinas físicas baratas pode ser dividida emmáquinas virtuais múltiplas, criando um PC virtual paracada usuário. O exame as máquinas podem ser usuários taiscomo usuários rack-mount, usuários da lâmina, ou carrinhousuários sozinhos. As máquinas físicas podem igualmente serestações de trabalho ou estação de trabalho lâminas oucomputadores pessoais. Um sistema dinâmico política-baseadoda distribuição provisions as máquinas virtuais e associa amáquina virtual com máquina da execução (isto é, umamáquina física) e um usuário. Acolhimento centralizadofornecer a viabilidade da computação usuário-baseada quandoo dedicado o ambiente fornece a flexibilidade e acompatibilidade as aplicações que a o computador desecretária permite. Entretanto, o sistema tem um custototal muito mais baixo de posse - porque o sistema éexecutado no software, um pouco do que sendo dependente daferragem, o sistema tem um custo total muito mais baixo daposse.
Em ura outro aspecto, o ciclo de vida da ferragem podeser estendido aumentando a quantidade de recursos deferragem atribuiu às máquinas virtuais como computacionaisas demandas aumentam sobre o tempo. Adicionalmente, o usoda virtualização facilita dificuldade em tratar as imagensmúltiplas do õsmio.
Em uma modalidade, as máquinas são configuradas parafuncionar cópias múltiplas de uns ou vários sistemas deexploração (por exemplo versões/liberações diferentes deWINDOWS de Microsoft Corporation). Os usuários transmitempedidos para o acesso à computação recursos ao sistema dadistribuição, a que pode usar uma política da configuraçãodecida como (com que recursos físicos e/ou virtuais) e onde(em qual máquina física na exploração agrícola da máquina eem que máquina virtual) a fornecer acesso ao recurso decomputação pedido. A máquina virtual pode ser por encomendacriado, e o recurso pedido do software podem sertransferidos e instalado na máquina virtual comonecessário. Alternativamente, a máquina virtual pode pre-configured com uma pluralidade de software e/ou de ferragemvirtual recursos para fornecer um ambiente de computaçãoparticular ao usuário. 0 usuário o pedido é dirigido àmáquina virtual selecionada, configurada e a umtelecontrole a conexão da exposição é estabelecida entre amáquina virtual e um telecontrole cliente da exposição nousuário dispositivo do acesso de s, que será referidogeralmente como a " cliente machine. " Os dispositivos taiscomo movimentações de CD-ROM, movimentações flexíveis, USBconduzem e outros dispositivos similares que são conectadosà máquina de cliente são conectados e remotamente acessívelà máquina virtual, permitindo desse modo o uso destesdispositivos em uma maneira similar a um computador desecretária padrão.
Um sistema da distribuição pode controlar umaassociação de máquinas virtuais (uma máquina exploraçãoagrícola) a que máquinas virtuais novas podem ser porencomenda adicionado. Alternativamente, a pluralidade demódulos de software, incluindo um componente da gerência desessão e um a o componente da gerência da máquina virtualpode fornecer a funcionalidade da gerência. Executarmáquinas virtuais pode ser migrada de uma máquina física aoutros, sob o controle do sistema da distribuição, parafornecer a carga que balança ou a facilite a manutenção deferragem. As máquinas virtuais inativas podem sersuspendidas a recursos de computação físicos livres. Asmáquinas virtuais ativas podem ser migradas de uma máquinafísica a outra para consolidá-la em um número menor dasmáquinas físicas para permitir que as máquinas físicas nãoutilizadas sejam parada programada a excepto o poderdurante períodos normais ou para livrar o recurso físicopara ser re-i atribuído para pedidos diferentes de umacorreia fotorreceptora do processo da finalidade porexemplo. Virtual suspendido as máquinas podem serrecomeçadas antes dos usuários que exigem o acesso. Istopode ser feito manualmente ou automaticamente através daspolíticas ou das preferências ou com de uma aprendizagemprocesse monitorando um usuário comportamento de s sobre otempo.
As exigências de desempenho do recurso pedido podemser consideradas ao alocar recursos de computação àsmáquinas virtuais. Por exemplo, a o pacote da análisefinanceira pode exigir duas vezes tantos como recursos doprocessador central como a aplicação genérica daprodutividade, tal como aquelas incluídas em MICROSOFTOFFICE, manufaturado por Microsoft Corporation de Redmond,Washington. Um virtual a máquina que fornece o pacote daanálise financeira pode executar em um exame faça à máquinadeterminado para ter a suficiente capacidade computacionalde reposição, ou a existência as máquinas virtuais podemrealocado a outras máquinas físicas disponíveis paraassegurar suficiente capacidade disponível em uma máquinafísica particular.
Cada usuário é fornecido um ambiente separado damáquina virtual, que fornece a flexibilidade aumentada quecada usuário pode funcionar toda a versão ou configuraçãode um sistema de exploração independente de outros usuáriose igualmente permite que os usuários funcionem aplicaçõespotencial perigosas ou desestabilizando com pouco risco deafetar outros usuários. Isto é particular útil paracolaboradores/verificadores/pessoais tecnologia dainformação que precisam freqüentemente o reinstale emodifique o sistema de exploração e funcione aplicaçõespotencial de desestabilização.
Desde a partilha de recursos de computação e deprocessador central programar ocorre fora de o ambiente damáquina virtual, usuários pode funcionar o computar-recursointensivo recursos sem o risco de afetar outros usuários.As máquinas virtuais igualmente fornecem isolação aumentadada segurança entre usuários. Porque cada usuário estáfuncionando a a cópia separada do ósmio, lá é muito menospossibilidade das violações da segurança e infecções dovírus sobre os limites dos entre-usuários do que no exemplocompartilhado do ósmio.
Uma solução é fornecida igualmente para os problemasque se levantam de uma situação onde, em um sistema emrelação com o hardware de máquinas, a ferragem é misturada,a se devido uma decisão comprando inicial ou devido àaquisição de tipos diferentes de máquinas físicas sobre otempo. Mesmo se inicialmente toda a ferragem era uniforme,comprando a ferragem adicional para substituir os módulosfalhando e o aumento a capacidade conduz tipicamente àferragem non-uniform durante todo uma exploração agrícolada máquina. Mesmo se toda a ferragem é comprada do mesmovendedor, é provável que mais atrasado comprado ferragemusará chipset e componentes diferentes, e exija excitadoresdiferentes. A ferragem Non-uniform traduziu tradicional ema necessidade de manter versões múltiplas das imagens dosistema de exploração (que custos mais elevados dos meios)e flexibilidade dos limites de usuários moventes entremáquinas - porque a imagem do sistema de exploração podeser incompatível - que também traduz em um custo maiselevado. As máquinas virtuais permitem o uso eficiente domesmos imagem do sistema de exploração mesmo em umaexploração agrícola da ferragem que inclua heterogêneomáquinas. O uso da mesma imagem do sistema de exploraçãoajuda a significativamente reduza o custo da gerência.
Adicionando a capacidade remota da exposição (porexemplo protocolos da camada de apresentação, tais como oAIC, a RDP, ou Xll) às técnicas virtuais do izationpermitem que a virtualização seja usada para a computaçãointerativa. Hospedando máquinas virtuais múltiplas em umaexecução a máquina permite a melhor utilização dos recursosde computação físicos disponíveis (por exemplo: espaço,poder, potência de processamento, capacidade deprocessamento, RAM, largura de faixa, etc.) que abaixadesse modo custos. 0 uso da virtualização igualmentepermite que a ferragem seja atualizado e mantidoindependente da versão do ósmio e de excitadores dedispositivo específicos hospedado nos sistemas deexploração ou nas máquinas virtuais. Adicionalmente,virtual as máquinas realçam a segurança de sistema isolandoambientes de computação de.
Em um aspecto, um método para fornecer o acesso a umambiente de computação inclui a etapa de receber um pedidode um sistema do cliente para uma enumeração de disponívelcomputando ambientes. Dados coletados a respeito dedisponível os ambientes de computação são alcançados. Dadosalcançados que indicam a um cliente o sistema cada ambientede computação disponível a um usuário do sistema do clienteé transmitido ao sistema do cliente. Um pedido alcançar umada computação os ambientes são recebidos do sistema docliente. Uma conexão é estabelecida entre o sistema docliente e uma máquina virtual que hospedam o ambiente decomputação pedido.
Em uma modalidade, para cada ambiente de computaçãoarmazenado, a a determinação é feita se esse ambiente decomputação está disponível á usuário do sistema do cliente.
Em uma outra modalidade, os dados alcançados transmitiramao sistema do cliente seja displayable no sistema docliente como ícones em um gráfico janela da interface deutilizador que representa os ambientes de computaçãodisponíveis a um usuário do sistema do cliente. Em aindauma outra modalidade, os dados alcançados transmitiu aosistema do cliente seja displayable no sistema do clientecomo ícones em um gráfico janela da interface de utilizadorque representa os ambientes de computação não disponíveis áusuário do sistema do cliente. Em contudo uma outramodalidade, a conexão no meio o sistema do cliente e amáquina virtual são estabelecidos usando uma apresentaçãoprotocolo da camada.
Em uma modalidade, as credenciais do usuário sãorecebidas do sistema do cliente. Em uma outra modalidade,os dados alcançados são transmitidos ao sistema do clienteresponsivo a receber as credenciais do usuário. Em aindauma outra modalidade, o usuário do cliente que o sistema éautenticado baseou nas credenciais recebidas do usuário e oacesso é fornecido a um selecionado do ambiente decomputação disponível imagens sem exigir a entrada maisadicional de credenciais do usuário por um usuário docliente sistema.
Em uma modalidade, a informação é recolhida sobre osistema do cliente e o a a série de dados é gerada dainformação recolhida. Em uma outra modalidade, os dadosalcançados são transmitidos à indicação do sistema docliente, responsiva ao série de dados gerada, cada ambientede computação disponível ao sistema do cliente. Em umaoutra modalidade, os dados alcançados são transmitidos aosistema do cliente indicar, responsiva a uma aplicação deuma política à série de dados gerada, cada ambiente decomputação disponível ao sistema do cliente.
Em uma modalidade, um servidor de rede recebe umpedido de um sistema do cliente para uma enumeração dedisponível computando ambientes. Em outros a modalidade, ummolde da página é recuperada de um armazenamentopersistente, a correia fotorreceptora o usuário cria umapágina que descreve uma exposição de imagens de computaçãodo ambiente disponível ao sistema do cliente, e à páginacriada é transmitido ao cliente sistema.
Em um outro aspecto, em uma rede que inclui um sistemado cliente e uma pluralidade de os usuários que armazenamambientes de computação, um usuário incluem um módulo docorretor, a transmissor, um receptor, e um transceptor. Osacessos do módulo do corretor coletaram os dados a respeitodos ambientes de computação e determinam, para cada um quecomputa ambiente, se essa imagem de computação do ambienteestá disponível a um cliente sistema. O transmissor emitedados alcançados ao sistema do cliente que indica a osistema do cliente cada ambiente de computação determinadoestar disponível ao sistema do cliente. O receptor recebeum pedido alcançar um do disponível ambientes decomputação. O transceptor fornece uma conexão entre sistemado cliente e uma máquina virtual que fornece a computaçãopedida ambiente.
Em uma modalidade, o receptor recebe credenciais dousuário do cliente sistema. Em uma outra modalidade, ousuário mais adicional compreende uma base de dados quearmazena os dados coletados. Em ainda uma outra modalidade,o módulo do corretor determina para cada ambiente decomputação se essa imagem de computação do ambiente édisponível a um sistema do cliente baseado nas credenciaisdo usuário e nos dados coletados.
Em uma modalidade, o usuário mais adicional compreendeuma exposição da saída o motor da criação que cria a saídaindica a indicação de cada ambiente de computaçãodisponível ao sistema do cliente. Em uma outra modalidade,a exposição da saída o motor da criação cria um Página derede que descreve uma exposição da computação os ambientesdisponíveis a um sistema do cliente, o Página de redecriaram responsivo à informação coletada e a um molde doPágina de rede. Em ainda uma outra modalidade, transceptorfornece uma conexão entre o sistema do cliente e um virtualfaça à máquina o fornecimento do ambiente de computaçãopedido estabelecendo a conexão do protocolo da camada deapresentação.
Em ainda um outro aspecto, um método de fazer umapágina do hipermeio interativa, a página do hipermeioindicada por um navegador de rede, inclui a etapa deselecionar um hiperlink na página do hipermeio indicada nonó do cliente, o hiperlink que identifica um recurso decomputação desejado. Um hiperlink a lima de configuração érecuperada, a lima de configuração do hiperlink quecorresponde ao hiperlink e que identifica uma máquina dousuário. Um agente do cliente é começado no nó do cliente.
O agente do cliente cria uma ligação de comunicação a umamáquina virtual execução no usuário identificado pela limade configuração do hiperlink. O agente do cliente recebedados da máquina virtual e indica no nó do cliente os dadosrecebidos sem intervenção pelo navegador de rede.
Em uma modalidade, o navegador de rede começa o agentedo cliente em cima da o fósforo bem sucedido de uma entradana lima de configuração do hiperlink com um identificadorassociou com o agente do cliente em uma lima de registoacessível pelo navegador de rede. Em uma outra modalidade,o agente do cliente é registado com o navegador de rede. Emainda uma outra modalidade, um protocolo de apresentação éempregada para uma comunicação sobre a ligação decomunicação. Em contudo uma outra modalidade, a execução daaplicação identificada na máquina virtual começa emresposta à ligação de comunicação criada.
Em uma modalidade, uma máquina virtual é lançado. Emoutros a modalidade, um agente do usuário á na máquinavirtual. Em ainda uma outra modalidade, dados recebidos damáquina virtual é indicada em uma exposição janela namáquina de cliente.
Em contudo um outro aspecto, um sistema para fazer umapágina do hipermeio interativa, a página do hipermeioindicada por um navegador de rede compreende a máquina decliente, um usuário de rede, e um agente do cliente. Amáquina de cliente executa uma aplicação do navegador,disse a aplicação do navegador que indica a página dohipermeio que inclui um hiperlink que identifica umacomputação desejada recurso. O usuário de rede transmite,em resposta à seleção de dito hiperlink, uma lima deconfiguração da rede disse o nó do cliente, rede dita limade configuração que corresponde a recurso de computaçãoidentificado dito. O agente do cliente executa na máquinade cliente, estabelecimento dito do agente do cliente,responsivo aos dados na lima de configuração dita, umaligação de comunicações com uma máquina virtual que forneceo recurso de computação. O hypervisor transmite dados aoagente do cliente para a exposição, sem intervenção pelaaplicação do navegador.
Em uma modalidade, o agente do cliente indica os dadosrecebidos do virtual máquina em uma janela de exposiçãoencontrada em máquina de cliente dita. Em outros amodalidade, a janela de exposição é ficada situada dentrodos limites do página do hipermeio. Em ainda uma outramodalidade, a janela de exposição é encontrada fora doslimites da página do hipermeio.
Em uma modalidade, a lima de configuração do hiperlinkcompreende um recurso o identificador que corresponde disseque o hiperlink e um identificador da máquina virtual quecorresponde disseram o hiperlink.
Em um aspecto, um sistema para incorporar janelasremotas de díspar os ambientes remotos do área de trabalhoem um ambiente local do área de trabalho compreendem umaprimeira canal virtual acoplada a um primeiro ambienteremoto do área de trabalho fornecido por a sistema deexploração nativo, uma segunda canal virtual acoplada aoprimeiro ambiente remoto do área de trabalho, um terceirovirtual acoplado a um segundo área de trabalho remoto oambiente forneceu por uma máquina virtual, por uma quartacanal virtual acoplada ao segundo ambiente remoto do áreade trabalho, e por um agente local acoplado às canaisvirtuais remotas dos ambientes através do primeiro, dosegundo, o terceiro e o quarto do área de trabalho. Aprimeira canal virtual transporta os dados gráficosassociados com uma janela remota fornecido pelo primeiroambiente remoto do área de trabalho. A segunda canalvirtual transporta os dados do atributo da janelaassociados com a janela remota fornecida perto o primeiroambiente remoto do área de trabalho. A terceira canalvirtual transporta os dados gráficos associaram com umajanela remota fornecida pelo segundo telecontrole ambientedo área de trabalho. A quarta canal virtual transporta osdados do atributo da janela associados com a janela remotafornecida pelo segundo área de trabalho remoto ambiente. 0agente local dirige a formação de uma primeira janela localno ambiente local do área de trabalho que corresponde àjanela remota fornecida pelo primeiro ambiente remoto doárea de trabalho e a formação de uma segunda janela localno ambiente local do área de trabalho que corresponde àjanela remota fornecida perto o segundo ambiente remoto doárea de trabalho, a primeira indicação local da janeladados gráficos transportados pela primeira canal virtual deacordo com dados do atributo da janela transportados pelasegunda canal virtual e pelo segunda janela local queindica os dados gráficos transportados pela terceira canalvirtual de acordo com os dados do atributo da janelatransportados pelo quarto virtual canal.
Em uma modalidade, os formulários do agente do local emantêm combinado as janelas alistam a representação de umaζ-ordem modificável de uma janela no área de trabalho localambiente. Em uma outra modalidade, os dados do atributo dajanela associaram com as janelas remotas e transportadopelas segundas e quartas canais virtuais inclui o tamanho ea ζ-ordem das janelas remotas. Em ainda outro a modalidade,um sistema de exploração local dá forma ao ambiente localdo área de trabalho. Em contudo um outro aspecto, o agentelocal detecta uma mudança do atributo em um do primeirojanela local e a segunda janela local, onde o agente localtransmite a mensagem a um do primeiro ambiente remoto doárea de trabalho e do segundo telecontrole ambiente do áreade trabalho indicativo da mudança do atributo.
Em um outro aspecto, um método de incorporar janelasremotas de ambientes remotos díspares do área de trabalhoem um ambiente local do área de trabalho inclui a etapa dereceber os dados gráficos associados com uma janela remotafornecido por um primeiro ambiente remoto do área detrabalho forneceu por um funcionamento nativo sistema, osdados gráficos recebidos através de uma primeira canalvirtual acoplada ao primeira ambiente remoto do área detrabalho. Os dados do atributo da janela associaram com otelecontrole a janela forneceu pelo primeiro ambienteremoto do área de trabalho é recebida através da canal emsegundo virtual acoplada ao primeiro ambiente remoto doárea de trabalho. Os dados gráficos associaram com umajanela remota fornecida por um segundo telecontrole oambiente do área de trabalho fornecido por uma máquinavirtual é recebido, o gráfico dados recebidos através deuma terceira canal virtual acoplada ao segundo área detrabalho remoto ambiente. Os dados do atributo da janelaassociaram com a segunda janela remota fornecido pelosegundo ambiente remoto do área de trabalho é recebidoatravés de um quarto canal virtual acoplada ao segundoambiente remoto do área de trabalho. Um primeiro janela queindica os dados gráficos recebidos da primeira canalvirtual dentro acordo com os dados do atributo da janelarecebidos do segundo virtual a canal é dada forma noambiente local do área de trabalho. Uma segunda janela édada forma no ambiente local do área de trabalho, a segundajanela que indica os dados gráficos recebidos da terceiracanal virtual de acordo com a janela atribua os dadosrecebidos da quarta canal virtual.
Em uma modalidade, as janelas combinadas alistam aarmazenagem pelo menos de algum do os dados do atributo dajanela são dados forma. Em uma outra modalidade, umamudança do atributo dentro uma da primeira janela local eda segunda janela local é detectado e a a mensagem étransmitida a um do primeiro ambiente remoto do área detrabalho e segundo ambiente do área de trabalho indicativoda mudança detectada do atributo. Em uma outra modalidade,os dados locais do atributo da janela da exibição dasjanelas substancialmente similar relativo ao ambiente localdo área de trabalho como a janela atribua dados das janelasremotas relativo ao área de trabalho remoto ambientes.
Em ainda um outro aspecto, um sistema para incorporarjanelas remotas de os ambientes remotos do área de trabalhoem um ambiente local do área de trabalho compreendem umprimeiro a canal virtual acoplada a um ambiente remoto doárea de trabalho forneceu por um virtual máquina, umasegunda canal virtual acoplada ao ambiente remoto do áreade trabalho, e um agente local acoplado ao ambiente remotodo área de trabalho através das primeiras e segundas canaisvirtuais. A primeira canal virtual transporta dadosgráficos associado com uma janela remota forneceu peloambiente remoto do área de trabalho. A segunda canalvirtual transporta os dados do atributo da janelaassociados com a janela remota forneceu pelo ambienteremoto do área de trabalho. O agente local dirige aformação de uma janela local no ambiente local do área detrabalho corresponder à janela remota forneceu pelo área detrabalho remoto ambiente, a primeira janela local queindica os dados gráficos transportados pelo primeira canalvirtual de acordo com os dados do atributo da janelatransportados pelo canal em segundo virtual.
Em uma modalidade, os formulários do agente do local emantêm combinado as janelas alistam a representação de umaz-ordem modificável da janela correspondente dentro oambiente local do área de trabalho. Em uma outramodalidade, o atributo da janela dados associados com asjanelas remotas e transportados pelo segundo virtual acanal inclui o tamanho e a z-ordem da janela remota. Emainda outro a modalidade, um sistema de exploração local dáforma ao ambiente local do área de trabalho, agente localque vota periodicamente o sistema de exploração local paradetectar um atributo mude na janela local, onde o agentelocal transmite uma mensagem ao ambiente remoto do área detrabalho indicativo da mudança do atributo. Em contudooutros modalidade, os dados correspondentes do atributo dajanela da exibição das janelas substancialmente similarrelativo ao ambiente local do área de trabalho como ajanela atribua dados da janela remota relativo ao ambienteremoto do área de trabalho.
Em uma modalidade, o ambiente local do área detrabalho é acoplado com uma pluralidade de ambientesremotos do área de trabalho através de uma pluralidade deligações de comunicações, as ligações de comunicação queincluem as primeiras e segundas canais virtuais quetransportam os dados gráficos e da janela do atributoassociaram com as janelas remotas do pluralidade deambientes remotos do área de trabalho ao agente local, ondeo local o agente dá forma a janelas correspondentes noambiente local do área de trabalho correspondência a cadaum da pluralidade de janelas remotas.
Em contudo um outro aspecto, um método de incorporarjanelas remotas de os ambientes remotos do área de trabalhoem um ambiente local do área de trabalho incluem a etapa.darecepção os dados gráficos associaram com uma janela remotafornecida por a o ambiente remoto do área de trabalhoforneceu por uma máquina virtual, os dados gráficosrecebido através de uma primeira canal virtual acoplada aoambiente remoto do área de trabalho. A a primeira janela édada forma no ambiente local do área de trabalho que indicao gráfico dados recebidos da primeira canal virtual deacordo com a janela atribua os dados recebidos da segundacanal virtual.
Em uma modalidade, as janelas combinadas alistam aarmazenagem pelo menos de algum do os dados do atributo dajanela são dados forma. Em uma outra modalidade, umfuncionamento local o sistema associado com o ambientelocal do área de trabalho é votado para detectar a mudançado atributo na janela local e em uma mensagem é transmitidaao telecontrole ambiente do área de trabalho indicativo damudança detectada do atributo. Em ainda outro modalidade,os dados locais do atributo da janela das exibições dajanela substancialmente similares relativo ao ambientelocal do área de trabalho como os dados do atributo dajanela do janela remota relativo ao ambiente remoto do áreade trabalho.
Em um aspecto, um método para executar, por umamáquina virtual, uma aplicação o programa pedido por umamáquina de cliente inclui a etapa de receber uma limaincluindo a informação do acesso para alcançar umapluralidade de limas de aplicação e para executando umprimeiro cliente capaz de receber um córrego da aplicação,a identificação da pluralidade de limas de aplicação érecuperada, responsivo ao lima recebida. Pelo menos umacaracterística exigida para a execução da pluralidade de aslimas de aplicação são recuperadas, responsivo à lima. Umadeterminação é feita a respeito de se uma máquina decliente inclui pelo menos a uma característica. Um segundocliente é executado, responsivo a uma determinação que amáquina de cliente falta em menos uma característica,segundo cliente que pede a execução da pluralidade de limasde aplicação em uma máquina remota que compreende umamáquina virtual que fornece a ambiente de computação quetem pelo menos a uma característica.
Em uma modalidade, um sistema de exploração na máquinade cliente é avaliado. Em uma outra modalidade, uma versãoda aplicação de uma aplicação o programa que reside namáquina de cliente é identificado. Em ainda uma outramodalidade, uma determinação é feita a se a máquina decliente inclui uma licença execute a pluralidade de limasde aplicação. Em algumas modalidades, uma coleção o agenteé recebido, o agente de coleção que recolhe a informaçãoassociada com máquina de cliente e determinação de se amáquina de cliente inclui pelo menos uma característica.
Em um outro aspecto, um sistema para alcançar umapluralidade de limas compreendendo o programa de aplicaçãoinclui uma lima, um primeiro cliente e um segundo cliente.A lima compreende a informação do acesso para alcançar umapluralidade de limas de aplicação. o primeiro clienteexecuta em uma máquina de cliente e é capaz de receber umaaplicação córrego. O primeiro cliente recebe a lima,recupera uma identificação de uma pluralidade de limas deaplicação e pelo menos uma característica exigidas para aexecução do a pluralidade de limas de aplicação e,responsiva à lima, determina se a máquina de cliente incluipelo menos a uma característica. O segundo cliente recebe alima do primeiro cliente e, responsivo a uma determinaçãopelo primeiro cliente que a máquina de cliente falta pelomenos a uma característica, pedidos execução da pluralidadede limas de aplicação em uma máquina virtual que fornece aambiente de computação que tem pelo menos a umacaracterística.
Em uma modalidade, o primeiro cliente recupera umaidentificação pelo menos de uma característica exigida paraa execução da pluralidade de limas de aplicação. Em outrosa modalidade, primeiro cliente determina se a máquina decliente inclui a licencie para executar a pluralidade delimas de aplicação. Em ainda uma outra modalidade, oprimeiro cliente determina se a máquina de cliente incluipelo menos esse responsivo característico a uma execução deum certificado. Em contudo uma outra modalidade, o primeirocliente recebe uma enumeração de uma pluralidade deaplicação disponível programas.
Em uma modalidade, a máquina virtual executa namáquina de cliente. Em uma outra modalidade, a máquinavirtual executa em uma máquina remota. Em ainda uma outramodalidade, o segundo cliente inclui um receptor parareceber dados da aplicação-saída gerados pela execução dapluralidade de limas de aplicação na máquina virtual. Emalgumas modalidades, o receptor recebe dados da aplicação-saída através de uma conexão de dados do protocolo daapresentação-camada.
Em ainda uma outra modalidade, o segundo clienteinclui meios para indicar, no máquina de cliente, dadosrecebidos da aplicação-saída. Em ainda um outro aspecto, ummétodo para fornecer o acesso remoto á o ambiente decomputação forneceu por uma máquina virtual inclui a etapade receber a informação de autenticação associada com umusuário de uma máquina de cliente. Baseado na informação deautenticação recebida, um ambiente de computação fornecidopor um sistema de exploração ized virtual e já associadocom o usuário é identificado. Uma conexão é estabelecidaentre a máquina de cliente e ambiente de computaçãoidentificado.
Em uma modalidade, um agente de coleção recolhe ainformação sobre o cliente máquina. Em uma outramodalidade, baseada na autenticação recebida informação einformação recolhida da máquina de cliente, um ambiente decomputação fornecido por uma máquina virtual e já associadocom o usuário é identificado. Em ainda uma outramodalidade, uma conexão é estabelecida entre o cliente amáquina e o assunto de computação identificado do ambientea uma régua aplicaram-se ao informação de autenticaçãorecebida e a informação recolhida da máquina de cliente.
Em uma modalidade, baseada na informação deautenticação recebida, a o primeiro ambiente de computaçãoforneceu em uma primeira máquina virtual e um segundo oambiente de computação fornecido por uma segunda máquinavirtual é identificado, os primeiros e segundos ambientesde computação já associaram com o usuário. Em uma outramodalidade, um primeiro ambiente de computação forneceu porum primeiro virtual faça à máquina a execução em umprimeiro usuário e em um segundo ambiente de computação sãofornecidos por uma segunda máquina virtual que executa emum segundo usuário identificado, baseado na informação deautenticação recebida, no primeira e no segunda osambientes de computação já associaram com o usuário. Emainda outro a modalidade, a conexão é estabelecida entre amáquina de cliente e o assunto de computação identificadodo ambiente a uma régua.
Em uma modalidade, a informação de autenticaçãoassociada com o usuário é recebido, o usuário que usa umasegunda máquina de cliente, um ambiente de computação éidentificado baseado na informação de autenticaçãorecebida, a computação ambiente fornecido por um sistema deexploração virtualizado e já associado com o usuário, e umaconexão é estabelecido entre o segundo cliente máquina e oambiente de computação identificado. Em uma outramodalidade, em cima do estabelecimento da conexão entre asegunda máquina de cliente e o ambiente de computaçãoidentificado, uma conexão entre o primeiro cliente amáquina e o ambiente de computação identificado sãoterminados. Em ainda outro a modalidade, uma conexão doprotocolo da apresentação-camada é estabelecida entremáquina de cliente e o ambiente de computação identificado.Em um outro aspecto, um método para fornecer o acessoremoto a uma pluralidade de as sessões da aplicação incluema etapa de receber, em uma máquina de cliente, a seleção deum único elemento da interface de utilizador por um usuárioda máquina de cliente. Em resposta à seleção do elemento dainterface de utilizador, informação de autenticaçãoassociado com o usuário é transmitido. Um ambiente decomputação forneceu por a o sistema de exploraçãovirtualizado e já associado com o usuário é identificadobaseado na informação de autenticação transmitida. Umaconexão é estabelecida entre a máquina de cliente e oambiente de computação identificado.
Em uma modalidade, um ambiente de computação forneceupor um virtual o sistema de exploração e já associado com ousuário é identificado baseou na informação de autenticaçãorecebida e na informação recolhida da máquina de cliente.Em uma outra modalidade, uma conexão é estabelecida entre amáquina de cliente e o assunto de computação identificadodo ambiente a uma régua aplicou-se ao recebido informaçãode autenticação e à informação recolhida da máquina decliente.
Em uma modalidade, um primeiro ambiente de computaçãoforneceu por um primeiro o sistema de exploraçãovirtualizado e um segundo ambiente de computação fornecerampor a o sistema de exploração em segundo virtualizado éidentificado, baseado no recebido informação deautenticação, os primeiros e segundos ambientes decomputação já associado com o usuário. Em uma outramodalidade, um primeiro ambiente de computação fornecidopor um primeiro virtualizou o sistema de exploração queexecuta em um primeiros usuário e a o ambiente em segundode computação forneceu por um segundo funcionamentovirtualizado o sistema que executa em um segundo usuário éidentificado, baseado no recebido informação deautenticação, os primeiros e segundos ambientes decomputação já associado com o usuário. Em ainda uma outramodalidade, uma apresentação-camada a conexão do protocoloé estabelecida entre a máquina de cliente e identificadosambiente de computação.
Em uma modalidade, um usuário para fornecer o acessoremoto a uma computação o ambiente inclui um módulo darede, uma loja dos dados, e um processo do corretor, omódulo da rede recebe a informação de autenticaçãoassociada com um usuário operando uma máquina de cliente. Aloja dos dados contem um identificador de uma computação oambiente associou com o usuário e desde que por uma máquinavirtual. o processo do corretor conecta a máquina decliente à computação identificada ambiente enumerado naloja dos dados em resposta à informação recebida.
Em uma modalidade, a loja dos dados contem um primeiroidentificador de um primeiro o ambiente de computaçãoassociou com o usuário e um segundo identificador da oambiente em segundo de computação associou com o usuário.
Em outros a modalidade, o primeiro ambiente de computaçãoexecuta em um primeiro usuário e o ambiente em segundo decomputação executa em um segundo usuário. Em ainda outro amodalidade, o processo do corretor conecta o cliente àcomputação identificada assunto do ambiente a uma régua. Emcontudo uma outra modalidade, o processo do corretordesconecta o computador do cliente do ambiente decomputação identificado dentro resposta a um sinal recebidoda disconexão. Em modalidades mais adicionais, o corretor oprocesso actualiza um registro de dados associado com acomputação identificada o ambiente para indicar a máquinade cliente é disconnected do identificado ambiente decomputação.
Em uma modalidade, o usuário inclui um agente decoleção e uma política agente. 0 agente de coleção recolhea informação sobre a máquina de cliente. o motor dapolítica recebe a informação recolhida e atribui uma de umapluralidade de níveis de acesso responsivos à aplicação deuma política à informação recebida, o processo do corretorque conecta a máquina de cliente à computação identificadao ambiente enumerado nos dados armazena responsivo aoacesso atribuído nível. Em uma outra modalidade, o motor dapolítica transmite o agente de coleção a a máquina decliente.
Em ainda uma outra modalidade, o agente de coleçãorecolhe a informação funcionando pelo menos um certificadona máquina de cliente. Em contudo outros a modalidade, oprocesso do corretor estabelece um protocolo daapresentação-camada conexão entre a máquina de cliente e acomputação identificada ambiente. Em ainda um outroaspecto, um sistema para conceder o acesso aos recursosinclui uma máquina de cliente, um agente de coleção, ummotor da política, e um usuário do corretor, a máquina decliente pede o acesso a um recurso. Os recolhimentos doagente de coleção informação sobre a máquina de cliente. 0motor da política recebe recolhido a informação e atribuiuma de uma pluralidade de níveis de acesso responsivos aaplicação de uma política à informação recebida. 0 usuáriodo corretor estabelece, responsivo ao nível atribuído deacesso, uma conexão entre o cliente faça à máquina e umambiente de computação que fornece o recurso pedido, oambiente de computação forneceu por uma máquina virtual.
Em uma modalidade, o agente de coleção executa namáquina de cliente. Em uma outra modalidade, o motor dapolítica transmite o agente de coleção ao máquina decliente. Em ainda uma outra modalidade, o agente de coleçãorecolhe informação funcionando pelo menos um certificado namáquina de cliente. Em contudo outros a modalidade, oagente de coleção recolhe a informação sobre a máquina decliente, informação dita que reside em um usuário.
Em uma modalidade, o motor da política inclui umaarmazenagem da base de dados políticas configuráveis. Emuma outra modalidade, o motor da política transmiteinstruções ao agente de coleção que determina o tipo deinformação que o agente de coleção recolhe.
Em contudo um outro aspecto, um método para conceder oacesso aos recursos inclui a etapa de pedir, por umamáquina de cliente, o acesso a um recurso. Uma coleção oagente recolhe a informação sobre a máquina de cliente. Ummotor da política recebe informação recolhida. Uma decisãodo controlo de acessos é feita baseado no recebidoinformação. Uma conexão é estabelecida, responsivo aocontrolo de acessos decisão, entre a máquina de cliente eum fornecimento de computação do ambiente o acesso pedido,o ambiente de computação forneceu por uma máquina virtual.
Em uma modalidade, o agente de coleção recolhe ainformação perto executando pelo menos um certificado nocliente. Em uma outra modalidade, a política o motordetermina se a informação recebida satisfaz umacircunstância.
Em ainda uma outra modalidade, a decisão do controlode acessos é feita aplicando uma política a acircunstância. Em uma modalidade, uma determinação é feita,responsivo ao acesso controle a decisão, a respeito de seestabelecer a conexão entre a máquina de cliente e oambiente de computação forneceram pela máquina virtual. Emuma outra modalidade, uma conexão é estabelecida entre amáquina de cliente e o ambiente de computação forneceu pelamáquina virtual, o virtual a máquina selecionou responsivoà decisão do controlo de acessos.
Em um aspecto, um método para fornecer o acesso a umambiente de computação inclui a etapa de receber, por umamáquina do corretor, um pedido de um cliente máquina para oacesso a um ambiente de computação, incluir do pedidoidentificação de um usuário da máquina de cliente. Uma deuma pluralidade de virtual as máquinas são identificadas, amáquina virtual identificada que fornece pedido ambiente decomputação. Uma de uma pluralidade de máquinas da execuçãoé identificado, a máquina identificada da execução queexecuta um hypervisor que fornece o acesso a recursos deferragem exigidos pela máquina virtual identificada. Umaconexão é estabelecido entre a máquina de cliente e amáquina virtual identificada.
Em uma modalidade, uma da pluralidade de máquinasvirtuais é identificado responsivo ã identificação recebidado usuário da máquina de cliente. Em uma outra modalidade,essa da pluralidade de máquinas da execução é identificadaresponsivo a uma identificação dos recursos de ferragemexigidos pelo identificado máquina virtual. Em ainda umaoutra modalidade, a máquina virtual identificada é lança nohypervisor. Em contudo uma outra modalidade, uma conexão éestabelecido entre a máquina de cliente e a máquina virtualidentificada usando a protocolo da camada de apresentação.
Em um outro aspecto, em um sistema que fornece oacesso a uma computação ambiente por uma máquina docorretor a uma máquina de cliente, uma máquina da execuçãoexecutando um hypervisor que fornece o acesso aos recursosde ferragem exigidos pelo o ambiente de computação, uminstrumento compreende um componente da identificação,componente da execução, e um componente da gerência. Aidentificação o componente está em uma comunicação com umcomponente da gerência da máquina virtual e recebe umaidentificação de uma de uma pluralidade de máquinasvirtuais, máquina virtual identificada que fornece umambiente de computação pedido, o componente da execuçãoprovisions a máquina virtual identificada. A gerência ocomponente estabelece uma conexão entre a máquina decliente e máquina virtual identificada.
Em uma modalidade, um componente de serviço da máquinavirtual que executa no o hypervisor está em uma comunicaçãocom o componente da gerência de sessão e recebe ainformação de configuração associada com a máquina decliente. Em outros a modalidade, o componente de serviço damáquina virtual executa no identificado máquina virtual. Emainda uma outra modalidade, o componente da identificaçãorecebe da máquina do corretor uma identificação de uma deuma pluralidade de máquinas da execução. Em contudo umaoutra modalidade, compreende um transceptor recebendo umaidentificação por um usuário da máquina de cliente de umtipo de computação ambiente pedido e que transmite aidentificação do tipo de ambiente de computação pedido àgerência da máquina virtual componente. Em uma modalidade,o componente da gerência da máquina virtual aloca a máquinavirtual identificada a um usuário. Em uma outra modalidade,o componente da gerência mais adicional compreende ofornecimento de um Internet Protocol enderece associado coma máquina virtual identificada à máquina de cliente. Emainda uma outra modalidade, o componente da gerência maisadicional compreende fornecendo um Internet Protocolenderece associado com a máquina da execução a a máquina decliente. Em contudo uma outra modalidade, o componente dagerência estabelece uma conexão entre a máquina de clientee a máquina virtual usando um protocolo da camada deapresentação. Em ainda um outro aspecto, um método parafornecer o acesso remoto autorizado a um ambiente decomputação fornecido por uma máquina virtual, inclui aetapa de pedindo, por uma máquina de cliente, alcance a umrecurso. Recolhimentos de um agente de coleção informaçãosobre a máquina de cliente. Um motor da política receberecolhido informação. O motor da política faz uma decisãodo controlo de acessos baseada no informação recebida. Umambiente de computação já associou com o usuário éidentificado em resposta à informação recebida, acomputação identificada o ambiente forneceu por uma máquinavirtual. Um usuário do corretor estabelece, responsivo àdecisão do controlo de acessos, uma conexão entre o clientemáquina e o ambiente de computação identificado. Em umamodalidade, em um primeiro ambiente de computação e em umsegundo o ambiente de computação é identificado, emresposta à informação recebida, os primeiros e segundosambientes de computação já associaram com o usuário. Em umaoutra modalidade, em um primeiro ambiente de computação ena segunda computação o ambiente é identificado, emresposta à informação recebida, ao primeiro ambiente decomputação que executam em um primeiro usuário e à segundacomputação ambiente que executa em um segundo - usuário, aprimeira e segunda computação os ambientes já associaramcom o usuário. Em ainda uma outra modalidade, a ambiente decomputação que compreende uma primeira sessão da aplicaçãoe já associado com o usuário é identificado em resposta àinformação recebida e um segundo ambiente de computação, jáassociado com o usuário e a inclusão de uma segunda sessãoda aplicação, é identificado. Em contudo um outro aspecto,um sistema para fornecer o acesso remoto autorizado a umambiente de computação fornecido por uma máquina virtualinclui uma coleção agente, um motor da política, e umusuário do corretor. Os recolhimentos do agente de coleção
informação sobre a máquina de cliente. O motor da políticarecebe recolhido informação e pedidos que uma enumeração deambientes de computação associou com um usuário da máquinade cliente, o pedido que inclui o controlo de acessosdecisão. O usuário do corretor enumera um ambiente decomputação associado com a máquina de cliente, responsiva àdecisão do controlo de acessos, o ambiente de computaçãoenumerado forneceu por uma máquina virtual. Em umamodalidade, o agente de coleção executa na máquina decliente. Em uma outra modalidade, o motor da políticatransmite o agente de coleção ao máquina de cliente. Emainda uma outra modalidade, o motor da política transmiteinstruções ao agente de coleção determinando o tipo deinformação recolhimentos do agente de coleção. Em contudouma outra modalidade, o motor da política faz decisão docontrolo de acessos baseada em aplicar uma política àinformação recolhida. Em uma modalidade, o usuário docorretor enumera uma primeira computação ambiente e umsegundo ambiente de computação, o primeiro e segundo osambientes de computação já associaram com o usuário. Emoutros a modalidade, o usuário do corretor enumera umprimeiro ambiente de computação execução em um primeirousuário e em um segundo ambiente de computação que executamem a o segundo usuário, os primeiros e segundos ambientesde computação já associaram com o usuário. Em ainda umaoutra modalidade, o usuário do corretor enumera o ambientede computação identificado já associou com o usuário,identificado o ambiente de computação que compreende umaprimeira sessão da aplicação, e enumera a o ambiente emsegundo de computação já associou com o usuário e ainclusão uma segunda sessão da aplicação.
Em um aspecto, um método para selecionar um método daexecução para a aplicação inclui a etapa de recebercredenciais. Uma pluralidade de aplicações disponíveis auma máquina de cliente é responsiva enumerado ao recebidocredenciais. Um pedido executar uma aplicação enumerada érecebido. Um de um número predeterminado de métodos paraexecutar a aplicação pedida é responsivo selecionado a umapolítica, o número predeterminado de métodos que incluem ummétodo para executar a aplicação pedida em um ambiente decomputação fornecido por uma máquina virtual. Em umamodalidade, um método é selecionado fluindo pedidoaplicação a uma máquina virtual e a executar a aplicaçãoenumerada na máquina virtual. Em uma outra modalidade, ométodo é responsivo selecionado a uma avaliação dascredenciais associadas com um usuário da máquina decliente. Em ainda uma outra modalidade, dados da aplicação-saida gerados pela execução da aplicação enumerada éfornecida à máquina de cliente através de um protocolo doapresentação-nível. Em uma modalidade, uma máquina virtualprovisioned para executar a a aplicação pedida, a máquinavirtual selecionou responsivo a uma versão identificada daaplicação pedida. Em uma outra modalidade, um molde éidentificado de qual para provision uma máquina virtual emque para executar a a aplicação pedida, o molde selecionouresponsivo a uma versão identificada da aplicação pedida.Em uma modalidade, um agente de coleção recolhe ascredenciais associadas com um usuário da máquina de clienteresponsiva a um pedido recebido da máquina de cliente parao acesso a um recurso. Em uma outra modalidade, a máquinade cliente é responsiva avaliado às credenciais recebidas.Em ainda uma outra modalidade, uma determinação é feitapara fluir a aplicação enumerada a uma máquina virtualresponsiva às credenciais recolhidas. Em um outro aspecto,em um sistema para fornecer o acesso a uma computaçãoambiente por uma máquina do corretor a uma máquina decliente, uma máquina da execução executando um hypervisorque fornece o acesso aos recursos de ferragem exigidos peloambiente de computação, um instrumento compreende umtransceptor, um agente do usuário, um componente daidentificação, um componente da execução, e uma gerênciacomponente. O transceptor recebe as credenciais associadascom um usuário de uma máquina de cliente, enumera umapluralidade de recursos disponíveis ao usuário da máquinade cliente, responsivo às credenciais recebidas, e recebeum pedido executar um recurso enumerado. 0 agente dousuário seleciona um da número predeterminado de métodospara executar o recurso pedido, responsivo a uma política,o número predeterminado de métodos que incluem um métodopara fornecer o acesso ao recurso pedido em um ambiente decomputação fornecido por uma máquina virtual. 0 componenteda identificação comunica-se com o agente do usuário e comum componente da gerência da máquina virtual e recebe umaidentificação do recurso pedido e uma identificação de umade uma pluralidade de máquinas virtuais, a máquina virtualidentificada que fornece o ambiente de computação. 0componente da execução provisions identificado máquinavirtual. O componente da gerência estabelece uma conexão nomeio a máquina de cliente e a máquina virtual identificada.Em uma modalidade, o instrumento inclui um motor dapolítica. Em outros a modalidade, o motor da políticaaplica uma política às credenciais recebidas e faz umadecisão do controlo de acessos. Em ainda uma outramodalidade, o agente do usuário seleciona um do númeropredeterminado de métodos executando a aplicação pedida,responsivos à decisão do controlo de acessos. Em umamodalidade, o agente do usuário flui a aplicação pedida a amáquina virtual identificada para a execução. Em uma outramodalidade, o agente do usuário seleciona um método fluindoa aplicação pedida à máquina de cliente. Em uma modalidade,a máquina virtual identificada fornece o recurso dados desaída gerados por uma execução do recurso na computaçãoambiente através de um protocolo do nível da apresentação.Em uma outra modalidade, o componente da identificaçãoidentifica uma máquina virtual responsiva a uma avaliaçãoda máquina de cliente. Em ainda uma outra modalidade, ocomponente da identificação identifica uma máquina virtualresponsiva a uma avaliação do pedido recurso. Em contudouma outra modalidade, o componente da identificaçãoseleciona uma máquina virtual responsiva a uma política. Emalguma modalidade, a gerência o componente estabelece umaconexão entre a máquina de cliente e máquina virtualidentificada usando um protocolo da apresentação-camada.Breve descrição dos desenhos Estes e outros aspectos destainvenção serão prontamente aparentes da descrição detalhadaabaixo e dos desenhos adicionados, a que são significadosilustre e para não limitar a invenção, e em qual: 0 FIG. 1é um diagrama de bloco de uma modalidade de um ambiente emque a a máquina de cliente alcança um recurso de computaçãofornecido por uma máquina remota; Figos. 1 A e IB sãodiagramas de bloco que descrevem modalidades de típicocomputadores úteis nas modalidades com máquinas remotas oumáquinas de cliente; FIGO. 2A é um diagrama de bloco de umsistema para fornecer o acesso a um recurso; FIGO. 2B é umdiagrama de bloco de uma modalidade de um sistema em que aa máquina de cliente pode iniciar a execução de um programade aplicação para determinar a vizinhança do recurso dessamáquina de cliente; FIGO. 2C é um diagrama de bloco de umamodalidade em que uma máquina de cliente usa uma aplicaçãodo navegador de rede para determinar sua vizinhança dorecurso; Figos. 3A, 3B, e 3C são diagramas de bloco dasmodalidades dos sistemas de uma comunicação entre umamáquina de cliente e umas máquinas remotas múltiplas; FIGO.3D é um diagrama de bloco de uma modalidade de um sistemaem que a a máquina de cliente pode alcançar um recurso deum Página de rede da vizinhança do recurso indicado nessamáquina de cliente;
FIGO. 3E é um diagrama de bloco de uma modalidade deum sistema em que a a máquina remota actua como umintermediário para uma exploração agrícola da máquina; OFIG. 4 é um diagrama de bloco de uma modalidade de umavizinhança do recurso aplicação em que uma máquina decliente está em uma comunicação com o um do telecontrolemáquinas; O FIG. 5 é um diagrama de bloco de uma modalidadede computação em que um cliente a máquina está em umacomunicação com uma máquina remota que tem um recursoinstalado programa de aplicação da vizinhança da invenção;FIGO. 6A é um tiro de tela de uma modalidade de umaexposição de uma máquina de cliente após a vizinhança dorecurso um programa de aplicação é executado; FIGO. 6B é umtiro de tela de uma outra modalidade de uma tela deexposição da a máquina de cliente após o programa deaplicação da vizinhança do recurso é executada; FIG. 7 A éum diagrama de bloco de uma modalidade de um fornecimentoda rede acesso politica-baseado aos programas de aplicaçãopara uma máquina; FIGO. 7B é um diagrama de bloco quedescreve uma modalidade mais detalhada da motor dapolítica; O FIG. 8 é um fluxograma que descreve umamodalidade de um processo para fornecer alcance a umrecurso; O FIG. 9 é um diagrama de fluxo que descreve umamodalidade de um processo para elegendo um nó da gerência;O FIG. 10 é um diagrama de fluxo que descreve umamodalidade de um processo a informação da actualizaçãocoletada pelo nó da gerência; 0 FIG. 11 é um diagrama debloco que descreve uma modalidade de uma exploraçãoagrícola da máquina incluindo primeiros e segundosprocessos da gestão de rede; O FIG. 12 é um diagrama debloco que descreve uma modalidade de uma máquina virtualcomponente da gerência; 0 FIG. 13 é um diagrama de blocoque descreve uma modalidade de uma sessão componente dagerência; 0 FIG. 14 é um diagrama de bloco que descreve umamodalidade de um sistema em que uma movimentação associadacom a máquina de cliente 10 é feita disponível a umambiente de computação; FIGO. 15A é um diagrama de blocoque descreve uma modalidade de uma máquina de clientedispositivos de exposição múltiplos de apoio da máquina decliente; FIGO. 15B é um diagrama de bloco que descreve umamodalidade de um sistema para dispositivos de exposiçãomúltiplos de apoio da máquina de cliente FIGO. 15C é umdiagrama de bloco que descreve uma modalidade de um iníciode uma sessão da sessão mecanismo que fornece a sustentaçãopara dispositivos de exposição múltiplos da máquina decliente; FIGO. 16A é um diagrama de fluxo que descreve umamodalidade das etapas para ser tomado para fornecer umadisposição desejada da exposição a uma máquina de clienteque tem o múltiplo dispositivos de exposição; FIGO. 16B éum diagrama de fluxo que descreve uma modalidade de umprocesso a modifique uma mensagem da janela; FIGO. 16C é umdiagrama de fluxo que descreve uma modalidade das etapastomadas para associar uma disposição da exposição com umamáquina de cliente; O FIGO 16D é um diagrama de fluxo quedescreve uma modalidade das etapas tomadas a mude umadisposição desejada da exposição para uma máquina decliente; O FIG. 17 é um diagrama de bloco que descreve umamodalidade de um sistema em que uma máquina remotaautentica o usuário de uma máquina de cliente; 0 FIG. 18 éum diagrama de fluxo que descreve uma modalidade das etapastomadas a alcance uma pluralidade de limas que compreendemum programa de aplicação; O FIG. 19 é um diagrama de blocoque descreve uma modalidade de uma máquina de cliente 10que incluem uma aplicação que flui o cliente, um serviço defluência e uma isolação ambiente; O FIG. 20 é um diagramade fluxo que descreve uma modalidade das etapas tomadas pora máquina de cliente para executar uma aplicação; O FIG. 21é um diagrama de bloco descreve uma modalidade de umapluralidade de limas de aplicação; FIGO. 22A é um diagramade fluxo que descreve uma modalidade das etapas tomadaspara permitir a execução de programa distribuídatransparente em uma máquina remota com a seleção dorepresentante gráfico do indicia de um arquivo de dadosencontrado sobre a máquina de cliente; FIGO. 22B é umdiagrama de fluxo que descreve uma modalidade das etapastomadas por uma máquina remota para permitir a execução deprograma distribuída transparente em a máquina remota com aseleção do representante gráfico do indicia da arquivo dedados situado na máquina de cliente; O FIG. 23 é umdiagrama de fluxo que descreve uma outra modalidade dasetapas tomado para permitir a execução de programadistribuída transparente em uma máquina de cliente com aseleção do representante gráfico do indicia de um arquivode dados situado em a máquina remota; O FIG. 24 é umdiagrama de fluxo que descreve uma modalidade das etapastomadas a negocie o protocolo para uma conexão entre umamáquina de cliente e um telecontrole máquina; O FIG. 2 5 éum diagrama de bloco que descreve uma modalidade de umamáquina remota e uma máquina de cliente que estabelece umprotocol stack para uma comunicação; O FIG. 2 6 é umdiagrama de bloco que descreve uma modalidade de umamáquina de cliente arquitetura; O FIG. 27 é um diagrama debloco que descreve uma modalidade de uma comunicação entreuma máquina de cliente e uma exploração agrícola damáquina; O FIG. 28 é um diagrama de bloco que descreve umamodalidade de uma máquina de cliente arquitetura; O FIG. 29é um diagrama de fluxo que descreve uma modalidade dasetapas tomadas à aplicação da exposição output em um Páginade rede; O FIG. 30 é um diagrama de fluxo que descreve umamodalidade das etapas tomadas lig a uma máquina virtualidentificada por uma lima de configuração do hiperlink;
O FIGO 31 é um diagrama de bloco que descreve umamodalidade de um sistema arquitetura em que um multiplexeré usado para transmitir dados mais de um máquina decliente; O FIG. 32 é um diagrama de bloco que descreve umaoutra modalidade de um sistema arquitetura em que ummultiplexer é usado para transmitir dados mais de ummáquina de cliente; O FIG. 33 é um diagrama de bloco quedescreve uma modalidade de uma arquitetura para indicar aaplicação output em um Página de rede; O FIG. 34 é umdiagrama de bloco que descreve uma outra modalidade do aarquitetura para indicar a aplicação output em um Página derede; O FIG. 3 5 é um diagrama de bloco que descreve umaoutra modalidade do a arquitetura para indicar a aplicaçãooutput em um Página de rede; 0 FIG. 3 6 é um diagrama debloco que descreve uma outra modalidade do a arquiteturapara indicar a aplicação output em um Página de rede; 0FIG. 37 é um diagrama de bloco que descreve uma modalidadede uma máquina de cliente recebendo a janela atribua dadosatravés de uma canal virtual; 0 FIG. 3 8 é um diagrama debloco que descreve uma máquina de cliente conectada a maisdo que uma máquina remota; 0 FIG. 39 é um diagrama de fluxoque descreve uma modalidade das etapas tomadas a detecte etransmita mudanças usuário-iniciadas da exposição; 0 FIG.é um diagrama de fluxo que descreve uma modalidade dasetapas tomadas a detecte e transmita mudanças cliente-iniciadas da exposição; 0 FIG. 41 é um diagrama de fluxoque descreve uma modalidade para permitir transmissão dejanelas sem emenda entre uma máquina de cliente e umtelecontrole máquina; 0 FIG. 4 2 é um diagrama de bloco quedescreve uma modalidade de um agente; O FIG. 4 3 é umdiagrama de bloco que descreve uma modalidade de um sistemapara permitindo a modalidade sem emenda do windowing entreuma máquina de cliente e um telecontrole ambientes decomputação; O FIG. 4 4 é um diagrama de fluxo que descreveuma modalidade das etapas recolhidas um método de receberdados do atributo da janela e dados gráficos associou comjanelas remotas dos sistemas de exploração virtualizados edo funcionamento nativo sistemas; 0 FIG. 4 5 é um diagramade bloco de um sistema para fornecer um cliente uma conexãode confiança a um serviço de acolhimento de acordo com umamodalidade da invenção; O FIG. 46 é um diagrama de bloco deum sistema para fornecer um cliente uma conexão deconfiança a um serviço de acolhimento de acordo com umaoutra modalidade da invenção; 0 FIG. 4 7 descreve ascomunicações que ocorrem sobre uma rede de acordo com umamodalidade da invenção; 0 FIG. 4 8 descreve as comunicaçõesque ocorrem sobre uma rede de acordo com uma outramodalidade da invenção; 0 FIG. 4 9 descreve um processo paraencapsulating uma pluralidade de protocolos secundáriosdentro de um primeiro protocolo para uma comunicação sobreuma rede de acordo com uma modalidade da invenção; O FIG.50 é um diagrama de bloco de uma modalidade de um sistemainformático para manter credenciais da autenticação deacordo com a invenção; 0 FIG. 51 é um diagrama de fluxo dasetapas seguidas em uma modalidade do sistema informático deFIG. 5 para manter credenciais da autenticação durante umaprimeira sessão de comunicação de acordo com a invenção; 0FIG. 52 é um diagrama de fluxo das etapas seguidas em umamodalidade do sistema informático de FIG. 50 para mantercredenciais da autenticação durante uma segunda sessão decomunicação que segue a terminação da primeira sessão decomunicação do FIGO. 53A de acordo com a invenção; 0 FIG.53 é um diagrama de bloco de uma modalidade de um sistemainformático para manter credenciais da autenticação deacordo com uma outra modalidade da invenção; O FIG. 54 é umdiagrama de fluxo das etapas seguidas em uma modalidade dosistema informático de FIG. 53 para manter credenciais daautenticação durante uma primeira sessão de comunicação deacordo com a invenção; 0 FIG. 55 é um diagrama de fluxo dasetapas seguidas em uma modalidade do sistema informático deFIG. 53 para manter credenciais da autenticação durante umasegunda sessão de comunicação que segue a terminação daprimeira sessão de comunicação de FIG. 53 de acordo com ainvenção; 0 FIG. 5 6 é um diagrama de fluxo das etapasseguidas em uma modalidade do sistema informático de FIG.53 para manter credenciais da autenticação durante umasegunda sessão de comunicação que segue a terminação de umasegunda canal de comunicação da primeira sessão decomunicação de FIG. 5 3 de acordo com a invenção; 0 FIG. 57é um diagrama de bloco de um sistema para mantercredenciais da autenticação e para fornecer um cliente umaconexão de confiança a um serviço de acolhimento de acordocom uma modalidade da invenção; O FIG. 58 é um diagrama debloco de um sistema para manter credenciais da autenticaçãoe para fornecer um cliente uma conexão de confiança a umserviço de acolhimento de acordo com uma outra modalidadeda invenção; O FIG. 59 é um diagrama de bloco de um sistemapara manter credenciais da autenticação e para fornecer umcliente uma conexão de confiança a um serviço deacolhimento de acordo com uma outra modalidade da invenção;
O FIG. 60 é um diagrama de bloco de um sistema para mantercredenciais da autenticação e para fornecer um cliente umaconexão de confiança a um serviço de acolhimento de acordocom uma outra modalidade da invenção; 0 FIG. 61 é umdiagrama de bloco de um sistema para fornecer um clienteuma conexão de confiança a um serviço de acolhimento e unscomponentes inclusivos mais adicionais para reconectar ocliente a um serviço de acolhimento de acordo com umamodalidade da invenção; 0 FIG. 62 é um diagrama de bloco deuma modalidade de um sistema para fornecer um cliente umaconexão de confiança a um serviço de acolhimento e unscomponentes inclusivos mais adicionais para reconectar ocliente a um serviço de acolhimento; 0 FIG. 63 é umdiagrama de bloco de uma modalidade de FIG. 61 componentesmais inclusivos para inicialmente conectar o cliente a umserviço de acolhimento; O FIG. 64 é um diagrama de bloco dosistema de FIG. 62 componentes mais inclusivos parainicialmente conectar o cliente a um serviço de acolhimentoe para manter credenciais da autenticação de acordo com umamodalidade da invenção; O FIG. 65 é um diagrama de fluxo deum método para comunicações da rede de acordo com umamodalidade da invenção; O FIG. 66 é um diagrama de fluxo deum método para reconectar o cliente aos serviços deacolhimento; FIGOS. 67-69 são os fluxograma de um métodopara conectar um cliente a uma pluralidade de serviços deacolhimento de acordo com uma modalidade da invenção; OFIG. 70 é um diagrama de fluxo de um método para fornecerum cliente uma conexão de confiança aos serviços deacolhimento e para reconectar o cliente aos serviços deacolhimento de acordo com uma modalidade da invenção;FIGOS. 71-72 são os fluxograma de um método para reconectarum cliente aos serviços de acolhimento de acordo com umamodalidade da invenção; O FIG. 7 3 é um diagrama de blococonceptual de uma modalidade do software e do software deservidor do cliente; O FIG. 74 é uma carta de fluxo de umamodalidade de um método para monitorar o desempenho derede; O FIG. 7 5 é uma carta de fluxo de uma modalidade deum método de operação do software de servidor; O FIG. 7 6 éuma carta de fluxo de uma modalidade de um método de geraro medidor sub- pelo cliente; O FIG. 77 é uma carta de fluxode uma modalidade de um método de gerar o medidor sub- pelocliente; O FIG. 7 8 é uma carta de fluxo de uma modalidadede um método de gerar o medidor sub- pelo usuário; 0 FIG.79 é um diagrama esquemático que descreve um sistema decomputação conectado do usuário de cliente; 0 FIG. 80 é umacarta de fluxo que descreve um método para conectar umamáquina de cliente às sessões disconnected da aplicação; 0FIG. 81 é uma carta de fluxo que descreve na modalidade ummétodo para conectar a máquina de cliente às sessões daaplicação ativa; O FIG. 82 é um diagrama esquemático quedescreve uma modalidade de uma máquina de cliente em umacomunicação com diversas máquinas remotas; 0 FIG. 83 é umdiagrama de fluxo que descreve uma modalidade das etapasrecolhidas um método para conectar um usuário de umamáquina de cliente a um ambiente de computação; 0 FIG. 84 éum diagrama de fluxo que descreve uma modalidade das etapasrecolhidas um método para conectar um usuário de umamáquina de cliente a um ambiente de computação em respostaà seleção de um elemento gráfico da interface deutilizador; O FIG. 85 é um diagrama de bloco que descreveuma modalidade de uma máquina remota capaz de conectar amáquina de cliente a uma sessão da aplicação;
O FIG. 86 é um diagrama de bloco de uma modalidade deum sistema para conectar uma máquina de cliente a umasessão da aplicação responsiva à aplicação de uma política;
O FIG. 87 é um diagrama de fluxo que descreve as etapasrecolhidas um método para conectar uma máquina de cliente auma sessão da aplicação responsiva à aplicação de umapolítica; O FIG. 88 é um diagrama de bloco que descreve umamodalidade de um sistema para fornecer, por uma máquinavirtual, o acesso a um ambiente de computação; FIGO. 8 9A éum diagrama de bloco que descreve uma modalidade de umdispositivo de armazenamento e de um dispositivo decomputação; FIGO. 8 9B é um diagrama de fluxo que descreveuma modalidade das etapas recolhidas um método parafornecer o acesso a um ambiente de computação em umdispositivo de computação através de um dispositivo dearmazenamento; FIGO. 90A é um diagrama de bloco quedescreve uma modalidade de um dispositivo da computaçãomóvel; FIGO. 90B é um diagrama de fluxo que descreve umamodalidade das etapas recolhidas um método para fornecer umambiente de computação portátil por um dispositivo dacomputação móvel; FIG. 91 A é um diagrama de bloco de umamodalidade de um dispositivo da computação móvel e de umdispositivo de computação; FIG. 91 B é um diagrama de fluxoque descreve descreve uma modalidade das etapas recolhidasum método para fornecer o acesso a um ambiente decomputação em um dispositivo de computação através de umdispositivo da computação móvel; FIGO. 92A é um diagrama debloco que descreve uma modalidade de um dispositivo dacomputação móvel e de um dispositivo de computação quecompreendem um seletor de computação do ambiente; FIGO. 92Bé um diagrama de fluxo que descreve uma modalidade dasetapas recolhidas um método para estabelecer um ambiente decomputação em um dispositivo de computação através de umdispositivo da computação móvel; FIGO. 93A é um diagrama debloco que descreve uma modalidade de um dispositivo dacomputação móvel que conecta a uma estação de embarcadouro;FIGO. 93B é um diagrama de bloco que descreve umamodalidade de uma estação de embarcadouro que conecta umdispositivo da computação móvel e um dispositivo decomputação; FIGO. 93C é um diagrama de bloco que descreveuma modalidade de um dispositivo da computação móvel e quecomputa o dispositivo que tem um mecanismo de embarcadouro;FIGO. 93D é um diagrama de fluxo que descreve umamodalidade das etapas recolhidas um método de fornecer a umdispositivo da computação móvel uns ou vários recursos deferragem; FIGO. 94A é um diagrama de bloco que descreve umamodalidade de um dispositivo da computação móvel que temuma pluralidade de processadores; FIGO. 94B é um diagramade fluxo que descreve uma modalidade das etapas recolhidasum método para o interruptor, por um dispositivo dacomputação móvel, entre o uso de processadores múltiplos; 0FIG. 95 é um diagrama de bloco que descreve uma modalidadede um sistema para fornecer a um primeiro agente docliente, através de um segundo agente do cliente em umaprimeira máquina remota, os dados de saída gerados por umrecurso executando em uma máquina virtual fornecida por umasegunda máquina remota; O FIG. 96 é um diagrama de blocoque descreve uma modalidade de um sistema para fornecer aum primeiro agente do cliente, através de um segundo agentedo cliente em uma primeira máquina remota, os dados desaída gerados por um recurso executando em uma máquinavirtual fornecida por uma segunda máquina remota; e 0 FIG.97 é um diagrama de bloco que descreve uma modalidade de umsistema para identificar, por uma máquina do coordenador,uma máquina do trabalhador que fornece, através de umamáquina virtual, o acesso a um ambiente de computação.Descrição detalhada da invenção Referindo agora FIG. 1, umdiagrama de bloco de uma modalidade do ambiente em que umamáquina de cliente 10, IO1 alcança um recurso de computaçãofornecido por uma máquina remota, 30, 30' , 30" , 30" 1 émostrado. Uma máquina remota 3 0 tais como a máquina remota30, 30' , 3 0" , ou 3 0" ' (referido daqui por diantegeralmente como a máquina remota 30) aceita conexões de umusuário de uma máquina de cliente 10. Embora somente duasmáquinas de cliente 10 e somente quatro máquinas remotas 30são descritas na modalidade mostrada em FIG. 1, ele deveser compreendido que o sistema pode fornecer o múltiplo umde alguns ou de cada um daqueles componentes. Por exemplo,em uma modalidade, o sistema pode incluir múltiplo,máquinas remotas lógico-agrupadas 30, uns ou vários de queé disponível para fornecer uma máquina de cliente 10, 10'alcance aos recursos de computação. Em estas modalidades, ogrupo lógico de máquinas remotas podem ser referidas comoum " farm" do usuário; ou " exploração agrícola da máquina," indicado no FIGO. IA como a exploração agrícola 3 8 damáquina. Em algumas destas modalidades, as máquinas remotas30 podem estar geográfica dispersado. Assim, o grupo dasmáquinas remotas 3 0 agrupadas logicamente como a aexploração agrícola 3 8 da máquina pode ser interconectadausando uma rede do wide-area (MACILENTO) conexão, conexãodo Metropolitan Area Network (HOMEM) , uma rede de árealocal (LAN) uma rede da armazenamento-área (SAN) , ou umarede pública tal como o Internet. Por exemplo, umaexploração agrícola 3 8 da máquina pode incluir as máquinasremotas 30 fisicamente localizado em posições geográficadiversas em torno do mundo, incluir diferente continentes,regiões de um continente, países, regiões de um país,estados, regiões de um estado, de cidades, de regiões deuma cidade, de terrenos, de regiões de um terreno, ou dequartos. A transmissão de dados apressa-se entre asmáquinas remotas 30 na exploração agrícola 38 da máquinapode ser aumentado se as máquinas remotas 3 0 são conectadasusando um local -area conexão da rede (LAN) ou algumformulário da conexão direta. Uma exploração agrícola 38 damáquina pode ser administrado como uma única entidade. Umserviço centralizado pode fornecer a gerência para aexploração agrícola 3 8 da máquina. Em algumas modalidades,umas ou várias máquinas remotas 3 0 elegem um telecontroleparticular máquina 3 0 para fornecer a funcionalidade daremota 3 0 pode ser referida como um usuário da gerência,gerência nó, ou processo da gerência. 0 nó 3 0 da gerênciapode recolher e armazenar a informação sobre umapluralidade das máquinas remotas 30, responde aos pedidospara o acesso aos recursos hospedados pelas máquinasremotas 30, e permite estabelecimento das conexões entre asmáquinas de cliente 10 e máquinas remotas 30. Em outrasmodalidades, um administrador designa um ou vário otelecontrole máquinas 3 0 para fornecer a funcionalidade dagerência para a exploração agrícola 38 da máquina.
Alternativamente, a gerência da exploração agrícola 38 damáquina pode ser descentralizada. Em algumas modalidades,umas ou várias máquinas remotas 3 0 compreendem componentes,subsistemas e módulos para suportar uns ou vários serviçosde gestão para exploração agrícola 38 da máquina. Em umadestas modalidades, umas ou várias máquinas remotas 3 0fornecem a funcionalidade para a gerência de dadosdinâmicos, incluindo técnicas para segurar o failover, aréplica dos dados, e o aumento do vigor do exploraçãoagrícola 3 8 da máquina. Em outras destas modalidades, um ouvário telecontrole as máquinas 3 0 incluem capacidades dascomunicações para permitir o uns ou vários máquinas remotas30 a interagir um com o outro para compartilhar daresponsabilidade para tarefas da gerência. Cada máquinaremota 30 pode comunicar-se com o a loja persistente e, emalgumas modalidades, com uma loja dinâmica. A lojapersistente pode fisicamente ser executada em um disco,exploração agrícola do disco, a disposição redundante dosdiscos independentes (RAID), de disco compacto writeable,ou de algum o outro dispositivo que permitem que os dadossejam lidos e redigidos e que mantém escrito dados se opoder é removido do dispositivo de armazenamento. Um únicodispositivo físico pode forneça o armazenamento para umapluralidade de lojas persistentes, isto é, um únicodispositivo físico pode ser usado para fornecer a lojapersistente para mais de uma exploração agrícola 38 damáquina. A loja persistente mantém os dados de estáticaassociados com cada máquina remota 3 0 na exploraçãoagrícola 3 8 da máquina e nos dados globais usados por todasas máquinas remotas 3 0 dentro do exploração agrícola 3 8 damáquina. Em uma modalidade, a loja persistente pode manterdados do usuário em um modelo de dados de pouco pesodo Directory Access Protocol (LDAP). Em outras modalidades,a loja persistente armazenam dados do usuário em um ODBC-base de dados complacente. Para as finalidades destadescrição, o " do termo; data" de estática; refere os dadosque não mudam freqüentemente, isto é, os dados que mudamsomente no base de hora em hora, diária, ou semanal, oudados que nunca mudam. Os dados armazenados pela lojapersistente podem replicated para a confiabilidadefinalidades fisicamente ou logicamente. Por exemplo, aredundância física pode ser desde que usando um jogo dediscos redundantes, espelhados, cada um que fornece umacópia do dados. Em outras modalidades, a base de dadosprópria pode ser utilização replicated técnicas padrão dabase de dados para fornecer cópias múltiplas da base dedados. Em umas modalidades mais adicionais, físicas e aréplica lógica podem ser usadas simultaneamente. Comodescrito acima, as máquinas remotas 30 armazenam o "static" dados, isto é, dados que persistem através dassessões de cliente, na loja persistente. Escrita ao a lojapersistente pode tomar relativamente longos períodos detempo. Para minimizar acessos a a loja persistente, asmáquinas remotas 30 pode desenvolver um lógico, comum basede dados (isto é, a loja dinâmica) que é acessível por todoo telecontrole máquinas 30in a exploração agrícola 38 damáquina para alcançar e armazenar alguns tipos de dados. Aloja dinâmica pode fisicamente ser executada na memórialocal de umas únicas ou máquinas remotas múltiplas 3Oin aexploração agrícola 38 da máquina. O local a memória podeser memória de acesso aleatório, disco, exploração agrícolado disco, uma disposição redundante de discos independentes(RAID), ou algum outro dispositivo de memória que permitirque os dados sejam lidos e redigidos. Geralmente, os dadosarmazenados na loja dinâmica são os dados que sãotipicamente perguntado ou mudado freqüentemente durante otempo de execução. Exemplos de tais dados (daqui por dianteé referido como dados do tempo de execução) o nível atualda carga de trabalho para cada um do telecontrole máquinas30in a exploração agrícola 3 8 da máquina, o s tatus dasmáquinas remotas 3 0 no faça à máquina a exploração agrícola38, dados de sessão do cliente, o número de máquinasvirtuais suportadas por uma máquina remota 30, a identidadedos sistemas de exploração suportados por a máquina remota30, e informação licenciando. Em uma modalidade, a lojadinâmica compreende umas ou várias tabelas, cada qualarmazena registros do atribuir-valor emparelha-se. Todo onúmero de tabelas pode existem, mas os registros das lojasde cada tabela de somente um tipo. As tabelas estão, emalgum modalidades identificadas pelo nome. Assim, nestamodalidade, telecontrole dois faz à máquina 3 0 que usam omesmo nome para abrir uma tabela referem o mesmos lógicostabela. A loja dinâmica (isto é, a coleção de todas astabelas gravadas) pode ser personificada em váriasmaneiras. Em uma modalidade, a loja dinâmica écentralizada; isto é, todos os dados do tempo de execuçãosão armazenados na memória de uma máquina remota 3 0 naexploração agrícola 3 8 da máquina. Que o usuário se operaem uma maneira similar ao nó da gerência descreveu acima,isto é, todas máquinas remotas restantes 30 na exploraçãoagrícola 3 8 da máquina comunicam-se com o usuário que actuaenquanto os dados centralizados armazenam ao procurar oacesso a esses dados do tempo de execução. Em uma outramodalidade, cada máquina remota 3 0 na exploração agrícola38 da máquina mantém uma cópia cheia da loja dinâmica.
Aqui, cada máquina remota 3 0 comunica-se com cada outramáquina remota 3 0 para manter sua cópia da loja dinâmicamoderna. Em uma outra modalidade, cada máquina remota 3 0mantém seus próprios dados do tempo de execução e comunica-se com cada outra máquina remota 3 0 ao procurar obter dadosdo tempo de execução deles. Assim, por exemplo, uma máquinaremota 3 0 que tenta encontrar um programa de aplicaçãopedido pela máquina de cliente 10 pode comunicar-sediretamente com cada outra máquina remota 3 0 na exploraçãoagrícola 3 8 da máquina para encontrar uns ou váriosusuários hospedar a aplicação pedida. Para as exploraçõesagrícolas 3 8 da máquina que têm um grande número máquinasremotas 30, o tráfego de rede produzido por estasmodalidades pode tornar-se pesado. Uma modalidade alivia otráfego de rede pesado designando um subconjunto dasmáquinas remotas 3Oin uma exploração agrícola 38,tipicamente dois ou mais da máquina, como o " coletorpoints." Geralmente, um ponto do coletor é um usuário quecolete dados run-time. Cada ponto do coletor armazena osdados do tempo de execução coletados de determinadas outrasmáquinas remotas 3Oin a exploração agrícola 3 8 da máquina.
Cada máquina remota 3 0 na exploração agrícola 3 8 da máquinaé capaz do funcionamento como, e é conseqüentemente capazda designação como, um ponto do coletor. Em uma modalidade,cada ponto do coletor armazena uma cópia da loja dinâmicainteira. Em uma outra modalidade, cada ponto do coletorarmazena uma parcela da loja dinâmica, isto é, mantém dadosdo tempo de execução de um tipo de dados particular. 0 tipode dados armazenados por uma máquina remota 3 0 pode serpredeterminado de acordo com uns ou vários critérios. Porexemplo, tipos diferentes da loja das máquinas remotas3Omay de dados baseados em sua ordem do carregador.
Alternativamente, o tipo de dados armazenados por umamáquina remota 3 0 pode ser configurado por um administradorque usa a ferramenta de administração 14 0. Nestasmodalidades, a loja dinâmica é distribuída entre máquinasdois ou mais remotos 30in a exploração agrícola 38 damáquina. As máquinas remotas 30 não designadas como pontosdo coletor sabem as máquinas remotas 3 0 em uma exploraçãoagrícola 3 8 da máquina que são designadas como pontos docoletor. Uma máquina remota 3 0 não designada como um pontodo coletor comunica-se com um ponto particular do coletorao entregar e ao pedir dados do tempo de execução.Conseqüentemente, os pontos do coletor iluminam o tráfegode rede porque cada máquina remota 3 0 na exploraçãoagrícola 3 8 da máquina se comunica com uma máquina remota30 do único ponto do coletor, um pouco do que com cadaoutra máquina remota 30, ao procurar alcançar os dados dotempo de execução. A exploração agrícola 3 8 da máquina podeser heterogênea, isto é, umas ou várias das máquinasremotas 3 0 podem operar-se de acordo com um tipo daplataforma do sistema de exploração (por exemplo, WINDOWSNT, manufaturados por Microsoft Corp. de Redmond, deWashington), quando umas ou várias das outras máquinasremotas 3 0 puderem se operar de acordo com um outro tipo deplataforma do sistema de exploração (por exemplo, Unix oulinux). Adicionalmente, uma exploração agrícola heterogênea38 da máquina pode incluir umas ou várias máquinas remotas30 que operam-se de acordo com um tipo de sistema deexploração, quando umas ou várias outras máquinas remotas30 executarem uns ou vários tipos de hypervisors um poucodo que sistemas de exploração. Nestas modalidades, oshypervisors podem ser usados para emular a ferragemvirtual, para dividir a ferragem física, para virtualizar aferragem física, e para executar as máquinas virtuais quefornecem o acesso aos ambientes de computação. Hypervisorspode incluir aqueles manufaturados por VMWare, Inc., dePalo Alto, Califórnia; o hypervisor de Xen, um produto dafonte aberta cujo o desenvolvimento seja vigiado porXenSource, Inc., de Palo Alto; o Virtual Server ou oshypervisors virtuais do PC forneceram por Microsoft ou poroutro. Em algumas modalidades, um hypervisor executa em umamáquina que executa um sistema de exploração. Em uma destasmodalidades, uma máquina que executam um sistema deexploração e um hypervisor podem ser ditos ter um sistemade exploração do anfitrião (o sistema de exploração queexecuta na máquina), e um sistema de exploração doconvidado (um sistema de exploração que executa dentro deuma divisória do recurso de computação fornecida pelohypervisor). Em outras modalidades, um hypervisor interagediretamente com a ferragem em uma máquina, em vez daexecução em um sistema de exploração do anfitrião. Em umadestas modalidades, o hypervisor pode ser dito executar no" metal desencapado, " referência a ferragem que compreendea máquina. As máquinas remotas 30 podem ser usuários,usuários do arquivo, servidores de aplicações,dispositivos, dispositivos de rede, passagens, passagens deaplicação, usuários da passagem, usuários virtuais doization, usuários da distribuição, ou guarda-fogos. Amáquina remota 30 pode ser um usuário do SSL VPN. A máquina
remota 30 pode ser um dispositivo da aceleração daaplicação. Para as modalidades em que a máquina remota 30 éum dispositivo da aceleração da aplicação, a máquina remota30 pode fornecer a funcionalidade que inclui afuncionalidade do guarda-fogo, a funcionalidade do guarda-fogo da aplicação, ou a funcionalidade do equilíbrio decarga. Em algumas modalidades, a máquina remota 30compreende um dispositivo tal como uma da linha dedispositivos manufaturados pelo grupo de trabalhos em rededa aplicação de Citrix, de San Jose, de CA, ou Prata PicoSistemas, Inc., de Mountain View, CA, Ou de RiverbedTecnologia, Inc., de San Francisco, de CA, ou de F5 Redes,Inc., de Seattle, de WA, ou de Zimbro Redes, Inc., deSunnyvale, CA. Em algumas modalidades, uma máquina remota30 compreende uma autenticação remota seletor-no serviço dousuário, referido como um usuário do RAIO. Em outrasmodalidades, as máquinas remotas 30 podem ter a capacidadefuncionar como um uso de recurso mestre da monitoração donó da informação da rede de outras máquinas na exploraçãoagrícola 38. Em ainda outras modalidades, uma máquinaremota 30 podem fornecer Diretório ativo. As máquinasremotas 30 podem ser referidas como máquinas da execução,máquinas intermediárias, máquinas do corretor, máquinas docorretor intermediário, ou máquinas do trabalhador Em umamodalidade, as máquinas remotas 30 na exploração agrícola38 da máquina podem ser armazenadas em sistemas high-density do racking, junto com sistemas associados doarmazenamento, e ser ficadas situadas em um centro de dadosda empresa. Nesta modalidade, consolidar as máquinas destamaneira pode melhorar a viabilidade do sistema, segurançados dados, a segurança física do sistema, e do desempenhode sistema encontrando máquinas e sistemas do armazenamentodo elevado desempenho em redes localizadas do elevadodesempenho. Centralizar as máquinas e os sistemas doarmazenamento e acoplá-los com as ferramentas avançadas daadministração de sistemas permitem um uso mais eficiente derecursos da máquina. As máquinas de cliente 10 podemigualmente ser referidas como valores -limite, nós docliente, clientes, ou máquinas locais. Em algumasmodalidades, as máquinas de cliente 10 têm a capacidadefuncionar porque ambas as máquinas de cliente que procuramo acesso aos recursos e porque acesso de fornecimento dasmáquinas remotas 3 0 aos recursos remotamente hospedadospara outras máquinas de cliente 10. Em algumas modalidades,as máquinas remotas 30 podem pedir o acesso aos recursosremoto-hospedados. Em uma destas modalidades, as máquinasremotas 3 0 podem ser referidas como as máquinas de cliente10. Em uma modalidade, a máquina de cliente 10 comunica-sediretamente com a uma das máquinas de cliente 3 0 em umaexploração agrícola 38 da máquina. Em uma outra modalidade,a máquina de cliente 10 executa uma aplicação paracomunicar-se com o telecontrole máquina 3 0 em umaexploração agrícola 3 8 da máquina. Em contudo uma outramodalidade, cliente a máquina 10 comunica-se com uma dasmáquinas remotas 3 0 através de uma passagem, como umapassagem de aplicação. Em algumas modalidades, a máquina decliente 10 comunica-se com a máquina remota 30 naexploração agrícola 3 8 da máquina sobre a ligação decomunicações 150. Sobre a ligação de comunicações 150, amáquina de cliente 10 podem, por exemplo, pedir o acesso aou a execução de vários recursos fornecido pelas máquinasremotas 30, tais como aplicações, ambientes de computação,máquinas virtuais, ou hypervisors hospedados perto ouexecutando nas máquinas remotas 30, 30' , 30" , e 30' " naexploração agrícola 38 da máquina. A máquina de cliente 10,101 recebe para a saída da exposição dos resultados daexecução do recurso ou a saída de interação entre a máquinade cliente 10 e as aplicações ou a computação os ambientesforneceram pelas máquinas remotas 30. Em outra destes asmodalidades, sobre a ligação de comunicações 150, a máquinade cliente 10 podem receba a saída das aplicações queexecutam em umas ou várias máquinas virtuais em a máquinaremota 30, 30' , 30" , e 30' "na exploração agrícola 3 8 damáquina. A ligação de comunicações 150 pode ser synchronousou assíncrona e podem ser uma conexão do LAN, a conexão doHOMEM, ou uma conexão MACILENTO. Adicionalmente, a ligaçãode comunicações 150 pode ser uma ligação sem fio, tal comouma canal infravermelha ou faixa satélite. A ligação decomunicações 15 0 pode usar um protocolo da camada detransporte como o TCP/IP ou o algum protocolo da camada deaplicação, tal como transferência do hypertext Protocolo(HTTP), Extensible Markup Language (XML), Computaçãoindependente Protocolo da arquitetura (AIC) manufaturadopor Citrix Sistemas, Inc. do Ft. Lauderdale, Florida, ou oprotocolo remoto do Área de trabalho manufaturado peloMicrosoft Corporation de Redmond, Washington. Em umamodalidade, a ligação de comunicações 150 usa um protocolode Wi-Fi. Em ainda uma outra modalidade, a ligação decomunicações 150 usa um Internet Protocol móvel. A ligaçãode comunicações 15 0 pode fornecer a funcionalidade dascomunicações através de uma variedade de conexões queincluem linhas padrão, LAN ou MACILENTO ligações (porexemplo, TI, T3, 56 kb, X.25, SNA, DECnet) , conexões defaixa larga (ISDN, Relê de quadro, ATM, Ethernet dogigabit, Ethernet-sobre-SONET), e rádio conexões ou algumacombinação disso. As conexões podem ser estabelecidasusando a variedade dos protocolos de comunicação (porexemplo, TCP/IP, IPX, SPX, NetBIOS, Ethernet, ARCNET,SONET, ASAO, Fiber Distributed Data Interface (FDDI),RS2 3 2, IEEE 802.11, IEEE 802.11 a, IEEE 802.11 b, IEEE802.11 g, CDMA, G/M, WiMax e conexões assíncronas diretas).Em uma modalidade, a máquina remota 3 0 e a máquina decliente 10 comunica-se através de qualquer tipo e/ou dá-seforma da passagem ou o protocolo da escavação de um túnelcomo fixa a camada de soque te (SSL) ou a camada detransporte Segurança (TLS), ou o protocolo da passagem deCitrix manufaturado por Citrix Sistema, Inc. do Ft.Lauderdale, Florida. 0 sistema informático 100 pode incluiruma rede conecte a inclusão de um adaptador de redeinterno, cartão de relação da rede, PCMCIA cartão de rede,adaptador de rede da barra-ônibus do cartão, adaptador darede wireless, rede do USB adaptador, modem ou algum outrodispositivo apropriados para conectar o sistema informático100 a algum tipo de rede capaz de uma comunicação e daexecução as operações descreveram nisto. 0 sistemainformático 100 pode suportar dispositivos da instalação,tais como a movimentação de disco flexível para receberdiscos flexíveis tais como discos de 3.5 polegadas, de 5.25polegadas ou FECHE discos, uma movimentação de CD-ROM, umamovimentação de CD-R/RW, uma movimentação de DVD-ROM, redeo cartão de relação, movimentações de fita de váriosformatos, dispositivo do USB, duro-conduz ou alguns o outrodispositivo apropriado para instalar o software, osprogramas, os dados ou as limas, tais como alguns software,ou parcela disso. 0 sistema informático 100 pode igualmenteincluir um dispositivo de armazenamento de qualquer tipo eformulário para armazenar um sistema de exploração e ooutro software relacionado, e para armazenando programas dosoftware de aplicação. Em uma modalidade, o dispositivo dearmazenamento inclui umas ou várias movimentações do discorígido ou disposições redundantes de discos independentes.
Em outras modalidades, o dispositivo de armazenamentocompreende todo o tipo e formulário de suporte de memóriaou dispositivo portátil, tal como um cartão instantâneocompacto, um micro duramente movimentação ou movimentaçãodo bolso, armazenamento instantâneo encaixado, ou dearmazenamento do USB movimentação. Portátil os dispositivosde armazenamento podem geralmente ser referidos por umavariedade de nomes, incluindo mas não limitado a,movimentação do dedo, disco instantâneo, movimentaçãoinstantânea, movimentação da memória Flash, salto conduza,vara do salto, movimentação do keychain, keydrive, chave damemória, movimentação móvel, movimentação da pena, manuseiea movimentação, a chave do polegar, a movimentação dovault, a movimentação do USB, ou a vara do USB.Opcionalmente, alguns de os dispositivos ou os meios dainstalação podiam igualmente fornecer um suporte de memóriaou dispositivo.
Em algumas modalidades, a máquina de cliente 10 incluium agente do cliente que pode, por exemplo, ser executadocomo um programa de software e/ou como um dispositivo deferragem, como, por exemplo, um ASIC ou um FPGA. Um exemplode um agente do cliente com uma interface de utilizador éum navegador de rede (por exemplo, INTERNET EXPLORERmanufaturado por Microsoft Corp. de Redmond, de Washingtonou de SAFARI, manufaturado pelo Apple Computer deCupertino, de Califórnia). O agente do cliente pode usarqualquer tipo de protocolo, tal como um protocolo remoto daexposição, e pode ser, por exemplo, um agente do cliente doHTTP, um agente do cliente do ftp, um agente do cliente deOscar, um agente do cliente do telnet, um agente decomputação independente do cliente da arquitetura (AIC)manufaturado por Citrix Sistemas, Inc. do Fort Lauderdale,Florida, ou um agente remoto do cliente do protocolo doÁrea de trabalho (RDP) manufaturado por MicrosoftCorporation de Redmond, Washington. Em algumas modalidades,o agente do cliente é configurado para conectar à máquinaremota 30. Em outras modalidades (não mostradas), a máquinade cliente 10 inclui uma pluralidade de agentes do cliente,cada qual podem se comunicar com uma máquina remota 30,respectivamente. Em muitas modalidades, nas máquinasremotas 30, e nas máquinas de cliente 10, são fornecidoscomo computadores ou usuários do computador, da sortemanufaturado pelo Apple Computer, pelo Inc., de Cupertino,de Califórnia, máquinas de negócio internacionais de WhitePlains, New York, Hewlett-packard Corporaçõ de Palo Alto,de Califórnia ou de Dell Corporaçõ da rocha redonda, TX. Emalgumas modalidades, as máquinas remotas 30 podem serusuários da lâmina, usuários, lâminas da estação detrabalho ou pessoais computadores que executam oshypervisors que emulam a ferragem exigida para virtualmáquinas que fornecem o acesso aos ambientes de computação.Nestas modalidades, uma única máquina física pode fornecerambientes de computação múltiplos. As figuras IA e 1 Bdescrevem diagramas de bloco das arquitecturas informáticastípicas úteis naquelas modalidades como a máquina remota30, ou a máquina de cliente 10. segundo as indicações dasfiguras IA e 1 B, cada computador 100 inclui uma centralunidade de processamento 102, e uma unidade de memóriacentral 104. Cada computador 100 pode igualmente incluiroutros elementos opcionais, tais como uns ou váriosdispositivos de entrada/saída 130a- 130n (referidogeralmente a utilização do numerai 130 da referência) , euma memória de esconderijo 140 em uma comunicação com aunidade do processador central 102. A unidade doprocessador central 102 é todos os circuitos da lógica aque responderem e as instruções dos processos buscadas daunidade de memória central 104. Em muitos as modalidades, aunidade do processador central são fornecidas por umaunidade de microprocessador, tal como aqueles manufaturadospor Intel Corporation do Mountain View, Califórnia; aquelesmanufaturados por Motorola Corporaçõ de Schaumburg,Illinois; aqueles manufaturado por máquinas de negóciointernacionais de White Plains, New York; ou aquelesmanufaturados por Advanced Micro Devices de Sunnyvale,Califórnia. A unidade de memória central 104 pode ser unsou vários chip de memória capazes de armazenando dados epermitindo que alguma posição de armazenamento sejaalcançada diretamente pelo microprocessador 102, tais comoa memória de acesso aleatório de estática (SRAM), estouroSRAM ou SynchBurst SRAM (BSRAM), memória de acessoaleatório dinâmico (GOLE), GOLE rápida da modalidade depágina (GOLE de FPM), realçada GOLE (EDRAM), RAM prolongadoda saída de dados (RAM), GOLE prolongada do EDO da saída dedados (EDO A GOLE) , estouro estendeu a GOLE da saída dedados (GOLE de BEDO) , realçada GOLE (EDRAM) , GOLEsynchronous (SDRAM), JEDEC SRAM, PClOO SDRAM, Taxa de dadosdobro SDRAM (RDA SDRAM) , SDRAM realçado (ESDRAM) , GOLE deSyncLink (SLDRAM) , GOLE de Rambus (DRDRAM) , ouFerroelectric direto RAM (FRAM). Na modalidade mostrada noFIGO. IA, o processador 102 comunica-se com memória central104 através de uma barra-ônibus de sistema 120 (descritamais detalhadamente abaixo) . FIG. 1 B descreve umamodalidade de um sistema informático 100 em que oprocessador comunica-se diretamente com a memória central104 através de um porto da memória. Por exemplo, em FIG. 1B, a memória central 104 pode ser DRDRAM. FIG. IAeo FIG.1 B descrevem as modalidades em que o processador principal102 comunicam-se diretamente com a memória de esconderijo140 através de uma barra-ônibus secundária, referido àsvezes como um " backside" barra-ônibus. Em outrasmodalidades, o processador principal 102 comunica-se com amemória de esconderijo 140 usando a barra-ônibus de sistema120. A memória de esconderijo 140 tem tipicamente umaestadia de resposta mais rápida do que a memória central104 e é fornecida tipicamente por SRAM, por BSRAM, ou porEDRAM. Na modalidade mostrada no FIGO. IA, o processador102 comunica-se com vários dispositivos de I/O 130 atravésde uma barra-ônibus de sistema local 120. As várias barras-ônibus podem ser usadas para conectar a unidade doprocessador central 102 aos dispositivos de 1/0 130,incluindo uma barra-ônibus de VESA VL, uma barra-ônibus doAIA, uma barra-ônibus de EISA, uma arquitetura domicrocanal (os MCA) a barra-ônibus, uma barra-ônibus doPCI, uma barra-ônibus de PCI-X, PCI-Expressa a barra-ônibus, ou um NuBus. Para as modalidades em que odispositivo de I/O é uma exposição video, o processador 102pode usar Porto de gráficos avançado (AGP) a comunicar-secom a exposição. FIG. 1 B descreve uma modalidade de umsistema informático 100 em que o processador principal 102se comunica diretamente com o dispositivo de 1/0 130batravés de HyperTransport, do 1/0 rápido, ou do InfiniBand.FIG. 1 B igualmente descreve uma modalidade em que asbarras-ônibus locais e uma comunicação direta sãomisturadas: o processador 102 comunica-se com o 1/0 odispositivo 130a que usa uma interconexão local transportaao comunicar-se com o dispositivo de 1/0 130b diretamente.Uma grande variedade dos dispositivos de 1/0 130 pode estaratual no sistema informático 100. Os dispositivos deentrada incluem teclados, ratos, trackpads, trackballs,microfones, e tabuletas do desenho. Os dispositivos desaida incluem as exposições video, as impressoras doaltofalante, as Inkjet, as impressoras de laser, e asimpressoras do tingir-sublimation. Um dispositivo de 1/0pode igualmente fornecer a memória de massa para o sistemainformático 100 tais como uma movimentação do disco rígido,uma movimentação de disco flexível para receber discosflexíveis tais como discos de 3.5 polegadas, de 5.25polegadas ou discos do FECHO DE CORRER, uma movimentação deCD-ROM, uma movimentação de CD-R/RW, uma movimentação deDVD-ROM, DVD-RW conduza, movimentação de DVD+RW,movimentações de fita de vários dispositivos dos formatos,e de armazenamento do USB tais como a linha de movimentaçãoinstantânea do USB de dispositivos manufaturados porTwintech Indústria, Inc. de Los Alamitos, de Califórnia, eda linha de iPod Shuffle de dispositivos manufaturado peloApple Computer, Inc., de Cupertino, Califórnia. Em algumasmodalidades, a máquina de cliente 10 pode compreender ouser conectado aos dispositivos de exposição múltiplos, quecada um pode ser do mesmos ou tipo e/ou formuláriodiferentes. Como tal, alguns dos dispositivos de I/O 130a-130n podem compreenda um dispositivo de exposição ouqualquer tipo e/ou dê-os forma da ferragem apropriada,software, ou combinação de ferragem e de software asuportar, permitir ou prever a conexão e o uso dedispositivos de exposição múltiplos pela máquina de cliente10.
Por exemplo, a máquina de cliente 10 pode incluirqualquer tipo e/ou dá-lo forma do vídeo o cartão doadaptador, o video, o excitador, e/ou a biblioteca aconectar, comunicam-se, conectam-se ou se não use osdispositivos de exposição. Em uma modalidade, um adaptadorvideo pode compreenda conectores múltiplos para conectaraos dispositivos de exposição múltiplos. Em outro asmodalidades, a máquina de cliente 10 podem incluiradaptadores video múltiplos, com cada adaptador videoconectou a uns ou vários dos dispositivos de exposição. Emalgum as modalidades, qualquer parcela do sistema deexploração da máquina de cliente 10 podem seja configuradousando exposições múltiplas. Em outras modalidades, uns ouvários de os dispositivos de exposição podem ser fornecidospor uns ou vários outros dispositivos de computação, como amáquina remota 30 conectaram à máquina de cliente 10, porexemplo, através de uma rede. Estas modalidades podemincluir qualquer tipo de software projetado e construídopara usar um outro computer1 dispositivo de exposição de scomo um segundo dispositivo de exposição para a máquina decliente 10. Um ordinariamente hábil na arte reconhecerá eaprecie as várias maneiras e modalidades que uma máquina decliente 10 pode ser configurada para ter dispositivos deexposição múltiplos. Em umas modalidades mais adicionais,um dispositivo de I/O 130 pode ser uma ponte entre barra-ônibus de sistema 120 e uma barra-ônibus de uma comunicaçãoexterna, tal como uma barra-ônibus do USB, Barra-ônibus doÁrea de trabalho de Apple, RS-232 uma conexão de série, umabarra-ônibus do SCSI, uma barra-ônibus do firewire, aBarra-ônibus do firewire 800, uma barra-ônibus do Ethernet,uma barra-ônibus de Appletalk, uma barra-ônibus do Ethernetdo gigabit, Barra-ônibus do Asynchronous Transfer Mode, umabarra-ônibus do HIPPI, uma barra-ônibus super do HIPPI, umSerialPlus barra-ônibus, uma barra-ônibus de SCI/LAMP, umabarra-ônibus de FibreChannel, ou um computador pequenounido de série barra-ônibus de relação do sistema.
Computadores de uso geral da sorte descrita no FIGO. IA eFIG. 1 B opere tipicamente sob o controle dos sistemas deexploração que controlam o programa das tarefas e do acessoaos recursos de sistema. Em algumas modalidades, oscomputadores opere sob o controle dos hypervisors, de querepresente vistas virtualizadas ferragem física como umasou várias máquinas virtuais. Os sistemas de exploraçãopodem execute nestas máquinas virtuais para controlar amáquina virtual em uma maneira análogo à maneira um sistemade exploração do nativo controla uma máquina física. Ossistemas de exploração típicos incluem: a família deMICROSOFT WINDOWS de sistemas de exploração, manufaturadospor Microsoft Corp. de Redmond, Washington; a família doMacOS de sistemas de exploração, manufaturado pelo AppleComputer de Cupertino, Califórnia; OS/2, manufaturado pormáquinas de negócio internacionais de Armonk, New York; elinux, um sistema de exploração freely-availabledistribuído perto Caldera Corp. de Salt Lake City, Utá,entre outro. As máquinas de cliente 10 e 20 podem ser todoo computador pessoal (por exemplo, um computador deMacintosh ou um por computador nos processadoresmanufaturados por Intel Corporation do Mountain View,Califórnia), terminal Windows-based, rede Computador,dispositivo sem fios, dispositivo da informação, RISC PowerPC, X-dispositivo, estação de trabalho, mini computador,computador central, assistente digital pessoal, a caixa daajustar-parte superior da televisão, meios da sala devisitas centra-se, console do jogo, jogo móvel dispositivo,NetPCs, cliente fino, ou o outro dispositivo de computaçãoque tem um windows-based área de trabalho e suficientearmazenamento persistente para executar uma pequena,exposição programa da apresentação. O programa daapresentação da exposição usa comandos e os dados emitiram-lhes através das canais de comunicação para render umaexposição gráfica. as plataformas Windows-orientadassuportadas pelas máquinas de cliente 10 e 20 podem inclua,sem limitação, WINDOWS 3.x, WINDOWS 95, WINDOWS 98, WINDOWSNT 3.51, WINDOWS NT 4.0, WINDOWS 2000, Windows 2003,WINDOWS CE, Windows Xp, Windows Vista, MAC/OS, Java, linux,e UNIX. As máquinas de cliente 10 podem incluir umdispositivo de exposição visual (por exemplo, um computadormonitor), um armazenamento de dispositivo de introdução dedados (por exemplo, um teclado), persistente ou temporário(por exemplo, memória de computador) para armazenarprogramas de aplicação transferidos, a processador, e umrato. Execução de um pequeno, programa da apresentação daexposição permite que as máquinas de cliente 10 participemem um sistema informático distribuído modelo (isto é, ummodelo de computação usuário-baseado). Em outrasmodalidades, os computadores de uso geral da sorte descritono FIGO. IA e o FIG. 1 B podem ter os processadoresdiferentes, operando-se os sistemas, e os dispositivos deentrada consistentes com o dispositivo e de acordo commodalidades promovem descrito nisto. O sistema informático100 pode ser toda a estação de trabalho, computador desecretária, portátil ou computador portátil, usuário,handheld computador, telemóvel ou o outro dispositivoportátil da telecomunicação, meios jogando o dispositivo,um sistema do jogo, ou alguns outros tipo e/ou formulárioda computação, telecomunicações ou dispositivo dos meiosque são capaz de uma comunicação e que tem a suficientecapacidade do poder e de memória do processador executar asoperações descrito nisto. Por exemplo, o sistemainformático 100 pode compreender a dispositivo da famíliade IPOD dos dispositivos manufaturados pelo Apple Computerde Cupertino, Califórnia, um PLAYSTATION 2, PLAYSTATION 3,ou PESSOAL Dispositivo PORTÁTIL de PLAYSTATION (PSP)manufaturado por Sony Corporaçõ de Tokyo, Japão, NINTENDODS, NINTENDO GAMEBOY, NINTENDO GAMEBOY AVANÇADO oudispositivo da VOLTA de NINTENDO manufaturado por NintendoCo., Ltd., de Kyoto, Japão, ou um XBOX ou XBOX dispositivo360™ manufaturado por Microsoft Corporation de Redmond,Washington. Para as modalidades em que uma máquina decliente 10 é um dispositivo móvel, o dispositivo pode serum telefone celular JAVA-permitido, tal como aquelesmanufaturados por Motorola Corp. de Schaumburg, Illinois,aqueles manufaturados por Kyocera de Kyoto, Japão, ouaqueles manufaturados por Samsung Electronics Co., Ltd., deSeoul, Coréia. Em outras modalidades em que a máquina decliente 10 é móvel, ele pode estar um funcionamento pessoaldo assistente digital (PDA) sob o controle do PalmOSsistema de exploração, tal como os dispositivosmanufaturados pelo palmOne, Inc. de Milpitas, Califórnia.
Em umas modalidades mais adicionais, a máquina de clientepode ser a funcionamento pessoal do assistente digital(PDA) sob o controle do PocketPC sistema de exploração, talcomo os dispositivos do iPAQ manufaturados por Hewlett-packard Corporaçõ de Palo Alto, Califórnia, os dispositivosmanufaturados por ViewSonic de Noz, Califórnia, ou osdispositivos manufaturados por Toshiba América, Inc. denovo York, New York. Em ainda outras modalidades, a máquinade cliente 10 são a dispositivo da combinação PDA/telephonetal como os dispositivos de Treo manufaturados pertopalmOne, Inc. de Milpitas, Califórnia. Ainda mais emmodalidades, o cliente a máquina 10 é um telefone celularque se opere sob o controle do PocketPC sistema deexploração, tal como aqueles manufaturados por MotorolaCorp.
Em algumas modalidades, uma máquina de cliente 10comunica-se com um telecontrole máquina 3 0 para determinaruma enumeração dos recursos disponíveis ao cliente amáquina 10 ou a um usuário dos recursos da máquina decliente 10. pode incluir, sem limitação, ambientes decomputação, aplicações, originais, e recursos de ferragem.Em outras destas modalidades, a máquina remota 3 0 fornece amáquina de cliente 10 a informação de endereço associadacom o a máquina remota 30' hospedando um recursoidentificado pela enumeração de recursos. Em ainda outrasdestas modalidades, a máquina de cliente 10 comunica-se coma máquina remota 30' para alcançar o recurso identificado.Em uma modalidade, a máquina de cliente 10 executa umavizinhança do recurso aplicação a comunicar-se com asmáquinas remotas 3 0 e 3 0'. Em algum as modalidades, cada umdas máquinas remotas 3 0 fornecem a funcionalidade exigidopara identificar e fornecer a informação de endereçoassociada com um telecontrole máquina 30' hospedando umrecurso pedido. Referência agora o FIGO. 2A, um diagrama debloco descreve uma modalidade da sistema para fornecer oacesso a um recurso. Na breve vista geral, um pedido aenumere recursos de computação é transmitido de uma máquinade cliente 10 (etapa 202). Em algumas modalidades, o pedidoinclui uma identificação de um usuário de a máquina decliente 10. Uma enumeração de uma pluralidade de recursosdisponíveis ao o usuário da máquina de pedido é fornecidopela máquina remota (etapa 204) . A máquina de cliente 10transmite um pedido para o acesso a um recurso particularincluído na enumeração (etapa 2 06). Ainda referindo o FIGO.
2A, e mais detalhadamente, o pedido transmitido é a pedidopara uma enumeração dos ambientes de computação disponíveisao cliente máquina 10. Em uma outra modalidade, o pedido éum pedido para uma enumeração dos ambientes de computaçãoque suportam uma aplicação particular pedida para execuçãopela máquina de cliente 10. Em ainda uma outra modalidade,o pedido é a pedido para o acesso a um ambiente decomputação suportado por uma pluralidade particular derecursos de ferragem. Em algumas modalidades, a informaçãoassociou com a máquina de cliente 10 ou com um usuário damáquina de cliente 10 são recebidos com o pedido. Em um deestas modalidades, credenciais associaram com o usuário, oucom um usuário do a máquina de cliente 10, é recebida. Emuma modalidade, a máquina remota 30 recebe um pedido parauma enumeração de disponível computando ambientes damáquina de cliente 10 com a informação associada com amáquina de cliente 10, 10, ou o usuário da máquina decliente 10. Em uma outra modalidade, o telecontrole amáquina 30 recebe uma transmissão de incluir do motor dapolítica informação. Em ainda uma outra modalidade, amáquina remota 30 recebe a transmissão de um agente decoleção que inclui a informação. Em contudo outros amodalidade, a máquina remota 30 compreende um componenteque recebe pedidos e informação associada. Em algumasmodalidades, uma máquina remota 3 0 que funciona como umservidor de rede recebe comunicações da máquina de cliente10, 10'. Em um destes as modalidades, o servidor de redeenviam as comunicações a uma máquina remota 30'. Em umadestas modalidades, o servidor de rede envia ascomunicações a um serviço na máquina remota 30'. Em outrasdestas modalidades onde comunicações da máquina de cliente10, 10' são distribuídos a uma máquina remota 30' peloservidor de rede, a máquina remota 30 pode ser responsivaselecionado ao Endereço do Internet Protocol (IP) damáquina de cliente 10. Em algumas modalidades, o usuáriofornece credenciais ao telecontrole máquina 30 através deuma interface de utilizador gráfica apresentada à máquinade cliente 10, 10' pela máquina remota 30. Em outrasmodalidades, uma máquina remota 30' " tendo afuncionalidade de um servidor de rede fornece a interfacede utilizador gráfica ao cliente máquina 10. Em aindaoutras modalidades, um agente de coleção transmitido aomáquina de cliente 10, 10' pela máquina remota 3 0 recolhemas credenciais da máquina de cliente 10. Em algumasmodalidades, os dados coletados a respeito dos recursosdisponíveis são alcançado. Em algumas destas modalidades,dados coletados a respeito da computação os ambientes sãoalcançados. Em algumas destas modalidades, os dadosalcançados inclui uma indicação de uma máquina virtual quefornece o acesso a um do ambientes de computação. Em umadestas modalidades, os dados alcançados inclui umaindicação de uma posição da máquina virtual. Em outrasmodalidades, os dados alcançados a respeito dos ambientesde computação incluem uma indicação de uma pluralidade derecursos de ferragem exigidos para suportar a computaçãoambientes. Em ainda outras modalidades, os dados alcançadosa respeito de computar ambientes inclui uma indicação de umusuário ou o tipo de usuário autorizado para alcançar osambientes de computação. Em contudo outras modalidades, osdados alcançados são responsivos fornecido a um pedido paraa identificação da ambiente de computação que fornece oacesso a um programa de aplicação. Em algumas modalidades,os dados coletados são armazenados em um usuário, tal comoa máquina remota 30. Em outras modalidades, o usuário estáem uma comunicação com uma base de dados que armazena osdados coletados. Em ainda outras modalidades, o usuáriocoleta os dados de uma pluralidade das máquinas 3 0 em umaexploração agrícola 3 8 da máquina. Em uma de estasmodalidades, os dados são recebidas pelo menos de umusuário responsivo á pedido para a informação a respeitodos ambientes de computação. Em outros destas modalidades,o usuário coleta os dados de um hypervisor que executa emuma máquina 30' na exploração agrícola 3 8 da máquina. Emainda outras destas modalidades, o usuário coletam os dadosde um componente da gerência que reside em um convidadosistema de exploração fornecido por uma máquina virtuallança em um hypervisor execução em uma máquina 30' naexploração agrícola 3 8 da máquina. Em algumas modalidades,os dados são coletados por um intermediário, brokeringmáquina. Em uma destas modalidades, a máquina brokeringmantém a a base de dados de um status pelo menos dosambientes um de computação e coleta informação pelo menosde uma máquina que fornece o acesso pelo menos a um quecomputa ambientes.
Em outras destas modalidades, a máquina brokeringcoleta informação de um componente de serviço da máquinavirtual que reside em um virtual máquina que fornece osambientes de computação. Em ainda outra destes asmodalidades, a máquina brokering coletam a informação deuma máquina virtual fornecendo a funcionalidade da gerênciapara uma máquina virtual que fornece uma computaçãoambiente. Contudo outras destas modalidades, a máquinabrokering coleta a informação de um hypervisor em que umamáquina virtual da execução fornece . com que põr oambiente. Em outras modalidades, brokering a máquinacompreende uma máquina 30 que inclui um módulo brokering.Em algumas modalidades, uma determinação é feita para cadaum disponível ambiente de computação a se esse ambiente decomputação está disponível um usuário do sistema docliente. Em outras modalidades, os dados são recolhidossobre o sistema do cliente e uma série de dados são geradosda informação recolhida. Em um destas modalidades, os dadosalcançados são transmitidos ao sistema do cliente com umaindicação ao sistema do cliente, feito responsivo à sériede dados gerada, de cada ambiente de computação disponívelao sistema do cliente. Em outra destes as modalidades, osdados alcançados são transmitidas ao sistema do cliente queindica a o sistema do cliente, responsivo à aplicação deuma política aos dados gerados ajuste, cada ambiente decomputação disponível ao sistema do cliente. Em aindaoutros de estas modalidades, a indicação incluem pelo menosum método do acesso disponível ao acesso procurando dousuário ao ambiente de computação. Em ainda outras destasmodalidades, a indicação incluem pelo menos um tipo de açãoassociado com o ambiente de computação que pode ser tomadoperto, ou no interesse de, o usuário do sistema do cliente.Uma enumeração de uma pluralidade de recursos disponíveis àmáquina de cliente 10 são fornecidos (etapa 204) . Em umamodalidade, a enumeração é fornecida responsivo a umaaplicação de uma política à informação recebida associoucom o usuário da máquina de cliente 10 ou da máquina remota30. Em outros a modalidade, a enumeração é responsivafornecido a um pedido do usuário para um tipo particular deambiente de computação. Em ainda uma outra modalidade, aenumeração é responsiva fornecido a um pedido do usuáriopara computar ambientes que fornecem o acesso a um tipo deprograma de aplicação. Em contudo outros a modalidade, aenumeração é responsiva fornecido a um pedido do usuáriopara os ambientes de computação suportados por umapluralidade especific de ferragem recursos. Em algumasmodalidades, uma indicação é transmitida à máquina decliente 10 de uma pluralidade de ambientes de computaçãodisponíveis a um usuário do cliente máquina 10. Em umadestas modalidades, a indicação é gerada responsivo aalcançar dados coletados associou com a pluralidade decomputação ambientes. Em outras destas modalidades, osdados alcançados são transmitido à máquina de cliente 10com uma enumeração da computação ambientes disponíveis àmáquina de cliente 10. Em algumas modalidades, a adeterminação é feita, para cada ambiente de computaçãoarmazenado, se esse ambiente de computação está disponívelà máquina de cliente 10. Em um a modalidade, a informaçãocoletada é transmitida à máquina de cliente 10, informaçãotransmitida displayable na máquina de cliente 10 comoícones em a janela gráfica da interface de utilizador querepresenta os ambientes de computação disponíveis aosistema do cliente. Em uma outra modalidade, a informaçãocoletada é transmitido ã máquina de cliente 10, ainformação transmitida displayable em a máquina de cliente10 como ícones em uma representação gráfica da janela dainterface de utilizador ambientes de computação nãodisponíveis à máquina de cliente 10. Em algumasmodalidades, uma enumeração de disponível computandoambientes é apresentada a um usuário da máquina de cliente10. Em outro as modalidades, uma enumeração das aplicaçõessão apresentadas a um usuário do cliente máquina 10. Em umadestas modalidades, uma máquina física fornece o acesso auma aplicação enumerada. Em outras destas modalidades, umvirtual a máquina fornece o acesso a uma aplicaçãoenumerada. Em ainda outra destes as modalidades, umamáquina virtual fornecem o acesso a um ambiente decomputação de qual um usuário da máquina de cliente 10 podealcançar a aplicação. Em ainda outras modalidades, umaenumeração de ambientes de funcionamento padrão (tal comoum sistema de exploração do convidado pre-configured comuma pluralidade de aplicação os programas) são fornecidosao usuário da máquina de cliente 10. Em algumasmodalidades, a enumeração de recursos disponíveis incluiuma enumeração de uma pluralidade de ações associou com umrecurso pedido. Em uma destas modalidades, a enumeração dapluralidade de ações permite o usuário para pedir aexecução de um ambiente de computação. Em outra destes asmodalidades, a enumeração da pluralidade de ações permitemo usuário a clonagem do pedido de um ambiente decomputação. Em ainda outra destes as modalidades, aenumeração da pluralidade de ações permitem o usuário aparada programada do pedido de um ambiente de computação.Contudo outra nestes as modalidades, a enumeração dapluralidade de ações permitem o usuário a peça que umambiente de computação esteja recarregado. Em algumasmodalidades, a enumeração da pluralidade de ações permite ousuário de pedir que a o instantâneo seja tomado de umestado existente de um ambiente de computação. Em outro asmodalidades, a enumeração da pluralidade de ações permitemo usuário a peça que um instantâneo precedente de umambiente de computação esteja fornecido. Um pedido étransmitido para o acesso a um recurso particular (etapa206). Em uma modalidade, um usuário da máquina de cliente10 pede um recurso responsivo a uma enumeração recebida derecursos disponíveis. Em uma outra modalidade, pedidos deusuário um independente do recurso de uma enumeraçãorecebida. Em algum modalidades, os pedidos de usuário umrecurso selecionando um gráfico a respresentação do recursoapresentou na máquina de cliente 10 por um cliente agente.
Em outras modalidades, os pedidos de usuário um recursoselecionando a a respresentação gráfica ou textual dorecurso apresentou ao usuário em a servidor de rede ou aoutra máquina remota 30'". Em algumas modalidades, ospedidos que de usuário uma ação associou com o a recurso.
Em uma destas modalidades, a execução dos pedidos deusuário do recurso. Em outras destas modalidades, aterminação dos pedidos de usuário do recurso. Em aindaoutras destas modalidades, a transmissão dos pedidos deusuário do recurso, incluindo a transmissão através de umaaplicação que flui a sessão.
Contudo outras destas modalidades, os pedidos deusuário esses um recurso sejam parada programada. Em outrasmodalidades, um pedido executar uma aplicação é recebido damáquina de cliente 10, a aplicação pedida que exige um doambientes de computação. Em ainda outras modalidades, umpedido alcançar uma lima são recebido da máquina de cliente10, a lima pedida que exige a execução dentro um dosambientes de computação. Ainda referindo o FIGO. 2A, umamáquina remota 3 0 lança o recurso Aplicação da vizinhança(RN) e resultados dos presentes da aplicação do RN aomáquina de cliente 10. A máquina remota 30 pode lança aaplicação 241 do RN dentro resposta a um pedido 202 pelamáquina de cliente 10 para uma enumeração de recursosdisponíveis. A máquina remota 30 fornece uma enumeração derecursos disponíveis à máquina de cliente 10 (etapa 204). Amáquina de cliente 10 e máquina remota 30' estabeleça umaconexão (setas 24 5 e 246). Por isto conexão, a máquinaremota 30' puder transferir o código executável daaplicação particular à máquina de cliente 10, quando amáquina de cliente 10 e máquina remota 30' estão operando-se de acordo com a computação cliente-baseada modelo.Alternativamente, a máquina remota 30' pode executar odetalhe a aplicação e transfere a interface de utilizadorgráfica à máquina de cliente 10, quando a máquina decliente 10 e máquina remota 30' estão operando-se de acordocom o modelo de computação usuário-baseado. Em algumasmodalidades a máquina remota 30' pode executar a aplicação241 da vizinhança do recurso e empurrar resultados de voltaà máquina de cliente 10 de modo que quando os pedidos damáquina de cliente 10 a aplicação da vizinhança do recurso,os resultados da vizinhança do recurso é já disponível namáquina de cliente 10. FIGO. 2B mostra uma outra modalidadede um sistema em que o cliente a máquina 10 inicia aexecução da aplicação 241 da vizinhança do recurso e umamáquina remota 30 apresenta os resultados da aplicação 241do RN ao máquina de cliente 10. A máquina de cliente 10lança a aplicação da vizinhança do recurso (por exemplo,estalando em uma representação do ícone de vizinhança dorecurso aplicação 241) . Na resposta, a máquina de cliente10 dirige um pedido 202 para Aplicação da vizinhança dorecurso à máquina remota 30. O telecontrole a máquina 30pode executar a aplicação 241 da vizinhança do recurso, sea aplicação está na máquina remota 30, e retorna osresultados ao cliente máquina 10. Alternativamente, amáquina remota 30 pode indicar (seta 204) à máquina decliente 10 que a aplicação 241 da vizinhança do recurso édisponível em uma outra máquina remota, nesta máquinaremota 30' do exemplo, máquina de cliente 10 e máquinaremota 30' estabeleça uma conexão (setas 206 e 210) porqual a máquina de cliente 10 pede a execução do recursoAplicação 241 da vizinhança. A máquina remota 30' podeexecutar a aplicação 241 e transfere os resultados (isto é,a interface de utilizador gráfica salda áudio etc.) àmáquina de cliente 10. FIGO. 2C mostra uma outra modalidadede um sistema em que uma máquina de cliente execução de 10novatos da aplicação 241 da vizinhança do recurso, nestaexemplo através do World Wide Web. Uma máquina de cliente10 executa um navegador de rede aplicação 280, tais comoNETSCAPE NAVIGATOR, manufaturado por Netscape Comunicações,Inc. do Mountain View, Calif., INTERNET EXPLORER,manufaturado por Microsoft Corporation de Redmond, deWashington, ou de SAFARI, manufaturado pelo Apple Computerde Cupertino, Califórnia. A máquina de cliente 10, atravésdo navegador de rede 28 0, transmite um pedido 282 paraalcançar um localizador de recurso uniforme (URL) enderecea correspondência a um HTML pagine a residência na máquinaremota 10. Em algumas modalidades, o primeiro HTML a páginaretornou 284 à máquina de cliente 10 pela máquina remota 30é página da autenticação que procura identificar a máquinade cliente 10 ou o usuário do máquina de cliente 10. Apágina da autenticação permite que a máquina de cliente 10transmita credenciais do usuário, através do navegador derede 28 0, à máquina remota 3 0 para autenticação. Ascredenciais transmitidas do usuário são verific pelamáquina remota remota 3 0 de máquina 3 0 ou outro naexploração agrícola 38. Isto permite a domínio da segurançaa ser projetado na máquina remota 30. Por exemplo, se amáquina remota 3 0 funciona o sistema de exploração deWINDOWS NT, manufaturado perto Microsoft Corporation deRedmond, de Washington, e dos funcionamentos de máquina deautenticação o sistema de exploração de UNIX, o domínio dasegurança de UNIX pode ser dito ter sido projetado namáquina remota 30. As credenciais do usuário podem ser "transmitido; em o espaço livre, " ou podem ser cifrados.
Por exemplo, as credenciais do usuário podem sertransmitido através de uma conexão da camada de soqueteseguro (SSL), que cifre dados usando algoritmos tais como oalgoritmo RC4, manufaturado por RSA Segurança Inc. deBedford, Massachusetts. Em algumas modalidades, uma decisãodo controlo de acessos é feita baseado sobre informaçãorecebida sobre os recursos do usuário disponíveis aousuário do cliente o sistema é responsivo identificado àdecisão do controlo de acessos. Em outro as modalidades,uma política são aplicadas à informação recebida sobre ousuário, a máquina remota 30 pode verific as credenciais dousuário recebidas do cliente máquina 10. Alternativamente,a máquina remota 3 0 pode passar as credenciais do usuário auma outra máquina remota para a autenticação. Nestamodalidade, o usuário de autenticação pode estar em umdomínio diferente da máquina remota 30. As credenciais dousuário autenticado da máquina de cliente 10 podem serarmazenadas no máquina de cliente 10 em um bolinho da por-sessão, nos campos que não são indicados pelo em maneira donavegador de rede 280, ou algum outra comum na manutençãodos Página de redes. Em algumas modalidades, uma exploraçãoagrícola 3 8 da máquina com que a máquina remota 3 0 éassociado pode permitir usuários do convidado, isto é, osusuários que não atribuíram o usuário credenciais, paraalcançar os recursos hospedados pela exploração agrícola38. Nestas modalidades, a página da autenticação podefornecer um mecanismo para permitir uma máquina de cliente10 a identificar que é um usuário do convidado, tal comouma tecla ou uma seleção de menu. Em outro destasmodalidades, a máquina remota 3 0 pode omitir a página daautenticação inteiramente. Ainda referindo o FIGO. 2C, umavez que a máquina de cliente 10 é autenticada perto amáquina remota 30, a máquina remota prepara-se e transmite-se ao cliente máquina 10 um HTML page 288 que inclua umajanela da vizinhança do recurso 258 em que aparecem osícones gráficos 257, 257' representando os recursos a que amáquina de cliente 10 tem o acesso.
Um usuário da máquina de cliente 10 pede o acesso a umrecurso representado pelo ícone 257 estalando esse ícone257. FIGO. 3A mostra uma modalidade de um processo de umacomunicação entre a máquina de cliente 10 e máquinas
remotas múltiplas 30, 30'. Na modalidade mostrado no FIGO.
3A, a máquina de cliente 10 tem uma conexão ativa 372 commáquina remota 30' . A máquina de cliente 10 e máquinaremota 30' pode usar conexão ativa 372 à informação datroca a respeito do status ou da execução de um primeirorecurso. As credenciais do usuário podem ser armazenadas namáquina de cliente 10. Tais o armazenamento das credenciaisdo usuário pode estar na memória de esconderijo ou noarmazenamento persistente. Nesta modalidade, a aplicação davizinhança do recurso (não mostrada no FIGO. 3A) funcionana máquina de cliente 10. A exposição da máquina de clientetem a Janela 258 da vizinhança do recurso em que aparecemum icone gráfico 257 representando um segundo recurso. Umusuário da máquina de cliente 10 pode alcançar segundorecurso double-clicking o ícone 257 com o rato. 0 pedidopassagens à máquina remota 30 através da conexão 359. Amáquina remota 3 0 indica à máquina de cliente 10 através daconexão 359 que o sought-after o recurso está disponível namáquina remota 30'. A máquina de cliente 10 sinalizamáquina remota 30' para estabelecer uma segunda conexão370. A máquina remota 30' pede as credenciais do usuário damáquina de cliente 10 autenticar acesso ao segundo recurso.
Em cima de uma autenticação bem sucedida, o cliente máquinae máquina remota 30' estabeleça a segunda conexão 370 etroque a informação a respeito do status de ou da execuçãodo segundo recurso. Em algumas modalidades, a máquinaremota não pedem credenciais do usuário a estabeleça asegunda conexão 370. Nestas modalidades, o telecontrolemáquina 30' pode usar as credenciais fornecidas pelousuário da máquina de cliente 10 a estabeleça a conexão 372para estabelecer igualmente a segunda conexão 370.Conformemente, a máquina de cliente 10 e a máquina remota30' comunique-se um com o otro sobre conexões múltiplas.FIGO. 3 B mostra uma modalidade de um sistema de umacomunicação entre máquina de cliente 10, máquina remotamestra 30, e usuários 32, 34, e 36. a máquina de cliente 10tem uma conexão ativa 373 com a máquina remota 32. amáquina de cliente 10 e a máquina remota 32 podem usar aconexão ativa 373 à informação da troca a respeito dostatus de ou da execução de um primeiro recurso. Ascredenciais do usuário podem ser armazenadas na máquinaremota 32 na memória de esconderijo ou no armazenamentopersistente. Nesta modalidade, a aplicação da vizinhança dorecurso funciona no máquina remota 32. A máquina remota 32inclui o software que fornece a motor usuário-baseado 62 docliente, permitindo a máquina remota 32 de operar-se nocapacidade da máquina de cliente 10. A exposição da máquinade cliente 10 tem um recurso Janela 258 em que aparecem osícones gráficos 357, 357' da vizinhança; representando umsegundo recurso e um terceiro recurso, respectivamente. Umusuário do a máquina de cliente 10 pode alcançar o segundorecurso double-clicking o ícone 357. O pedido lança osegundo recurso passa ã máquina remota 32 através daconexão ativa 3 73, e a máquina remota 32 enviam o pedido aa máquina remota mestra 30 (seta 3 65). A máquina remotamestra 30 indica (seta 365) ao telecontrole máquina 32 queo recurso sought-after está disponível no usuário 34. Otelecontrole a máquina 32 contata o usuário 34 paraestabelecer uma conexão 366. Para autenticar o acesso àaplicação, o usuário 34 obtém as credenciais do usuário docliente máquina 10 da máquina remota 32. A máquina remota32 e usuário 34 estabeleça a conexão (seta 366) por que amáquina remota 32 pede o acesso ao segundo recurso e aousuário 34 retorna os resultados ao máquina remota 32. Amáquina remota 32 envia os resultados ao cliente faça ãmáquina 10, onde os resultados são indicados.Conformemente, a informação trocado entre a máquina decliente 10 e o " do usuário 34; passa o through" a máquinaremota 32. Similarmente, a máquina de cliente 10 pode lançao terceiro recurso por double- estalando o ícone 357'. 0pedido lança o terceiro recurso passa ao máquina remota 32.A máquina remota 3 2 envia o pedido ao mestre máquina remota30. Neste exemplo, a máquina remota mestra 30 indica que ousuário 3 6 pode ser usado para alcançar o terceiro recurso.A máquina remota 32 e o usuário 36 estabelecem uma conexão(seta 374) por quais a máquina remota 32 pede o acesso aoterceiro recurso, e o usuário 36 retorna os resultados àmáquina remota 32. Para permitir o acesso a o terceirorecurso, o usuário 36 pode autenticar as credenciais dousuário do usuário da máquina de cliente 10, que sãoobtidas da máquina remota 32. a máquina remota 32 envia osresultados à máquina de cliente 10 onde os resultados sãoindicados. Conformemente, os resultados de alcançar oterceiro recurso passe entre a máquina de cliente 10 e ousuário 36 através do telecontrole máquina 32. FIGO. 3Cmostra uma outra modalidade de um sistema de umacomunicação entre a máquina de cliente 10, uma máquinaremota mestra 30, e usuários 32 e 34. a máquina de cliente10 tem uma conexão ativa 376 com o usuário 32. 0 cliente amáquina 10 e o usuário 32 podem usar a conexão ativa 376 àtroca informação a respeito do acesso a um primeirorecurso. A máquina de cliente 10 pode armazene credenciaisdo usuário na memória de esconderijo ou no armazenamentopersistente. Nesta modalidade, a aplicação da vizinhança dorecurso funciona no usuário 32. A exposição da máquina decliente 10 tem uma janela da vizinhança do recurso 258 emque aparece um ícone gráfico 257 que representa um segundorecurso. A o usuário da máquina de cliente 10 pode alcançaro segundo recurso double-clicking o ícone 257. 0 pedidoalcançar o segundo recurso passa ao usuário 32. 0 usuário32 responde (isto é, " chama o back") à máquina de cliente10 perto informação recurso-relacionada de retorno tal comoo nome do recurso e capacidades necessários pela máquina decliente 10 para alcançar a segunda aplicação. Com ainformação forneceu pelo usuário 32, a máquina de cliente10 então comunica-se com a máquina remota mestra 3 0 atravésda conexão 377 a determine o usuário para alcançar osegundo recurso. Neste exemplo, isso o usuário é o usuário34. A máquina de cliente 10 estabelece então uma conexão378 a o usuário 34.
O usuário 34 pede as credenciais do usuário da máquinade cliente 10 para autenticar o usuário da máquina decliente 10. A máquina de cliente 10 alcança o segundorecurso no usuário 34, e o usuário 34 retorna resultados àmáquina de cliente 10 através da conexão estabelecida 378.
Conformemente, a máquina de cliente 10 pode ter conexõesativas múltiplas entre o múltiplo usuários. FIGO. 3D mostrauma modalidade de um sistema de uma comunicação no meio amáquina de cliente 10, uma máquina remota 30 que nesteexemplo actue como uma correia fotorreceptora usuário, euma segunda máquina remota 30'. A máquina de cliente 10autentica próprio à máquina remota 3 0 como descritos acimaem relação ao FIGO. 2C. Em uma modalidade, a máquina remota30 alcança um molde da exposição da saída 390, tais comouma lima do SGML, do HTML ou do XML, para usar-se como umabase para construir Janela da vizinhança do recurso atransmitir à máquina de cliente 10. A janela da vizinhançado recurso pode indicar uma enumeração dos recursosdisponível ao cliente. A enumeração dos recursos podeincluir enumeração de ambientes disponíveis dos programasou da computação de aplicação, o molde pode ser armazenadona memória temporária ou persistente associada com ousuário 30 ou ele pode ser armazenado na memória maciça392, tais como uma unidade de disco ou ótico dispositivo,segundo as indicações do FIGO. 3D. Nesta modalidade, omolde 3 90 é um SGML, um HTML, ou um XML padrão documente acontenção dos Tag Vizinhança-específicos do recurso que sãosubstituídos com informação dinâmica. Os Tag indicam aousuário 30 onde na saída exposição para introduzir ainformação que corresponde aos recursos disponíveis, taiscomo o ícone imagens. Em uma modalidade particular, os TagVizinhança-específicos do recurso são encaixados dentro doscomentários dentro de uma lima, permitindo que a limapermaneça compatível com intérpretes padrão. Em uma outramodalidade, o recurso os Tag Vizinhança-específicos sãoextensões da língua de margem de benefício usada como basepara o molde. Os exemplos dos Tag do HTML que podem serusados em um molde são determinados abaixo na tabela 1:
TABELA 1 Descrição do Tag 0 valor do campo de ControlFieldeste Tag é usado para ajustar o valor dos dados quepersiste entre Página de redes da vizinhança do recurso, éajustado pelo usuário, ou usado para ajudar na navegaçãotransversal da página, tal como o nome de usuário, odomínio, a senha, o molde, e o recurso.
DrawResourceNeighborhood este Tag é usado para extrair umrecurso Exposição da vizinhança nesta posição em umaexposição da saída. ResourceName este Tag é substituídopelo nome do recurso publicado no contexto atual.WindowType este Tag é substituído pelo tipo da janela dorecurso publicado no contexto atual. WindowHeight este Tagé substituído pela altura da janela do recurso publicado nocontexto atual. WindowWidth este Tag é substituído pelalargura da janela do recurso publicado no contexto atual.WindowScale este Tag é substituído pela escala da janela dorecurso publicado no contexto atual. WindowColors este Tagé substituído pela profundidade de cor do recurso publicadono contexto atual. SoundType este Tag é substituído peloajuste sadio do recurso publicado no contexto atual.VideoType este Tag é substituído pelo ajuste video dorecurso publicado no contexto atual. O nível da cifragemeste Tag é substituído pelo nível da cifragem do recursopublicado no contexto atual. O ícone este Tag é substituídopelo ícone do recurso publicado no contexto atual. OutrosTag podem ser fornecidos aos campos de controle do jogo efornecer condicional processamento em relação à aplicaçãoda vizinhança do recurso. Em uma modalidade, o molde édinâmicamente utilização construída, para exemplo, FUSÃOFRIA, manufaturado por Allaire Corp. de Cambridge, massa,ou O USUÁRIO ATIVO PAGINA manufaturado por MicrosoftCorporation de Redmond, Washington. Alternativamente, omolde pode ser de estática. A vizinhança do recurso aaplicação analisa gramaticalmente o molde, substituindo TagVizinhança-específicos do recurso como notável acima. OsTag que não são recurso Vizinhança-específico são deixadosno arquive para ser analisado gramaticalmente pelo programa80 do navegador que executa no cliente 10. Em umamodalidade, um objeto do parser do molde é contanto queaceita 0 molde do HTML como a entrada, interpreta os TagVizinhança-especificos do recurso atuais no molde, e emsaídas o molde original com todo o recurso Tag davizinhança substituídos com o texto apropriado. O objeto doparser do molde podem ser passados a um bolinho, a umacorda da pergunta do URL, ou a um campo de controle de umservidor de rede conecte para fornecer a informação com querecurso Vizinhança-específico os Tag devem sersubstituídos. Em algumas modalidades, um servidor de rederecebe um pedido do cliente máquina 10 para uma enumeraçãode disponível computando ambientes. Em uma de estasmodalidades, o servidor de rede executam uma aplicação paraalcançar dados a respeito dos ambientes de computação. Emoutras destas modalidades, a o molde da página é recuperadode uma base de dados. Em ainda destas modalidades, a apágina é criada, no servidor de rede, descrevendo umaexposição da computação armazenada imagens do ambientedisponíveis à máquina de cliente 10 responsiva ao ainformação coletada e o molde recuperado da página, e apágina criada são transmitido à máquina de cliente 10,indicando à máquina de cliente 10 cada ambiente decomputação disponível à máquina de cliente 10. Em algum asmodalidades, imagens de computação do ambiente podemcompreender a máquina virtual imagens, imagens do recurso,screenshots de máquinas virtuais suspendidas, e outroimagens selecionadas por um usuário ou por um administradorpara a apresentação ao usuário. Em ainda outras destasmodalidades, uma exposição da saída são criadas indicandocada um ambiente de computação disponível à máquina decliente 10 e transmitir exposição criada da saída à máquinade cliente 10. Em algumas modalidades, uma exposição dasaída é criada que compreende uma página construído em umalíngua de margem de benefício, a exposição da saída queindica cada um que computa ambiente disponível ao sistemado cliente e transmitido ao sistema do cliente. Em umaoutra modalidade, a aplicação da vizinhança do recursoreserva certificados para alcançar a informação através deuma relação de programação da aplicação. Certificados podemser escritos dentro, por exemplo, VBScript ou Jscript.
Nesta modalidade, a língua scripting é usada para gerardinâmicamente uma utilização da exposição da saída ainformação retornou pela aplicação em resposta às perguntaslevantadas pelo certificado. Uma vez que a exposição dasaída é gerada, está transmitida à máquina de cliente 10para a exposição pelo programa 8 0 do navegador.
Um usuário da máquina de cliente 10 pode alcançar umrecurso estalando um ícone 257, 257' indicado no Página derede da vizinhança do recurso. Em algum modalidades, cadaícone 257, 257' é associado com um URL codificado issoespecific: a posição do recurso (isto é, em que as máquinasremotas ele são hospedadas ou, alternativamente, o endereçode uma máquina remota mestra, uma passagem, ou outromáquina remota 30); um comando do lançamento associou com orecurso; e a molde que identifica como os resultados dealcançar o recurso devem ser indicado (isto é, em um " dajanela; embedded" no navegador ou em uma janela separada).
Em algumas modalidades, o URL inclui uma lima, ou umareferência a uma lima, de que contem a informaçãonecessária para que o cliente crie uma conexão ao máquinaremota que hospeda o recurso. Esta lima pode ser criadapelo recurso Aplicação da vizinhança dinâmicamente. Amáquina de cliente 10 estabelece a conexão (seta 3 94) com amáquina remota 30' identificado como o acolhimentoinformação pedida do recurso e das trocas a respeito doacesso ao desejado recurso. Em algumas modalidades, aconexão 3 94 é feita usar-se Protocolo de computaçãoindependente da arquitetura (AIC), manufaturado por CitrixSistemas, Inc. do Fort Lauderdale, FIA. Em outrasmodalidades, a conexão é feito usando-se: o protocolo daRDP, manufaturado por Microsoft Corp. de Redmond,Washington; o protocolo Xll; ou o protocolo de computaçãoda rede virtual (VNC), manufaturado por AT& Laboratórios deT Bell. Assim, a máquina de cliente 10 pode indicar osresultados de alcançar o recurso em uma janela separada donavegador de rede 280, ou podem " embed" a aplicação outputdentro do navegador de rede. FIGO. 3E descreve umamodalidade em que uma máquina remota 3 0 actua como ointermediário para uma exploração agrícola 3 8 da máquina ecompreende um módulo 310 do corretor, a transmissor 312, umreceptor 314, e um transceptor 316. Os acessos do módulo310 do corretor coletaram dados a respeito dos recursos,incluindo ambientes dos programas, da computação deaplicação, e ferragem recursos. Em algumas modalidades, osacessos do módulo 310 do corretor coletaram os dados arespeito dos recursos e determinam para cada recurso seisso a imagem do recurso está disponível a uma máquina decliente 10. Em algumas modalidades, o usuário maisadicional compreende uma base de dados que armazena osdados coletados. Em um destes as modalidades, o módulo 310do corretor determinam para cada recurso se isso a imagemdo recurso está disponível a uma máquina de cliente 10baseada nos dados coletados. Em outras modalidades, omódulo 310 do corretor recebe credenciais do usuário edetermina para cada recurso se essa imagem do recurso estádisponível a um cliente a máquina 10 baseou nas credenciaisdo usuário e nos dados coletados. Em algumas modalidades, ousuário mais adicional compreende uma exposição da saída omotor da criação que cria a saída indica a indicação decada recurso disponível ao máquina de cliente 10. Em umdestes ambientes, a criação da exposição da saída o motorcria uma página que descreve uma exposição dos recursosdisponíveis a um cliente o sistema, a página criouresponsivo à informação coletada e a uma página molde. Otransmissor 312 transmite dados alcançados à máquina decliente 10 indicando à máquina de cliente 10 cada recursodeterminado estar disponível a a máquina de cliente 10. Emalgumas modalidades, os dados transmitidos são displayableno sistema do cliente como ícones em uma representaçãográfica da janela da interface de utilizador recursosdisponíveis ao sistema do cliente. Em outras modalidades,transmitido os dados são displayable no sistema do clientecomo ícones em uma interface de utilizador gráfica janelaque representa os recursos não disponíveis ao sistema docliente. O receptor 314 recebem um pedido alcançar um dosrecursos disponíveis. Em algum as modalidades, o receptorrecebem credenciais do usuário da máquina de cliente 10. Emoutras modalidades, o receptor recebe um pedido alcançaruma aplicação programe direto o disponível dos recursosdisponíveis, tais como ura ambiente de computaçãodisponível. Em ainda outras modalidades, uma armazenagem dabase de dados a informação coletada e o módulo de serviçodeterminam para cada recurso armazenado pela pluralidade deusuários se essa imagem do recurso está disponível á amáquina de cliente 10 baseou nas credenciais do usuário ena informação coletada. Em contudo outras modalidades, umadeterminação são feitas a respeito de uma disponibilidadede recursos, tais como as máquinas virtuais ou osservidores de aplicações, fornecendo o acesso a os recursosdisponíveis. O transceptor 316 fornece uma conexão entre amáquina de cliente 10 e uma máquina virtual que fornece orecurso pedido. Em algumas modalidades, o transceptor 316fornece uma conexão entre a máquina de cliente 10 e amáquina virtual que fornece o recurso pedido e otransceptor 316 estabelece uma conexão do protocolo daapresentação-camada. Em um destes as modalidades, otransceptor 316 estabelecem uma conexão de Xll ou de VNC.Em outras destas modalidades, o transceptor 316 estabelecemum AIC conexão. Em ainda outras destas modalidades, otransceptor 316 estabelece uma conexão da RDP. Uma máquinaintermediária da sorte apenas descrita pode ser usada comoalguns uma da máquina remota 30 descreveu acima nos figos.1 -1B, 2A-2B, e 3A- 3D. O FIG. 4 ilustra uma modalidade decomponentes do programa para um cliente execução baseada daaplicação da vizinhança do recurso. Cliente-baseado aexecução da aplicação 416 da vizinhança do recurso pode serusada em a rede usando qualquer um o modelo de computaçãousuário-baseado em que os usuários execute a aplicação davizinhança do recurso ou em uma computação cliente-baseadamodele em qual a máquina de cliente 10 executa a vizinhançado recurso aplicação localmente. A aplicação da vizinhançado recurso inclui um recurso Componente 444 do serviço davizinhança (RNSVC), uma base de dados do recurso componente448, um Application Program Interface da vizinhança dorecurso Componente (RNAPI) 452, um componente da interfacede utilizador da vizinhança do recurso 456, e umesconderijo local 460. A máquina remota 30, por exemplo,inclui o componente de serviço (RNSVC) 444 e o esconderijo448 da autorização do recurso.
A máquina de cliente 10, qual é um exemplorepresentativo de uma máquina de cliente 10 que possasuportar a a execução cliente-baseada da aplicação davizinhança do recurso, inclui o Application ProgramInterface RNAPI 452, a interface de utilizador da interfacede utilizador componente 456, e os componentes locais doesconderijo 4 60. 0 RNAPI 4 52 comunica-se com o componente456 da interface de utilizador e o esconderijo local 460. 0RNSVC 444 comunica-se com o esconderijo 448 da autorizaçãodo recurso e com o RNAPI 4 52 na máquina de cliente 10através da ligação de comunicações 462. A ligação decomunicações 462 pode ser estabelecida perto, por exemplo,usar-se o protocolo do AIC, o protocolo da RDP, o protocoloXll, o protocolo de VNC, ou algum o outro protocoloapropriado do apresentação-nível projetou funcionar sobrestandards industriais protocolos de transporte, tais como oTCP/IP, IPX/SPX, NetBEUI, utilização industry-standardprotocolos de rede, tais como o ISDN, o relê de frame, e oAsynchronous Transf er Mode (ATM) e que prevê as canaisvirtuais, que sessão-são orientadas conexões da transmissãoque podem ser usadas pelo código da aplicação-camada paraemitir comandos para dados de troca. A ligação decomunicações 4 62 pode igualmente ser estabelecido pelosprotocolos que suportam o RPC ou os RPC-equivalentes taiscomo o SABÃO e HTTP. A ligação de comunicações 462 podeigualmente ser uma ligação de comunicações 150 comodescritos acima. Os comandos de canal virtual sãoprojetados ser integrado próxima com as funções de máquinasde cliente. O protocolo do AIC pode suporte a canal virtualda vizinhança do recurso. O protocolo da canal virtual davizinhança do recurso pode incluir quatro grupos decomandos: (1) comandos Iniciação-relacionados; (2) comandosrelacionados da única autenticação que podem ser suportadosperto cada máquina de cliente que quer uma cópia dascredenciais do usuário; (3) Comandos relacionados dos dadosde recurso para executar o recurso Interface de utilizadorda vizinhança; e (4) Comandos rechamada-relacionados dolançamento do recurso para funcionar o usuário relação emuma máquina remota. O esconderijo 44 8 da autorização dorecurso pode ser um esconderijo do autorizado informação dousuário e do grupo para todos os (isto é, publicada)recursos públicos em a faça à máquina a exploração agrícola38 ou em um grupo de domínios confiados. Cada máquinaremota em a a exploração agrícola 38 da máquina pode mantersua própria informação recurso-relacionada em persistente oarmazenamento e acumula o esconderijo 448 da autorização dorecurso no armazenamento temporário. Em uma outramodalidade, toda a informação recurso-relacionada coletadano recurso o esconderijo 448 da autorização pode serarmazenado no armazenamento persistente e ser feitoacessível entre eles usuário na exploração agrícola 38 damáquina. O esconderijo da autorização do recurso 448 podemser executados em um formato proprietário (por exemplo,como uma lista Iig na memória) ou usando Novell' serviçosde diretório de s (NDS) ou algum serviço de diretório queadere a o padrão X.500 definido pela união detelecomunicação internacional (UIT) para diretórioseletrônicos distribuídos. O esconderijo 448 da autorizaçãodo recurso pode seja executado como uma base de dadosrelacionai padrão. O esconderijo 448 da autorização dorecurso inclui uma lista de máquinas remotas. Cada máquinaremota na lista tem um jogo associado dos recursos.Associado com cada recurso é a informação recurso-relacionada que pode incluir o nome do recurso, uma listade máquinas remotas, e os usuários de cliente que sãoautorizados usar aquele recurso. Um exemplo excedente-simplificado da informação recurso-relacionada mantido nabase de dados é ilustrado pelos seguintes usuários A e B databela 2. são os usuários das máquinas de cliente 10, "n/a" indica que uma aplicação desejada o programa éhospedado, mas não está disponível aos usuários da máquinade cliente, e ao " - " indica que o programa de aplicaçãonão está hospedado. TABELA 2 Cliente Calculadora dotratamento de textos da base de dados do Spreadsheet donome da máquina remota Usuário do usuário 30 um usuário Bn/a - Usuário n/a A do usuário B do usuário 32 - Usuário Ado usuário 34 - - - Usuário B Mostras da tabela 2: umalista dos usuários 30, 32, 34; aplicações hospedadas pelousuários (Spreadsheet, base de dados do cliente, tratamentode textos, e calculadora); e aqueles usuários que sãoautorizados usar as aplicações. Por exemplo, o usuário 30hospeda o programa de Spreadsheet, a base de dados docliente e a palavra Processador. 0 usuário A é autorizadousar o Spreadsheet, usuário que B é autorizado a use a basede dados do cliente, e nenhum usuário é autorizado usar apalavra Processador. Deve ser compreendida que outrastécnicas podem ser usadas para indicar quem é autorizadopara usar uma aplicação particular. Por exemplo, o usuárioa informação armazenada na base de dados pode ser usadapara indicar aqueles usuários que são desautorizado parausar uma aplicação particular um pouco do que aquelas quesão autorizadas, ou para indicar que os usuários múltiplospodem alcançar um recurso em uma máquina remota 30, ou paraindicar que um grupo predeterminado de usuários estáautorizado alcançar a recurso particular. Embora a tabela 2descreva uma modalidade em que os recursos que estãodisponíveis são programas de aplicação, uma técnica similarpodem seja usado computando ambientes e outros recursos.
Para obter a informação que é armazenada no esconderijo daautorização do recurso 44 8, a máquina remota 3 0 obtêm ainformação recurso-relacionada de cada um a outra máquinana exploração agrícola 3 8 da máquina a respeito dosrecursos naqueles telecontrole máquinas, incluindo ainformação de controle que indica que usuários de cliente eas máquinas remotas são permitidas para alcançar cadarecurso particular. a informação recurso-relacionadamantida na base de dados pode ou não pode persistir atravésdas repartições da máquina remota 30. Cada máquina remotaque tem a aplicação da vizinhança do recurso instaladodepois disso executa o software 444 de RNSVC. 0 software444 de RNSVC, operar-se em cada máquina remota 3 0estabelece uma ligação de comunicação (por exemplo atubulação nomeada) com pelo menos o um outro e, em algumasmodalidades, máquina remota 30. A troca das máquinasremotas 30 recurso-relacionada informação nas ligações decomunicações. Em uma outra modalidade, o RNSVC o software444 coleta a informação recurso-relacionada do outrotelecontrole a máquina 30 na exploração agrícola 38 damáquina com o registro remoto chama (por exemplo, ocomponente de serviço 444 transmite uma datagrama à outramáquina remota 3 0 no exploração agrícola 3 8 que pede ainformação recurso-relacionada que corresponde ao recursoshospedados por aqueles máquina remota 30).
Em algumas modalidades o esconderijo da autorização dorecurso é povoado por administradores de sistema de pertoprogramas e certificados que comunicam-se com as máquinasde telecontroles 30. O RNSVC o software 444 igualmentemantém os relacionamentos dos grupos e dos usuários aopublicado os recursos na autorização do recurso pôr emesconderijo 448 e acessos a informação ao autenticar umusuário de cliente. Um administrador da máquina remota 3 0pode use uma interface de utilizador para configurar oRNSVC 444. Outras funções do software 444 de RNSVC incluema aplicação serviços e funções pedidos pelo RNAPI 452 ecomunicação com RNAPI 452 na máquina de cliente 10 usandouma vizinhança do recurso virtual excitador da canal(VCRN). O VCRN opera-se de acordo com o recurso 0 protocoloda canal virtual da vizinhança descreveu. O RNAPI 452 é umjogo de funç oes do software ou os serviços que são usadosperto a aplicação da vizinhança do recurso para executarvárias operações (por exemplo, aberto janelas em uma telade exposição, em umas limas abertas, e em umas caixas demensagem da exposição). RNAPI 452 fornece um mecanismogenérico para elementos de acesso da interface deutilizador (por exemplo, ícones) produzido funcionando aaplicação da vizinhança do recurso e objetos em um usuáriode cliente do legado (isto é, antecessor ou existência poralguma hora) relação. Quando a máquina de cliente 10alcançar um recurso disponível, o mecanismo de acesso podelança o recurso na máquina remota 30, se necessário (porexemplo, quando a máquina de cliente 10 for incapaz deexecutar localmente aplicação). O RNAPI 452 fornece toda ainformação publicada do recurso ao usuário conecte ocomponente 456 para a exposição na tela 12 (FIG. 1) docliente máquina 10. O RNAPI 452 igualmente controla iníciosde uma sessão da exploração agrícola 38 da máquina em umlocal base de dados de credenciais do início de uma sessão(por exemplo, senhas) para usuários da máquina de cliente10 para suportar a única característica da autenticação. Ascredenciais podem ou não podem ser persistente através deuma repartição (poder-fora e em ciclos) da máquina decliente 10. O RNAPI 452 fornece a gerência automática emanual para Objetos da vizinhança do recurso armazenados noesconderijo local 460. O esconderijo local 460 podem serrefrescados manualmente pelo usuário da máquina de cliente10, ou em a user-def inable refresque a taxa, ou pelousuário a qualquer hora durante uma conexão Em a Aexecução de Windows, o RNAPI 452 pode construir a lima deaplicação remota as associações do recurso e controlam o "Start" ícones do menu e do área de trabalho para atalhos doobjeto do recurso. 0 módulo 456 da interface de utilizadorconecta o RNAPI 4 52 e pode ser um superset funcional de umainterface de utilizador existente do cliente (por exemplo,recurso remoto Gerente). O módulo 456 da interface deutilizador alcança a informação armazenada no o esconderijolocal 460 com o RNAPI 452 e apresenta visualmente essainformação a o usuário na tela de exposição 12 (FIG. 1) damáquina de cliente 10. a informação indicada é uma misturada informação gerada por um usuário do cliente máquina 10 einformação obtida pela aplicação da vizinhança do recurso.
O módulo 4 56 da interface de utilizador pode igualmentemostrar ao usuário todos os recursos que o usuárioatualmente está alcançando e todo o sessão ativo edisconnected. Em uma modalidade Windows-based, o módulo 456da interface de utilizador pode apresente uma variedade decomponentes gráficos, tais como janelas e pull-down menus,para ser indicado na tela de exposição 12 (FIG. 1) . Umaexposição da a combinação de tais componentes gráficos dainterface de utilizador é referida geralmente como um "área de trabalho." Um área de trabalho produziu pelainterface de utilizador que o módulo 456 pode inclua umajanela da vizinhança do recurso que indica a vizinhança derecursos disponíveis ao usuário da máquina de cliente 10.
Estes recursos podem seja uma combinação filtrada dosrecursos publicados hospedados por uma exploração agrícolada máquina 38. 0 módulo 456 da interface de utilizador podegerar uma janela da vizinhança do recurso para cadaexploração agrícola 3 8 da máquina ou fundir os recursos damáquina diferente explorações agrícolas 38 sob uma únicajanela da vizinhança do recurso. A nível superior, a janelada vizinhança do recurso inclui um dobrador para cadaexploração agrícola 38 da máquina. Estalar em um dosdobradores produz uma janela contendo uma respresentação(por exemplo, um ícone) de cada recurso hospedadodisponível a o usuário, por exemplo, vê FIGOS. 6A e 6B. Ajanela da vizinhança do recurso tornam-se o ponto de focopara alcançar recursos publicados, e o usuário o módulo derelação 4 56 pode ser usado para alcançar recursos e lançaaplicações com o RNAPI 452. Por exemplo, o usuário damáquina de cliente 10 pode usar-se o rato 18 (FIG. 1) paraselecionar um dos ícones indicados e para lança recursoassociado. Uma característica de uma execução cliente-baseada é que o usuário pode consultar objetos indicados najanela da vizinhança do recurso embora o cliente a máquinaé fora de linha, isto é, a conexão 462 é inativa. Também,um usuário do cliente a máquina 10 pode arrastar objetos daaplicação e dobradores fora do recurso Janela da vizinhançae em outros componentes gráficos (por exemplo, outrasjanelas, dobradores, etc.) do área de trabalho. O FIG. 5mostra uma modalidade dos componentes do programa para umusuário execução baseada da aplicação da vizinhança dorecurso. os componentes incluem um componente 544' doserviço (RNSVC); , uma base de dados do recurso componente548' , um componente 552' do Application Program Interface(RNAPI); , a Componente 556' da interface de utilizador; eum esconderijo local 560'. Cada componente de software 544', 548' , 552' , 556' , e 560' é instalado no servidor deaplicações 30'. os componentes de software para a execuçãousuário-baseada correspondem ao componentes de softwarepara a execução cliente-baseada do FIGO. 4. afuncionalidade de cada componente de software usuário-baseado é similar ao cliente contrapartes baseadas, com asdiferenças ou as capacidades adicionadas descritas abaixo.RNSVC 544' comunica-se com a base de dados 548' do recurso;e com o RNAPI 552' usando chamadas de procedimento locais.
O RNAPI 552' igualmente comunica-se com módulo 556' dainterface de utilizador; e o esconderijo local 560'.Similar a isso descrito em FIG. 4 para a máquina de cliente10, cliente a máquina 10 entra à rede 40 (FIG. 1), ousuário 30' torna-se e mantém uma base de dados que contema informação relacionada do recurso coletada das outrasmáquinas na exploração agrícola 3 8 da máquina, e umaligação de comunicação é estabelecido entre o usuário 30' ea máquina de cliente 20. A aplicação usuário 30' pode estarem uma comunicação com a máquina de cliente 10 através deum AIC conexão 5 62'.
Para funcionar a aplicação da vizinhança do recurso nousuário-baseado a execução, o usuário da máquina de cliente10 conecta a um área de trabalho inicial (no usuário 30') elançamentos a aplicação da vizinhança do recurso de dentrodesse ambiente do área de trabalho. A conexão ao área detrabalho inicial pode ocorrer automaticamente, por exemplo,através de um certificado do início de uma sessão damáquina de cliente 20, através de uma entrada em a GrupoStartup, ou por um outro mecanismo centralmente controladodo específico do usuário. Tudo a gerência de aplicaçãoremota e o lançamento são realizados com esta área detrabalho inicial. Similar a isso descrito em FIG. 4 para ousuário 30, o usuário 30' usos as credenciais do usuáriopara determinar aqueles recursos esses o usuário do clientea máquina 10 é autorizada para usar-se. Uma janela gráficada vizinhança do recurso é retornado à máquina de cliente10 e indicado na tela 22 do cliente (FIG. 1). Esta janelapode conter os ícones que representam o disponível e,possivelmente, recursos não disponíveis que estão navizinhança do recurso do cliente máquina 20. Em umamodalidade, a aplicação com suporte na internet davizinhança do recurso inclui um grupo de objetos quecontrolam vários aspectos de um recurso. Em um amodalidade, a aplicação da vizinhança do recurso incluitrês preliminares classes de objeto que " in" do plugue; aum servidor de rede: uma classe de objeto da passagem; aclasse de objeto das credenciais; e uma classe de objetodos recursos. Em algum específico as modalidades, asclasses de objeto são fornecidas como JavaBeans. Os trêspreliminares as classes de objeto facilitam: validação decredenciais do usuário em uma exploração agrícola dousuário; geração de lista de recursos publicados que umusuário especific pode alcançar; fornecimento dainformações detalhadas sobre um recurso publicadoespecífico; e conversão da informação da aplicação dorecurso em um formato compatível com protocolo sobre que aconexão será feita. Quando desde que como JavaBeans, osobjetos puderem ser alcançados em um número de maneirasdiferentes. Por exemplo, podem ser compilados como objetosde COM e ser feitos disponível ao servidor de rede comocomponentes de ActiveX. Em uma outra modalidade, JavaBeanspode ser usado em seu formulário nativo, como quando ousuário usa Java O usuário pagina a tecnologia. Em contudouma outra modalidade, o JavaBeans pode ser instantiated eusado diretamente era um Java Servlet. Em ainda uma outramodalidade, a máquina remota 30 pode instantiate oJavaBeans como COM objeta diretamente. Uma classe de objetodas credenciais controla a informação necessária autenticarum usuário em uma exploração agrícola 3 8 da máquina dealvo. As passagens de um objeto das credenciais armazenaramo usuário credenciais a outros objetos da vizinhança dorecurso. Em algumas modalidades, o objeto das credenciais éuma classe abstrata que não possa instantiated e nãorepresente um usuário credenciais de s. As várias extensõesda classe podem ser fornecidas para permitir diferentemecanismos de autenticação a ser usados, incluindo abiometria, smart card, símbolo mecanismos de autenticaçãobaseados tais como a desafiar-resposta e a geração tempo-baseada da senha, ou outro. Por exemplo, um " credentials"do texto desobstruído; extensão podem ser contanto que aslojas um usuário s nomeia, domínio, e senha no texto liso.Uma classe de objeto da passagem segura comunicações comuma máquina de alvo exploração agrícola 38. Em umamodalidade, a classe de objeto da passagem é fornecida comoum sumário Classe de Java que não pode instantiated. Umobjeto particular da passagem pode recuperar informação dorecurso comunicando com uma exploração agrícola 3 8 damáquina usando um detalhe protocolo, lendo a informaçãopsta em esconderijo do recurso, uma combinação destes doismétodos, ou outros vários métodos. Como notável acima, aclasse de objeto da passagem pode pôr em esconderijo ainformação a minimize uma comunicação com uma exploraçãoagrícola 3 8 da máquina de alvo. Extensões ao o objeto dapassagem pode ser fornecido para comunicar-se com aexploração agrícola 3 8 da máquina sobre protocolosespecíficos, tais como o HTTP. Em uma modalidade, umaclasse de extensão é contanto que permite que o objeto dapassagem se comunique com a exploração agrícola da máquina38 através das tubulações nomeadas WINDOWS NT. O objeto dapassagem pode fornecer gancho da relação de programação daaplicação que permite o outro recurso A vizinhança objetapara perguntar o objeto para a informação da aplicação. Umaclasse de objeto dos recursos contem a informação sobrerecursos publicados e informação dos retornos sobre osrecursos hospedados pela exploração agrícola 38 da máquinaem ordem para criar o Página de rede da vizinhança dorecurso. A classe de objeto dos recursos cria os objetosque representam recursos recuperando a informação emrelação ao recursos, de um objeto criado pelo objeto dapassagem ou diretamente de as máquinas na exploraçãoagrícola 3 8 da máquina. Um objeto dos recursos actua comoum recipiente para determinadas propriedades do recurso, dealgum settable e de algum nao settable, como: o nome dorecurso (nao settable); a largura da janela do cliente, nospixéis, para este recurso (settable); a altura da janela docliente, nos pixéis, para esta recurso (settable); o númerode cores a usar-se ao conectar ao recurso (settable); aseveridade da limitação áudio da largura de faixa(settable); o nível de cifragem a usar-se ao conectar aorecurso (settable); o nível de vídeo a uso ao conectar aeste recurso (settable); se o recurso deve ser coloc em umclient' menu do começo de s (settable); se o recurso deveser coloc no client' área de trabalho de s (settable); aidentidade da vizinhança do recurso dobrador a que orecurso pertence (settable); a descrição do recurso(settable) ; a fonte da lima do ícone dos gráficos para orecurso (settable); o tipo da janela que deve ser usada aoconectar ao recurso (nao settable); e se cancelarparâmetros de defeito para o objeto. FIGO. 6A é umscreenshot de uma modalidade da vizinhança do recursojanela 620 que pode ser indicada na tela 12, 22 (FIG. 1) deum cliente máquina 10, 10' após a vizinhança do recurso aaplicação executou, a janela 120 inclui os ícones gráficos622. Cada ícone 622 representa um recurso isso é hospedadopor uma das máquinas em uma exploração agrícola 3 8 damáquina. Cada um representou o recurso está disponível aousuário da máquina de cliente 10. O usuário pode selecionarum dos recursos usando o rato 18, 28 ou teclado 14, 24.FIGO. 6B é um screenshot de uma outra modalidade de umrecurso Janela 624 que pode ser indicada na tela 12, 22 davizinhança (FIG. 1) de uma máquina de cliente 10, 10' apósa vizinhança do recurso a aplicação tem executado. A janela624 inclui os ícones gráficos 626, 628. Cada ícone 626, 628representam um recurso que seja hospedado por uma dasmáquinas em uma máquina exploração agrícola 38.
Cada recurso representado por um dos ícones 626 estádisponível ao usuário da máquina de cliente 10. 0 usuáriopode selecionar uma da utilização dos recursos o rato 18,28 ou teclado 14, 24. Para a vizinhança com suporte nainternet do recurso ambientes, os screenshots dos FIGOS. 6Ae 6B são similares, salvo que ícones 622, 626, 628 sãoindicados dentro de uma janela de navegador. Cada recursorepresentado por um dos ícones 628 é não disponível aousuário da máquina de cliente 10, embora tais recursosestejam atuais no usuário exploração agrícola. 0unavailability destes recursos pode ser anotado na tela deexposição (por exemplo, " X" s pode ser extraído atravésdos ícones 628). Uma tentativa de alcançar tal a o recursopode provocar uma mensagem que indica que o usuário nãoestá autorizado a alcance o recurso. Alternativamente, atentativa pode invocar reservar do método o usuário damáquina de cliente 10 para pedir o acesso ao recurso. Emalgumas modalidades, o recurso compreende um ambiente decomputação. Em uma destas modalidades, uma conexão éestabelecida entre o cliente máquina 10 e uma máquinavirtual que hospeda o ambiente de computação pedido. Em umamodalidade, um protocolo da camada de apresentação é usadono estabelecimento conexão entre o sistema do cliente e amáquina virtual. Em outros a modalidade, o protocolo Xll éusada em estabelecer a conexão. Em ainda uma outramodalidade, o protocolo remoto do Área de trabalho (RDP) éusada em estabelecer a conexão. Em contudo uma outramodalidade, a computação independente 0 protocolo daarquitetura (AIC) é usado em estabelecer a conexão. Emalgumas modalidades, uma conexão é estabelecida entre ocliente máquina 10 e uma máquina física, tal como umaestação de trabalho ou um usuário tradicional, hospedando oambiente de computação pedido. Em outras modalidades, a aconexão é estabelecida entre a máquina de cliente 10 e umaferragem divisória que hospeda o ambiente de computaçãopedido. Em algumas modalidades, uma enumeração de umapluralidade de recursos disponível à máquina de cliente 10está (etapa 204) responsivo fornecido á determinação por ummotor da política a respeito de se e como uma máquina decliente pode alcançar um recurso. 0 motor da política podecoletar a informação sobre máquina de cliente antes defazer a determinação. Referência agora o FIGO. 7A, um amodalidade de uma rede informática é descrita que incluauma máquina de cliente 10, uma exploração agrícola 38 damáquina, um agente de coleção 704, um motor 706 dapolítica, uma política base de dados 708, e um usuário 30'do recurso;. Em uma modalidade, o motor da política 706 sãouma máquina remota 30. Embora somente uma máquina decliente 10, coleção agente 704, motor 706 da política,exploração agrícola 3 8 da máquina, e usuário 30' dorecurso; seja descrito na modalidade mostrada na figura 7A,deve-se compreender que o sistema pode fornecer o múltiploum de alguns ou cada um daqueles componentes. Na brevevista geral, quando a máquina de cliente 10 transmitir omotor da política 706 um pedido 206 para uma enumeração dorecurso, o agente de coleção 704 comunicam-se com a máquinade cliente 10, recuperando a informação sobre o cliente amáquina 10, e transmite a informação 712 da máquina decliente à política motor 706. 0 motor 706 da política fazuma decisão do controlo de acessos perto aplicando umapolítica da base de dados 708 da política à informaçãorecebida 712. Mais detalhadamente, a máquina de cliente 710transmite ao motor 706 a da política pedido 206 para aenumeração do recurso. Em uma modalidade, o motor dapolítica 706 residem em um usuário 30' do recurso,·. Em umaoutra modalidade, o motor da política 706 residem em umamáquina remota 30. Em ainda uma outra modalidade, umrecurso usuário 30' recebe o pedido 206 da máquina decliente 10 e transmite pedido 206 ao motor 706 da política.Em contudo uma outra modalidade, cliente a máquina 10transmite um pedido 206 para a enumeração do recurso a umintermediário máquina remota 30' " (não mostrado), quetransmite o pedido 206 à política motor 706. Em algumasmodalidades, a máquina de cliente 10 transmite o pedido 206sobre uma conexão de rede tal como aquelas descritas acima.
Em cima da recepção o pedido, o motor 706 da políticainicia a informação que recolhe pelo agente de coleção 704.
0 agente de coleção 704 recolhe a informação a respeito docliente a máquina 10 e transmite a informação 712 ao motor706 da política. Em algumas modalidades, o agente decoleção 704 recolhe e transmite informação 712 sobre umaconexão de rede. Em algumas modalidades, a coleção o agente704 compreende o bytecode, tal como uma aplicação escritano bytecode linguagem de programação JAVA. Em algumasmodalidades, o agente de coleção 704 compreende pelo menosum certificado. Naquelas modalidades, o agente de coleção704 recolhe a informação funcionando pelo menos umcertificado na máquina de cliente 10. Em algumasmodalidades, o agente de coleção compreendem um controleativo de X no máquina de cliente 10. Um controle ativo de Xé um modelo de objeto componente especializado (COM) objeteque instrumentos um jogo das relações que o permitem deolhar e actuar como um controle. Em uma modalidade, o motor706 da política transmite o agente de coleção 704 à máquinade cliente 10. Em algumas modalidades, o motor 706 dapolítica exige uma outra execução do agente de coleção 704após o agente de coleção 704 transmitiram a informação 712ao motor 706 da política. Em alguma destes as modalidades,o motor 706 da política exigem uma outra execução dacoleção agente 704 porque o motor 706 da política pode tera insuficiente informação 712 para determinar se a máquinade cliente 10 satisfaz uma condição particular. Em outrasmodalidades, o motor 706 da política exigem uma pluralidadede execuções do agente de coleção 704 em resposta àinformação recebida 712. Em algumas modalidades, o motor706 da política transmite instruções ao agente de coleção704 que determina o tipo de informação o agente de coleção704 recolhimentos da máquina de cliente 10. Naquelasmodalidades, um sistema o administrador pode configurar asinstruções transmitidas ao agente de coleção 704 do motor706 da política. Isto fornece o maior controle sobre o tipode informação coletada. Isto igualmente expande os tipos dedecisões do controlo de acessos que o motor 706 da políticapode fazer, devido ao controle maior sobre o tipo deinformação coletada.
A informação 712 dos recolhimentos do agente decoleção 704 incluindo, sem limitação, a identificação damáquina da máquina de cliente 10, operando-se tipo dosistema, existência de um remendo a um sistema deexploração, endereços do MAC de cartões de rede instalados,um watermark digital no dispositivo do cliente, sociedadedentro um diretório ativo, existência de um varredor dovírus, existência de um guarda-fogo pessoal, umencabeçamento do HTTP, tipo do navegador, tipo dedispositivo, informação da conexão de rede como o endereçodo Internet Protocol ou a escala dos endereços,identificação da máquina do máquina remota 30, data ou horado pedido do acesso que incluem ajustes para fusos horáriosde variação, e credenciais da autorização. Em algumasmodalidades, o tipo de dispositivo é um assistente digitalpessoal. Em outras modalidades, o tipo de dispositivo sãoum telefone celular. Em outro as modalidades, o tipo dedispositivo são um computador portátil. Em outrasmodalidades, o tipo de dispositivo é um computador desecretária. Em outras modalidades, o tipo de dispositivo é
Quiosque do Internet. Em ainda outras modalidades, o tipode dispositivo são um console do jogo. Em algumasmodalidades, o watermark digital inclui os dados queencaixam. Em algumas modalidades, o watermark compreendemum teste padrão dos dados introduzidos em a arquive parafornecer a informação da fonte sobre a lima. Em outrasmodalidades, o watermark compreende arquivos de dadospicados para fornecer a deteção da calcadeira. Em outro asmodalidades, o watermark fornecem a informação dos direitosreservados sobre a lima. Em algumas modalidades, ainformação da conexão de rede pertence a capacidades dalargura de faixa. Em outras modalidades, a conexão de redea informação pertence ao endereço do Internet Protocol damáquina de cliente 10. Em ainda outras modalidades, ainformação da conexão de rede consistem no Endereço doInternet Protocol da máquina de cliente 10. Em umamodalidade, a informação da conexão de rede compreende umazona da rede que identifica o início de uma sessão agente aque a máquina de cliente 10 forneceu credenciais daautenticação. Em algumas modalidades, as credenciais daautorização incluem o um número tipos de informação deautenticação, incluindo sem limitação, nomes de usuário,nomes do cliente, endereços do cliente, senhas, números deidentificação pessoal (Pinos), amostras da voz, passcodesone-time, dados bioraétricos, certificados digitais,bilhetes, etc. e combinações disso. Após ter recebido ainformação recolhida 712, o motor 706 da política fazem umadecisão do controlo de acessos baseada no informaçãorecebida 712. Referência agora o FIGO. 7B, um diagrama debloco descreve uma modalidade da motor 706 da política,incluindo um primeiro componente 720, incluindo umacircunstância base de dados 722 e um agente 724 do iníciode uma sessão, e um segundo componente 730, incluindo abase de dados 732 da política. O primeiro componente 720aplica uma circunstância do condicione a base de dados 722à informação 712 recebida sobre a máquina de cliente 10 edetermina se a informação recebida 712 satisfaz acircunstância. Em algumas modalidades, uma circunstânciapode exigir que a máquina de cliente 10 execute um sistemade exploração particular para satisfazer a circunstância.
Em outro as modalidades, uma circunstância podem exigir quea máquina de cliente 10 executa a remendo particular dosistema de exploração para satisfazer a circunstância. Emoutro ainda as modalidades, uma circunstância podem exigirque a máquina de cliente 10 fornece um MAC endereço paraque cada cartão de rede instalado satisfaça acircunstância. Em algum as modalidades, uma circunstânciapodem exigir que a máquina de cliente 10 indica sociedadeem um diretório ativo particular para satisfazer acircunstância. Em outros a modalidade, uma circunstânciapode exigir que a máquina de cliente 10 executa um vírusvarredor para satisfazer a circunstância. Em outrasmodalidades, uma circunstância pode exigir que a máquina decliente 10 executa um guarda-fogo pessoal para satisfazer acircunstância. Em algumas modalidades, uma circunstânciapodem exigir que a máquina de cliente 10 compreende um tipode dispositivo particular para satisfazer a circunstância.
Em outras modalidades, a a circunstância pode exigir que amáquina de cliente 10 estabelece um tipo particular deconexão de rede para satisfazer a circunstância. Se ainformação recebida satisfaz uma circunstância, o primeirocomponente 720 armazena um identificador para essacircunstância em uma série de dados 726. Em uma modalidade,a informação recebida satisfaz uma circunstância se ainformação faz a circunstância verdadeiro. Por exemplo, umacircunstância pode exigir que um sistema de exploraçãoparticular seja instalado. Se a máquina de cliente 10 temesse sistema de exploração, a circunstância é verdadeira esatisfeito. Em uma outra modalidade, a informação recebidasatisfaz a condicione se a informação faz a condição falsa.
Por exemplo, uma circunstância pode endereçar se o spywareexiste na máquina de cliente 10. Se o cliente a máquina 10não contem o spyware, a circunstância é falsa e satisfeita.
Em algumas modalidades, o agente 724 do início de umasessão reside fora da política motor 706. Em outrasmodalidades, o agente 724 do início de uma sessão reside nomotor 7 06 da política. Em uma modalidade, o primeirocomponente 720 inclui um agente do início de uma sessão724, que inicia a informação que recolhe sobre a máquina decliente 10. Em algum as modalidades, o agente 724 do iníciode uma sessão compreendem mais uma loja dos dados. Nestesas modalidades, a loja dos dados incluem as circunstânciaspara que a coleção o agente pode recolher a informação.
Esta loja dos dados é distinta da circunstância base dedados 722. Em algumas modalidades, o agente 724 do iníciode uma sessão inicia o recolhimento da informaçãoexecutando o agente de coleção 704. Em outras modalidades,o agente do início de uma sessão informação de 724 novatosque recolhe transmitindo o agente de coleção 704 ao máquinade cliente 10 para a execução na máquina de cliente 10. Emoutro ainda as modalidades, o agente 724 do início de umasessão iniciam a informações adicionais que recolhe emseguida recebendo a informação 712. Em uma modalidade, oagente 724 do início de uma sessão também recebe ainformação 712. Nesta modalidade, o agente 724 do início deuma sessão gera a série de dados 726 baseou na informaçãorecebida 712. Em algum as modalidades, o agente 724 doinício de uma sessão geram a série de dados 726 aplicando acondicione da base de dados 722 à informação recebida dacoleção agente 704. Em uma outra modalidade, o primeirocomponente 720 inclui uma pluralidade de agentes 724 doinício de uma sessão. Nesta modalidade, pelo menos uma dapluralidade de início de uma sessão os agentes 724 residemem cada domínio da rede de que uma máquina de cliente 10pode transmita um pedido 710 do recurso. Nesta modalidade,a máquina de cliente 10 transmite o pedido 710 do recurso aum agente particular 724 do início de uma sessão. Em algumas modalidades, o agente 724 do início de uma sessãotransmitem ao motor 706 da política domínio da rede de quea máquina de cliente 10 alcançou o agente 724 do início deuma sessão. Em uma modalidade, o domínio da rede de que amáquina de cliente 10 alcança um agente 724 do início deuma sessão é referido como a zona da rede do clientemáquina 10.A base de dados 722 da circunstância armazena ascircunstâncias essas o primeiro componente 720 aplicam-se àinformação recebida. A base de dados 732 da políticaarmazena as políticas que o segundo componente 73 0 seaplica à série de dados recebidos 726. Em algummodalidades, a base de dados 722 da circunstância e a lojada base de dados 73 2 da política dados em uma base de dadosODBC-complacente. Por exemplo, a base de dados 722 dacircunstância e a base de dados 732 da política pode serfornecida como uma base de dados de ORACLE, manufaturadopor Oracle Corporation de Redwood Shores, Califórnia. Emoutro as modalidades, a base de dados 722 da circunstânciae a base de dados 732 da política podem ser a Base de dadosde Microsoft Access ou uma base de dados de usuário deMicrosoft SQL, manufaturado por Microsoft Corporation deRedmond, Washington. Depois que o primeiro componente 72 0aplica a informação recebida a cada um condicione na basede dados 722 da condição, o primeiro componente transmiteos dados jogo 726 ao segundo componente 730. Em umamodalidade, o primeiro componente 720 transmite somente asérie de dados 726 ao segundo componente 730.
Conseqüentemente, nisto a modalidade, o segundo componente730 não recebe a informação 712, somente identificadorespara circunstâncias satisfeitas. 0 segundo componente 730recebe os dados o jogo 726 e faz uma decisão do controlo deacessos aplicando uma política do a base de dados 732 dapolítica baseou nas circunstâncias identificadas dentro dasérie de dados 726. Em uma modalidade, a base de dados 732da política armazena as políticas aplicadas ao informaçãorecebida 712. Em uma modalidade, as políticas armazenadasna política a base de dados 732 é especific pelo menos naparte pelo administrador de sistema. Em uma outramodalidade, um usuário especific pelo menos algumas daspolíticas armazenadas no base de dados 732 da política. Apolítica ou as políticas especificadas pelo utilizador sãoarmazenadas como preferências. A base de dados 732 dapolítica pode ser armazenada em temporário ou em permanentememória ou, por exemplo, distribuído através dos usuáriosmúltiplos. Usando o motor 706 da política como apenasdescritos, uma decisão do controlo de acessos baseado nainformação recebida sobre uma máquina de cliente 10 éfeito. Em cima recebendo a informação recolhida sobre amáquina de cliente 10, o motor 706 da política gera umasérie de dados baseada na informação. A série de dadoscontem identificadores para cada circunstância satisfeitapela informação recebida 712. o motor 706 da políticaaplica uma política a cada condição identificada dentro dasérie de dados 726. Essa aplicação rende uma enumeração dosrecursos que o cliente a máquina 10 pode alcançar. Emalgumas modalidades, a enumeração dos recursos inclui umaenumeração dos níveis de acesso ao recurso. Em um destes asmodalidades, uma pluralidade de ações permissíveisassociadas com o recurso são enumerado. Em outras destasmodalidades, uma pluralidade de métodos de a execução dorecurso é enumerada. Os presentes do motor 706 da políticaentão essa enumeração à máquina de cliente 10. Em algumasmodalidades, como descritas acima em relação aos figos. 6Ae 6B, o motor 706 da política criam um original da línguade margem de benefício de hypertext (HTML) usado paraapresentar a enumeração à máquina de cliente. Em algumasmodalidades, o motor 706 da política transmite a enumeraçãoa uma máquina remota diferente 30. Em uma destasmodalidades, o telecontrole a máquina 30 transmite aenumeração ã máquina de cliente 10. Em outros de estasmodalidades, a máquina remota 30 aplicam políticasadicionais ao enumeração. Em ainda outras destasmodalidades, a máquina remota são dispositivo tal como umapassagem de aplicação ou um guarda-fogo. Em alguma destesas modalidades, o motor 706 da política transmitem um nívelatribuído de ação aplicável a um recurso pedido a umamáquina remota 30 que funciona como a usuário do corretor.O usuário do corretor estabelece, responsivo ao nívelatribuído de alcance, uma conexão entre a máquina decliente 10 e uma computação ambiente que fornece o recursopedido. Referindo agora FIG. 8, um diagrama de fluxodescreve uma modalidade do etapas tomadas para fornecer oacesso a um recurso. Na breve vista geral, um pedido paraalcance a um recurso é recebido (etapa 802). Um método parafornecer o acesso a o recurso é identificado (etapa 804) .Um usuário da execução da aplicação pode ser selecionadopara fornecer o acesso ao recurso (etapa 806). Um ambientevirtualizado pode ser selecionado para fornecer o acesso aum recurso (etapa 808). Uma aplicação fluir o serviço podeser selecionada para fornecer o acesso ao recurso (etapa816). Se o ambiente virtualizado é selecionado parafornecer o acesso ao recurso, a máquina da execução éidentificada (etapa 810). Uma máquina virtual é selecionada(etapa 812). A máquina virtual é configurada (etapa 814). 0acesso ao recurso é fornecido (etapa 818). Ainda referindoFIG. 8, e mais detalhadamente, um pedido para o acesso á orecurso é recebido (etapa 802). Em uma modalidade, umamáquina remota 3 0 recebe o pedido. Em algumas modalidades,a máquina remota 3 0 é usuário do corretor intermediário. Emoutras modalidades, a máquina remota 30 é a passagem. Emainda outras modalidades, a máquina remota 3 0 são um motorda política. Em contudo outras modalidades, a máquinaremota 30 são um dispositivo. Em uma modalidade, a máquinaremota 30 verific que o usuário é autorizado para alcançaro recurso. Em ainda uma outra modalidade, o telecontrole amáquina 30 recebe com a informação do pedido que verific aautorização para alcance pelo usuário. Em uma modalidade, amáquina remota 3 0 recebe um pedido para programa deaplicação. Em uma outra modalidade, a máquina remota 30recebe a pedido para o acesso a uma lima. Em contudo outrasmodalidades, a máquina remota 3 0 recebe um pedido para oacesso a um ambiente de computação. Em um destes asmodalidades, o ambiente de computação são um ambiente doárea de trabalho de que a máquina de cliente 10 podeexecutar programas de aplicação. Em outra destes asmodalidades, o ambiente de computação fornecem o acesso auns ou vários programas de aplicação. Em algumasmodalidades, a máquina remota 30 recebe a pedido para oacesso a um ambiente de computação suportado por umapluralidade de exigências de ferragem. Em algumasmodalidades, uma máquina remota 3 0 funcionar como o sistemada distribuição recebe um pedido para o acesso a umrecurso, como a execução de um programa de aplicação, deuma máquina de cliente 10. Um método para fornecer o acessoao recurso é identificado (etapa 804).
Em uma modalidade, uma máquina remota 3 0 consulta umabase de dados para identificar método para fornecer oacesso. Em uma outra modalidade, uma máquina remota 30consulta uma política ou governa a base de dados paraidentificar o método para fornecer o acesso. Em ainda umaoutra modalidade, uma máquina remota 30 recebe de um motorda política uma identificação de um método a selecionar.Para as modalidades em que o recurso é um programa deaplicação, uma política pode permitir a execução doprograma de aplicação na máquina de cliente 10. Em outrasdestas modalidades, uma política podem permitir a máquinade cliente 10 a receba um córrego das limas que compreendemo programa de aplicação. Nesta modalidade, o córrego daslimas pode ser armazenado e executado em um ambiente daisolação sobre o cliente. Em ainda outras destasmodalidades, uma política podem permitir a execução de oprograma de aplicação somente em uma máquina remota, talcomo uma aplicação o usuário, e exige a máquina remotatransmitir dados da aplicação-saída ao máquina de cliente10. Contudo outras destas modalidades, uma política podemreservar execução do programa de aplicação somente em umambiente de computação hospedado sobre uma máquina virtual.Em qualquer um destes casos, um córrego das limascompreendendo os programas de aplicação podem ser emitidosà máquina remota. Para as modalidades em que o recurso é umambiente de computação, a a política pode permitir ainstalação do ambiente de computação na máquina de cliente10. Em outras destas modalidades, uma política podepermitir a máquina de cliente 10 para alcançar uma cópia doambiente de computação que executa em uma máquina virtualsobre uma máquina remota 30. Em ainda outras destasmodalidades, uma política podem proibir o usuário damáquina de cliente 10 para alcançar a computação pedida oambiente e oferece um ambiente de computação alternativo.
Para as modalidades em que o recurso é um ambiente decomputação suportado por uma pluralidade de recursos deferragem, uma política pode permitir o cliente máquina 10para alcançar uma cópia do ambiente de computação queexecuta em um virtual máquina, que executa por sua vez emum hypervisor que fornece o acesso ao pluralidade pedida derecursos de ferragem. Em ainda outras destas modalidades,uma política pode proibir o usuário da máquina de cliente10 alcançar o ambiente de computação pedido e oferecer umambiente de computação suportado pelo pluralidadealternativa de recursos de ferragem. A máquina remota 3 0pode escolher fornecer o acesso a uma aplicação usuário daexecução que fornece o acesso a um programa de aplicaçãopedido (etapa 806). 0 usuário da execução da aplicaçãoexecuta o programa de aplicação e transmite dados de saídada aplicação à máquina de cliente 10. A aplicação o usuárioda execução pode transmitir os dados de saída da aplicaçãosobre uma apresentação mergulhe o protocolo, tal como Xll,VNC, AIC, ou RDP. Consultando de volta a etapa 8 04, amáquina remota 30 pode escolher fornecer alcance a umaaplicação que flui o serviço capaz de transmitir pedidoprograma de aplicação à máquina de cliente 10 (etapa 816)para a execução. As modalidades da aplicação que fluemserviços são descritas no maior detalhe abaixo. Consultandode volta a etapa 8 04, a máquina remota 3 0 pode escolher aresponda ao client' pedido de s permitindo o acesso a umambiente de computação fornecido por uma máquina virtual, oambiente de computação que fornece o acesso a o recursopedido (etapa 8 08). 0 ambiente de computação pode serfornecido por uma máquina virtual lança em um hypervisorque executa em uma máquina remota 3 0'. Em outrasmodalidades, a máquina remota 30 determina provision sobrea máquina de cliente 10 uma máquina virtual que fornece oacesso à computação ambiente. Nas modalidades onde umamáquina remota 3 0 determina fornecer acesso ao recursopedido através de um ambiente virtualizado, o telecontrolea máquina 3 0 identifica uma máquina da execução que forneceo acesso a uma computação ambiente pedido pela máquina decliente 10 (etapa 810) . Em um destes as modalidades, amáquina remota 30 identificam uma máquina da execução capazde hospedando o ambiente de computação. Em outras destasmodalidades, a máquina remota 3 0 determina que o usuárioque pede o acesso à computação o ambiente falta aautorização alcançar o ambiente de computação pedido. Amáquina remota 3 0 pode identificar um ambiente decomputação alternativo que o usuário é autorizado alcançar.
Em ainda outras destas modalidades, a máquina remota 3 0identifica uma máquina da execução em que um hypervisorfornece o acesso a uma pluralidade pedida de ferragem e emqual o ambiente de computação pedido pode executar. Emoutras modalidades, a máquina remota 3 0 é uma máquina daexecução capaz de hospedar o ambiente de computação. Emalgumas destas modalidades, o ambiente de computação éinstalado na máquina da execução. Em outro de estasmodalidades, um hypervisor na máquina da execução emulamuma pluralidade dos recursos de ferragem exigidos peloambiente de computação pedido e o ambiente de computação élança no hypervisor. Em algumas modalidades, a máquinaremota 30 identifica um telecontrole máquina 30'funcionamento como uma máquina da execução capaz defornecer o acesso a o ambiente de computação suportado poruma pluralidade pedida de ferragem recursos. Em uma destasmodalidades, a máquina remota 30' funções como uma máquinada execução em que um hypervisor que emula a pluralidadepedida os recursos de ferragem executam e em qual umambiente de computação suportou pelo hypervisor executa. Emalgumas modalidades, uma máquina da execução que fornece aferragem recursos, físico ou virtual, capazes de suportaruma máquina virtual particular é responsivo identificado auma determinação deequilxbrio. Em um destes as modalidades,a máquina da execução são responsivas selecionado ao carga-equilíbrio informação mantida por um usuário 30 dagerência. Em algumas modalidades, o usuário 30 da gerênciaé uma única máquina. Em ainda outras modalidades, diversasas máquinas remotas 30 podem ser capazes da actuação comoum usuário da gerência, mas somente um de tais nós édesignado o usuário da gerência. Em algum as modalidades,um pedido do cliente são dirigidas ao usuário 30 dagerência no primeiro exemplo. Em outras modalidades, umamáquina remota 30 pergunta o usuário 30 da gerência paradeterminar a identidade de uma máquina apropriada daexecução.
O nó mestre 30 do usuário de informação da rede mantémuma tabela de endereços para as máquinas remotas 30' , 30".Além, a rede mestra o nó 30 do usuário de informação recebemensagens das máquinas remotas 30' , 30" indicando seunível de atividade, que pode compreender a carga doprocessador central ou pode compreenda uma identificação donúmero das máquinas virtuais hospedadas atualmente por umamáquina remota 30' , 30". 0 nível de atividade das máquinasremotas 30' , 30" é mantido em uma tabela junto com oendereço de cada um do telecontrole faz à máquina 30' ,30". Para as modalidades, em que um único usuário 30 dagerência é usado, é desejável selecionar dinâmicamente umnó mestre 3 0 do usuário de informação da rede das máquinasremotas disponíveis 30 na rede. Desta maneira, se o activeo usuário 30 da gerência falha, uma gerência que nova ousuário 3 0 pode ser selecionado como logo como a falha dousuário precedente da gerência 30 são detectados. Em um amodalidade um usuário 3 0 da gerência é selecionada por umprocesso eleitoral entre as máquinas remotas 30. Em umamodalidade, alguma máquina (máquina de cliente 10 oumáquina remota 30) pode forçar uma eleição a qualquer horatransmitindo uma eleição do pedido datagrama à exploraçãoagrícola 3 8 da máquina. Os resultados de eleição sãodeterminados por a comparação do jogo de critérios daeleição que é transmitido dentro do pedido datagrama daeleição transmitida pelo nó de pedido com o jogo da eleiçãocritérios mantidos em cada nó de recepção. Isto é, oprimeiro critério da eleição da datagrama do nó de pedido écomparado pelo nó de recepção a o primeiro critério do nóde recepção. 0 mais alto dos dois critérios sendo vitóriascomparadas a comparação e o nó com esse critério ganhaeleição. Se o laço de dois critérios, os critériosseguintes é comparado então seqüencialmente até o laço équebrado. Se uma máquina remota 3 0 que recebe a eleição dopedido a datagrama tem um critério mais elevado da eleiçãodo que aquela recebida no pedido datagrama da eleição, amáquina remota 3 0 que recebe a eleição do pedido adatagrama emite sua própria datagrama da eleição do pedido.
Se o telecontrole de recepção a máquina 30 tem critériosuns mais baixos de uma eleição do que os critériosrecebidos no pedido a datagrama da eleição, a máquinaremota de recepção 30 determina-a não é nó e tentativasmestres do usuário de informação da rede determinar quetelecontrole a máquina 3 0 na exploração agrícola 3 8 damáquina é o usuário 3 0 da gerência. Em uma modalidade oscritérios que determinam o resultado do a eleição inclui:mesmo se o nó está configurado estaticamente como um mestrenó do usuário de informação da rede; se a máquina remota 3 0tem o mais elevado número de versão mestre do software deservidor da informação da rede; se o telecontrole a máquina30 é um controlador do domínio do NT; se a máquina remota30 é o nó running o mais longo; e se a máquina remota 3 0tem lexical abaixe nome de rede. Em uma modalidade, aestrutura da datagrama para a eleição o pedido inclui umshortword não assinado para o número de versão do usuário,shortword não assinado em que os bocados são as bandeirasque designam se o nó é configurado estaticamente como um nómestre do usuário de informação da rede, ou é execução emum controlador do domínio do NT e uma contenção nãoassinada do longword quantidade de tempo que o usuário temfuncionado. Periodicamente, o usuário 3 0 da gerênciatransmite uma mensagem da declaração a as outras máquinasremotas 3 0 que declaram-se para ser o usuário 3 0 dagerência. Se uma outra máquina remota 3 0 acredita-se paraser um usuário 3 0 da gerência, a outra máquina remota 3 0pedirá uma eleição. Desta maneira mestre errôneo os nós 30do usuário de informação da rede do mesmo protocolo sãodetectados e removido. Além uma eleição será pedidaigualmente: por alguma máquina remota 30 quando repartiçõesdessa máquina remota 30; por alguma máquina remota 30 aquem o nó mestre do usuário de informação da rede nãoreconheceu uma actualização mensagem; ou alguma máquina decliente 10 a quem a informação mestra da rede o nó 30 dousuário não respondeu a um pedido de informações. Maisdetalhadamente e referindo FIG. 9, uma vez alguma máquinaremota 30 (que pode ser referido como um nó) transmite umadatagrama da eleição do pedido pedindo uma eleição (etapa9.20) , a máquina remota 30 que recebe o pedido a datagramada eleição (etapa 924) compara primeiramente seus critériosda eleição aos critérios dentro a datagrama da eleição dopedido (etapa 930) para determinar se o telecontrole derecepção a máquina 30 tem uns critérios mais elevados(etapa 934). Se a máquina remota 30 que recebe a datagramatem uns mais baixos critérios da eleição (etapa 938) do queos critérios contidos dentro a datagrama da eleição dopedido, a máquina remota 30 que recebe o pedido a datagramada eleição deixa cair fora do processo eleitoral e esperaos resultados do eleição (etapa 938). Se a máquina remotaque recebe a datagrama da eleição do pedido temcritérios mais elevados da eleição do que aquela contida nadatagrama da eleição do pedido, então a máquina remota 30que recebe a datagrama da eleição do pedido transmite o seupróprios pedem a datagrama da eleição que contem o machine'remoto; s possui a eleição critérios (etapa 940). Se emresposta à transmissão da eleição do pedido datagrama pelasegunda máquina remota 30, uma outra máquina remota 30'responde com uma datagrama da eleição do pedido com mesmocritérios mais elevados da eleição, então a segunda máquinaremota 30 deixa cair fora da eleição e da máquina remota30' com transmissões mais elevadas it' dos critérios; spróprios datagrama da eleição do pedido. Se nenhuma outramáquina remota 3 0 responde com critérios mais elevados daeleição, o nó qual ganhou aparentemente a eleição para ousuário de informação mestre da rede o nó emite a η maispedidos da eleição, (em uma modalidade três pedidos) (etapa956) e então se ainda nenhuma outra máquina remota 30responde com eleição mais elevada os critérios, a máquinaremota 3 0 que emitiu os pedidos da eleição de η são osnovos usuário 30 da gerência. Depois que a eleição ocorreue o usuário novo 30 da gerência tem determinado, todas as.máquinas remotas 30 emitem todo o seu configurado endereçosda passagem ao nó novo 30 do usuário de informação da rede.
Desta maneira o usuário novo 3 0 da gerência transforma-seum nó da passagem. Referindo outra vez FIG. 1, uma vez queo usuário 30 da gerência é elegido, as máquinas remotas 30emitem datagramas da actualização à informação mestra darede informação de fornecimento do usuário 3 0 sobre cadatransmitir da máquina remota 30 datagrama da actualização.
Em uma modalidade, a datagrama da actualização emitidaao mestre o nó 3 0 do usuário de informação da rede de umamáquina remota 3 0 inclui: nome da máquina remota 30; oendereço de rede; o nome do conjunto; a rede protocolo detransporte; o número total das máquinas remotas 3 0configurou com este transporte; o número de portosdisponíveis para a conexão com um cliente que usa esteprotocolo de transporte; o número total de usuáriospermitiu para ser ativo ao mesmo tempo; número de entalhesdisponíveis do usuário; e nível da carga do usuário. Emcima do recibo da actualização a datagrama, o nó mestre 30do usuário de informação da rede retorna reconhecimento àsmáquinas remotas 3 0 que transmitiram a actualizaçãodatagrama que indica que a datagrama da actualização estêverecebida. Se o telecontrole a máquina 3 0 que transmite adatagrama da actualização não recebe reconhecimento do nómestre 30 do usuário de informação da rede, a máquinaremota transmissora 3 0 supor que a informação mestra darede o nó 3 0 do usuário falhou e transmite um pedido daeleição. Mais detalhadamente e referindo FIG. 10, umamáquina remota 30, após eleição de um usuário 3 0 dagerência, esperas um o período de tempo aleatório e entãoemite uma datagrama ao usuário 3 0 da gerência com suainformação mais atrasada da carga (Etapa 1000). Em umamodalidade o atraso realiza-se entre quatro e seissegundos. Se o usuário 3 0 da gerência recebe (etapa 1008)uma datagrama da actualização da a máquina remota 30, entãoo nó mestre 3 0 do usuário de informação da rede responde àmáquina remota transmissora 3 0 com um reconhecimento (etapa1010) e envia os dados a toda a máquina remota 3 0configurada como um nó da passagem. Se o usuário deinformação mestre 3 0 da rede não recebe dados de umtelecontrole faça à máquina 30 (etapa 1008), a seguir osdescartes mestres do usuário de informação 3 0 da rede osdados velhos da máquina remota 3 0 após uma quantidade detempo predeterminada (Etapa 102 0). Se a máquina remota 3 0não recebe um reconhecimento do o nó mestre 3 0 do usuáriode informação da rede após a máquina remota 3 0 tem emitiuuma datagrama da actualização (etapa 1028), a máquinaremota 3 0 retransmite datagrama da actualização. A máquinaremota 3 0 tentará η retransmite (em um modalidade três)antes que supor que o usuário de informação mestre da rede30 falharam e transmitem então um pedido da eleição (etapa103 0). Se o telecontrole a máquina 3 0 recebe umreconhecimento, então ele actualiza periodicamente o mestrenó 3 0 do usuário de informação da rede, em uma modalidadecada 5 a 60 minutos (etapa 1040) . Em algumas modalidades,um machine1 remoto; participação de s nas atividades apenasdescrito é controlado por uma máquina virtual que executano hypervisor um pouco do que por um sistema de exploração.
O FIG. 11 é um diagrama de bloco que descreve um modalidadede uma exploração agrícola 3 8 da máquina que inclui umaprimeira e segunda rede processos da gerência. O primeiroprocesso 1110 da gestão de rede executa em um sistema deexploração nativo 1105 (tal como WINDOWS NT) e nos acessosa elemento nativo da memória que armazena (i) uma tabelados dados e (ii) pelo menos uma eleição critérios parapermitir que o primeiro processo 1110 da gestão de redeseja selecionado dinâmicamente como um processo dagerência, os dados tabelam ter uma entrada para cada umpelo menos de dois processos ditos da gestão de rede. 0segundo o processo 1120 da gestão de rede executa em umsistema de exploração virtualizado 1115 e acessos umelemento virtualizado da memória que armazena (i) umatabela e um (ii) dos dados pelo menos critérios de umaeleição para permitir a segunda gestão de rede processo1120 a ser selecionado dinâmicamente como o processo dagerência, os dados tabele ter uma entrada para cada um pelomenos da gestão de rede dois dita processos. A máquina decliente 10 comunica-se com esse do primeiro processo 1110da gestão de rede e a segunda gestão de rede o processo1120 selecionado como o processo da gerência e recebe doprocesso da gerência um endereço de uma máquina remota 30com à que comunique-se. Em algumas modalidades, umapluralidade das máquinas de cliente 10 está dentro umacomunicação com um processo mestre da informação da rede. Oprimeiro processo 1110 da gestão de rede executa em umnativo sistema de exploração 1105. O segundo processo 1120da gestão de rede executa em um sistema de exploraçãovirtualizado 1115. Em uma modalidade, pelo menos doisprocessos da gestão de rede são agrupados em conjuntos. Emoutros a modalidade, um pelo menos dos dois processos darede é um processo da passagem. Em ainda uma outramodalidade, o processo da passagem é um processo mestre dagestão de rede. Em algumas modalidades, o processo mestreda gestão de rede é selecionado por um processo quecompreende as etapas (a) que transmitem de uma eleiçãodatagrama pelo menos aos dois processos da gestão de rede,a eleição datagrama que compreende critérios da eleição; e(b) selecionando uma rede mestra processo da gerência emresposta aos critérios da eleição. Em um destes asmodalidades, o processo mestre da gestão de rede transmitemuma declaração a datagrama para detectar a gestão de redemestra múltipla processa a utilização o mesmo protocolo detransporte. Em outras destas modalidades, a rede mestra oprocesso da gerência é selecionado por um processo queocorra após um evento selecionado do grupo de consistir doseventos: uma repartição do sistema, um mestre failing doprocesso da gestão de rede a responder a uma datagramaemitida da processo da gestão de rede, um processo mestreda gestão de rede que falha a responda a um pedido de umamáquina de cliente, deteção pelo menos do mestre doisprocessos da gestão de rede configurados com o mesmotransporte, e um novo processo da gestão de rede queaparece em rede dita. Em uma modalidade, o processo dagerência é elegido como descrito acima em relação aosfigos. 9 e 10. Em algumas modalidades, a rede inclui umaterceira gestão de rede processo usando um protocolo detransporte diferente da rede da primeira rede processo dagerência. Em uma destas modalidades, a terceira rede oprocesso da gerência compreende um processo mestre dagestão de rede para o protocolo de transporte diferente darede. Para as modalidades em que a gerência de exploraçãoagrícola da máquina é descentralizada, cada máquina remota30 pode incluir um subsistema da gerência da carga (LMS)que fornece uma capacidade da gerência da carga.
Geralmente, o LMS controla a carga total do usuário e darede minimizar o tempo de resposta aos pedidos do cliente.
Em algumas modalidades, um instrumento para selecionar umusuário de uma pluralidade da rede de usuários para prestarserviços de manutenção a um pedido do cliente compreendeuma pluralidade de processos da gestão de rede. Em umadestas modalidades, cada um de pluralidade dita deprocessos da gestão de rede inclui uma barra-ônibus doevento e um subsistema dentro uma comunicação com a barra-ônibus do evento. Em outras destas modalidades, primeira dapluralidade de processos da gestão de rede recebe de umamáquina de cliente um pedido para o acesso a um recurso decomputação e emite o pedido do cliente a uma segunda dapluralidade de processos da gestão de rede. Em ainda outrasdestas modalidades, segunda da pluralidade de processos dagestão de rede executam em um sistema de exploraçãovirtualizado e compreendem uma loja dinâmica e umsubsistema da gerência da carga.
A loja dinâmica carrega a informação associada compelo menos a alguma da pluralidade de processos da gestãode rede em um elemento virtualizado da memória. Em algumasmodalidades, a loja dinâmica contem a informação em relaçãoà carga do processador do usuário. Em outras modalidades, aloja dinâmica contem a informação em relação à carga datransação do entrada/saída do usuário. 0 subsistema dagerência da carga (i) recebe, através da barra-ônibus ditado evento, um pedido identificar um usuário para prestarserviços de manutenção a um pedido do cliente, (ii)recupera da loja dinâmica dita a informação docarregamento, (iii) escolhe, baseado na informação decarregamento recuperada, uma da pluralidade de usuáriospara prestar serviços de manutenção ao pedido do cliente, e(iv) transmite, através da barra-ônibus dita do evento, umamensagem que inclui a informação que identifica o usuárioescolhido. Em algumas modalidades, o subsistema da gerênciada carga armazena a informação run-time na loja dinâmica emintervalos predeterminados. Em outras modalidades, oinstrumento mais adicional inclui uma loja persistente, osubsistema da gerência da carga em uma comunicação com aloja persistente através da barra-ônibus do evento, a lojapersistente que contem uma identificação pelo menos de umarégua a ser usada para controlar a carga do usuário. Em umamodalidade, o LMS é rule-based, e uma ferramenta deadministração pode ser usada para modificar ou criar réguaspara a carga de controlo do usuário. Uma régua é uns ouvários critérios que influencie como um LMS dirigirápedidos. As réguas podem ser particularizadas a uma máquinaremota especifica 30. As réguas podem igualmente serparticularizadas a uma aplicação especifica ou a umambiente de computação em uma base do por-usuário. Isto é,umas ou várias réguas podem ser associadas com uma cópia deuma aplicação ou um ambiente de computação que reside emuma primeira máquina remota 3 0 na exploração agrícola 3 8 damáquina e réguas diferentes pode ser associado com umacópia da mesmo aplicação ou ambiente de computação queresidem em uma segunda máquina remota 3 0 em uma exploraçãoagrícola 3 8 da máquina. A saída das réguas particularizadasa uma aplicação específica pode ser combinada com a saídade réguas gerais do usuário para dirigir um pedido docliente. As réguas usam a saída de uns ou vários medidoresoperacionais. Os medidores operacionais podem medir todo oaspecto do desempenho do usuário e o resultado é usado porréguas para ajudar a determinar que máquina remota 30 é omais apropriado para prestar serviços de manutenção a umpedido do cliente. Por exemplo, os medidores operacionaispodem medir: carga do processador; interruptores docontexto; uso da memória; falhas de página; trocas dapágina; a taxa de transmissão de entrada/saída lê ouescreve; o número de operações de entrada/saída executadasou o número de máquinas virtuais hospedaram. Em umamodalidade, os medidores operacionais são usados por um LMSpara medir o desempenho do usuário durante a ocorrência dedeterminados eventos tais como um pedido para uma conexãodo cliente. Em uma outra modalidade, os medidoresoperacionais são usados por um LMS para medir o desempenhodo usuário nos intervalos predeterminados, que podem serconfigurados por um administrador. UM LMS em cada máquinaremota 30 na exploração agrícola 38 da máquina avaliam ovário medidor do desempenho para a máquina remota 30 paracada período de tempo predeterminado e de lojas essainformação na loja dinâmica. Por exemplo, cada trintasegundos, uma avaliação da carga do usuário pode incluiruma pergunta aos medidores operacionais para server'utilização do processador central de s e utilização damemória. Os resultados da pergunta serão usados,conjuntamente com outros fator de carga aplicáveis, paracalcular um número da carga para esta carga do usuário. Onúmero novo da carga é emitido então à loja dinâmica. Asréguas e os medidores operacionais são, em uma modalidade,os módulos executáveis do código que perguntam condições desistema, recursos, e o medidor específicos do desempenhopara máquinas remotas 30in a exploração agrícola 38 damáquina. Algumas das réguas aceitam os parâmetros usuário-configuráveis que são incorporados pelo administradoratravés da ferramenta de administração. As réguas podem serfornecidas ao LMS usando uma biblioteca de ligação dinâmica("DLL"), e as réguas e os parâmetros da régua aplicáveis aum usuário específico podem ser armazenados na lojapersistente. Isto é, o administrator' a seleção de s dasréguas é armazenada, junto com um fator de ponderação e unsajustes aplicáveis associados com aquelas réguas, na lojapersistente. Por exemplo, alguns medidores operacionaispodem medir a carga em um intervalo predeterminado; ointervalo predeterminado pode ser ajustado peloadministrador. Exemplos das réguas condicionais que podemser usadas pelo LMS para determinar a que máquina remota 3 0para dirigir um pedido inclua: se o número de máquinas decliente 10 que podem conectar a uma máquina remota 3 0 élimitado; se o número de sessões de cliente que podem serprestadas serviços de manutenção por uma máquina remota 30é limitado; se o número de máquinas virtuais que podem serhospedadas por uma máquina remota 3 0 é limitado; o númerode licenças da aplicação ou da conexão disponíveis a umamáquina remota 30; se a aplicação pedida pela máquina decliente 10 está executando atualmente na máquina remota 30;a se um cliente é fisicamente proximate, ou está conectadopor uma ligação elevada da largura de faixa a, um usuário;e se um pedido do cliente está sendo feito durante umperíodo de tempo para que a máquina remota 3 0 estádisponível para prestar serviços de manutenção a pedidos docliente. Um jogo de réguas pode ser agrupado junto pelosubsistema 3 00 do grupo para dar forma a um avaliador dacarga associado com um usuário particular ou uma aplicaçãoparticular. Um avaliador da carga do usuário é um avaliadorda carga que se aplique a todas as aplicações publicadas nousuário. Um avaliador da carga da aplicação é um avaliadorda carga que encapsulates as réguas específicas adeterminadas aplicações. Em uma modalidade, as cargas paraprogramas de aplicação publicados são a soma de umavaliador da carga do usuário e um avaliador da carga daaplicação. O avaliador da carga associou com um usuárioparticular pode ser armazenado na loja persistente 230.
Quando um LMS inicializa, pergunta a loja persistente 230para determinar se um avaliador da carga está associado coma máquina remota 30 em que o LMS reside. Em casoafirmativo, as réguas e os medidores operacionais sãocarregados e o LMS começa a usar aqueles elementos doavaliador da carga. As saídas dos componentes do avaliadorda carga são combinadas para calcular o indicia composto dacarga em usuários particulares, e as lojas de cada LMS osresultados de seu avaliador da carga na loja dinâmica. Cadarégua encapsulated em um avaliador da carga pode ter umfator de ponderação configurável. Muitas réguas têm osparâmetros usuário-configuráveis que controlam a maneiraLMS as cargas são calculadas. Por exemplo, em umamodalidade, uma régua da utilização do processador centraltem dois parâmetros: Relate a carga cheia quando autilização do processador é maior do que X-por cento; nãorelate nenhuma carga quando a utilização do processador émenos do que por cento de X. Em uma modalidade particular,a carga relatada por um avaliador da carga iguala a soma decada rule' tempos de carga de s cada rule' peso de s. Em umoutro exemplo, uma máquina remota 3 0 que hospede quatroaplicações pode ter três avaliadores da carga com que éassociado. 0 usuário próprio e uma primeira aplicação podempor associado com um primeiro avaliador da carga, assegundas e terceiras aplicações podem ser associadas com umsegundo avaliador da carga, e a quarta aplicação pode serassociada com um terceiro avaliador da carga. Quando oscarregadores da máquina remota 30, ele leram a primeira,segundo, e terceiros avaliadores da carga da lojapersistente 230. Periodicamente (ou talvez depois quedeterminados eventos) a máquina remota 30 calcula a saídapara cada um dos avaliadores da carga e emite aquelesvalores ã loja dinâmica. Quando um pedido de conexão érecebido, aqueles valores estão usados para determinar se amáquina remota 30 prestar serviços de manutenção a umpedido do cliente. Por exemplo, usando medidoresoperacionais o LMS pode obter a informação sobre a carga doprocessador em uma máquina remota particular 30, a carga damemória nessa máquina remota 30, e a carga da rede dessamáquina remota 30. O LMS combina estes resultados paraobter um número total da carga que indique a carga agregadatotal nessa máquina remota 30. Em determinar a cargaagregada, o avaliador da carga pode tornar mais pesado cadafragmento de informação diferentemente. Para as modalidadesem que uma régua é associada com uma máquina remota 30, arégua pode eliminar uma máquina remota 30 de prestarserviços de manutenção um pedido do cliente. Por exemplo,uma régua pode limitar o número de sessões que de clienteuma máquina remota 30 pode iniciar. Nesta modalidade, seuma máquina remota 30 está prestando serviços de manutençãoatualmente ao número máximo de sessões de clientepermitidas pela régua, não será escolhida pelo LMS prestarserviços de manutenção a um pedido novo do cliente, mesmose as saídas de seus medidores operacionais indicam que é amáquina remota a mais favorável 30 a que para distribuir ocliente peça. Consultando de volta a FIG. 8, depois que umamáquina da execução foi selecionada, a a máquina virtualque fornece um ambiente de computação pedido é identificada(etapa 812). Em algumas modalidades, políticas declarativastais como bases de dados das réguas, política as bases dedados ou os certificados são consultados para dirigirpedidos a uma máquina virtual. Em outras modalidades, umamáquina remota 3 0 que funciona como um servidor deaplicações hospedar uma pluralidade de máquinas virtuais éidentificado. Em uma destas modalidades, uma da pluralidadede máquinas virtuais hospedadas pelo servidor de aplicaçõespode ser selecionado e associado com a máquina de cliente10. Em outra destes as modalidades, um identificador para amáquina virtual selecionada podem ser transmitidas a amáquina de cliente 10. Em algumas modalidades, umcomponente da gerência de sessão identifica máquinavirtual. Em uma destas modalidades, uma máquinaintermediária 3 0 receber o pedido invoca um componente dagerência de sessão. Em outros de estas modalidades, amáquina intermediária lança a sessão o componente dagerência em um terminal presta serviços de manutenção àsessão que executa no máquina intermediária.
Em ainda outras destas modalidades, o intermediário amáquina lança o componente da gerência de sessão noserviços terminais sessão que executa na máquinaidentificada da execução. Em uma modalidade, o componenteda gerência de sessão fornece funcionalidade paraidentificar uma posição de uma máquina virtual que forneceo acesso á ambiente de computação. Em ainda uma outramodalidade, a gerência de sessão o componente é fornecidocomo um módulo de programa publicou em um usuário, tal comoservidor de aplicações. Em contudo uma outra modalidade, agerência de sessão o componente identifica, lançamentos, emáquinas virtuais dos monitores. Em algumas modalidades, ocomponente da gerência de sessão comunica-se com umcomponente da gerência da máquina virtual para identificara máquina virtual. Em uma destas modalidades, a gerência damáquina virtual o componente fornece a funcionalidadeencontrando máquinas virtuais. Em outros de estasmodalidades, o componente da gerência da máquina virtualfornecem funcionalidade para alocar uma máquina virtualdisponível a um usuário de uma pluralidade de máquinasvirtuais disponíveis. Em ainda uma outra modalidade, amáquina virtual o componente da gerência fornece afuncionalidade readjudicando virtual compartilhado máquinasà pluralidade de máquinas virtuais disponíveis. Em contudooutros a modalidade, o componente da gerência da máquinavirtual fornece a funcionalidade para seguir um estadoassociou com uma máquina virtual para cada máquina virtualem a pluralidade de máquinas virtuais. Referindo agora FIG.12, um diagrama de bloco descreve uma modalidade dacomponente 1200 da gerência da máquina virtual. Em umamodalidade, o virtual o componente 1200 da gerência damáquina fornece a funcionalidade alcançando e actualizandouma base de dados que inclui um catálogo da máquinavirtual. Em outros a modalidade, o componente 1200 dagerência da máquina virtual fornece funcionalidade parapermitir um sistema do fornecimento do administrador ou damáquina virtual para adicionar, remova, ou modifique asentradas na base de dados que inclui uma máquina virtualcatálogo. Em algumas modalidades, o componente da gerênciada máquina virtual 1200 incluem uma máquina virtual quefornece a funcionalidade administrativa. Em outro asmodalidades, o componente 1200 da máquina virtual incluemuma máquina virtual fornecendo a funcionalidade dagerência. Em algumas modalidades, o componente 1200 dagerência da máquina virtual pode receber um pedido de umsistema do fornecimento ou de uma sessão componente dagerência. Em uma destas modalidades, um sistema dofornecimento contata o componente 1200 da gerência damáquina virtual em que um virtual a máquina é criada oudestruída. Em outras destas modalidades, a sessão ocomponente da gerência contata o componente da gerência damáquina virtual 12 0 0 em que o componente da gerência desessão é invocado para pedir um virtual máquina a lançado.
Em ainda outras destas modalidades, a sessão o componenteda gerência contata o componente da gerência da máquinavirtual 12 0 0 em que o componente da gerência de sessãoidentifica uma mudança em um estado de uma máquina virtuallançado. 0 componente da gerência de sessão pode emitirmensagens, tais como mensagens da pulsação do coração, àgerência da máquina virtual componente 12 00 quando umamáquina virtual for ativa. Se a máquina virtual pode seralcançado por mais de um usuário, o componente da gerênciada máquina virtual 12 0 0 podem atribuir novamente a máquinavirtual à pluralidade de virtual disponível as máquinasapós um usuário terminaram uma sessão com a máquinavirtual. Em algumas modalidades, as máquinas virtuais domesmo tipo da máquina podem ser categorizado em umapluralidade dos ambientes de funcionamento padrão (SOE). Emum de estas modalidades, um SOE podem ser um grupo deimagens da máquina virtual de uma configuração particularque executam a função de um tipo particular da máquina,e.g. um tipo " da máquina; Colaborador Workstation" de C++;pode ter uma contenção de SOE imagens com WinXP pro SP2 como estúdio visual 2003 instalado e um outro SOE conterimagens com vitória Vista com estúdio visual 2005 instalou.Em outras modalidades, o componente 1200 da gerência damáquina virtual pode fornecer a funcionalidade para umas ouvárias das seguintes ações relativas á ambiente defuncionamento padrão (um SOE): criando um SOE, actualizandoum SOE, suprimindo de um SOE, encontrando um SOE, e arecuperação de um SOE. Em ainda outro a modalidade, ocomponente 1200 da gerência da máquina virtual podefornecer a funcionalidade para umas ou várias das seguintesações relacionou-se às máquinas virtuais: crie uma máquinavirtual, actualize uma máquina virtual, suprima de umamáquina virtual, achado uma máquina virtual, e atribuição aou remoção de um funcionamento padrão ambiente. Um tipo damáquina pode referir uma descrição não técnica de umacomputação o ambiente forneceu por uma máquina virtual.Alguns exemplos de tipos da máquina é o " ColaboradorWorkstation" de C++; ou " Workstation." de secretário;Muitos virtuais as máquinas podem ser agrupadas em um únicotipo da máquina. Em uma modalidade, o componente 1200 dagerência da máquina virtual pode fornecer a funcionalidadepara uma ou mais das seguintes ações relacionaram-se aostipos da máquina: criando a máquina tipos, actualizando umtipo da máquina, suprimindo de um tipo da máquina,encontrando um tipo da máquina, e recuperando um tipo damáquina. Em algumas modalidades, o componente 1200 dagerência da máquina virtual pode fornecer a funcionalidadepara criar máquinas virtuais. Em um destes as modalidades,um administrador ou o serviço do fornecimento criam umamáquina nova datilografe dentro uma base de dados demáquinas virtuais. O tipo da máquina é dado umsignificativo nome tal como o " Gerente Workstation." dahora; Em uma modalidade, o tipo da máquina o nome é o nomepara uma classe do ambiente de funcionamento padrão (SOE)um pouco do que um SOE especifico, e SOEs múltiplo pode seratribuído ao tipo da máquina nome. Em uma outra modalidade,o tipo da máquina pode ser usado para publicar classe demáquinas virtuais. Em outras destas modalidades, umambiente de funcionamento padrão (SOE) é criado para o tipoda máquina e atribuído à máquina datilografe dentro base dedados de máquinas virtuais.
Em uma modalidade, o SOE é uma máquina virtual com umaconfiguração específica da ferragem e de software. Uminstantâneo do SOE a máquina virtual pode ser tomada eusado como um molde para clone da máquina virtual. Em umamodalidade, os clone da máquina virtual de SOE sãoatribuídos aos usuários. Em uma modalidade, umadministrador clona um SOE a ser utilizado por usuáriosperto criando clone Iig do instantâneo da máquina virtualde SOE. Lig as máquinas virtuais do clone podem ser criadasem subfolders dentro consecutivamente numerados o dobradorde SOE. Os clone Iig do SOE podem ser atribuídos ao SOEdentro a base de dados de máquinas virtuais. Em uma outramodalidade, um administrador actualiza um tipo da máquinaperto criação de um SOE novo, e clone Iig novos do SOE. 0administrador actualiza um ponteiro de SOE dentro de umtipo registro da máquina na base de dados de virtualmáquinas a apontar ao SOE novo, e marcas o SOE velho comosendo substituído. 0 administrador pode criar o SOE novocriando uma máquina virtual nova e instalando o software,ou criando um clone cheio de um SOE existente eactualizando o. Porque um exemplo o administrador poderiacriar uma máquina virtual nova e instale o profissional deMicrosoft Windows XP, seguido por Windows Xp SPl, seguidopor Microsoft Office 2003, ou pelo administrador poderiater tomado um cheio clone de um SOE existente com WindowsXp e Microsoft Office 2003 já instalado, e instala WindowsXp SPl para conseguir o mesmo SOE. 0 novo SOE pode sercriado em um dobrador novo de SOE e um registro novo de SOEé criado dentro a base de dados de máquinas virtuais. Osclone lig do SOE substituído podem ser suprimido quando osusuários terminaram com eles e o SOE substituído pode sersuprimido quando todos os clone Iig forem suprimidos. Emalgumas modalidades, uma máquina virtual pode ser designadacomo compartilhado máquina virtual. Em uma destasmodalidades, uma máquina virtual compartilhada é exemplo deuma imagem da máquina virtual que seja designada a serutilizado por usuários múltiplos. Em outras destasmodalidades, a máquina virtual compartilhada é usada por umusuário em um momento e retornado a uma associação demáquinas virtuais disponíveis quando não no uso. Em aindaoutras destas modalidades, como a imagem de uma máquinavirtual compartilhada são executados, os usuários podemmudar a imagem mas não podem persistir nenhumas mudanças aoimagem uma vez que é parada programada. Nesta modalidade,todas as mudanças estão rejeitadas quando a imagem é paradaprogramada ou um usuário termina uma sessão. Em outrasmodalidades, uma máquina virtual pode ser designada como umconfidencial máquina virtual. Em uma destas modalidades,uma máquina virtual confidencial é exemplo de uma imagem damáquina virtual que seja designada a ser utilizado por umusuário específico. Somente esse usuário pode ser alocado àimagem, lança a imagem, ou executar imagem. Em outrasdestas modalidades, as imagens confidenciais estarãoconfiguradas para permitir mudanças ser persistido quando aimagem é parada programada. Em ainda outros de estasmodalidades, mudanças podem ser configuradas para serrejeitado em cima da imagem parada programada como porimagens compartilhadas, dependendo das exigências dousuário. Em algumas modalidades, um componente da gerênciade sessão é lança e identifica uma máquina virtual. Em umade stas modalidades, a sessão o componente da gerênciatransmite uma identificação de um usuário e de um virtualfaça à máquina o tipo responsivo identificado a um pedidopara o acesso a um recurso ao componente 1200 da gerênciada máquina virtual. Em outra destes as modalidades, ocomponente da gerência de sessão pedem uma identificação deuma máquina virtual específica a lançado. Em ainda outrasdestas modalidades, o componente da gerência de sessão pedeuma identificação de uma posição do configuração e limas dedisco virtual da máquina virtual identificada. Em algumasmodalidades, uma máquina virtual é responsiva identificadoao identificação recebida do usuário da máquina de pedido.
Em outro as modalidades, uma máquina virtual sãoresponsivas identificado a um pedido pelo usuário para umtipo de máquina virtual. Em ainda outras modalidades, umamáquina virtual são responsivas identificado a um pedidopelo usuário para um tipo de computação ambiente. Emalgumas modalidades, o componente 1200 da gerência damáquina virtual transmite ao componente da gerência desessão uma identificação de um específico máquina virtual alançado. Em uma destas modalidades, a sessão o componenteda gerência prosigue então lança a máquina virtual. Emoutras destas modalidades, o componente da gerência damáquina virtual lança a máquina virtual. Em outrasmodalidades, o componente da gerência da máquina virtualtransmite ao componente da gerência de sessão umaidentificação de uma pluralidade de máquinas virtuais alançado. Em uma destas modalidades, a sessão o componenteda gerência pode apresentar uma enumeração de virtualdisponível máquinas a um usuário. Em outras destasmodalidades, a gerência de sessão o componente recebe umaseleção de uma máquina virtual da enumeração de máquinasvirtuais disponíveis e os lançamentos do componente dagerência de sessão a máquina virtual selecionada. Em aindaoutras modalidades, a máquina virtual o componente dagerência transmite ao componente da gerência de sessãoindicação que nenhuma máquina virtual está disponível parao pedido do usuário acesso. Em contudo outras modalidades,o componente da gerência da máquina virtual 1200 transmitemao componente da gerência de sessão uma indicação queexistir, executando a máquina virtual tem sido alocadaagora ao usuário. Em contudo outras modalidades, ocomponente da gerência da máquina virtual transmite aocomponente da gerência de sessão uma identificação de umdisponível máquina virtual responsiva a alcançar uma basede dados que armazena a informação associado com umapluralidade de máquinas virtuais, a informação que inclui,mas não limitado a, uma identificação da pluralidade demáquinas virtuais, uma identificação de uma posição daslimas associou com a pluralidade de máquinas virtuais, aidentificação de um Access Control List associou com apluralidade de virtual máquinas, e uma indicação dadisponibilidade da pluralidade de máquinas virtuais. Em umamodalidade, quando uma máquina virtual for identificadacomo a a máquina a lanç, o componente 1200 da gerência damáquina virtual modifica um Access Control List associoucom a máquina virtual responsiva ao identificação dousuário recebido do componente da gerência de sessão dentroo pedido inicial. Em uma outra modalidade, a gerência damáquina virtual o componente 1200 modifica o Access ControlList para permitir a máquina virtual a seja lança para ousuário. Em ainda uma outra modalidade, a máquina virtual ocomponente 1200 da gerência transmite a informaçõesadicionais associada com a máquina virtual ao componente dagerência de sessão.
0 adicional a informação pode incluir detalhes daparte da rede em relação a um dobrador que armazena limasassociado com a máquina virtual. Em contudo uma outramodalidade, a sessão o componente da gerência usa ainformações adicionais para traçar o dobrador á ponto demontagem, tal como uma letra de movimentação, na máquinavirtual. Em alguns modalidades, imagens da máquina virtual- configuração e dados as limas que compreendem a máquinavirtual - são armazenadas em uma rede da área dearmazenamento. Em outras modalidades, imagens da máquinavirtual são armazenadas na rede unida armazenamento. Em umadestas modalidades, um usuário do arquivo em umacomunicação com a rede da área de armazenamento faz asimagens da máquina virtual acessíveis como se elas foramficados situada no armazenamento unido rede. Consultando devolta a FIG. 8, uma máquina virtual identificada éconfigurada (etapa 814). Na breve vista geral, uma máquinada execução identificada pelo intermediário a máquinaexecuta um hypervisor que emula os recursos de ferragemexigidos pelo ambiente de computação pedido. Lançamentos deum componente da gerência de sessão uma máquina virtualconfigurada no hypervisor. A configuração ocorre do virtualmáquina para uma máquina de cliente particular 10. Umaconexão é estabelecida no meio a máquina de cliente e amáquina virtual. Referindo agora FIG. 13, um diagrama debloco descreve uma modalidade da componente 13 00 dagerência de sessão em um sistema que fornece o acesso áambiente de computação por uma máquina intermediária a umamáquina de pedido. Em a breve vista geral, o componente1300 da gerência de sessão inclui componente 1302 daidentificação, um componente 1304 da execução, e acomponente 1306 da gerência. O componente 1302 daidentificação está em uma comunicação com um virtual faça àmáquina o componente da gerência e receba uma identificaçãode um virtual máquina que fornece um ambiente de computaçãopedido. Em algumas modalidades, o componente 1302 daidentificação está em uma comunicação com a máquina virtualcomponente 1200 da gerência. Em uma modalidade, ocomponente da identificação 1302 recebem uma identificaçãode uma máquina 30' da execução; em qual a lança a máquinavirtual. Em algumas modalidades, o componente 1302 daidentificação identifica uma máquina da execução em que umhypervisor exigido executa e em qual para lança a máquinavirtual. Em outras modalidades, a identificação ocomponente 13 02 recebe uma identificação da máquina daexecução. Em um de estas modalidades, o componente 1302 daidentificação recebem a identificação da máquinaintermediária 30. Em algumas modalidades, o componente 13 02da identificação mais compreende um transceptor. Em umadestas modalidades, o transceptor no o componente 13 02 daidentificação recebe uma identificação de um usuário dopedir a máquina e transmite a identificação do usuário aovirtual componente da gerência da máquina. Em outras destasmodalidades, o transceptor recebe uma identificação por umusuário de um tipo de computação o ambiente pediu etransmite a identificação à máquina virtual componente 1200da gerência. Em ainda outras destas modalidades, otransceptor recebe uma identificação por um usuário de umtipo de máquina virtual pedido e transmite a identificaçãodo tipo de máquina virtual pedido ao componente 12 0 0 dagerência da máquina virtual. Em algumas modalidades, ocomponente 1302 da identificação recebe identificação deuma máquina virtual que fornece um ambiente de computaçãopedido, a máquina virtual selecionou responsivo a umaidentificação recebida de um usuário de a máquina depedido. Em outras modalidades, o componente daidentificação 13 02 recebem uma identificação de uma máquinavirtual que fornece pedido o ambiente de computação, amáquina virtual selecionou responsivo ao recebidoidentificação de um tipo de ambiente de computação pedido.
Em outro as modalidades, o componente 1302 da identificaçãorecebem uma identificação da máquina virtual que fornece umambiente de computação pedido, o virtual a máquinaselecionou responsivo a uma identificação recebida de umtipo de máquina virtual pedido. O componente 1304 daexecução lança a máquina virtual em um hypervisor. Em umamodalidade, o hypervisor executa em uma máquina 30' daexecução;. Em uma outra modalidade, o componente 1304 daexecução está dentro uma comunicação com o componente daidentificação. Em ainda uma outra modalidade, o componente1304 da execução recebe do componente 1302 da identificaçãouma identificação de uma máquina 30' da execução;
executar um hypervisor que lança a máquina virtual. Emcontudo uma outra modalidade, a execução o componente 13 04lança a máquina virtual em um hypervisor que emula recursosde ferragem exigidos para suportar o ambiente decomputação. Em algum as modalidades, um componente deserviço da máquina virtual executam no hypervisor. Emoutras modalidades, um componente de serviço da máquinavirtual executa em um convidado o sistema de exploraçãoforneceu por uma máquina virtual que executa no hypervisor.Em uma destas modalidades, o componente de serviço damáquina virtual está dentro uma comunicação com ocomponente 1300 da gerência de sessão e recebe a informaçãode configuração associou com a máquina de cliente 10. Ocomponente 1306 da gerência estabelece uma conexão entrepedindo a máquina e a máquina virtual e controla a conexão.
Em uma modalidade, o componente 1306 da gerência fornece umInternet o endereço do protocolo associou com a máquinavirtual ao usuário do pedido máquina. Em uma outramodalidade, o componente 1306 da gerência fornece umendereço do Internet Protocol associou com uma máquina daexecução ao usuário da máquina de pedido. Em ainda umaoutra modalidade, o componente 13 06 da gerência fornece umproxy para uma comunicação entre o pedido máquina e amáquina virtual. Em contudo uma outra modalidade, agerência o componente 13 06 estabelece uma conexão entre amáquina de pedido e a máquina virtual usando um protocoloda camada de apresentação. Embora descrito acima comoentidades funcionais separadas, deva ser compreendido que ocomponente 13 02 da identificação, os componentes daexecução 1304 e o componente 1306 da gerência podem serfornecidos como um único a unidade funcional ou as funçõesfornecidas por aqueles componentes podem ser agrupadas emdois ou mais componentes.
Em algumas modalidades, o componente 1300 da gerênciade sessão estabelece e controla um usuário sessão damáquina virtual de s. Em uma destas modalidades, ocomponente 1300 da gerência de sessão fornece afuncionalidade para, sem limitação, encontrando uma máquinavirtual, lança um hypervisor, lança uma máquina virtual nohypervisor, conectando um usuário à máquina virtual, econtrolando a conexão estabelecida. Em outra destes asmodalidades, o componente 1300 da gerência de sessãopublicam uma pluralidade de máquinas virtuais disponíveis.
Em ainda outras destas modalidades, o componente 1300 dagerência de sessão fornecem, sem a limitação, a enumeraçãoem as movimentações do cliente, traço do cliente conduzemaos dobradores compartilhados na máquina virtual, namonitoração do hypervisor, na monitoração de um sistema deexploração fornecido pela máquina virtual, e a um painel decontrole da máquina virtual ao usuário. Em uma modalidade,o componente 1300 da gerência de sessão fornece a painel decontrole da máquina virtual ao usuário. 0 painel decontrole da máquina virtual pode permitir um usuário dedesligar à máquina virtual, poder a máquina virtual,restaura a máquina virtual, ou suspende a máquina virtual.
Em algum as modalidades, o componente 1300 da gerência desessão fornecem o virtual painel de controle da máquinasomente aos usuários autorizados alcançar a funcionalidadedo painel de controle da máquina virtual. Em algumasmodalidades, um componente de serviço da máquina virtualexecuta dentro o hypervisor. Em uma destas modalidades, oserviço da máquina virtual o componente está em umacomunicação com o componente 13 00 da gerência de sessão erecebe a informação de configuração associada com a máquinade cliente 10. Em outras destas modalidades, o componente13 0 0 da gerência de sessão cria uma conexão ao componentede serviço da máquina virtual, tal como a A conexão doTCP/IP, e comunica-se com o serviço da máquina virtualcomponente sobre a conexão criada. Em ainda outras destasmodalidades, o componente 1300 da gerência de sessãotransmitem a informação associada com a máquina de cliente10, tais como parâmetros da iniciação ou monitor do clientegeometria, ao componente de serviço da máquina virtual. Emalgumas modalidades, o componente 1300 da gerência desessão identifica um dobrador que contem uma imagem damáquina virtual identificada. Em uma destas modalidades, odobrador contem os arquivos de dados da configuração e quecompreendem a máquina virtual. Em outras destasmodalidades, o componente 1300 da gerência de sessão montao dobrador na máquina da execução antes de lança a máquinavirtual. Em ainda outras destas modalidades, a sessão osarquivos de dados componentes da definição 1300copies dagerência associaram com máquina virtual na máquina daexecução. A gerência de sessão cópia 13OOmay componente osarquivos de dados da definição de novo no dobradoridentificado quando uma sessão for terminada. Contudooutras destas modalidades, os arquivos de dados daconfiguração e são fluídos à máquina da execução, comodescritos abaixo. Em outras modalidades, o componente 1300da gerência de sessão enumera na máquina que virtual umapluralidade de movimentações associou com a máquina decliente 10. Em uma destas modalidades, o componente dagerência de sessão 1300 criam um dobrador associado comcada movimentação na pluralidade de movimentações. Emoutras destas modalidades, as lojas do componente 1300 dagerência de sessão um dobrador associou com umamovimentação na pluralidade de movimentações no dobradormontado que contem a máquina virtual identificada. Em aindaoutras destas modalidades, uma enumeração do dobradorarmazenado associado com a movimentação são fornecidas a umusuário da máquina de cliente 10. Em algumas modalidades,um protocol stack situado no hypervisor ou no sistema deexploração do convidado permite o traço de movimentação comoutras técnicas, incluindo as técnicas permitidas porprotocolos da camada de apresentação. Referindo agora FIG.14, um diagrama de bloco descreve uma modalidade da sistemaem que uma movimentação associada com a máquina de cliente10 é feita disponível a um ambiente de computação. Na brevevista geral, a máquina de cliente 10 tem a conexão (1) auma máquina da execução e uma conexão (2) a uma pluralidadede movimentações disponíveis a um usuário da máquina decliente 10. O componente 1300 da gerência de sessão cria umdobrador associado com cada movimentação na pluralidade dasmovimentações (3) . Em uma modalidade, o componente 1300 dagerência de sessão armazena o dobrador criado associado comuma movimentação na pluralidade de movimentações em umdobrador 1002 da máquina virtual, o dobrador montado quecontem a configuração e os arquivos de dados associou com amáquina virtual identificada. Em uma outra modalidade, ocomponente 1300 da gerência de sessão gera uma lista dedobradores compartilhados armazenados no dobrador 1002 damáquina virtual. O componente 1300 da gerência de sessãonotifica a máquina virtual componente de serviço da mudançaao dobrador 1002 da máquina virtual (4). Em algumasmodalidades, o componente 1300 da gerência de sessãoresponde às mudanças no dispositivo do clientereconstruindo uma lista do dobrador compartilhado nodobrador 1002 da máquina virtual. Em uma destasmodalidades, o componente 1300 da gerência de sessão recebeuma identificação de uma modificação à movimentaçãoassociada com a máquina de cliente 10. Em outras destasmodalidades, a gerência de sessão componente 1300 transmitsuma notificação ao componente de serviço da máquina virtualque identifica a mudança à máquina virtual 1002. Para cadadobrador associou com uma movimentação no dobrador 1002 damáquina virtual, o componente de serviço da máquina virtualfornece uma indicação de uma movimentação traçada docliente à máquina virtual (5). Em uma modalidade, ocomponente de serviço da máquina virtual associa amovimentação traçada do cliente com uma letra demovimentação na máquina virtual. Em uma outra modalidade, ocomponente de serviço da máquina virtual os monitores paramudanças ao dobrador compartilhado alistam no dobrador 1002da máquina virtual. Em algumas modalidades, uma enumeraçãodo dobrador armazenado associado com a movimentação éfornecida a um usuário da máquina de cliente 10. Em algumasmodalidades, o componente 13 00 da gerência de sessãoenumera na máquina que virtual uma pluralidade deimpressoras associou com a máquina de cliente 10. Em umadestas modalidades, o componente da gerência de sessão 1300acessos um serviço da impressora para adquirir um nivel daautorização exigido enumerar uma impressora na pluralidadede impressoras.
Em uma modalidade, uma impressora associada com amáquina de cliente 10 é compartilhado como uma impressorade rede e feito acessível à máquina virtual como a recursode rede. Em uma outra modalidade, a máquina virtual gera aimpressora a saída usando os protocolos do TCP/IP e do LPR,e esta saída são interceptadas e transmitido à impressoraassociou com a máquina de cliente 10. Em ainda outro amodalidade, a máquina virtual transmite a saída deimpressora ao virtualizada o recurso de ferragem forneceupelo hypervisor, tal como um porto de COM no virtualmáquina. A saída é capturada e transmitida à impressoraassociada com a máquina de cliente 10. Em contudo uma outramodalidade, um hypervisor pode fornecer alcance a umaimpressora virtual ou a um porto de impressora. Consultandode volta a FIG. 8, como parte do processo da configuração,a máquina da execução identificada pela máquinaintermediária executa um hypervisor emulando os recursos deferragem exigidos pelo ambiente de computação pedido. Emuma modalidade, o hypervisor executa na máquinaintermediária. Em uma outra modalidade, o hypervisorexecuta no serviços terminais sessão que executa na máquinaintermediária. Em ainda uma outra modalidade, o hypervisorexecuta na máquina da execução. Em contudo uma outramodalidade, o hypervisor executa em uma sessão dos serviçosdo terminal que executa na execução W máquina. Em algumasmodalidades, o hypervisor pode ser executado no clientemáquina 10. Em uma modalidade, o hypervisor provisions umapluralidade de ferragem recursos na máquina da execução aser utilizado pela computação pedida ambiente. Em uma outramodalidade, o hypervisor divide uma pluralidade de osrecursos de ferragem na execução fazem à máquina e fazem adivisória disponível a ser utilizado pelo ambiente decomputação pedido. Em ainda uma outra modalidade, ohypervisor emula uma pluralidade de recursos de ferragem naexecução máquina a ser utilizado pelo ambiente decomputação pedido. Em contudo outros a modalidade, ohypervisor pode dividir recursos de ferragem, emularecursos de ferragem, ou recursos de ferragem da provisão,ou todos os três. Por exemplo, um hypervisor pode emular umdispositivo (tal como uma placa gráfica, um cartão de rede,e o disco), divide (tempo de execução) do processadorcentral, e virtualiza registos, o armazenamento, edispositivos subjacentes que se usam para cumprir operaçõesno seu emulado ferragem (tal como o RAM, e os cartões derelação da rede). Em algumas modalidades, o componente 1300da gerência de sessão executa o hypervisor. Em uma destasmodalidades, a sessão o componente 1300 da gerência executao hypervisor na modalidade full-screen. Em outrasmodalidades, os monitores do componente 1300 da gerência desessão execução do hypervisor. Em uma destas modalidades, asessão o componente 1300 da gerência transmite umanotificação à máquina virtual componente 1200 da gerênciaque a máquina virtual terminar quando o componente 13 00 dagerência de sessão recebe uma indicação que um virtual amáquina que executa no hypervisor terminou. Em outra destesas modalidades, o componente 1300 da gerência de sessãorecebem uma notificação quando os registros de usuário forade uma sessão. Em algumas modalidades, o hypervisor forneceuma abstracção da ferragem mergulhe entre a ferragem namáquina da execução e um ambiente de computação fornecidopor uma máquina virtual. Em uma destas modalidades, há umNo. sistema de exploração entre a ferragem da máquina daexecução e o hypervisor. O hypervisor pode ser ditoexecutar o " em metal." desencapado; Em outra destesmodalidades, há um sistema de exploração que executa namáquina da execução, referido como um sistema de exploraçãodo anfitrião, e o hypervisor executa de dentro o sistema deexploração. Os ambientes de computação forneceram por umamáquina virtual pode ser referido como sistemas deexploração do convidado. Em uma modalidade, o hypervisorexecuta em uma sessão do usuário terminal em um sistema deexploração do anfitrião na máquina da execução. Ohypervisor pode emule os recursos de ferragem exigidos porum ambiente de computação fornecido por a máquina virtual.O hypervisor pode dividir a ferragem e fornecer o acesso aa divisória. O hypervisor pode igualmente virtualizarferragem existente, fazendo a pareça pelo menos a umdomínio na ferragem como se esse domínio era o únicodomínio que alcança a ferragem. Em uma outra modalidade,salda do ambiente de computação, ou uma aplicação ou umrecurso que executam dentro do computar o ambiente, épassada do ambiente de computação á o recurso de ferragemvirtualizado forneceu pelo hypervisor. Em ainda outro amodalidade, o hypervisor transmite a saída a um componentetal como componente 1300 da gerência de sessão. Ocomponente da gerência de sessão 1300 podem transmitir asaída recebida a uma máquina de cliente 10 de que umusuário alcança o ambiente de computação. Em contudo umaoutra modalidade, o hypervisor reorienta a saída do recursode ferragem virtualizado ao recurso de ferragem real, talcomo um cartão de relação da rede. Em algumas modalidades,o hypervisor fornece uma abstracção da ferragem mergulhe ecrie um ambiente em que uma máquina virtual pode ser lanç,a máquina virtual compreendida dos arquivos de dados daconfiguração e que criam a ambiente de computação, que podecompreender um sistema de exploração do convidado eprogramas de aplicação ou o outro recurso. Em outrasmodalidades, o hypervisor fornece a funcionalidadetransmitindo dirigido por dados a uma ferragem virtualizadarecurso e reorientação dos dados a uma máquina de pedidoatravés da sessão componente 1300 da gerência. Em umadestas modalidades, uma comunicação entre o componente 1300da gerência de sessão e o hypervisor permite a transmissãodas actualizações, tais como actualizações áudio,actualizações associado com uma interface de utilizadorgráfica, ou as actualizações associou com a sérieEntrada/saída portuário de COM, da máquina virtual àmáquina de pedido. Em outras destas modalidades, acomunicação permitem a transmissão de teclado ou rato ouactualizações áudio da máquina de pedido ao virtualmáquina. Em ainda outras destas modalidades, onde ohypervisor executa dentro de uma sessão do usuárioterminal, o hypervisor pode traçar movimentações do usuárioterminal ao ambiente de computação.
Referindo ainda FIG. 8, uma máquina virtual éconfigurada para o acesso por a máquina de clienteparticular 10. Em algumas modalidades, a gerência ocomponente 1300 recebe uma identificação de uma máquinavirtual já que executa no hypervisor. Em outrasmodalidades, o componente da gerência de sessão 13 00lançamentos a máquina virtual no hypervisor. Em umamodalidade, o componente 13 00 da gerência de sessão recebeuma identificação de um dobrador contendo os arquivos dedados da configuração e que compreendem a máquina virtual.
Em outros a modalidade, o componente 1300 da gerência desessão monta identificado dobrador na máquina da execução.
Em algumas modalidades, um componente de serviço da máquinavirtual executa em um sistema de exploração do convidadoque executa dentro da máquina virtual. Em uma destasmodalidades, o componente de serviço da máquina virtual éum serviço de sistema que funciona em um cliente de serviçoda rede. Em outras destas modalidades, o componente deserviço da máquina virtual é configurado para iniciarautomaticamente a execução em cima da execução do ambientede computação. Em ainda outras destas modalidades, ocomponente de serviço da máquina virtual comunicam-se com ocomponente 13 00 da gerência de sessão. Em outrasmodalidades, o componente de serviço da máquina virtualexecuta no hypervisor. Em algumas modalidades, umcomponente de serviço da máquina virtual executa dentro damáquina virtual. Em uma destas modalidades, após ter lançaa máquina virtual no hypervisor, o componente 1300 dagerência de sessão estabelece uma conexão, tal como umaconexão do TCP/IP, com o componente de serviço da máquinavirtual. Em outras destas modalidades, o componente deserviço da máquina virtual estabelece a conexão. A conexãopode ser uma única conexão multiplexada entre oscomponentes ou as conexões do independente do múltiplo. Emainda outras destas modalidades, o componente 1300 dagerência de sessão usam a conexão para transmitir ainformação de configuração ao componente de serviço damáquina virtual. A informação de configuração pode serassociada com uma sessão do protocolo da camada deapresentação que executa na máquina de cliente 10 em que asaída da máquina virtual é apresentada. A informação deconfiguração pode igualmente incluir a informação associadacom os ajustes e as mudanças da exposição, a informação damovimentação do cliente e os dados da autenticação. Emoutras modalidades, o componente de serviço da máquinavirtual recebe a informação associada com uma impressora aque a máquina de pedido tem o acesso. Em uma destasmodalidades, o acesso do componente de serviço da máquinavirtual um serviço da impressora de rede a criar na máquinaque virtual uma impressora conectou à impressora a que amáquina de pedido tem o acesso. Em ainda outrasmodalidades, o componente de serviço da máquina virtualtransmitem mensagens do status da sessão ao componente 1300da gerência de sessão. Em uma destas modalidades, ocomponente de serviço da máquina virtual transmitemensagens da pulsação do coração ao componente 1300 dagerência de sessão. Em outras destas modalidades, ocomponente de serviço da máquina virtual transmitemensagens do keep-alive ao componente 1300 da gerência desessão, para impedir o componente 1300 da gerência desessão de interromper a máquina virtual. Em ainda outrasdestas modalidades, o componente de serviço da máquinavirtual transmitem uma mensagem ao componente 13 0 0 dagerência de sessão que fornece uma indicação que o usuárioda máquina de cliente 10 finalize a sessão, interrompa, oususpenda uma sessão com o ambiente de computação. 0componente de serviço da máquina virtual pode receber aindicação do usuário atividade de s de um módulo daautenticação. Referindo ainda FIG. 8, como descritos acima,um pedido para o acesso a um recurso é recebido (etapa8 02), um método para fornecer o acesso ao recurso éidentificado (etapa 804), e um ambiente virtualizado podeser selecionado para fornecer o acesso a um recurso (etapa808) . Em algumas modalidades, uma máquina de cliente 10recebe o pedido, identifica um método para fornecer oacesso, e seleciona um ambiente virtualizado para fornecero acesso a um recurso. Em uma destas modalidades, umdispositivo da computação móvel conecta a uma máquina decliente 10 referida como um dispositivo de computação, queidentifique um método para fornecer o acesso a um ambientede computação, selecione um ambiente de computação portátilque reside no armazenamento no dispositivo da computaçãomóvel e forneça o acesso ao ambiente de computaçãoportátil. Referência adiante figos. 89A e 89B, umdispositivo de armazenamento e um dispositivo de computaçãosão descritos. Na breve vista geral, o dispositivo dearmazenamento armazena os dados associados com um ambientede computação, tal como um ambiente de computação portátil,que em algumas modalidades inclua o software virtual doization, uma imagem da máquina virtual, e dados de usuário.
Um dispositivo de computação que conecta ao dispositivo dearmazenamento, executando uma máquina virtual, efornecimento do acesso ao ambiente de computação responsivoaos dados armazenados no dispositivo de armazenamento.
Ainda referindo o FIGO. 8 9A, e em um detalhe maisadicional, o dispositivo de armazenamento 8905 armazena oambiente de computação portátil 8920 de uns ou váriosusuários. Em uma modalidade, o dispositivo de armazenamento8905 pode ser qualquer tipo e dar forma da movimentaçãodura, incluindo uma micro movimentação dura. Em uma outramodalidade, o dispositivo de armazenamento 8905 pode serqualquer tipo e dar forma do dispositivo de armazenamentoportátil, tal como uma movimentação instantânea oumovimentação do USB, ou todo o tipo e formulário do suportede memória portátil, tal como um CD ou um DVD. Em ainda umaoutra modalidade, o dispositivo de armazenamento 8 905compreende um cartão instantâneo, uma vara da memória, ocartão multi-media ou um cartão digital seguro. Em algumasmodalidades, o dispositivo de armazenamento 8905 podearmazenar as aplicações que incluem aplicações doprocessamento ou do escritório de palavra, clientes do AIC,clientes da RDP, software para estabelecer qualquer tipo epara dá-lo forma da rede confidencial virtual (VPN) ou aconexão do SSL VPN, software para acelerar comunicações darede ou entrega da aplicação ou qualquer outro tipo e a dá-lo forma da aplicação. Em uma modalidade, o dispositivo dearmazenamento 8905 pode armazenar uma imagem da máquinavirtual. Em uma outra modalidade, o dispositivo dearmazenamento 8905 pode compreender um transmissor paratransmitir dados armazenados a um dispositivo de computação8910. Em ainda uma outra modalidade, o dispositivo dearmazenamento 8 905 pode compreender um transceptor paraalcançar dados armazenados, dados armazenados transmissorese receber dados para o armazenamento. Em contudo uma outramodalidade, o dispositivo de armazenamento 8905 podecompreender os dados armazenados que compreendem umprograma de aplicação para executar uma máquina virtual emum dispositivo de computação. Em algumas modalidades, odispositivo de armazenamento 8905 é encaixado em umdispositivo da computação móvel. Em outras modalidades, odispositivo de armazenamento 8905 é conectado a umdispositivo da computação móvel. Em ainda outrasmodalidades, o dispositivo de armazenamento 8905compreendem um dispositivo de armazenamento portátilremovivel de um dispositivo de computação. O dispositivo dearmazenamento 8905 armazena os dados associados com umambiente de computação. Os dados podem compreender umambiente de computação portátil 8920. Em uma modalidade, oambiente de computação portátil 8920 é considerado portátilque o ambiente de computação portátil 8920 pode para carregfacilmente ou convenientemente e transportar de umdispositivo de computação 8910 a um outro dispositivo decomputação 8910'. Em uma outra modalidade, o ambiente decomputação portátil 8920 é considerado portátil que oambiente de computação pode ser estabelecido ou executadoem todo o dispositivo de computação apropriado 8910 comquase nenhumas mudanças ao dispositivo de computação 8910,ou em uma modalidade mais adicional, com quase nenhumamanutenção ou administração. Em ainda uma outra modalidade,o ambiente de computação portátil 8920 inclui umapluralidade de limas que representam um ambiente do área detrabalho, ou uma parcela disso, de um sistema informático100, que um usuário deseje executar no dispositivo decomputação 8910. Em contudo uma outra modalidade, oambiente de computação portátil 8920 pode representar umambiente sob que um usuário opera um computador desecretária do repouso ou do escritório. Em algumasmodalidades, o ambiente de computação portátil 8920representa umas ou várias aplicações a que um usuário tem oacesso. O ambiente de computação portátil 8920 pode incluiruma imagem 8925 da máquina virtual. Em uma modalidade, aimagem 8925 da máquina virtual compreende a a imagem decomputação do ambiente, incluindo alguma da informação,dados, limas, software, aplicações e/ou sistema deexploração necessário para executar um ambiente decomputação 8 920, incluindo arquiva necessário para executaro ambiente de computação 8 92 0 através do software virtual8921 do ization. Em uma outra modalidade, a imagem 8925 damáquina virtual compreende os arquivos de dados daconfiguração e exigidos executar uma máquina virtual quefornece o acesso a um ambiente de computação pedido por umusuário. Em ainda uma outra modalidade, a imagem 8 925 damáquina virtual compreende uma imagem da máquina virtualcomo descrita acima.O ambiente de computação portátil 8920 pode igualmenteincluir os dados de usuário 8930, incluindo, sem limitação,nenhuns dados, informação, limas, software ou aplicações deum usuário. Em uma modalidade, os dados de usuário 8930 sãoarmazenados dentro, ou como uma parte de, a imagem 8925 damáquina virtual. Em uma outra modalidade, os dados deusuário 8930 podem ser criados, editado ou fornecido portodo o software, programa, ou aplicação do dispositivo dearmazenamento 8905 ou do dispositivo de computação 8910. Oambiente de computação portátil 8920 pode incluir osoftware 8921 da virtualização. Em algumas modalidades, osoftware 8921 da virtualização pode compreender todos osmeios ou mecanismos apropriados para que um usuárioalcance, lê e/ou redige quaisquer dados de usuário 8930incluídos dentro ou fornecidos pelo software davirtualização 8921 e/ou imagem 8925 da máquina virtual. Emuma destas modalidades, o software 8921 da virtualizaçãopode seguir, controlar e sincronizar o acesso, a leiturae/ou a escrita dos dados de usuário 8930 durante umambiente de computação estabelecido 8920' com os dados deusuário 8930 forneceu no dispositivo de armazenamento 8905.Em outras destas modalidades, os dados de usuário 8930podem somente ser alcançados através de o software 8921 dovirilization ou o ambiente de computação estabelecido8920'. Em ainda outras destas modalidades, de todo osoftware, de programas ou de aplicações do dispositivo dearmazenamento 8905 podem alcançar os dados de usuário 8930quando o dispositivo de armazenamento 8905 não é conectadoao dispositivo de computação 120 ou quando um ambiente decomputação 8920' não está executando. Contudo outras destasmodalidades, os dados de usuário 8 93 0 podem compreender osdados e as limas criados durante uma sessão de um ambientede computação estabelecido 8920'. 0 dispositivo decomputação 8 910 pode ser qualquer tipo e dar forma dosistema informático como descrito em relação ao FIGO. IA eFIG. 1 B acima. Em uma modalidade, o dispositivo decomputação 8 910 é uma máquina de cliente 10 como descritoacima. Em uma outra modalidade, uma conexão entre umdispositivo de computação 8910 e um dispositivo dearmazenamento 8 9 05 fornece um usuário de uma máquina decliente 10 o acesso a um recurso pedido. Em ainda uma outramodalidade, o dispositivo de computação 8 910 recebe umpedido para o acesso a um recurso quando uma conexão éfeita entre o dispositivo de computação 8910 e odispositivo de armazenamento 8905. Em contudo uma outramodalidade, um método para fornecer o acesso ao recurso éresponsiva identificado à informação recebida dodispositivo de armazenamento 8905. Em uma modalidade, odispositivo de computação 8910 tem um elemento dearmazenamento 128. Em uma outra modalidade, o dispositivode computação 8910 tem uma relação de rede 118' conectado àrede 150. Em ainda uma outra modalidade, o dispositivo decomputação 8 910 tem um transceptor para os dados de acessoarmazenados em um dispositivo de armazenamento 8 905 ou emum dispositivo de computação 8910'. Em algumas modalidades,o dispositivo de computação 8 910 compreende umacaracterística operacional ou de desempenho não fornecidapelo dispositivo de armazenamento 8905. Em uma destasmodalidades, o dispositivo de computação 8910 compreendeelementos, tais como um processador ou uma memória, que odispositivo de armazenamento 8905 não inclua. Em outrasdestas modalidades, o dispositivo de computação 8910fornece um dispositivo de I/O, o dispositivo de exposição,o meio da instalação, ou os outros peripherals, tais comoum teclado ou uma impressora nao disponível ao dispositivode armazenamento 8905. Em ainda outras destas modalidades,o dispositivo de computação 8910 podem fornecer umacaracterística, um recurso, ou o peripheral desejado serusado pelo usuário do dispositivo de armazenamento 8905.
Por exemplo, o usuário pode querer alcançar uma lima ou umaaplicação fornecida em uma máquina remota 30' disponívelatravés de uma conexão através da rede 150. Contudo outrasdestas modalidades, o dispositivo de computação 8910fornecem o acesso a uma rede, tal como a exploraçãoagrícola 3 8 da máquina, nao disponível ao dispositivo dearmazenamento 8905, ou a um usuário do dispositivo dearmazenamento 8905. Em uma modalidade, o dispositivo decomputação 8910 estabelece um ambiente de computação 8920'baseado no ambiente de computação portátil 8 92 0 forneceupelo dispositivo de armazenamento 8905. 0 dispositivo decomputação 8910 estabelece uma máquina virtual 8925' e umacamada 8922 da virtualização para executar o ambiente decomputação 8920' baseado no software 8921 ou 8921' davirtualização; , imagem 8925 da máquina virtual e/ou dadosde usuário 230. Em algumas modalidades, a virtualizaçãopermite as máquinas virtuais múltiplas 8925' , com ossistemas de exploração heterogêneos a funcionar naisolação, de lado a lado na mesma máquina física 8910. Emuma modalidade, o software da virtualização 8921 podeincluir uma imagem da máquina virtual. As máquinas virtuaispodem incluir emuladores cross- do PC da plataforma X86,tais como os produtos distribuídos pelo projeto de Bochs embochs.sourceforge.net, ou produtos de VMware manufaturadose distribuídos por VMware, Inc. de Palo Alto, deCalifórnia, ou de produtos manufaturados e distribuídos porSoftricity, Inc., ou pelos produtos de Virtuozzomanufaturados e distribuídos por SWSoft, Inc. de Herndon,de Virgínia, ou dos produtos virtuais do PC de Microsoft®manufaturados e distribuídos por Microsoft Corporation deRedmond, Washington. Em uma outra modalidade, o software8921 da virtualização inclui algum os produtos de AppStreammanufaturados e distribuídos por AppStream Inc, de Palo
Alto, de Califórnia, ou dos produtos de AppExpressmanufaturados e distribuídos por Córrego Teoria, Inc deIrvine, Califórnia. O dispositivo de computação 8910 podeusar todos os outros recursos de computação do sistemainformático IOOb exigido pelo ambiente de computação 8920'.
Em algumas modalidades, o hypervisor 8923 fornece umrecurso de ferragem virtualizado exigido pelo ambiente decomputação 8920'. Em outras modalidades, um hypervisor 8923fornece, através de uma camada 8922 da virtualização,acesso a um recurso de ferragem exigido para a execução deum ambiente de computação. Em uma destas modalidades, ohypervisor 8923 provisions o recurso de ferragem. Em outrasdestas modalidades, o hypervisor 8923 virtualiza o recursode ferragem. Em ainda outras destas modalidades, ohypervisor 8 923 dividem recursos de ferragem existentes efornecem o acesso a um recurso de ferragem dividido. Emalgumas modalidades, uma máquina virtual 8925' executar emuma camada da virtualização fornece o acesso a um ambientede computação 8920'. Em outro as modalidades, um componente1300 da gerência de sessão executam a máquina virtual 8925.Em ainda as outras modalidades, do software devisualização 8921 ou 8921; execute a máquina virtual 8925.
Em uma destas modalidades, o ambiente de computaçãoportátil 8920 inclui todo o tipo e formulário do softwarepara virtualizar em um dispositivo de computação um recursousuário-acessivel, tal como um sistema de exploração, oárea de trabalho, a aplicação, e os quaisquer recursos decomputação da ferragem. Em contudo outras modalidades, aimagem 8 925 da máquina virtual são alcançadas para executaruma máquina virtual 8925' . Em um destas modalidades, do 'do software 8921 ou 8921 do virilization; alcança a imagemda máquina virtual. Em algumas modalidades, o software 8921da virtualização pode incluir o software para virtualizarum usuário, tal como os produtos do Virtual Server deMicrosoft manufaturados e distribuídos por MicrosoftCorporation de Redmond, de Washington, ou dos produtos deVserver do linux distribuídos pelo projeto de Vserver dolinux situado em linux-vserver.org. Em outras modalidades,o software 8921 da virtualização pode igualmente incluir umintérprete ou um compilador just-in-time, tal como amáquina virtual de JAVA (JVM) original manufaturado por SunMicrosystems de Santa Clara, de Califórnia, ou dointérprete do tempo de execução da língua comum (CLR)manufaturado por Microsoft Corporation. Em algumasmodalidades, o dispositivo de computação 8 910 tem osoftware 8921' da virtualização; armazenado ou instalado noelemento de armazenamento 12 8 antes de uma conexão com odispositivo de armazenamento 8905. Em uma modalidade, osoftware 89211 da virtualização; não precisa de serinstalado no dispositivo de computação 8910, e pode, eralugar de, ser executado do dispositivo de armazenamento8905. Em uma outra modalidade, o dispositivo de computação8910 instala e executa o software de visualização 8921 em apor a base da conexão. Nesta modalidade, o dispositivo decomputação 8 910 pode remover o software 8 921 dovirilization do elemento de armazenamento 128 em cima daterminação do ambiente de computação estabelecido 8920'. Emainda uma outra modalidade, o dispositivo de computação8910 instala e executa o software 8921 da virtualização emuma primeira conexão. Em contudo a modalidade, em cima deoutras conexões, se o dispositivo de computação 8 910detecta mudanças ao software 8921 da virtualização, taiscomo uma versão mais nova, as actualizações de computaçãodo dispositivo 8910 o software 8921 da virtualização, ouinstalam uma versão mais nova do software 8921 davirtualização. Em outras modalidades, o dispositivo decomputação 8910 obtém o software 8921 da virtualização deum elemento de armazenamento 128" ou uma máquina remota 30acessível através da rede 150. Em uma modalidade, osoftware 8921 da virtualização é usado para estabelecer umacamada 8922 da virtualização no dispositivo de computação8910. Em uma outra modalidade, a camada 8922 davirtualização fornece uma camada da abstracção que decupleou isole uma aplicação ou um recurso de ferragem do sistemade exploração. Em ainda uma outra modalidade, a camada 8922da virtualização compreende uma aplicação para hospedar oufuncionar um outro sistema de exploração ou aplicação, talcomo a máquina virtual 8925. Em algumas modalidades, ohypervisor 8923 compreende o software 8921 davirtualização. Em outras modalidades, o componente 1300 dagerência de sessão compreende o software 8921 davirtualização. Em ainda outras modalidades, o dispositivode computação 8910 do anfitrião armazenam o software davirtualização 8921 1 no armazenamento elemento 128. Emcontudo outras modalidades, o dispositivo de computação8 910 alcançam uma cópia remotamente encontrada do softwarevirtual 8921' do ization;. Em algumas modalidades, a camadavirtual 8922 do ization e/ou a máquina virtual 8925fornecem um ambiente da execução no dispositivo decomputação 8910.
Em uma destas modalidades, cada ambiente da execução éum exemplo original do mesmo ambiente da execução, quando,em outras destas modalidades, cada ambiente da execuçãopuder ser um exemplo de ambientes diferentes da execução.
Cada ambiente da execução pode ser isolado e/ou naoacessível por um outro ambiente da execução. Em outrasmodalidades, a camada 8 922 da virtualização e/ou a máquinavirtual 8 925 fornecem um contexto, um espaço ou um " daexecução; sandbox" para isolar os processos e as tarefasque funcionam no mesmo sistema de exploração. Em umamodalidade, a camada 8922 da virtualização comunica-se comum componente 13 0 0 da gerência de sessão. Em algumasmodalidades, o componente 1300 da gerência de sessão ésoftware que executa em uma camada entre um hypervisor 8923ou o sistema de exploração do dispositivo de computação8 910 e de umas ou várias máquinas virtuais 8 925 quefornecem uma abstracção da máquina virtual aos sistemas deexploração do convidado. Em outras modalidades, comodescritas acima, o componente 1300 da gerência de sessãopode residir fora do dispositivo de computação 8910 e estarem uma comunicação com um hypervisor 8923 ou o sistema deexploração do dispositivo de computação 8910. Em ainda aoutra modalidade, o componente 1300 da gerência de sessãopode carregar, funcionar ou operar a imagem 8925 da máquinavirtual do dispositivo de armazenamento 8905 para executaruma máquina virtual 8925'. Em contudo outras modalidades, ocomponente 1300 da gerência de sessão e hypervisor 8923 sãoincorporados na mesma aplicação, no software ou em outrasinstruções executáveis fornecer a camada virtual 8 922 doization. Em umas modalidades mais adicionais, o componente1300 da gerência de sessão está em uma comunicação com umcomponente de serviço da máquina virtual que executa dentrodo ambiente de computação 8920. Em algumas modalidades eainda na referência o FIGO. 89A, o dispositivo decomputação 8910 inclui um mecanismo 8940 do carregamento,que possa compreender o software, a ferragem, ou a toda acombinação do software e da ferragem. Em uma modalidade, omecanismo 8940 do carregamento compreende uma lima deconfiguração do autorun. Em uma outra modalidade, odispositivo de armazenamento 8905 pode incluir o mecanismo8940 do carregamento. Em ainda uma outra modalidade, odispositivo de armazenamento 8905 inclui o mecanismo 8940do carregamento em uma lima do autorun. Em algumasmodalidades, um mecanismo 8940 do carregamento nodispositivo de armazenamento 8905 estabelece o ambiente decomputação 8920' no dispositivo de computação 8910 basearamno ambiente de computação portátil 8920 armazenado nodispositivo de armazenamento 8905. Em outras modalidades, omecanismo 8940' do carregamento; do dispositivo decomputação 8910 estabelecem do ambiente de computação8920'. Em ainda outras modalidades, o mecanismo 8940 docarregamento do dispositivo de armazenamento 8905 trabalhamconjuntamente com o mecanismo 8940' do carregamento; dodispositivo de computação 8910 para estabelecer o ambientede computação 8920'. Em uma modalidade, o mecanismo 8940 docarregamento compreende um excitador, tal como um excitadorde dispositivo ou um excitador da semente ou da usuário-modalidade para conectar a e/ou alcançar o dispositivo dearmazenamento 8905, ou o armazenamento elementl28 disso. Emuma outra modalidade, o mecanismo 8940 do carregamentocompreende todo o tipo e formulário de instruçõesexecutáveis, tais como um programa, biblioteca, aplicação, serviço, processo, linha ou tarefa para alcançar o elementode armazenamento 12 8 ou o dispositivo de armazenamento8905. Em ainda uma outra modalidade, o mecanismo 8940 docarregamento alcança todo o tipo e formulário dos dados eda informação no armazenamento 128 para estabelecer oambiente de usuário 8920' de acordo com as operaçõesdiscutidas nisto. Por exemplo, em algumas modalidades, omecanismo 8 94 0 do carregamento lê uma lima de configuraçãodo autorun no elemento de armazenamento 12 8 ou nodispositivo de armazenamento 8905. Em algumas modalidades,o mecanismo 8 94 0 do carregamento compreende um mecanismo doplugue-n-jogo (PnP) por que o sistema de exploração dodispositivo de computação 8 910 do anfitrião reconhece odispositivo de armazenamento 8 905 em cima da conexão, ecarrega os excitadores para conectar ao dispositivo dearmazenamento 8905. Em uma modalidade, o mecanismo 8940 docarregamento em cima da deteção de uma conexão entre odispositivo de armazenamento 8905 e o dispositivo decomputação 8910 inicia o carregamento, o estabelecimentoe/ou a execução do software 8921 do virilization e/ou doambiente de usuário 8920' no dispositivo de computação8910. Em uma outra modalidade, o mecanismo 8940 docarregamento pode compreender todas as réguas, lógica,operações e/ou funções a respeito da autenticação e/ou daautorização de estabelecer um ambiente de computação 8920'no dispositivo de computação 8910 basearam no ambiente decomputação portátil 8920. Em ainda uma outra modalidade, omecanismo 8 94 0 do carregamento pode determinar a existênciado software da virtualização 8921 ' no dispositivo decomputação 8910 e/ou na diferença nas versões entre osoftware 8921 da virtualização e o software 8921' davirtualização;. Em contudo uma outra modalidade, omecanismo 8 94 0 do carregamento pode armazenar, carregar,e/ou executar o ' do software 8921 ou 8921 davirtualização; no dispositivo de computação 8910. Em umamodalidade mais adicional, o mecanismo 8940 do carregamentopode armazenar, carregar, e/ou executar a imagem 8 92 5 damáquina virtual no dispositivo de computação 8 910 como umacesso de fornecimento da máquina virtual 8925 ao ambientede computação 8920'. Em ainda uma outra modalidade, omecanismo 8 94 0 do carregamento pode compreender ou fornecerqualquer tipo e dá-lo forma da interface de utilizador, talcomo a linha gráfica relação da interface de utilizador oudo comando. Em algumas modalidades, o software virtual 8 921do ization, o ambiente de computação portátil 8920 e/ou omecanismo de carregamento 8 94 0 são projetados e construídosde acordo com a especificação do projeto da aplicação U3,ou a movimentação esperta do USB, desde que por LLC U3 deRedwood City, Califórnia. Por exemplo, o mecanismo 8940 docarregamento pode compreender um programa do launchpad U3,e o software 8921 da virtualização e/ou o ambiente deusuário portátil 120 podem compreender uma aplicação de U3-based. Referência agora o FIGO. 89B, um diagrama de fluxodescreve uma modalidade das etapas recolhidas um métodopara fornecer o acesso a um ambiente de computação em umdispositivo de computação através de um dispositivo dearmazenamento. Na breve vista geral, um método parafornecer o acesso a um ambiente de computação inclui aetapa de armazenar, em um dispositivo de armazenamento, osdados associados com um ambiente de computação (etapa8950). Um dispositivo de computação conecta ao dispositivode armazenamento (etapa 8 960). Uma máquina virtual queexecuta no dispositivo de computação fornece o acesso aoambiente de computação, baseado nos dados armazenados nodispositivo de armazenamento (etapa 8970). Em um detalhemais adicional, um dispositivo de armazenamento 8905armazena os dados associados com um ambiente de computaçãoportátil 8920 (etapa 8950). Em uma modalidade, odispositivo de armazenamento 8905 armazena os dados deusuário associados com o ambiente de computação. Em umaoutra modalidade, o dispositivo de armazenamento 8905armazena uma imagem 8925 da máquina virtual. Em ainda umaoutra modalidade, o dispositivo de armazenamento 8905armazena os dados associados com um ambiente de computação,o ambiente de computação que compreende pelo menos umprograma de aplicação. Em contudo uma outra modalidade, odispositivo de armazenamento 8 905 armazena os dadosassociados com um ambiente de computação, o ambiente decomputação que compreende um sistema de exploração. Em umamodalidade, o dispositivo de armazenamento 8905 armazena osdados que compreendem um sistema de exploração. Em umaoutra modalidade, o dispositivo de armazenamento 8905armazena os dados que compreendem um programa de aplicação.
Em ainda uma outra modalidade, o dispositivo dearmazenamento 8905 armazena um programa de aplicação paraexecutar uma máquina virtual em um dispositivo decomputação. Em contudo uma outra modalidade, o dispositivode armazenamento 8 905 armazena o software da virtualizaçãopara executar uma máquina virtual em um dispositivo decomputação. Em algumas modalidades, o dispositivo dearmazenamento 8905 pode incluir um conector paraestabelecer uma conexão entre o dispositivo dearmazenamento 8905 e um dispositivo de computação. Emoutras modalidades, o dispositivo de armazenamento 8905reside em um dispositivo de computação, tal como umdispositivo da computação móvel. Em uma destas modalidades,o dispositivo de armazenamento 8905 é encaixado em umdispositivo da computação móvel. Em ainda outrasmodalidades, o dispositivo de armazenamento 8905compreendem um dispositivo de armazenamento portátilremovível de um dispositivo de computação. Um dispositivode computação conecta ao dispositivo de armazenamento(etapa 8.960). O dispositivo de armazenamento 8905 podeconectar ao dispositivo de computação 8910 por todos osmeios e/ou mecanismo apropriados. Em uma modalidade, odispositivo de armazenamento 8905 W conecta a umdispositivo de computação 8910 através de um dispositivo dacomputação móvel. Em uma outra modalidade, o dispositivo dearmazenamento 8 905 é encaixado em um dispositivo dacomputação móvel ajustável ao dispositivo de computação8910. Em cima da conexão, um pedido pode ser recebido pelodispositivo de computação 8910 para o acesso a um recurso.
Em uma modalidade, o pedido é para um ambiente do área detrabalho. Em uma outra modalidade, o pedido é para umaaplicação ou para uma pluralidade de aplicações. Em aindauma outra modalidade, o pedido é para uma máquina virtual.
Em algumas modalidades, uma determinação pode ser feitapara fornecer o acesso ao recurso pedido através de umambiente virtualizado. Em uma destas modalidades, adeterminação é feita como descrita acima em relação aoFIGO. 8. Em outras destas modalidades, a determinação éfeita responsiva à informação recebida do dispositivo dearmazenamento 8 905, tais como uma régua que exige adeterminação. Em uma modalidade, o dispositivo decomputação 8910 alcança o dispositivo de armazenamento 8905para alcançar o ambiente de computação portátil 8920. Emuma outra modalidade, o dispositivo de computação 8910obtém o software 8921 da virtualização do dispositivo dearmazenamento 8905 para estabelecer um ambiente decomputação 8920'. Em ainda uma outra modalidade, odispositivo de computação 8910 não obtém o software 8921 davirtualização do dispositivo de armazenamento 8905 porque odispositivo de computação 8910 tem o acesso ao software8921 da virtualização no elemento de armazenamento 128' ouatravés da rede 150. Em contudo uma outra modalidade, odispositivo de computação 8910 obtém parcelas do software8921 da virtualização do dispositivo de armazenamento 8905.
Por exemplo, o software 8921 da virtualização nodispositivo de armazenamento 8905 pode ser uma versãoatualizado ou ter limas atualizados ao software davirtualização 8921 1 no dispositivo de computação 8910. Emalgumas modalidades, o dispositivo de armazenamento 8905transmite a informação ao dispositivo de computação 8910.
Em uma destas modalidades, o dispositivo de armazenamento8905 transmite a informação com um pedido para o acesso aum recurso. Uma máquina virtual que executa no dispositivode computação fornece o acesso ao ambiente de computação,baseado nos dados armazenados no dispositivo dearmazenamento (etapa 8970). Em uma modalidade, odispositivo de computação 8910 recupera dados dodispositivo de armazenamento 8905. Em uma outra modalidade,o dispositivo de computação 8 910 alcança o dispositivo dearmazenamento 8905 para obter uma imagem 8925 da máquinavirtual usada para executar a máquina virtual. Em ainda umaoutra modalidade, o dispositivo de computação 8910 alcançao dispositivo de armazenamento 8905 para obter os dados oua informação que identificam uma posição do ambiente decomputação portátil 8920 que pode ser acessível aodispositivo de computação 8910. Por exemplo, o dispositivode armazenamento 8905 pode compreender os dados de usuário8930 que identificam um localizador de recurso uniforme(URL) associado com uma posição em que uma imagem 8925 damáquina virtual é armazenada, o URL acessível pelodispositivo de computação 8910 através da rede 150. Emcontudo uma outra modalidade, o dispositivo de computação8910 alcança um elemento de armazenamento identificadopelos dados de usuário 8930, por exemplo, um elemento dearmazenamento ou uma máquina remota 30 na rede 150 quearmazena a imagem 8925 da máquina virtual. Em algumasmodalidades, o dispositivo de computação 8910 monta odispositivo de armazenamento 8905 como um armazenamento,tal como um disco, disponível ao dispositivo de computação8910. Em uma destas modalidades, o dispositivo decomputação 8910 monta o dispositivo de armazenamento 8905como meios removíveis. Em outras modalidades, o mecanismo8940 do carregamento alcança o dispositivo de armazenamento8905. O dispositivo de computação 8910 estabelece umambiente para executar ou fornecer o acesso ao ambiente decomputação 8920'. Em uma modalidade, uma máquina virtualpode ser executada no ambiente de computação 8920' parafornecer o acesso a um recurso pedido. Em uma outramodalidade, uma máquina virtual é o recurso pedido. Emainda uma outra modalidade, uma máquina virtual 8925'executa uma máquina virtual 8925". Em uma modalidade, odispositivo de computação 8 910 executa uma máquina virtualresponsiva a uma imagem 8925 da máquina virtual armazenadano dispositivo de armazenamento 8905. Em uma outramodalidade, o dispositivo de computação 8910 executa umamáquina virtual 8925' responsivo aos dados armazenados nodispositivo de armazenamento 8905. Em ainda uma outramodalidade, o dispositivo de computação 8910 executa amáquina virtual responsiva a uma política armazenada nodispositivo de armazenamento. Em uma modalidade, odispositivo de computação 8910 recupera os dadosarmazenados no dispositivo de armazenamento 8905. Em umaoutra modalidade, o dispositivo de computação 8910 usa umprograma de aplicação armazenado no dispositivo dearmazenamento 8905 para alcançar os dados. Em ainda umaoutra modalidade, o dispositivo de computação 8910 forneceo acesso a um ambiente de computação executando um sistemade exploração que fornecem o acesso a umas ou váriasaplicações identificadas pela informação armazenada nodispositivo de armazenamento, o sistema de exploração e asumas ou várias aplicações que têm o acesso aos dados deusuário armazenados no dispositivo de armazenamento 8905.
Em uma modalidade, o dispositivo de computação 8910 instalae/ou carrega o software 8921 do virilization paraestabelecer a camada virtual 8922 do ization. Em algumasmodalidades, o software virtual 8921 do ization é projetadoe construído como uma aplicação portátil que possaexecutar, carregar ou estabelecer a camada virtual doization 8922 no dispositivo de computação 8910 sem exigir ainstalação do software virtual 8921 do ization. Em outrasmodalidades, o software 8921 da virtualização é instaladoautomaticamente no dispositivo de computação 8910 atravésde um certificado da instalação. Em uma destas modalidades,o software 8921 da virtualização é instalado sem exigir umarepartição. Em outras destas modalidades, o software 8921da virtualização é instalado e a camada 8922 davirtualização é estabelecida transparente a um usuário. Emainda outras modalidades, a camada 8922 da virtualizaçãosão estabelecidas usando o software 8921' da virtualização;armazenado no dispositivo de computação 8910 ou alcançadoatravés da rede 15 0. Em algumas modalidades, o dispositivode computação 8910 executa um hypervisor 8923 paraestabelecer a camada 8 922 da virtualização. Em outrasmodalidades, em um hypervisor 8923 no dispositivo decomputação 8 910 e em uma comunicação com um hypervisor8923' em uma máquina remota 30' estabelece a camada 8922 davirtualização. Em ainda outras modalidades, um hypervisor8923 em uma comunicação com um componente 1300 da gerênciade sessão estabelecem a camada 8922 da virtualização. Emuma destas modalidades, em cima do estabelecimento dacamada 8922 da virtualização, o componente 1300 da gerênciade sessão identifica, provisions, e/ou executa uma máquinavirtual na camada 8922 da virtualização como descritosacima em relação ao FIGO. 8. Em contudo outras modalidades,o mecanismo 8940 do carregamento estabelece a camada 8922da virtualização. Em umas modalidades mais adicionais, odispositivo de computação 8910 estabelece uma camada 8922da virtualização em que um componente de serviço da máquinavirtual executa. Em uma modalidade, a camada 8 922 davirtualização foi estabelecida antes do dispositivo dearmazenamento 8905 que conecta ao dispositivo de computação8910. Por exemplo, a camada 8922 da virtualização pode tersido estabelecida para um outro ambiente de computação8920' ou durante uma conexão precedente do mesmos ou de umdispositivo de armazenamento diferente 8905. Em algumasmodalidades, o dispositivo de computação 8910 e/ou omecanismo de carregamento 8 94 0 estabelecem a camada 8 922 davirtualização e atuam, começam, ou executam um componente1300 da gerência de sessão e/ou o hypervisor 8923. Emoutras modalidades, o dispositivo de computação 8910 e/ou omecanismo de carregamento 8940 executam o componente 1300da gerência de sessão e/ou o hypervisor 8923 em cima docarregamento ou de executar uma máquina virtual 8925. 0dispositivo de computação 8910 fornece o acesso ao ambientede computação 8 920' baseado no ambiente de computaçãoportátil 8920 (etapa 8970). Em uma modalidade, odispositivo de computação 8910 e/ou o mecanismo decarregamento 8940 alcançam a imagem 8925 da máquina virtualdo dispositivo de armazenamento 8905 e executam a imagem8925 da máquina virtual como uma máquina virtual 8925' noambiente virtualizado estabelecido 8922. Em uma outramodalidade, o dispositivo de computação 8910 e/ou omecanismo de carregamento 8940 automaticamente carregam,executam ou estabelecem de outra maneira o ambiente decomputação 8920 com a camada 8922 da virtualização em cimada deteção de uma conexão sobre a rede 150. Em ainda umaoutra modalidade, o dispositivo de computação 8910 e/oumecanismo de carregamento 8940 automaticamente cargas,executam ou estabelecem de outra maneira o ambiente decomputação 8920 e a camada 8922 do virilization em cima dadeteção da existência ou da identificação do ambiente decomputação portátil 8920 no elemento de armazenamento 128. Em algumas modalidades, um usuário pode selecionar a imagem8925 da máquina virtual do dispositivo de armazenamento8905 para a execução como uma máquina virtual 8925' atravésde alguns tipo e formulário da interface de utilizador. Emuma destas modalidades, o software virtual 8921 do ization,a camada 8922 do virilization, o hypervisor 8923, ou omecanismo 8940 do carregamento podem indicar uma interfacede utilizador para que um usuário identifique uma imagem8925 da máquina virtual, e/ou execute uma máquina virtual8925' baseado em uma imagem 8925 da máquina virtual. Emoutras destas modalidades, um cliente, tal como um clientedo AIC, um cliente da RDP, ou um cliente Xll, executa nodispositivo de computação 8910 e fornece a interface deutilizador ao usuário. Em algumas modalidades, um usuáriopode alcançar, lê, e/ou redige os dados de usuário 8930durante a utilização do ambiente de computação estabelecido8920'. Em uma destas modalidades, um usuário do dispositivode computação 8910 pode alcançar, lê e/ou redige os dadosde usuário 8930 ao dispositivo de armazenamento 8905. Emoutras destas modalidades, um usuário do dispositivo decomputação 8910 pode editar ou modificar os dados deusuário 8 93 0 ou pode criar dados e a informação novos nosdados de usuário 8 930. Em outras modalidades, um usuário dodispositivo de computação 8910 pode alcançar, lê, e/ouredige dados de usuário ao armazenamento 128' dodispositivo de computação 8910. Em ainda outrasmodalidades, o dispositivo de computação 8910 podemsincronizar os dados de usuário 8930 no dispositivo decomputação 8910 com os dados de usuário 8930 no dispositivode armazenamento 8905. Em uma destas modalidades, odispositivo de computação 8910 usa a camada 8922 dovirilization ou o mecanismo 8940 do carregamento parasincronizar os dados de usuário 8930. Em contudo outrasmodalidades, o dispositivo de armazenamento 8905 podem terum programa ou um pedido para sincronizar dados entre odispositivo de armazenamento 8905 e o dispositivo decomputação 8910. Em algumas modalidades, o dispositivo dearmazenamento 8905 pode desconectar do dispositivo decomputação 8 910 em qualquer momento a tempo durante oambiente de computação estabelecido 8920'. Em outrasmodalidades, o dispositivo de armazenamento 8905 podedesconectar após o ambiente de computação 8920' é terminadono dispositivo de computação 8910. Em ainda outrasmodalidades, o ambiente de computação 8920' é terminadoautomaticamente em cima da desconexão do dispositivo dearmazenamento 8905 ao dispositivo de computação 8910. Emcontudo outras modalidades, o ambiente de computação 8920'pode permanecer estabelecida no dispositivo computar 8910depois que as disconexões do dispositivo de armazenamento8905 do dispositivo de computação 8910. Em uma destasmodalidades, uma vez o ambiente de computação 8920' éestabelecido no dispositivo de computação 8910, odispositivo de armazenamento 8905 pode ser disconnected.
Em algumas modalidades, o dispositivo de armazenamento8905 pode alcançar, lê, e/ou redige os dados de usuário8 93 0 a qualquer parcela do ambiente de computação portátil8920. Em uma destas modalidades, embora o ambiente decomputação portátil 8920 não seja estabelecido nem não sejavirtualizado no dispositivo de computação 8910, odispositivo de armazenamento 8905 pode ainda alcançar, lê,e/ou escreve a e dos dados de usuário 8930. Em outrasmodalidades, um usuário pode usar uma primeira aplicação noambiente de computação estabelecido 8920' para alcançar umalima dos dados de usuário 8930. Em outro ainda asmodalidades, o usuário podem usar uma segunda aplicação nodispositivo de armazenamento 8905 para alcançar a mesmalima dos dados de usuário 8930. Em contudo outrasmodalidades, o software virtual 8 921 do ization ou a imagemvirtual 8925 permitem o acesso aos dados de usuário 8930,mesmo que o software virtual 8921 do ization ou a imagem8 92 5 da máquina virtual não estejam executando nem não seestejam operando. Embora figos. 89A e 89B são discutidosgeralmente com o um ambiente de computação portátil 8920armazenado no dispositivo de armazenamento 8905, odispositivo de armazenamento 8905 podem armazenar umapluralidade dos ambientes de computação portáteis 8920 paraestabelecer uma pluralidade correspondente dos ambientes decomputação 8920' no dispositivo de computação 8910. Emalgumas modalidades, o dispositivo de computação 8910, omecanismo de carregamento 8940, ou a camada virtualizada8920 fornecem uma interface de utilizador para que ousuário selecione um ambiente de computação portátil doarmazenamento estabelecer o ambiente de computação 8920.Por exemplo, o dispositivo de armazenamento 8905 ou odispositivo de computação 8910 podem ter um mecanismo decomputação portátil da seleção do ambiente como é discutidomais em relação ao FIGO 92A e com o FIGO. 93A. Em outrasmodalidades, no dispositivo de computação 8910, nomecanismo de carregamento 8940, ou nos usos virtualizadosum da camada 8 922 da pluralidade de ambientes de computaçãoportáteis baseados em uma característica do dispositivo decomputação, tal como o tipo do sistema de exploração, oubaseados nos dados de usuário que identificam o ambiente decomputação portátil para usar-se para o dispositivo decomputação. Referência agora figos. 90A, um dispositivo9005 da computação móvel é descrito. Na breve vista geral,o dispositivo 9005 da computação móvel pode ser qualquertipo e dar forma do sistema informático como descrito emrelação ao FIGO. IA e FIG. 1 B acima. Em uma modalidade, odispositivo 9005 da computação móvel compreende umdispositivo de armazenamento, tal como um dispositivo dearmazenamento 8905 como descritos em relação ao FIGO. 89A eFIGO. 8 9B. Em uma outra modalidade, o dispositivo 9005 dacomputação móvel é conectado a um dispositivo dearmazenamento 8905. Em ainda uma outra modalidade, odisposit ivo 9005 da computação móvel compreende umdispositivo de armazenamento portátil removível de umdispositivo de computação. Em contudo uma outra modalidade,o dispositivo 9005 da computação móvel tem uma relação derede 118 usada para conectar às máquinas remotas 30 ou àsmáquinas de cliente 10 na rede 150, tais como o dispositivode computação 8910. 0 dispositivo de armazenamento 8905pode armazenar um ambiente de computação portátil 8 920, queem algumas modalidades inclua o software 8 921 dav.irtualização, uma imagem virtual 8925, e os dados deusuário 8930. Em algumas modalidades, os dados das lojas dodispositivo 9005 da computação móvel associados com umambiente de computação, executam uma máquina virtual, efornecem o acesso ao ambiente de computação responsivo aosdados armazenados no dispositivo 9005 da computação móvel.
Em uma destas modalidades, o dispositivo 9005 da computaçãomóvel compreende uma imagem armazenada da máquina virtual.
Em outras destas modalidades, o dispositivo 9005 dacomputação móvel compreende um programa de aplicação paraexecutar uma máquina virtual em um dispositivo decomputação. Em ainda outras destas modalidades, odispositivo 9005 da computação móvel fornecem o acesso a umambiente de computação executando um sistema de exploraçãoo acesso a umas ou várias aplicações identificadas atravésdos dados armazenados no dispositivo da computação móvel, osistema de exploração e as umas ou várias aplicações quetêm o acesso aos dados de usuário no dispositivo dacomputação móvel. Em outras modalidades, o móbil W odispositivo de computação 9005 armazena o ambiente decomputação portátil 8920 de uns ou vários usuários noarmazenamento fornecido por um dispositivo dearmazenamento, tal como um dispositivo de armazenamento8905 como descritos acima em relação ao FIGO. 89A e 89B. Emuma modalidade, o dispositivo 9005 da computação móveldescifra dados armazenados. Em uma outra modalidade, odispositivo 9005 da computação móvel impede um de acessounauthenticated e desautorizado por um usuário dodispositivo 9005 da computação móvel a um ambiente decomputação fornecido pelo dispositivo 9005 da computaçãomóvel. Referência agora o FIGO. 90B, um diagrama de fluxodescreve uma modalidade das etapas recolhidas um métodopara fornecer um ambiente de computação por um dispositivoda computação móvel. Na breve vista geral, um método incluia etapa da armazenagem, em um dispositivo 9005 dacomputação móvel, os dados associados com um ambiente decomputação (etapa 9020). Uma máquina virtual que executa nodispositivo da computação móvel fornece o acesso aoambiente de computação, baseado nos dados armazenados(etapa 9025). Em um detalhe mais adicional, o dispositivo9005 da computação móvel armazena os dados associados comum ambiente de computação (etapa 9020). Em uma modalidade,o dispositivo 9005 da computação móvel recebe os dadosassociados com o dispositivo de computação de umdispositivo de armazenamento conectado ao dispositivo 9005da computação móvel. Em uma outra modalidade, o dispositivoda computação móvel armazena os dados associados com oambiente de computação em um dispositivo de armazenamento8905 encaixado no dispositivo da computação móvel. Em aindauma outra modalidade, o dispositivo 9005 da computaçãomóvel armazena os dados de usuário associados com oambiente de computação. Em ainda uma outra modalidade, odispositivo 9005 da computação móvel armazena uma imagem damáquina virtual. Em uma modalidade, o dispositivo 9005 dacomputação móvel armazena os dados associados com umambiente de computação, o ambiente de computação quecompreende pelo menos um programa de aplicação. Em umaoutra modalidade, o dispositivo 9005 da computação móvelarmazena os dados associados com um ambiente de computação,o ambiente de computação que compreende um sistema deexploração. Em ainda uma outra modalidade, os dados daslojas do dispositivo 9005 da computação móvel quecompreendem um sistema de exploração, em contudo uma outramodalidade, o dispositivo 9005 da computação móvel armazenaos dados que compreendem um programa de aplicação. Emalgumas modalidades, o dispositivo 9005 da computação móvelarmazena um programa de aplicação para executar uma máquinavirtual. Em outras modalidades, o dispositivo 9005 dacomputação móvel armazena o software do virilization paraexecutar uma máquina virtual. Em algumas modalidades, umpedido pode ser recebido pelo dispositivo 9005 da computação móvel para o acesso a um recurso. Em uma destasmodalidades, o pedido é para um ambiente do área detrabalho. Em outras destas modalidades, o pedido é para umaaplicação ou para uma pluralidade de aplicações. Em aindaoutras destas modalidades, o pedido são para uma máquinavirtual. Contudo outras destas modalidades, o pedido sãopara o acesso a um ambiente de computação. Em algumasmodalidades, uma determinação pode ser feita para fornecero acesso ao recurso pedido através de um ambientevirtualizado. Em uma destas modalidades, a determinação éfeita como descrita acima em relação ao FIGO. 8. Em outrasdestas modalidades, a determinação é feita responsiva W àinformação recebida do dispositivo 9005 da computaçãomóvel, tais como uma régua que exige a determinação. Umamáquina virtual que executa no dispositivo da computaçãomóvel fornece o acesso ao ambiente de computação, baseadonos dados armazenados (etapa 9025) . Em uma modalidade, umprograma de aplicação armazenado no dispositivo 9005 dacomputação móvel executa para alcançar os dados associadoscom o ambiente de computação. Em uma outra modalidade, odispositivo 9005 da computação móvel executa o softwarevirtual do ization, pelo menos uma parcela de que éarmazenado no dispositivo 9005 da computação móvel. Emainda uma outra modalidade, o dispositivo 9005 dacomputação móvel fornece o acesso a um ambiente decomputação executando um sistema de exploração o acesso aumas ou várias aplicações armazenadas no dispositivo dacomputação móvel, o sistema de exploração e as umas ouvárias aplicações que têm o acesso aos dados de usuárioarmazenados no dispositivo 9005 da computação móvel. Em umamodalidade, o dispositivo 9005 da computação móvel executauma máquina virtual, responsiva aos dados armazenados nodispositivo 9005 da computação móvel. Em uma outramodalidade, o dispositivo da computação móvel executa umamáquina virtual responsiva a uma política armazenada nodispositivo 9005 da computação móvel. Em ainda uma outramodalidade, o dispositivo 9005 da computação móvel executauma máquina virtual que forneça o acesso a um recursopedido ou a um ambiente de computação, o responsivoexecutado da máquina virtual a uma imagem da máquinavirtual armazenada no dispositivo 9005 da computação móvel.
Em contudo uma outra modalidade, o dispositivo 9005 dacomputação móvel transfere a execução da máquina virtual aum dispositivo de computação 8910. Embora figos. 90A e 90Bsão discutidos geralmente com o um ambiente de usuárioportátil 8920 armazenado no armazenamento 8905 dodispositivo 9005 da computação móvel, o dispositivo 9005 dacomputação móvel podem armazenar uma pluralidade dosambientes de computação portáteis 8 92 0 para estabelecer umapluralidade correspondente dos ambientes de computação8920' no dispositivo 9005 da computação móvel. Referênciaagora o FIGO. 91A, um dispositivo da computação móvel e umdispositivo de computação são descritos. Na breve vistageral, o dispositivo da computação móvel armazena os dadosassociados com um ambiente de computação. O dispositivo decomputação conecta ao dispositivo da computação móvel,executa uma máquina virtual, e fornece o acesso ao ambientede computação responsivo aos dados armazenados nodispositivo da computação móvel. Em uma modalidade, amáquina virtual que executa no dispositivo de computaçãofornece o acesso ao ambiente de computação. Em umamodalidade, o dispositivo 9005 da computação móvel pode serqualquer tipo e dar forma do sistema informático comodescrito em relação a FIG. IAea FIG. 1 B acima. Em umaoutra modalidade, o dispositivo 9005 da computação móvelcompreende um dispositivo de armazenamento 8 905 comodescritos acima em relação ao FIGO. 90A e FIGO. 90B.
Em algumas modalidades, o dispositivo 9005 dacomputação móvel fornece o acesso a um ambiente decomputação portátil 8920 de uns ou vários usuários noarmazenamento fornecido por um dispositivo dearmazenamento, tal como um dispositivo de armazenamento8905 como descritos acima em relação ao FIGO. 89A e 89B. Emalgumas modalidades, o dispositivo 9005 da computação móvele o dispositivo de computação 8910 podem ter o mesmaprocessador ou arquitectura informática, tal como umaarquitetura baseada X86 do processador. Em outrasmodalidades, o dispositivo 9005 da computação móvel podeter um processador ou uma arquitetura diferente do que odispositivo de computação 8910. Por exemplo, o dispositivode computação 8910 pode ser um SPARC (arquitetura evolutivado processador) e o dispositivo 9005 da computação móvelpode ser uma arquitetura baseada BRAÇO. Em algumasmodalidades, o dispositivo 9005 da computação móvel e odispositivo de computação 8910 podem ambos operar umprocessador, ou um endereço ou uma barra-ônibus de dadosusando os mesmos números de bocados, tais como umprocessador ou uma barra-onibus de 32 bits ou 64-bit. Emoutras modalidades, o dispositivo 9005 da computação móvele o dispositivo de computação 8910 podem operar sobreprocessadores e/ou uma barra-ônibus de dados comarquiteturas diferentes do bocado. Além disso, odispositivo 9005 da computação móvel e o dispositivo decomputação 8910 podem operar o mesmo sistema de exploração,em uma modalidade, e sistemas de exploração diferentes, emuma outra modalidade. Por exemplo, o dispositivo 9005 dacomputação móvel pode operar um sistema de exploração daPALMA quando o dispositivo de computação 8 910 funcionar umsistema de exploração de WINDOWS. Em uma modalidade, umdispositivo 9005 da computação móvel tem processadoresmúltiplos. Um processador pode ter características dedesempenho mais elevado do que o outro processador, e cadaprocessador pode compartilhar um ou vário de elementos doarmazenamento e da memória. Por exemplo, um elemento dearmazenamento, tal como uma unidade de disco ou umdispositivo de armazenamento portátil, pode incluir umambiente de computação. O dispositivo 9005 da computaçãomóvel pode igualmente ter um mecanismo do interruptor acomutar no meio usando um primeiro processador que têmcaracterísticas de desempenho mais elevado e um segundoprocessador que tem as mais baixas características dedesempenho, baseadas nas condições de funcionamento e nasaplicações que executam no dispositivo. O processador quetem umas mais baixas características de desempenho pode serusado para executar aplicações com exigências de mais baixopoder, tais como a funcionalidade típica de PDA do acesso edo email do calendário. Quando uma aplicação exige maispoder, o dispositivo 9005 da computação móvel podeautomaticamente comutar a execução de tais aplicações aoprocessador mais poderoso. O dispositivo de computação 8910conecta ao dispositivo da computação móvel, executa umamáquina virtual, e fornece o acesso ao ambiente decomputação responsivo aos dados armazenados no dispositivo9005 da computação móvel. Em uma modalidade, o dispositivode computação 8910 pode montar o dispositivo dearmazenamento 8905 do dispositivo 9005 da computação móvelcomo uma movimentação dura ou um elemento de armazenamentoremovível 128' do dispositivo de computação 8910. Emalgumas modalidades, o dispositivo 9005 da computação móvelpode ser um dispositivo apto para a utilização (PnP) dodispositivo de computação 8910, tais que um protocolo dePnP manufaturado por Microsoft Corporation de Redmond,Washington, está usado entre o dispositivo 9005 dacomputação móvel e o dispositivo de computação 8910, comoatravés dos dispositivos de I/O 130a-130n ou as relações derede 118, 118'. Em algumas modalidades, o dispositivo decomputação 8910 compreende uma característica operacionalou de desempenho não fornecida pelo dispositivo 9005 dacomputação móvel. Em uma destas modalidades, o dispositivode computação 8910 tem um processador mais poderoso 102'e/ou memória maior 122 ' do que o processador 102 e amemória 122 do dispositivo 9005 da computação móvel. Emoutra destes as modalidades, o dispositivo de computação8910 fornecem um dispositivo de 1/0 130b, o dispositivo deexposição, o meio da instalação, ou os outros peripherals,tais como um teclado ou uma impressora nao disponível aodispositivo 9005 da computação móvel. Em ainda outrasdestas modalidades, o dispositivo de computação 8910 podemfornecer uma característica, um recurso, ou o peripheraldesejado ser usado pelo usuário do dispositivo 9005 dacomputação móvel. Por exemplo, o usuário pode quereralcançar uma lima ou uma aplicação fornecida em uma máquinaremota 30' disponível através de uma conexão através darede 150. Contudo outras destas modalidades, o dispositivode computação 8 910 fornecem o acesso às máquinas em umarede 15 0, tais como aquelas na exploração agrícola 3 8 damáquina, nao disponível ao dispositivo 9005 da computaçãomóvel, ou a um usuário do dispositivo da computação móvel.Em uma modalidade, o dispositivo de computação 8910 forneceo acesso a um ambiente de computação 8920' baseado noambiente de computação portátil 8920 forneceu nodispositivo 9005 da computação móvel. O dispositivo decomputação 8910 executa uma máquina virtual 8925' e umacamada virtual 8922 do ization para executar o ambiente decomputação 8920' baseado no software 8921 ou 8921' davirtualização; imagem 8925 da máquina virtual, ou dadosde usuário 230. Em algumas modalidades, o dispositivo decomputação compreende um transceptor para os dados deacesso armazenados no dispositivo 9005 da computação móvel.Em algumas modalidades, um mecanismo do carregamento nodispositivo 9005 da computação móvel atua o estabelecimentodo ambiente de computação 8920' no dispositivo decomputação 8910 basearam no ambiente de computação portátil8920 armazenado no dispositivo 9005 da computação móvel. Emoutras modalidades, o mecanismo 8940 do carregamento dodispositivo de computação 8910 atua o estabelecimento doambiente de computação 8920'. Em contudo uma outramodalidade, um mecanismo do carregamento no dispositivo9005 da computação móvel trabalha conjuntamente com omecanismo 8940 do carregamento do dispositivo de computação8910 para estabelecer o ambiente de computação 8920'.Referindo agora FIG. 91 B, um diagrama de fluxo descreveuma modalidade das etapas recolhidas um método parafornecer o acesso a um ambiente de computação em umdispositivo de computação através de um dispositivo dacomputação móvel. Na breve vista geral, um método inclui aetapa de armazenar, em um dispositivo da computação móvel,os dados associados com um ambiente de computação (etapa9155). Um dispositivo de computação conecta ao dispositivoda computação móvel (etapa 9160). Uma máquina virtual queexecuta no dispositivo de computação fornece o acesso a umambiente de computação, baseado nos dados armazenados nodispositivo da computação móvel (etapa 9165). Umdispositivo da computação móvel armazena os dadosassociados com um ambiente de computação (etapa 9155). Emuma modalidade, o dispositivo 9005 da computação móvel podearmazenar os dados associados com um ambiente de computaçãocomo descrito acima em relação ao FIGO. 90A e 90B. Em umamodalidade, o dispositivo 9005 da computação móvel podecompreender um dispositivo de armazenamento encaixado nodispositivo 9005 da computação móvel, tais como odispositivo de armazenamento 8905 descrito em relação aoFIGO. 8 9A através do FIGO. 90B. 0 dispositivo de computação8910 conecta ao dispositivo 9005 da computação móvel portodos os meios e/ou mecanismo apropriados (etapa 9160). Emuma modalidade, o dispositivo de computação 8910 conecta aum dispositivo de armazenamento, tal como um dispositivo dearmazenamento 8905 como descritos acima em relação ao FIGO.89A e FIGO. 89B, através de o dispositivo 9005 dacomputação móvel. Em cima da conexão, um pedido pode serrecebido pelo dispositivo de computação 8910 para o acessoa um recurso. Em uma modalidade, o pedido é para o acesso aum ambiente do área de trabalho. Em uma outra modalidade, opedido é para uma aplicação ou para uma pluralidade deaplicações. Em ainda uma outra modalidade, o pedido é parauma máquina virtual. Em algumas modalidades, umadeterminação pode ser feita para fornecer o acesso aorecurso pedido através de um ambiente virtualizado. Em umadestas modalidades, a determinação é feita como descritaacima em relação ao FIGO. 8. Em outras destas modalidades,a determinação é feita responsiva à informação recebida dodispositivo 9005 da computação móvel, tais como uma réguaque exige a determinação.
Em uma modalidade, o dispositivo de computação 8 910alcança o dispositivo 9005 da computação móvel para obter oambiente de usuário portátil 8 920. Em uma outra modalidade,o dispositivo de computação 8910 obtém o software 8921 dovirilization para estabelecer o ambiente virtualizado 8922.
Em ainda uma outra modalidade, o dispositivo de computação8910 não obtém o software virtual 8921 do ization dodispositivo 9005 da computação móvel porque o dispositivode computação 8910 tem o acesso ao software 8921 dovirilization no elemento de armazenamento 128' ou atravésda rede 150. Em contudo uma outra modalidade, o dispositivode computação 8910 obtém parcelas do software 8921 dovirilization do dispositivo 9005 da computação móvel. Porexemplo, o software virtual 8921 do ization no dispositivo9005 da computação móvel pode ser uma versão atualizado outer limas atualizados ao software virtual do ization 8921 'no dispositivo de computação 8910. Em algumas modalidades,o dispositivo 9005 da computação móvel transmite ainformação ao dispositivo de computação 8910. Em uma destasmodalidades, o dispositivo 9005 da computação móveltransmite a informação com um pedido para o acesso a umrecurso. Em uma modalidade, o dispositivo de computação8910 alcança o dispositivo 9005 da computação móvel paraobter a imagem 8925 da máquina virtual. Em uma outramodalidade, o dispositivo de computação 8910 alcança odispositivo 9005 da computação móvel para obter os dados oua informação que identificam uma posição do ambiente deusuário portátil 8920 em todo o armazenamento que puder seracessível ao dispositivo de computação 8910. Por exemplo, odispositivo 9005 da computação móvel pode compreender osdados de usuário 8930 que identificam um localizador derecurso uniforme (URL) associado com uma posição em que umaimagem 8925 da máquina virtual é armazenada, o URLacessível pelo dispositivo de computação 8910 através darede 150. Em ainda uma outra modalidade, o dispositivo decomputação 8 910 alcança um elemento de armazenamentoidentificado pelos dados de usuário 8930, por exemplo, umelemento de armazenamento na rede 150 que armazena a imagem8925 da máquina virtual. Em algumas modalidades, odispositivo de computação 8910 monta o dispositivo 9005 dacomputação móvel como um elemento de armazenamento, talcomo um disco, disponível ao dispositivo de computação8910. Por exemplo, em uma modalidade, o dispositivo decomputação 8910 monta o dispositivo 9005 da computaçãomóvel como meios removíveis. Em uma modalidade, o mecanismo8940 do carregamento alcança o dispositivo 8905 dacomputação móvel. Em algumas modalidades, o dispositivo decomputação 8910 fornece o acesso a um ambiente decomputação executando um sistema de exploração o acesso aumas ou várias aplicações identificadas através dos dadosarmazenados no dispositivo da computação móvel, o sistemade exploração e as umas ou várias aplicações que têm oacesso ao usuário dados no dispositivo de armazenamento. Emoutras modalidades, o dispositivo de computação impede umde acesso unauthenticated ou desautorizado por um usuáriodo dispositivo 9005 da computação móvel a um ambiente decomputação fornecido pelo dispositivo de computação 8910.
Em ainda outras modalidades, o dispositivo de computação8910 descifram os dados armazenados no dispositivo 9005 dacomputação móvel. Uma máquina virtual que executa nodispositivo de computação 8910 fornece o acesso a umambiente de computação, baseado nos dados armazenados nodispositivo 9005 da computação móvel (etapa 9165). Em umamodalidade, o dispositivo de computação 8910 estabelece umambiente virtualizado para fornecer o acesso ao ambiente decomputação 8920' executando a máquina virtual 8925. Em umaoutra modalidade, uma máquina virtual pode ser executada noambiente de usuário 8920' para fornecer o acesso a umrecurso pedido. Em ainda uma outra modalidade, uma máquinavirtual é o recurso pedido. Em algumas modalidades, odispositivo de computação 8910 executa uma máquina virtualresponsiva a uma imagem 8925 da máquina virtual armazenadano dispositivo 9005 da computação móvel. Em outrasmodalidades, o dispositivo de computação 8910 executa umamáquina virtual responsiva aos dados armazenados nodispositivo 9005 da computação móvel. Em uma modalidade, umprograma de aplicação armazenado no dispositivo 9005 dacomputação móvel é executado para alcançar os dadosassociados com um ambiente de computação. Em uma outramodalidade, o dispositivo de computação 8910 executa osoftware da virtualização 8921 ' alcançando pelo menos umaparcela do software da virtualização 8921 armazenou nodispositivo 9005 da computação móvel. Em uma modalidade, odispositivo de computação 8910 executa o software virtual8921 do ization para estabelecer a camada 8922 davirtualização. Em algumas modalidades, o software 8921 davirtualização é instalado automaticamente no dispositivo decomputação 8 910 do anfitrião através de um certificado dainstalação. Em uma destas modalidades, o software 8921 davirtualização é instalado sem exigir uma repartição. Emoutras destas modalidades, o software 8 921 da virtualizaçãoé instalado e a camada 8922 da virtualização é estabelecidatransparente a um usuário. Em algumas modalidades, odispositivo de computação 8910 executa um hypervisor 8923para estabelecer a camada 8 922 da virtualização. Em outrasmodalidades, em um hypervisor 8923 no dispositivo decomputação 8 910 e em uma comunicação com um hypervisor8923' em uma máquina remota 30' estabelece a camada 8922 davirtualização. Em ainda outras modalidades, um hypervisor8923 em uma comunicação com um componente 1300 da gerênciade sessão estabelecem a camada 8922 da virtualização. Emuma destas modalidades, em cima do estabelecimento dacamada 8922 da virtualização, o componente 1300 da gerênciade sessão identifica, provisions, e/ou executa uma máquinavirtual na camada 8 922 da virtualização como descritosacima em relação ao FIGO. 8. Em contudo outras modalidades,o mecanismo 8 94 0 do carregamento estabelecem a camada 8 922da virtualização. Em uma modalidade, o dispositivo decomputação 8910 estabelece uma camada 8922 da virtualizaçãoem que um componente de serviço da máquina virtual executa.
Em uma modalidade, a camada 8 922 da virtualização foiestabelecida antes do dispositivo móvel 9005 que conecta aodispositivo de computação 8910. Por exemplo, a camada 8922da virtualização pode ter sido estabelecida para outrosambiente de usuário 8 920' ou durante uma conexão precedentedo mesmos ou do dispositivo diferente 9005 da computaçãomóvel. Em algumas modalidades, o dispositivo de computação8910 e/ou o mecanismo de carregamento 8940 estabelecem acamada 8 922 da virtualização e atuam, começam, ou executamum componente 1300 da gerência de sessão e/ou o hypervisor8923. Em outras modalidades, o dispositivo de computação8910 e/ou o mecanismo de carregamento 8940 executam ocomponente 1300 da gerência de sessão e/ou o hypervisor8923 em cima do carregamento ou de executar uma máquinavirtual 8925. Em algumas modalidades, o dispositivo decomputação 8910 estabelece, executa ou fornece de outramaneira o ambiente de computação 8920' baseado no ambientede computação portátil 8920. Em uma modalidade, odispositivo de computação 8910 e/ou o mecanismo decarregamento 8940 alcançam a imagem virtual 8 92 5 dodispositivo 9005 da computação móvel e das cargas ouexecutam a imagem 8925 da máquina virtual como uma máquinavirtual 8925 no ambiente virtualizado estabelecido 8922. Emuma outra modalidade, o dispositivo de computação 8910 e/ouo mecanismo de carregamento 8940 automaticamente carregam,executam ou estabelecem de outra maneira o ambiente decomputação 8920 com a camada 8 922 da virtualização em cimada deteção de uma conexão sobre a rede 150. Em ainda umaoutra modalidade, o dispositivo de computação 8910 e/ou omecanismo de carregamento 8940 automaticamente carregam,executam ou estabelecem de outra maneira o ambiente decomputação 8920 e a camada 8922 da virtualização em cima dadeteção da existência ou da identificação do ambiente decomputação portátil 8920 no dispositivo 9005 da computaçãomóvel. Em algumas modalidades, um usuário pode selecionar aimagem 8925 da máquina virtual do dispositivo 9005 dacomputação móvel para a execução como uma máquina virtual8 92 5 através de alguns tipo e formulário da interface deutilizador. Em uma destas modalidades, o software 8921 davirtualização, a camada 8922 do virilization, o hypervisor8923, ou o mecanismo 8940 do carregamento podem indicar umainterface de utilizador para que um usuário identifique umaimagem virtual 8925, e/ou execute uma máquina virtual 8925baseada em uma imagem virtual 8925. Em outras destasmodalidades, um cliente, tal como um cliente do AIC, umcliente da RDP, ou um cliente Xll, executa no dispositivode computação 8910 e fornece a interface de utilizador aousuário.
Em algumas modalidades, um usuário pode alcançar, lê,e/ou redige os dados de usuário 8930 durante a utilizaçãodo ambiente de usuário estabelecido 8920'. Em uma destasmodalidades, o dispositivo de computação 8910 do anfitriãodo usuário pode alcançar, lê e/ou redige os dados deusuário 8930 ao dispositivo 9005 da computação móvel. Emoutras destas modalidades, o usuário do dispositivo decomputação 8910 pode editar ou modificar os dados deusuário 8 93 0 ou pode criar dados e a informação novos nosdados de usuário 8 930. Em outras modalidades, um usuário dodispositivo de computação 8910 pode alcançar, lê, e/ouredige dados de usuário ao elemento de armazenamento 1281do dispositivo de computação 8910. Em ainda outrasmodalidades, o dispositivo de computação 8 910 podemsincronizar os dados de usuário 8930 no dispositivo decomputação 8910 com os dados de usuário 8930 no dispositivo8905 da computação móvel. Em uma destas modalidades, odispositivo de computação 8910 usa a camada 8922 davirtualização ou o mecanismo 8940 do carregamento parasincronizar os dados de usuário 8930. Em contudo outrasmodalidades, o dispositivo 9005 da computação móvel podemter um programa ou um pedido para sincronizar dados, taiscomo limas e dobradores, entre o dispositivo 9005 dacomputação móvel e o dispositivo de computação 8910. Em umamodalidade, o dispositivo 9005 da computação móvel podedesconectar do dispositivo de computação 8910. Em algumasmodalidades, o dispositivo 9005 da computação móvel podedesconectar em qualquer momento a tempo durante o uso doambiente de computação estabelecido 8920'. Em outrasmodalidades, o dispositivo 9005 da computação móvel podedesconectar após o ambiente de computação 8920' é terminadono dispositivo de computação 8910. Em ainda outrasmodalidades, o ambiente de usuário 8920' é terminadoautomaticamente em cima da desconexão do dispositivo 9005da computação móvel do dispositivo de computação 8910. Emuma modalidade, o ambiente de computação 8920' podepermanecer estabelecida no dispositivo computar 8910 depoisque as disconexões do dispositivo 9005 da computação móveldo dispositivo de computação 8910. Em algumas modalidades,uma vez o ambiente de computação 8920' é estabelecido nodispositivo de computação 8910, o dispositivo 9005 dacomputação móvel pode ser disconnected. Em algumasmodalidades, o dispositivo 9005 da computação móvel podealcançar, lê, e/ou redige os dados de usuário 8 93 0 aqualquer parcela do ambiente de computação portátil 8920.Por exemplo, em uma modalidade, embora o ambiente decomputação portátil 8920 não seja estabelecido nem não sejavirtualizado no dispositivo de computação 8 910, odispositivo 9005 da computação móvel pode ainda alcançar,lê, e/ou escreve a e dos dados de usuário 8930. Em umamodalidade, o usuário pode usar uma primeira aplicação noambiente de computação estabelecido 8920' para alcançar umalima dos dados de usuário 8930. Em uma outra modalidade, ousuário pode usar uma segunda aplicação no dispositivo 9005da computação móvel para alcançar a mesma lima dos dados deusuário 8930. Em algumas modalidades, o software 8921 davirtualização ou a imagem 8925 da máquina virtual permite oacesso aos dados de usuário 8930, mesmo que o software 8921da virtualização ou a imagem virtual 8925 não estejamexecutando nem não se estejam operando. Em algumasmodalidades, o dispositivo de computação 8910, o mecanismode carregamento 8940, ou a camada virtualizada 8920fornecem uma interface de utilizador para que o usuárioselecione um ambiente de computação portátil doarmazenamento estabelecer o ambiente de computação 8920.Por exemplo, o dispositivo 9005 da computação móvel ou odispositivo de computação 8910 podem ter um mecanismo decomputação portátil da seleção do ambiente, como discutidono maior detalhe abaixo. Em outras modalidades, nodispositivo de computação 8910, no mecanismo decarregamento 8940, ou nos usos virtualizados um da camada8922 da pluralidade de ambientes de computação portáteisbaseados em uma característica do dispositivo de computação8910, tais como um tipo do sistema de exploração, oubaseados nos dados de usuário que identificam o ambiente decomputação portátil para usar-se para o dispositivo decomputação 8910. Referência agora o FIGO. 92A, em umamodalidade, o dispositivo de computação 8 910 compreendemais um seletor de computação 9250 do ambiente. Na brevevista geral, FIGO. 92A descreve um dispositivo 9005 dacomputação móvel conectado a um dispositivo de computação8910 através de uma rede 150. O dispositivo 9005 dacomputação móvel compreende mais um elemento dearmazenamento 128, um dispositivo de I/O ou uma relação130, e um mecanismo 8940 do carregamento. O dispositivo9005 da computação móvel armazena uns ou vários ambientesde computação portáteis 8920a-8920n no elemento dearmazenamento 128. Em algumas modalidades, o elemento dearmazenamento 128 compreende um dispositivo dearmazenamento, tal como o dispositivo de armazenamento 8905descrito acima em relação aos figos. 90A e 90B. Em algumasmodalidades, o dispositivo 9005 da computação móvel não temum dispositivo de I/O 13 0 da entrada do usuário e/ou umdispositivo de 1/0 130 da salda do usuário. Em outrasmodalidades, o dispositivo 9005 da computação móvel obtémou deriva o poder da conexão ao dispositivo de computação8 910, como por exemplo, de uma conexão do USB. Em aindaoutras modalidades, o dispositivo 9005 da computação móvelsão um cartão do seguinte tipo: CompactFlash, vara damemória, MultiMediaCard, Digitas seguras, ou SmartMedia. Emuma modalidade, o elemento de armazenamento 128 armazenauma pluralidade de ambientes de computação e umapluralidade de imagens da máquina virtual. Em uma outramodalidade, o elemento de armazenamento 128 armazena umasou várias de uma pluralidade de imagens da máquina virtualque fornecem uma de um sistema de exploração diferente oude uma aplicação diferente do que pelo menos as imagens deuma máquina virtual acessíveis ao dispositivo decomputação. Em ainda outras destas modalidades, o elementode armazenamento 128 armazenam uma dos dados associados compelo menos o um ambiente de computação e pelo menos da umaimagem da máquina virtual em um formato cifrado. Em algumasmodalidades, o dispositivo 9005 da computação móvelarmazena os dados associados com pelo menos o um ambientede computação portátil 8920. Em uma destas modalidades, odispositivo 9005 da computação móvel armazena os dadosassociados com uma pluralidade dos ambientes de computaçãoportáteis 8920a-8920n. Em outras destas modalidades, cadaum dos ambientes de computação portáteis 8920a-8920ncompreende o mesmo software virtual do ization 8921 a-8921N. Em ainda outras destas modalidades, os ambientes decomputação portáteis 8920a-8920n compreendem o softwarediferente 8921a-8921n da virtualização. Em outrasmodalidades, os ambientes de computação portáteis 8920a-892On podem compreender pelo menos um software 8 921a davirtualização que é o mesmo que um outro software 8921 B.da virtualização. Em outras modalidades, os ambientes decomputação portáteis 8920a-8920n podem compreender pelomenos um software 8921a da virtualização que é diferente deum outro software 8921 B. da virtualização. Em contudo umaoutra modalidade, lá pode ser uma cópia do software 8921 davirtualização a ser usado para cada um das imagens virtuais8925a-8925n no armazenamento 128. Em uma modalidade, umasou várias das imagens 8925a- 8925n da máquina virtualfornecem o acesso ao mesmo sistema de exploração ou sãousadas no mesmo sistema de exploração. Em uma outramodalidade, umas ou várias das imagens 8925a-8925n damáquina virtual compreendem um sistema de exploraçãodiferente ou executam-no em um sistema de exploraçãodiferente. Em algumas modalidades, a parte das imagens892 5a-8 925n da máquina virtual os mesmos dados de usuário8930. Em outras modalidades, as imagens 8925a-8925n damáquina virtual podem cada um ter jogos distintos dos dadosde usuário 8 93 0a-8930n. Em uma modalidade, uma das imagens8925a-8925n da máquina virtual pode fornecer o acesso a umprimeiro ambiente de computação, por exemplo, um ambientedo área de trabalho do trabalho. Em uma outra modalidade,uma das imagens 8925a-8925n da máquina virtual podefornecer o acesso a um segundo ambiente de computação, porexemplo, um ambiente home do área de trabalho. Em algumasmodalidades, uma imagem 8925a-8925n da máquina virtual podefornecer o acesso a um ambiente de computação quecompreende um jogo de umas ou várias aplicações portáteisdo usuário. O dispositivo 9005 da computação móvel podearmazenar o jogo desejado de uns ou vários ambientes deusuário 8920a-8920n. O dispositivo 9005 da computação móvelinclui um conector para conectar o dispositivo 9005 dacomputação móvel a um dispositivo de computação, tal como odispositivo de computação 8910. Em uma modalidade, oconector é ajustável a um dispositivo de computação 8910através de um do seguinte: uma conexão sem fio, uma conexãodo USB, uma conexão do firewire, uma conexão de Bluetooth,uma conexão de Wi-Fi, uma conexão de rede, e uma conexão doembarcadouro. O dispositivo 9005 da computação móvel incluium mecanismo 8940 do carregamento para automaticamentecarregar pelo menos o um ambiente de computação do elementode armazenamento em um dispositivo de computação em cima daconexão do dispositivo da computação móvel ao dispositivode computação através do conector. Em uma modalidade, omecanismo 8 94 0 do carregamento instala automaticamente pelomenos o um ambiente de computação no dispositivo decomputação 8910. Em uma outra modalidade, o mecanismo 8940do carregamento executa automaticamente pelo menos o umambiente de computação no dispositivo de computação 8910. Em ainda uma outra modalidade, o mecanismo 8 94 0 docarregamento alcança pelo menos uma imagem da máquinavirtual armazenada no elemento de armazenamento 128 paraexecutar uma máquina virtual, a máquina virtual que forneceo acesso a um ambiente de computação. Em algumasmodalidades, o dispositivo 9005 da computação móvel incluiuma interface de utilizador fornecida para que um usuárioselecione uma imagem da máquina virtual executar nodispositivo de computação 8910 de uma pluralidade deimagens da máquina virtual. Em outras modalidades, odispositivo de computação 8910 fornece a interface deutilizador. Em uma modalidade, um mecanismo da seleção, talcomo um seletor de computação 9250 do ambiente fornece umainterface de utilizador para que um usuário selecione um deos ambientes de computação portáteis 8920a-8920n a executarou estabelecer no dispositivo de computação 8910.
0 seletor de computação 92 5 0 do ambiente podecompreender o software, a ferragem, ou a toda a combinaçãodo software e da ferragem. Em algumas modalidades, oseletor de computação 9250 do ambiente tem uma interface deutilizador gráfica fornecer uma lista dos uns ou vários oambiente de computação portátil 8920a-8920n armazenado nodispositivo 9005 da computação móvel. Em outrasmodalidades, o seletor de computação 9250 do ambiente podecompreender uma linha relação do comando. Em umamodalidade, o seletor de computação 9250 do ambientecompreende o software, armazena sobre ou fornecido pelodispositivo 9005 da computação móvel ou pelo dispositivo decomputação 8910. Em uma modalidade, o software virtualizado8921, a camada virtualizada 8922 ou o ambiente decomputação portátil 8920 compreendem o seletor decomputação 9250 do ambiente. Em uma outra modalidade, oseletor de computação 9250 do ambiente é executado nodispositivo 9005 da computação móvel. Em algumasmodalidades, o seletor de computação 9250 do ambientecompreende um mecanismo da ferragem e do software nodispositivo 9005 da computação móvel para que um usuárioselecione um dos ambientes de computação portáteis 8920a-892On. Por exemplo, o dispositivo 9005 da computação móvelpode fornecer através de uma tela ou de uma unidadeexibidora visual uma interface de utilizador baseada textocom uma roda de polegar para selecionar um ambiente decomputação portátil 8920a- 8920n. Referência agora o FIGO.92B, um diagrama de fluxo descreve uma outra modalidade dasetapas recolhidas um método para estabelecer um ambiente decomputação em um dispositivo de computação através de umdispositivo da computação móvel. Conectando o móbil odispositivo de computação 9005 que carreg um ambiente decomputação portátil 8920a-8920n a um dispositivo decomputação 8 910, um usuário estabelece um ambiente decomputação virtualizado 8920' no dispositivo de computação8910. Na breve vista geral, em etapa 9255, o dispositivo9005 da computação móvel é conectado ao dispositivo decomputação 8910, e em etapa 9260, o dispositivo decomputação 8 910 detecta a conexão. Em etapa 9265, e emalgumas modalidades, o usuário seleciona um ambiente decomputação portátil 8920a-892On do armazenamento para serusado no dispositivo de computação 8910. Em etapa 9270, umambiente de computação portátil 8920a-8920n no elemento dearmazenamento 128 é descifrado. Em etapa 9275, o softwarevirtual 8921 do ization é carregado automaticamente nodispositivo de computação 8910. Em etapa 9280, odispositivo de computação 8910 executa uma máquina virtual8925' no ambiente virtualizado 8922 basearam no ambiente decomputação portátil 8920a-8920n, como pela imagem virtualde acesso 8925. Em etapa 9285, o dispositivo de computação8910 controla o acesso ao dispositivo de computação 8910através do ambiente de computação virtualizado 89201. Em umdetalhe mais adicional, em etapa 9255, o dispositivo 9005da computação móvel é conectado ao dispositivo decomputação 8910 por todos os meios e/ou mecanismosapropriados. Em etapa 9260, o dispositivo de computação8910 detecta a conexão. Em algumas modalidades, o sistemade exploração do dispositivo de computação 8910 detecta aconexão do dispositivo 9005 da computação móvel. Em outrasmodalidades, um gerente de dispositivo detecta a conexão dodispositivo 9005 da computação móvel. Em ainda outrasmodalidades, um gerente apto para a utilização detectam aconexão do dispositivo 9005 da computação móvel. Em outrasmodalidades, um excitador de dispositivo para o dispositivode computação 8910 detecta a conexão. Em contudo uma outramodalidade, o mecanismo 8940' do carregamento; detecta aconexão do dispositivo 9005 da computação móvel. Em algumasmodalidades, em cima da deteção da conexão, o dispositivode computação 8910 pode automaticamente instalar, carregar,e executar um excitador de dispositivo, um software, umaaplicação, um procedimento, um serviço, uma linha ou umatarefa executar algumas das operações descritas nisto, comodescritas acima em relação aos figos. 89A e 89B, figos. 90Ae 90B, e figos. 91 A e 91 B. Em outras modalidades, em cimada deteção da conexão, o dispositivo de computação 8910pode executar todo o tipo e formulário de autenticação eautorização do usuário do dispositivo 9005 da computaçãomóvel. Em etapa 9265, o usuário seleciona um ambiente decomputação portátil 8920a- 8920n do elemento dearmazenamento 128 para estabelecer como o ambiente decomputação 8920' no dispositivo de computação 8910. Porexemplo, o usuário pode identificar ou selecionar, atravésdo seletor de computação 9250 do ambiente, o ambiente decomputação portátil 8920a-8920n a funcionar no dispositivode computação 8910. Em uma modalidade, o dispositivo decomputação 8910 indica uma interface de utilizador quefornece uma lista dos ambientes de computação portáteis8920a-8920n do dispositivo 9005 da computação móvel paraque o usuário selecione para estabelecer no dispositivo decomputação 8910. Em algumas modalidades, o dispositivo decomputação 8 910 executa um programa de aplicaçãoidentificado através do elemento de armazenamento 128 dodispositivo 9005 da computação móvel, como através de umalima do autorun. Em uma outra modalidade, o dispositivo9005 da computação móvel tem uma unidade exibidora visualindicar uma interface de utilizador para que o usuárioselecione um dos ambientes de computação portáteis 8920a-892On. Em algumas modalidades, um dos ambientes decomputação portáteis 8920a-8920n é identificado como umambiente de computação 8920 do defeito para estabelecer nodispositivo de computação 8910. Em uma outra modalidade, osambientes de computação portáteis 8920a-8920n sãoidentificados em uma ordem ou uma preferência ou umaprioridade. Em uma modalidade, o dispositivo 9005 dacomputação móvel compreende um ambiente de computaçãoportátil 8920. Nesta modalidade, o ambiente de computaçãoportátil 8920 não pode precisar de ser selecionado pelousuário e é usado automaticamente pelo dispositivo decomputação 8 910. Em uma outra modalidade, embora haja umambiente de computação portátil 8920 no dispositivo 9005 dacomputação móvel, o usuário pode selecionar o um ambientede computação portátil 8920. Em etapa 9270, o dispositivode computação 8 910 pode executar a decifração em qualquerparcela do elemento de armazenamento 12 8 que puder sercifrada. Em uma modalidade, o elemento de armazenamento 128compreende um sistema de arquivo cifrado. Em uma outramodalidade, o software 8921 da virtualização, a imagemvirtual 8925 e/ou as parcelas dos dados de usuário 8930, oualgum disso podem ser cifrados. Em uma modalidade, odispositivo de computação 8910, descifra a parcela doarmazenamento 12 8 usando uma chave através do mecanismo8940' do carregamento; , o jogo da camada 8920, ou outro davirtualização de instruções executáveis. Em algumasmodalidades, a chave pode uma chave pública. Em outrasmodalidades, a chave pode ser uma chave confidencial. Emuma modalidade, a chave da decifração pode identidade-serbaseada, como baseado na identidade de um usuárioautenticada através do dispositivo de computação 8910. Emuma outra modalidade, o usuário credenciais da autenticaçãode s, tais como o usuário - a identificação e/ou a senha,podem ser usadas a gere ou obtenha uma chave para adecifração. Por exemplo, o usuário as credenciais daautenticação de s podem ser usadas para obter uma chavearmazenada na base de dados. Em uma outra modalidade, odispositivo de computação 8910 gera uma chave confidencialbaseada em executar um algoritmo no usuário credenciais daautenticação de s e uma chave pública, tal como uma chavepública fornecida por um terceiro confiado. Em contudo umaoutra modalidade, o dispositivo 9005 da computação móvelpode armazenar uma chave que seja usada pelo dispositivo decomputação 8 910 para autenticar o usuário e/ou para geraruma chave da decifração. Em algumas modalidades, odispositivo de computação 8910 usa uma autoridade dobilhete para obter um bilhete para descifrar as parcelascifradas do armazenamento 128. Qualquer tipo e formuláriode tecnologias da autenticação podem ser usados em executaras operações descritas nisto, como a autenticação baseadasenha ou a autenticação biométrica. Em uma modalidade, umsímbolo é usado para fornecer a autenticação two-fator, talcomo um símbolo manufaturado por RSA Segurança Inc. deBedford, miliampère. Em etapa 9275, o dispositivo decomputação 8910 fornece ou estabelece a camada 8922 davirtualização no dispositivo de computação 8910 doanfitrião como descritos acima em relação aos figos. 89A-89B, figos. 90A-90B, e figos. 91A-91 B. Em etapa 9280, odispositivo de computação 8910 automaticamente carrega,executa ou estabelece de outra maneira uma máquina virtual8 92 5a-8 925n para fornecer o acesso a um ambiente decomputação portátil 8920a-8920n na camada virtualizada8922. Em uma modalidade, o dispositivo de computação 8910e/ou o mecanismo de carregamento 8 94 0 alcançam a imagem8925a-8925n da máquina virtual do elemento de armazenamento128 e das cargas ou executam a imagem 8925a-8925n damáquina virtual como um virtual máquina 8925' no ambientevirtualizado estabelecido 8922. Em uma outra modalidade, odispositivo de computação 8910 carrega, executa ouestabelece uma máquina virtual como descrita acima emrelação aos figos. 89A-89B, figos. 90A-90B, e figos. 91A-91B. Em etapa 9285, em algumas modalidades, o ambiente decomputação 8920' ou a máquina virtual 8925 é estabelecidaem uma maneira fixada. Em uma modalidade, o ambiente decomputação estabelecido 8920' protege o acesso aos dados deusuário 8930 ou às parcelas do ambiente de computação 8920do ambiente do externai de computação do dispositivo 8 910ao ambiente de computação 8920'. Em uma modalidade, osoftware 8921 do virilization e/ou a camada virtual 8922 doization asseguram-se de que índices da máquina virtual8925' permaneça seguro ao funcionar no dispositivo decomputação 8 910. Em algumas modalidades, o software virtual8921 do ization e/ou a camada virtual 8922 do izationasseguram-se de que nenhuma entrada ou nenhuma saídaestejam feitas disponível ao ambiente do dispositivo decomputação 8910 em uma forma persistente. Por exemplo, emuma modalidade, o software 8921 do virilization e/ou acamada 8 922 do virilization podem incapacitar o acesso daprancheta entre o ambiente do anfitrião e a máquina virtual8925' . Em uma outra modalidade, o software 8921 dovirilization e/ou as inutilizações da camada 8922 dovirilization alcançam a um sistema de arquivo, ou à parceladisso, do dispositivo de computação 8910. Em outrasmodalidades, o software 8921 do virilization e/ou a camada8922 do virilization impedem a paginação pela máquinavirtual 8925' à lima de página do dispositivo de computação8910. Em uma modalidade, a máquina virtual 8925' usa oelemento de armazenamento 128 no dispositivo 9005 dacomputação móvel para a lima e as operações dos dados.
Em algumas modalidades, a camada virtual 8922 doization actua como o guarda-fogo entre a máquina virtual8925' e o ambiente do anfitrião. Em contudo uma outramodalidade, o software 8921 do virilization e/ou a camada8922 da virtualização podem fornecer um mecanismo daconfiguração, tal como uma interface de utilizador, paraselecionar que ações podem ser executadas e/ou dados sercompartilhadas entre o dispositivo de computação 8910 e amáquina virtual 8925'. Embora este método seja discutidogeralmente como o estabelecimento de um ambiente decomputação 8920' de uma de uma pluralidade dos ambientes decomputação portáteis 8920a-8920n, uma pluralidade dosambientes de computação 8920' , 8920" pode ser estabelecidano dispositivo computar 8910. Por exemplo, um primeiroambiente de computação 8920' pode ser estabelecida nodispositivo computar 8910 usando um primeiro ambiente decomputação portátil 8920a do dispositivo 9005 da computaçãomóvel, e em um segundo ambiente de computação 8 920" podeser estabelecida no dispositivo computar 8910 usando umsegundo ambiente de computação portátil 8920b dodispositivo 9005 da computação móvel. Referência agorafigos. 93A-93D, diagramas de bloco descrevem modalidadesdos sistemas e dos métodos para um dispositivo dacomputação móvel a uns ou vários recursos de ferragem. Orecurso de ferragem pode fornecer o acesso aos recursos,tais como um processador ou uma memória o maior poder, otamanho, a capacidade ou o desempenho em comparação aosrecursos correspondentes do dispositivo da computaçãomóvel. FIGO. 93A descreve uma modalidade de um dispositivo9005 da computação móvel que conectam a uma estação deembarcadouro ou do dispositivo que tem um processador, amemória e os outros recursos de computação a ser utilizadopelo dispositivo da computação móvel. FIGO. 93B descrevemodalidade de um dispositivo da computação móvel queconecta a um segundo recurso de ferragem, através de ummecanismo de embarcadouro, para usar um processador, umamemória e/ou uns recursos do segundo recurso de ferragem.FIGO. 93C descreve uma modalidade de uma estação deembarcadouro que fornece a conectividade a um segundorecurso de ferragem, tal como um dispositivo de computação,para usar um processador, uma memória e/ou uns recursos dosegundo recurso de ferragem. FIGO. 93D descreve umamodalidade das etapas recolhidas um método de fornecer a umdispositivo da computação móvel uns ou vários recursos deferragem, como descritas nos ambientes ilustrados nosfigos. 93A-93C. Em algumas modalidades, um ambiente decomputação portátil pode ser estabelecido no recurso deferragem de acordo com algum dos sistemas e do métododescritos conjuntamente com figos. 89A-89B, 90A-90B, 91A-9IC, 92Α-92Β. Em outras modalidades, o ambiente decomputação do dispositivo da computação móvel é alcançadousando o processador, a memória, e/ou os recursos dorecurso de ferragem. Referência agora o FIGO. 93A, na brevevista geral, o sistema descrito inclui um dispositivo 9005da computação móvel conectado a um recurso de ferragem9302. O dispositivo 9005 da computação móvel tem umaunidade do processador central 102. O recurso de ferragem9302 tem uma unidade do processador central 102'. Em umamodalidade, o recurso de ferragem 9302 inclui um acesso defornecimento da estação de embarcadouro 9310 ao recurso deferragem 9302. Em uma outra modalidade, a estação deembarcadouro 9310 inclui um processador 102' e memória122'. Em ainda uma outra modalidade, o dispositivo dacomputação móvel fornece a funcionalidade de um dispositivoda computação móvel 9005 como descritos acima em relaçãoaos figos. 90A, 90B, 91 A, 91 Β, 92A, e 92B. O dispositivo9005 da computação móvel compreende um mecanismo 93 05 daconexão para conectar o dispositivo 9005 da computaçãomóvel ao recurso de ferragem 9302. 0 dispositivo 9005 dacomputação móvel usa a unidade do processador central 102para efetuar uns quantum iniciais do trabalho e usa aunidade do processador central 1021 do recurso de ferragem93 02 para efetuar quantum subseqüentes do trabalho quandoconectado ao recurso de ferragem 9302. Em uma modalidade, odispositivo 9005 da computação móvel usa o mecanismo 9305da conexão para comutar a usar as capacidades deprocessamento ou de computação do recurso de ferragem 93 02em cima ou após da conexão ao recurso de ferragem 9302. Porexemplo, o dispositivo 9005 da computação móvel podeexecutar um ambiente de computação 8920 no recurso deferragem 93 02 após a conexão à estação de embarcadouro9310. Em uma modalidade, o dispositivo 9005 da computaçãomóvel conecta ao recurso de ferragem 9302 através daconexão através da rede 150. Em uma outra modalidade, odispositivo 8905 da computação móvel é entrado ao recursode ferragem 9302 através de um mecanismo 130a-130n dodispositivo de I/O projetado e construído conectar a, e/ouconecta ou comunica-se com o tipo e dá-se forma dodispositivo 9005 da computação móvel. Em uma modalidade, odispositivo 9005 da computação móvel é entrado ao recursode ferragem 93 02 através de um conector do embarcadouro.Por exemplo, um dos dispositivos 9005 ou 9310 pode ter umconector do embarcadouro, e um do dispositivo 9005 ou 9310pode ter um mecanismo da relação ou da conexão decorrespondência projetado receber o conector. 0 mecanismo9305 da conexão pode compreender o software, a ferragem, oua toda a combinação do software e da ferragem permitindo odispositivo 9005 da computação móvel de alcançar o recursode ferragem 9302. Em algumas modalidades, o mecanismo 9305da conexão compreende todo o tipo e formulário do circuitointegrado, tal como uma disposição de porta programável docampo (FPGA), o dispositivo de lógica programável (PLD), ouo circuito integrado característico da aplicação (ASIC)capaz de executar algumas das operações descritas nisto. Emuma modalidade, o mecanismo 9305 da conexão compreende umdo seguinte: uma conexão sem fio, uma conexão do USB, umaconexão do firewire, uma conexão de Bluetooth, uma conexãode Wi-Fi, uma conexão de rede, e uma conexão doembarcadouro. Em algumas modalidades, o mecanismo 93 05 daconexão é permite a placa do sistema ou de mãe dodispositivo 9005 da computação móvel de usar um processador102' e/ou memória 122' do recurso de ferragem 93 02. Emoutras modalidades, o mecanismo 9305 da conexão comunica-secom toda a barra-ônibus do sistema ou de dados dodispositivo 9005 da computação móvel para transmitir ereceber os sinais que dirigem o dispositivo 9005 dacomputação móvel para usar um recurso do recurso deferragem 9302, tais como o processador 102' e memória 122'da estação de embarcadouro 9310. Em algumas modalidades, omecanismo 93 05 da conexão pode comunicar-se com uma barra-ônibus do sistema ou de dados do recurso de ferragem 93 02para permitir o uso dos recursos do recurso de ferragem9.302 pelo dispositivo 9005 da computação móvel. Em umamodalidade, o mecanismo 9305 da conexão pode ter arepartição, o reinicio ou a restauração do dispositivo 9005da computaçao móvel quando conectado ou entrado ao recursode ferragem 9302. Em uma outra modalidade, o mecanismo 9305da conexão pode permitir que o interruptor tempo real useum recurso de computação do recurso de ferragem 93 02 semuma repartição ou reinicie-o. Em algumas modalidades, omecanismo 93 05 da conexão transfere dados da memória 122 nodispositivo 9005 da computação móvel à memória 122 1 dorecurso de ferragem 9302. Em outras modalidades, omecanismo 9305 da conexão transfere a execução de umprocesso de um processador 102 no dispositivo 9005 dacomputação móvel ao processador 102' do recurso de ferragem9302. Em ainda outras modalidades, o dispositivo 9005 dacomputação móvel transferem o controle e a gerênciacentrais do processo ao recurso de ferragem 9302. Emcontudo outras modalidades, o mecanismo 93 05 da conexãoprevêem o uso do processador 102 e/ou da memória 122 nodispositivo 9005 da computação móvel conjuntamente com oprocessador 102' e/ou memória 122' do recurso de ferragem9302. Por exemplo, quando conectado ao recurso de ferragem93 02, o dispositivo 9005 da computação móvel pode operar-secomo um dispositivo do multiprocessador. Em algumasmodalidades, o dispositivo 9005 da computação móvel e/ou omecanismo 93 05 da conexão mantêm o estado do processador102 e/ou da memória 122 no dispositivo 9005 da computaçãomóvel. Como tal, em algumas destas modalidades, em cima dadesconexão do recurso de ferragem 93 02, o ambiente 9005 dacomputação móvel continua de um estado antes da conexão aorecurso de ferragem 9302. Em outro destas modalidades, aconexão o mecanismo 93 05 transfere dados, informação, eexecução ou controle de um processador 102' e/ou memória122 ' ao processador 102 e/ou à memória 122 do dispositivo9005 da computação móvel.
Em uma modalidade, o mecanismo 93 05 da conexãocompreende todo o tipo e formulário da interface deutilizador para receber o usuário entrado a respeito daconexão ao recurso de ferragem 9302, do uso de recursos deferragem, e da transferência dos dados e do controle entrerecursos de ferragem. Por exemplo, o mecanismo 9305 daconexão pode indicar uma interface de utilizador gráfica emcima do acoplamento ao recurso de ferragem 9302 para que ousuário setup, configure, controle e/ou controle o uso dorecurso de ferragem 93 02. Em algumas modalidades, o recursode ferragem 9302 usa o elemento de armazenamento 128 dodispositivo 9005 da computação móvel para fornecer o acessoa um ambiente de computação. Em uma destas modalidades, orecurso de ferragem 9302 executa um sistema de exploraçãoarmazenado no elemento de armazenamento 128 do dispositivoconectado 9005 da computação móvel. Em outras destasmodalidades, o recurso de ferragem 9302 monta o elemento dearmazenamento 128 do dispositivo conectado 9005 dacomputação móvel para o acesso pelo recurso de ferragem9302. Em ainda outras destas modalidades, o usuário usam oambiente do sistema de exploração ou da computação dorecurso de ferragem 9302 mas executam aplicações e alcançamdados no elemento de armazenamento 128 do dispositivo 9005da computação móvel. Contudo outras destas modalidades, odispositivo 9005 da computação móvel podem armazenaraplicações portáteis para executar no recurso de ferragem9302. Em uma modalidade, o recurso de ferragem 9302 executauma máquina virtual para fornecer o acesso a um ambiente decomputação armazenado no dispositivo 9005 da computaçãomóvel. Em uma outra modalidade, o recurso de ferragem 93 02executa uma máquina virtual, a máquina virtual que forneceo acesso a um ambiente de computação virtualizado. Em aindauma outra modalidade, uma lima de uma posição dearmazenamento fornecida pelo dispositivo 9005 da computaçãomóvel está alcançada por um usuário através do recurso deferragem 9302 quando o dispositivo 9005 da computação móvelé conectado ao recurso de ferragem 9302, e a lima estáalcançada pelo usuário, através do dispositivo 9005 dacomputação móvel, quando o dispositivo 9005 da computaçãomóvel não é conectado ao recurso de ferragem 9302. Aindareferindo o FIGO. 93A e em uma modalidade, o recurso deferragem 9302 compreende uma estação de embarcadouro 9310,a estação de embarcadouro 9310 que compreende um sistemainformático 100. Em algumas modalidades, a estação deembarcadouro 9110 pode ser qualquer tipo e dar forma dosistema informático 100, como descrito acima em relação aosfigos. IA-I B. Em uma destas modalidades, e como descritaem relação aos figos. IA-I B, a estação de embarcadouro9110 pode compreender os componentes que incluem, mas nãolimitado a, um processador 102' , memória 122,armazenamento 128, uma relação de rede 118' , e/ou uns ouvários dispositivos de 1/0 130a-130n'. Em outras destasmodalidades, a estação de embarcadouro 9110 é conectada aum dispositivo de exposição 124, a um teclado 126, e/ou aum dispositivo apontando 127. A estação de embarcadouro9310 pode igualmente ser conectada a ou fornecido o acessoa outros recursos de ferragem e peripherals de computação.
Em algumas modalidades, a estação de embarcadouro 9310fornece o acesso aos recursos de um outro sistemainformático 100 através de uma rede 150. Em uma modalidade,o recurso de ferragem 9302 tem um processador 102' tendouma velocidade de processador mais elevada do que oprocessador 102 do dispositivo 9005 da computação móvel. Emuma outra modalidade, o recurso de ferragem 93 02 tem umprocessador 102' compreendendo uma arquitetura doprocessador diferente do que uma arquitetura do processadordo processador 102 do dispositivo 9005 da computação móvel.
Em ainda uma outra modalidade, o dispositivo 9005 dacomputação móvel usa o processador 102 para efetuar unsquantum iniciais do trabalho e, em cima da conexão aorecurso de ferragem 9302 através do mecanismo 9305 daconexão, usa o processador 102' para efetuar uns quantumsubseqüentes do trabalho. Em contudo uma outra modalidade,dispositivo 9005 da computação móvel determinam que umamemória 122' do recurso de ferragem 9302 tem um tamanho dememória maior do que um tamanho de memória de uma memória122 do dispositivo 9005 da computação móvel e usa a memória122' do recurso de ferragem 9302 para efetuar quantumsubseqüentes do trabalho. Em algumas modalidades, odispositivo 9005 da computação móvel usa um primeirosistema de exploração que executam na primeira unidade doprocessador central quando não conectado ao recurso deferragem e um segundo sistema de exploração que executa nasegunda unidade do processador central quando conectado aorecurso de ferragem. Em uma destas modalidades, o segundosistema de exploração é diferente do que o primeiro sistemade exploração. Referência agora o FIGO. 93B, uma outramodalidade do recurso de ferragem 9302 e o dispositivo 9005da computação móvel são descritos. Na breve vista geral, odispositivo 9005 da computação móvel conecta a uma estaçãode embarcadouro 9310 através de uma rede 150, e por suavez, a estação de embarcadouro 9310 conecta a umdispositivo de computação 8910. Nesta modalidade, o recursode ferragem 93 02 inclui uma estação de embarcadouro 9310conectada ou em uma comunicação com um dispositivo decomputação 8910. Em vez de fornecer recursos, tais como umprocessador 102' e memória 122' como descrito no FIGO. 93A,a estação de embarcadouro 9310 fornece o acesso aosrecursos de um segundo dispositivo de computação 8 910através da conexão através da rede 150'. Em uma modalidade,após a conexão ã estação de embarcadouro 9310, odispositivo 9005 da computação móvel usa recursos dodispositivo de computação 8910 através das conexões atravésdas redes 150 e 150'. Referência agora o FIGO. 93C, umaoutra modalidade do recurso de ferragem 9302 e odispositivo 9005 da computação móvel são descritos. Nabreve vista geral, o dispositivo 9005 da computação móvelconecta ao dispositivo de computação 8910 através domecanismo de embarcadouro 9310. Nesta modalidade, o recursode ferragem 9302 inclui um dispositivo de computação 8910que tem um mecanismo de registo 9310, tais como umdispositivo de I/O ou um mecanismo 130, para entrar odispositivo 9005 da computação móvel. Após a conexãoatravés do mecanismo de embarcadouro 9310, o dispositivo9005 da computação móvel usa os recursos do dispositivo decomputação 8910, tais como um processador e/ou uma memória.
Em algumas modalidades, o recurso de ferragem 9302 forneceo acesso o dispositivo 9005 da computação móvel o acesso aum dispositivo de computação periférico. Em algumas dasmodalidades descritas nos figos. 93A-93C, o recurso deferragem 9302 pode fornecer os recursos e as capacidadesque oferecem o poder melhorado, o desempenho, ou o outrofuncionamento ou características de desempenho desejadaspelo usuário do dispositivo 8 905 da computação móvel ouapropriado para uns ou vários aplicações do dispositivo dacomputação móvel, como descritas mais detalhadamente acimaem relação aos figos. 89A-89B, 90A-90B, 91A-91 B, e 92A-92B. Referência agora o FIGO. 93D, um diagrama de fluxodescreve uma modalidade das etapas recolhido um método parafornecer a um dispositivo da computação móvel uns ou váriosrecursos de ferragem. Na breve vista geral, o dispositivoda computação móvel usa uma primeira unidade do processadorcentral do dispositivo 9005 da computação móvel paraefetuar uns quantum iniciais do trabalho (etapa 9355) . 0dispositivo 9005 da computação móvel conecta a um recursode ferragem 93 02 que inclui uma segunda unidade doprocessador central (etapa 9360). 0 dispositivo dacomputação móvel usa uma segunda unidade do processadorcentral do recurso de ferragem 93 02 para efetuar quantumsubseqüentes do trabalho (etapa 9365) . Um dispositivo dacomputação móvel usa uma primeira unidade do processadorcentral para efetuar uns quantum iniciais do trabalho(etapa 9355). Em uma modalidade, o dispositivo dacomputação móvel é um computador 100 como descrito acima emrelação ao FIGO. IA e IB. Em uma outra modalidade, odispositivo da computação móvel é um dispositivo 9005 dacomputação móvel como descrito acima em relação aos figos.90A-92B. 0 dispositivo 9005 da computação móvel conecta aum recurso de ferragem 93 02 que inclui uma unidade doprocessador central (etapa 9360). Em uma modalidade, odispositivo 9005 da computação móvel conecta ao recurso deferragem 93 02 por todos os meios e/ou mecanismosapropriados. Em algumas modalidades, o dispositivo 8905 dacomputação móvel conecta ou entra a uma estação deembarcadouro 9310 que fornece uns ou vários recursos. Emuma destas modalidades, o dispositivo 9005 da computaçãomóvel conecta a uma estação de embarcadouro 9310 que tem umprocessador 102' e/ou memória 122'. Em outras destasmodalidades, o dispositivo 9005 da computação móvel conectaa uma estação de embarcadouro 9310 que fornece uma conexãoa um segundo dispositivo de computação 8910, o segundodispositivo de computação 8910 que inclui um processador102'. Em ainda outras destas modalidades, o dispositivo9005 da computação móvel conectam ou entram a um mecanismode embarcadouro 9310 de um dispositivo de computação 8910do anfitrião. Em algumas modalidades, o dispositivo 8905 dacomputação móvel e a estação de embarcadouro 9110 podemconectar através de qualquer tipo e dar forma da conexão,prendido, rádio ou de outra maneira, incluindo, mas nãolimitado a, através de uma conexão sem fio, de uma conexãode Wi-Fi, de uma conexão do USB, de uma conexão dofirewire, de uma conexão de Bluetooth, de uma conexão derede, e de uma conexão do embarcadouro. O dispositivo 8 905da computação móvel e a estação de embarcadouro 9110 podemcomunicar-se através de qualquer tipo e dar forma doprotocolo, tal como um dispositivo, uma barra-ônibus, umacomunicação, uma aplicação, uns dados, ou um protocolo derede. O dispositivo 9005 da computação móvel usa umaunidade do processador central do recurso de ferragem 93 02(etapa 9370) . Em uma modalidade, o uso dos novatos dodispositivo 9005 da computação móvel de um processador 102'e/ou memória 122' do recurso de ferragem 9302 através de ummecanismo 93 05 da conexão. Em uma outra modalidade, odispositivo 9005 da computação móvel transfere o controle ea gerência da execução à unidade do processador central dorecurso de ferragem 9302. Em ainda uma outra modalidade, odispositivo 9005 da computação móvel transfere dados einformação ao processador e/ou memória do recurso deferragem 9302. Em algumas modalidades, o dispositivo 9005da computação móvel usa o processador e/ou a memória dorecurso de ferragem 9302 como um segundo processador e/ou amemória para o dispositivo 9005 da computação móvel.Em uma modalidade, o dispositivo 9005 da computaçãomóvel conecta a um recurso de ferragem 93 02 o inclusão doseguinte: uma primeira estação de embarcadouro que tem asegunda unidade do processador central; um segundodispositivo de computação que tem a segunda unidade doprocessador central; e uma segunda estação de embarcadouroque fornece o acesso a um terceiro dispositivo decomputação que tem a segunda unidade do processadorcentral. Em algumas modalidades, um programa de aplicaçãono dispositivo 9005 da computação móvel executa noprocessador 102' e memória 122' dos usos; do ambiente decomputação 9102 e de exposições em uma unidade exibidoravisual do dispositivo 9005 da computação móvel. Em outrasmodalidades, um programa de aplicação que executa noprocessador e que usa a memória do recurso de ferragem 93 02recebe o usuário entrado de um dispositivo de entrada dodispositivo 9005 da computação móvel. Em ainda outrasmodalidades, um programa de aplicação que executa noprocessador e que usa a memória das exposições do recursode ferragem 9302 em um dispositivo de exposição 124 dorecurso de ferragem 93 02 ao receber a entrada de ummecanismo da entrada do dispositivo 9005 da computaçãomóvel. Em uma modalidade, em um programa de aplicação queexecuta no processador e que usa a memória das exposiçõesdo recurso de ferragem 9302 em uma unidade exibidora visualdo ambiente 9005 da computação móvel ao receber a entradade um dispositivo de entrada do recurso de ferragem 93 02,tais como o teclado 126 e o dispositivo apontando 127. Emalgumas modalidades, o ambiente de computação dodispositivo 9005 da computação móvel executa no processadore na memória do dispositivo 9005 da computação móvel masigualmente usa um recurso da ferragem recurso 93 02, taiscomo uma conexão de rede, a impressora, o dispositivo deexposição, o dispositivo de entrada, ou o algum dispositivode I/O 120. Em uma modalidade, o dispositivo 9005 dacomputação móvel determina que a segunda unidade doprocessador central tem uma velocidade de processador maiordo que uma velocidade de processador da primeira unidade doprocessador central e usa a segunda unidade do processadorcentral do recurso de ferragem para efetuar quantumsubseqüentes do trabalho. Em uma outra modalidade, odispositivo 9005 da computação móvel determina que asegunda unidade do processador central tem uma arquiteturado processador diferente do que uma arquitetura doprocessador da primeira unidade do processador central eusa a segunda unidade do processador central do recurso deferragem para efetuar quantum subseqüentes do trabalho. Emainda uma outra modalidade, o dispositivo 9005 dacomputação móvel identifica uma memória do dispositivo 9005da computação móvel e identifica uma segunda memória dorecurso de ferragem 93 02. Em contudo uma outra modalidade,o dispositivo 9005 da computação móvel determina que asegunda memória do recurso de ferragem tem um tamanho dememória maior do que um tamanho de memória da primeiramemória do dispositivo da computação móvel e usa a segundamemória do recurso de ferragem para efetuar quantumsubseqüentes do trabalho. Em algumas modalidades, o recursode ferragem 9302 usa uns ou vários recursos do dispositivo9005 da computação móvel. Em uma destas modalidades, orecurso de ferragem 93 02 alcança um elemento dearmazenamento ou um dispositivo de armazenamento dodispositivo 9005 da computação móvel, tais como o elementode armazenamento 128. Em algumas modalidades, o recurso deferragem 9302 monta o elemento de armazenamento 128. Emoutras destas modalidades, dos carregadores ou derepartições do recurso de ferragem 9302 ou se nãoestabelece um ambiente baseado em um ambiente de computaçãoarmazenado no elemento de armazenamento montado 128. Emainda outras destas modalidades, o recurso de ferragem 93 02usam o processador 102 e/ou a memória 122 do dispositivo9005 da computação móvel além do que o processador e/ou amemória do recurso de ferragem 9302. Em algumasmodalidades, o recurso de ferragem 9302 usa um dispositivode exposição e/ou o dispositivo de entrada do dispositivo9005 da computação móvel. Em outras modalidades, o recursode ferragem 9302 executa um ambiente de computação 8920'baseado em um ambiente de computação portátil 8920 noelemento de armazenamento 128 do dispositivo 9005 dacomputação móvel. Em algumas modalidades, o ambiente decomputação portátil 8920 pode executar no recurso deferragem 9302 mas na exposição sobre e receber a entrada dodispositivo 9005 da computação móvel. Em uma modalidade, orecurso de ferragem 9302 fornece o dispositivo 9005 dacomputação móvel o acesso a um dispositivo de computaçãoperiférico do recurso de ferragem. Em uma outra modalidade,o dispositivo 9005 da computação móvel usa um primeirosistema de exploração que executam na primeira unidade doprocessador central no dispositivo 9005 da computação móvelquando não conectado ao recurso de ferragem 9302 e umsegundo sistema de exploração que executa na segundaunidade do processador central do recurso de ferragem 93 02quando conectado ao recurso de ferragem 9302. Em ainda umaoutra modalidade, o primeiro sistema de exploração édiferente do que o segundo sistema de exploração. Emcontudo uma outra modalidade, uma máquina virtual queexecuta no recurso de ferragem 9302 fornece o dispositivomóvel 9005 o acesso a um primeiro sistema de exploração. Emalgumas modalidades, a ferragem o recurso 9302 executa umamáquina virtual para fornecer o acesso a um ambiente decomputação armazenado no dispositivo 9005 da computaçãomóvel. Em outras modalidades, o dispositivo 9005 dacomputação móvel fornece o acesso a um ambiente decomputação no recurso de ferragem 93 02. Em ainda outrasmodalidades, acessos de usuário, através do recurso deferragem 9302, uma lima armazenada no dispositivo 9005 dacomputação móvel quando o dispositivo 9005 da computaçãomóvel é conectado ao recurso de ferragem 9302 e acesso,pelo usuário, através do dispositivo 9005 da computaçãomóvel, a lima armazenaram no dispositivo 9005 da computaçãomóvel quando o dispositivo 9005 da computação móvel não éconectado ao recurso de ferragem 9302. Em uma modalidade, odispositivo 9005 da computação móvel usa um processador dorecurso de ferragem 93 02 para fornecer o acesso a umambiente de computação armazenado no dispositivo 9005 dacomputação móvel. Em uma outra modalidade, o dispositivo9005 da computação móvel usa um processador do recurso deferragem 93 02 para fornecer o acesso a um sistema deexploração armazenado no dispositivo 9005 da computaçãomóvel. Em ainda uma outra modalidade, o dispositivo 9005 dacomputação móvel usa um processador do recurso de ferragem9302 para fornecer o acesso a um programa de aplicaçãoarmazenado no dispositivo 9005 da computação móvel. Emcontudo uma outra modalidade, o dispositivo 9005 dacomputação móvel usa um processador do recurso de ferragem9302 para executar uma máquina virtual no recurso deferragem, responsivo a uma imagem da máquina virtualarmazenada no dispositivo da computação móvel. Em algumasmodalidades, o dispositivo da computação móvel usa umprocessador do recurso de ferragem 93 02 para fornecer oacesso a um ambiente de computação armazenado no recurso deferragem. Referência agora o FIGO. 94A, um diagrama debloco descreve uma modalidade de um dispositivo dacomputação móvel que tem uma pluralidade de processadores.
Na breve vista geral, o dispositivo 9005 da computaçãomóvel compreende um primeiro processador 102 e um segundoprocessador 102'. Os processadores 102, 102' pode alcançaruma memória 122 e/ou o elemento de armazenamento 128 nodispositivo 9005 da computação móvel. O dispositivo 9005 dacomputação móvel inclui um mecanismo 94 05 do interruptorpara comutar entre a utilização do primeiro processador 102e do segundo processador 102'. Em alguns casos, odispositivo 9005 da computação móvel pode ter umprocessador de menor potência 102 para a funcionalidademínima ou operações à espera, e tem um processador elevado-psto 102 para operações normais ou para as aplicaçõesapropriadas ou que exigem uma capacidade mais poderosa doprocessador. Quando o móbil, o usuário puder quereralcançar características tais como o email, o calendário, ea informação de contato bem como um PDA ou um smartphone.
Ao alcançar tais aplicações, o dispositivo 9005 dacomputação móvel pode usar o processador de menor potência102 para alongar a bateria-vida e conservar o poder. Ousuário pode a qualquer hora querer alcançar uma aplicaçãoque tem umas exigências ou uma conformidade mais elevada doprocessador. Ao alcançar estas aplicações, o dispositivo9005 da computação móvel pode usar o processador elevado-psto 102'. No detalhe mais adicional, no processador 102 eno processador 1021 podem ser o mesmos tipo e velocidade doprocessador. Em outras modalidades, no processador 102 e noprocessador 102' podem ser um tipo e uma velocidadediferentes do processador. Em algumas modalidades, oprocessador 102 compreende uma velocidade e/ou umacapacidade de processamento maiores do que o processador102'. Em outras modalidades, processador 102' compreendeuma velocidade e/ou uma capacidade de processamento maioresdo que o processador 102. Em algum modalidades, oprocessador 102 e 102' são os únicos processadores donúcleo. Em outras modalidades, no processador 102 e em 102'são os processadores múltiplos do núcleo. Em umamodalidade, o processador 102 é um único processador donúcleo e o processador 102' é um processador múltiplo donúcleo, tal como o processador duplo ou do quadrilátero donúcleo. Em contudo uma outra modalidade, os processadores102 e 102' compreenda a mesma arquitetura do processadore/ou seja manufaturado pelo mesmo fabricante doprocessador. Em outras modalidades, nos processadores 102 eem 102 1 compreenda arquiteturas diferentes do processadore/ou seja manufaturado por fabricantes diferentes doprocessador.
Em algumas modalidades, um primeiro processador 102compreende as características operacionais projetadas econstruídas para o consumo de uma mais baixa potência, umavida da bateria mais longa, um desempenho e/ou umasaplicações de um dispositivo de computação móvel ouportátil. Em uma destas modalidades, um primeiroprocessador 102 pode ser referido como um processadorcentral baixo-psto. Em outras modalidades, um segundoprocessador 102' compreende as características operacionaisprojetadas e construídas para as exigências do poder, dodesempenho e/ou de aplicação de um ambiente de computaçãodo área de trabalho, do ambiente de computação do usuário,ou de outra maneira de um ambiente de computação ainda. Emuma destas modalidades, o segundo processador 102' pode serreferido como um processador central potente. Em outrasmodalidades, o processador 102 fornece um primeiro nível deprocessamento ou de capacidade do processador, e o segundoprocessador 102' fornece um segundo nível de processamentoou de capacidade do processador. Em uma destas modalidades,o segundo nível de capacidade é maior ou mais altamente doque o primeiro nível. Em outras destas modalidades, osegundo nível de capacidade é preferido sobre o primeironível. Em ainda outras modalidades, o dispositivo dacomputação móvel usa o primeiro processador para umas ouvárias aplicações apropriadas para o primeiro nível decapacidade de consumo e de processamento de potência, e odispositivo da computação móvel usa o segundo processadorpara umas ou várias aplicações apropriadas para o segundonível de capacidade de consumo e de processamento depotência. 0 mecanismo 9405 do interruptor permite odispositivo 9005 da computação móvel de comutar entre autilização de um primeiro processador 102 e de um segundoprocessador 102' , ou alguma pluralidade de processadores.
Em algumas modalidades, o mecanismo 94 05 do interruptorcompreende todo o tipo e formulário do circuito integrado,tal como uma disposição de porta programável do campo(FPGA), o dispositivo de lógica programável (PLD), ou ocircuito integrado característico da aplicação (ASIC) capazde executar algumas das operações descritas nisto. Emalgumas modalidades, o mecanismo 94 05 do interruptorpermite a placa do sistema ou de mãe do dispositivo 9005 dacomputação móvel de usar um primeiro processador 102. Emalgumas modalidades, o mecanismo 9405 do interruptorpermite a placa do sistema ou de mãe do dispositivo 8905 dacomputação móvel de usar um segundo processador 102'. Emuma modalidade, o mecanismo 9405 do interruptor comunica-secom toda a barra-ônibus do sistema ou de dados dodispositivo 9005 da computação móvel para transmitir e/oureceber os sinais que dirigem o dispositivo 9005 dacomputação móvel para usar um segundo processador 1021 emvez de um primeiro processador 102, e para usar do mesmomodo o primeiro processador 102 em vez do segundoprocessador 102'. Em algumas modalidades, o mecanismo 9405do interruptor pode conectar e/ou comunicar-se com umabarra-ônibus do sistema ou de dados do dispositivo 9005 dacomputação móvel para transmitir e/ou receber sinais usar oprimeiro processador 102 e em segundo processador 102' emvez apenas do primeiro processador 102 ou do segundoprocessador 102'. Em uma outra modalidade, o mecanismo 9405do interruptor transfere dados e execução do processador102 ao processador 102' do dispositivo 9005 da computaçãomóvel. Em algumas modalidades, o mecanismo 9405 dointerruptor transfere o controle e a gerência centrais doprocesso de um primeiro processador 102 a um segundoprocessador 102' , ou do segundo processador 102' aoprimeiro processador 102. Em uma modalidade, o mecanismo9405 do interruptor pode ter a repartição, o reinicio ou arestauração do dispositivo 9005 da computação móvel aocomutar entre a utilização de um processador 102, 102'. Emuma outra modalidade, o mecanismo 9405 do interruptor podeexecutar o interruptor tempo real do processador aoprocessador. Em algumas modalidades, o mecanismo 94 05 dointerruptor identifica uma circunstância, evento oudisparador em cima de que ao interruptor entre a utilizaçãode um processador e de um outro processador. Em outrosmodalidades, interruptores de comutação do mecanismo a umdo primeiro processador ou no segundo processador baseadoem uma seleção do usuário. Em uma destas modalidades, omecanismo 94 05 do interruptor compreende uma interface deutilizador, tal como uma interface de utilizador gráfica ouuma linha de comando interface de utilizador, para que umusuário identifique, especific ou configure ascircunstâncias, os eventos ou os disparadores para executaro interruptor entre processadores. Por exemplo, o mecanismo9405 do interruptor pode comutar, automaticamente,manualmente ou de outra maneira, entre um primeiroprocessador 102 e um segundo processador 102' baseado emalgumas características operacionais do dispositivo 9005 dacomputação móvel ou dos processadores 102, 102'. Em aindaoutras modalidades, o mecanismo 9105 do interruptor comutamentre o uso de um processador baseado em um nível de cargado primeiro processador ou do segundo processador. Emcontudo outras modalidades, o mecanismo 94 05 do interruptorcomutam entre o uso de um processador baseado em um nívelde atividade, tal como a tarefa, os processos, aplicações,do primeiro processador 102 ' do processador 102 ousegundos;. Em algumas modalidades, nos interruptores domecanismo 94 05 do interruptor entre a utilização de umprimeiro processador e de um segundo processador baseadosem um nível de consumo de poder e/ou de vida da bateria. Emainda uma outra modalidade, o mecanismo 94 05 do interruptorcomuta entre o uso de um processador baseado em um tipo deaplicação atuado ou executado no dispositivo 9005 dacomputação móvel. Em uma outra modalidade, o mecanismo 9405do interruptor compreende uma interface de utilizador paraque o usuário comute entre os processadores 102, 102'. Porexemplo, usando uma chave quente, o jogo dos cursos chaves,ou de selecionar um ícone em uma barra de tarefa, umusuário pode instruir, comandar ou dirigir o dispositivo9005 da computação móvel e/ou o mecanismo de comutação 9405ao interruptor entre processadores, usar um processador emvez de outro, ou usar a pluralidade dos processadores102,102' ao mesmo tempo. Referência agora o FIGO. 94B, umdiagrama de fluxo descreve uma modalidade de um método parao interruptor, por um dispositivo da computação móvel,entre o uso de processadores múltiplos. Na breve vistageral, o dispositivo da computação móvel usa um primeiroprocessador projetado e construído fornecer um primeironível de capacidade de consumo e de processamento depotência (etapa 9455). O mecanismo do interruptor determinacomutar o dispositivo da computação móvel a usar um segundoprocessador baseado em uma característica de funcionamentodo dispositivo da computação móvel, o segundo processadorprojetado e construído fornecer um segundo nível de consumode potência e W capacidade de processamento (etapa 9460) . 0dispositivo 9005 da computação móvel usa o segundoprocessador responsivo à determinação pelo mecanismo dointerruptor. Em um detalhe mais adicional, o dispositivo9005 da computação móvel usa o primeiro processador (etapa9455). Em uma modalidade, o mecanismo 94 05 do interruptoridentifica o primeiro processador 120 como o processador dodefeito a ser utilizado pelo dispositivo 9005 da computaçãomóvel. Em uma outra modalidade, o dispositivo 9005 dacomputação móvel usa o primeiro processador 12 0 em cima decomeçar, do reiniciar ou de carreg do sistema de exploraçãono dispositivo 9005 da computação móvel. Em algumasmodalidades, um usuário seleciona o primeiro processador120 como o processador do defeito. Em uma destasmodalidades, o uso pode ter identificado o primeiroprocessador 120 ao mecanismo 9405 do interruptor. 0mecanismo 9405 do interruptor determina comutar odispositivo 9005 da computação móvel a usar o segundoprocessador 120', baseado em uma característica defuncionamento do dispositivo da computação móvel, dosegundo processador projetados e construídos fornecer umsegundo nível de capacidade de consumo e de processamentode potência (etapa 9460). Em algumas modalidades, omecanismo 94 05 do interruptor determina ao interruptorbaseado em condições de funcionamento ou em característicasdo dispositivo 9005 da computação móvel, tais como osistema de exploração, o uso de recurso, o uso da memória,o consumo de potência, a carga, e os números de processos,de aplicações, de serviços ou de tarefas. Em umamodalidade, o segundo nível de capacidade de consumo e deprocessamento de potência do segundo processador compreendeum maior nivelado do que o primeiro nível de capacidade deconsumo e de processamento de potência do primeiroprocessador. W Em uma outra modalidade, o dispositivo dacomputação móvel usa o primeiro processador para umas ouvárias aplicações apropriadas para o primeiro nível decapacidade de consumo e de processamento de potência, e usao segundo processador para umas ou várias aplicaçõesapropriadas para o segundo nível de capacidade de consumo ede processamento de potência. Em ainda uma outramodalidade, os interruptores do mecanismo 94 05 dointerruptor a um do primeiro processador ou o segundoprocessador baseado automaticamente na iniciação daexecução de uma aplicação. Em algumas modalidades, nosinterruptores do mecanismo 94 05 do interruptor a um doprimeiro processador ou no segundo processador baseadoautomaticamente em umas ou várias das seguintescaracterísticas de funcionamento: um nível de carga de umdo primeiro processador ou o segundo processador, um nívelde atividade de um do primeiro processador ou do segundoprocessador, e um nível de consumo de potência de um doprimeiro processador ou do segundo processador. Em umadestas modalidades, o mecanismo 9405 do interruptordetermina a carga, atividade ou o consumo de potência doprimeiro processador 102 está próximo, igual ou maior doque a capacidade de processamento do primeiro processador102. Em um outro picofarad estas modalidades, o mecanismo9405 do interruptor determinam as exigências do processadorde uma aplicação executada pelo usuário ou pedido pelousuário para a execução está próximo, igual ou maior do quea capacidade de processamento do primeiro processador 102.
Em outras modalidades, o mecanismo 9405 do interruptordetermina o dispositivo 9005 da computação móvel executariaa desempenho mais apropriado ou nível operacional, ou emuma maneira desejou pelo usuário se o dispositivo 9005 dacomputação móvel usava o segundo nível de capacidade deprocessamento do segunda processador 120'. Em ainda outrasmodalidades, um usuário selecionam para comutar a usar osegundo processador 120'. Em uma destas modalidades, umusuário, através de uma interface de utilizador, dirige ouinstrui o mecanismo 94 05 do interruptor para comutar odispositivo 9005 da computação móvel para usar o segundoprocessador 120'.
O dispositivo 9005 da computação móvel usa o segundoprocessador 120 (etapa 9465). Em uma modalidade, odispositivo 9005 da computação móvel usa o segundoprocessador 120' em vez do primeiro processador 120. Em umaoutra modalidade, o dispositivo 9005 da computação móvelusa o segundo processador 120' além do que o primeiroprocessador 120. Em algumas modalidades, o dispositivo 9005da computação móvel e/ou transferências de comutaçãoinformação do mecanismo 9405, dados, controlam e/ougerência ao segundo processador 120' para continuar aoperação do sistema de exploração, das aplicações, doprocesso, dos serviços ou das tarefas executando noprimeiro processador 102. Em outras modalidades, as novasaplicações ou os processos iniciadas pelo usuário sãoexecutados no segundo processador 120'. Era algumasmodalidades, os interruptores do mecanismo 94 05 dointerruptor a ter o uso do dispositivo 9005 da computaçãomóvel o primeiro processador 12 0 para um primeiro nível decapacidade de processamento. Como com etapa 9460, omecanismo 94 05 do interruptor determina ao interruptorbaseado nas condições de funcionamento ou nascaracterísticas do dispositivo 9005, tais como o sistema deexploração, o uso de recurso, o uso da memória, o consumode potência, a carga, e os números de processos, deaplicações, de serviços ou de tarefas. Por exemplo, em umamodalidade, o mecanismo 9405 do interruptor determina oconsumo da carga, da atividade ou da potência do segundoprocessador 102' é maior do que a capacidade deprocessamento necessário para operar o móbil dispositivo decomputação 9005 em seu estado actual. Em uma outramodalidade, o mecanismo 94 05 do interruptor determina asexigências do processador de uma aplicação executada pelousuário ou pedido pelo usuário para a execução estápróximo, ou o igual à capacidade de processamento doprimeiro processador 102. Em algumas modalidades, omecanismo 94 05 do interruptor determina as exigências doprocessador de uma aplicação executada pelo usuário oupedido pelo usuário para a execução é menos do que osegundo nível de capacidade de processamento do processador120'. Em outras modalidades, o mecanismo 9405 dointerruptor determina o dispositivo 9005 da computaçãomóvel executaria a desempenho apropriado ou níveloperacional, ou em uma maneira desejou pelo usuário se odispositivo 9005 da computação móvel usava o primeiro nívelde capacidade de processamento do primeiro processador 120.Por exemplo, o dispositivo 9005 da computação móvelexecutaria em uma maneira apropriada para o usuário que usao primeiro processador 102 mas também conservaria na vidada bateria ou reduziria o consumo de potência. Em contudouma outra modalidade, um usuário seleciona para comutar ausar o primeiro processador 120. Por exemplo, em umamodalidade, o usuário através de uma interface deutilizador dirige ou instrui o mecanismo 9405 dointerruptor para comutar o dispositivo 9005 da computaçãomóvel para usar o primeiro processador 120. O método 9450pode ser executado outra vez para comutar o dispositivo9005 da computação móvel a usar o primeiro processador emetapa 9455. Referir ainda FIG. 8, em algumas modalidades,ao componente 13 00 da gerência de sessão usa uma conexãopara transmitir a informação associada com um monitor namáquina de cliente 10 ao componente de serviço da máquinavirtual. Em uma destas modalidades, a sustentação dageometria do multi-monitor é fornecida. Em outras destasmodalidades, o componente 1300 da gerência de sessãoalcançam a informação do multi-monitor e permitem ocomponente de serviço da máquina virtual de criar umaversão da informação do multi-monitor na máquina virtual.
Em uma modalidade, as técnicas são fornecidas para virtualizing um ambiente da exposição de um cliente modificando econtrolando o comportamento e a aparência de umapplication1 janela de s baseada em uma disposição desejadada exposição para o cliente. As técnicas podem ser usadassimulando ou fornecendo uma instalação múltipla daexposição para um único ambiente da exposição. Umamodalidade fornece uma janela que processa o mecanismo parainterceptar uma mensagem selecionada a uma janela de umaaplicação e para modificar a mensagem ã janela para indicara janela no cliente baseado na disposição desejada daexposição. A mensagem à janela prevê o comportamento ou aaparência de uma janela usada ou indicada pela aplicação.Em uma modalidade, a janela que processa o mecanismofornece um mecanismo de suspensão com gancho a umapplication' o procedimento da janela de s e substitui oprocedimento original da janela com um procedimento dajanela projetado interceptar uma mensagem selecionada dajanela e modificar valores dos argumentos ou dos parâmetrosda mensagem interceptada da janela baseada na disposiçãodesejada da exposição do cliente. Como tal, as mensagensselecionadas da janela são processadas para fornecer outraduzir o comportamento ou a aparência da janela àdisposição desejada da exposição. As técnicas e osmecanismos descritos podem ser praticados em um ambiente decomputação baseado usuário, tal como no meio uma máquina decliente 10 e uma máquina remota 30 que comunica-se atravésde um protocolo remoto da exposição. Um telecontrole W amáquina 30, ou uma máquina virtual que executa em umhypervisor na máquina remota 30, podem setup ou configuradopara um único ambiente da exposição quando a máquina decliente 10 puder setup ou configurado para uns ou váriosdispositivos de exposição. Por exemplo, uma sessão em umamáquina, tal como uma sessão em um sistema de exploração dousuário de WINDOWS pode somente poder ser configurado ouinstalação para uma única exposição. O usuário pode obteruma disposição preferida ou desejada da exposição para ocliente, e armazena a disposição da exposição emcolaboração com o cliente, tal como a associação dadisposição da exposição com uma sessão remota para ocliente. 0 mecanismo do processamento de mensagem da janelapode ser usado pelo usuário para interceptar e modificarmensagens selecionadas às janelas da aplicação que funcionano usuário em nome do cliente. As mensagens da janela sãomodificadas para fornecer um comportamento ou uma aparênciada janela baseada na disposição da exposição associada como cliente. Como tal, a saída da exposição comunicada pelousuário ao cliente inclui a saída da exposição a serindicada no cliente de acordo com o client' a disposição daexposição de s um pouco do que a disposição da exposição,por exemplo, escolhe a disposição da exposição, da sessãono usuário. Usar as técnicas e os mecanismos descritosnisto permite que um usuário alcance uma aplicaçãoremotamente disponível em um ambiente de computaçãousuário-baseado não obstante a disposição do monitor docliente. Em vez do usuário que associa uma única exposiçãocom a sessão remota, o usuário fornecerá a saída daexposição baseada no client' disposição da exposição de s.
Além disso, a aplicação remotamente fornecida podemaximizar à exposição apropriada da perspectiva do cliente.
Também, os artigos de menu e outras janelas de umaaplicação podem ser indicado apropriadamente dentro de umaaplicação, por exemplo, sem aparecer separe da aplicação.
Adicionalmente, a introdução de uma janela que está sendorendida off-screen após mudanças à disposição da exposiçãoé segurada automaticamente movendo a janela para umviewable em cima da deteção off-screen de uma janela. Alémdisso, estes técnicas e mecanismos podem igualmente serpraticados em um ambiente de computação local paravirtualizar, simulam, ou fornecem de outra maneira umambiente múltiplo do monitor para um cliente que tem umúnico dispositivo de exposição. Embora o cliente possa terum único dispositivo de exposição, uma disposição desejadada exposição pode ser configurada ou fornecido paraespecific exposições do múltiplo. A janela que processa omecanismo pode ser usada para interceptar e modificarmensagens da janela para uma aplicação no cliente paracontrolar o comportamento ou a aparência da janela baseadana disposição desejada da exposição em vez da disposiçãoreal do monitor. Como tal, um usuário pode ganhar afuncionalidade, os benefícios, e as vantagens de umambiente múltiplo do monitor sem ter dispositivos deexposição múltiplos. Referência agora o FIGO. 15A, umamodalidade de um ambiente 1502 é descrito. Na breve vistageral, uma máquina de cliente 10, pode ser conectada a oude outra maneira usar um dispositivo de exposição 124, emuma modalidade, ou os dispositivos de exposição múltiplos124a-124n, em uma outra modalidade. A máquina de cliente 10inclui uma disposição 1520 da exposição que compreende umaconfiguração desejada da exposição para a máquina decliente 10, como para o dispositivo de exposição 124. Amáquina de cliente 10 inclui um elemento de armazenamento1525 para armazenar a disposição da exposição da máquina decliente 10. A máquina de cliente 10 igualmente inclui umajanela que processa o mecanismo 1550.
Em um detalhe mais adicional, a disposição 1520 daexposição compreende todo o tipo e/ou formulário dainformação ou dos dados para identificar, especific, oudescrever uma configuração desejada da disposição daexposição para o cliente. Em uma modalidade, a disposição15 2 0 da exposição pode compreender uma lima ou um jogo daslimas em todo o formato. Em uma outra modalidade, adisposição 152 0 da exposição pode compreender toda ainformação ou dados armazenada em qualquer tipo e/ou dá-losforma do elemento do armazenamento ou da memória fornecidopela máquina de cliente 10. Em uma modalidade adicional, adisposição 1520 da exposição pode ser fornecida ouarmazenado em todo o tipo e/ou formulário apropriados dabase de dados. Em umas modalidades mais adicionais, adisposição 1520 da exposição pode ser fornecida através detodo o objeto, estrutura de dados, ou relação deprogramação da aplicação (API). A disposição 1520 daexposição pode compreender gráfico, textual, ou acombinação de elementos gráficos e textual. A disposição1520 da exposição pode ser criada, editado, configurado, oufornecido de outra maneira por todos os meios e/oumecanismos apropriados, tais como um gráfico e/ou um textobaseou a ferramenta, o programa ou a aplicação. Em umamodalidade, uma ferramenta gráfica com uma interface deutilizador pode ser usada para projetar, criar, editar econfigurar a disposição 1520 da exposição. A disposição1520 da exposição pode incluir atributos, propriedades,características, valores, ajustes, perfis, e outro ainformação de configuração 1522a- da exposição 1522n paradefinir cada exposição para o cliente. A disposição 1520 daexposição pode incluir a configuração 1522a-1522n daexposição para cada um das exposições, do exame, dovirtuais desejados, ou de outra maneira. Em algumasmodalidades, a disposição 1520 da exposição inclui umadescrição da disposição, da posição, da posição, daorganização, ou do arranjo para cada dispositivo deexposição 124a-124n. Em uma modalidade, a disposição 1520da exposição inclui um arranjo visual ou gráfico queidentifica a posição e/ou o tamanho de cada um monitor noque diz respeito a se. Em algumas modalidades, cadaexposição 1522a- 1522n é identificada por um identificador,tal como um nome ou um número. Também, a configuração1522a-1522n da exposição pode incluir um tipo do monitor,uma tela refresca a taxa, o tipo do adaptador, a informaçãodo adaptador, a definição da tela, uma qualidade da cor, umesquema de cor, um tamanho de pia batismal, um fundo, umestilo para teclas e menus, e uma poupança de tela.
Adicionalmente, a configuração 1522a-1522n da exposiçãopode incluir a informação ou os dados para identificar ouespecific uma definição 1524a-1524n e/ou uma área detrabalho 1526a-1526n para cada exposição, tal como aexposição que corresponde a um dispositivo de exposição124a-124n. Em uma modalidade, a definição 1524a-1524nidentifica o número de pixéis, ou os pontos individuais dacor, contidos em um monitor de exposição, expressado nostermos do número de pixéis na linha central horizontal e donúmero de pixéis na linha central vertical. Porque aquelesordinariamente hábeis na arte apreciarão, a agudeza daimagem indicada no dispositivo de exposição 124a- 124n podedepender da definição e do tamanho do dispositivo deexposição 124a- 124n. Em uma outra modalidade, a área detrabalho 1526a-1526n identifica as dimensões úteis da áreade tela do dispositivo de exposição 124a-124n nos pixéis.
Em algumas modalidades, a área de trabalho 1526a-1526n nãoinclui as dimensões da área de tela nao útil pelo usuário,tal como a parcela da área de tela que tem um menu, umaferramenta, ou uma barra de tarefa, tal como a barra detarefa em um área de trabalho fornecido através de umsistema de exploração de WINDOWS. Em uma modalidade, adisposição 1520 da exposição é configurada paracorresponder ao número dos dispositivos de exposição 124a-124n, e a suas características disponíveis ecaracterísticas, acessíveis pelo cliente. Em outrasmodalidades, a disposição 1520 da exposição não combina nemnão corresponde ao número dos dispositivos de exposição124a-124n conectados ao cliente. Por exemplo, a máquina decliente 10 pode ter um único dispositivo de exposição 124amas a disposição 1520 da exposição pode ser configuradapara os dispositivos de exposição múltiplos 124a-124n. Emum aspecto, a disposição 1520 da exposição pode serconfigurada para um dispositivo de exposição 124a que sejavirtual, ou um dispositivo de exposição virtual. Umdispositivo de exposição virtual é rendido fora da área detela do dispositivo de exposição físico 124a e pode sercoloc e fora da área de tela visível por todo o mecanismoe/ou meios apropriados, como por exemplo, tabulando entreárea de trabalhos, ou garimpando e enrolando além da áreade trabalho do dispositivo de exposição físico 124a. Umdispositivo de exposição virtual pode compreender umadefinição 1524a-1524n, uma área de trabalho 1526a-1526n, etodos os outra dados ou informação em uma configuração1522a-1522n da exposição como se era um dispositivo deexposição físico 1524a-1524n conectado ou ser conectado auma máquina de cliente 10. Em algumas modalidades, a áreade trabalho 1526a-1526n do dispositivo de exposição virtualé relativa a e/ou adjacente horizontalmente ouverticalmente à área de tela do dispositivo de exposiçãofísico 124a-124n. Em outras modalidades, a definição 1524a-1524n do dispositivo de exposição virtual é a mesmadefinição 1524a-1524n do dispositivo de exposição físico124a, ou uma das definições 1524a-1524n suportadas pelodispositivo de exposição físico 124a. Em algumasmodalidades, uma exposição 1522a que corresponde a umdispositivo de exposição físico 124a não é exigida serconfigurada como o monitor esquerdo superior. Em outrasmodalidades, a disposição 1520 da exposição podecompreender todo o arranjo de sistemas coordenadospositivos e/ou negativos, e algum indica 1522a-1522n, ou osdispositivos de exposição 124a-124n, virtuais ou de outramaneira, podem ser configurados para ser ficado situadoscom todas as coordenadas positivas e/ou negativas, ou emqualquer parcela do sistema coordenado positivo e/ounegativo. 0 elemento de armazenamento 1525 ilustrou namáquina de cliente 10 do FIGO. 15A pode compreenderqualquer tipo e/ou dá-lo forma do armazenamento ou amemória, tal como a memória de acesso aleatório, umaunidade de disco, uma disposição de disco, uma movimentaçãoótica rewriteable, memória compartilhada, uma base dedados, uma lima, um objeto, uma estrutura de dados, ou todoo outros tipo e/ou formulário do elemento do armazenamentoou da memória de que permitir a armazenagem e o acesso àinformação ou aos dados, tais como a disposição 1520 daexposição. Em uma modalidade, o elemento de armazenamento1525 fornece a disposição 1520 da exposição porque umarquivo de dados global traçados, que possa ser acessívelpor algumas das aplicações 1530 da máquina de cliente 10.
Em algumas modalidades, o elemento de armazenamento 1525armazena a disposição 1520 da exposição, ou uma parcela dadisposição 1520 da exposição. Em outras modalidades, adisposição 1520 da exposição pode ser convertida,traduzido, transformado ou de outra maneira alterado paraser armazenado no elemento de armazenamento 1525. Embora oelemento de armazenamento 1525 seja ilustrado na máquina decliente 10, uma outra máquina de cliente 10 acessível àmáquina de cliente 10, tais como um usuário, pode ter umelemento de armazenamento para armazenar a disposição 1520da exposição. Em algumas modalidades, a máquina de cliente10 executa ou fornece de outra maneira umas ou váriasaplicações 1530. A aplicação 1530 pode ser qualquer tipoe/ou dar forma do software, o programa, ou instruçõesexecutáveis tais como todo o tipo e/ou formulário donavegador de rede, aplicação com suporte na internet docliente, de usuário do cliente, um cliente de computação docliente fino, um controle de ActiveX, ou um Java applet, Ouqualquer outro tipo e/ou formulário das instruçõesexecutáveis capazes da execução na máquina de cliente 10.
Em algumas modalidades, a aplicação 153 0 fornece umas ouvárias janelas 1535a-1535n, também providas às vezescoletivamente nisto como 1535. Em uma modalidade, a janela1535a-1535n é um gráfico, às vezes retangulares na forma,tendo algum tipo da interface de utilizador ou arespresentação gráfica ou textual da saída de, e em algunscasos, permitindo a entrada para a aplicação 153 0. Em umaoutra modalidade, a janela 1535a-1535n compreende uma áreana tela que indica a informação, incluindo o usuáriodocumenta assim como comunicações tais como caixas alertase caixas de diálogo. Adicionalmente, o usuário pode abrirou fechar uma janela, movê-la ao redor na exposição, e àsvezes mudar seu tamanho, rolo com ele, e edita seusíndices. Em uma modalidade, a interface de utilizador paraa aplicação 1530 é a janela 1535a-1535n. Em outrasmodalidades, a aplicação 1530 fornece uma janela 1535a-1535n do nível superior para a apresentação e/ou aestrutura ou a estrutura da navegação para a aplicação1530, e fornece as janelas adicionais 1535a- 1535n emresposta à entrada ou aos outros eventos. Por exemplo, aaplicação 153 0 pode ter um sistema de menu e uma área detela para uma interface de utilizador representada por umajanela 1535a do nível superior, e baseada na entrada dousuário, nas exposições uma janela secundária ou menor 153 5para fornecer a saída ao usuário e/ou para receber aentrada do usuário a respeito da aplicação 1530.
A aplicação 1530, e/ou todas as janelas 1535a-1535n daaplicação podem receber uma mensagem 154 0, tal como umamensagem da janela, como a entrada. A mensagem 154 0 podeser qualquer tipo e/ou dar forma de uma comunicação atravésde qualquer tipo e/ou formulário do meio. Em algumasmodalidades, a mensagem 154 0 compreende uma comunicação auma janela 1535a-1535n para controlar ou dirigir ocomportamento, a aparência, os atributos, ou aspropriedades da janela 153 5a-1535n. Em uma modalidadeexemplar de um ambiente WINDOWS-based, a aplicação 1530 éevent-driven, e espera o sistema de exploração, ou osistema, para passar-lhes a entrada. 0 sistema passa toda aentrada para uma aplicação às várias janelas 1535a-1535n naaplicação 1530. Cada janela 1535a-1535n tem uma função,chamada um procedimento da janela, que o sistema deexploração chame em resposta a receber a entrada para ajanela. Um procedimento da janela é uma função que receba eprocesse todas as mensagens emitidas à janela. Uma classeda janela pode ter um procedimento da janela, e cada janelacriada com os usos dessa classe esse mesmo procedimento dajanela responder às mensagens. 0 procedimento da janelaprocessa a entrada e retorna o controle ao sistema. Osistema passa a entrada a um procedimento da janela sob aforma de uma mensagem 154 0, que possa ser gerada pelosistema de exploração ou por outras aplicações 1530. Umamensagem 1540 puder ser gerada para um evento da entrada,por exemplo, quando os tipos de usuário, mover o rato, ouestalar um controle tal como uma barra de rolo. Umamensagem 1540 pode igualmente ser gerada em resposta àsmudanças no dispositivo do sistema de exploração ou dacomputação causado por uma aplicação 1530. Uma aplicação1530 pode gerar mensagens para dirigir as janelas 1535a-1535n da aplicação 1530 para executar tarefas ou paracomunicar-se com as janelas 1535a-1535n em outrasaplicações. Na modalidade exemplar de WINDOWS - o sistemabaseado, uma mensagem 154 0 é emitido a um procedimento dajanela com parâmetros. Em uma modalidade, a mensagem 154 0compreende um jogo de quatro parâmetros: um punho dejanela, um identificador de mensagem, e dois valoresreferiram como parâmetros da mensagem. O punho de janelaidentifica a janela para que a mensagem é pretendida, e éusado para determinar que procedimento da janela devereceber a mensagem. Um identificador de mensagem identificauma finalidade ou uma função da mensagem 1540. Quando umprocedimento da janela recebe uma mensagem, usa oidentificador de mensagem para determinar como processar amensagem. Por exemplo, um identificador de mensagemWM_PAINT de uma mensagem 1540 pode indicar a umprocedimento da janela que o window' a área 1535 do clientede s mudou e deve ser repintada. Os parâmetros de umamensagem 1540 podem especific dados ou a posição dos dadosusados por um procedimento da janela ao processar umamensagem 1540. O significado e o valor dos parâmetros podemdepender da mensagem 1540. Um parâmetro da mensagem podeincluir um inteiro, uma corda, bandeiras embaladas dobocado, um ponteiro a uma estrutura que contem dadosadicionais, ou todo o tipo e/ou formulário dos dados ou dainformação. Embora uma mensagem 1540 seja descritageralmente no contexto de um ambiente WINDOWS-based, umamensagem 1540 pode ser qualquer tipo e/ou dar forma de umacomunicação em qualquer tipo de sistema de exploração ou deambiente, porque um ordinariamente hábil na artereconheceria e apreciaria, controlaria ou dirigiria aaparência, o comportamento e os atributos de uma janela1540 que está sendo indicada ou de outra maneira que estásendo usada, processada, ou fornecida pela aplicação 1530.Como tal, a mensagem 154 0 pode estar em um formulário e terapropriado satisfeito ao ambiente ou ao sistema deexploração para que as operações descritas nisto podem serpraticadas. Ainda referindo o FIGO. 15A, a janela queprocessa o mecanismo 1550, igualmente referido como ummecanismo do processamento de mensagem da janela, forneceos meios e o mecanismo mudando, controlando ou dirigindouma aparência, um comportamento ou um atributo da janela1535a-1535n de uma aplicação 1530 baseada na disposiçãodesejada 1520 da exposição do cliente 1505. A janela queprocessa o mecanismo 1550 pode compreender uma relação deprogramação da aplicação (API), aplicação, módulo,componente de software, biblioteca, serviço, processo,tarefa ou qualquer outros formulário e/ou tipo deinstruções executáveis projetadas e capazes a executar ou afornecer a funcionalidade descrita nisto. A janela queprocessa o mecanismo 1550 pode compreender o software, aferragem, ou a toda a combinação do software e da ferragem.
Em algumas modalidades, uma aplicação 153 0 pode serprojetada ou construído para incluir a funcionalidade dajanela que processa o mecanismo 155 0, quando em algumasoutras modalidades, a janela que processa o mecanismo 1550for projetada e construída para ser usada por aplicaçõesexistentes 1530, por exemplo, sem mudar a aplicação 1530.
Em uma modalidade, a janela que processa o mecanismo 1550compreende um mecanismo para procedimentos subclassing dajanela de uma janela 1535 da aplicação 1530, e fornecimentode um procedimento da janela que começ chamado ou usado nolugar do procedimento original da janela da janela 1535. Emuma modalidade, um mecanismo de suspensão com gancho éusado pela janela que processa o mecanismo 1550 parafornecer o procedimento da janela da recolocação. Emalgumas modalidades, um mecanismo de suspensão com ganchocompreende usando uma relação de programação da aplicação(API) para substituir as instruções ou o código executávelda função, procedimento, ou API com um jogo desejado deinstruções ou do código executável. Por exemplo, a janelaque processa o mecanismo 1550 pode introduzir um mecanismode suspensão com gancho para todo o API relativo a criar, aestabelecer, ou a fornecer uma janela 1535, por exemplo, oCreateWindowA, o CreateWindowW, o CreateWindowExA, e osAPIs de CreateWindowExW do ambiente do sistema deexploração de WINDOWS. Em algumas modalidades, oprocedimento da janela é substituído através das chamadasda relação de programação da aplicação de Windows (API) deGetWindowLong e de SetWindowLong. Em outras modalidades, oprocedimento substituído da janela é armazenado em umalista de todo o tipo e/ou formulário apropriados junto comum punho de janela ou na referência ao procedimentosubstituído da janela. Como tal, o procedimento da janelausado pela janela que processa o mecanismo 1550 pode chamaro procedimento substituído da janela. Por exemplo, a janelaque processa o mecanismo 1550 pode passar através de umamensagem 154 0 ao procedimento original da janela paraprocessar. 0 procedimento da janela da janela que processao mecanismo 1550 pode ser construído e projetadointerceptar todas as ou uma parcela mensagens 1540comunicadas a ou recebidas pela janela 1535. Em algumasmodalidades, as intercepções do procedimento da janelatodas as mensagens 1540 e todas as mensagens 1540 a não sermodificadas são comunicadas ao original ou ao procedimentosubstituído da janela. Em uma modalidade de um Microsoft®Windows baseou o ambiente, o procedimento da janela dajanela que processa as mensagens 1540 das intercepções domecanismo 1550 com um identificador de mensagem quecompreende um do seguinte: 1) WM_D IS PLAYCHANGE, 2)WM_WINDOWPOSCHANGED, 3) WM_WINDOWPOSCHANGING, e 4)WM_GETMAXMININFO. A A mensagem 154 0 de WM_DISPLAYCHANGEcomunica a uma janela 153 5 uma mudança em uma definição1524 de uma exposição 124. Uma mensagem 1540 deWM_WINDOWPOSCHANGED comunica a uma janela 153 5 uma mudançaem um tamanho, na posição, ou em um lugar na ordem de Zpara a janela 154 0. Uma mensagem 154 0 deWM_WINDOWPOSCHANGING é comunica-se a uma janela 1535 em queuma mudança em um tamanho, na posição, ou em um lugar naordem de Z para a janela 1540 está a ponto de ocorrer. Umamensagem 154 0 de WM_GETMAXMININFO está comunicada a umajanela 1535 em que um tamanho ou uma posição, ou uma janela1540 estão a ponto de mudar. A janela que processa omecanismo 1550 intercepta uma mensagem 1540 e modifica umvalor ou um parâmetro do retorno da mensagem 154 0 paracorresponder a ou para ser baseada na disposição 1520 daexposição. Em algumas modalidades, a janela que processa omecanismo 1550 intercepta as mensagens 1540 para uma janelatop-levei 153 5, e em outras modalidades, a janela queprocessa o mecanismo 1550 intercepta mensagens para asjanelas 153 5 que não são uma janela top-levei. Em umasmodalidades mais adicionais, a janela que processa omecanismo 1550 intercepta as mensagens 1540 para umdeterminado jogo das janelas 154 0. Por exemplo, a janelaque processa o mecanismo 1550 pode ser configurada parainterceptar as janelas 1550 definidas em uma lista, base dedados, formulário do armazenamento 152 5, ou algum outrostipo e/ou do meio da configuração.A mensagem 154 0 interceptada pela janela que processao mecanismo 1550 pode ter os valores, os argumentos, e/ouos parâmetros do retorno projetados ou alvejados para adisposição real da exposição da máquina de cliente 10 ou damáquina remota 30, mas a janela que processa o mecanismo1550 muda os valores, os argumentos e/ou os parâmetros doretorno a ser projetados ou alvejado para a exposiçãoconfiguração 1522a-1522n fornecida pela disposição desejada1520 da exposição. A janela que processa o mecanismo 1550pode ler, para alcançar, adquire ou obtém de outra maneiraa disposição 1520 da exposição do elemento de armazenamento1525 por todos os meios e/ou mecanismo apropriados. Ajanela que processa o mecanismo 1550 pode compreenderqualquer tipo da lógica, a funcionalidade, as réguas denegócio, ou as operações para obter os valores, osargumentos, e os parâmetros da mensagem 154 0 e paraanalisar, comparar ou processar de outra maneira osvalores, os argumentos, e os parâmetros da mensagem 154 0 emvirtude da disposição 1520 da exposição, e determina todasas mudanças ou modificações aos valores, os argumentos ouos parâmetros ou a mensagem 1540 indicar a janela 1535 emuma exposição identificada pela disposição 1520 daexposição. A janela que processa o mecanismo 1550 modificaa mensagem 154 0 de acordo com as mudanças determinadas ecomunica a mensagem 1540 a janela 1535. Em algumasmodalidades, a janela que processa o mecanismo 1550determina a mensagem 1540 não precisa de ser modificada enão comunica assim a mensagem 154 0 no mesmo formulário queinterceptado pela janela que processa o mecanismo 1550. Emoutras modalidades, a janela que processa o mecanismo 1550substitui a mensagem 1540 com uma segunda mensagem.
Referência agora o FIGO. 15B, uma outra modalidade de umambiente de computador conectado é mostrado em que amáquina de cliente 10 se comunica com uma máquina remota 30através de umas ou várias redes de comunicação 150. Amáquina de cliente 10 pode ser conectada a ou de outramaneira usar uns ou vários dispositivos de exposição 124a-124n. A máquina de cliente 10 inclui uma disposição 1520 daexposição que compreende uma configuração desejada daexposição para a máquina de cliente 10, como para aexposição dispositivos 124a-124n. A máquina de cliente 10pode igualmente incluir um agente 1508 do cliente. Amáquina remota 30 inclui uma aplicação 1530 que fornecemumas ou várias janelas 1535a-1535n, e um elemento dearmazenamento 1525 para armazenar a disposição 1520 daexposição da máquina de cliente 10. A máquina remota 30igualmente inclui um agente do usuário 1528, um mecanismo1545 do início de uma sessão da sessão, e uma janela queprocessa o mecanismo 1550. O ambiente 1500 pode fornecer umambiente de computação usuário-baseado ou do fino-clientepara praticar as operações descritas nisto. Por exemplo, aaplicação 153 0 pode ser uma aplicação executada na máquinaremota 30 em nome da máquina de cliente 10. A saída daexposição da execução da aplicação 1530 pode ser comunicadaà máquina de cliente 10 para a exposição no cliente, porexemplo, através do agente 1508 do cliente. A saída daexposição pode ser comunicada entre a máquina remota 30 e amáquina de cliente 10 através de um protocolo remoto daexposição. A saída da exposição pode ser baseada em umajanela 154 0 da aplicação 153 0 que funciona na máquinaremota 3 0 mas ser indicada na máquina de cliente 10. Comoserá descrito em um detalhe mais adicional abaixo, a janelaque processa o mecanismo 1550 na máquina remota 3 0intercepta e modifica as mensagens 1540 da aplicação 1530que funciona na máquina remota 30, comunica a mensagem 154 0à janela 1535. Como tal, a saída da exposição comunicada àmáquina de cliente 10 reflete a mensagem modificada 1540processada pela janela 1535. Em uma modalidade, segundo asindicações do FIGO. 15B, um agente 1508 do cliente éincluído dentro da máquina de cliente 10. O agente 1508 docliente pode ser, por exemplo, executado como um programade software e/ ou como um dispositivo de ferragem, como, porexemplo, um ASIC ou um FPGA. Um exemplo de um agente 1508do cliente com uma interface de utilizador é um navegadorde rede (por exemplo Internet Explorer e/ou navegador donavegador de Netscape™). O agente 1508 do cliente pode usarqualquer tipo de protocolo, tal como um protocolo remoto daexposição, e pode ser, por exemplo, um agente do cliente doHTTP, um agente do cliente do ftp, um agente do cliente deOscar, um agente do cliente do telnet, um agente decomputação independente do cliente da arquitetura (AIC) deCitrix Sistemas, Inc. do Fort Lauderdale, Florida, ou umagente remoto do cliente do protocolo do Área de trabalho(RDP) de Microsoft Corporation de Redmond, Washington. Emalgumas modalidades, o agente 1508 do cliente é configuradopara conectar à máquina remota 30. Em algumas modalidades(não mostradas), o cliente 1508 inclui uma pluralidade deagentes do cliente 1508, cada qual pode se comunicar comuma máquina remota 30, respectivamente. Adicionalmente, amáquina remota 3 0 pode compreender um agente 1528 dousuário de que possa ser capaz e configurado para trabalharconjuntamente com o agente 1508 do cliente. Por exemplo, oagente 1528 do usuário pode ser um componente do lado deusuário que aceite conexões e as peça do agente 1508 docliente. Em uma outra modalidade, o agente 1528 do usuáriopode ser capaz de e configurado para aceitar ou estabelecerconexões ou sessões do acesso remoto para a máquina decliente 10. Em uma modalidade, o agente 1508 do cliente e oagente 152 8 do usuário podem comunicar-se usando umprotocolo, tal como o HTTP, o AIC ou a RDP, sobre a rede1504. Em algumas modalidades, o agente 1508 do cliente e/ouo agente 1528 do usuário são usados para estabelecer,restabelecem, mantêm, ou fornecem de outra maneira umacomputação ou um fino-cliente usuário-baseado que computama conexão ou a sessão baseada. Em outros a modalidade, oagente do cliente 1508 e o agente 1528 do usuárioestabelecem o começo e terminam pontos das comunicaçõespara uma conexão entre a máquina de cliente 10 e a máquinaremota 30 do destino. Em algumas modalidades, a máquinaremota 30 inclui um elemento de armazenamento 1525 paraarmazenar a disposição da exposição. Em uma modalidade, oelemento de armazenamento 1525 fornece a disposição 1520 daexposição porque um arquivo de dados global traçados, quepossa ser acessível por algumas das aplicações 1530 damáquina remota 30. Em algumas modalidades, a disposição1520 da exposição é armazenada no mesmo formulário damaneira prevista a ou recebida pela máquina remota 30.
Embora o elemento de armazenamento 1525 seja ilustrado namáquina remota 3 0 no FIGO. 15B, a máquina de cliente 10pode igualmente incluir um elemento de armazenamento 1525'e em algumas modalidades, a máquina de cliente 10armazena a disposição 1520 da exposição no client' elementode armazenamento 1525" de s; , e/ou ao machine' remoto;elemento de armazenamento 1525 de s. A máquina remota 30pode igualmente incluir um mecanismo 1545 do início de umasessão da sessão, que possa incluir qualquer tipo e/ou odar forma do serviço, o procedimento, a tarefa ou oprograma, a aplicação, ou instruções executáveis na máquinaremota 3 0 segurar e de início de uma sessão ou de sessão doprocesso pedidos. 0 mecanismo 1545 do início de uma sessãoda ses sao, ou qualquer parcela disso, podem ser fornecidosatravés do sistema de exploração da máquina remota 30. Emuma modalidade, o mecanismo 1545 do início de uma sessão dasessão inclui o processo do início de uma sessão dasjanelas, winlogon, um componente das famílias de Microsoft®Windows de sistemas de exploração. Como tal, o mecanismo1545 do início de uma sessão da sessão pode fornecer asustentação interativa do início de uma sessão, e podeincluir a biblioteca Iig dinâmicamente gráfico daidentificação e da autenticação (DLL) referida como a GINA,e algum número de fornecedores de rede. O mecanismo 154 5 doinício de uma sessão da sessão pode incluir todas asrelações, tais como uma relação de programação da aplicação(API) ou as bibliotecas dinâmicamente lig, isto é, um DLL,para permitir qualquer recurso, uma aplicação, uma rede ouuma rede fornecem o recolhimento obtêm toda a informação daidentificação e de autenticação durante um processo doinício de uma sessão. O mecanismo 1545 do início de umasessão da sessão pode executar um processo de autenticaçãoe operações da senha-actualização para o sistema deexploração e/ou para uns ou vários recursos, programas,aplicações, redes, ou fornecedores de rede. Em umamodalidade, o mecanismo 1545 do início de uma sessão dasessão proporciona serviços da autenticação para o sistemade exploração, e em modalidades adicionais, igualmenteproporciona serviços da autenticação para o acesso àsaplicações 1530 a ser executadas dentro na máquina remota30 em nome da máquina de cliente 10, tais como um modelo decomputação usuário-baseado ou do fino-cliente.
Adicionalmente, o mecanismo 1545 do início de uma sessão dasessão pode monitorar toda a atividade do rato e/ou doteclado relativa à abertura ou fixar o acesso da máquinaremota 30, ou qualquer recurso, aplicação, rede, oufornecedor de rede. Em algumas modalidades, o mecanismo1545 do início de uma sessão da sessão pode estabelecertodos os serviços, processos, ou tarefas iniciais para umusuário ou uma sessão na máquina remota 30.
A máquina remota 30 pode executar ou de outra maneirafornecer umas ou várias aplicações 1530. A aplicação 1530pode ser qualquer tipo e/ou dar forma do software, oprograma, ou instruções executáveis tais como todo o tipoe/ou formulário do navegador de rede, aplicação com suportena internet do cliente, de usuário do cliente, um clientede computação do fino-cliente, um controle de ActiveX, ouum Java applet, Ou qualquer outros tipo e/ou formulário deinstruções executáveis capazes da execução na máquina decliente 10 ou da comunicação através de uma rede 1504. Aaplicação 153 0 pode usar qualquer tipo de protocolo e podeser, por exemplo, um cliente do HTTP, um cliente do ftp, umcliente de Oscar, ou um cliente do telnet. Em algumasmodalidades, a aplicação 1530 usa um protocolo niveladoremoto da exposição ou da apresentação. Em outrasmodalidades, a aplicação 1530 compreende qualquer tipo dosoftware relativo às comunicações do protocolo do Voz-Sobre-Internet (VoIP), tais como um telefone macio do IP.Em umas modalidades mais adicionais, a aplicação 1530compreende toda a aplicação relativa às transmissões dedados tempos real, tais como pedidos para fluir o vídeoe/ou o áudio. Em algumas modalidades, a aplicação 1530fornece umas ou várias janelas 1535a- 1535n, tambémprovidas às vezes coletivamente nisto como 1535. Em algumasmodalidades, a máquina remota 3 0 ou uma exploração agrícola3 8 da máquina podem funcionar umas ou várias aplicações153 0, tal como uma aplicação 153 0 que fornece a computaçãode um fino-cliente ou a aplicação remota da apresentação daexposição. Em uma modalidade, a máquina remota 3 0 ou aexploração agrícola da máquina executam como uma aplicação153 0, qualquer parcela do acesso Suite™ de Citrix porCitrix Sistemas, Inc., tal como a apresentação Server™ de
MetaFrame ou de Citrix, e/ou alguma dos serviços terminaisde Microsoft® Windows manufaturados por MicrosoftCorporation. Em uma modalidade, a aplicação 153 0 é umcliente do AIC, desenvolvido por Citrix Sistemas, Inc. doFort Lauderdale, Florida. Em outras modalidades, aaplicação 1530 inclui um cliente remoto do Área de trabalho(RDP) , desenvolvido por Microsoft Corporation de Redmond,Washington. Adicionalmente, a máquina remota 3 0 podefuncionar uma aplicação 1530, que por exemplo, possa ser umservidor de aplicações que fornece serviços de correioelectrónico tais como a troca de Microsoft manufaturado porMicrosoft Corporation de Redmond, de Washington, de umacorreia fotorreceptora ou do usuário do Internet, ou umárea de trabalho que compartilham do usuário, ou um usuárioda colaboração. Em algumas modalidades, algumas dasaplicações 1530 podem compreender qualquer tipo do serviçohospedado ou os produtos, tais como GoToMeeting™ fornecidopor Citrix Em linha Divisão, Inc. de Santa Barbara,Califórnia, WebEx™ forneceram por WebEx, Inc. de SantaClara, de Califórnia, ou de Microsoft Office LiveMeetingfornecido por Microsoft Corporation de Redmond, Washington.Embora no FIGO. 15A e FIGO. 15B, a janela que processa omecanismo 1550 é ilustrado como incluído na aplicação 1530,a janela que processa o mecanismo 1550 pode residir emqualquer parcela da máquina remota 30, da máquina decliente 10, e/ou de externai ã aplicação 1530, por exemplo,como ilustrado no FIGO. 15C. Em uma modalidade, a janelaque processa o mecanismo 1550 compreende um serviço, umprocesso, ou uma tarefa que funcione em um contexto dosistema ou com os privilégios do sistema do sistema deexploração. Em algumas modalidades, as janelas queprocessam o mecanismo 1550 podem monitorar as mensagens1540 comunicadas às janelas 1535a-1535n de uma aplicação1530, e interceptam e modificam a mensagem 1540 às janelas1535a-1535n. Um ordinariamente hábil na arte reconhecerá eapreciará que as janelas que processam o mecanismo 1550podem compreender qualquer tipo e/ou o dar forma dasinstruções executáveis capazes de executar as operaçõesdescritas nisto. Em uma outra modalidade do ilustrado noFIGO. 15C, o mecanismo 1545 do início de uma sessão dasessão pode ser usado para prever, ou o uso, algum dafuncionalidade da janela que processa o mecanismo 1550. Emalgumas modalidades, o mecanismo 1545 do início de umasessão da sessão pode ler, para alcançar, adquire ou obtémde outra maneira a disposição 1520 da exposição do elementode armazenamento 1525. Em outras modalidades, nos acessos,em cargas, ou em usos do mecanismo 154 5 do início de umasessão da sessão a funcionalidade da janela que processa omecanismo 1550 através de uma biblioteca dinâmicamenteprograma, tal como uma biblioteca fornecida através de umfornecedor de rede ao processo do winlogon de um sistema deexploração de WINDOWS. Em outras modalidades, o mecanismodo início de uma sessão da sessão conecta com ou comunica-se à janela que processa o mecanismo 1550 para fornecer astécnicas descritas nisto. Em umas modalidades maisadicionais, o mecanismo 1545 do início de uma sessão dasessão pode usar as técnicas descritas nisto durante oreconexão, o restabelecimento, e/ou o re-authentication deum início de uma sessão ou de uma sessão de usuário, talcomo uma sessão remota em um ambiente de computaçãousuário-baseado 1500. Em um outro aspecto, as técnicas paravirtual izing um ambiente da exposição de uma máquina decliente 10 controlando ou dirigindo a aparência, ocomportamento e os atributos de uma janela 153 5 de umaaplicação 1530 basearam na disposição desejada 1520 daexposição para uma máquina de cliente 10 são descritas. Emvirtude dos sistemas e da estrutura dos ambientes 1500,1501, e 1502 descreveram nos figos. 15A -15C, as operações,funcionalidade, e técnicas será endereçado pelos métodosdescritos nos figos. 3A-3D. 0 FIGO 3A descreve um método300 para praticar uma modalidade usando a janela queprocessa o mecanismo 1550. FIGO. 3B descreve exemplos dasmensagens e do processamento da janela usados conjuntamentecom o método 300. FIGO. 3C descreve um método 350 parapraticar uma modalidade ao reconectar, ao restabelecer ouao re-authenticating através do mecanismo 1545 do início deuma sessão da sessão. FIGO. 3D descreve o métodoilustrativo 360 para mudar o client' disposição 1520 daexposição de s, por exemplo, durante a execução de umaaplicação 1530. Referência agora o FIGO. 16A, na brevevista geral, uma modalidade de um método para fornecer umadisposição desejada 1520 da exposição da máquina de cliente10 é mostrado. Em etapa 1610, e em etapa 1615, a disposição1520 da exposição é armazenada no elemento de armazenamento1525, e a disposição 1520 da exposição é associada com ocliente 1505. Em etapa 1620, a janela que processa omecanismo 1550 alcança a disposição 1520 da exposição doelemento de armazenamento 225 para obter a informaçãodesejada da disposição da exposição para a máquina decliente 10. Em etapa 1625, a janela que processa omecanismo 1550 intercepta as mensagens 1540 a uma janela1535 indicada em uma máquina de cliente 10 por umaaplicação 1530. Em etapa 1630, a janela que processa omecanismo 1550 modifica a mensagem 1540 para fornecer ajanela 1535 na máquina de cliente 10 baseada na disposiçãodesejada 1520 da exposição para a máquina de cliente 10. Emetapa 1635, a janela 1535 é indicada na máquina de cliente10 baseada na mensagem modificada 1540. Como tal, aaparência e o comportamento da janela 235 são traduzidos ae baseados na disposição 152 0 da exposição. Em um detalhemais adicional, em etapa 1610 do método, a disposiçãodesejada 120 da exposição para o cliente é fornecida. Emuma modalidade, a disposição 120 da exposição é comunicadada máquina de cliente 10 à máquina remota 30. Para oexemplo, a máquina de cliente 10 estabelece uma sessão daconexão ou de comunicação com a máquina remota 30. Emalguns casos, a máquina remota 30 pede a disposição 1520 daexposição da máquina de cliente 10, e o cliente 1505comunica a disposição 1520 da exposição em resposta aopedido. Em uma outra modalidade, a disposição 152 0 daexposição é comunicada através do mecanismo 1545 do iníciode uma sessão da sessão durante um processo do início deuma sessão ou de autenticação, e em algumas modalidades, emcima de um processo do re-início de uma sessão ou do re-authentication. Em uma modalidade, a disposição 1520 daexposição é armazenada em uma base de dados e perguntadapela máquina de cliente 10 ou pela máquina remota 30 paraobter a disposição 1520 da exposição. Em outrasmodalidades, a disposição 1520 da exposição é transferida,pela máquina de cliente 10 ou pela máquina remota 30 de umservidor de rede, um Web site, um servidor de aplicações,uma outra máquina remota 30' ou através do Internet. Emumas modalidades mais adicionais, um usuário podeconfigurar a disposição 1520 da exposição com um programa,uma aplicação, ou uma ferramenta, e armazena a disposição1520 da exposição em uma máquina de cliente 10, na máquinade cliente remota 10. da máquina 30, ou outro. Em etapa1615, a disposição 1520 da exposição é armazenada noelemento de armazenamento 1525, e associada com a máquinade cliente 10. Em algumas modalidades, a máquina remota 30recebe a disposição 1520 da exposição da máquina de cliente10 e armazena a disposição 1520 da exposição no elemento dearmazenamento 1525. Em uma modalidade, a máquina remota 30armazena a disposição 152 0 da exposição como um arquivo dedados global traçados na máquina remota 3 0 acessível porumas ou várias aplicações 1530. Em uma outra modalidade amáquina remota 30 armazena a disposição 1520 da exposição auma outra máquina de cliente 10 acessível ao telecontrolemáquina 30, como através da rede 1504. Em algumasmodalidades, a máquina de cliente 10 armazena a disposição1520 da exposição a um elemento de armazenamento 1525 namáquina remota 30, a um elemento de armazenamento 1525 namáquina de cliente 10, ou a um elemento de armazenamento1525 acessível através da rede 1504 ou através do Internet.A disposição 1520 da exposição pode ser armazenada aoelemento de armazenamento 1525 em todo o formulárioapropriado ao elemento de armazenamento 1525, e pode serconvertida, transformado, alterado, traduzido ou de outramaneira processado para o armazenamento no elemento dearmazenamento 1525. Por exemplo, em uma modalidade, adisposição 152 0 da exposição pode compreender dados, taiscomo uma lima, na máquina de cliente 10 transmitida atravésdos pacotes da rede à máquina remota 30, e traduzida entãoem um arquivo de dados global traçados na máquina remota30. Em uma outra modalidade, a disposição 1520 da exposiçãoé armazenada em todo o tipo e/ou formulário da base dedados 1525, tal como uma base de dados relacionai. Emoutras modalidades, a disposição 1520 da exposição éarmazenada no armazenamento 152 5 memórias de inclusão. Porexemplo, a disposição 1520 da exposição pode compreender ouser representada por qualquer tipo de objeto, por estruturade dados, ou por parcela de memória na máquina de cliente10 e/ou na máquina remota 30.
A disposição 1520 da exposição pode ser associada coma máquina de cliente 10 por todos os meios e/ou mecanismosapropriados. Em uma modalidade, o nome, ou qualquer parceladisso, do arquivo de dados global traçados podemidentificar a máquina de cliente 10. Em uma outramodalidade, qualquer parcela de índice do arquivo de dadosglobal traçados pode identificar a máquina de cliente 10.Em modalidades adicionais, a máquina de cliente 10 ou amáquina remota 3 0 podem usar qualquer tipo de objeto, deestrutura de dados, de processo, ou de outros elementos namemória para associar a disposição 1520 da exposição com amáquina de cliente 10. Em outras modalidades, a máquina decliente 10 ou a máquina remota 3 0 podem usar parcelas dostipos do elemento de armazenamento 1525 ou outro dearmazenamento, tais como uma outra lima, para associar adisposição 1520 da exposição com o cliente. A janela queprocessa o mecanismo 1550, em etapa 1620 do métodoilustrativo 300, alcança a disposição 1520 da exposição doelemento de armazenamento 1525 para obter a informaçãodesejada da disposição da exposição para a máquina decliente 10. Em uma modalidade, as instruções executáveis doprocedimento da janela usado pela janela que processa omecanismo 1550 compreendem instruções para carregar, lido,ou adquirem de outra maneira a disposição 152 0 daexposição. Por exemplo, a janela que processa o mecanismo1550 pode executar qualquer tipo e/ou os formulários doentrada/saída da lima, isto é, arquivam I/O, operações paraler um arquivo de dados global traçados que tem adisposição 1520 da exposição. Em uma outra modalidade, asinstruções da relação de programação de suspensão comgancho da aplicação (API) para a janela que processa omecanismo 1550 fornecem instruções obtendo a disposição1520 da exposição. Em uma outra modalidade, a aplicação1530 lê ou alcança a disposição 1520 da exposição, porexemplo, em cima da execução ou começa-a acima. Em algumasmodalidades, a aplicação 1530 pode ser executada duranteuma sessão, tal como um usuário ou uma sessão remota. Emuma modalidade, o arquivo de dados global traçados 1525pode somente ser acessível por uma aplicação 1530 associadacom ou disponível através da sessão remota. Em umasmodalidades mais adicionais, o acesso ao arquivo de dadosglobal traçados pode ter o acesso fechado por um mutex oupor um semaphore, que sejam globais para a sessão remota.Um ordinariamente hábil na arte reconhecerá e apreciará quetodo o tipo e/ou formulário do travamento o mecanismo podeser usado para controlar o acesso o elemento dearmazenamento 1525, tal como um arquivo de dados globaltraçados. Em etapa 1625, a janela que processa o mecanismo1550 intercepta as mensagens 1540 a uma janela 1535indicada em uma máquina de cliente 10 por uma aplicação1530. Em uma modalidade, em cima de obter a disposição 1520da exposição um mecanismo de suspensão com gancho éintroduzido na máquina remota 30 ou na aplicação 1530 namáquina remota 30, que engancha umas ou várias relações deprogramação da aplicação da criação da janela (APIs) , comopor exemplo, um tipo da janela da criação de API em umambiente baseado WINDOWS. Em algumas modalidades, a janelaque processa o mecanismo 1550 intercepta todas as mensagens1540 a janelas 1535 da aplicação 1530. Etn outrasmodalidades, a janela que processa o mecanismo 1550intercepta as mensagens 1540 de um determinadoidentificador ou nome de mensagem. Em uma modalidade, amensagem 240 pode ter os argumentos, os parâmetros ou osvalores que são usados pela janela que processa o mecanismo1550 para determinar que a mensagem 1540 deve serinterceptada. Em modalidades adicionais, a janela queprocessa o mecanismo 1550 intercepta as mensagens 1540 aalgumas das janelas 1535 da aplicação 1530, e em umasmodalidades mais adicionais, simplesmente para uma parcelados tipos de mensagens 24 0 se comunicaram a estas janelas1535. Em contudo uma outra modalidade, a janela queprocessa o mecanismo 1550 é configurável, por exemplo, porum usuário, selecionar as mensagens 1540, pelo nome, tipo,ou de outra maneira, para ser interceptado. Em algumasmodalidades, a janela que processa o mecanismo 1550intercepta as mensagens 1540 comunicadas a ou pretendidaspara uma janela top-level 1535 da aplicação 1530. Em outrasmodalidades, a janela que processa o mecanismo 1550 podeinterceptar todo o nível da janela 1535, ou somentedeterminados níveis das janelas 1535 em uma hierarquia dasjanelas 1535. Por exemplo, a janela que processa omecanismo 1550 pode ignorar todas as janelas emergentes dodiálogo de uma segunda janela do nível indicada sobre ou nafrente de uma janela top-level 1535. Em uma modalidade, ajanela que processa o mecanismo 1550 pode interceptar umamensagem 1540 mas passar a mensagem 1540 completamente oucomunicar a mensagem 154 0 ao original ou ao procedimentosubstituído da janela. Em algumas modalidades, a janela queprocessa o mecanismo 1550 ignora determinadas mensagens1540. Em uma outra modalidade, o procedimento da janela dajanela que processa o mecanismo 1550 igualmente inclui afuncionalidade e as operações do procedimento substituídoda janela. Como tal, a janela que processa o mecanismo 1550pode interceptar uma mensagem 1540 e ter o procedimentosubstituído da janela ou o procedimento da janelaenganchado no processo da aplicação 1540 a mensagem 1540.
Em etapa 1630, a janela que processa o mecanismo 1550modifica a mensagem 1540 para fornecer a janela 1535 namáquina de cliente 10 baseada na disposição desejada 1520da exposição para a máquina de cliente 10. Em algumasmodalidades, a janela que processa o mecanismo 1550examina, inspeciona, analisa, ou processa de outra maneiratodos os valores, argumentos, ou parâmetros da mensagem1540 em comparação com a disposição 1520 da exposição paraa máquina de cliente 10 que indica a aplicação 1530.Baseado na comparação, a janela que processa o mecanismo1550 pode modificar, ajusta, edita, muda, altera-se,substitui-se, traduz-se ou ajusta-se de outra maneira ouforneça valores, argumentos, e/ou parâmetros para amensagem 154 0 que fornecerá o comportamento, a aparência eos atributos desejados da janela 235 como indicados ou seráindicada pela aplicação 1530 na máquina de cliente 10 deacordo com a disposição 1520 da exposição. Por exemplo, osvalores e/ou os parâmetros da mensagem 1540 podem indicarum tamanho, a posição, a posição, a definição ou os outrosatributos da janela 1535. Estas características podem serbaseadas em um ambiente da exposição diferente do que comoespecific na disposição 1520 da exposição. Como tal, emalgumas modalidades, a janela que processa o mecanismo 1550pode modificar o tamanho, a posição, a posição, a definiçãoou os outros atributos da mensagem 1540 para uma exposição1522a-1522n especific na disposição 1520 da exposição. Poro exemplo mais adicional, e a referência agora o FIGO. 16B,a janela que processa o mecanismo 1550 pode interceptar emodificar uma mensagem 154 0 identificada como uma doseguinte: 1) WM_GETMAXMININFO, 2) WM_WINDOWPOSCHANGING, 3)WM_WINDOWPOSCHANGED, e 4) WM_DISPLAYCHANGE. Na etapailustrativa 1630a, porque em uma mensagem 1540 interceptadae identificada como um WM_GETMINMAXINFO, a janela queprocessa o mecanismo 1550 analisa a posição da aplicação1530, isto é, uma janela top-level 1535, relativo a umas ouvárias exposições 1522a-1522n da disposição 1520 daexposição, e determina qual das exposições 1522a-1522n aaplicação 1530 deve ser maximizada. A janela que processa omecanismo 1550 modifica a mensagem 1540 para fornecer osvalores que correspondem e traduzidos a definição baseadana disposição desejada 1520 da exposição. Por exemplo, umamáquina remota 30 pode fornecer a definição da janela parauma única sessão de monitor, e a janela que processa omecanismo 1550 traduz a definição ao ambiente múltiplo daexposição fornecido através da disposição 1520 daexposição. Como tal, esta técnica permite a aplicação 1530de maximizar a uma posição desejada de acordo com adisposição 1520 da exposição, em vez da única sessão demonitor.
Na etapa ilustrativa 1630b, porque em uma mensagem1540 interceptada e identificada como WM_WINDOWPOSCHANGING,a janela que processa o mecanismo 1550 determina se ajanela 1535 está no estado maximizado, e em casoafirmativo, a mensagem 1540 está modificada para ajustar abandeira da janela a um estilo do movimento do No. dajanela, ou para reparar de outra maneira a posição ou aposição da janela 1535, ou para não permitir a posição dajanela 1535 à mudança. Como tal, no estado maximizado umusuário não pode poder mover a janela 1535. Esta técnicapermite a aplicação 1530, ou uma janela 1535 da aplicação1530 a ser maximizada a um jogo ou a uma posição fixa emuma exposição 1522a-1522n especific pela disposição 1520 daexposição. Em algumas modalidades, ou em resposta àmensagem 1540 de WM_WINDOWPOSCHANGING ou de outra maneira,a janela que processa o mecanismo 1550 determina a janela1535 não está no estado maximizado, e modifica a mensagem1540 para remover o estilo do movimento do No., porexemplo, o window' a posição de s é reparada já não, ou ade outra maneira permita que a posição da janela 1535 sejamovida. Na etapa ilustrativa 163 0c, porque em uma mensagem1540 interceptada e identificada como WM_WINDOWPOSCHANGED,a janela que processa o mecanismo 1550 compara a posição oua posição da janela 1535 à disposição 1520 da exposição ese a janela 1535 deve ser rendida fora da área da tela oude trabalho de indique 1522a-1522n, a seguir a posição ou aposição da janela 1535 são mudadas para ser rendidas pelomenos em uma parcela da área da tela ou de trabalho daexposição 1522a-1522n. Esta técnica permite o usuário denão perder off-screen a aplicação 1530 ou a janela 1535 daaplicação 1530 a uma posição. Na etapa ilustrativa 1630d,porque em uma mensagem 1540 interceptada e identificadacomo WM_DISPLAYCHANGED, a janela que processa o mecanismo1550 suspende a passagem das mensagens 154 0 até que um novoou em segundo a disposição 1520 da exposição esteja obtidoou fornecido para o cliente 1505. Em uma modalidade, ajanela que processa o mecanismo 1550 suspende oprocessamento de todas as mensagens 154 0. Em algumasmodalidades, a janela que processa o mecanismo 1550suspende as mensagens 154 0 que são interceptadas ecomunicadas ao procedimento substituído ou original dajanela. Em outras modalidades, a janela que processa omecanismo 1550 suspende mensagens para o procedimentosubstituído ou original da janela ao continuar a processaroutras mensagens 1540. Esta técnica permite uma máquina decliente 10 de mudar dinâmicamente a qualquer hora adisposição 1520 da exposição, por exemplo, durante aexecução de uma aplicação 1530. Embora as técnicas de sejamde s critas geralmente acima com relação à mensagem, umaordinariamente hábil na arte reconhecerá e apreciará quequalquer mensagem de todo o tipo e/ou formulário pode serusada. Além disso, a janela que processa o mecanismo 1550pode executar toda a lógica, função, operações ou réguasbaseadas na mensagem 1540 e/ou na disposição 1520 daexposição, e mesmo para o mesmo tipo da mensagem 154 0, podeexecutar uma operação ou uma função diferente para cadaexemplo da mensagem 154 0 dependendo das mudanças ao statusda disposição 1520 ou algum da exposição a eventos, acondições ou do ambiente 1500, 1501 ou 1502. Consultar devolta ao FIGO. 16A, em etapa 1635 do método 300, a janela1535 é indicado na máquina de cliente 10 baseada namensagem 154 0 processada através da janela que processa omecanismo 1550. Como tal, quando a janela que processa omecanismo 1550 modifica a mensagem 1540 baseada nadisposição 1520 da exposição, a janela 1535 é indicada namáquina de cliente 10 de acordo com a disposição 1520 daexposição. Em algumas modalidades, a janela que processa omecanismo 250 não modifica a mensagem 1540, econseqüentemente, a janela 154 0 é indicada na máquina decliente 10 de acordo com a mensagem unmodified 1540. Atécnica como ilustrada acima permite, por exemplo, em umamodalidade de um ambiente de computação usuário-baseado1500, uma aplicação 1530 que funciona na máquina remota 30para fornecer a exposição output à máquina de cliente 10que controla e dirige o comportamento, a aparência, e osatributos das janelas na saída da exposição em toda amaneira desejada e especific pela disposição 1520 daexposição, que não pode corresponder à disposição física daexposição da máquina de cliente 10. Em um outro aspecto,embora as técnicas descritas nisto sejam descritasgeralmente com um sistema de gestão da janela do sistema deexploração de WINDOWS, um ordinariamente hábil na artereconhecerá e apreciará que as técnicas descritas nistopodem ser praticadas com todo o tipo e/ou formulário dogerente ou o sistema de gestão de janela, o tal qualquertipo e/ou o formulário de gerentes de janelas do x,incluindo todo o costume ou gerente de janela baseadoabrir-fonte que funcionam em qualquer tipo de sistema deexploração. Referência agora o FIGO. 16C, estas técnicaspode ser praticado durante o re-connection, orestabelecimento ou o re-authentication de toda a sessão decomunicação ou de sessão de usuário, por exemplo uma sessãoremota da exposição entre a máquina de cliente 10 e amáquina remota 30. Em uma modalidade, o mecanismo 154 5 doinicio de uma sessão da sessão como ilustrado na máquinaremota 30 dos figos. 15A e 15B podem incluir a janela queprocessam o mecanismo 1550, ou qualquer parcela disso. Nabreve vista geral do método 350, o mecanismo 1545 do iníciode uma sessão da sessão, em etapa 1652, alcança ou obtém adisposição 1520 da exposição do elemento de armazenamento1525. Em etapa 1654, pode haver uma desconexão e umreconexão processados pelo mecanismo 1545 do início de umasessão da sessão. Em cima de restabelecer e/ou de re-authenticating a sessão, o mecanismo do início de umasessão da sessão, em etapa 1656, compara uma posição de umajanela 1535 ao client' a disposição 1520 da exposição de s,e em etapa 1658, modifica a janela 235 para indicar namáquina de cliente 10 baseada no client' disposição 1520 daexposição de s. Em etapa ilustrativa 1652, o mecanismo 1545do início de uma sessão da sessão obtém a informação nadisposição 1520 da exposição por todos os meios e/oumecanismos apropriados. Por exemplo, a janela que processao mecanismo 1550 incluiu em ou usado pelo mecanismo 1545 doinício de uma sessão da sessão pode ter instruçõesexecutáveis, tais como operações do 1/0 da lima, paraalcançar um arquivo de dados global traçados 1525. Em umaoutra modalidade, o mecanismo 1545 do início de uma sessãoda sessão pode carregar as bibliotecas dinâmicamente Iigque carregam, lêem ou alcançam de outra maneira o elementode armazenamento 225 que tem a informação da disposição daexposição. Em uma modalidade, como parte de estabelecer oude restabelecer a sessão, o mecanismo 1545 do início de umasessão da sessão pode obter disposição 1520 da exposição docliente 1520. Por exemplo, o mecanismo 1545 do início deuma sessão da sessão pede a disposição 1520 da exposição damáquina de cliente 10 junto com todas as credenciais daidentificação ou da autenticação. Em etapa ilustrativa1654, qualquer tipo de desconexão ou o rompimento a umasessão entre a máquina de cliente 10 e a máquina remota 30podem ocorrer, e qualquer tipo de reconexão ou derestabelecimento da sessão pode ser facilitado através domecanismo 1545 do início de uma sessão da sessão. Em algunscasos, um usuário pode causar uma desconexão ou umrompimento, provisória ou de outra maneira, a uma sessãoentre a máquina de cliente 10 e a máquina remota 30 devidoàs mudanças do exame no client' ambiente da exposição de sou porque o usuário se transporta a uma outra máquina decliente 10. Em um caso, o usuário transporta-se de umaprimeira máquina de cliente 10a, tal como um computador dotrabalho, a uma segunda máquina de cliente 10b, tal como umcomputador home. A máquina remota 30 pode manter a mesmasessão de usuário entre os dispositivos de computação 100a-110b mas a disposição 1520 da exposição pode ter mudado. Emum outro caso, o usuário e/ou a máquina de cliente 10 podematravessar os segmentos da rede ou os pontos de acesso darede que fazem com que as mudanças no endereço de rede ouno nome de anfitrião, por exemplo, endereço do InternetProtocol (IP) , da máquina de cliente 10 ou de causas amáquina de cliente 10 desconectem. A máquina de cliente 10pode reconectar, manualmente ou automaticamente, à rede1504, como através do agente 1508 do cliente. Como tal, omecanismo 1545 do início de uma sessão da sessão podefacilitar ou ser usado para facilitar o reconexão. Em etapa1656 do método 350, o mecanismo 1545 do início de umasessão da sessão compara a posição ou a posição de umajanela 1535 de uma aplicação 1530 com relação ao disposiçãodesejada 1520 da exposição. Em algumas modalidades, omecanismo 1545 do início de uma sessão da sessão interceptauma mensagem 1540 a uma janela 1535, e examina, inspecionaou analisa qualquer parcela da mensagem 154 0, tal como umvalor ou um parâmetro. Em uma modalidade, o mecanismo 154 5do início de uma sessão da sessão pergunta, adquire ouobtém a posição atual ou a posição de umas ou váriasjanelas 1535 da aplicação 1530 através de uma relação deprogramação da aplicação (API). Em uma outra modalidade,nos pedidos do mecanismo 154 5 do início de uma sessão dasessão da aplicação 153 0, na posição ou na posição de algumdo application' janelas de s. 0 mecanismo 1545 do início deuma sessão da sessão compara a posição, a posição, otamanho, e os todos os outros atributos da janela 1535 aqualquer informação na disposição 1520 da exposição.
Em etapa 1658, o mecanismo 1545 do início de umasessão da sessão pode modificar a janela 1535 baseada nadisposição desejada 152 0 da exposição. Da comparação dainformação sobre a janela 153 5 à informação da disposição1520 da exposição, o mecanismo 1545 do início de uma sessãoda sessão, em algumas modalidades, modifica a janela 1535para indicar na máquina de cliente 10 através de umaexposição 1522a-1522n identificada na disposição 1520 daexposição em uma maneira desejada. Em uma modalidade,através da funcionalidade da janela que processa omecanismo 1550 personificado dentro ou conectado com omecanismo 1545 do início de uma sessão da sessão, umamensagem 1540 a uma janela 1535 pode ser interceptada emodificado de acordo com as operações descritas nisto. Emuma outra modalidade, o mecanismo 1545 do início de umasessão da sessão pode modificar umas ou várias janelas 1535da aplicação 1530 através de toda a relação de programaçãoda aplicação (API) para modificar tais janelas 1535. astécnicas descritas pelo método 350 permitem sessões decliente de ser desconectadas e reconectado e têm aexposição das janelas ajustado conformemente a todos osambientes novos ou mudados da exposição da máquina decliente 10, disposições novas ou mudadas 1520 da exposiçãoda máquina de cliente 10, ou mudanças de uma máquina decliente lOá uma outra máquina de cliente 10b. Em um outroaspecto, dinâmicamente mudar uma disposição 1520 daexposição para uma máquina de cliente 10 é descrita.Referência agora o FIGO. 16D, as técnicas descritas podeser praticado para uma mudança a uma disposição 1520 daexposição que ocorra durante a execução de uma aplicação1530. Na breve vista geral do método ilustrativo 360, emetapa 1662, um client' a disposição 1520 da exposição de sé mudada. Em etapa 1664, a janela que processa o mecanismo350 suspender o processamento de mensagem da janela quandoo client' a disposição 1520 da exposição de s é mudada. Emetapa 1666, em uma disposição atualizado ou segunda 1520'da exposição; é obtido pela janela que processa o mecanismo1550, e em etapa 1668, na janela que processa os resumos domecanismo 1550 que interceptam e que modificam as mensagens1540 às janelas 1535 baseadas na segunda disposição 1520'da exposição;. Em um detalhe mais adicional, em etapa 1662,a disposição 1520 da exposição pode ser mudada a qualquerhora e para toda a razão. Em uma modalidade, o ambiente daexposição para a máquina de cliente 10 pode mudar e adisposição 1520 da exposição pode ser atualizado refletir oambiente mudado da exposição. Por exemplo, um outrodispositivo de exposição 124 pode ser conectado à máquinade cliente 10. Em uma outra modalidade, um usuário damáquina de cliente 10 pode fazer ajustes, actualizar ou deoutra maneira mudar a disposição 1520 da exposição paraserir o usuário desejo de s para um comportamento eaparência das aplicações 153 0 e a exposição das janelas1535 da aplicação 1530 na máquina de cliente 10. Em contudouma modalidade mais adicional, uma primeira sessão podeestar em uma primeira máquina de cliente 10 com umaprimeira disposição 1520 da exposição, e o usuário comuta auma segunda sessão ou mantém a primeira sessão em umasegunda máquina de cliente 10' com uma segunda oudisposição atualizado 1520' da exposição,·. Em etapa 1665, ométodo suspende as mensagens de intercepção e de alteração1540 para as janelas 1535 de uma aplicação 1530 em cima danotificação de uma mudança à disposição 1520 da exposição.
Em uma modalidade, a janela que processa o mecanismo 1550intercepta uma mensagem 154 0, tal como a mensagem deWM_DISPLAYCHANGE, indicando uma mudança em todo o atributoou característico, por exemplo, a definição, do ambiente daexposição. Em uma outra modalidade, a máquina de cliente 10comunica uma observação à máquina remota 30, a janela queprocessa o mecanismo 1550 ou o mecanismo 1545 do início deuma sessão da sessão que indica uma mudança ocorreu ou estáa ponto de ocorrer à disposição 1520 da exposição. Emcontudo uma outra modalidade, a aplicação 153 0 podemcompreender um mecanismo da interface de utilizador paraque um usuário indique uma mudança ao ambiente daexposição, ou mande a aplicação 1530 suspender oprocessamento de mensagens da janela de acordo com adisposição 1520 da exposição. A janela que processa omecanismo 1550 pode suspender o processamento das mensagens240 para todas as aplicações 230, uma parcela dasaplicações 230, ou para uma parcela de janelas 235 de uma,alguns, ou toda a aplicação 230. Em uma modalidade, ajanela que processa o mecanismo 1550 enfileira todas asmensagens 240 recebidas até que a janela que processa omecanismo 1550 obtenha outra disposição 1520 da exposição.
Em uma outra modalidade, a janela que processa o mecanismo1550 suspende somente o processamento das mensagens dajanela a ser modificadas de acordo com a disposição 1520 daexposição, e continua a passar as mensagens 240 a não sermodificadas ao original ou ao procedimento substituído dajanela. Em etapa 1666 do método, de uma disposiçãoatualizado ou segunda 1520' da exposição; é obtido parausar-se para o processamento de mensagem da janela. Adisposição 1520' atualizado ou em segundo da exposição;pode ser fornecido por todos os meios e/ou mecanismosapropriados. Em uma modalidade, o atualizado ou indica emsegundo a disposição 1520' é armazenado com a primeiradisposição 1520 da exposição no elemento de armazenamento225. Em uma outra modalidade, na disposição 1520'atualizado ou em segundo da exposição; é armazenado comouma versão atualizado da primeira disposição 1520 daexposição, e em umas modalidades mais adicionais, a segundadisposição 1520' da exposição; pode substituir a primeiradisposição 152 0 da exposição no elemento de armazenamento225. Em uma modalidade, a máquina de cliente 10 comunica oatualizado ou indica em segundo a disposição 1520' àmáquina remota 30 ou às lojas a segunda disposição 1520' daexposição; ao elemento de armazenamento 225 na máquinaremota 30. Em algumas modalidades, a máquina de cliente 10através de um reconexão ou o restabelecimento à máquinaremota 3 0 podem fornecer uma disposição atualizado 1520 daexposição. Em uma modalidade, a máquina de cliente 10comunica uma disposição inalterada 1520 da exposição ou umadisposição 152 0 da exposição à máquina remota 3 0 que amáquina remota 3 0 tem armazenado já no elemento dearmazenamento 225. Em contudo outras modalidades, a máquinaremota 3 0 ou a máquina de cliente 10 podem obter a segundadisposição 1520' da exposição; de uma outra máquina decliente 10 na rede 204, tais como a transferência dasegunda disposição 1520' da exposição; dê forma a umamáquina remota 30. Como descrito acima em relação ao métodoilustrativo 300, a janela que processa o mecanismo 350 podeobter a disposição 1520 da exposição do elemento dearmazenamento 225 por uma variedade de meios e/oumecanismos. Em etapa 1668 do método 360, a janela queprocessa os resumos do mecanismo 1550 que interceptam e quemodificam as mensagens 240 às janelas 235 baseou na segundadisposição 1520 da exposição. Em uma modalidade, se ajanela que processa o mecanismo 1550 enfileirou quaisquermensagens 240, a janela que processa o mecanismo 1550analisa e modifica as mensagens enfileiradas 240 baseadasna segunda disposição 1520' da exposição;. Se não, a janelaque processa o mecanismo 1550 usa a segunda disposição1520' da exposição; para modificar todas as mensagens 240interceptou após ter obtido a segunda disposição 1520' daexposição;. Usando as técnicas descritas nisto, um ambienteda exposição do cliente e um client' a disposição daexposição de s pode dinâmicamente ser mudada durante aexecução de umas ou várias aplicações, e a exposição dasjanelas para a aplicação aparece e comporta-se de acordocom as mudanças à disposição da exposição. Por exemplo, umoutro dispositivo de exposição pode ser adicionado aocliente, e uma aplicação pode ser minimizada durante umamudança na disposição da exposição. Quando a disposição daexposição é atualizado, o usuário pode maximizar aaplicação e mandar a aplicação aparecer na exposiçãoapropriada mesmo que o ambiente da exposição mude quando aaplicação foi minimizada. Em virtude das funções, asestruturas, e as operações descritas acima, os sistemas eos métodos são fornecidos para controlar e dirigir aaparência, o comportamento e os atributos das janelas deuma aplicação em uma maneira flexível para virtualizar,simular ou fornecer um ambiente múltiplo da exposição semrestringindo ou limitando a configuração da exposição dolado de cliente. Por exemplo, a disposição da exposição docliente não pode ser limitada para configurar o monitorfísico do cliente como a exposição preliminar, isto é comoo monitor leftmost superior na configuração da disposiçãoda exposição. Os sistemas e os métodos descritos podem serpraticados em um ambiente de computação usuário-baseado oufino-cliente baseado, com os clientes que têm dispositivosde exposição múltiplos, ou com os clientes que têm um únicodispositivo de exposição. Adicionalmente, a configuração deuma disposição da exposição que não seja restrita oulimitada ao ambiente físico da exposição do cliente éfornecida. 0 ambiente da exposição do cliente pode estenderpara incluir exposições virtuais adicionais, assim que se ocliente tem dois dispositivos de exposição, três ou maisexposições podem ser virtualizadas ou simulado para ocliente. Uma única configuração da exposição para um únicodispositivo de exposição pode ser executada ao ainda mudara aparência e o comportamento das janelas baseadas em umadisposição desejada ou personalizada da exposição. Umcliente ou um usuário podem ganhar a funcionalidade, osbenefícios, e as vantagens de um ambiente múltiplo daexposição sem ter dispositivos de exposição múltiplos, outer todos os dispositivos de exposição desejados.
Em uma modalidade, a sustentação do multi-monitorfornece o aumento das janelas para encher um único monitorum pouco do que a tela cheia e centrar-se dos diálogos emum monitor um pouco do que em uma tela. Em uma outramodalidade o componente da gerência de sessão, o componentede serviço da máquina virtual, e um componente do gancho domulti-monitor que executa em um ambiente de computaçãofornecido por uma máquina virtual fornecem junto asustentação do multi-monitor em um ambiente da máquinavirtual. Em ainda uma outra modalidade, um componente dogancho do multi-monitor e a o componente que adquire dadosda geometria do cliente fornece a sustentação do multi-monitor em um ambiente da máquina virtual. Em umamodalidade, o componente 1300reads da gerência de sessão aconfiguração do monitor para a máquina de cliente 10 de umtraço da lima do gancho do multi-monitor. Em algumasmodalidades onde um usuário da máquina de cliente 10estabelece uma conexão a um usuário da apresentação queexecuta em uma máquina da execução em que a máquina virtualfornece o acesso a um ambiente de computação, o usuário daapresentação gera a lima do gancho do multi-monitor quetraça em cima do estabelecimento da conexão pelo usuário.Em uma modalidade, o componente 13OOsends da gerência desessão uma mensagem ao componente de serviço da máquinavirtual que contem a disposição do monitor para o usuário.
Em algumas modalidades, a mensagem for emitida quando ocomponente 1300detects da gerência de sessão um reconexãodo usuário, de modo que as sobras da disposição do monitorsincronizadas com a máquina de cliente 10. O componente deserviço da máquina virtual recebe as mensagens dadisposição do monitor fornecidas pelo componente 900 dagerência de sessão. Em algumas modalidades, o componente deserviço da máquina virtual cria uma lima que traça noambiente de computação e actualiza a lima para incluirdados da disposição do monitor. Em outras modalidades, ocomponente de serviço da máquina virtual igualmente criauma soma de controle para os dados que são usados pelocomponente do gancho do multi-monitor para se assegurar deque leia corretamente os dados da disposição. Em uma destasmodalidades, uma soma de controle é usada um pouco do queum esquema de travamento para sincronizar o acesso aosdados da disposição. Nesta modalidade, a soma de controlenão causa a obstrução entre os processos que lêem os dados.Os dados da disposição são atualizados infrequêntemente epodem ser pequenos no tamanho, assim que o cálculo da somade controle pode terminar rapidamente. Em outras destasmodalidades, os processos do leitor conservam a soma decontrole, lêem os dados e voltam a calcular a soma decontrole. Se a soma de controle calculada não combina asoma de controle conservada indica que os dados eramatualizados quando se lia e o processo é repetido. Porqueos dados são geralmente somente atualizados quando ousuário reconecta a um outro cliente e dado o curto períodode tempo exigido para ler os dados, é improvável que umleitor teria que reler mais de uma vez os dados para umamudança particular. Em algumas modalidades, o componente deserviço da máquina virtual usa um ajuste armazenado daexposição do defeito para a máquina de cliente 10, odefeito armazenado selecionado para assegurar-se de que oambiente de computação tenha ajustes válidos da exposiçãoem cima da iniciação da sessão. Em alguns ambientes, umcomponente do gancho do muiti-monitor executa em umambiente de computação fornecido por uma máquina virtual.Em uma destas modalidades, o componente do gancho do multi-monitor recebe um evento para cada janela criadaimediatamente antes que a janela é criada, incluindo umpunho de janela para a janela que está sendo criada. 0componente do gancho do multi-monitor pode identificar umtipo da janela da janela e determiná-lo enganchar mensagensda janela para a janela. Em algumas modalidades, as janelasque têm a janela datilografam a indicação de que a janelapode ser maximizada ou que a janela é um diálogo estaráenganchada. As janelas enganchadas podem ser adicionadas auma disposição que contenha o punho de janela e umprocedimento original da janela. Em outras modalidades, ocomponente do gancho do multi-monitor recebe um evento queindica que uma janela está a ponto de ser destruído. Em umadestas modalidades, o componente do gancho do multi-monitorremove a entrada na disposição do gancho associada com ajanela. Em algumas modalidades, o componente do gancho domulti-monitor recebe uma identificação de uma janela depoisque a janela é criada e antes que a janela esteja indicada.
Em uma destas modalidades, o componente do gancho do multi-monitor verific a posição do diálogo e se mede monitoresmúltiplos, o componente multi- do gancho do monitorreposiciona a janela ao centro do monitor que contem amaioria do diálogo, ou do primeiro monitor que contem odiálogo se a área dos diálogos é ingualmente rachada entredois monitores. Em outras modalidades, o componente multi-do gancho do monitor recebe um evento quando uma janelaestá a ponto de ser maximizado. O componente do gancho domulti-monitor assegura-se de que quando a janela émaximizada do estado minimizado esteja posicionado sobre omonitor correto. Em algumas modalidades, o componente dogancho do multi-monitor recebe um evento quando uma janelaestá sendo maximizada. O componente do gancho do multi-monitor verific o estado da janela e, se a janela éminimizada, o componente do gancho do multi-monitorrecupera uma identificação de um monitor em que a janela éminimizada da disposição do gancho da janela. Se a janelanão é minimizada, o componente multi- do gancho do monitoridentifica o monitor que contem a maioria da janela. Senenhum monitor está encontrado, ou se o monitor não existe(como após um reconexão) o monitor 0 é usado. O componentedo gancho do multi-monitor então remove a origem e otamanho do monitor de sua informação conservada do monitore actualiza a estrutura de MINMAXINFO aguçado pelamensagem. Isto faz com que a janela maximize ao monitorespecific somente.
A máquina remota 3 0 pode determinar que recursoshospedaram pelo a exploração agrícola da máquina que contema máquina remota 3 0 está disponível a ser utilizado pelousuário de a máquina de cliente 10. Em uma modalidade, amáquina remota 3 0 consulta o usuário dados da autenticaçãopara fazer esta determinação. Em uma outra modalidade, amáquina remota 3 0 consulta a informação associada com umrecurso pedido perto o usuário para fazer a determinação. Amáquina remota 3 0 transmite informação que representa osrecursos disponíveis à máquina de cliente 10. Aautenticação de usuário executou pela máquina remota 3 0pode bastar para autorizar o uso de cada recurso hospedadoapresentou à máquina de cliente 10, embora tais recursospossam residir em uma outra máquina. Conformemente, nistomodalidade, quando a máquina de cliente 10 alcançar ou selança (isto é, novatos execução) de um dos recursoshospedados, entrada adicional de credenciais do usuárioperto o usuário será desnecessário autenticar o acesso aesse recurso. Assim, a a única entrada das credenciais dousuário pode serir para determinar o disponível recursos epara autorizar o acesso ou o lançamento de tais recursossem processo de autenticação do início de uma sessãoadicional, manual pelo usuário. O FIG. 17 descreve maisdetalhadamente um sistema para remotamente autenticar umcliente de uma máquina de cliente 10 a uma máquina remota30. Segundo as indicações de FIG. 17, o cliente a máquina10 inclui um módulo 1710 da autenticação em uma comunicaçãocom o a programa 1720 do f ino-cliente. O módulo 1710 daautenticação recebe o usuário as credenciais daautenticação previram as finalidades de autenticar umusuário a a máquina de cliente 10 0, a máquina remota 30, ouambos. Autenticação recebida as credenciais podem incluircombinações da usemame-senha, senha gráfica os dados, dadosderivaram-se dos símbolos tempo-baseados tais como a linhade SecurlD de símbolos manufaturado por RSA Segurança Inc.de Bedford, Massachusetts, desafio dados da resposta,informação dos smart card, e informação biométrica comoimpressões digitais, voiceprints, ou característicasfaciais. O módulo 1710 da autenticação pode use ascredenciais fornecidas da autenticação para autenticar ousuário ao máquina 100. Por exemplo, nos ambientes WINDOWS-based, o módulo 1710 da autenticação pode ser fornecidopelo MSGINA dinâmico-Iig biblioteca. Em outras modalidades,por exemplo, nos ambientes baseados no Unix, o módulo 1710da autenticação pode ser fornecido por Unix PluggableGerente da autenticação, usando o módulo do pam_krb. Emainda outras modalidades, o módulo 1710 da autenticaçãopode ser fornecido pelo comando do kinit de UNIX programa.
Na modalidade mostrada em FIG. 17, a máquina 100 igualmenteinclui um serviço de segurança 1712. Em algumasmodalidades, o módulo 1710 da autenticação e o serviço 1712da segurança é proporcionado como o mesmos dinâmico-Iigbiblioteca. O serviço de segurança 1712 proporcionaserviços da segurança aos módulos e aplicações na máquina100, incluindo o módulo 1710 da autenticação e a aplicação1720 do fino-cliente, tal como a autenticação à máquina 100e autenticação às máquinas remotas ou aos serviços de rede.Por exemplo, o serviço de segurança 1712, que pode ser oGSSAPI especific pelo Internet Grupo de trabalho daengenharia (IETF) ou o SSPI manufaturado por Microsoft Ocorporaçõ de Redmond, Washington, pode obter um bilhete doKerberos na resposta ao recibo das credenciais daautenticação de usuário e use este bilhete para obterbilhetes adicionais do Kerberos para autenticar o usuárioàs máquinas remotas ou serviços de rede, no pedido dosmódulos ou das aplicações na máquina 100. O serviço desegurança 1712 pode então gerar a utilização dos dados daautenticação de usuário estes bilhetes do Kerberos senecessário para a autenticação remota. Em uma modalidade, oserviço de segurança 1712 pode gerar a utilização dos dadosda autenticação de usuário serviço de autenticação externo,tal como um centro de distribuição chave em um ambiente doKerberos ou o diretório ativo em um ambiente Windows-based.O serviço de segurança 1712 fornece a autenticação deusuário gerada dados, por exemplo, bilhete do Kerberos eauthenticator associado do Kerberos, ao fino aplicação decliente 1720. A aplicação 1720 do fino-cliente transmite ousuário dados da autenticação a uma máquina remota 30 paraa autenticação remota do usuário. Assim, ao contrário dosúnicos mecanismos sign-on existentes para a computaçãousuário-baseada, usuário-forneceu credenciais daautenticação não são transmitidos sobre a rede 150 a umamáquina remota 30. Os dados da autenticação de usuáriogerados pela segurança o serviço 1712 é independente dométodo usado pelo usuário para autenticar a a máquina 100.Assim, por exemplo, um bilhete do Kerberos para o usuárioda máquina 100 são obtidos se o usuário usa uma combinaçãoda usemame-senha ou um a biométrico para autenticar àmáquina 100. Na modalidade mostrada em FIG. 17, a aplicação1720 do fino-cliente comunica-se com a máquina remota 30através de um protocolo do fino-cliente que tem um oucanais mais virtuais 1735. Nestas modalidades, a aplicaçãodo fino-cliente 1720 cargas um excitador e uns usos dacanal virtual ele emitir sobre e receber mensagens a canalvirtual da autenticação. Em algumas modalidades, a canalvirtual o excitador expor funções para abrir a canalvirtual e emitir dados sobre ele. A aplicação 1720 do fino-cliente passa uma estrutura de dados à máquina remota 30para a canal virtual 1735 quando a conexão do protocolo dofino-cliente é estabelecida, indicando à aplicação 1750 dofino-cliente do usuário-lado que a canal virtual daautenticação está disponível. Em uma modalidade, aestrutura de dados da canal virtual para a canal virtual daautenticação contem a informação da canal virtual e umarespresentação do tamanho do pacote que de dados o maior amáquina 100 pode aceitar de ou emitir à máquina remota 30sobre a canal virtual 1735. O tamanho de pacote dos dados éconfinado pelo tamanho máximo do cliente fino e por todasas limitações específicas da memória impor pela máquina decliente 10. Em uma modalidade particular, a estrutura dedados para a canal virtual da autenticação é definida como:struct _C2H do typedef { Encabeçamento de VD_C2H; UINT16CbMaxDataSize; } C2H, *PC2H; A aplicação 1750 do fino-cliente do usuário-lado indica à aplicação 1720 do fino-cliente sua intenção executar a autenticação usando a canalvirtual 1735 da autenticação abrindo a canal virtual eemitindo uma mensagem do pedido do ligamento na canal. Umavez que a canal virtual foi aberta, o excitador da canalvirtual na aplicação 1720 do fino-cliente, em umamodalidade, lê uma mensagem pedindo um emperramento dacanal virtual, emite uma mensagem na canal virtual queresponde ao pedido do ligamento; e lê um 11 commit" mensagemda canal. Em uma modalidade, a mensagem que pede umemperramento inclui os dados que especific a versão doprotocolo que é suportada. Em outras modalidades, a versãodo protocolo pode ser negociada entre a aplicação 1720 dofino-cliente e a aplicação 1750 do fino-cliente do usuário-Iado usando o pedido do ligamento e as mensagens deresposta do ligamento. 0 pedido do ligamento, a resposta doligamento, e o ligamento cometem mensagens da iniciaçãopermitem que a aplicação 1750 do fino-cliente do usuário-lado e a aplicação 1720 do fino-cliente conduzam um apertode mão de 3 maneiras iniciado pela aplicação 1750 do fino-cliente do usuário-lado, e negociam capacidades. Um apertode mão de 2 maneiras pode ser iniciado pela aplicação 1750do fino-cliente do usuário-lado em que o jogo atual decapacidades de canal virtual pode ser negociado usando umaperto de mão de 2 maneiras somente, mas um aperto de mãode 3 maneiras está suportado para reservar maisflexibilidade que pôde ser exigida por capacidades novas oupelos realces futuros às capacidades atuais. Por exemplo,em um aperto de mão de 3 maneiras, após ter recebido um "menu" das capacidades da aplicação 1750 do fino-cliente dolado de usuário, a aplicação 1720 do fino-cliente podeexibir uma preferência específica ou poderiapreferivelmente reconhecer um jogo inteiro das opções quepertencem a uma capacidade específica que deixa assim ofino-cliente que do usuário-lado a aplicação 1750 decide emuma opção específica. Em um aperto de mão de 2 maneiras aser iniciado pela aplicação 1720 do fino-cliente, aaplicação 1720 do fino-cliente não poderia exibir umapreferência específica porque não pôde ser suportada peloanfitrião. Depois da instalação da canal, o excitador dacanal virtual da aplicação 1720 do fino-cliente e daaplicação 1750 do fino-cliente do usuário-lado faz oseguinte em um laço até um " stop" mensagem ou um " error"a mensagem é recebida: recupere dados da autenticação doserviço de segurança 1712, 1712", fornecendo como aentradadados da autenticação emitidos pelo outro partidoatravés da canal virtual; e emita os dados recuperados daautenticação (eventualmente) na canal virtual em umamensagem de dados. Se a recuperação dos dados do serviço desegurança 1712, 17121 retornou um " STOP" a mensagem, entãosinaliza o batente e fecha a canal virtual da autenticação.
Em algumas modalidades o excitador da canal virtual poderestaurar-se em um " stop" sinal. Se a recuperação dosdados do serviço de segurança 1712, 1712' retornou um "CONTINUE" a mensagem, continua então. Se a recuperação dedados da autenticação do serviço de segurança 1712, 1712'retornou um " ERROR", sinalize então que um erro ocorreu epróximo a canal virtual da autenticação. Contanto que "stop" ou " error" não são sinalizados, o excitador da canalvirtual da aplicação 1720 do fino-cliente e a aplicação1750 do fino-cliente do usuário-lado está livre àsmensagens de dados da troca até o serviço de segurança1712, 1712' para de produzir os amortecedores de dados aser emitidos. Em algumas modalidades, o número de mensagenstrocadas pode ser limitado pelo excitador da canal virtual,pela aplicação 1750 do fino-cliente do lado de usuário, oupela canal virtual 1735. Em outras modalidades, noexcitador da canal virtual da aplicação 1720 do fino-cliente e nas mensagens de troca da aplicação 1750 do fino-cliente do usuário-lado seqüencialmente, isto é, duasmensagens não são emitidas em um sentido sem uma respostaao primeira que está sendo emitida no outro. Em uma ououtra modalidade, a troca da mensagem pode parar depois queuma mensagem foi emitida em um ou outro sentido. Em algumasmodalidades particulares, as mensagens de dados sãoemitidas sobre a canal virtual menos palavra dobrosignificativa (LSDW), menos palavra significativa (LSW),menos byte significativo (LSB) primeiramente. Em outrasmodalidades particulares, as mensagens de dados sãoalinhadas em um limite de byte e embaladas inteiramente namemória. Nestas modalidades, os campos de dados serãoalinhados na memória como escrito a ou para ler da canalvirtual. Algumas mensagens transmitidas na canal virtual daautenticação medem pacotes múltiplos da canal virtual. Parasuportar isto, cada mensagem deve ser precedida por umamensagem que especific o comprimento do comando transmitidoseguinte. Um exemplo de uma mensagem que possa ser usadapara especific o comprimento do comando seguinte é:PKT_CMDLEN do struct do typedef { Comprimento UINT3 2;
Comando UINT8; UINT8 FlagsBitMask; } PKT_CMDLEN,*PPKT_CMDLEN; Em algumas destas modalidades, PKT_CMDLENigualmente contem um número do comando para indicar quetipo de mensagem é seguir: #define CMD_BIND_REQUEST OxOO#define CMD BIND_RESPONSE OxOl #define CMD BIND COMMIT 0x02#define CMD_SSPI_DATA 0x03 Um pacote de PKT_CMDLEN quecontem Length=O indica que não mais dados seguirá (isto éum fim da canal lógica) . A aplicação 1750 do fino-clientedo usuário-lado passa os dados que da autenticação recebesobre a canal virtual da autenticação a seu serviço desegurança 1712'. Se o serviço de segurança 1712' dousuário-lado; pode verific os dados, ele gera um símbolo doacesso representar uma sessão do início de uma sessão parao usuário, permitindo que o usuário autentique à máquinaremota 3 0 sem submeter novamente credenciais daautenticação. Um símbolo do acesso é um objeto de dados queinclua, entre outras coisas, um identificador localmenteoriginal (LUID) para a sessão do início de uma sessão. Se oserviço de segurança 1712' do usuário-lado; não podeverific os dados, o usuário é alertado para submeternovamente credenciais da autenticação. Em algumasmodalidades, até o serviço de segurança 1712' do usuário-Iado; autentica o usuário, a única canal virtual sobre queo usuário pode se comunicar com a máquina remota 3 0 é acanal virtual da autenticação. Em algumas destasmodalidades, após a autenticação, as canais virtuais novassão iniciadas para uma comunicação. Em outras modalidades,somente uma canal virtual existe e pode somente ser usadapara comunicações autenticação-relacionadas até que ousuário esteja autenticado, e pode ser usada para outrascomunicações depois que o usuário é autenticado. Para asmodalidades em que a máquina remota 3 0 se opera sob ocontrole de um sistema de exploração de MICROSOFT WINDOWS,o símbolo do acesso gerou perto o serviço de segurança1712' do usuário-lado; é um símbolo da personificação quetenha somente direitas do início de uma sessão da rede.Isto é, o símbolo gerado do acesso não é- apropriado deusar-se para que as aplicações começar funcioneminterativamente, como é exigida no ambiente computarusuário-baseado WINDOWS. Para permitir que as aplicaçõesfuncionem interativamente, um símbolo preliminar do acessoé necessário que tem direitas interativas do início de umasessão. Em uma modalidade, o símbolo gerado do acesso émodificado para fornecer as direitas apropriadas. Em umaoutra modalidade, um símbolo novo é gerado para o usuário.
Para as modalidades em que o dispositivo de computação140 do usuário-lado se opera sob o controle de um sistemade exploração baseado no Unix, se o serviço de segurança1712' do usuário-lado; verific os dados que recebe sobre acanal virtual da autenticação da aplicação 1750 do fino-cliente do usuário-lado, fino-cliente da autenticação do.usuário-lado a aplicação 1750 concederá o acesso de usuárioaos recursos. Nestas modalidades, o serviço de segurança1712' do usuário-lado; não gera um símbolo do acesso. Emalgumas modalidades, depois que a máquina remota 30autenticou o usuário, a máquina remota 30 apresenta umaenumeração dos recursos disponíveis ao usuário. Nestasmodalidades, a máquina remota 30 pode criar uma página quedescreve uma exposição dos recursos, hospedada por umapluralidade de máquinas, disponível à máquina 100. Amáquina remota 30 pode então transmitir a página criada àmáquina 100 para a exposição e recebê-la da máquina 100, umpedido alcançar um dos recursos hospedados. Em algumasdestas modalidades, selecionada dos recursos disponíveishospedados por uma da pluralidade de máquinas é executadoentão sem exigindo o recibo mais adicional de dados daautenticação de usuário da máquina 100. Em algumas destasmodalidades, a máquina remota 30 inicia, em resposta àautenticação bem sucedida pelo usuário, uma conexão damáquina remota 3 0 a uma segunda máquina remota 30' qualestá hospedando um recurso disponível ao usuário. Nestasmodalidades, o recurso disponível é executado sobre aconexão. Em algumas modalidades, a conexão é uma canalvirtual. Em outras modalidades, a primeira máquina remota30 está hospedando selecionado dos recursos disponíveis. Emalgumas destas modalidades, a máquina remota 3 0 faz orecurso disponível ao usuário sobre a conexão existente. Emoutro destas modalidades, a máquina remota 30 faz o recursodisponível ao usuário sobre uma conexão nova. Em algumasdaquelas modalidades, a conexão nova compreende uma canalvirtual. Em algumas modalidades, uma pluralidade decomponentes é fornecida para autenticando um usuário damáquina de cliente 10 a uma máquina virtual em umtelecontrole máquina 30. Em uma destas modalidades, afuncionalidade é fornecida para a único processo Sign-OnKerberos-baseado entre a máquina de cliente 10 e a osistema de exploração do convidado forneceu pela máquinavirtual. Em algumas modalidades, um usuário que procuraalcançar um recurso forneceu por a a máquina virtualfornece tempos múltiplos das credenciais da autenticação adiferente entidades. Em uma destas modalidades, o usuário éautenticado por um agente do cliente na máquina de cliente10, por uma máquina remota 30, e por uma computação oambiente forneceu por uma máquina virtual na máquina remota30. Em algum destas modalidades, a única sustentação sign-on permitiria a autenticação do usuário às entidadesdiferentes com somente uma transmissão de credenciais daautenticação do usuário. Autenticação do usuário à máquinade cliente e à máquina remota 3 0 podem ser realizados comodescritos acima em relação a FIG. 17. Em algumasmodalidades, um componente da autenticação, uma GINA(gráfica Componente da identificação e da autenticação), ummódulo da autenticação no componente da gerência de sessãoe um módulo da autenticação para o virtual o componente deserviço da máquina é fornecido. Em uma modalidade, umbidi recional a canal virtual permite uma comunicação entreuma gerência do serviço componente na máquina remota 3 0 eem um componente de serviço da máquina virtual execução nosistema de exploração do convidado. Em uma modalidade, otelecontrole a máquina 30 inclui a única funcionalidadesign-on do cliente-lado e o virtual a máquina inclui aúnica funcionalidade sign-on do usuário-lado. Em aindaoutro a modalidade, o componente da gerência do serviçoexecuta uma autenticação o módulo e comunica-se com ummódulo da autenticação na máquina virtual componente deserviço para autenticar o usuário. Em uma modalidade, ocomponente da gerência de sessão cria a Canal do KerberosSSPI entre se e o serviço da máquina virtual componente.Quando a canal for estabelecida a gerência de sessão ocomponente adquire as credenciais do usuário e inicializaum contexto da segurança usando estes dados. Os dados dainiciação retornados são emitidos à máquina virtualcomponente de serviço que aceita os dados e começa umatroca de SSPI as mensagens entre os dois componentes até ocontexto da segurança são estabelecidas no componente deserviço da máquina virtual. Este contexto é usado entãopara registrar usuário sobre à máquina virtual usando umúnico componente sign-on de GINA. Em algumas modalidades, ocomponente da gerência de sessão autentica o usuário a umsistema de exploração do anfitrião na máquina remota 30. Emuma destas modalidades, o sistema de exploração doanfitrião autentica então usuário à máquina virtual. Emoutras modalidades, a gerência de sessão o componenteautentica o usuário a um hypervisor. Em uma destas modalidades, o hypervisor autentica então o usuário àmáquina virtual. Em outro ainda as modalidades, ocomponente da gerência de sessão autenticam o usuário ámáquina virtual que fornece a funcionalidade da gerênciapara a máquina virtual a qual o usuário procura o acesso.Consultando de volta a FIG. 8, uma máquina remota 3 0 podedeterminar fornecer alcance a um recurso que flui o serviçocapaz de transmitir pedido recurso à máquina de cliente(etapa 816). Em algumas modalidades, o telecontrole amáquina 3 0 determina executar um recurso que flui o serviçopara transmitir a a máquina de cliente 10 ou a uma máquinaremota 30' um recurso pedido. Em outro as modalidades, amáquina remota 3 0 determinam usar uma fluência do recursopreste serviços de manutenção para fluir o recurso a umambiente de computação fornecido por um virtual máquina. Emainda outras modalidades, o recurso são um ambiente decomputação e a máquina remota 3 0 determina usar um recursoque flui a técnica a flua o ambiente de computação a umamáquina virtual. Em algumas modalidades, a pluralidade delimas de recurso reside na máquina remota 30'. Em outro asmodalidades, a pluralidade de limas de recurso residem emum usuário do arquivo separado ou máquina remota 30". Emainda outras modalidades, a pluralidade de limas de recursopode ser transmitido a uma máquina de cliente 10. Emcontudo outras modalidades, uma lima dentro a pluralidadede limas de recurso pode ser executada antes da transmissãode um segundo arquive na pluralidade de limas de recurso àmáquina de cliente 10. Em algumas modalidades, a máquinaremota 30 recupera a informação sobre o recurso enumeradode uma máquina remota 30'. Em um destes as modalidades, amáquina remota 30 recebem uma identificação de umtelecontrole máquina 30" hospedando uma pluralidade delimas de recurso. Em outra destes as modalidades, a máquinaremota 30 recebem a identificação de uma posição dapluralidade de limas de recurso, a identificação queconforma-se a uma nomeação universal Convenção (UNC). Emainda outras destas modalidades, a identificação inclui umaposição da rede e um soque te para um recurso que flui oprotocolo. Em uma modalidade, a máquina remota 30 recuperauma contenção da lima informação sobre o recurso enumerado.
A lima pode incluir identificação de uma posição de umamáquina remota 30' hospedando enumerado recurso. A limapode incluir uma identificação de uma pluralidade deversões do recurso enumerado. A lima pode incluir umaenumeração de uma pluralidade de limas de recurso quecompreendem o recurso enumerado. A lima pode incluiridentificação de uma lima comprimida que compreendeuma pluralidade de limas de recursos compreendendo orecurso enumerado. A lima pode incluir uma identificação decondições prévias a ser satisfeitas por uma máquina queexecuta o recurso enumerado. A lima pode incluir umaenumeração dos arquivos de dados associados com enumeradarecurso. A lima pode incluir uma enumeração doscertificados a ser executados em a máquina que executa orecurso enumerado. A lima pode incluir a enumeração dedados de registro associou com o recurso enumerado. A limapode incluir uma enumeração das réguas para o uso em umamodalidade onde o recurso enumerado executa dentro de umambiente da isolação. Em um a modalidade, a lima pode serreferida como um " manifest" lima. A informação isso a limapode conter é descrita em um detalhe mais adicional abaixo.O córrego de pacotes de dados pode incluir a inclusão daslimas de recurso recurso enumerado. Em algumas modalidades,as limas de recurso incluem arquivos de dados associado comum recurso. Em outras modalidades, as limas de recursoincluem limas executáveis exigidas para a execução dorecurso. Em outro ainda as modalidades, as limas de recursoincluem os metadata que incluem a informação sobre limas,tais como a posição, exigências de compatibilidade, dadosde configuração, registro os dados, identificação daexecução scripts réguas para o uso em ambientes daisolação, ou exigências da autorização. Em algumasmodalidades, o recurso fluido executa antes do transmissãode cada lima de recurso em uma pluralidade de inclusão daslimas de recurso recurso fluído. Em uma destas modalidades,execução do fluído o recurso começa em cima do recibo poruma máquina de cliente 10 de uma lima de recurso nopluralidade de recursos. Em outras destas modalidades,execução do o recurso fluído começa em cima do recibo poruma máquina de cliente 10 de um executável lima de recursona pluralidade de limas de recurso. Em ainda outra destesas modalidades, a máquina de cliente 10 executam umaprimeira lima de recurso recebida em a a pluralidade delimas de recurso e do primeiras recebeu pedidos da lima derecurso alcança á segunda lima de recurso na pluralidade delimas de recurso. Em uma modalidade, o recurso fluídoexecuta no cliente máquina 10 sem permanentemente residirna máquina de cliente 10. Nisto a modalidade, o recursofluído pode executar na máquina de cliente 10 e sejaremovido da máquina de cliente 10 em cima da terminação dofluído recurso. Em uma outra modalidade, o recurso fluídoexecuta no cliente a máquina 10 após uma cópia pre-deployedde cada lima de recurso é armazenada no cliente máquina 10.Em ainda uma outra modalidade, o recurso fluído executa noa máquina de cliente 10 após uma cópia de cada lima derecurso é armazenada em uma isolação ambiente na máquina decliente 10. Em contudo uma outra modalidade, fluído orecurso executa na máquina de cliente 10 depois que umacópia de cada lima de recurso é armazenado em umesconderijo na máquina de cliente 10. Em algumasmodalidades, a máquina remota 3 0 flui enumeradas o recursoà máquina remota 30, executa o recurso enumerado no amáquina remota 30, e fornece aos dados da recurso-saída damáquina de cliente 10 gerado pela execução do recursoenumerado. Em outras modalidades, um recurso é fluído a umamáquina virtual e os dados de saída do recurso sãotransmitido a uma máquina de cliente 10 usando um protocoloda camada de apresentação como Xll, VNC, AIC ou RDP. Em umamodalidade, a máquina remota 3 0 recebe uma pluralidade delimas de recurso que compreendem o recurso enumerado. Emuma outra modalidade, a máquina remota 3 0 fornece os dadosda recurso-saída através de um nível da apresentaçãoprotocolo, tal como um protocolo do nível da apresentaçãodo AIC ou um Área de trabalho remoto Protocolo do nível daapresentação de Windows ou um nível da apresentação de X-Windows protocolo. Em algumas modalidades, a máquina remota30 igualmente fornece o acesso a informação associou com orecurso enumerado, a informação do acesso responsivo geradoao método selecionado. Em uma destas modalidades, ainformação do acesso fornece uma indicação à máquina decliente 10 do selecionado método para a execução do recursoenumerado. Em outra destes as modalidades, a informação doacesso incluem uma identificação de uma posição do recursoenumerado, a identificação que conforma-se a uma nomeaçãouniversal Convenção (UNC). Em ainda outras destasmodalidades, a informação do acesso inclui umaidentificação de um usuário da gerência de sessão. Emalgumas modalidades, a informação do acesso inclui umbilhete do lançamento compreendendo a informação deautenticação. Em uma destas modalidades, o cliente amáquina 10 pode usar o bilhete do lançamento paraautenticar a informação do acesso recebido da máquinaremota 30. Em outras destas modalidades, a máquina decliente 10 pode usar o bilhete do lançamento paraautenticar-se a um segundo máquina remota 3 0 que hospeda orecurso enumerado. Em ainda outra destes as modalidades, amáquina remota 30 incluem o bilhete do lançamento no acessoinformação responsiva a um pedido da máquina de cliente 10para o lançamento bilhete. Referindo agora FIG. 18, odiagrama de fluxo descreve uma modalidade do etapas tomadaspara alcançar uma pluralidade de limas que compreendem umrecurso, tal como a ambiente de computação ou um programade aplicação. Uma máquina de cliente 10 executa uma análisepre-Iaunch (etapa 1810). Em uma modalidade, a máquina decliente 10 executa a análise pre-launch antes de recuperare de executar uma pluralidade de limas de recurso quecompreendem um recurso. Em uma outra modalidade, a máquinade cliente 10 executam a análise pre-launch responsiva auma indicação recebida que a análise pre-launch é umaexigência para que a autorização alcance a pluralidade delimas de recurso que compreendem um recurso. Em algumasmodalidades, a máquina de cliente 10 recebe, de uma máquinaremota 30, informação do acesso associada com a pluralidadede limas de recurso. Em uma destas modalidades, ainformação do acesso inclui uma identificação da posição deuma máquina remota 30' hospedando a pluralidade de limas derecurso. Em outras destas modalidades, a máquina de cliente10 recebem uma identificação de uma pluralidade de recursosque compreendem umas ou várias versões do recurso. Em aindaoutras destas modalidades, a máquina de cliente 10 recebemuma identificação de uma pluralidade de limas de recursoque compreendem uns ou vários recursos. Em outro asmodalidades, a máquina de cliente 10 recebem uma enumeraçãodos recursos disponível à máquina de cliente 10 para arecuperação e a execução. Em um destes as modalidades, aenumeração resultam de uma avaliação da máquina de cliente10. Em ainda outras modalidades, a máquina de cliente 10recuperam pelo menos um responsivo característico àidentificação recuperada da pluralidade de recurso limasque compreendem um recurso. Em algumas modalidades, ainformação do acesso inclui um bilhete do lançamento capazde autorizar a máquina de cliente 10 para alcançar apluralidade de recurso limas. Em uma destas modalidades, obilhete do lançamento é fornecido ao cliente máquina 10responsiva a uma avaliação da máquina de cliente 10. Emoutros de estas modalidades, o bilhete do lançamento sãofornecidas à máquina de cliente 10 no seguimento de umaanálise pre-launch da máquina de cliente 10 pelo clientemáquina 10. Em outras modalidades, a máquina de cliente 10recupera pelo menos um característica exigida para aexecução da pluralidade de limas de recurso. Em um de estasmodalidades, a informação do acesso incluem pelo menos essecaracterístico. Em outras destas modalidades, a informaçãodo acesso indica uma posição de uma lima para a recuperaçãopela máquina de cliente 10, a lima enumerando pelo menos auma característica. Em ainda outra destes modalidades, alima que enumera pelo menos a uma característica maiscompreende uma enumeração da pluralidade de limas derecurso e de uma identificação de uma máquina remota 3 0 quehospeda a pluralidade de limas de recurso. A máquina decliente 10 determina a existência pelo menos de essacaracterística na máquina de cliente 10. Em uma modalidade,a máquina de cliente 10 fazem esta determinação como parteda análise pre-launch. Em outros a modalidade, a máquina decliente 10 determina se a máquina de cliente 10 tem pelomenos a uma característica. Em uma modalidade, determinandoa existência pelo menos de essa a característica na máquinade cliente 10 inclui a determinação de se um dispositivoexcitador é instalado na máquina de cliente 10. Em umaoutra modalidade, determinando a existência pelo menos dauma característica na máquina de cliente 10 incluideterminando se um sistema de exploração está instalado namáquina de cliente 10. Em ainda uma outra modalidade,determinando a existência pelo menos de essa acaracterística na máquina de cliente 10 inclui adeterminação de se um detalhe o sistema de exploração éinstalado na máquina de cliente 10. Em contudo outrosmodalidade, determinando a existência pelo menos da umacaracterística no a máquina de cliente 10 inclui adeterminação de se um nível particular da revisão de osistema de exploração é instalado na máquina de cliente 10.Para modalidades dentro que uma máquina remota 3 0 actuacomo uma máquina de cliente 10 (como, por exemplo, a oterminal presta serviços de manutenção à sessão em que amáquina remota executa a computação recursos em nome de umusuário de uma máquina de cliente), determinando aexistência de pelo menos na característica pode incluir adeterminação de se a máquina remota 3 0 executam umhypervisor ou, alternativamente, se a máquina remotaexecuta um hypervisor que próprio execute no sistema deexploração nativo. Em algumas modalidades, determinando aexistência pelo menos de essa a característica na máquinade cliente 10 inclui a determinação de se o cliente amáquina 10 adquiriu a autorização executar um recursoenumerado. Em uma destas modalidades, uma determinação éfeito pela máquina de cliente 10 como a se a máquina decliente 10 recebeu uma licença executar recurso enumerado.Em outras destas modalidades, uma determinação é feito pelamáquina de cliente 10 se a máquina de cliente 10 recebeuuma licença receber através de um recurso que flui a sessãouma pluralidade de recurso limas que compreendem o recursoenumerado. Em outras modalidades, determinando a existênciapelo menos da uma característica na máquina de cliente 10inclui determinando a se a máquina de cliente 10 tem asuficiente largura de faixa disponível recupere e executeum recurso enumerado. Em algumas modalidades, determinandoa existência pelo menos de essa a característica na máquinade cliente 10 inclui a execução de um certificado nocliente máquina 10. Em outras modalidades, determinando aexistência pelo menos de essa a característica na máquinade cliente 10 inclui a instalação do software no máquina decliente 10. Em ainda outras modalidades, determinando aexistência do em menos uma característica na máquina decliente 10 inclui a modificação da registro na máquina decliente 10. Em contudo outras modalidades, determinação aexistência pelo menos da uma característica na máquina decliente 10 inclui transmissão de um agente de coleção 704 àmáquina de cliente 10 para a execução sobre a máquina decliente 10 para recolher credenciais associou com a máquinade cliente 10. A máquina de cliente 10 pede, de uma máquinaremota 30, autorização para a execução da pluralidade delimas de recurso, o pedido que inclui um bilhete dolançamento (etapa 1812). Em algumas modalidades, a máquinade cliente 10 faz o pedido responsivo a uma determinaçãoque pelo menos uma característica exista na máquina decliente 10. Em uma destas modalidades, a máquina de cliente10 determina que uma pluralidade de características existena máquina de cliente 10, na pluralidade de característicasassociadas com um recurso enumerado e em responsivorecebido a um pedido executar o recurso enumerado. Emoutras destas modalidades, se a máquina de cliente 10recebe uma indicação que a autorização para a execução daslimas de recurso enumeradas depende em cima da existênciapelo menos da uma característica da máquina de cliente 10.Em uma modalidade, a máquina de cliente 10 recebeu umaenumeração dos recursos, da execução pedida de um recursoenumerado, e da informação recebida do acesso que incluempelo menos esse característico e de um bilhete dolançamento que autoriza a execução do recurso enumerado emcima da determinação da existência pelo menos da umacaracterística na máquina de cliente 10. Em uma modalidade,a máquina de cliente 10 recebe da máquina remota 30 umaexecução de autorização da licença da pluralidade de limasde recurso. Em algumas modalidades, a licença autoriza aexecução por um período de tempo especific. Em uma destasmodalidades, a licença exige a transmissão de uma mensagemda batida de coração manter a autorização para a execuçãoda pluralidade de limas de recurso. Para as modalidades emque uma máquina virtual é fluída ou transferida de outramaneira à máquina de cliente, uma associação da licençapode ser contanto que autoriza máquina virtual, seu sistemade exploração do convidado e todo o software licenciadoinstalado dentro desse sistema de exploração do convidado.Em algumas destas modalidades, uma única licença é contantoque autoriza aquelas entidades. Em uma outra modalidade, amáquina de cliente 10 recebe da máquina remota 30 a licençae um identificador associados com uma execução demonitoração da máquina remota 3 0 da pluralidade de limas derecurso. Em algumas modalidades, a máquina remota 30 é umusuário 1962 da gerência de sessão, como descrito abaixo emrelação a FIG. 19. Em uma destas modalidades, o usuário1962 da gerência de sessão inclui um subsistema 1910 dagerência de sessão que monitore a sessão associada com amáquina de cliente 10. Em outras modalidades, uma máquinaremota separada 30" " é o usuário 1962 da gerência desessão. Consultando de volta a FIG. 18, a máquina decliente 10 recebe e executa a pluralidade de limas derecurso (etapa 1814) . Em uma modalidade, a máquina decliente 10 recebem a pluralidade de limas de recursoatravés de um recurso que flui a sessão. Em uma outramodalidade, a máquina de cliente 10 armazena a pluralidadede recurso limas em um ambiente da isolação na máquina decliente 10. Em ainda outro a modalidade, a máquina decliente 10 executa uma da pluralidade de limas de recursoantes de receber um segundo da pluralidade de limas derecurso. Em algum as modalidades, uma máquina remota 30transmitem a pluralidade de limas de recurso á pluralidadedas máquinas de cliente 10, cada máquina de cliente 10 napluralidade que tem estabeleceu um recurso separado queflui a sessão com a máquina remota 30. Em algumasmodalidades, a máquina de cliente 10 armazena a pluralidadede limas de recurso em um esconderijo e em uma execução dosatrasos das limas de recurso. Em um de estas modalidades, amáquina de cliente 10 recebem a autorização executar limasde recurso durante um período de tempo predefinido. Emoutra destes as modalidades, a máquina de cliente 10recebem a autorização executar limas de recurso durante operíodo de tempo predefinido em que a máquina de cliente 10falta o acesso a uma rede. Em outras modalidades, as lojasda máquina de cliente 10 a pluralidade de limas de recursoem um esconderijo. Em uma destas modalidades, a recurso queflui o cliente 1952 (descrito no detalhe mais adicionalabaixo na conexão com FIG. 19) estabelece um recursointerno que flui a sessão para recuperar pluralidade delimas de recurso do esconderijo. Em outras destasmodalidades, a máquina de cliente 10 recebe a autorizaçãoexecutar as limas de recurso durante a período de tempopredefinido em que a máquina de cliente 10 falta o acesso auma rede. A máquina de cliente 10 transmite pelo menos umamensagem da pulsação do coração á máquina remota (etapa1816). Em algumas modalidades, a máquina de cliente 10transmite pelo menos a uma mensagem da pulsação do coraçãopara reter a autorização executar a pluralidade de limas derecurso que compreendem o recurso enumerado. Em outro asmodalidades, a máquina de cliente 10 transmitem pelo menosa uma pulsação do coração a mensagem para reter aautorização recupera uma lima de recurso na pluralidade derecurso limas. Em ainda outras modalidades, a máquina decliente 10 recebem uma licença autorizando a execução dapluralidade de limas de recurso durante predeterminadasperíodo de tempo. Em algumas modalidades, a máquina decliente 10 transmite a pulsação do coração mensagem a umasegunda máquina remota 30" ". Em uma destas modalidades,máquina em segundo remota 30" " pode compreender um usuário1962 da gerência de sessão monitorando a recuperação e aexecução da pluralidade de limas de recurso. Em outrosdestas modalidades, a segunda máquina remota 30" " poderenovar uma licença autorizando a execução da pluralidadede limas de recurso, responsiva ao mensagem transmitida dapulsação do coração. Em ainda outras destas modalidades,máquina em segundo remota 30" " pode transmitir à máquinade cliente 10 um comando, responsivo à mensagem transmitidada pulsação do coração. Referindo agora FIG. 19, a máquinade cliente 10 pode incluir um recurso fluindo o cliente1952, um serviço de fluência 1954 e um ambiente da isolação1956. 0 recurso que flui o cliente 1952 pode ser umprograma executável. Em algumas modalidades, o recurso queflui o cliente 1952 podem poder lança um outro programaexecutável. Em outras modalidades, a fluência do recurso ocliente 1952 pode iniciar o serviço de fluência 1954. Em umdestes as modalidades, o recurso que flui o cliente 1952podem fornecer a fluência preste serviços de manutenção a1954 com um parâmetro associado com a execução de umrecurso. Em outros destas modalidades, o recurso que flui ocliente 1952 pode iniciar fluindo o serviço 1954 usando umRemote Procedure Call. Em uma modalidade, a máquina decliente 10 pede a execução da o recurso e recebe ainformação do acesso de uma máquina remota 3 0 que consideraexecução. Em uma outra modalidade, o recurso que flui ocliente 1952 recebe a informação do acesso. Em ainda umaoutra modalidade, a fluência do recurso o cliente 1952fornece a informação do acesso ao serviço de fluência 1954.Em ainda uma outra modalidade, a informação do acessoinclui uma identificação da a posição de uma lima associoucom uma pluralidade de inclusão das limas de recurso. Emuma modalidade, o serviço de fluência 1954 recupera umalima associada com uma pluralidade do recurso máquinaremota 3 0 para manter a autorização recuperar e executaruma pluralidade de limas de recurso. Em algumasmodalidades, a lima recuperada inclui uma identificação daposição de mais de uma pluralidade de limas de recurso,cada pluralidade de recurso limas que compreendem umrecurso diferente. Em uma destas modalidades, fluir oserviço 1954 recupera a pluralidade de inclusão das limasde recurso recurso compatível com a máquina de cliente 10.
Em outra destes as modalidades, o serviço de fluência 1954recebem a autorização recuperar a pluralidade particular delimas de recurso, responsiva a uma avaliação do clientemáquina 10. Em algumas modalidades, a pluralidade de limasde recurso é comprimida e armazenado em um usuário doarquivo dentro de uma lima de arquivo tal como um TÁXI, oFECHO DE CORRER, SENTA-SE, PICHE, FRASCO ou a outra lima dearquivo. Em uma modalidade, uma pluralidade de limas derecurso armazenadas no a lima de arquivo compreende umrecurso. Em uma outra modalidade, pluralidades múltiplas deas limas de recurso armazenaram em uma lima que de arquivocada um compreende versões diferentes da recurso. Em aindauma outra modalidade, pluralidades múltiplas de limas derecurso armazenou em uma lima de arquivo cada um compreendarecursos diferentes. Em algumas modalidades, a lima dearquivo inclui os metadata associados com cada lima napluralidade de limas de recurso. Em uma destas modalidades,o serviço de fluência 1954 gera uma estrutura de diretórioresponsiva aos metadata incluídos. Como seja descrito nomaior detalhe abaixo, os metadata podem ser usados parasatisfazer pedidos por recursos para a enumeração dodiretório. Em uma modalidade, o serviço de fluência 1954decompresses um arquivo arquive para adquirir a pluralidadede limas de recurso. Em uma outra modalidade, fluindo oserviço 1954 determina se uma cópia local de uma limadentro do a pluralidade de limas de recurso existe em umesconderijo na máquina de cliente 10 antes de recuperando alima da pluralidade de limas de recurso. Em ainda uma outramodalidade, o excitador 1964 do filtro do sistema dearquivo determina se a cópia local existe no esconderijo.
Em algumas modalidades, o serviço de fluência 1954 modificaum registro entrada antes de recuperar uma lima dentro dapluralidade de limas de recurso. Em algumas modalidades, oserviço de fluência 1954 armazena uma pluralidade de limasde recurso em um esconderijo na máquina de cliente 10. Emuma destas modalidades, o serviço de fluência 1954 podefornecer a funcionalidade para pôr em esconderijo umapluralidade de limas de recurso em cima de receber umpedido pôr em esconderijo a pluralidade de limas derecurso. Em outras destas modalidades, o serviço defluência 1954 podem fornecer funcionalidade para fixar umesconderijo na máquina de cliente 10. Em outra destes asmodalidades, o serviço de fluência 1954 podem usar umalgoritmo para ajustar um tamanho e uma posição doesconderijo. Em algumas modalidades, o serviço de fluência1954 cria uma isolação ambiente 1956 na máquina de cliente
10. Em uma destas modalidades, fluir o serviço 1954 usa umaprogramação da aplicação do ambiente da isolação conectepara criar o ambiente 1956 da isolação. Em outra destes asmodalidades, o serviço de fluência 1954 armazenam apluralidade de limas de recurso dentro o ambiente 1956 daisolação. Em ainda outras destas modalidades, fluindo oserviço 1954 executa uma lima na pluralidade de limas derecurso dentro do ambiente da isolação. Contudo outrasdestas modalidades, a fluência o serviço 1954 executa orecurso no ambiente da isolação. Em algum as modalidades, oserviço de fluência 1954 alcançam um ambiente da isolação1956 forneceram por uma máquina virtual. Para asmodalidades em que a autorização é recebida executar umrecurso na máquina de cliente 10, a execução do recursopode ocorrer dentro do ambiente 1956 da isolação. Emalgumas modalidades, uma pluralidade de limas de recursocompreender o recurso é armazenada na máquina de cliente 10antes da execução de o recurso. Em outras modalidades, umsubconjunto da pluralidade de limas de recurso é armazenadona máquina de cliente 10 antes da execução do recurso. Emoutro ainda as modalidades, a pluralidade de limas derecurso não residem na isolação ambiente 1956. Em contudooutras modalidades, um subconjunto da pluralidade de aslimas de recursos não residem na máquina de cliente 10. nãoobstante se a subconjunto da pluralidade de limas derecurso ou de cada lima de recurso na pluralidade de aslimas de recurso residem na máquina de cliente 10 ou noambiente 1956 da isolação, dentro algumas modalidades, umalima de recurso na pluralidade de limas de recurso podemser executado dentro de um ambiente 1956 da isolação. Emalgumas modalidades, os ambientes da isolação são usadospara fornecer funcionalidade adicional ao recurso que fluio cliente 1952. Em um destes as modalidades, um recurso sãoexecutadas dentro de um ambiente da isolação. Em outrosdestas modalidades, uma pluralidade recuperada de limas derecurso reside dentro do ambiente da isolação. Em aindaoutras destas modalidades, mudanças á o registro na máquinade cliente 10 é feito dentro do ambiente da isolação. Emuma modalidade, o recurso que flui o cliente 1952 incluiambiente 1956 da isolação. Em algumas modalidades, afluência do recurso o cliente 1952 inclui pedidos deintercepção de um recurso do excitador 1964 do filtro dosistema de arquivo para limas. Em uma destas modalidades,as intercepções do excitador 1964 do filtro do sistema dearquivo um pedido do recurso abrir uma lima existente edetermina que a lima não faz resida no ambiente 1956 daisolação. Em outras destas modalidades, o excitador 1964 dofiltro do sistema de arquivo reorienta o pedido ao serviçode fluência 1954 responsivo a uma determinação que a limanão reside na isolação ambiente 1956. O serviço de fluência1954 pode extrair a lima do a pluralidade de limas derecurso e armazena a lima no ambiente 1956 da isolação. oexcitador 1964 do filtro do sistema de arquivo pode entãoresponder ao pedido para a lima com cópia armazenada dalima. Em algumas modalidades, o excitador 1964 do filtro dosistema de arquivo pode reorientar o pedido para a lima aum usuário do arquivo 194 0, responsivo ao a indicação que oserviço de fluência 1954 não recuperou a lima ou apluralidade de limas de recurso e de uma determinação alima não reside na isolação ambiente 1956. Em algumasmodalidades, o excitador 1964 do filtro do sistema dearquivo usa um estrito régua da isolação para impedir oprou dados incompatíveis de aparecer no ambiente 1956 daisolação. Em uma destas modalidades, o filtro do sistema dearquivo excitador 1964 que intercepta um pedido para umrecurso em um ambiente da isolação do usuário podereorientar o pedido a um ambiente da isolação do recurso.
Em outra destes as modalidades, o excitador 1964 do filtrodo sistema de arquivo não reorientam o pedido a um espaçode sistema. Em uma modalidade, o serviço de fluência 1954usa comandos de IOCTL para comunicar-se com o excitador dofiltro. Em uma outra modalidade, comunicações a o usuáriodo arquivo 194 0 é recebido com Microsoft SMB que flui oprotocolo. Referindo agora FIG. 20, um diagrama de fluxodescreve uma modalidade de etapas tomadas por uma máquinade cliente 10 para executar um recurso. Como descrito acimadentro O FIG. 18, a respeito de etapa 1814, uma máquina decliente 10 recebe e executa pluralidade de limas derecurso. Na breve vista geral, a máquina de cliente 10recebe uma lima que inclui a informação do acesso paraalcançar uma pluralidade de limas de recurso e paraexecutando um primeiro cliente capaz de receber um córregodo recurso (etapa 2002). a máquina de cliente 10 recuperauma identificação da pluralidade de limas de recurso,responsivo à lima (etapa 2004) . A máquina de cliente 10recupera pelo menos um característica exigida para aexecução da pluralidade de limas de recurso, responsiva àlima (etapa 2006) . A máquina de cliente 10 determina se ocliente a máquina 10 inclui pelo menos a uma característica(etapa 2008) . 0 cliente a máquina 10 executa um segundocliente, segundo cliente que pede a execução de apluralidade de limas de recurso em uma máquina remota 30,responsiva á determinação que a máquina de cliente 10 faltapelo menos a uma característica (etapa 2010) . Consultando aFIG. 20, e no maior detalhe, a máquina de cliente 10 recebeuma lima que inclui a informação do acesso para alcançaruma pluralidade de limas de recurso e para executar umprimeiro cliente capaz de receber um recurso flua (etapa2002) . Em uma modalidade, a máquina de cliente 10 recebeincluir da informação do acesso identificação de umaposição de uma pluralidade de limas de recurso quecompreendem um recurso. Em uma outra modalidade, a máquinade cliente 10 recebe a lima responsiva a pedindo a execuçãodo recurso. Em ainda uma outra modalidade, o acesso ainformação inclui uma indicação que a pluralidade de limasde recurso reside em a máquina remota 30' como um usuáriodo recurso ou um usuário do arquivo. Em contudo outros amodalidade, a informação do acesso indica que a máquina decliente 10 pode recupere a pluralidade de limas de recursoda máquina remota 3 0 sobre a recurso que flui a sessão. Amáquina de cliente 10 recupera uma identificação dapluralidade de recurso limas, responsivas à lima (etapa2004) . Em uma modalidade, a máquina de cliente 10identificam uma máquina remota 3 0 em que a pluralidade delimas de recurso reside, responsivo à lima que inclui ainformação do acesso. Em uma outra modalidade, a máquina decliente 10 recupera da máquina remota 30 uma identificaçãoda lima pluralidade de limas de recurso. Em algumasmodalidades, a pluralidade de limas de recurso compreendeum recurso. Em outras modalidades, a pluralidade de limasde recurso compreende recursos múltiplos. Em ainda outrasmodalidades, a pluralidade de as limas de recursocompreendem versões múltiplas de um único recurso.Referindo adiante FIG. 21, um diagrama de bloco descreveuma modalidade da pluralidade de limas de recurso queresidem em uma máquina remota 30' , como o usuário doarquivo 1940. Em FIG. 21, uma pluralidade de limas derecurso,a lima recuperada de a máquina remota 30 quehospeda a pluralidade de limas de recurso inclui adescrição do pacote e dos alvos incluídos na pluralidade derecurso limas. Em outras modalidades, a lima recuperada damáquina remota 30 identifica a pluralidade de limas derecurso que compreendem um recurso pedido para execuçãopela máquina de cliente 10. A máquina de cliente 10recupera pelo menos uma característica exigida paraexecução da pluralidade de limas de recurso, responsiva àlima (etapa 2006). Em algumas modalidades, a máquina decliente 10 não podem executar um recurso a menos que amáquina de cliente 10 inclui determinadas características.
Em um destes as modalidades, recursos diferentes exigem asmáquinas de cliente 10 incluir diferente característicasdas características exigidas por outros recursos. Em outrosde estas modalidades, a máquina de cliente 10 recebem umaidentificação do em menos uma característica exigida para aexecução da pluralidade de limas de recurso compreendendo orecurso pedido pela máquina de cliente 10. Ainda referindoFIG. 20, a máquina de cliente 10 determina se a máquina decliente 10 inclui pelo menos a uma característica (etapa2008). Em um a modalidade, a máquina de cliente 10 avaliaum sistema de exploração no cliente máquina 10 paradeterminar se a máquina de cliente 10 inclui pelo menosesse característico. Em uma outra modalidade, a máquina decliente 10 identifica a língua usada por um sistema deexploração na máquina de cliente 10 para determinar se amáquina de cliente 10 inclui pelo menos a umacaracterística. Em ainda uma outra modalidade, a máquina decliente 10 identifica um nível da revisão de sistema deexploração na máquina de cliente 10 para determinar se ocliente a máquina 10 inclui pelo menos a umacaracterística. Em contudo uma outra modalidade, a máquinade cliente 10 identifica uma versão do recurso de umrecurso que reside no máquina de cliente 10 para determinarem se a máquina de cliente 10 inclui menos umacaracterística. Em algumas modalidades, a máquina decliente 10 determina se a máquina de cliente 10 inclui umexcitador de dispositivo para determinar se a máquina decliente 10 inclui pelo menos a uma característica. Em outroas modalidades, a máquina de cliente 10 determinam se amáquina de cliente 10 inclui um sistema de exploração paradeterminar se a máquina de cliente 10 inclui pelo menos auma característica. Em ainda outras modalidades, cliente amáquina 10 determina a se a máquina de cliente 10 incluiuma licença execute a pluralidade de limas de recurso paradeterminar se a máquina de cliente 10 inclui pelo menos auma característica. Em uma modalidade, a máquina de cliente10 determina se o cliente a máquina 10 compreende umaquantidade exigida do espaço de disco disponível paraalcançar recurso. Em uma outra modalidade, a máquina decliente 10 determina se a a unidade do processador centralda máquina de cliente 10 fornece um processamento exigidovelocidade. Em ainda uma outra modalidade, a máquina decliente 10 determina se a máquina de cliente 10 compreendeuma quantidade exigida do RAM disponível. Em ainda umaoutra modalidade, a máquina de cliente 10 determina se ocliente a máquina 10 compreende um nível exigido doprocessamento e da exposição gráficos capacidades. Amáquina de cliente 10 executa um segundo cliente, segundocliente pedindo a execução da pluralidade de limas derecurso em uma máquina remota 30, responsivo a umadeterminação que a máquina de cliente 10 falta pelo menosesse característico (etapa 2010). Em uma modalidade, quandoa máquina de cliente 10 determina que a máquina de cliente10 falta pelo menos a uma característica, a máquina decliente 10 não executa o primeiro cliente capaz de recebera córrego do recurso. Em uma outra modalidade, uma políticaproibe a máquina de cliente 10 de receber a pluralidade delimas de recurso sobre um córrego do recurso quando amáquina de cliente 10 falta pelo menos a umacaracterística. Em algumas modalidades, a máquina decliente 10 determina que a máquina de cliente 10 incluipelo menos a uma característica. Em uma destas modalidades,a máquina de cliente 10 executa o primeiro cliente,primeiro cliente que recebe uma inclusão do córrego dorecurso a pluralidade de limas de recurso de uma máquinaremota 30 para a execução no máquina de cliente 10. Emalgumas modalidades, a máquina de cliente 10 executa osegundo cliente pedindo a execução da pluralidade de limasde recurso em uma máquina remota 30 em cima de determinarque a máquina de cliente 10 falta pelo menos a umacaracterística. Em uma destas modalidades, o segundocliente transmite o pedido a um telecontrole máquina 30 quehospeda a pluralidade de limas de recurso. Em outra destesas modalidades, a máquina remota 30 executam a pluralidadede limas de recurso compreender o recurso e gera dados darecurso-saída. Em ainda outros de estas modalidades, osegundo cliente recebem os dados da recurso-saída geradospela execução da pluralidade de limas de recurso na máquinaremota 30. Em ainda outras destas modalidades, o segundocliente indicam a recurso-saída sobre a máquina de cliente10. Em uma modalidade, os pedidos da máquina de cliente 10execução da pluralidade de limas de aplicação em umamáquina física 30. Em outros a modalidade, a máquina decliente 10 pede a execução da pluralidade de limas deaplicação em uma máquina virtual que executa em uma máquinaremota 30. Em algumas modalidades, o segundo cliente recebeuma lima que compreende o acesso informação para alcançaruma pluralidade de limas e de pedidos de recurso,responsiva a uma determinação pelo primeiro cliente que amáquina de cliente 10 falta pelo menos esse característica,execução da pluralidade de limas de recurso em uma máquinavirtual que fornece um ambiente de computação que tem menosuma característica. Em outro as modalidades, a máquina decliente 10 executam o segundo pedido do cliente execução dapluralidade de limas de recurso em uma máquina remota 30 emcima determinando que a máquina de cliente 10 falta pelomenos a uma característica. Em uma destas modalidades, osegundo cliente transmite o pedido a um telecontrolemáquina 30 que hospeda a pluralidade de limas de recurso.Em outra destes as modalidades, uma máquina virtual queexecuta na máquina remota 30 executam a pluralidade delimas de recurso que compreendem o recurso e gera o recursodados de saída. Em ainda outras destas modalidades, osegundo cliente recebem dados da recurso-saída gerados pelaexecução da pluralidade de limas de recurso sobre a máquinavirtual. Contudo outras destas modalidades, o segundocliente indica a recurso-saída na máquina de cliente 10. Emalgumas modalidades, o segundo cliente transmite o pedido aum telecontrole máquina 30 que não hospeda a pluralidade delimas de recurso. Em um destes as modalidades, a máquinaremota 30 podem pedir a pluralidade de limas de recurso deuma segunda máquina remota 3 0 que hospeda a pluralidade delimas de recurso. Em outras destas modalidades, a máquinaremota 3 0 podem receber a pluralidade de limas de recursoda segunda máquina remota 3 0 através de um recurso fluindoa sessão. Em ainda outras destas modalidades, a máquinaremota 3 0 armazena a pluralidade recebida de limas derecurso em um ambiente da isolação e executa o recursodentro do ambiente da isolação. Contudo outra nestes asmodalidades, a máquina remota 3 0 transmitem os dadosgerados da recurso-saída ao segundo cliente na máquina decliente 10. Em algumas modalidades, o segundo clientetransmite o pedido a um telecontrole máquina 3 0 que nãohospeda a pluralidade de limas de recurso. Em um destes asmodalidades, a máquina remota 3 0 podem pedir a pluralidadede limas de recurso de uma segunda máquina remota 3 0 quehospeda a pluralidade de limas de recurso. Em outras destasmodalidades, a máquina remota 3 0 podem receber apluralidade de limas de recurso da segunda máquina remota3 0 através de um recurso fluindo a sessão. Em outrasmodalidades, a máquina remota 3 0 armazena a pluralidaderecebida de limas de recurso em um ambiente de computaçãoforneceu por uma máquina virtual executando na máquinaremota 30, o ambiente de computação que tem em menos umacaracterística. Contudo outras destas modalidades, otelecontrole a máquina 3 0 executa o recurso dentro doambiente de computação fornecido perto a máquina virtual etransmite os dados gerados da recurso-saída ao segundocliente na máquina de cliente 10. Em algumas modalidades,uma máquina virtual na máquina remota 3 0 executa apluralidade de limas de recurso. Em uma destas modalidades,o virtual a máquina recebe para a execução um córrego dorecurso que compreende a pluralidade de limas de recurso.Em algumas modalidades, uma máquina virtual pode receberpara execução um córrego do recurso responsivo a umaaplicação de uma política. Em uma de estas modalidades, oresultado da aplicação da política dependem dodisponibilidade do recurso pedido na exploração agrícola 3 8da máquina (que inclui disponibilidade de uma máquinafísica apropriadamente configurada 30 ou da máquinavirtual), sensibilidade do recurso pedido (que inclui seuma política impede transmissão do recurso pedido a umambiente inseguro), informação associada com o usuário damáquina de cliente 10 (que inclui autorização executar oualcançar o recurso pedido em um inseguro ambiente).
Consultando de volta a FIG. 19, em uma modalidade, aprimeira máquina de cliente 10, capaz de receber o córregodo recurso, é um recurso que flui o cliente 1952. O recursoque flui o cliente 1952 que recebe a lima, recuperando umaidentificação de uma pluralidade de limas de recurso e pelomenos de uma característica exigidas para execução dapluralidade de limas de recurso, responsiva à lima, e àdeterminação se a máquina de cliente 10 inclui pelo menos auma característica. Em outros a modalidade, o segundocliente é um agente 1960 do cliente. Em algum embodimeoagente 1960 do cliente recebe a lima do recurso que flui ocliente 1952 responsivo a uma determinação, pelo recursoque flui o cliente 1952, que a máquina de cliente 10 faltapelo menos a uma característica. Uma máquina remota 30inclui a funcionalidade para o uso de recurso damonitoração por uma máquina de cliente 10. A máquina remota30 pode monitorar o status de cada um recurso usado pelamáquina de cliente 10, por exemplo em cima da execução outerminação de um recurso. Em uma modalidade, a máquinaremota 30 exige a máquina de cliente 10 para transmitirmensagens sobre o status de um recurso executado pelamáquina de cliente 10. Em uma outra modalidade, quando umcliente a máquina 10 conecta a uma rede em que a máquinaremota 30 reside, a máquina de cliente 10 transmite umamensagem que indica que a máquina de cliente 10 temconectado à rede. Em uma modalidade, a máquina de clientefor dita ter uma sessão quando a máquina de cliente 10interage com a máquina remota 3 0 e executa um ou maisrecursos. Em uma outra modalidade, a máquina remota 30exige máquina de cliente 10 a manter, para a duração de umasessão, uma autorização da licença execução dos recursosrecebidos de uma máquina remota 30. Em ainda outro amodalidade, sessões tem os identificadores de sessãooriginais atribuídos pelo telecontrole máquina 30. Em umamodalidade, a máquina de cliente 10 transmite as mensagensao a máquina remota 3 0 com que interagiu para receber eexecuta o recurso. Em uma outra modalidade, a máquina decliente 10 recebe da máquina remota 30 um identificador deuma segunda máquina remota 30, tais como uma gerência desessão usuário 1962, a segunda máquina remota 3 0 que recebee que armazena transmitido toda as mensagens associaram coma sessão na máquina de cliente 10. Em algumas modalidades,o usuário 1962 da gerência de sessão é um telecontrole façaà máquina serviços de fornecimento da monitoração dagerência e da sessão da licença 30. Em uma destasmodalidades, o usuário 1962 da gerência de sessão inclui asubsistema 1908 da gerência do usuário que proporcionaestes serviços. Em uma modalidade, a máquina de cliente 10transmite mensagens diretamente a o usuário 1962 dagerência de sessão. Em uma outra modalidade, o cliente amáquina 10 transmite mensagens a uma máquina remota 30, amáquina remota 30 enviando as mensagens ao usuário 1962 dagerência de sessão com identificação da máquina de cliente10. Uma máquina de cliente 10 pode transmitir uma mensagemda pulsação do coração ao telecontrole máquina 30. Em umamodalidade, a mensagem da pulsação do coração inclui umpedido para uma licença. Nesta modalidade, a máquina decliente 10 pode transmitir a pulsação do coração a mensagemapós ter recebido a informação do acesso associou com umrecurso que a máquina de cliente 10 pediu a autorizaçãoexecutar. A máquina de cliente 10 pode transmitir amensagem da pulsação do coração antes de executar orecurso. Em um a modalidade, a máquina de cliente 10 incluicom a mensagem a da pulsação do coração bilhete dolançamento recebido com a informação do acesso. Nestamodalidade, a máquina remota 30 pode conceder à máquina decliente 10 uma licença em cima de bem sucedido verificaçãodo bilhete do lançamento. Em uma outra modalidade, amensagem da pulsação do coração inclui uma indicação isso amáquina de cliente 10 iniciou a execução de um recurso. Emainda outro a modalidade, a mensagem da pulsação do coraçãoinclui uma indicação que o cliente a máquina 10 terminou aexecução de um recurso. Em contudo uma outra modalidade, amensagem da pulsação do coração inclui uma indicação de umafalha executar um recurso. Em uma modalidade, a mensagem dapulsação do coração inclui um pedido para identificação deum segundo usuário da gerência de sessão, tal como umasessão usuário 1962 da gerência. Em uma outra modalidade, amensagem da pulsação do coração inclui uma indicação em quea máquina de cliente 10 conecte a uma rede qual a máquinaremota 3 0 reside. Em algumas modalidades, a mensagem dapulsação do coração inclui um pedido restaurar um recursoque flui a sessão. Em uma destas modalidades, a máquina decliente 10 transmitem esta mensagem da pulsação do coraçãoquando um erro ocorreu e a a conexão é terminada entre umarede em que a máquina remota 3 0 reside e a máquina decliente 10. Em outras destas modalidades, o cliente amáquina 10 transmite com a informação de mensagem dapulsação do coração associada com a sessão. Em ainda outrasdestas modalidades, a máquina remota 3 0 podem transmita aosdados sessão-relacionados da máquina de cliente 10 se asessão não tem expirado. Em outras destas modalidades, sedisconexões de uma máquina remota 3 0 de uma rede em queresponde, a máquina de cliente 10 não pode receber umaresposta a uma mensagem da pulsação do coração transmitidaà máquina remota 30. Em um a modalidade, a máquina decliente 10 pode restabelecer uma sessão transmitindo a amensagem que pede uma sessão restaurou à máquina remota 30.Em outros a modalidade, a máquina de cliente 10 poderestabelecer uma sessão transmitindo a a mensagem que pedeuma sessão restaurou a uma segunda máquina remota 30. Emalgum modalidades, quando a máquina remota 3 0 reconecta àrede, crie uma sessão nova para cada pedido da restauraçãoda sessão recebido quando o telecontrole a máquina 30 eradisconnected. Em uma destas modalidades, a sessão nova seráassociado com o estado reconectado e não autorizado. Emoutra destes as modalidades, nenhuma licença nova serãoadquiridas para a sessão nova. Em ainda outras destasmodalidades, quando a máquina de cliente 10 executar umrecurso, uma licença nova será adquirida e todas as sessõesserão associadas com o cliente a máquina 10 será associadacom um active e um estado licenciado. Em algumasmodalidades, um recurso que flui o cliente 1952 no clientea máquina 10 gera a mensagem da pulsação do coração. Em umadestas modalidades, o recurso que flui o cliente 1952 enviaa mensagem da pulsação do coração a uma correiafotorreceptora conecte 1958 para a transmissão à máquina decliente 10 para a transmissão ao máquina remota 30. Emoutras modalidades, o serviço de gestão 1904 sobre amáquina remota 3 0 recebe a mensagem da pulsação do coraçãoda máquina de cliente 10 através da relação 1958 da correiafotorreceptora. Em ainda outras modalidades, uma máquinaremota 30 compreender um ponto 240 do coletor (descritoacima) recebe e armazena mensagens da pulsação do coração.Em algumas modalidades, o recurso que flui o cliente 1952pede uma licença da máquina remota 30. Em uma destasmodalidades, a licença autoriza a execução de um recurso namáquina de cliente 10. Em outras destas modalidades, amáquina remota 3 0 pode alcançar uma segunda máquina remota30 para fornecer a licença. Em ainda outras destasmodalidades, a máquina remota 3 0 podem fornecer a licença àmáquina de cliente 10. Contudo outras destas modalidades, amáquina remota 30 podem fornecer uma licença aceitável parafinalidades da autorização a uma segunda máquina remota 30.Em algumas modalidades, a licença é revog em cima daterminação da execução de um recurso. Consultando de voltaa FIG. 8, um pedido para o acesso a um recurso é recebido(etapa 802). Em algumas modalidades, o recurso é uma lima.Em uma destas modalidades, um programa de aplicação éselecionado e executado para fornecer o acesso à lima. Emoutras destas modalidades, um tipo de lima associado com alima pedida é identificado para selecionar um programa deaplicação para a execução. Em ainda outras destasmodalidades, antes do pedido para o acesso à lima, umprograma de aplicação são associadas com um tipo de lima,permitindo a seleção automática do programa de aplicação emcima da identificação de um tipo de lima associado com alima pedida. Em algumas modalidades, tipo de lima usuáriosdas licenças da funcionalidade da associação (FTA) parainiciar automaticamente a execução de programas deaplicação associado com um arquivo de dados, mesmo que oarquivo de dados e o programa executável sejam hospedadosem nós de computação diferentes. Tipicamente, o tipo delima funcionalidade da associação permite usuários atransparente execute programas executáveis selecionando osarquivos de dados situados em uma computação faça à máquinaque difere das máquinas onde os programas executáveis estãolocalizado. Em uma modalidade, um usuário de uma máquina decliente 10 pode transparenteinvoque a execução de umprograma executável em uma máquina remota 30 pertoselecionando um arquivo de dados situado na máquina decliente 10. Em uma outra modalidade, a o usuário podetransparente invocar a execução de um programa de aplicaçãono seu máquina de cliente 10 selecionando um arquivo dedados situado em uma máquina remota 30. Em ainda uma outramodalidade, um usuário pode selecionar um arquivo de dadosarmazenado em uma máquina remota 30' , como um servidor derede, e invoque transparente a execução do programaexecutável associado em uma máquina remota 30, tais comouma aplicação usuário da execução. Tipicamente, a execuçãopermite o processamento dos índices do arquivo de dadosselecionado, a saída de que é fornecido então ao usuário namáquina de cliente 10. Deve ser compreendida que osexemplos que usam extensões de nome de arquivo refletemnecessariamente as idiossincrasias das modalidades queutilizam a família de WINDOWS de sistemas de exploração. Osoutros métodos e instrumento do instrumento das modalidadesdentro concorde usando os parâmetros especiais armazenadosno arquivo de dados próprio, os dados contidos no arquivode dados, os registros do sistema de arquivo associaram como arquivo de dados, ou um separado arquivo de dados ou basede dados. Por exemplo, modalidades usando a família doMacOS de os sistemas de exploração utilizam tipos docriador da lima e da aplicação e armazenam o file-type osdados da associação na lima do Área de trabalho associaramcom cada dispositivo de armazenamento. As modalidades queusam um sistema de exploração da UNIX-variação utilizamextensões de lima, parâmetros encaixados, ou outrosmecanismos como apropriado. Conformemente, o espaço dasreivindicações não deve ser lido para ser limitado àsmodalidades que confiam sobre extensões ou modalidades denome de arquivo que utilizam sistemas de exploração deWINDOWS. FTA Cliente-Baseado Referência o FIGO. 22A, umdiagrama de fluxo descreve uma modalidade das etapasrecolhido um método de permitir a execução de programadistribuída transparente em uma máquina remota 3 0 com aseleção do representante gráfico do indicia de um arquivode dados situado na máquina de cliente 10. A máquina decliente 10 recebe, de uma de uma pluralidade das máquinasremotas 30, um traço especific uma associação entre um tipode arquivo de dados e um programa executável para aexecução em uma de uma pluralidade das máquinas remotas 3 0(etapa 2206). Em algumas modalidades, o traço especific umaassociação entre um tipo de arquivo de dados e um programaexecutável para a execução em uma máquina virtual situadaem uma de uma pluralidade das máquinas remotas 30. Amáquina de cliente 10 apresenta uma descrição gráfica de umarquivo de dados armazenado na máquina de cliente 10 (etapa2214) e recebe uma seleção da descrição gráfica do arquivode dados (etapa 2218). A máquina de cliente 10 identificaum programa executável associado com o tipo do arquivo dedados selecionado usando o traço recebido (etapa 2222) eemite um pedido a uma máquina remota 3 0 para a execução doprograma executável identificado (etapa 2226). Em umamodalidade, a máquina de cliente 10 inicia a execução deuma aplicação local da exposição (etapa 2230) para receberdados de saída da aplicação do programa da execução (etapa2234), que indica ao utilizador final (etapa 2238). Aindareferindo o FIGO. 22A, quando o cliente, máquina 10 recebeo traço (etapa 106), o traço pode ser recebido por se, comdiversos outros mappings, ou com outros mensagens ou dadostais como actualizações de software. A tabela 3 ilustra umtraço exemplar fornecido em uma modalidade da invenção:TABELA 3 Em uma modalidade, o traço identifica umaassociação entre a programa executável particular para ouso com um arquivo de dados ou um tipo particular dearquivo de dados armazenado no usuário máquina de cliente10. de s. Em uma outra modalidade, o traço especific orelacionamento entre um programa executável e um arquivo dedados nos termos de uma aplicação da máquina de cliente 10que lança o programa executável em a máquina remota 30 eexposições a saída da execução na máquina de cliente 10.Por exemplo, como descrito em relação ao FIGO. 8A (etapa2206) , traçar podia especific aquele quando um " .DOC" alima é selecionada, a máquina de cliente 10 é executarMETAFRAME do software de Citrix do Ft. Lauderdale, FL, emque a volta emite um pedido a uma de uma pluralidade dasmáquinas remotas 30 executar PALAVRA, recebendo os dados desaída da execução para a exposição ao usuário no máquina decliente 10. Em algumas modalidades, uma recepção da máquinaremota 30 o pedido executar o programa de aplicação escolheum método para fornecer acesso ao programa de aplicação,como descrito acima em relação a FIG. 8 (etapa 804). Em umadestas modalidades, a máquina remota 30 determina executara aplicação e fornecer os dados de saída da aplicação aocliente máquina 10. Em outras destas modalidades, a máquinaremota 30 identifica uma máquina remota 30 que execute aaplicação e forneça a aplicação dados de saída à máquina decliente 10. Em ainda outras destas modalidades, a máquinaremota 30 identifica uma aplicação que flui o serviço quetransmite programa de aplicação à máquina de cliente 10para a execução local. Em contudo outros destasmodalidades, a máquina remota 30 identifica uma máquinaremota 30' em qual uma máquina virtual fornece um ambientede computação capaz executando o programa e transmitir deaplicação os dados de saída da aplicação a a máquina decliente 10. Em ainda uma outra modalidade, traçandoespecific o relacionamento no meio um programa executável eum arquivo de dados nos termos de uma aplicação da máquinade cliente 10 esse pede a transmissão do programaexecutável à máquina de cliente 10 de uma aplicação fluir oserviço forneceu por uma máquina remota 30. Em outro asmodalidades, o traço poderiam especific aquela quando umalima é selecionada, cliente a máquina 10 é estabelecer umaconexão a uma máquina virtual fornecida por um dapluralidade das máquinas remotas 3 0 para iniciar sobre aexecução de um programa de aplicação a máquina virtual epara receber dados de saída da aplicação da execução paraexposição ao usuário na máquina de cliente 10. Em algumasdestas modalidades, como descrito em relação a FIG. 8(etapa 808), uma máquina virtual e a máquina da execução emque a máquina virtual é lança á, configurado, e forneça ousuário da máquina de cliente 10 o acesso à lima. Emalgumas modalidades, a máquina de cliente 10 indica umalista de nomes da lima associado com os arquivos de dadosarmazenados na máquina de cliente 10. Em ainda outro amodalidade, representante do indicia das limas armazenadasna máquina de cliente 10 é misturado com o representante doindicia das limas armazenadas em uns ou vários telecontrolemáquinas 30, ou nas máquinas virtuais que executam nasmáquinas remotas 30. Nisto a modalidade, FTA cliente-baseado for operativa quando representante do indicia deuma lima armazenado na máquina de cliente 10 é selecionado.Em uma outra modalidade, múltipla os formulários de FTA(veja abaixo) são operativos, com o formulário apropriadode FTA ativado baseado na posição da lima associou com oindicia selecionado. FIGO. 22B ilustra uma modalidade dasetapas tomadas por um telecontrole máquina 3 0 no processocliente-baseado da associação do file-type. Um traço édesde que especific uma associação entre um tipo de arquivode dados armazenado em um cliente máquina 10 e um programaexecutável para a execução em uma de uma pluralidade demáquinas remotas 3 0 (etapa 2254) . Um pedido executar oprograma executável é recebido (etapa 2262) e o programaexecutável é executado em um da pluralidade das máquinasremotas 30 (etapa 2266). Em uma modalidade, o telecontrolea máquina 3 0 que recebe o pedido executar o programaexecutável escolhe a forneça o acesso pedido como descrevemacima em relação a FIG. 8 (etapa 2204 e etapa 2206) . Emalgumas modalidades, a máquina remota 3 0 recebe a pedidopara a transmissão do programa executável identificado aocliente máquina 10 para a execução local. Em uma destasmodalidades, o telecontrole a máquina 3 0 escolhe fornecer amáquina de cliente 10 o executável programa através de umaaplicação que flui o serviço como descrito acima. Em outrosde estas modalidades, a máquina remota 3 0 escolhem fluir oexecutável programe a uma máquina remota 3 0 ou a umamáquina virtual que executa em um telecontrole faça àmáquina 30'.
FTA Usuário-Baseado Referindo agora FIG. 23, umdiagrama de fluxo descreve uma outra modalidade de asetapas recolhidas um método para permitir o programadistribuído transparente execução em uma máquina de cliente10 com a seleção do indicia gráfico representante de umarquivo de dados situado em uma máquina remota 30. Amáquina de cliente 10 presentes uma descrição gráfica de umarquivo de dados armazenado em uma de uma pluralidade demáquinas remotas 30 (etapa 2300). A máquina de cliente 10recebe uma seleção da descrição gráfica do arquivo de dados(etapa 2304) e transmite a seleção a uma da pluralidade dasmáquinas remotas 30 (etapa 2308). A máquina de cliente 10recebe um pedido de uma da pluralidade das máquinas remotas30 executar o programa executável associou com o arquivo dedados selecionado (etapa 2312) e executa o programaexecutável associado (etapa 2316) . Ainda referindo FIG. 23,a máquina de cliente 10 apresenta um usuário com adescrição gráfica pelo menos de um arquivo de dadosarmazenado pelo menos em um telecontrole máquina 3 0 (etapa2300). Em uma modalidade, representante do indicia daslimas armazenado em umas ou várias máquinas remotas 30, enas máquinas virtuais que executam em umas ou váriasmáquinas remotas 30, são misturados com o indiciarepresentante das limas armazenadas na máquina de cliente10. Nesta modalidade, FTA usuário-baseado for operativoquando representante do indicia de uma lima armazenada em aa máquina remota 30 é selecionada. Em uma outra modalidade,formulários múltiplos de FTA (veja acima, abaixo) sejaoperativo, com o formulário apropriado de FTA ativadobaseado na posição da lima associou com o indicia gráficoselecionado. Como descrito acima em relação a FIG. 8 (etapa804), um telecontrole a máquina 30 que recebe um pedidoalcançar um arquivo de dados selecionado escolhe um métodopara fornecer o acesso ao arquivo de dados. Em umamodalidade, o arquivo de dados reside sobre a máquinaremota 30. Em uma outra modalidade, o arquivo de dadosreside em a máquina remota 30', como um servidor de rede.Em algumas modalidades, o telecontrole a máquina 3 0consulta um traço para identificar um programa de aplicaçãoassociado com o arquivo de dados pedido. Em algumasmodalidades, a máquina remota 3 0 escolhe fornecer máquinade cliente 10 com acesso à lima através da execução doassociado o programa de aplicação em um ambiente decomputação forneceu por uma máquina virtual (etapa 8 06) . Emuma destas modalidades, a máquina remota 3 0 podeidentificar a máquina remota 30' para executar o programade aplicação e transmitir a aplicação dados de saída àmáquina de cliente 10. Em outras destas modalidades, amáquina remota 30 identifica uma máquina remota 30' paraexecutar a aplicação o programa em um ambiente decomputação forneceu por uma máquina virtual que executasobre a máquina remota 30', como descrito em relação aFIG. 8 (etapa 808). Em outras modalidades, a máquina remota30 identifica uma máquina remota 30' fornecendo umaaplicação que flui o serviço capaz de transmitir programade aplicação a máquina de cliente 10 para a execução namáquina de cliente 10 como descritos em relação a FIG. 8(etapa 816). Em um destes as modalidades, a aplicação queflui o serviço transmitem a aplicação programa a umamáquina remota 30' para a execução e a máquina remota 30transmite dados de saída da aplicação resultando daexecução ao cliente máquina 10. Em algumas modalidades, amáquina remota 30 seleciona um da número predeterminado demétodos para executar uma aplicação pedida programa,responsivo a uma política, o número predeterminado deincluir dos métodos um método para executar a aplicaçãopedida em um ambiente de computação fornecido por umamáquina virtual. Em uma destas modalidades, a aplicaçãofluir o serviço transmite o programa de aplicação a umamáquina remota 30' para executar em um ambiente decomputação forneceu por uma máquina virtual que executadentro a máquina remota 30'. Em outras destas modalidades,a máquina remota 3 0 selecionam um método fluindo o programade aplicação pedido a um virtual faça à máquina eexecutando a aplicação enumerada na máquina virtualambiente. Em ainda outras destas modalidades, a máquinavirtual são avaliado e, uma determinação para fluir aaplicação pedida é feita responsivo ã avaliação. Em outrasmodalidades, a determinação ao córrego uma de umapluralidade de limas que compreendem um programa deaplicação enumerado á a máquina virtual é feita responsivaàs credenciais recolhidas de uma máquina de cliente 10.Tendo os dados recebidos associados com o arquivo de dadosselecionado, cliente faça à máquina 10 processa tipicamenteos dados recebidos usando o programa da execução eexposições o resultado do processamento ao utilizadorfinal. Como descrito acima, uma máquina de cliente 10conecta a umas ou várias das máquinas remotas 3 0 naexploração agrícola 3 8 da máquina. Em algumas destasmodalidades, a máquina de cliente 10 pode comunicar-se comas máquinas remotas 3 0 para receber os dados da aplicação-saída gerados por uma execução de um programa de aplicaçãoem uma máquina remota 30, ou em uma máquina virtual queexecuta na máquina remota 30. Em algumas modalidades, aspilhas do protocolo são executadas para permitircomunicações entre a máquina de cliente 10 e as máquinasremotas 30. O FIG. 24 é um diagrama de fluxo que descreveuma modalidade particular de um método para estabelecer umprotocol stack extensible e dinâmicamente bindable 20. Emuma modalidade, o método permite que uma máquina de cliente10 especific os índices de um protocol stack dinâmicamentesem exigir que uma máquina remota 30 tem uma descriçãoprévia do protocol stack para uma máquina de clienteparticular e uma exigência de aplicação particular. Em umamodalidade, uma máquina remota 30 é atividade em linha e demonitoração em um sistema de transporte específico (porexemplo LAN ou MACI LENTO) e inicializou o seu protocolstack com os módulos necessários mínimos do protocolo parasuportar um " TTY" modalidade de uma comunicação. Estamodalidade é uma modalidade crua do córrego do ASCII semsuposições do protocolo acima da camada de transporte (istoé não há nenhuma camada de protocolo para a compressão, acifragem, a confiabilidade, a moldação, ou o modem).Similarmente, um acesso procurando da máquina de cliente 10à máquina remota 30 estabelece uma conexão ao sistema detransporte comum com o necessário ajustado do protocolomínimo para suportar uma modalidade de uma comunicação doTTY. Em cima de detectar que uma máquina de cliente 10estabeleceu a conexão do sistema de transporte (etapa2401), o servidor de aplicações transmite um córrego dedados do TTY, " DETECT. sub. - STRING" , em etapa 24 02 queindica o serviço está disponível. O método usado detectandouma conexão da máquina de cliente é dependente do sistemade transporte (por exemplo no caso do transporte do TCP,quando uma máquina de cliente conecta a um portoconhecido). Se a máquina de cliente 10 não responde dentrode um período de tempo prescrito, etapa 2403, umaretransmissão da missão da mensagem ocorre em etapa 2402.
Se não o processo prosigue a etapa 24 05 onde a máquina decliente 10 emite o " da corda do TTY; Detecte-STRING". Emetapa 2406, a máquina de cliente 10 espera a máquina remota30 para responder e, se a resposta está dentro de umintervalo de tempo prescrito, o processo prosigue a etapas2407 onde a máquina de cliente 10 permite o protocoloexigido para suportar seu
aplicação. Se não, a máquina de cliente 10 repete atransmissão da mensagem em etapa 2405. O usuário respondeem etapa 4108 permitindo o jogo exigido dos protocolos. Emetapa 2409, a modalidade do TTY de uma comunicação terminaporque a mensagem seguinte emitida pelo usuário é umprotocolo da camada de apresentação pacote, " PACKET.sub. -INIT.sub. - REQUEST" , que indica que o client1 s exigiu o" DETECT.sub. - STRING" foi recebido e aceitado. Emresposta a etapa 2409, o cliente, em etapa 2410, emite umjogo de pacotes do protocolo da camada de apresentação, "PACKET.sub. - INIT.sub. - RESPONSE" , cada qual é usadopara especific um módulo exigido ou opcional do protocoloque esteja sendo negociado com o usuário. Em etapa 2411, ousuário emite um jogo do " PACKET.sub. - INIT.sub.CONNECT" pacotes. 0 número de pacotes é variável: um paracada pacote do cliente emitido em etapa 2410, assim dando àmáquina remota 30 a oportunidade de negociar os parâmetrossob que as comunicações ocorrerão cancelando os parâmetrosda máquina de cliente 10; ou, a máquina remota 30 podeindicar que todos os parâmetros da máquina de cliente 10são aceitáveis emitindo os parâmetros inalterados. Em etapa2412 a máquina remota 30 permite os protocolos negociados(que incluem alguns protocolos opcionais) de etapa 2411.Depois que a máquina de cliente 10 recebe os pacotes deetapa 2411, a máquina de cliente 10 permite os protocolosnegociados em etapa 2413. Ainda referindo FIG. 24, emalgumas modalidades, a um usuário de anfitrião da máquinavirtual comunica-se com a máquina de cliente 10 parapermitir protocolos negociados. Como descrito acima, umpedido é recebido de uma máquina de cliente 10 para oacesso a um ambiente de computação ou para a execução daaplicação, o pedido que inclui uma identificação de umusuário da máquina de cliente 10. Em algumas modalidades,uma máquina virtual é lança em uma comunicação com umhypervisor. Em outras modalidades, um usuário de anfitriãodos parâmetros associados do protocolo que fornecem ummecanismo de transporte comum, onde o mecanismo detransporte comum é para comunicações cruas da modalidade docórrego do ASCII. Em ainda outras modalidades, um usuáriode anfitrião da máquina virtual são inicializadas com umjogo prescrito dos protocolos e dos parâmetros associadosdo protocolo que fornecem um mecanismo de transporte comum.Um usuário de anfitrião da máquina virtual cria umaprimeira parcela de um protocol stack. Em uma modalidade,um hypervisor cria a primeira parcela do protocol stack. Emuma outra modalidade, o hypervisor transmite uma mensagemde protocolo do pedido à máquina de cliente 10. Em aindauma outra modalidade, o hypervisor recebe da máquina decliente 10 uma pluralidade de pacotes do protocolo queespecific uns ou vários parâmetros do protocolo desejadospela máquina de cliente 10. Em contudo uma outramodalidade, o usuário de anfitrião da máquina virtual gera,em resposta a cada pacote recebido do protocolo, um pacotequeespecific uns ou vários parâmetros do protocolo. Ousuário de anfitrião da máquina virtual transmite umamensagem de protocolo do pedido à máquina de cliente 10. Ousuário de anfitrião da máquina virtual recebe da máquinade cliente 10 uma pluralidade de pacotes do protocolo queespecific uns ou vários parâmetros do protocolo desejadospela máquina de cliente 10. O usuário de anfitrião damáquina virtual transmite, em resposta a cada pacoterecebido do protocolo, um pacote counter- especific uns ouvários parâmetros do protocolo. Em uma modalidade, ousuário de anfitrião da máquina virtual emite uma mensagemdo reconhecimento à máquina de cliente 10 que indica que umdos protocolos especific pela máquina de cliente 10 estêvepermitido pelo menos. Em uma outra modalidade, o usuário deanfitrião da máquina virtual responde a cada pacoterecebido do protocolo transmitido pela máquina de cliente10 com um pacote do protocolo do usuário de anfitrião damáquina virtual, pelo menos um do virtual faça à máquina ospacotes do protocolo do usuário de anfitrião que modificampelo menos um dos parâmetros associados do protocolo. Ousuário de anfitrião da máquina virtual cria no usuário deanfitrião da máquina virtual um a segunda parcela de umprotocol stack, a primeira parcela e a segunda parcela doprotocol stack que estabelece uma canal de comunicação paracomunicar-se com a máquina de cliente 10 que tem osparâmetros negociados do protocolo. Ainda referindo FIG.24, em algumas modalidades, a uma máquina virtual comunica-se com a máquina de cliente 10 para permitir protocolosnegociados como descritos acima. Como descrito acima, umpedido é recebido de uma máquina de cliente 10 para oacesso a um ambiente de computação ou para a execução daaplicação, o pedido que inclui uma identificação de umusuário da máquina de cliente 10. Uma máquina virtual emuma comunicação com um hypervisor é identificada. Em umamodalidade, uma máquina virtual é lança em uma comunicaçãocom um hypervisor. Em uma outra modalidade, uma máquinavirtual em uma comunicação com um hypervisor á. Em umamodalidade, uma segunda máquina virtual inicializada com umjogo prescrito dos protocolos e dos parâmetros associadosdo protocolo que fornecem um mecanismo de transporte comum.Em uma outra modalidade, a segunda máquina virtual éinicializada com um jogo prescrito dos protocolos e dosparâmetros associados do protocolo que fornecem ummecanismo de transporte comum, onde o mecanismo detransporte comum é para comunicações cruas da modalidade docórrego do ASCII. A segunda máquina virtual cria umaprimeira parcela de um protocol stack. A segunda máquinavirtual transmite uma mensagem de protocolo do pedido àmáquina de cliente 10. A segunda máquina virtual recebe damáquina de cliente 10 aa pluralidade de pacotes doprotocolo que especific uns ou vários parâmetros doprotocolo desejou pela máquina de cliente 10. A segundamáquina virtual transmite, em resposta a cada pacoterecebido do protocolo, um pacote queespecific uns ou váriosparâmetros do protocolo. Em uma modalidade, a segundamáquina virtual emite uma mensagem do reconhecimento àmáquina de cliente 10 que indica que um dos protocolosespecific pela máquina de cliente 10 estêve permitido pelo340/588menos. Em uma outra modalidade, a segunda máquina virtualresponde a cada pacote recebido do protocolo transmitidopela máquina de cliente 10 com um pacote do protocolo daresposta, pelo menos um dos pacotes do protocolo daresposta que modificam pelo menos um dos parâmetrosassociados do protocolo. A primeira máquina virtual criauma segunda parcela de um protocol stack, a primeiraparcela e a segunda parcela do protocol stack queestabelece uma canal de comunicação para comunicar-se com amáquina de cliente 10 que tem os parâmetros negociados doprotocolo. Em uma modalidade, a primeira máquina virtualemite uma mensagem do reconhecimento à máquina de cliente10 que indica que um dos protocolos especific pela máquinade cliente 10 esteve permitido pelo menos. Em uma outramodalidade, a primeira máquina virtual responde a cadapacote recebido do protocolo transmitido pela máquina decliente 10 com um pacote do protocolo da resposta, pelomenos um dos pacotes do protocolo da resposta que modificampelo menos um dos parâmetros associados do protocolo. Aindareferindo FIG. 24, em algumas modalidades, a um usuário deanfitrião da máquina virtual comunica-se com a máquina decliente 10 para permitir protocolos negociados comodescritos acima. Como descrito acima, um pedido é recebidode uma máquina de cliente 10 para o acesso a um ambiente decomputação ou para a execução da aplicação, o pedido queinclui uma identificação de um usuário da máquina decliente 10. Em uma modalidade, uma máquina virtual é lançaem uma comunicação com um hypervisor. Em uma outramodalidade, uma máquina virtual em uma comunicação com umhypervisor á. Em uma modalidade, o usuário de anfitrião damáquina virtual inicializado com um jogo prescrito dosprotocolos e dos parâmetros associados do protocolo quefornecem um mecanismo de transporte comum. Em uma outramodalidade, o usuário de anfitrião da máquina virtual éinicializado com um jogo prescrito dos protocolos e dosparâmetros associados do protocolo que fornecem ummecanismo de transporte comum, onde o mecanismo detransporte comum é para comunicações cruas da modalidade docórrego do ASCII. 0 usuário de anfitrião da máquina virtualtransmite uma mensagem de protocolo do pedido à máquina decliente 10. 0 usuário de anfitrião da máquina virtualrecebe da máquina de cliente 10 uma pluralidade de pacotesdo protocolo que especific uns ou vários parâmetros doprotocolo desejados pela máquina de cliente 10. O usuáriode anfitrião da máquina virtual transmite, em resposta acada pacote recebido do protocolo, um pacote counter-especific uns ou vários parâmetros do protocolo. Em umamodalidade, o usuário de anfitrião da máquina virtual emiteuma mensagem do reconhecimento à máquina de cliente 10 queindica que um dos protocolos especific pela máquina decliente 10 estêve permitido pelo menos. Em uma outramodalidade, o usuário de anfitrião da máquina virtualresponde a cada pacote recebido do protocolo transmitidopela máquina de cliente 10 com um pacote do protocolo dousuário de anfitrião da máquina virtual, pelo menos um dospacotes do protocolo do usuário de anfitrião da máquinavirtual que modificam pelo menos um dos parâmetrosassociados do protocolo. O usuário de anfitrião da máquinavirtual gera uma estrutura de dados que representa aconexão e associada com um protocol stack inicial. ousuário de anfitrião da máquina virtual identifica umamáquina virtual em uma comunicação com um hypervisor e geraum espaço do cliente na máquina virtual identificada. Ousuário de anfitrião da máquina virtual gera um segundoprotocol stack associado com o espaço gerado do cliente etransfere a conexão estabelecida entre o usuário deanfitrião da máquina virtual e a máquina de cliente 10 doprotocol stack inicial ao segundo protocol stack associandoa estrutura de dados com o segundo protocol stack. Aindareferindo FIG. 24, em algumas modalidades, a uma máquinavirtual comunica-se com a máquina de cliente 10 parapermitir protocolos negociados como descritos acima. Comodescrito acima, um pedido é recebido de uma máquina decliente 10 para o acesso a um ambiente de computação oupara a execução da aplicação, o pedido que inclui umaidentificação de um usuário da máquina de cliente 10. Umaprimeira máquina virtual em uma comunicação com umhypervisor é identificada. Em uma modalidade, uma segundamáquina virtual é inicializada com um jogo prescrito dosprotocolos e dos parâmetros associados do protocolo quefornecem um mecanismo de transporte comum. Em uma outramodalidade, uma segunda máquina virtual é inicializada comum jogo prescrito dos protocolos e dos parâmetrosassociados do protocolo que fornecem um mecanismo detransporte comum, onde o mecanismo de transporte comum épara comunicações cruas da modalidade do córrego do ASCII.A segunda máquina virtual transmite uma mensagem deprotocolo do pedido à máquina de cliente 10. A segundamáquina virtual recebe da máquina de cliente 10 umapluralidade de pacotes do protocolo que especific uns ouvários parâmetros do protocolo desejados pela máquina decliente 10. A segunda máquina virtual transmite, dentroresposta a cada pacote recebido do protocolo, um pacotequeespecific uns ou vários parâmetros do protocolo. Em umamodalidade, a segunda máquina virtual emite uma mensagem doreconhecimento à máquina de cliente 10 que indica que umdos protocolos especific pela máquina de cliente 10 estêvepermitido pelo menos. Em uma outra modalidade, a segundamáquina virtual responde a cada pacote recebido doprotocolo transmitido pela máquina de cliente 10 com umpacote do protocolo da resposta, pelo menos um do protocoloda resposta pacotes que modificam pelo menos um dosparâmetros associados do protocolo. A segunda máquinavirtual gera uma estrutura de dados que representa aconexão e associada com um protocol stack inicial. Asegunda máquina virtual gera um espaço do cliente naprimeira máquina virtual identificada. A segunda máquinavirtual gera um segundo protocol stack associado com oespaço gerado do cliente e transfere a conexão estabelecidaentre a segunda máquina virtual e a máquina de cliente 10do protocol stack inicial ao segundo protocol stackassociando a estrutura de dados com o segundo protocolstack. Referindo agora FIG. 25, um diagrama de blocodescreve uma modalidade de uma máquina de cliente 10 em umacomunicação com uma máquina remota 30. Quando uma máquinade cliente 10 deseja alcançar um recurso fornecido por umamáquina remota 30, a máquina de cliente 10 pode transmitirum pedido ao porto de comunicações geral definidopreviamente pelo protocolo de comunicações ou ao " well-known" porto de comunicações na máquina remota 30. Em umamodalidade, a comunicação ocorre por um serviço dedatagrama. A máquina remota 3 0 alcança a tabela deendereços do usuário e retorna uma contenção da mensagemendereço da máquina remota 30' fornecendo o acesso aorecurso pedido e a ter menos carga. Em algumas modalidades,um endereço de uma máquina virtual que executa em umamáquina remota 30' ter menos carga é fornecido. Para asmodalidades em que a mensagem identifica a máquina daexecução que tem a carga a mais clara, o sistema deexploração ou o hypervisor podem enviar pedido de umacomunicação, e todo o tráfego subseqüente, à máquinavirtual apropriada. As comunicações subseqüentes sãoendereçadas automaticamente pela máquina de cliente 10igualmente a um " well-known" ou porto de comunicaçõesgeral predefinido na máquina remota 30'. Em uma modalidade,o tipo de protocolo com que a pergunta inicial foi feita àmáquina remota 3 0 determina o protocolo da informaçãoretornada pela máquina remota 30 à máquina de cliente 10.
Assim, se o pedido foi feito usando uma datagrama doTCP/IP, a máquina remota 30 retornaria o endereço do TCP/IPda máquina remota 30' à máquina de cliente 10 e ã máquinade cliente 10 estabeleceria subseqüentemente o contato coma máquina remota 30' usando esse protocolo. Em uma outramodalidade, a datagrama que pede um endereço da aplicaçãopor uma máquina de cliente 10 inclui um pedido para um tipodiferente de protocolo do que esse usado para emitir opedido à máquina remota 30. Por exemplo, a máquina decliente 10 pode fazer um pedido à máquina remota 3 0 usandoo protocolo do IPX e pedir o endereço da máquina remota 30'como um endereço do protocolo do TCP/IP. Como descritoacima, em relação a FIG. 8, (etapas 802-804), uma máquinaremota 30 recebe um pedido para o acesso a um recurso eescolhe um método para fornecer o acesso ao recurso pedido.Em algumas modalidades, a máquina remota 30 retorna oendereço de rede de uma máquina remota 30' tendo o recursodesejado à máquina de cliente 10. A máquina de cliente 10usa então a informação recebida da máquina remota 30 parapedir a conexão à máquina remota especific 30'. Como édescrito acima, tal conexão é estabelecida primeiramente aum " well-known" o porto de comunicações e é transferidomais tarde a um porto de comunicações específico sob ocontrole de um gerente da conexão. O porto de comunicaçõesespecífico é associado com o recurso que executa na máquinaremota 30' qual se comunica então com a máquina de cliente10 através do porto de comunicações específico. Maisdetalhadamente, e referir FIG. 25, em algumas modalidades,a um processo 2502 do cliente na máquina de cliente 10 fazum pedido 2504 à máquina remota 30 obter o endereço de umamáquina remota 30' qual inclui o recurso desejado 2506. Amáquina remota 30 retorna à máquina de cliente 10 umamensagem 2 508 que contem o endereço da máquina remota 30'qual inclui o recurso 2506. Em uma modalidade, o protocolousado neste momento da conexão é um serviço de datagrama. Amáquina de cliente 10 usa o endereço retornado paraestabelecer uma canal de comunicação 2510 com a máquinaremota 30'. O número portuário usado pela máquina decliente 10 corresponde ao " port" conhecido; na máquinaremota 30' qual foi definido pelo protocolo de rede como oporto por que a máquina remota 30' estabelece conexões deuma comunicação com o cliente máquinas 10. O portoconhecido 2512 tem um protocol stack rudimentarmente 2514que inclua primeiramente uma estrutura de dados 2516 dovalor-limite. A estrutura de dados 2516 do valor-limiteaponta ao protocol stack 7 6 de uma comunicação e à conexãodo cliente que estabelece desse modo uma respresentação ouum " original; handle" para a máquina de cliente 10. Aestrutura de dados 2516 do valor-limite permite a conexãoentre a máquina remota 30' e a máquina de cliente 10 a sermovida na vontade entre o gerente 2518 da conexão e osvários recursos 2506 na máquina 30'.Em algumas modalidades,a estrutura de dados 2516 do valor-limite permite a conexãoentre a máquina remota 30' e a máquina de cliente 10 a sermovida na vontade a ou de uma máquina virtual que fornece afuncionalidade da gerência para uma máquina virtual namáquina remota 30'. A estrutura de dados 2516 do valor-limite, em uma modalidade, contem não somente o punho àmáquina de cliente 10 mas pode igualmente conter a outrainformação em relação à conexão do cliente. Na modalidademostrada, a máquina 30' a atividade dos monitores em umsistema de comunicações específico (por exemplo LAN ouMACILENTO) e inicializou este protocol stack mínimo 76 comsomente os módulos necessários do protocolo necessáriospara suportar um " TTY" modalidade de uma comunicação. 0 "TTY" a modalidade de uma comunicação é um córrego simplesdo ASCII sem suposições do protocolo acima da camada detransporte. Isto é, não há nenhuma camada de protocolo paraa compressão, a cifragem, a confiabilidade, a moldação, oua apresentação de dados transmitidos. Assim uma máquina decliente 10 que procura um recurso 2506 que funciona namáquina de cliente 10' estabelece uma conexão ao porto decomunicações conhecido 2512 com o necessário ajustado doprotocolo mínimo para suportar uma modalidade de umacomunicação do TTY. Um gerente 2518 da conexão que executana máquina 30' é o " listening" ao porto de comunicaçõesconhecido 2512 para um pedido de conexão 2510. Quando umpedido de conexão 2510 é recebido da máquina de cliente 10,o gerente 2518 da conexão está notificado 2520. 0 gerente2518 da conexão sabe que protocolo está sendo usado baseadona notificação 2520. Com esta informação o gerente 2518 daconexão cria uma pilha mínima nova 2522 das comunicações doprotocolo, começa um ambiente de computação 2524 (referidodurante todo esta discussão como um ambiente 2524 daexecução) e ligamentos o protocol stack mínimo novo 2522 aoambiente 2 524 da execução. Em algumas modalidades, ogerente 2518 da conexão cria um protocol stack mínimo novo2522 em uma máquina virtual na máquina remota 30'. Emoutras modalidades, o gerente 2518 da conexão cria umprotocol stack mínimo novo 2522 em prever de máquinavirtual administrativo ou funcionalidade da gerência umamáquina virtual que executa na máquina remota 30'. Em aindaoutras modalidades, o gerente 2518 da conexão criam umapluralidade de pilhas mínimas 2522 do protocolo, cada qualpodem ser ficadas situadas na máquina remota 30', em umambiente de computação fornecido por uma máquina virtualque executa na máquina remota 30', ou ao prever de máquinavirtual administrativo ou funcionalidade da gerência umamáquina virtual que executa na máquina remota 30'. Em umamodalidade, a máquina remota 30' inclui um número deambientes 2524 da execução que têm sido começadospreviamente, mas que não foram associados com um porto decomunicações. Nisto a modalidade, começar da pre-conexãodos ambientes da execução permite uma estadia de respostamais rápida do que se cada ambiente 2524 da execução écomeçado quando o pedido de conexão está recebido damáquina de cliente 10. Quando o ambiente 2524 da execução écomeçado, o recurso 2506 pedido pela máquina de cliente 10está começado igualmente. Em uma outra modalidade, se amáquina de cliente 10 não especific um recurso, umaaplicação do defeito é começada tampouco ou o ambiente 2524da execução sem o recurso começado. Em algumas modalidades,o ambiente 2524 da execução é o recurso pedido. O gerente2518 da conexão move então a conexão do cliente, incluindoo identificador ou o punho original do cliente, do portoconhecido 2512 ao protocol stack mínimo novo 2522. Emalgumas modalidades, o gerente 2518 da conexão move aconexão do cliente ao protocol stack mínimo novo 2522 emuma máquina virtual na máquina remota 30'. Em outrasmodalidades, o gerente 2518 da conexão move a conexão docliente ao protocol stack mínimo novo 2522 em prever demáquina virtual administrativo ou funcionalidade dagerência uma máquina virtual que executa na máquina remota30'. Em ainda outras modalidades, as parcelas dosmovimentos do gerente 2518 da conexão da conexão do clientea uma pluralidade de protocolo mínimo empilham 2522, cadaqual podem ser ficados situados na máquina remota 30' , emum ambiente de computação fornecido por uma máquina virtualque executa na máquina remota 30' , ou ao prever de máquinavirtual administrativo ou funcionalidade da gerência umamáquina virtual que executa na máquina remota 3 0'. Ogerente 2518 da conexão, usando o protocol stack mínimo2522 emite um córrego de dados do TTY que indique que oserviço está disponível. Assim, este método para detectaruma conexão do cliente é independente do porto a que aconexão é estabelecida primeiramente. Se a máquina decliente 10 não responde dentro de um período de tempoprescrito (por exemplo 5 segundos) à mensagem disponível doserviço, enviar novamente do " preste serviços demanutenção ao available" a mensagem é executada pelamáquina 30'. Se a máquina de cliente 10 recebe a mensagem,a máquina de cliente 10 emite uma corda do TTY que indicaque o " preste serviços de manutenção ao available" amensagem foi detectada. A máquina de cliente 10 espera amáquina 30' para responder e se a resposta não é dentro deum intervalo de tempo prescrito (por exemplo 5 segundos) amáquina de cliente 10 envia novamente a mensagem. O gerente2518 da conexão pergunta então 90 a máquina de cliente 10que pede o client' s parâmetros de comunicação do defeito.
Esta pergunta 90 toma o formulário de uma mensagem quesejam passadas de volta à máquina de cliente 10 e queindique que a máquina de cliente 10 deve responder comdetalhes a respeito de que protocolos a máquina de cliente10 gostaria de usar na conexão. Na resposta, a máquina decliente 10 emite um jogo dos pacotes 2526 do protocolo;cada pacote de que é usado para especific exigida ou módulo25 opcional do protocolo que está sendo pedido da máquinaremota 30'. Em uma modalidade, o número de pacotes no jogoé variável com o um pacote que está sendo emitido para cadaprotocolo pedido. Em uma outra modalidade, o número depacotes que está sendo emitido é incluído no encabeçamentodo primeiro pacote. Em uma terceira modalidade, o númerorestante de pacotes que estão sendo emitidos é incluído noencabeçamento de cada pacote e é decrescido com cada pacotede êxito emitido. Assim, a máquina de cliente 10 poderesponder ã pergunta 2528 indicando isso, a compressão porexemplo, da cifragem e de dados será usada. Em tal caso,dois pacotes do protocolo serão emitidos do cliente 10 damáquina à máquina remota 30' e, em uma modalidade, oencabeçamento do primeiro pacote indicará o número depacotes como dois. As respostas à pergunta 90 foramrecebidas uma vez, as configurações do gerente 2518 daconexão um protocol stack usando os excitadores 253 0 doprotocolo, 2530', 2530" quais correspondem aos protocolospedidos pela máquina de cliente 10. Em uma modalidade, ogerente 2518 das conexões coloc cada um dos excitadoresexigidos 2530 do protocolo, 2530', 2530", correspondendoaos protocolos pedidos do cliente (por exemplo um excitadorda cifragem se a cifragem é desejada pelo cliente) no " doprotocol stack; container" 2532 e Iig os junto. Em algumasmodalidades o gerente 80 das conexões coloc os excitadores2530 do protocolo, 2530', 2530" em uma pluralidade de " doprotocol stack; containers" 2532 que residem em posições enas ligações diferentes a pluralidade de " do protocolstack; containers" 2532. Este processo dinâmico permite queuma máquina de cliente 10 especific os índices de umprotocol stack dinâmicamente sem exigir que a máquina 30'tenha uma descrição prévia do protocol stack para umamáquina de cliente particular 10. Usando este método, asmáquinas de cliente múltiplas 10 podem ser seridas por umaúnica máquina 30, mesmo se as máquinas de cliente separadas10 têm exigências vastamente de deferimento para a canal decomunicações associada. Na modalidade mostrada, cadamáquina de cliente 10, 10' , 10" é associado com umprotocol stack respectivo 2522 das comunicações, 2522' e2522". Tais pilhas dinâmicamente extensible do protocolosão descritas mais detalhadamente abaixo. Na modalidadeapenas discutida, o " container" 2532 são um nível deusuário ou um excitador de dispositivo nivelado da semente,tal como um excitador de dispositivo do NT. Este excitadordo recipiente fornece a sustentação subordinada para osmódulos ou o " interno do protocolo; drivers" (geralmente2530) que correspondem às exigências do protocolo damáquina de cliente 10. Esta sustentação subordinada é sob aforma das rotinas do ajudante que, por exemplo, ajudam a umexcitador do protocolo para transferir dados ao excitadorseguinte. Alternativamente, em uma outra modalidade cadaexcitador do protocolo é um excitador completo user-leveiou do semente-nível nse. Referindo agora FIG. 26, o usuárioda visão usa um " assim chamado; browser" programe paraindicar um HTML page 2602 que tem uma janela 2604 dorecurso na tela 2606 do usuário máquina de cliente 10. des. Uma vez que o usuário da visão indicou que a execução dorecurso 2506 deve começar, a aplicação 2706 do navegadorinstantiates um alimentador 2708 do parâmetro e passa osparâmetros do instantiation associados com a janela 2604 dorecurso pelo Tag encaixado genérico 2704 da janela. Oexemplo do alimentador 2708 do parâmetro spawns umexecutivo 2710 da rede e passa-lhe os parâmetros da janela2604 do recurso. O executivo 2710 da rede determina querecurso 2506 é ser invocada, e em que máquina 30' esserecurso 2506 reside. Esta informação é-lhe passadageralmente pelo exemplo do alimentador 2708 do parâmetroque a começ da aplicação 2706 do navegador sob a forma doTag encaixado genérico 2704 da janela, mas o executivo 2710da rede pode precisar de perguntar uma outra máquina remota30, a fim determinar que usuários, eventualmente, hospedamo recurso desejado 2506. 0 executivo 2710 da rede começaentão a execução do recurso e exposições a saída do recurso2506 na janela 2604 do recurso como descritos em detalheacima. O executivo 2710 da rede continua a indicardiretamente o recurso output na janela 2604' da saída dorecurso; até que o usuário da visão indique que a execuçãodo recurso 2506 deve parar, por exemplo fechando a janela2604 do recurso, ou até o usuário da visão estala sobre umTag que indica que um HTML page diferente deve serindicado. Quando isto ocorre, a execução do recurso 2506pode ser terminada. Prefere-se, entretanto, é ao " cache" aconexão. De fato, o primeiro exemplo do alimentador 2708 doparâmetro não é terminado imediatamente. Entretanto, orecurso 2506 continua a executar com um nível de prioridadereduzido, isto é no " background" modalidade, porque oprimeiro alimentador 2708 do parâmetro já não tem o "focus". Geralmente, é desejável realizar a conexão que pôrem esconderijo fornecendo o código fonte do alimentador2708 do parâmetro uma estrutura de dados global acessívelpara registar exemplos. Por exemplo, o alimentador 2708 doparâmetro pode ser fornecido com uma estrutura de dadosglobal acessível da lista lig, disposição de dados, tabelados dados, ou a outra estrutura de dados. Porque aestrutura de dados está global disponível, cada exemplo doalimentador 2708 do parâmetro pode ler e escrever aestrutura de dados. Isto permite cada exemplo doalimentador 2708 do parâmetro ao " register" com cada outroexemplo escrevendo à estrutura de dados para sinalizar suaexistência. Para as modalidades em que nenhuma outrainformação da conexão é armazenada, um limitepredeterminado no número de conexões que podem ser pstas emesconderijo a qualquer altura pode ser ajustado. Nestasmodalidades se o registo de um exemplo resultaria em umnúmero adicional de conexões pstas em esconderijo, um do "cached" as conexões são removidas, isto é o instantiationdo alimentador 2708 do parâmetro associado com essa conexãoé notificado que deve terminar. Antes da terminação, oalimentador 2708 do parâmetro notifica seu executivoassociado 2710 da rede que deve terminar. Por sua vez, oexecutivo 2710 da rede fecha sua sessão com o usuário quehospeda o recurso 2506 e termina-a então. Nas modalidadesem que a outra informação é armazenada, a informaçõesadicionais pode ser usada a controla mais eficazmente asconexões pstas em esconderijo. Por exemplo, se um usuárionão viu ativamente um HTML page 2602 em um númeropredeterminado de minutos, por exemplo dez minutos, oinstantiation do alimentador 2708 do parâmetro é instruídopara terminar, a sessão com o usuário de acolhimento éterminada, e o exemplo do alimentador 2708 do parâmetroremove sua entrada no registro. A informação psta emesconderijo da conexão pode ser controlada usando todo oesquema conhecido da gerência do esconderijo. As entradasda conexão podem ser rejeitadas em um " primeiramentedentro, primeiro out" a base, isto é a entrada a mais velhaé rejeitada cada vez que uma entrada nova deve seradicionada. Alternativamente, as entradas de informaçãopstas em esconderijo da conexão podem ser rejeitadas em um"menos recentemente used" base, que rejeita a informaçãoem relação às conexões que foram usadas menos quantidadepelo usuário. Outras técnicas de gerência do esconderijo,tais como a recolocação aleatória, podem igualmente serusadas. Se o usuário da visão retorna a um HTML pageprecedente 2 6 02 que tem uma conexão psta em esconderijo, oexecutivo 2710 da rede associado com o HTML page 2602 estáretornado ao primeiro plano, isto é, regains o " focus" , eprocessamento do o recurso associado recomeça a nível daprioridade normal. Caso necessário, o executivo 2710 darede restabelece a conexão com o recurso 2506. Emboranenhum dados de saída esteja armazenado pelo executivo 2710da rede para conexões pstas em esconderijo, assim que umaconexão for restabelecida para uma janela 2604 do recurso aconexão ao recurso 2506 está restabelecida e o recurso 2506escreve outra vez diretamente à janela 2604 do recurso.
Referindo FIG. 27, uma lima de HTML 2602 localizou em umamáquina 30' e construído de acordo com uma modalidade dainvenção inclui um Tag encaixado genérico 2704 da janela. OTag encaixado genérico 2 7 04 da janela é toda a construçãode dados que indicar a um navegador 60 que indica a lima deHTML 2602 que uma janela encaixada genérica 2604 deve serindicada em uma posição particular no HTML page 2602descrito pela lima de HTML 2602. O Tag encaixado genérico2704 da janela pode incluir a informações adicionais, talcomo a altura da janela, largura da janela, estilo da beirada janela, cor do fundo ou teste padrão na janela, que osrecursos podem ser indicados na janela, como freqüentementea exposição da saída deve ser atualizado, ou alguma outrainformações adicionais que for útil realçar a exposição dasaída do recurso. Alguns exemplos dos Tag encaixadosgenéricos da janela que podem ser encaixados em uma lima deHTML seguem. Tag de ActiveX Tag de encaixe de Netscape Tagde JAVA Em cada caso acima, o Tag indica que uma janela quetem uma altura de 295 pixéis e uma largura de 436 pixéisdeve ser extraída para receber a saída do recurso. Cada Tagigualmente especific que o recurso deve automaticamentecomeçar a execução e que a janela em que a saída do recursoé indicada deve ser extraída com uma beira. O ActiveX e oNetscape obstruem dentro Tag têm os parâmetros remotos dorecurso especific no " da lima; direct.ica" localizado no "do diretório; /ica." O Tag de JAVA especific os parâmetrosremotos do recurso diretamente. No exemplo acima, oendereço da máquina 3 0 que hospeda o recurso é especificassim como o nome do recurso a ser. A aplicação 2706 donavegador alcançado a lima de HTML 2602 emitindo um pedidoa um endereço específico do localizador de recurso uniforme(URL). A máquina 30' hospedar a lima de HTML 2602 transmiteos dados da lima de HTML 2602 à aplicação 2706 donavegador, que indica o texto e traduz todos os Tag queforem incluídos na lima de HTML 2602. A aplicação 2706 donavegador indica os dados da lima de HTML 2602 como um HTMLpage 2602. Se um Tag encaixado genérico 2704 da janela estáatual na lima de HTML 2602, tais como um dos Tag descritosacima, o navegador 6 0 extrai uma janela em branco 2 6 04 noHTML page indicado 2602.A execução do recurso desejado 2506pode começar imediatamente em cima da exposição do HTMLpage 2602 ou a execução pode esperar algum sinal, porexemplo um usuário especific entrado que indique a execuçãodo recurso 2506 deve começar. A execução do recurso 2506 écomeçada uma vez, o navegador que a aplicação 2706instantiates um alimentador 2708 do parâmetro associado coma janela 2604 do recurso. O exemplo do alimentador 2708 doparâmetro pode spawned como um processo de criança daaplicação 27 06 do navegador, como um processo do par daaplicação 2706 do navegador, uma linha de estática-lig daexecução, uma linha da dinâmico-ligação da execução, oucomo uma biblioteca dinâmicamente Iig (" DLL") associadocom a aplicação 2706 do navegador. A aplicação 2706 donavegador passa todos os parâmetros específicos associadoscom a janela 2604 do recurso que sejam fornecidos pelo Tagencaixado genérico da janela 66 ao exemplo do alimentador2708 do parâmetro. Adicionalmente, a aplicação 2706 donavegador pode passar o punho para a janela 2 6 04 do recursoao exemplo do alimentador 2708 do parâmetro ou o exemplo doalimentador 2708 do parâmetro pode perguntar a aplicação2706 do navegador para recuperar o punho para a janela 2 604do recurso. O exemplo do alimentador 2708 do parâmetroigualmente spawns um executivo 2710 da rede. 0 executivo2710 da rede pode spawned como um processo de criança doexemplo do alimentador 2708 do parâmetro, uma linha deestática-lig da execução, uma linha da dinâmico-ligação daexecução, ou como um processo do par do exemplo doalimentador 2708 do parâmetro. O exemplo do alimentador2708 do parâmetro envia a toda a janela especific dorecurso 2604 parâmetros ao executivo 2710 da rede.
Parâmetros que são não especific pelo exemplo doalimentador 2708 do parâmetro ou pelo Tag genéricoencaixado 2704 da janela pode ser ajustado aos valores dedefeito. O executivo 2710 da rede pode ter determinadosdefeitos do parâmetro hard-coded, ou o executivo 2710 darede pode alcançar uma lima que contenha defeitos doparâmetro. O executivo 2710 da rede cria sua janela 2604'da saída dos recursos próprios;. O executivo 2710 da redecria sua janela 2604' da saída do recurso; como uma criançada janela indicada 2604 do recurso e de exposições seurecurso output a janela 2604' diretamente sobre a janela2604 do pai extraída pela aplicação 2706 do navegador.Desde a janela 2604' da saída do recurso; é extraída peloexecutivo 2710 da rede uma criança da janela 2604 dorecurso extraída pela aplicação 2706 do navegador, a janela2604' da saída do recurso; herda várias propriedades de seupai que inclui a informação da posição. Conformemente, ajanela 2604' da saída do recurso; seguirá a janela 2604 dorecurso como o usuário de vista enrola a tela das ações daaplicação 2 706 ou executa outro do navegador que variam aposição da janela 2604 do recurso. O executivo 2710 da redeigualmente estabelece uma canal de comunicações com amáquina 30' e invoca a execução do recurso desejado 2506pela máquina 30' usando a metodologia da conexão descritaacima. O executivo 2710 da rede, que actua como a máquinade cliente 10 na descrição acima, passa todos os parâmetrosque receba do instantiation do alimentador 2708 doparâmetro à máquina 30' , junto com alguns valores dedefeito necessários. Se um parâmetro não é passado àmáquina 30' , a máquina 30' pode pedir o parâmetro se é umparâmetro necessário que não tenha nenhum valor de defeito,por exemplo " usuário - identificação, " ou pode fornecerum valor de defeito para o parâmetro, por exemploprioridade de execução. A máquina 30' começa a execução dorecurso desejado 2506 e dirige a saída ao executivo 2710 darede. O executivo 2710 da rede recebe dados do recurso 2506e indica os dados de saída em sua janela 2604' da saída dorecurso;. Desde a janela 2604' da saída do recurso; éextraído sobre a janela 2604 do recurso extraída pelaaplicação 27 06 do navegador, os dados de saída do recurso éindicado no HTML page 2602. Como notável acima, o recursooutput a janela 2604' é extraída pelo executivo 2710 darede uma criança da janela 2 6 04 do recurso extraída pelaaplicação 2706 do navegador. Isto permite que o recursooutput a janela 2604' para enrolar como o HTML page 2602 éenrolado A janela 2604' da saída do recurso; igualmenterecebe a entrada do usuário da visão. Os dados de entradacrus, por exemplo um clique de rato, são recebidos najanela 2604' da saída do recurso; pelo executivo 2710 darede. 0 executivo 2710 da rede envia os dados de entradacrus ao recurso 2506 que executa na máquina 30" Desse modo,o usuário da visão pode interagir com o recurso 2506através do HTML page 2602. Consultando agora a FIG. 28, ena breve vista geral, uma modalidade do o sistemainterativo do hipermeio da invenção inclui uma máquina decliente 10, a máquina remota 3 0 da rede e uma máquinaremota 30' da execução; interconectado por uma ligação decomunicações 150, referiu nisto sem toda a perda dageneralidade como uma rede ou uma correia fotorreceptora. Amáquina remota 3 0 da rede pode ser fornecido por umamáquina remota 30. A máquina 30' da execução; pode serfornecido por uma máquina física ou por uma máquinavirtual. Um usuário em uma máquina de cliente 10 que desejaalcançar o recurso 2802 que é ficado situado na máquina 30'da execução; na correia fotorreceptora 15 O fazem assim coma a interface de utilizador gráfica 2804, que está nistoreferiu sem toda a perda de generalidade como um hipermeio,situado na máquina de cliente 10. O gráfico a relação éindicada em um dispositivo de exposição gráfica 124. Osdados são incorporados por a o rato 16 e um teclado 17localizaram na máquina de cliente 10. O gráfico indique oupagine 2806 que as primeiras opiniões do usuário nohipermeio 2804 são referido nisto sem alguma perda degeneralidade como o Home Page ou o Página de rede de orecurso 2802. Uma página 2806 ou Home Page do hipermeio2804 inclui uma ligação gráfica 2808 ou a ligação textual2810 referida nisto sem alguns perda de generalidade comoum hiperlink. O Página de rede é indicado por um processo2602 referido nisto sem alguma perda de generalidade comoum navegador de rede 2602 execução na máquina de cliente10. O navegador de rede 2602 obtém a primeiro página ouPágina de rede 28 06 de uma máquina remota 30 da rede eindica o Página de rede 2806 no hipermeio 2804 para que ousuário ver no dispositivo de exposição gráfica 124. Quandoo usuário selecionar um recurso 2802 para alcançar(selecionando uns 2808 gráficos ou hiperlink 2810 textualusando o rato 16 ou o teclado 17) a rede o navegador 2602obtém uma lima de configuração 2812 da rede que correspondeao recurso selecionado 2802 de um usuário de redepredeterminado 2606 e dos começos a agente 2814 do clienteque se comunicará com o recurso selecionado 2802. Isto serádiscutido mais detalhadamente abaixo. O agente 2814 docliente lê a lima de configuração 2812 e estabelece a aligação de comunicações a um agente 2816 do usuário nousuário 24 da execução especific pela lima de configuração2812. Em uma modalidade, a lima de configuração 2812 incluio nome do recurso e a posição do nó do recurso 2802correspondendo ao hiperlink 2808, 2810. A lima deconfiguração pode igualmente contenha a informação opcionaltal como a autenticação ou o usuário autorizado informação.O agente 2816 do usuário executa as operações necessárias(como autenticação) para permitir o acesso do agente 2814do cliente ao recurso 2802, e uma vez que o acesso épermitido, permite o acesso ao recurso 2802 pedido pelousuário. O agente 2816 do usuário pode executar em umhypervisor, uma máquina virtual, ou em um sistema deexploração. Em algumas modalidades, a funcionalidadeforneceu pelo o agente 2816 do usuário é separação entre umhypervisor e uma máquina virtual ou no meio duas máquinasvirtuais. Em ainda outras modalidades, a funcionalidadeforneceram pelo o agente do usuário é separação entre umhypervisor e um sistema de exploração do convidado execuçãoem uma máquina virtual. Em algumas modalidades, uma conexãoá o ambiente de computação que inclui o recurso 2802 éestabelecido, como descrito em um detalhe mais adicionalabaixo. Uma vez que o recurso 2802 está disponível nousuário 30' da execução; , o cliente a máquina 10 podealcançar o recurso 2802 através do agente 2816 do usuáriodiretamente com o agente 2814 do cliente sem intervençãopelo navegador de rede 2602. 0 agente 2814 do cliente éentão responsável para receber dados do usuário através dorato 16 e do teclado 17 e transmiti-lo ao recurso 2802 namáquina 30' da execução;. Similarmente, o agente 2814 docliente é responsável para recebendo dados do recurso 2802na máquina 30' da execução; e indicando os dados em umajanela de exposição 2818 no dispositivo de exposiçãográfica 124 na máquina de cliente 10. Deve-se anotar que ajanela de exposição 2818 pode seja ficado situado dentrodos limites ou da parte externa os limites do hipermeio2804. Quando o recurso 2802 é terminado o agente 2816 dousuário instrui agente 2814 do cliente para desconectar aligação de comunicação 150 entre o cliente agente 2814 e oagente 2816 do usuário. Em algumas modalidades, o agente dousuário 2816 podem residir fora da máquina 30' daexecução;. Em outras modalidades, o agente 2814 do clientepode residir fora da máquina de cliente 10. O FIG. 29descreve a operação do sistema mais detalhadamente.Inicialmente, o agente 2814 do cliente é registado (etapa2901) com o navegador de rede 2602 do a máquina de cliente10 e uma entrada são feitas na rede browser' lima deregisto de s 2820 (FIG. 28) . Licenças desta entrada onavegador de rede 2602 para começar o cliente agente 2814sempre que um tipo de lima dado (que inclui datilografacomo um tipo do MIME) é pedido pelo hiperlink 2808, 2810 dohipermeio 2804. Neste caso o agente 2814 do cliente éprojetado permitir um usuário na máquina de cliente 10 aexecute e interaja com um recurso remoto 28 02 em umamáquina 30' da execução;. O agente 2814 do cliente seriaregistado com o navegador de rede 2602 tais isso sempre queum hiperlink 2808, 2810 pediu o tipo de lima dado (porexemplo .RMT para a execução remota) do navegador de rede2602, navegador de rede 2602 começariam o agente 2814 docliente que permitiria a execução remota e interação com umresidente do recurso 2802 em uma máquina 30' da execução;,a invocação do agente 2814 do cliente é discutida maisdetalhadamente abaixo. Quando um usuário desejar alcançarum recurso de um hipermeio o ambiente, por exemplo umprograma da base de dados, o hipermeio 2 8 04 é indicado emuma maneira que seja conhecida àquelas hábeis no art.Quando o usuário seleciona um hiperlink 2808, 2810 napágina 2806 do hipermeio (etapa 2902) usando o rato 16 ou oteclado 17 na máquina de cliente 10, um pedido é feito aonavegador de rede 2 6 02 para o arquivo de dadoscorrespondente (etapa 2903). Neste exemplo, o tipo de lima( . RMT) é pedido. 0 navegador de rede 2602 obtém a lima deconfiguração correspondente 2812 do usuário de rede 2606que é especific no pedido da lima fizeram perto o hiperlink2808, 2810 ao navegador de rede 2602 (etapa 2904). A rede onavegador 2 6 02 compara então a lima de configuração obtida2812 com lima de registo 2820 dos nomes de agente docliente que mantém (etapa 2905). Em uma modalidade, onavegador de rede 2602 compara um tipo de lima de obtidolima de configuração 2812 com a lima de registo 2820. Emuma outra modalidade, o navegador de rede 2602 compara umaentrada na lima de configuração obtida 2802 com a lima deregisto 2820. Se o agente 2814 do cliente especific pelo alima de configuração 2812 é encontrada na lima de registo2820, o agente 2814 do cliente é começado (etapa 2906) . 0agente invocado 2814 do cliente lê a lima de configuração2812 ( etapa 2907) , e baseado na informação na lima deconfiguração 2812, começam a estabeleça uma ligação decomunicação com o agente 2 816 do usuário na execuçãousuário 24 (etapa 2908), neste caso a execução da aplicaçãode base de dados das vendas usuário (geralmente 30').Considerando o processo de começar a ligação decomunicações da etapa 2908 (FIG. 29) mais detalhadamente,uma comunicação começam com o agente 2816 do usuárioatividade de uma comunicação da monitoração na rede 150.Neste momento, nenhum protocolo as suposições são feitaspelo agente 2816 do usuário além daqueles necessários paracamada de transporte. Similarmente, o agente 2814 docliente igualmente não faz nenhuma suposição do protocolode comunicações além daquela exigida pela camada detransporte. Uma vez que o agente 2816 do usuário determinaque um agente 2814 do cliente está tentando a comunique-secom ele, o agente 2816 do usuário transmite uma mensagem aocliente agente 2814 que indica que o serviço estádisponível. Uma vez que o agente 2814 do cliente determinaque o serviço está disponível no máquina remota 30' daexecução; , o agente 2814 do cliente transmite uma mensagemao agente 2816 do usuário que indica que está pronto paraprosiguer com a comunicação protocolo. Uma vez que o agente2816 do usuário respondeu que está pronto para continuar oprotocolo de comunicação, o agente 2814 do cliente permiteo protocolo necessário para que funcione a aplicação 36. Emresposta à mensagem do o agente 2814 do cliente, o agente2816 do usuário igualmente permite o protocolo exigido, oagente 2816 do usuário transmite então uma mensagem usandoo protocolo exigido indicando isso o cliente agent' opedido de s foi recebido e aceitado. Na resposta o agente2814 do cliente e o agente 2816 do usuário trocam a jogodas mensagens que negociam os parâmetros sob quecomunicações ocorrerá. Uraa vez que as negociações estãocompletas, o agente 2814 do cliente e o usuário o agente2816 pode comunicar-se como necessário para o recurso 2802para ser funcione pelo usuário. Uma vez que o protocolo decomunicações foi estabelecido e o usuário o agente 2816autenticou o agente 2814 do cliente (etapa 2909) (porexemplo determinando que o usuário tem a permissão ler eescrever à base de dados) o acesso ao recurso 2802 (etapa2910) é fornecido pela execução da aplicação usuário 24.
Neste momento recurso 2802 no usuário 30' da execução; écomunicação através do agente 2816 do usuário com o agente2814 do cliente no cliente máquina 10. O agente 2814 docliente é agora responsável para transmitir a entrada dedados pelo usuário que usa o rato 16 e o teclado 17 aorecurso 2802 no máquina 30' da execução;. Mais, o agente2814 do cliente é responsável para receber dados para aexposição do recurso 2802 e indicar esses dados no janela2818 da aplicação no dispositivo de exposição gráfica 124do cliente máquina 10. Deve-se anotar que o protocolo deapresentação subjacente que passa os dados a uma camada detransporte tal como o TCP/IP devem ser capazes datransferência informação gráfica. Exemplos de taisprotocolos que pode ser usado para uma comunicaçãointerativa do hypermedia inclui o protocolo do publicdomain Xll, protocolo de computação independente daarquitetura do proprietário (AIC) de sistemas de CitrixInc., ou o protocolo remoto proprietário do Área detrabalho (RDP) de Microsoft Corporation. Assim o sistemaacima descrito permite um usuário em uma máquina de cliente10, qual pode ter os recursos muito limitados, começar einteragir com um recurso 2802 localizado em uma máquina 30'da execução;. O recurso 2802 funciona então no máquina 30'da execução; e os dados são entrados e os resultados sãoindicados no máquina de cliente 10. Em algumas modalidades,o recurso alcançado 2802 executa em uma máquina virtualforneceu pela máquina remota 30'. Referindo agora FIG. 30,um diagrama de fluxo descreve uma modalidade de método defazer uma página do hipermeio interativa, a página dohipermeio indicado por um navegador de rede. Como descritoacima, um hiperlink em a a página do hipermeio indicada emuma máquina de cliente 10 é selecionada, o hiperlinkidentificando um recurso de computação desejado (etapa3002). Uma configuração do hiperlink a lima é recuperada, alima de configuração do hiperlink que corresponde aohiperlink e identificando uma máquina remota 30' (etapa3004) . Um agente do cliente é começado em um clientemáquina 10 (etapa 3006). O agente do cliente cria umaligação de comunicação á máquina virtual que executa namáquina remota 30' identificado pelo hiperlink lima deconfiguração (etapa 3008). O agente do cliente recebe dadosdo virtual faça à máquina e exposições na máquina decliente 10 os dados recebidos sem intervenção pelonavegador de rede (etapa 3010). Um hiperlink em uma páginado hipermeio indicada em uma máquina de cliente 10 éselecionado, o hiperlink que identifica um recurso decomputação desejado (etapa 3002). Em uma modalidade, apágina do hipermeio é obtida de uma máquina remota 3 0 antesda seleção do hiperlink na página do hipermeio. Em outros amodalidade, a página do hipermeio é responsiva recebido aum pedido para enumeração de recursos disponíveis. Uma limade configuração do hiperlink é recuperada, a lima deconfiguração do hiperlink correspondência ao hiperlink eidentificação de uma máquina remota 30' (etapa 3004). Emuma modalidade, uma máquina remota 30, funcionando como umamáquina brokering, identifica a máquina remota 30'. Em umaoutra modalidade, a máquina remota 30' funções como umamáquina da execução. Em ainda uma outra modalidade, umhypervisor executa na máquina remota 3 0'. Em contudo umaoutra modalidade, um virtual a máquina é lança em umhypervisor que executa na máquina remota 30. Em algumasmodalidades, um agente do usuário começam em uma máquinavirtual no telecontrole máquina 30'. Um agente do cliente écomeçado na máquina de cliente 10 (etapa 3006). Em um amodalidade, o agente do cliente é começada pelo navegadorde rede em cima da fósforo bem sucedido de uma entrada nalima de configuração do hiperlink com um identificadorassociado com o agente do cliente em uma lima de registoacessível pela rede navegador. Em uma outra modalidade, oagente do cliente é registado com a rede navegador. 0agente do cliente cria uma ligação de comunicação a umamáquina virtual execução na máquina remota 30' identificadopela lima de configuração do hiperlink (etapa 3 008). Em umamodalidade, execução de um programa de aplicaçãoidentificado começa na máquina virtual em resposta àligação de comunicação criada. Em uma outra modalidade, oagente do cliente cria a ligação de comunicação semintervenção pelo navegador de rede. O agente do clienterecebe dados da máquina virtual e das exposições sobre amáquina de cliente 10 os dados recebidos sem intervençãopela rede navegador (etapa 3 010) . Em uma modalidade, osdados recebidos do virtual a máquina é indicada em umajanela de exposição na máquina de cliente 10. Em algum asmodalidades, um protocolo da camada de apresentação sãoempregadas para uma comunicação sobre a ligação decomunicação. Consultando de volta a FIG. 28, em algumasmodalidades de um sistema para fazer a a página interativa,acesso do hipermeio a um ambiente de computação pedido éfornecido através da página interativa do hipermeio. Amáquina de cliente 10 executa uma aplicação 2602 donavegador. Funções de uma máquina remota 30 como a ousuário de rede 2606 e transmite uma lima de configuraçãoda rede ao cliente máquina 10. Um agente 2814 do clienteque executa na máquina de cliente 10 estabelece uma ligaçãode comunicações com uma máquina remota 30' , funcionandocomo uma máquina 30' da execução;. Como descrito acima, amáquina de cliente 10 executa uma aplicação do navegador2602, que indica uma página do hipermeio que inclui umhiperlink que identifica a recurso 2802. Uma máquina remota3 0 funciona como um usuário de rede 3 0 e transmite, emresposta à seleção de hiperlink dito, uma lima deconfiguração da rede à máquina de cliente 10, a lima deconfiguração da rede que corresponde a dito recurso decomputação identificado 2802. Em algumas modalidades, umprocesso obtém a página do hipermeio do usuário de rede 3 0e fornece página do hipermeio à máquina de cliente 10. Emuma modalidade, a lima de configuração da rede compreendeum recurso identificador que corresponde a hiperlink dito ea um endereço de máquina virtual correspondência ahiperlink dito. Em algumas modalidades, a máquina virtual oendereço é um IP address virtual fornecido por um hiperlinkem que o virtual a máquina executa. Em outras modalidades,o endereço de máquina virtual é um IP o endereço associoucom uma máquina 30' da execução; em qual a máquina virtualexecuta. Um agente 2814 do cliente que executa na máquinade cliente 10 estabelece a ligação de comunicações com umamáquina remota 30' , funcionando como uma execução máquina30'. O agente 2814 do cliente estabelece a ligaçãoresponsiva aos dados no lima de configuração da rede. Emuma modalidade, um hypervisor executa na máquina 30' daexecução; e uma máquina virtual que fornece o recurso 2802executa no hypervisor. Em algumas modalidades, a máquinavirtual transmite dados ao agente 2814 do cliente para aexposição sem intervenção pelo navegador aplicação 2602. Emuma destas modalidades, a máquina virtual fornece o acessoao recurso pedido 2 8 02 e aos dados output de uma execuçãodo recurso pedido 2802. Em algumas modalidades, o agente docliente estabelece, responsivo aos dados dentro a lima deconfiguração, uma ligação de comunicações com um programada gerência execução em uma máquina remota. Em uma destasmodalidades, a gerência o programa executa no usuário derede 2606. Em outra destes as modalidades, o programa dagerência executam na máquina 30' da execução;. Em aindaoutras destas modalidades, o programa da gerência executamem a máquina virtual na máquina 30' da execução;. Contudooutra nestes as modalidades, o programa da gerênciaexecutam em uma máquina virtual que tem os privilégios dagerência na execução fazem à máquina 30' ou em uma máquinaremota 30". Em outras modalidades, o programa da gerêncialança o virtual faça à máquina o fornecimento do recurso decomputação desejado em um hiperlink no máquina 30' daexecução;. Em algumas modalidades, o agente 2814 do clienteindica os dados recebidos de máquina virtual dita em umajanela de exposição encontrada na máquina de cliente 10. Emuma destas modalidades, a janela de exposição é encontradadentro dos limites da página do hipermeio. Em outras destasmodalidades, a janela de exposição é encontrada fora doslimites da página do hipermeio. Referindo FIG. 31, emalgumas modalidades dos métodos descritos acima, os dadostransmitidos pelo recurso 2506 são emitidos a outrasmáquinas remotas 3 0 antes da emissão às máquinas de cliente10. Desse modo, os dados transmitidos pelo recurso 2506estão transmitidos a um número crescente das máquinas decliente 10 enquanto a rede ventila para fora. Quando cadamáquina de cliente 10 terminar sua conexão com a máquina30' , cada protocol stack do cliente (geralmente 2522) esua pilha mínima associada (geralmente 3102) sãodestruídos. Similarmente, o protocol stack mínimo(geralmente 3104) associado com o primeiro protocol stack2522 do cliente é destruído igualmente. Quando o último dos3102 mínimos e (e das pilhas 2522 do protocolo) do clientesubseqüente tem terminado em segundo, a configuração é comoera inicialmente com somente um primeiro protocol stack2522 das comunicações do cliente associado com o ambiente2524 da execução. Anote que até todo o segundo e as pilhassubseqüentes 2522 do protocolo do cliente estão terminadas,o primeiro protocol stack 2522 do cliente não pode serdestruído, mesmo se a máquina de cliente 10 está já nãoatual. Segundo as indicações de FIG. 25 acima, cadaambiente 2524 da execução comunica-se com cada protocolstack 2522 através de um multiplexer 2534, 2534' , 2534".Agora referindo igualmente FIG. 31, é possível para mais deuma máquina 10 receber os dados que estão sendotransmitidos à máquina de cliente 10, por exemplo, a fimsombrear ou monitorar a transmissão dos dados de umamáquina 30' ou para transmitir dados de uma aplicaçãoespecializada da transmissão, tal como uma aplicação dacitação conservada em estoque, de que os mesmos dados sãotransmissão ou transmitiram substancialmentesimultaneamente a um número de clientes (geralmente 10). Emtal caso, a máquina de cliente 10 faz com que o recursoespecializado 2506 execute e transmita seus dados à máquinade cliente 10 como discutidos previamente. Quando umamáquina de cliente 10' pede o acesso ao recurso 2506 datransmissão, o gerente 2518 da conexão começa a construir oprotocol stack 2522' para a segunda máquina de cliente 10'como discutido previamente no que diz respeito à primeiramáquina de cliente 10. Entretanto, porque o recurso 2506 éuma aplicação da transmissão, o gerente 2518 da conexãoreconhece que não precisa de começar um ambiente adicional2524 da execução e toma pref erivelmente as etapasnecessárias a emita os dados do recurso 2506 da transmissãoà máquina de cliente 10 e a toda a máquina adicional 10".Primeiramente, o gerente 2518 da conexão cria um primeiroprotocol stack mínimo 3104 das comunicações que associe comum protocol stack 2522 das comunicações da primeira máquinade cliente 10. O gerente 2518 da conexão em seguida cria umsegundo protocol stack mínimo 3102 e associa-o com oprotocol stack 2522' das comunicações; da segunda máquinade cliente 10'. Como cada máquina de cliente adicional 10"pede o acesso ao recurso 2506 da transmissão, um outroprotocol stack mínimo 3104' é criado e associado com oprimeiro protocol stack 2522 do cliente e um outro protocolstack mínimo 3102' e protocol stack 2522" do cliente; écriado para cada máquina de cliente nova 10". Primeiroprotocol stack 2522 do cliente e todas as pilhas mínimas3104 do protocolo, 3104' associado com o primeiro protocolstack 2522 do cliente, e cada par das pilhas 2522' doprotocolo do cliente; , 2522" e o protocolo mínimo empilha3102, 3102' associado com cada máquina adicional 10' , 10"esteja em uma comunicação por um multiplexer 2534. Emalgumas modalidades, o gerente 2518 da conexão reside forade uma máquina virtual que executa em uma máquina remota30' e cria as pilhas mínimas 3102 do protocolo dentro damáquina virtual que executa na máquina remota 30'. Emoutras modalidades, o gerente 2518 da conexão reside forade uma máquina virtual que executa em uma máquina remota30' e cria as pilhas mínimas 3102 do protocolo dentro deuma segunda máquina virtual que fornece a gerência e afuncionalidade administrativa para a máquina virtual queexecuta na máquina remota 30'. Em ainda outras modalidades,o gerente 2518 da conexão residem fora de um virtualmáquina que executa em uma máquina remota 30' e cria aspilhas mínimas 3102 do protocolo dentro de um hypervisorque fornece a gerência e a funcionalidade administrativapara a máquina virtual que executa na máquina remota 30'.Em contudo outras modalidades, o gerente 2518 da conexãoresidem fora de uma máquina virtual que executa em umamáquina remota 30' e cria as pilhas mínimas 3102 doprotocolo dentro de um sistema de exploração do anfitriãona máquina remota 30' fornecendo a gerência e afuncionalidade administrativa para a máquina virtual queexecuta na máquina remota 3 0". Em algumas modalidades, ogerente 2518 da conexão reside dentro de uma máquinavirtual que executa em uma máquina remota 30' e cria aspilhas mínimas 3102 do protocolo dentro da máquina virtualque executa na máquina remota 3 0'. Quando um multiplexer2534 está dirigindo dados a ou está recebendo dados desomente uma máquina 10, o multiplexer 2534 está actuandocomo um dispositivo simples do pass-through. Entretanto,quando houver mais de uma máquina de cliente 10, 10' , 10"recebendo dados de ou transmitindo dados a um único recurso2506, cada multiplexer (geralmente 2534) toma em duasconfigurações adicionais. Em uma configuração, omultiplexer 2534 é configurado para emitir dados de recursoa ou para receber dados de ambos o primeiro protocol stack2522 e cada um do cliente do protocolo de comunicaçõesmínimo empilha 3104, 3104' associado com ele. Na segundaconfiguração o multiplexer 2534 é configurado para emitiros dados recebidos pelo protocol stack mínimo 3102, 3102 1ao protocol stack 2522· do cliente; , 2522"respectivamente, associado com ele. Nesta modalidade, omultiplexer 2534 pode receber dados de entrada diretamentede cada protocol stack 2522 do cliente, 2522' , 2522".0gerente 2518 da conexão conecta as pilhas mínimas 3104 doprotocolo, 3104' associado com a máquina de cliente 10 como protocolo mínimo empilha 3102, 3102· respectivamente, dasegunda máquina de cliente 101 e máquinas de clientesubseqüentes 10" e instrui o multiplexer 2534 à saídadireta do recurso 2506 ao protocol stack 2522 dascomunicações da máquina de cliente 10 e seu protocolomínimo associado empilha 3104, 3104'. 0 multiplexer 2534 éinstruído igualmente pelo gerente 2518 da conexão paraconectar cada protocol stack mínimo 3102 do segundo ecliente subseqüente, 3102' a seu protocol stack associado2522 do cliente, 2522' , respectivamente. Os dadostransmitidos à máquina de cliente 10 por o primeiroprotocol stack 2522 do cliente conseqüentemente sãotransmitidos igualmente às pilhas mínimas 3104 doprotocolo, 3104' associado com a máquina de cliente 10 edaqui à máquina de cliente IO1 e máquinas de clientesubseqüentes 10" por seu protocolo associado empilha 2522'2522" , respectivamente, e o protocolo mínimo associadoempilha 3102, 3102' , respectivamente. Em uma modalidade, orecipiente do protocol stack inclui uma estrutura de dadospara manter-se a par do número e do tipo de protocolosassociados com um recurso dado 2506. Referindo FIG. 32,como discutidos acima, é possível que o " clients" de umamáquina 30' seja outras máquinas remotas 30' e 30" (somentedois que estão sendo mostrados para a simplicidade) . Asmáquinas remotas 30' e 30" transmita então os dados àsmáquinas de cliente 10 ou às máquinas remotas adicionais30'. Nesta modalidade a saída do protocol stack do usuário(geralmente 2522) é conectada às pilhas 107' do protocolo;das máquinas remotas secundárias 30' e 30". Então comodescritos previamente, os dados são transmitidos entre aspilhas do protocolo e para fora ao máquinas de cliente 10.Desse modo os dados podem ventilar para fora e serdistribuídos a muito mais clientes do que poderazoavelmente ser suportado por um usuário. Em algumasmodalidades, a saída do protocol stack do usuário pode serconectada às pilhas 3102' do protocolo; criado nas máquinasvirtuais que executam nas máquinas remotas 30. Na brevevista geral, em uma modalidade dos métodos descritos acima,um usuário de uma máquina de cliente 10 pede o acesso a unsou vários recursos de uma máquina remota 30, que possafornecer a funcionalidade do servidor de rede. Após terautenticado o usuário credenciais de s, os acessos doservidor de rede user-specific e parâmetros recurso-especificos de uma memória acoplada ao servidor de rede. 0servidor de rede comunica subseqüentemente estes parâmetrosa umas ou várias máquinas remotas 3 0 que hospedam osrecursos pedidos, e os processos do software que operam-senos usuários do recurso executam e inicializam os recursospedidos usando os parâmetros comunicados. Desse modo, cadaexemplo dos recursos é personalizado para um usuário depedido particular. Os endereços de rede particulares dosusuários do recurso que hospedam estes programas deapli caçao personalizados sao enviados então ao usuáriomáquina de cliente 10 de s, que estabelece uma sessão daligação de comunicações e do usuário de cliente emconseqüência. Os comandos, os eventos, os dados gráficos, ea informação de atributo da janela associada com osrecursos da execução são comunicados entre o dispositivo dousuário e os usuários do recurso durante a sessão dousuário de cliente para assegurar-se de que os dados darecurso-saída estejam indicados sem emenda no área detrabalho do dispositivo do usuário. A exposição sem emendados dados da recurso-saída refere a apresentação dos dadosno área de trabalho do usuário em uma maneira que sejaconsistente com como localmente executando recursos sãoapresentados e manipulados no área de trabalho local dodispositivo do usuário. Um usuário pode conseqüentementever e interagir com os dados da recurso-saída gerados pelosrecursos remotos como se os recursos eram executadoslocalmente. Em uma modalidade, a saída dos recursos éindicada em umas ou várias janelas da recurso-saídaposicionadas dentro de um Página de rede indicado por umnavegador de rede do usuário dispositivo de s. 0 recursopode executar em uma máquina remota 3 0 ou em uma máquinavirtual que executa na máquina remota 30. Em uma modalidademais adicional, os atributos das janelas da recurso-saídapodem ser modificados de modo que as janelas da recurso-saída sejam móveis e resizeable dentro dos limites doPágina de rede. Em uma outra modalidade, as janelas dasaída do recurso inicialmente parecem dentro dos limites doPágina de rede e são subseqüentemente móvel de modo quesejam posicionadas fora dos limites do Página de rede e dãoassim a aparência que as janelas da aplicação-saídacorrespondem às aplicações da local-execução um pouco doque às aplicações da remoto-execução. Em contudo uma outramodalidade, as janelas da aplicação-saída apareceinicialmente fora dos limites do Página de rede e assimigualmente parece corresponder às aplicações da local-execução. Em uma modalidade, a saída da aplicação indicadanas janelas da aplicação-saída e os atributos das janelasda aplicação-saída eles mesmos são comunicados emanipulados por processos do software no usuáriodispositivo de s e nos usuários do recurso, semparticipação do servidor de rede ou do navegador de redeque forneceram inicialmente o acesso aos recursos. Maisdetalhadamente e em referência a FIG. 33, uma arquiteturade computação usuário-baseada 33 00, capaz de fornecerusuários remotos o correia-acesso à funcionalidade cheia deaplicações da correia fotorreceptora e do legado (porexemplo, os programas de aplicação unmodified que não sãoprojetados para a entrega com suporte na internet), incluiuma máquina de cliente 10 (por exemplo, algum dispositivode processo de dados digital), um servidor de rede 3304,umas ou várias máquinas remotas 3 0 que são autônomas ouaglomeradas dentro de uma exploração agrícola 38 da máquinae que são protegidos preferivelmente por um guarda-fogo3302, e uma rede de transmissões de dados 150 (por exemplo,Internet, Intranet, etc.) que forneça a conectividadenecessária para permitir cada um destes elementos de secomunicar um com o otro. Em outras modalidades, o servidorde rede 3304 é uma máquina remota 30. Em algumas destasmodalidades, as máquinas virtuais podem executar em umas ouvárias das máquinas remotas 30, as máquinas virtuais quefornecem os ambientes de computação em que um recursopedido reside e gera dados de saída do recurso. Na operaçãoe igualmente em referência a FIG. 28, um usuário da máquinade cliente 10 dirige um navegador 2822 que executa namáquina de cliente 10 para submeter um pedido para o acessoao índice particular 33 06 do Página de rede acessívelatravés do servidor de rede 3304. Em uma modalidade, ousuário entra em um localizador do recurso do universal ("URL") enderece no navegador 2822. O URL é associado com oíndice 3306 do Página de rede hospedado pelo servidor derede 3304 e pelo navegador 2822 responde transmitindo opedido para o acesso ao endereço de URL apropriado. Oservidor de rede 3 3 04 recebe o pedido para o acesso, queinclui tipicamente a informação credencial do usuário (porexemplo, usuário - identificação, senha, identificador dasociedade do grupo/projeto, etc.), e autentica o usuário àexploração agrícola 3 8 da máquina ou aos usuáriosindividuais 114 que fornecem pelo menos algum do índice3306 do Página de rede. O servidor de rede 3304 autentica ousuário alcançando um processo de autenticação que compareas credenciais incorporadas pelo usuário com as credenciaisprecedente-atribuídas. Em uma modalidade, o processo deautenticação e a base de dados de credenciais precedente-atribuídas são armazenados e mantidos no servidor de rede3304. Em outras modalidades, as credenciais precedente-atribuídas podem ser armazenadas na exploração agrícola 3 8da máquina, nas máquinas remotas 3 0 da aplicaçãoindividual, e/ou em um usuário administrativo (nãomostrado) que está acoplado ao servidor de rede 33 04através do Internet ou da outra rede de transmissão dedados. Na encenação onde o índice 3306 do Página de redecorresponde a um portal da empresa, que forneça o acesso aum recurso ajuste 3308 (por exemplo, o jogo dos recursosque foram personalizados para o usuário por umadministrador portal), o servidor de rede 3304 acessos unsou vários objetos do recurso 3310 (por exemplo, COM Javacomplacente objeta, ActiveX objeta, o HTML etiqueta, etc.)certificados desse lado de usuário da correiafotorreceptora da chamada para autenticar o usuário e/ouobter o recurso ajustou a informação 3308 associada com oportal e o usuário da exploração agrícola 3 8 da máquina. Osobjetos 3310 do recurso igualmente incluem as propriedadesque são associadas com o usuário e/ou os recursosparticulares 3312 no recurso ajustam 3308 que sãofornecidos através do portal. As propriedades de usuárioincluem, por exemplo, a informação do grupo/projeto issoidentifica os recursos particulares 3312 e os dados que ousuário precisa de alcançar a fim permitir que o usuáriocolabore com outros membros do grupo/projeto. Aspropriedades do recurso incluem, por exemplo, o usuário aspreferências de s para cada um dos recursos 3312 no recursoajustaram 3308. Os certificados chamaram pelos objetos 3310do recurso estabelecem uma sessão da rede entre o servidorde rede 3 3 04 e a exploração agrícola 3 8 da máquina atravésde, por exemplo, um processo administrativo central (nãomostrado), que os monitores e os controles cada recursofizessem à máquina 3 0 na exploração agrícola 3 8 da máquina.O processo administrativo seleciona uns ou vários usuáriosdo recurso, que hospedam os recursos 3312 no recursoajustam 3308 especific pelos objetos 3310 do recurso,baseados, por exemplo, em uma base do usuário e/ou dodesempenho de rede. O recurso desejado ajustou 3308 podeser fornecido inteiramente por um único usuário 30selecionando/que aloca cada recurso 3312 no recurso ajustou3308 de uma pluralidade dos recursos 3312, 3314 hospedadosno usuário 30. Alternativamente, o recurso 3308' ajustado;pode ser fornecido por uma pluralidade das máquinas remotas3 0 com cada máquina 3 0 hospedar pelo menos um dos recursosno recurso 3308' ajustado,·. 0 processo administrativo lançauns ou vários agentes 3316 do usuário máquinas remotasselecionadas/alocadas 30 em resposta aos certificadoschamados pelos objetos 3310 do recurso. Os agentes 3316 dousuário são os processos do software que executam,inicializam, e interagem com o cada um dos recursos 3312 norecurso ajustam 33 08 de acordo com as propriedadesespecific pelos objetos 3310 do recurso. Em uma modalidade,há um agente 3316 do usuário para cada recurso 3312 norecurso ajustou 3308. Em outras modalidades, há um únicoagente 3316 do usuário para o recurso ajustado 3308, até aoponto em que todos os recursos 3 312 são hospedados no mesmousuário 30. Em contudo uma outra modalidade, há um únicoagente 3316 do usuário para cada usuário 30. Os agentes3316 do usuário fornecem então a saída dos recursos 3312 norecurso ajustaram 3308 assim como toda a outra informaçãoem relação ao recurso ajustou 3308 ao servidor de rede3304 , que formata subseqüentemente a informação ajustada dorecurso no índice 3306 do Página de rede. 0 índice 3306 doPágina de rede pode incluir os ícones da aplicação quecorrespondem a uns ou vários dos recursos 3 312 no recursoajustou 3308 assim como dados da recurso-saída de uns ouvários dos recursos 3312. Em uma modalidade, os dados darecurso-saída fornecidos pelos recursos 3312 correspondemaos dados gráficos que são formatados para caber em umajanela, que exiba atributos (por exemplo, posição da janelasobre o Página de rede, o tamanho, o estilo, a ζ-ordem,etc.) como especific inicialmente pelas propriedades dosobjetos 3310 do recurso. Em uma modalidade e em referênciaa FIG. 34, o navegador 2822 recebe e indica o índice 3306do Página de rede dentro de uma janela de navegador 34 02,que inclua muito a interface de utilizador gráfica possível(" GUI") elementos (por exemplo, menu 3406, janela local3408, etc.) esse formulário que o área de trabalho 3410 docliente indicou em um dispositivo de exposição acoplado àmáquina de cliente 10. Nesta modalidade, o índice 3306 doPágina de rede é indicado dentro de um Página de rede 3412indicado na janela de navegador 34 02 e inclui uns ou váriosícones 3414 do recurso e/ou uns ou vários as janelas 3416da recurso-saída, que são associadas com o recurso ajustam3308. Em uma modalidade, uns ou vários do recurso objetam3310 igualmente fazem parte do índice 3306 do Página derede do Página de rede 3412 e podem conseqüentemente ajusteos atributos iniciais (tamanho, z-ordem, posição) dasjanelas 3416 da recurso-saída. A orientação, o tamanho, aposição, e a z-ordem iniciais de cada um das janelas 3416da saída do recurso indicadas no Página de rede 3412 podemser modificados, como descrita abaixo, de modo que asjanelas 3416 da recurso-saída exibam orientações, tamanhos,posições, e z-ordens diferentes relativo ao Página de rede3412 e/ou relativo ao área de trabalho 3410 do cliente. Osobjetos 3310 do recurso podem ser todas as construções dedados que indicarem ao navegador 2 822 que indica o índice3306 do Página de rede que uma janela 3416 da recurso-saídadeve ser indicada em uma posição particular no Página derede 3412. Os objetos 3310 do recurso podem incluir ainformações adicionais, tal como a altura, a largura, oestilo da beira, a cor do fundo ou o teste padrão na janela3416 da recurso-saída, junto com o indicia de que osrecursos 3312 podem ser indicados informações adicionais dajanela 3416, como freqüentemente a exposição da saída deveser atualizado, ou algum na outra que é útil realçar aexposição da saída do recurso. Em uma modalidade, osobjetos 3310 do recurso são os Tag que são encaixados emuma lima de HTML, exemplos da janela de tais Tag sãodelineados abaixo. Tag de ActiveX Tag de encaixe deNetscape Tag de JAVA
Em cada caso acima, o Tag indica que uma janela 3416da recurso-saída que tem uma altura de 295 pixéis e umalargura de 436 pixéis deve ser extraída para receber dadosde saída do recurso 3312. Cada Tag igualmente especific queo recurso 3 312 deve automaticamente começar a execução eque a janela 3416 da recurso-saída em que a saída dorecurso é indicada deve ser extraída com a beira. Os Tag deencaixe de ActiveX e de Netscape têm as propriedades dorecurso remoto 3312 especific no " da lima; direct.ica"localizado no diretório 7ica." 0 Tag de JAVA especific aspropriedades do recurso remoto 3312 diretamente. No exemploacima, o endereço do usuário 30 que hospeda o recurso 3312é especific assim como o nome do recurso 3312 a ser. Em umamodalidade, o recurso 3312 executado substancialmente aomesmo tempo que a exposição do Página de rede 3412. Em umaoutra modalidade, o recurso 3312 executa quando instruídopara fazer assim pelo usuário 30 como parte de fornecer oíndice 3306 do Página de rede ao servidor de rede 3304. Emcontudo uma outra modalidade, o recurso executa em respostaa um sinal, tal como uma entrada especificada peloutilizador (por exemplo, selecionando um ícone 3414 dorecurso no Página de rede 3412. A execução do recurso 3312é começada uma vez, o navegador 2822 instantiates um agente2814 do cliente na máquina de cliente 10. Alternativamente,o agente 2814 do cliente instantiated substancialmente aomesmo tempo que a exposição do Página de rede 3412 ou emresposta às entradas especificadas pelo utilizador. 0agente 2 814 do cliente compreende uns ou vários processosdo software, que executam na máquina de cliente 10 e quesão configurados para interagir com o agente 3316 dousuário, o navegador 2822, a janela 3416 da recurso-saída, e/ou o servidor de rede 3304. Em uma modalidade, o agente2814 do cliente spawned como um processo de criança donavegador 2822. Em outras modalidades, o agente 2814 docliente é um processo do par do navegador 2822 ou de umabiblioteca dinâmicamente Iig associada com o navegador2822. Em uma modalidade, um agente 2814 do clienteinstantiated para cada janela 3416 da recurso-saídaindicada no Página de rede 3412. Em outros a modalidade, umúnico cliente que o agente 2814 instantiated para umas ouvárias janelas 3416 da saída do recurso associadas comparticular dos recursos 3312 no recurso ajustou 3308. Emcontudo uma outra modalidade, um único agente 2814 docliente instantiated para cada agente 3316 do usuário, quecontribuiu ao índice 3306 do Página de rede. Em contudo umaoutra modalidade, um único cliente que o agente 2814instantiated para o recurso inteiro ajustou 3308. Onavegador 2822 passa as propriedades dos objetos 3310 dorecurso em relação aos recursos particulares 3312 norecurso ajustou 3308 ao agente 2814 do cliente associadocom aqueles mesmos recursos 3308. Adicionalmente, onavegador 2822 pode passar um punho para uma janela 3416 darecurso-saída ao agente 2814 do cliente ou o agente 2814 docliente pode perguntar o navegador 2822 para recuperar opunho para a janela 3416 da recurso-saída. As propriedadesdo recurso, que não são especific pelo navegador 2822 oupelos objetos 3310 do recurso, podem ser ajustadas aosvalores de defeito. O agente 2814 do cliente podeigualmente ter determinados defeitos da propriedade hard-coded, ou o agente 2814 do cliente pode alcançar uma limaque contenha defeitos da propriedade. O agente 2814 docliente usa o nome do recurso 3312 e o endereço do usuário3 0 do recurso, que ambos são fornecidos como parte daspropriedades dos objetos 3310 do recurso, para estabeleceruma ligação de comunicações e para iniciar uma sessão dousuário de cliente com o agente 3316 do usuário associadocom o usuário 30 do recurso e o recurso 3312. 0 agente 2814do cliente passa alguns ou todas as propriedades dosobjetos 3310 do recurso ao agente 3316 do usuário junto comtodos os valores de defeito necessários. Alternativamente,o agente 3 316 do usuário pode têm recebido já alguns outodas as propriedades dos objetos 3310 do recurso doservidor de rede 3304 antes da contribuição ao índice 3306do Página de rede, que foi indicado subseqüentemente noPágina de rede 3412. Se uma propriedade particular não épassada ao agente 3316 do usuário, o agente 3316 do usuáriopode pedi-lo do agente 2814 do cliente se é uma propriedadenecessária a que não tem nenhum valor de defeito (porexemplo, usuário - identificação) ou o agente 3316 dousuário pode fornecer seu próprio valor de defeito para apropriedade (por exemplo, prioridade de execução).
0 agente 3316 do usuário usa as propriedades recebidasdo agente 2814 do cliente para autenticar o agente 2814 docliente e para executar o recurso desejado 3312 se não temsido começado previamente. Uma vez que o recurso 3312 estáexecutando e o agente 2814 do cliente foi autenticado, orecurso 3312 comunica-se através do agente 130 do usuáriodiretamente com o agente 2814 do cliente, sem a intervençãodo navegador 2822 ou do servidor de rede 3304. O agente2814 do cliente recebe dados de saída do recurso 3312 eindica os dados de saída na janela apropriada 3416 darecurso-saída no Página de rede 3412. O agente 2814 docliente igualmente detecta eventos da entrada, tais como oscliques de rato e as entradas de teclado, associados com ajanela 13 0 da recurso-saída e envia uns eventos da entradaao recurso 3312 através do agente 3316 do usuário. Estetipo de sessão do usuário de cliente é repetido para cadarecurso 3312 na aplicação ajustou 126 que é selecionadapelo usuário e permitiu assim o usuário de interagir comtodos os recursos no recurso ajustou 3308. Os dadostrocados entre o agente 2814 do cliente e o agente 3316 do usuário durante a sessão do usuário de cliente incluem nãosomente eventos entrados e dados de saída gráficos dorecurso 3 312, mas igualmente informação de atributo dajanela (por exemplo, posição da janela, z-ordem, tamanho,estilo, cor, etc.). A informação de atributo da janela dasjanelas 3416 da recurso-saída é especific inicialmentepelos objetos 3310 do recurso encaixados no Página de rede3412. Por exemplo, os objetos 3310 do recurso podem incluirum controle de ActiveX, que especific e controle osatributos da janela das janelas 3416 da recurso-saídadurante a sessão do usuário de cliente. Em uma modalidade,as janelas 3416 da recurso-saída exibem as mesmas dimensõesque os controles de ActiveX correspondentes. O agente 2814do cliente comunica os atributos iniciais da janela dasjanelas locais da aplicação-saída ao agente 3316 do usuáriojunto com a informação em relação ao área de trabalho 3410do cliente (por exemplo, tamanho, definição, etc.). Oagente 3 316 do usuário responde conformando o tamanho deseu área de trabalho do usuário àquele do área de trabalho3410 do cliente e conformando os atributos da janela dejanelas do usuário local àqueles das janelas 3416 darecurso-saida no área de trabalho 3410 do cliente. Asjanelas 3416 da recurso-saída no área de trabalho 3410 docliente e as janelas do usuário no área de trabalho dousuário exibem assim os mesmos atributos da janela eindicam os mesmos dados de saída gráficos que são geradospelo recurso 3312. Anote que o área de trabalho do usuáriopode corresponder a qualquer um um offscreen de superfíciecontido dentro do server1 memória video de s ou a umasuperfície onscreen indicada em um dispositivo de exposiçãoacoplado ao usuário 30. O usuário da máquina de cliente 10pode mover-se, resize, e/ou alterar a ordem do ζ ou outrosatributos iniciais da janela das janelas 3416 da recurso-saída durante a sessão do usuário de cliente, incorporandoum evento da entrada que seja detectado pelo agente 2814 docliente e comunicado então ao agente 3316 do usuário. Oagente 3316 do usuário conforma-se seus área de trabalhoe/ou janelas a ser consistentes com o evento da entrada etransmite-se então dados de saída gráficos atualizados einformação de atributo da janela, correspondendo ao eventoda entrada, ao agente 2814 do cliente com as instruçõespara actualizar as janelas 3416 da recurso-saída de modoque combinem as janelas no usuário 30. Por exemplo, se ousuário da máquina de cliente 10 resizes uma das janelas3416 da recurso-saída daquela especific original pelosobjetos 3310 do recurso (como pelo clique com o rato e oarrasto da beira da janela 3416 da aplicação-saída àposição/tamanho desejados), o agente 2814 do clientedetecta o evento da entrada gerado pela ação do rato ecomunica-o ao agente 3316 do usuário, que efetua o mesmosresize o evento no sobre ou aplaina offscreen do usuário30. O agente 3316 do usuário emite então repinta e resizesmensagens do comando ao agente 2814 do cliente junto comdados de saída gráficos atualizados e informação deatributo da janela. Na resposta, o cliente que o agente2814 modifica o objeto apropriado 3310 do recurso afetadopelo evento do resize (por exemplo, o controle de ActiveXdiscutido acima) de modo que a janela correspondente 3416da recurso-saída resized e os dados de saída gráficosatualizados sejam pintados dentro das beiras do - output ajanela 3416. Estas modalidades permitem assim os atributosda janela da janela 3416 da saída do recurso de sermodificadas de modo que a janela 3416 da recurso-saídapossa ser movida, resized, etc., dentro dos limites dajanela de navegador 3402. Em referência a FIG. 35 e por o exemplo nonlimiting, janela da recurso-saída B1 3502 podemresized usando a metodologia descrita acima para dar formaà janela B" da saída do recurso; 3504, que sobrepor (assimexibindo uma z-ordem diferente de) a janela F 3506 darecurso-saída. Alternativamente, a janela 3416 da recurso-saída pode ser movida ou resized para estender além ou serinteiramente fora da janela de navegador 3402. Por oexemplo nonlimiting e em referência a FIG. 36, as mentirasda janela J 3602 da recurso-saída dentro dos limites dajanela de navegador 34 02, quando a janela K 3 6 04 darecurso-saída estender além dos limites da janela denavegador 3402 e da janela L 3606 da recurso-saída sãointeiramente fora da janela de navegador 3402. Anote que asjanelas da recurso-saída podem exibir z-ordens de variaçãono que diz respeito a outros elementos no área de trabalho3410 do cliente. Por exemplo, a janela local 3608 exibe umaz-ordem entre aquele da janela de navegador 3402 e dajanela L 3606 da recurso-saída. Nesta modalidade, o clienteque o agente 2814 instrui o sistema de exploração damáquina de cliente 10 para extrair a janela desejada 3416da recurso-saída em resposta às mensagens do comandorecebidas do agente 3 316 do usuário, sem ter queprimeiramente modificar as propriedades do recurso objeta3310 encaixados no Página de rede 3412, que estabeleceuinicialmente os atributos da janela da janela 3416 darecurso-saída.
Em uma modalidade, cada evento da entrada que afeta ajanela 3416 da recurso-saída é transferido a e processadopelo agente 3316 do usuário, que instrui então o agente2814 do cliente efetuar mudanças correspondentes na janela3416 da recurso-saída. Em uma outra modalidade, uns ouvários tipos entrados do evento (por exemplo, clique eações do rato do arrasto dirigidas em mover a janela 3416da recurso-saída para uma outra posição da grade no Páginade rede 3412) são processados inteiramente pelo agente 2814do cliente e não relatado ao agente 3316 do usuário, ondeos dados de saída gráficos indicados dentro da janela 3416da recurso-saída permanecem inalterados. Maisdetalhadamente e em referência a FIG. 37, o agente 2 814 docliente compreende um processo 3702 do monitor, um processo3704 do comando, um processo de recepção 3706 da mensagem,e um processo 3 708 da transmissão da mensagem. Em umamodalidade, cada processo 3702, 3704, 3706, 3708 é umsegmento de código separada do funcionamento que se opereindependente dos outros processos. Por exemplo, o processode recepção 3 7 06 da mensagem e o processo 3 7 04 do comandopodem ser executados como as linhas separadas, que secomunicam um com o otro através de uma tubulação nomeada oude uma memória compartilhada. 0 uso de uma série de dadoscomum permite o processo de recepção 3706 da mensagem e oprocesso 3708 da transmissão da mensagem a sersincronizado. O processo de recepção 3706 da mensagemrecebe dados, a informação de atributo da janela, ecomandos gráficos do agente 3 316 do usuário através daligação de comunicações que fornece a conectividade entre oagente 2814 do cliente e o agente 3316 do usuário durante asessão do usuário de cliente. A ligação de comunicaçõesinclui preferivelmente uma primeira canal virtual 3710 euma segunda canal virtual 3712. 0 comando, o evento, e ainformação de atributo da janela estão passados entre oagente 2814 do cliente e o agente 3316 do usuário atravésda primeira canal virtual 3 710, quando os dados gráficosque correspondem aos índices gráficos das janelas 3416 dasaída do recurso forem passados através da segunda canalvirtual 3712. 0 processo de recepção 3706 da mensageminforma o processo 3 7 04 do comando do comandos, atributosda janela, e dados gráficos recebidos do agente 3316 dousuário e dos processos mais adicionais do processo 3704 docomando estes dados. Em uma modalidade, nos processos doprocesso 3 7 04 do comando os comandos recebidos do agente3316 do usuário instruindo o sistema de exploração 3714 docliente para dar forma e/ou modificar às janelas afetadas3416 da recurso-saída de acordo com os atributos da janelaespecific pelo agente 3316 do usuário. O processo 3704 docomando igualmente instrui o sistema de exploração 3714 docliente para indicar os dados gráficos fornecidos peloagente 3316 do usuário nas janelas apropriadas 3416 darecurso-saida. Em uma modalidade, o processo 3704 docomando executa mudanças às janelas 3416 da recurso-saidano área de trabalho 3410 do cliente emitindo comandos deGDI. Em outras modalidades, o processo 3704 do comandoemite comandos diretamente a um subsistema associado dosgráficos ou através dos comandos do API dos gráficos. Oprocesso 3704 do comando igualmente instrui o monitor que oprocesso 3702 monitora periodicamente o área de trabalho3410 do cliente a fim detectar mudanças afetar as janelas3416 da recurso-saída. Em uma modalidade, o processo 3702do monitor instrui o sistema de exploração 3714 do clientepara retornar a informação em relação ao área de trabalho3410 do cliente em intervalos de votação predeterminados.Em outras modalidades, o processo 3702 do monitor monitoraa fila de mensagem mantida pelo sistema de exploração 3714do cliente a fim detectar mudanças afetar as janelas darecurso-saída. O processo 3702 do monitor comunica algum outodo o área de trabalho detectado muda ao processo 3704 docomando para uma transformação mais ulterior.
Em uma modalidade, o processo 3704 do comando instruio processo 3708 da transmissão da mensagem para transmitirtodas as mudanças detectadas pelo processo 3702 do monitorao agente 3316 do usuário através da primeira canalvirtual. Em uma outra modalidade, o processo 3704 docomando instrui o processo 3 708 da transmissão da mensagempara transmitir um subconjunto das mudanças detectadas,tais como as mudanças que afetam somente os atributosgráficos dos dados e/ou da janela das janelas 3416 da saídado recurso. O agente 3316 do usuário recebe as mudançasdetectadas junto com todos os comandos do processo 3704 docomando e de quaisquer eventos da entrada feitos pelousuário da máquina de cliente 10 que provocou as mudançasdetectadas. O agente 3316 do usuário então modifica seuárea de trabalho local para acomodar as mudanças detectadase transmite comandos associados, atributos da janela, edados gráficos de volta ao client' processo de recepção3706 da mensagem de s. Desse modo, os elementos do área detrabalho, tais como as janelas 3416 da recurso-saída, quesão comuns nos área de trabalhos do cliente e do usuáriopermanecem na etapa do fechamento. O processo 3 7 04 docomando do agente 2814 do cliente assegura-se de queelementos análogos/comuns nos área de trabalhos do clientee do usuário permaneçam na etapa do fechamento mantendo umalista comum da janela. A lista comum da janela inclui ainformação de atributo da janela para cada janela no áreade trabalho 3410 do cliente e para cada janelacorrespondente no área de trabalho do usuário do recurso.Nas modalidades, em que uma pluralidade de agentes docliente está executando na máquina de cliente 10, oprocesso 3704 do comando de um único agente 2814 do clientetem a responsabilidade preliminar para manter a lista comumda janela. Se o único agente 2814 do cliente termina,quando outros agentes do cliente permanecerem na operação,o cliente restante os agentes elegerão um outro agentepreliminar do cliente para manter a lista comum da janela.
O FIG. 38 descreve um sistema em que uma máquina de cliente10 é conectada a mais de uma máquina remota 30, 30'.Segundo as indicações de FIG. 38, a máquina de cliente 10tem uma exposição associada 3802. A exposição 3802 pode serusada para indicar uns ou vários componentes de umainterface de utilizador gráfica, tais como janelas e menuspull-down. A coleção dos componentes gráficos da interfacede utilizador indicados a um usuário pela exposição 3802 éreferida geralmente como o " área de trabalho." Segundo asindicações de FIG. 38, a máquina de cliente 10 indica umambiente local 3804 do área de trabalho a um usuário. Amáquina de cliente 10 pode fornecer pelo menos uma parte doambiente local 3804 do área de trabalho ou a máquina decliente 10 pode simplesmente indicar os vários componentesdo área de trabalho recebidos de outras fontes tais como asmáquinas remotas 30. Segundo as indicações de FIG. 38, cadamáquina remota 30, 30' tem uma exposição associada 3806,3806' qual igualmente indica um ambiente 3808 do área detrabalho, 3808'. Deve-se anotar que a exposição 3806, 3806'não precise de ser um monitor de exposição video. Porexemplo, indique 3806, 3806' pode simplesmente ser um bancodo RAM video a que os recursos escrevem a saída de chamadasde procedimento gráficas. 0 FIG. 3 8 descreve uma modalidadede um sistema em que cada máquina 30 indica 3806, 3806'exposições uma janela gráfica 3810 da interface deutilizador, 3812'. Cada máquina remota 30, 30' igualmenteinclui pelo menos um agente 3814, 3814'. Em algumasmodalidades, cada máquina remota 30, 30' inclui um agente3814, 3814' para cada máquina de cliente 10 conectou àmáquina remota 30, 30'. A máquina de cliente 10 podeigualmente hospedar um agente 3816. Em algumas modalidades,um cliente faça à máquina 10 anfitriões um agente localseparado 3 816 para cada máquina remota 3 0 a que a máquinade cliente 10 é conectada. Em outras modalidades, a máquinade cliente 10 hospeda um único agente 3816 que controleconexões às máquinas remotas múltiplas 30. Cada um dosagentes 3814, 3814' , 3816 podem monitorar seu ambienteassociado 3808 do área de trabalho, 3808' , 3816 para asjanelas que: mude a posição; são abertos; seja fechado;mude o tamanho; são minimizados; são maximizados; ou sãotrazidos à parte superior do área de trabalho, isto é, asjanelas que ganham o foco que não tem previamente o foco.Cada agente 3814, 3814' , 3816 transmitem as mensagensindicativas das mudanças em seu área de trabalho associado3808, 3808' , 3804 a outros agentes. Por exemplo, o agentelocal 3816 pode receber as mensagens transmitidas dosagentes 3814 do nó do usuário, 3814'. O agente local 3816comanda a máquina de cliente 10 para modificar o ambientelocal 3 8 04 do área de trabalho em resposta às mensagensrecebidas dos agentes 3814 do usuário, 3814' , isto é, oagente local 3816 emite comandos à máquina de cliente 10conformar-se o ambiente local 3 8 04 do área de trabalho aoambiente 3 8 04 em outras modalidades, agentes 3 814 do áreade trabalho, 3 814' para a máquina remota 30, 30' recebamensagens de um agente local 3 816 e comande a máquina 30,30' para modificar o ambiente 3808 do área de trabalho,3808' em resposta às mensagens recebidas do agente local3816. Em uma modalidade, os agentes 3814, 3816 mudanças domonitor a seu ambiente associado 3808 do área de trabalho,3808' periodicamente emitindo uns ou vários de um jogo doscomandos forneceu pelo sistema de exploração que permitemque os detalhes do área de trabalho gráfico da interface deutilizador sejam determinados. Para as modalidades em queos agentes 3814, 3816 residem nos nós que executam umaversão do sistema de exploração de WINDOWS, os agentes3814, 3816 podem periodicamente emitir o comando de EnumWindows ao sistema de exploração de WINDOWS, que retornauma lista de todas as janelas atuais no área de trabalho,junto com relativo à informação 2 aquelas janelas. Osagentes 3814, 3816 podem emitir o comando de Enum Windowscada 50 milissegundos, cada 100 milissegundos, cada 500milissegundos, ou em todo o período que permitir o agente3814, 3816 para determinar rápida quando as mudanças a seuambiente associado do área de trabalho ocorreram sem põruma carga computacional significativa sobre o nó. Nestamodalidade, o agente 3814, 3816 mantém uma estrutura dedados que armazena a informação sobre as janelas do área detrabalho e compara os valores retornados pelo comando deEnum Windows à estrutura de dados determinar mudanças.Informação determinada e armazenada pelo agente 3814,3814' pode incluir a barra de título associada com cadajanela, a posição de cada janela no ambiente 3808 do áreade trabalho, 3808' , o tamanho de cada janela, e oposicionamento da z-ordem de cada janela no ambiente 3808do área de trabalho, 3808'. Em uma outra modalidade, oagente 3814, 3814' , 3816 monitores uma fila de mensagemdos gráficos do intranode para determinar mudanças a seuambiente associado do área de trabalho. Agentes 3 814 dousuário, 3 814J monitore uma fila de mensagem do intraservere o agente local 3816 monitora uma fila de mensagemintraclient. Nesta modalidade, mudanças ao ambiente 3808 doárea de trabalho, 3808' seja afetado através das mensagensemitidas a um subsistema dos gráficos das aplicações desistema ou do sistema de exploração próprias. Assim, umrecurso que executa em uma máquina remota 30, 30' emitiriauma mensagem a um motor de gráficos que reside no usuário30, 30' a fim mudar o ambiente 3808 do área de trabalho dousuário, 3808'. Outros comandos que retornam dados gráficosda interface de utilizador são prontamente aparentesàqueles da habilidade ordinária no art. Para as modalidadesem que os agentes 3 814, 3816 residem nos nós que executamuma versão do sistema de exploração de WINDOWS, os agentes3814, 3816 monitoram a fila de mensagem de Windows para asmensagens que afetam o ambiente do área de trabalhoassociado com o nó em que o agente reside. Os exemplos detais mensagens incluem: WM_SETFOCUS, que indica a que focoda janela será dado (isto é, trazido ao " top" do área detrabalho); WM_KI LLFOCUS, que remove o foco de uma janelaindicada; e WM_WINDOWPOSCHANGING, que indica uma mudança naposição de uma janela. Outras mensagens que podem serafixadas à fila de mensagem de Windows são sabidasprontamente àquelas da habilidade ordinária no art.Referindo agora FIG. 39, as etapas tomadas durante umevento usuário-iniciado são mostradas. O agente 3814 para amáquina remota 30 deteta uma mudança em seu área detrabalho associado (etapa 3902). O agente 3814 pode fazereste interceptando um evento da janela na fila de mensagemdo usuário, ou o agente 3 814 pode determinar uma mudança noárea de trabalho comparando os resultados retornados doscomandos em série emitidos do sistema de exploração, comodescritos acima. O agente 3814 emite uma mensagem a umagente 3816 do cliente que indica a mudança no área detrabalho 3810 do usuário (etapa 3904). Por exemplo, se umajanela nova foi dada o foco, o agente 3 814 pode transmitiruma mensagem a um agente 3816 do cliente que indica aidentidade do " novo; top" janela. Em uma modalidade, oagente 3814 transmite sua mensagem a tudo agentes 3816 docliente que existem no sistema. Alternativamente, o agente3814 pode transmitir sua mensagem somente a um subconjuntopredeterminado dos agentes 3816 do cliente. Por exemplo,quando uma máquina de cliente 10 faz uma conexão a umamáquina remota 30, o agente 3816 do cliente pode registarcom o agente 3814. Nesta modalidade, o agente 3814transmitiria mensagens da mudança somente 2 aqueles agentesdo cliente que registaram com a máquina remota 30. O agente3816 do cliente recebe a mensagem transmitida (etapa 3906).Nas modalidades em que a máquina remota 30 transmitecomandos, o agente 3816 do cliente deve ter algum mecanismopara determinar se um comando transmitido afeta seu área detrabalho associado. Por exemplo, o agente 3816 do clientepode manter uma lista de máquinas remotas 30 a que éconectada. Nestas modalidades, o agente 3816 do clienteresponde às mensagens transmitiu por todo o presente damáquina remota 30 em sua lista. Para as modalidades em queo agente 3 814 não faz mensagens de transmissão, nenhum talmecanismo é necessário. 0 agente 3816 do cliente executauma mudança a seu área de trabalho associado 14 responsivaà mensagem recebida (etapa 3908). O agente 3816 do cliente pode realizar este diretamente emitindo os gráficos arelação de programação que da aplicação comanda que fazemcom que a máquina de cliente 10 mude a exposição de seuárea de trabalho associado. Alternativamente, o agente 3 816do cliente pode emitir comandos de GDI mudar seu área detrabalho associado. Em ainda outras modalidades, o agente3816 do cliente emitem comandos diretamente ao sistema, seexecutado na ferragem ou no software, responsável paraindicar gráficos na máquina de cliente 10. Referindo agoraFIG. 40, as etapas tomadas quando uma máquina de cliente 10inicia uma mudança do área de trabalho são mostradas. 0agente 3816 do cliente deteta uma mudança em seu área detrabalho associado 14 (etapa 4002). Como notável acima,isto pode ser feito em uma base event-driven ou votando ofuncionamento do sistema de exploração na máquina decliente 10. O agente 3816 do cliente determina a quemáquina remota 3 0 a janela afetada pertence (etapa 4 004) .Para facilitar este processo, o agente 3816 do cliente podemanter uma lista que associe janelas remotas com umamáquina remota particular 30. 0 agente 3816 do clienteemite então uma mensagem à máquina remota identificada 30que indica a mudança em seu área de trabalho 14 (etapa4006) . Alternativamente, o agente 3816 do cliente podesaltar etapa 4 04 inteiramente e transmitir sua mensagem damudança a todas as máquinas remotas 30. 0 agente do usuáriorecebe a mensagem transmitida (etapa 4008) e instrumentos amudança em seu área de trabalho associado (etapa 4010),como descritos acima.
o protocolo e a máquina de cliente 10 e a máquinaremota 3 0 executam uma versão do sistema de exploração deWINDOWS. A máquina de cliente 10 hospeda um agente local3816 que possa ser fornecido como um módulo da bibliotecadinâmicamente Iig. A máquina remota 3 0 hospeda um agente3814 que possa ser fornecido como uma linha separada. Nestamodalidade, no agente local 3816 e nos dados gráficos datroca do agente 3 814, isto é, os dados indicados realmenteem cada janela no área de trabalho, através de uma primeiracanal virtual do AIC. A informação sobre o posicionamentoda janela, o tamanho da janela, requisitar do z-acesso dajanela e a outra tal informação é comunicada entre amáquina de cliente 10 e a máquina remota 30 através de umasegunda canal virtual do AIC. Durante todo a descrição,quando a máquina de cliente 10 e a máquina remota 30 estãotrocando ativamente a informação através da segunda canalvirtual do AIC, a máquina de cliente 10 será referida comoestando no " windowing sem emenda mode." Referindo agoraFIG. 41, o processo para permitir a modalidade sem emendado windowing entre o agente local 3816 e o agente 3814 émostrado. Nesta modalidade, toda a comunicação entre umagente do usuário e um agente do cliente pacote-é orientadae ocorre sobre uma canal virtual dedicada do AIC, fazendo ofuncionamento dos agentes 3814, o independente 3816 doprotocolo de comunicação subjacente. Todos os pacotescomeçam com o tipo do pacote (1 byte), seguido pelocomprimento de dados do pacote (2 bytes, podem ser zero) epelos dados (opcionais). Os agentes 3814, 3816 tentarãoemitir tantos dados em um único pacote da rede comopossível, mas emitirá sempre pacotes completos. Isto é, otamanho de pacotes virtuais da janela sem emenda nuncaexcede o tamanho permissível de um pacote do AIC. 0controle de fluxo do pacote e a confirmação da entrega sãoexecutados pelo nível do transporte do protocolo do AIC. Ospacotes individuais são executados imediatamente narecepção. O agente 3816 do cliente espera um pacote inicialdo agente 3814 do usuário. Após o início de uma sessão dousuário ao usuário, um agente 3 814 do usuário será invocado(etapa 4104). O agente 3814 do usuário emite um pacote deTWI_PACKET_START ao agente 3816 do cliente, que incluialguma informação essencial sobre o ambiente do área detrabalho da máquina remota 30 (definição do área detrabalho, tamanho do área de trabalho, versão número deprotocolo do AIC suportado pelo usuário, etc.) (etapa4106). Este pacote é emitido pelo agente 3814 do usuário naconexão inicial ou reconecta sobre, e é usado: (1) detectamcapacidades sem emenda do windowing da máquina de cliente10; e (2) informação básica da máquina 10 dos pedidos. Oagente do cliente recebe o pacote de TWI_PACKET_START(etapa 4107) e responde com um pacote deTWI_PACKET_C2H_START_ACK, um TWI_PACKET_START deconfirmação e uma versão da máquina 10/informação defornecimento das capacidades (etapa 4108). Este pacote éemitido pelo agente 3816 do cliente para confirmar arecepção do pacote de TWI_PACKET_START e para emitir ainformação básica pedida da máquina 10 ao agente 3814 dousuário. Se não há nenhuma resposta do agente 3816 docliente (etapa 4109), o agente 3814 do usuário supor que amáquina de cliente 10 é incapaz de entrar na modalidade sememenda do windowing, e a canal virtual do windowing sememenda não é usada pela máquina remota 30 para comunicar ainformação da janela. Neste caso, a máquina remota 30continua a comunicar dados gráficos à máquina de cliente 10através de uma outra canal virtual, e o área de trabalho damáquina de cliente 10 indica o área de trabalho do usuáriosem as janelas de modalidade de outros nós. O agente 3 816do cliente usa a informação emitida pelo agente 3814 dousuário em etapa 4106 para determinar se uma sessão sememenda do windowing pode ser estabelecida entre o agente3814 do usuário e o agente 3816 do cliente. Em umamodalidade, o cliente que o agente 3 816 compara ainformação em relação à versão do protocolo da canal
virtual suportado pelo agente 3814 do usuário faz adeterminação se o agente 3 816 do cliente determina que épossível permitir sem emenda a modalidade do windowing(etapa 4110), o agente 3816 do cliente emite um pacote deTWI_PACKET_C2H_0PEN ao agente 3814 do usuário (etapa 4111).
Este pacote pede que o agente 3814 do usuário permite amodalidade sem emenda do windowing.
Na recepção de um pacote de TWI_PACKET_C2H_0PEN (etapa4112) as restaurações do agente 3816 do usuário (i) suasestruturas de dados internos, (ii) emitem um pacote de
TWI_PACKET_SYSINFO ao agente 3 816 do cliente para comunicaralguma informação geral a respeito dos ajustes da janela namáquina remota 30 ao agente 3816 do cliente, (iii) emite umpacote de TWI_PACKET_OPEN ao agente 3816 do cliente (etapa4114) que indica o estabelecimento da modalidade sem emendado windowing, e (iv) permite seu laço principal da votação(etapa 4116) que votará o sistema de exploração no nó dousuário para mudanças do área de trabalho. Se o agente 3 816do cliente e o agente 3814 do usuário não suportam a mesmaversão do protocolo sem emenda da janela, o agente 3 814 dousuário ignora o pacote de TWI_PACKET_C2H_0PEN. Na recepçãodo pacote de TWI_PACKET_OPEN (etapa 4120), o agente 3816 docliente restaura suas estruturas de dados internos (etapa4122) e a modalidade sem emenda do windowing entre o agente3816 do cliente e o agente 3814 do usuário é estabelecida.
Durante uma sessão sem emenda da modalidade do windowing, oagente 3814 do usuário emitirá a informação da janela talcomo a posição da janela, o tamanho, os estilos, o texto dajanela, etc. para todas as janelas top-level no nó dousuário. Também, a informação da janela do primeiro plano éemitida, isto é, que a janela no área de trabalho do nó dousuário é a janela do primeiro plano. De acordo com estainformação, o agente 3816 do cliente cria janelas com omesmo tamanho/posição como as janelas do nó do usuáriosobre o área de trabalho da máquina. Em algumasmodalidades, elementos da janela são transmitidas comobitmaps do nó 20 do usuário. Os exemplos dos pacotesemitidos pelo agente 3814 do usuário incluem: TWLPACKET-CLOSE, que é emitido para comutar o agente 3816 do clienteda modalidade sem emenda do windowing e de volta aoregular, ou tela cheia, modalidade; isto é, a máquina decliente 10 é comutada de volta a indicar o ambiente do áreade trabalho do nó do usuário sem as janelas de modalidadede outros ambientes do área de trabalho;TWI_PACKET_CREATEW, que é emitido para criar janelas novasna máquina de cliente 10; TWI_PACKET_DELETEW, que é emitidopara destruir uma janela na máquina de cliente 10;TWI_PACKET_CHANGEW, que é emitido para mudar uma janelaindicou pelo nó local 10; TWI_PACKET_SYSINFO, que é emitidoaos ajustes do sistema da máquina remota 30 do relatório -normalmente ele é emitido somente uma vez, mas o pacotepode ser emitido épocas múltiplas; TWI_PACKET_FOREGROUNDW,que é emitido durante a operação sem emenda normal damodalidade do windowing para mudar a janela do primeiroplano; TWI_PACKET_SETTOPW, que é emitido durante a operaçãosem emenda normal da modalidade do windowing para mudar ajanela superior, isto é, para trazer uma janela nova paracobrir; TWI_PACKET_SETFOCUS, que é emitido durante aoperação sem emenda normal da modalidade do windowing paramudar a janela do foco; TWI_PACKET_FOCUSACK, que é emitidoem resposta a TWI_PACKET_C2H_SETF0CUS (veja abaixo), erelatórios o resultado de uma tentativa de SetFocus; eTWI_PACKET_SPA_STATUS, que é emitido em resposta aTWI_PACKET_C2H_START_PUBLICAPP (veja abaixo) , e é usadopara relatar o resultado da operação pedida. Os exemplosdos pacotes que podem ser emitidos pelo agente 3 816 docliente ao agente 3814 do usuário incluem:TWI_PACKET_C2H_PAUSE, que é emitido para suspender o agente3814 do usuário, isto é, o agente 3814 do usuário parará deemitir a informação da janela, espaço livre sua estruturade dados internos e emitirá um pacote de TWI_PACKET_CLOSE(veja acima) ; TWI_PACKET_C2H_RESUME, que é emitido pararecomeçar o agente 3 814 do usuário - o agente 3 814 dousuário cancelará sua estrutura de dados internos, eemitirá um pacote de TWI_PACKET_OPEN (veja acima);
TWI_PACKET_C2H_SETP0S, que é emitido ao tamanho da janelado relatório/mudança da posição na máquina;
TWI_PACKET_C2H_SETF0CUS, que é emitido para relatar umamudança na janela do foco na máquina;
TWI_PACKET_C2H_REST0RE, que é emitido à restauração dopedido de uma janela minimizada; TWI_PACKET_C2H_TERM INATE,que é emitido à terminação do pedido de um programa queexecuta na máquina remota 30; TWI_PACKET_C2H_STARTAPP, queé emitido para começar um recurso novo na máquina remota30; TWI_PACKET_C2H_L0G0UT, que é emitido para terminar asessão atual; TWI_PACKET_C2H_START_PUBLICAPP, que é emitidopara começar um recurso publicado novo na máquina remota30; e TWI_PACKET_C2H_CLIENTINF0, que é emitido aos ajustesdo área de trabalho do cliente do relatório ao agente 3814do usuário - este pacote é emitido geralmente na partida,mas pode igualmente ser usado durante a sessão sem emendado windowing. O agente 3816 do cliente tentará executarlocalmente algumas operações (tais como o movimento dajanela e para resize), emitindo a informação daactualização de volta à máquina remota 30 mais tarde. Ocomportamento apropriado da janela é emulado interceptandoa mensagem de WM_NCHITTEST para as janelas cliente-criadas.As mudanças da janela do primeiro plano podem acontecer namáquina de cliente 10 e na máquina remota 30, assim que amáquina de cliente 10 e a máquina remota 30 negociarão emudanças reais da janela do primeiro plano do contrapeso.Por exemplo, se a máquina remota 30 muda sua janela doprimeiro plano, essa mudança deve corretamente serrepresentada no área de trabalho da máquina de cliente 10.O agente 3814 do usuário emite a informação a respeito dajanela nova do primeiro plano ao agente 3816 do clienteusando o pacote de TWI_PACKET_FOREGROUNDW. Similarmente, seo agente 3816 do cliente detecta uma mudança da janela doprimeiro plano no área de trabalho da máquina de cliente10, o agente 3816 do cliente emite a informação a respeitoda mudança ao agente 3814 do usuário e o agente 3814 dousuário executa a mudança no área de trabalho da máquinaremota 3 0.
Quando o foco é levado embora de uma janela querepresenta uma janela do usuário e dado a uma janela damáquina local 10, a máquina de cliente 10 notifica amáquina remota 30 da mudança e a máquina remota 3 0 dá ofoco a uma janela invisível. Para as modalidades em que amáquina de cliente 10 é conectada a dois nós 30 do usuário,e o foco é desloc de uma janela que representa uma janelada primeira máquina remota 3 0 e dado a uma janela querepresenta uma janela da segunda máquina remota 30' , amáquina de cliente 10 emite um pacote que informa a máquinaremota atual 30 ou 30' que sua janela já não tem o foco.
Uma vez a máquina remota 30 ou 30' responde dando o foco aoa janela invisível, o agente 3816 do cliente instrui aoutra máquina remota 30 que sua janela tem agora o foco noárea de trabalho da máquina de cliente 10. Em algumasmodalidades, é desejável adicionar alguma complexidade aoagent' laço principal da votação de s para reduzir otráfego de rede. Nestas modalidades, o laço principal davotação inclui uma comparação entre a janela atual doprimeiro plano e a identidade da janela pedida por últimopara ser movido para o primeiro plano. Se a janela doprimeiro plano da corrente combina a janela identificada nopedido o mais recente, o agente não precisa de emitir ainformação que reconhece a mudança. Esta técnica é útil nosagentes 3816 do agente 3814 e do cliente do usuário. Ajanela querequisita na máquina de cliente 10 é um supersetde z-requisitar do nó do usuário (a máquina 10 terá sempremais janelas do que o anfitrião). A limitação do nó dousuário é reproduzida na máquina de cliente 10 reproduzindoo proprietário/relacionamento possuído entre janelas e abandeira de TOP_MOST no estilo da janela. 0proprietário/relacionamentos possuídos refere as janelasque são crianças de outras janelas, tais como as caixas dediálogo associadas com as janelas do recurso. A caixa dediálogo seriam possuída pela janela do recurso, e a caixade diálogo aparecerá sempre sobre seu proprietário. Abandeira de TOP_MOST indica que uma janela particular deveaparecer no " top" do área de trabalho, por exemplo, abarra de status em WINDOWS 95. Quando as disconexões de umusuário, o agente 3814 do usuário se comutarem à modalidadesuspendida, e não emitirão a informação ao agente 3816 docliente. Em uma reconexão, o agente 3814 do usuário emiteum pacote de TWI_PACKET_START, relatando HostAgentStatecomo o " já funcionando, reconnect." Baseado no número deversão do protocolo suportou pelo usuário que a máquina decliente 10 decidirá se é possível permitir a modalidade sememenda do windowing (do ponto de vista da máquina decliente 10). Se é possível comutar à modalidade sem emendado windowing, o agente 3816 do cliente emitirá um pacote deTWI_PACKET_C2H_OPEN, pedindo que o agente 3 814 do usuáriopermita a modalidade sem emenda do windowing. Cada agenteresponsável para monitorar um área de trabalho associadopode ser executado como uma rotina autônoma do software(tal como uma lima executável em sistemas DOS-baseados),uma rotina de biblioteca dinâmicamente Iig (DLL) , ou comouma parte integral do sistema de exploração. Consultandoagora a FIG. 42, e na breve vista geral, cada agente incluiuma mensagem que recebe a facilidade 4 202, uma facilidade4204 do comando, uma facilidade 4206 do monitor, e umafacilidade de transmissão 4208 da mensagem, uma comunicaçãodo Agente-agente é full-duplex, isto é, os agentes podemtransmitir e receber mensagens simultaneamente. Assim, cadafacilidade pode ser executada como um segmento de códigoseparada do funcionamento que se opere independente dasoutras facilidades. Por exemplo, a mensagem que recebe afacilidade 4202 e a facilidade 4204 do comando pode serexecutada como as linhas separadas que se comunicam um como otro através de uma tubulação nomeada ou de uma memóriacompartilhada. O uso de uns dados comuns permite a mensagemque recebe a facilidade 4202 e a facilidade transmissora4208 da mensagem a ser sincronizada. A mensagem que recebea facilidade 4202 recebe as mensagens transmitidas deoutros agentes que indicam mudanças nos ambientes do áreade trabalho associados com aqueles agentes. A mensagem querecebe a facilidade 4202 pode conectar diretamente com oexame camada do protocolo que de comunicações os agentes seusam para se comunicar, ou a mensagem que recebe afacilidade 4202 pode operar-se em uma camada mais elevadado protocolo cooperando com uns ou vários subsistemas decomunicações. Para as modalidades em que as mensagens sãotransmissão por agentes, a mensagem que recebe a facilidade4202 tem algum mecanismo para determinar se uma mensagem detransmissão está pretendida para ela. Por exemplo, amensagem que recebe a facilidade 4202 pode armazenar umalista das janelas que seu área de trabalho associadoindica. A mensagem que recebe a facilidade 4202 comparariao alvo de toda a mensagem recebida a sua lista de janelaspara determinar mesmo se tomar a ação na mensagem recebida.A mensagem que recebe a facilidade pode ser executada comouma função de obstrução. Alternativamente, a mensagem querecebe a facilidade pode ser executada uma função derechamada invocada pelo transporte da canal virtual do AIC.
Uma vez que a mensagem que recebe a facilidade 4 2 02determinou que uma mensagem recebida está pretendida paraseu área de trabalho, a facilidade do comando é invocadapara efetuar a mudança indicada pela mensagem ao ambienteassociado do área de trabalho. A facilidade 4204 do comandopode ser passada à facilidade de mensagem recebida, ou amensagem que recebe a facilidade 4202 pode processar amensagem recebida antes de comunicar com a facilidade 4204do comando. A facilidade 4204 do comando pode executar amudança do área de trabalho indicada pela mensagem recebidaemitindo comandos de GDI. Em outras modalidades, afacilidade 4204 do comando pode emitir comandos diretamentea um subsistema associado dos gráficos ou pode emitiroutros comandos do API dos gráficos. Durante uma sessão sememenda do windowing, um número de área de trabalhos sãoassociados com um único área de trabalho da máquina 10 -uma na máquina de cliente 10 própria e o um área detrabalho por a máquina remota 30 a que a máquina de cliente10 é conectada. O agente 3816 do cliente, conjuntamente como agente 3814 do usuário, 3814' , cria uma lista combinadada janela que representa a z-ordem de todos os área detrabalhos. Todos os área de trabalhos de participação são "linked" junto pelos agentes 40 do cliente e pelos agentes3814 do usuário, 3814' , e todas as mudanças da z-ordem emquaisquer área de trabalhos serão propagadas a outros áreade trabalhos. Em uma modalidade, cada máquina remota 30 temo conhecimento somente de sua própria respresentaçãográfica do área de trabalho e os área de trabalhos damáquina remota 3 0 são representados individualmente dentroda máquina de cliente 10. A exposição da máquina de cliente10 é atualizado combinando todas as imagens do área detrabalho da máquina remota 30 e da máquina 10 em uma únicaimagem de exposição baseada na informação da janela que foiobtida de cada nó 30 30' do usuário; pelo agente 3816 docliente. A imagem resultante é indicada na máquina decliente 10. O processo de combinação envolve construir umalista comum da janela baseada na informação das janelastrocada por todos os agentes. Usando a lista combinada dajanela, os dados gráficos do área de trabalho sãogrampeados e fundidos para a respresentação pela máquina decliente 10. 0 nó toma do " clipping" as janelas indicadasque resultam dos comandos emitiram pela facilidade 4204 docomando. Tal " clipping" as funções são conhecidas àquelasda habilidade ordinária no art. Em algumas modalidades,entretanto, a facilidade 4 2 04 do comando mantém um bitmapda sombra de janelas grampeadas. Isto é, a facilidade 4204do comando mantém uma imagem de bocado de janelas que sãoobscurecidas por outras janelas. Isto permite que o agentemude s eu área de trabalho associado sem exigi-lo recarregara imagem da janela de uma janela obscurecida da fonteapropriada. Em outras modalidades, o nó determina se osdados gráficos lhe estão obscurecidos naquele tempo estãorecebidos. Se é, o nó ignora os dados gráficos recebidos.
Se não é, o nó indica os dados. O nó faz uma determinaçãose os dados gráficos estão obscurecidos aplicando funçõesdo grampeamento. A facilidade de monitoração 4206 monitorao área de trabalho associado com o agente. A facilidade demonitoração 4206 pode monitorar o área de trabalhoperiodicamente emitindo os comandos fornecidos pelo sistemade exploração que executa no nó que a informação do retornosobre o node' área de trabalho de s. Alternativamente, afacilidade de monitoração 506 pode prestar atenção para asmensagens afixadas a uma fila de mensagem do intranode.Como notável acima, em uma modalidade particular afacilidade de monitoração 4206 monitora a fila de mensagemde Windows. Uma vez que uma mudança do área de trabalhoocorreu, a facilidade de transmissão 4208 da mensagemtransmite uma mensagem que indica a mudança que ocorreu. Emalgumas modalidades, a facilidade de transmissão 4208 damensagem transmite a notificação da mudança. Em umamodalidade, a facilidade de transmissão 4208 da mensagempode ser executada sob a forma da função non-blocking quepode ser chamada de todo o procedimento da janela. Se afunção não pode emitir um pacote de dados imediatamente(por exemplo, o subsistema de comunicação não tem nenhumespaço de amortecedor) , um temporizador estará ajustado eas tentativas da nova tentativa serão feitas até que aemissão suceda. Referindo agora FIG. 43, uma modalidade deum sistema para permitir a modalidade sem emenda dowindowing entre uma máquina de cliente 10 e ambientes dacomputação remota é mostrada. Na breve vista geral, osistema inclui uma primeira canal virtual 4302, um primeiroambiente remoto 4304 do área de trabalho, um sistema deexploração nativo 4306, uma janela remota 4308, uma segundacanal virtual 4310, uma terceira canal virtual 4312, umsegundo ambiente remoto 4 314 do área de trabalho, umsistema de exploração virtualizado 4316, uma janela remota4318, uma quarta canal virtual 4320, um agente local 4330,e um ambiente local 4340 do área de trabalho. Em algumasmodalidades os métodos e os sistemas descritos acima emrelação a figuras 24-37 podem ser executados nos sistemasque incluem máquinas virtuais. Em algumas modalidades, oagente local 4330 reside em uma máquina de cliente 10. Emuma destas modalidades, a máquina de cliente 10 estabeleceuma conexão a uma máquina física que fornece o acesso a umrecurso pedido pela máquina de cliente 10. Nestamodalidade, o agente local 4330 na máquina de cliente 10pode receber os dados do atributo da janela e os dadosgráficos associados com uma janela remota 4308 de um agenteem uma máquina remota 3 0 como descritos acima.Em outrasmodalidades, a máquina de cliente 10 estabeleceu umaconexão a uma máquina virtual que fornece o acesso a umrecurso. Em uma destas modalidades, um agente para amáquina remota 3 0 pode residir na máquina virtual. Emoutras destas modalidades, o agente para a máquina remota30 pode residir em um hypervisor em que a máquina virtual élançado. Em ainda outras destas modalidades, o agente paraa máquina remota 3 0 podem residir em uma segunda máquinavirtual que fornece a funcionalidade da gerência para amáquina virtual na máquina remota 30. Nestas modalidades, amáquina de cliente 10 pode receber os dados do atributo dajanela e os dados gráficos associados com uma janela remota4308 com a execução dos métodos e dos sistemas descritosacima em relação às figuras 24-37. A máquina de cliente 10pode alcançar recursos múltiplos das máquinas remotasdiferentes 30. Em algumas modalidades, a máquina de cliente10 pode alcançar recursos em máquinas diferentessubstancialmente simultaneamente sobre conexõesestabelecidas múltiplas, por exemplo, ambas as máquinas doexame nas máquinas remotas 3 0 e às máquinas virtuais queexecutam em um hypervisor nas máquinas remotas 3 0'.
Consultando ainda a FIG. 43, e no maior detalhe, umdiagrama de bloco descreve uma modalidade de um sistemapara receber os dados do atributo da janela e os dadosgráficos associados com as janelas remotas dos sistemas deexploração virtualizados e dos sistemas de exploraçãonativos. A primeira canal virtual 4302 é acoplada aoprimeiro ambiente remoto 4 3 04 do área de trabalho, que éfornecido pelo sistema de exploração nativo 4306. Aprimeira canal virtual 4302 transporta os dados gráficosassociados com a janela remota 4308 fornecida pelo primeiroambiente remoto 4 3 04 do área de trabalho. A segunda canalvirtual 4310 acoplou-se ao primeiro ambiente remoto 4304 doárea de trabalho transporta os dados do atributo da janelaassociados com a janela remota 4308 fornecida pelo primeiroambiente remoto 4304 do área de trabalho. A terceira canalvirtual 4312 é acoplada ao segundo ambiente remoto 4314 doárea de trabalho fornecido por um sistema de exploraçãovirtualizado 4316, o terço os dados gráficos de transtorteda canal virtual 4 312 associaram com a segunda janelaremota 4318 fornecida pelo terceiro ambiente remoto 4314 doárea de trabalho. A quarta canal virtual 4320 acoplou-se aosegundo ambiente remoto 4314 e transtorte do área detrabalho dos dados do atributo da janela associados com asegunda janela remota 4318 fornecida pelo segundo ambienteremoto 4314 do área de trabalho. Em uma modalidade, osdados do atributo da janela associaram com as janelasremotas 708 e 718 e transportado pela segunda canal virtual4310 e pela quarta canal virtual 4320 incluem o tamanho e az-ordem das janelas remotas. O agente local 3814, acopladoao primeiro área de trabalho remoto 4304 e ao segundo áreade trabalho remoto 4314 através do primeiro, as canaisvirtuais do segundo, o terceiro e o quarto dirige aformação de uma primeira janela no ambiente local 4340 doárea de trabalho que corresponde à janela remota 4308fornecida pelo primeiro ambiente remoto 4304 do área detrabalho e a formação de uma segunda janela no ambientelocal 4340 do área de trabalho que corresponde à segundajanela remota 4318 fornecida pelo segundo ambiente remoto4314 do área de trabalho. A primeira janela local indica osdados gráficos transportados pela primeira canal virtual4302 de acordo com os dados do atributo da janelatransportados pela segunda canal virtual 4310 e pelasegunda janela local que indica os dados gráficostransportados pela terceira canal virtual 4312 de acordocom os dados do atributo da janela transportados pelaquarta canal virtual 4320. Em uma modalidade, o agentelocal 4330 dá forma e mantém a uma lista combinada dasjanelas que representa uma z-ordem modificável de umajanela correspondente no ambiente local 4340 do área detrabalho. Em algumas modalidades, um sistema de exploraçãolocal dá forma ao ambiente local 4340 do área de trabalho.Em uma destas modalidades, o agente local 4330 votaperiodicamente o sistema de exploração local para detectaruma mudança do atributo em uma da primeira janela local eda segunda janela local. Em outras destas modalidades, emcima da deteção da mudança do atributo, o agente local 4330transmite uma mensagem a um do primeiro ambiente remoto doárea de trabalho e do segundo ambiente remoto do área detrabalho indicativos da mudança do atributo. Em algumasmodalidades, janelas correspondentes no ambiente local 434 0do área de trabalho e nos dados remotos do atributo dajanela da exibição dos ambientes 4304 e 4314 do área detrabalho substancialmente similares relativo ao ambientelocal do área de trabalho a respeito dos dados do atributoda janela das janelas remotas relativo a seu ambienteremoto respectivo do área de trabalho.
Referindo agora FIG. 44, um diagrama de fluxo descreveuma modalidade das etapas recolhido um método de receber osdados do atributo da janela e os dados gráficos associadoscom as janelas remotas dos sistemas de exploração izedvirtuais e dos sistemas de exploração nativos. Na brevevista geral, os dados gráficos associaram com uma janelaremota fornecida por um primeiro ambiente remoto do área detrabalho fornecido por um sistema de exploração nativo sãorecebidos através de uma primeira canal virtual acoplada aoárea de trabalho remoto (etapa 4302). Os dados do atributoda janela associados com a janela remota fornecida peloprimeiro ambiente remoto do área de trabalho são recebidosatravés de uma segunda canal virtual acoplada ao primeiroambiente remoto do área de trabalho (etapa 4304). Os dadosgráficos associaram com uma janela remota fornecida por umsegundo ambiente remoto do área de trabalho fornecido porum sistema de exploração virtualizado são recebido atravésde uma terceira canal virtual acoplada ao ambiente remotodo área de trabalho (etapa 4306). Os dados do atributo dajanela associaram com a janela remota fornecida pelosegundo ambiente remoto do área de trabalho são recebidosatravés de uma quarta canal virtual acoplada ao segundoambiente remoto do área de trabalho (etapa 4 3 08). Umaprimeira janela é dada forma no ambiente local do área detrabalho, a primeira janela que indica os dados gráficosrecebidos da primeira canal virtual de acordo com os dadosdo atributo da janela recebidos da segunda canal virtual(etapa 4 310). Uma segunda janela é dada forma no ambientelocal do área de trabalho, a segunda janela que indica osdados gráficos recebidos da terceira canal virtual deacordo com os dados do atributo da janela recebidos daquarta canal virtual (etapa 4312). Em algumas modalidades,uma lista combinada das janelas é dada forma e armazenapelo menos alguns dos dados do atributo da janela. Emoutras modalidades, um sistema de exploração localassociado com o ambiente local do área de trabalho é votadopara detectar uma mudança do atributo em um da primeirajanela local e da segunda janela local e de transmitir umamensagem a um do primeiro ambiente remoto do área detrabalho e do segundo ambiente remoto do área de trabalhoindicativos da mudança detectada do atributo. Em aindaoutras modalidades, os dados locais do atributo da janelada exibição das janelas substancialmente similares relativoao ambiente local do área de trabalho como os dados doatributo da janela das janelas remotas relativo aosambientes remotos do área de trabalho. Referindo FIG. 45,uma modalidade de um sistema para fornecer um cliente umaconexão de confiança a um serviço de acolhimento émostrada. Em uma vista geral larga, a o sistema 4500 paracomunicações da rede inclui uma máquina de cliente 10 (porexemplo, um primeiro dispositivo de computação) em umacomunicação com um primeiro serviço 4502 do protocolo (porexemplo, um segundo dispositivo de computação) sobre umarede 150. Igualmente é incluída no sistema 4500 umapluralidade dos serviços de acolhimento 4516a-4516n (porexemplo, terceiros dispositivos de computação) que está emuma comunicação, sobre uma rede 150', com o primeiroserviço 4502 do protocolo e, com o primeiro serviço 4502 doprotocolo e sobre a rede 150, com a máquina de cliente 10.
Alternativamente, em uma outra modalidade, e com referênciaagora a FIG. 46, o primeiro serviço 4502 do protocolo e osserviços de acolhimento 4516a- 4516n não são executadoscomo dispositivos de computação separados, segundo asindicações de FIG. 45, mas, um pouco, é incorporado nomesmo dispositivo de computação, como, por exemplo, umamáquina remota 30. 0 sistema 4500 pode incluir um, dois, outodo o números das máquinas remotas 30, 30'. 0 serviço 4502do protocolo pode igualmente ser proporcionado como umamáquina remota 30. Em uma modalidade, nas redes 150 e em150' são as redes separadas, como em FIG. 45. As redes 150e 150' pode ser a mesma rede 150, segundo as indicações deFIG. 46. Referência ainda as modalidades dos FIGOS. 45 e46, a máquina de cliente 10 são configurados paraestabelecer uma conexão 4504 entre a máquina de cliente 10e um primeiro serviço 4502 do protocolo sobre a rede 150usando um primeiro protocolo. Para sua parte, o primeiroserviço 4 502 do protocolo é configurado para aceitar aconexão 4504. A máquina de cliente 10 e o primeiro serviço4502 do protocolo podem, conseqüentemente, comunicar-se umcom o outro usando o primeiro protocolo como descritoabaixo na referência aos FIGOS. 47-48 e FIG. 49. Em algumasmodalidades, segundo as indicações dos FIGOS. 45 e 46, umagente 4506 do cliente são incluídos dentro da máquina decliente 10. O agente 4506 do cliente pode, por exemplo, serexecutado como um programa de software e/ou como umdispositivo de ferragem, como, por exemplo, um ASIC ou umFPGA. O agente 4 506 do cliente pode usar qualquer tipo deprotocolo e pode ser, por exemplo, um agente do cliente doHTTP, um agente do cliente do ftp, um agente do cliente deOscar, um agente do cliente do telnet, um agente decomputação independente do cliente da arquitetura (AIC) deCitrix Sistemas, Inc. do Fort Lauderdale, Florida, ou umagente remoto do cliente do procedimento do Área detrabalho (RDP) de Microsoft Corporation de Redmond,Washington. Em algumas modalidades, o agente 4506 docliente próprio é configurado para comunicar-se usando oprimeiro protocolo. Em algumas modalidades (não mostradas),a máquina de cliente 10 inclui uma pluralidade dos agentes4506a-4506n do cliente, cada qual se comunique com umserviço de acolhimento 4516a- 4516n, respectivamente.
Em uma outra modalidade, um agente autônomo do clienteé configurado para permitir a máquina de cliente 10 decomunicar-se usando o primeiro protocolo. O agente autônomodo cliente pode ser incorporado dentro da máquina decliente 10 ou, alternativamente, o agente autônomo docliente pode ser separado da máquina de cliente 10. Oagente autônomo do cliente é, por exemplo, um proxy localdo anfit riao. Geralmente, o agente autônomo do cliente podeexecutar algumas das funções descritas nisto no que dizrespeito ao agente 4506 do cliente. Como igualmentedescrito mais abaixo, o primeiro serviço 4502 do protocoloestá, em uma modalidade, própria configurado paracomunicar-se usando o primeiro protocolo. 0 primeiroserviço 4502 do protocolo é configurado para estabeleceruma conexão 4508a-4508n entre o primeiro protocolo presteserviços de manutenção a 4502 e ao serviço de acolhimento4516a-4516n, respectivamente. Por exemplo, o primeiroserviço 4502 do protocolo pode estabelecer uma conexão4508a entre o primeiro serviço de acolhimento 4516a doserviço 4502 e um do protocolo e uma conexão 4508b entre oprimeiro serviço 4502 do protocolo e um outro serviço deacolhimento 4516b. Em uma modalidade, o primeiro serviço108 do protocolo estabelece separada tais conexões 4508a-4508n (isto é, o primeiro serviço 4502 do protocoloestabelece uma conexão de cada vez) . Em uma outramodalidade, o primeiro serviço 4502 do protocolo estabelecesimultaneamente duas ou mais de tais conexões 4508a-4508n.
Em contudo uma outra modalidade, o primeiro serviço 4502 doprotocolo pode simultaneamente estabelecer e manter asconexões múltiplas 4508a-4508n. O primeiro serviço 4502 doprotocolo é configurado para fornecer dois ou mais conexões4508a- 4508n sem interromper a conexão 4504 com a máquinade cliente 10. por exemplo, o primeiro serviço 4502 doprotocolo pode ser configurado para estabelecer a conexão4508a entre o primeiro serviço 4502 do protocolo e oserviço de acolhimento 4516a quando um usuário da máquinade cliente 10 pede a execução de um primeiro programa deaplicação que reside no serviço de acolhimento 4516a.
Quando o usuário termina a execução do primeiro programa deaplicação e inicia a execução de um segundo programa deaplicação que reside, por exemplo, no serviço deacolhimento 4516b, o primeiro serviço 4502 do protocolo, emuma modalidade, está configurado para interromper a conexão4508a e para estabelecer a conexão 4508b entre o primeiroserviço 4502 do protocolo e o serviço de acolhimento 4516b,sem interromper a conexão 4504 entre o primeiro serviço4502 do protocolo e a máquina de cliente 10. O primeiroserviço 4502 do protocolo e os serviços de acolhimento4516a-4516n podem comunicar-se sobre as conexões 4508a-4508n, respectivamente, usando qualquer de uma variedade deprotocolos secundários, incluindo, mas não limitado a, deHTTP, ftp, Oscar, telnet, o protocolo remoto da exposiçãodo AIC de Citrix Sistemas, Inc. do Fort Lauderdale,Florida, e/ou o protocolo remoto da exposição da RDP deMicrosoft Corporation de Redmond, Washington. Por exemplo,o primeiro serviço 4502 do protocolo e o serviço deacolhimento 4516a podem comunicar-se sobre a conexão 4508ausando o protocolo remoto da exposição do AIC, quando oprimeiro serviço 4502 do protocolo e o serviço deacolhimento 4516b puderem se comunicar sobre a conexão4508b usando o protocolo remoto da exposição da RDP. Em umamodalidade, o protocolo secundário usado comunicando-seentre o primeiro serviço 4502 do protocolo e um serviço deacolhimento 4516, como, por exemplo, o protocolo remoto daexposição do AIC, incluem uma pluralidade de canaisvirtuais. Uma canal virtual é uma conexão sessão-orientadada transmissão que seja usada pelo código da aplicação-camada para emitir comandos para dados de troca. Porexemplo, cada um da pluralidade de canais virtuais podeincluir uma pluralidade de pacotes do protocolo quepermitem a funcionalidade na máquina de cliente remoto 10.
Em uma modalidade, uma da pluralidade de canais virtuaisinclui pacotes do protocolo para transmitir comandosgráficos da tela de um serviço de acolhimento 4516, com oprimeiro serviço 4502 do protocolo, à máquina de cliente10, para fazer com que a máquina de cliente 10 indique umainterface de utilizador gráfica. Em uma outra modalidade,uma da pluralidade de canais virtuais inclui pacotes doprotocolo para comandos transmissores da impressora de umserviço de acolhimento 4516, com o primeiro serviço 4502 doprotocolo, à máquina de cliente 10, para fazer com que umoriginal seja imprimido na máquina de cliente 10. Em umaoutra modalidade, o primeiro protocolo é um protocolo daescavação de um túnel. 0 primeiro serviço 4502 do protocoloencapsulates uma pluralidade de protocolos secundários,cada um usada para uma comunicação entre um dos serviços deacolhimento 4516a-4516n e o primeiro serviço 4502 doprotocolo, dentro do primeiro protocolo. Como tal, osserviços de acolhimento 4516a- 4516n e o primeiro serviço4502 do protocolo comunicam-se com a máquina de cliente 10através da pluralidade de protocolos secundários. Em umamodalidade, o primeiro protocolo é, por exemplo, umprotocolo de transporte do aplicação-nível, capaz deescavar um túnel os protocolos secundários múltiplos sobreuma conexão do TCP/IP. Referindo FIG. 47, as comunicaçõesentre a máquina de cliente 10 e o primeiro serviço 4502 doprotocolo através da conexão 4 5 04 tomam o formulário de umapluralidade dos protocolos secundários 4702a-4702n (porexemplo, HTTP, ftp, Oscar, telnet, AIC, e/ou RDP)encapsulated dentro de um primeiro protocolo 4704. Isto éindicado pela posição dos protocolos secundários 4702a-4702n dentro do primeiro protocolo 4704. Onde umacomunicação segura não é chamada para, o primeiro protocolo4704 pode ser, como ilustrado em FIG. 47, comunicado sobreuma conexão inseguro 4706 do TCP/IP.
Referindo agora FIG. 48, se uma comunicação segura éusada, o primeiro protocolo 4704 é comunicado sobre umaconexão cifrada, como, por exemplo, uma conexão 4802 doTCP/IP fixada usando um protocolo seguro 4804 tais como acamada de soquete seguro (SSL). O SSL é um protocolo segurodesenvolvido primeiramente pela Netscape CommunicationsCorporation Do Mountain View, Califórnia, e é agora umpadrão promulgado pelo Internet Engineering Task Force(IETF) como o protocolo da segurança da camada detransporte (TLS) e descrito em IETF RFC-2246. Assim, apluralidade dos protocolos secundários 4702a-4702n écomunicada dentro do primeiro protocolo 4704 com (FIG. 48)ou sem (FIG. 47) um protocolo seguro 4804 sobre a conexão4504. Os protocolos secundários que podem ser usados parase comunicar sobre as conexões 4508a-4508n incluem, mas nãosão limitados a, HTTP, ftp, Oscar, telnet, AIC, e RDP. Alémdisso, em uma modalidade, pelo menos um dos protocolossecundários, como descrito acima, inclui uma pluralidade decanais virtuais, cada qual podem incluir uma pluralidade depacotes do protocolo permitindo a funcionalidade na máquinade cliente remoto 10. por exemplo, em uma modalidade, umserviço de acolhimento que 4516a é um servidor de rede, secomunicando com o primeiro serviço 4502 do protocolo sobrea conexão 45 08a usando o protocolo do HTTP, e um outroserviço de acolhimento 4516b é um servidor de aplicações,se comunicando com o primeiro serviço 4502 do protocolosobre a conexão 4508b usando o protocolo do AIC. O serviçode acolhimento 4516b gera pacotes do protocolo paratransmitir comandos gráficos da tela à máquina de cliente10, para fazer com a máquina de cliente 10 indique umainterface de utilizador gráfica, e pacotes do protocolopara comandos transmissores da impressora à máquina decliente 10, para fazer com que um original seja imprimidona máquina de cliente 10. Em uma outra modalidade, o métodoe os sistemas descritos nisto reduzem o número de épocas asconexões de rede que são abertas e fechados. Em umamodalidade, o primeiro protocolo 4704 permite as conexõessecundárias 4702a-4702n do protocolo escavadas um túnelnisso, como, por exemplo, uma conexão do HTTP 4 7 02n, paraser aberto e/ou fechado, repetitiva, sem igualmente exigira conexão de transporte sobre que o primeiro protocolo 4 7 04é comunicado {por exemplo, conexão 4706 e/ou 4802 do TCP),a conexão segura 4804 do protocolo, ou a primeira conexão4704 do protocolo própria similarmente ser abertarepetitiva e/ou fechado. Sem a capsulagem do primeiroprotocolo 4704, o protocolo secundário 4702a-4702n podefreqüentemente abrir e conexões de rede próximas, tais comoconexões do TCP. Isto adicionaria atrasos e despesas geraissignificativos ao sistema. Estes atrasos e as despesasgerais seriam aumentados mais pelo uso de um protocoloseguro 4806 da capsulagem, tais como o SSL, que têmdespesas gerais significativas em estabelecer conexões derede. Encapsulating o protocolo secundário 4702a-4702ndentro do primeiro protocolo 4704 e mantendo a conexão daconexão de transporte (4706, 4802), os protocolossecundários 4702a-4702n, como parte da carga útil doprimeiro protocolo 4704, não precise de executar freqüentee caro abra e feche-se da conexão de rede 4504. Além disso,desde que os protocolos secundários 4702a-4702n podem sercomunicados dentro do primeiro protocolo 4704 com umprotocolo seguro 4804, os protocolos secundários 4702a-47 02n igualmente não precisam de abrir e conexões pertofixadas como com o SSL. A conexão de transporte (4 7 06,4802) estabelece e mantém a conexão de rede 4504 de modoque os segundos protocolos encapsulated 4702a-4702n possamser comunicados sem repetitiva abrir e fechar a conexão derede fixada ou inseguro 4504. Isto aumentasignificativamente a velocidade de operação em comunicar osprotocolos secundários 4702a-4702n. Como descrito acima, osprotocolos secundários 4702a-4702n carreg os pacotes doprotocolo relativos às aplicações usando protocolos como oHTTP, o ftp, o Oscar, o telnet, o RDA ou o AIC. Os dadossecundários do transporte dos pacotes 4902a-4902n doprotocolo relacionaram-se à funcionalidade da aplicaçãotransacionada entre a máquina de cliente 10 e o serviço deacolhimento 4516a-4516n. Por exemplo, um usuário na máquinade cliente 10 pode interagir com um Página de redefornecido por um serviço de acolhimento 4516a- 4516n. Nastransações entre a máquina de cliente 10 e o serviço deacolhimento 4516a-4516n, o protocolo secundário 4702a-4702nencapsulated no primeiro protocolo 4704 pode ter os pacotesdo protocolo do HTTP relativos a indicar o Página de rede ea receber toda a interação do usuário para comunicar-se aoserviço de acolhimento 4516a- 4516n. Desde a conexão detransporte (4706, 4802) não é mantido pelos protocolossecundários 4702a-4702n, os protocolos que secundários4702a-4702n não precisam de segurar nenhuma interrupções daconexão do rede-nível. Como tal, os protocolos secundários4702a-4702n não podem fornecer nenhuma informação dainterrupção da conexão do rede-nível em suas cargas úteis.No exemplo acima, o HTTP relacionou pacotes que secundáriosdo protocolo 4902a-4902n do protocolo secundário 4702a-4702n transmitido à máquina de cliente 10 não forneceriauma notificação que uma interrupção da rede ocorreu, porexemplo, uma mensagem de erro em um Página de rede.Conseqüentemente, o usuário na máquina de cliente 10 nãoserá notificado de nenhuma interrupções da conexão do rede-nível com o protocolo secundário 4702a-4702n. Isto escondeeficazmente as interrupções da conexão de rede do usuáriodurante o uso das aplicações relativas aos protocolossecundários 4702a-4702n.
Referindo FIG. 49, um processo 4 900 do exemplo usou-sepelo primeiro serviço 4502 do protocolo e o agente 4506 docliente da máquina de cliente 10 encapsulates a pluralidadedos protocolos secundários 4702 (por exemplo, HTTP, ftp,Oscar, telnet, AIC, e/ou RDP) dentro do primeiro protocolo4704 para uma comunicação através da conexão 4504.Opcionalmente, como descrito abaixo, o processo 4900 doexemplo usou-se pelo primeiro serviço 4502 do protocolo epelo agente 4506 do cliente das compressas da máquina decliente 10 igualmente e/ou cifra as comunicações a nível doprimeiro protocolo antes das comunicações através daconexão 4504. Do ponto de vista do primeiro protocolopreste serviços de manutenção a 4502, pacotes quesecundários do protocolo 4902a-4902n são recebidos atravésdas conexões 4508a-4508n no primeiro serviço 4502 doprotocolo. Por exemplo, dois pacotes secundários 4902a e4902b do protocolo são recebidos pelo primeiro serviço 4502do protocolo. Um, dois, ou todo o números dos pacotessecundários 4902a-4902n do protocolo podem ser recebidos.
Em uma modalidade, os pacotes secundários 4902a-4902n doprotocolo sao transmitidos pelos serviços de acolhimento4516 ao primeiro serviço 4502 do protocolo sobre a conexão4508. Os pacotes secundários 4902a-4902n do protocoloincluem um encabeçamento 4 904 e um pacote de dados 4 906,igualmente referido como uma carga útil dos dados. Depoisdo recibo dos pacotes secundários 4902a-4902n do protocolo,o primeiro serviço 4502 do protocolo encapsulates uns ouvários dos pacotes secundários 4 902 do protocolo dentro deum primeiro pacote 4 908 do protocolo. Em uma modalidade, oprimeiro serviço 4502 do protocolo gera um primeiroencabeçamento de pacote 4 910 do protocolo e encapsulatesdentro da carga útil 4912 dos dados do primeiro pacote 4908do protocolo uns ou vários pacotes secundários 4902a-4902ndo protocolo, como, por exemplo, dois pacotes secundários4902a e 4 902b do protocolo. Em uma outra modalidade,somente um pacote secundário 4 902a do protocoloencapsulated em cada primeiro pacote 4908 do protocolo. Emuma modalidade, os primeiros pacotes 4908 do protocolo sãotransmitidos então sobre a conexão 4504, por exemplo sobrea conexão 4706 descrita em referência a FIG. 47, ao agente4506 do cliente da máquina de cliente 10. Alternativamente,em uma outra modalidade, o primeiro serviço 4502 doprotocolo é configurado mais para cifrar, antes datransmissão de todos os primeiros pacotes 4908 doprotocolo, comunicações a nível do primeiro protocolo 4704.Em uma tal modalidade, os primeiros pacotes 4908 doprotocolo sao cifrados usando, por exemplo, o protocolo doSSL descrito em referência a FIG. 48. Em conseqüência, umpacote seguro 4914, incluindo um encabeçamento 4916 e umprimeiro pacote cifrado 4908' do protocolo; como uma cargaútil 4918 dos dados, é gerado. O pacote seguro 4914 podeentão ser transmitido sobre a conexão 4504, por exemplosobre a conexão segura 4802 do TCP/IP ilustrada em FIG. 48,ao agente 4506 do cliente da máquina de cliente 10. Em umaoutra modalidade, o primeiro serviço 4502 do protocolo éconfigurado mais para comprimir, antes da transmissão detodos os primeiros pacotes 4908 do protocolo, comunicaçõesa nível do primeiro protocolo 4704. Em uma modalidade,antes de cifrar o primeiro pacote 4908 do protocolo, asprimeiras compressas do serviço 4502 do protocolo, usandouma técnica de compressão padrão, o primeiro pacote 4908 doprotocolo. Como tal, a eficiência do sistema 4502 émelhorada. Referência outra vez FIGOS. 45-46, em umamodalidade, o sistema 4500 fornece a máquina de clienteremoto 10 uma conexão persistente a um telecontrole máquina30, como, por exemplo, a máquina remota 30'. Por exemplo,se a máquina de cliente 10 estabelece uma conexão 4504entre a máquina de cliente 10 e o primeiro serviço 4502 doprotocolo e o primeiro serviço 4502 do protocolo estabeleceuma conexão 4508a entre o primeiro serviço 4502 doprotocolo e a máquina remota 301 , então o agente 4506 docliente, o primeiro serviço 4502 do protocolo, ou ambos sãoconfigurados para manter uma fila dos primeiros pacotes dedados do protocolo transmitidos recentemente através daconexão 4504. Por exemplo, os pacotes de dados enfileiradospodem ser mantidos pelo agente 4506 do cliente e/ou peloprimeiro serviço 4502 do protocolo antes e em cima de umafalha da conexão 4504. Além disso, em cima de uma falha daconexão 4504, o primeiro serviço 4502 do protocolo e, domesmo modo, a máquina remota 3 0 são configurados paramanter a conexão 4 508a. Depois de uma falha da conexão4504, a máquina de cliente 10 estabelece uma conexão nova4504 com o primeiro serviço 4502 do protocolo, sem perdernenhuns dados. Mais especificamente, porque a conexão 4508aé mantida em cima de uma falha da conexão 4504, uma conexãorecentemente estabelecida 4504 pode ser Iig à conexãomantida 4508a. Mais, porque os primeiros pacotes de dadosrecentemente transmitidos do protocolo são enfileirados,podem outra vez ser transmitidos pela máquina de cliente 10ao primeiro serviço 4502 do protocolo e/ou pelo primeiroserviço 4502 do protocolo à máquina de cliente 10 sobre aconexão recentemente estabelecida 4504. Como tal, a sessãode comunicação entre a máquina remota 30' e a máquina decliente 10, com o primeiro serviço 4502 do protocolo, épersistente e prosigue sem nenhuma perda de dados. Em umamodalidade, no agente 4506 do cliente da máquina de cliente10 e/ou no primeiro número do serviço 4502 do protocolo ospacotes de dados que transmitem sobre a conexão 4 5 04. Porexemplo, cada um do agente 4506 do cliente e do primeiroserviço 4 5 02 do protocolo numera separada seus própriospacotes de dados transmitidos, sem consideração a como ooutro está numerando seus pacotes de dados. Além disso, anumeração dos pacotes de dados pode ser absoluta, semnenhum re-numbering dos pacotes de dados, isto é, oprimeiro pacote de dados transmitido pelo agente 4506 docliente e/ou pelo primeiro serviço 4502 do protocolo podeser numerado como no. 1, com cada pacote de dadostransmitido sobre a conexão 4504 pelo agente 4506 docliente e/ou pelo primeiro serviço 4502 do protocolo,respectivamente, numerado consecutivamente depois disso.
Em uma tal modalidade, seguindo uma conexãointerrompida e restabelecida 4504, o agente 4506 do clientee/ou o primeiro serviço 4502 do protocolo informam a outrodo pacote de dados seguinte que exige. Por exemplo, onde oagente 4506 do cliente teve os pacotes de dados recebidosno. 1-10 antes do rompimento da conexão 4504, o agente 4506do cliente, em cima do restabelecimento da conexão 4504,informa o primeiro serviço 4502 do protocolo que exigeagora o pacote de dados no. 11. Similarmente, o primeiroserviço 4502 do protocolo pode igualmente operar-se comotal. Alternativamente, em uma outra tal modalidade, oagente 4506 do cliente e/ou o primeiro serviço 4502 doprotocolo informam a outro do último pacote de dadosrecebido. Por exemplo, onde o agente 4506 do cliente teveos pacotes de dados recebidos no. 1-10 antes do rompimentoda conexão 4504, o agente 4506 do cliente, em cima dorestabelecimento da conexão 4504, informa o primeiroserviço 4502 do protocolo esse ele o pacote de dadosrecebidos no. do último 10. Além disso, o primeiro serviço4502 do protocolo pode igualmente opere como tal. Emcontudo uma outra modalidade, o agente 4506 do cliente e/ouo primeiro serviço 4502 do protocolo informam a outro, emcima do restabelecimento da conexão 4504, de ambo o últimopacote de dados recebido e do pacote que de dados seguinteexige. Em tais modalidades, em cima do restabelecimento daconexão 4504, o agente 4506 do cliente e/ou o primeiroserviço 4502 do protocolo podem retransmitir os pacotes dedados protegidos não recebidos pelos outro, permitindo quea sessão de comunicação entre um serviço de acolhimento4516 e a máquina de cliente 10, com o primeiro serviço 4502do protocolo, prosiga sem nenhuma perda de dados. Alémdisso, em cima do restabelecimento da conexão 4504, oagente 4506 do cliente e/ou o primeiro serviço 4502 doprotocolo podem nivelar de cada um de seus amortecedoresrespectivos os pacotes de dados protegidos conhecidos agorapara ser recebido pelos outro. Fornecendo a máquina decliente 10 uma conexão de confiança e persistente a umamáquina remota 30, o processo de abrir uma sessão deusuário nova com a máquina remota 3 0 é evitado mantendo asessão de usuário com as interrupções da conexão de rede.
Para cada sessão de usuário com uma máquina remota 30, amáquina de cliente 10 e a máquina remota 3 0 podem manter ocontexto e esconderijos específicos da sessão, e outrosmecanismos característicos da aplicação relativos a esseexemplo da sessão de usuário. Para cada sessão de usuárionova estabelecida, este o contexto e os esconderijossessão-específicos precisam re-de ser povoados ourestabelecido para refletir a sessão de usuário nova. Porexemplo, um usuário na máquina de cliente 10 pode ter umasessão de HTTP com uma máquina remota 30. A máquina remota30 pode manter a informação contexto-específica desteexemplo do HTTP sessão com a máquina de cliente 10. 0contexto pode ser armazenado na memória do usuário, naslimas do usuário, de uma base de dados ou do outrocomponente relativos a fornecer a funcionalidade da máquinaremota 30. Também, a máquina de cliente 10 pode ter oespecifico local do contexto ao exemplo da sessão de HTTP,tal como um mecanismo para manter-se a par de um pedidoproeminente à máquina remota 30. Este contexto pode serarmazenado na memória da máquina de cliente 10, nas limasna máquina de cliente 10, ou no outro componente desoftware conectado com a máquina de cliente 10. Se aconexão entre a máquina de cliente 10 e a máquina remota 30não é persistente, a seguir uma sessão de usuário novaprecisa de ser estabelecida com contexto especifico dasessão nova na máquina remota 30 e na máquina de cliente
10. A sessão é mantida de modo que uma sessão nova, econseqüentemente o contexto especifico novo da sessão, nãoprecisem de ser restabelecidos. Em algumas modalidades, asessão de usuário é mantida com as interrupções da conexãodo nível de rede e sem notificação ao usuário do clienteque a sessão esteve interrompida. Na operação destasmodalidades, o primeiro serviço 4502 do protocoloestabelece e mantém uma primeira conexão com uma máquina decliente 10 e uma segunda conexão com um serviço deacolhimento 4516a-4516n. Através da primeira conexão e dasegunda conexão, uma sessão entre a máquina de cliente 10 ea máquina remota 30 é estabelecida. O primeiro serviço 4502do protocolo pode armazenar e manter toda a informaçãosessão-relacionada tal como credenciais da autenticação, econtexto da máquina de cliente 10 e da máquina remota 30para a sessão estabelecida. Um usuário na máquina decliente 10 exercitará a funcionalidade fornecida pelamáquina remota 30 com sessão estabelecida. Como tal, ospacotes secundários relacionados 4902a-4902n do protocoloconterão os dados relativos à transação de talfuncionalidade. Estes pacotes secundários 4902a-4902n doprotocolo como parte do protocolo secundário 4702a-4702nencapsulated e são comunicados em um primeiro protocolo4704. Em cima da deteção de um rompimento na primeiraconexão ou na segunda conexão, o primeiro serviço 4 5 02 doprotocolo pode restabelecer a conexão interrompida aomanter a outra conexão que pode ter sido interrompida. Orompimento da conexão de rede pode causar uma interrupção àsessão entre a máquina de cliente 10 e a máquina remota 30.
Entretanto, desde que o mecanismo de transporte não émantido pelos protocolos secundários 4702a-4702n, a sessãopode ser restabelecida depois que a conexão de rede érestabelecida sem o usuário na máquina de cliente 10 quetem a notificação que a sessão estêve interrompida. Oprotocolo secundário 4702a-4702n não precisa de conternenhuma informação relacionada da interrupção paratransmitir à máquina de cliente 10. Assim, a interrupção dasessão causada pelo rompimento da conexão de rede éescondida eficazmente do usuário por causa da capsulagem doprimeiro protocolo 4704.
Primeiros a informação relacionada de manutenção dasessão do serviço 4502 do protocolo pode restabelecer asessão entre a máquina de cliente 10 e as máquinas remotas30. Por exemplo, se a primeira conexão entre a máquina decliente 10 e o primeiro serviço 4516 do protocolo éinterrompida, o primeiro serviço 4502 do protocolo podemanter a máquina de cliente 10' sessão de s ativa ou abertaentre o primeiro serviço 4502 do protocolo e a máquinaremota 30. Após a primeira conexão é restabelecido, oprimeiro serviço 4502 do protocolo pode Iig a sessão damáquina de cliente 10 à sessão mantida entre o primeiroserviço 4502 do protocolo e o serviço de acolhimento 4516.
O primeiro serviço 4502 do protocolo pode emitir à máquinade cliente 10 todos os dados que sejam enfileirados antesdo rompimento na primeira conexão. Como tal, a máquina decliente 10 estará usando a mesma sessão antes dorompimento, e a máquina remota 30 e a máquina de cliente 10podem continuar a usar todo o contexto específico da sessãoque puder ter na memória ou armazenado em outra parte. Alémdi sso, por causa do intermediário do primeiro serviço 4502do protocolo, a máquina remota 3 0 não pode estar ciente dorompimento da rede entre o primeiro serviço 4502 doprotocolo e a máquina de cliente 10. Em um outro exemplo,se a segunda conexão entre o primeiro serviço 4502 doprotocolo e a máquina remota 3 0 é interrompida, o primeiroserviço do protocolo pode manter a primeira conexão com amáquina de cliente 10 ao restabelecer a segunda conexão coma máquina remota 30. Após ter restabelecido a segundaconexão, o primeiro serviço 4502 do protocolo poderestabelecer o client' sessão de s, em nome do cliente, coma máquina remota 30. Desde que o primeiro serviço 4502 doprotocolo mantinha toda a informação da relação da sessão,o primeiro serviço do protocolo pode restabelecer a mesmasessão ou uma sessão similar de modo que a máquina decliente 10 não esteja ciente do rompimento na segundaconexão de rede e do rompimento resultante à sessão entre oprimeiro serviço 4502 do protocolo e a máquina remota 30.Durante o restabelecimento da segunda conexão de rede e dasessão, o primeiro serviço 4502 do protocolo podeenfileirar todas as transações da sessão emitidas pelamáquina de cliente 10 durante o rompimento. Então, após terrestabelecido a sessão com a máquina remota 30, o primeiroserviço 4502 do protocolo pode transmitir as transaçõesenfileiradas à máquina remota 30 e a sessão pode continuarnormalmente. Desse modo, a máquina de cliente 10 continua aoperar-se como se não havia uma interrupção à sessão.Adicionalmente, fornecendo uma conexão de confiança epersistente, algumas modalidades igualmente evitaminterrupções às transações, aos comandos ou às operaçõescomo parte da funcionalidade exercitada entre a máquina decliente 10 e uma máquina remota 30, ou uma máquina remota30. Por exemplo, uma operação da cópia de lima que usaWindows Explorer não estêve projetada continuar a trabalhardepois que há um rompimento em uma conexão de rede. Umusuário na máquina de cliente 10 pode usar a característicada cópia de lima de Windows Explorer para copiar uma limada máquina de cliente 10 a uma máquina remota 30. Por causado tamanho da lima ou das limas, esta operação pode tomarum período de hora relativamente prolongado de terminar. Sedurante o meio da operação da cópia da lima à máquinaremota 30, há uma interrupção na conexão de rede entre amáquina de cliente 10 e a máquina remota 30, a cópia delima falhará. Uma vez que a conexão de rede érestabelecida, o usuário precisará de começar uma outraoperação da cópia de lima de Windows Explorer copiar a limada máquina de cliente 10 à máquina remota 30. Sob algumasmodalidades dos métodos descritos acima, o usuário nãoprecisaria de começar uma outra operação da cópia de lima.
A conexão de rede seria restabelecida como parte daprimeira conexão do protocolo 4704. As operações da cópiade lima encapsulated na carga útil dos protocolossecundários 4702a-4702n. Como tal, a cópia de lima deWindows Explorer não começ notificada da interrupção naconexão de rede e conseqüentemente, não falharia. 0primeiro serviço 4502 do protocolo restabeleceria todas asconexões e transmite quaisquer dados enfileirados de modoque a operação pudesse continuar sem falha. 0 primeiroserviço 4502 do protocolo manteria uma fila dos dadosrelativos às operações da cópia de lima que não foramtransferidos à máquina remota 30 por causa da interrupçãona conexão de rede. Uma vez que a conexão de rede érestabelecida, o primeiro serviço 4502 do protocolo podetransmitir os dados enfileirados e então continuar sobrecom transferência dos dados relativos à operação da cópiade lima no curso devido. Embora estas modalidades sejamdescritas nos termos de um exemplo da operação da cópia delima, um ordinariamente hábil na arte reconhecerá que todaa operação, transação, comando, ligação de controle, etc.transacionaram entre a máquina de cliente 10 e a máquinaremota 30, ou as máquinas remotas 30, podem ser mantidos econtinuado sem falha do rompimento da conexão de rede, e,além disso, sem a máquina de cliente 10 reconhecer lá erauma observação do rompimento ou ter do rompimento. Alémdisso, fornecendo uma conexão de confiança e persistente,uma máquina de cliente 10 pode atravessar com as topologiasde rede diferentes sem reiniciar uma sessão ou umaaplicação na máquina de cliente 10. por exemplo, a máquinade cliente 10 pode ser um caderno do computador com umaconexão da rede wireless. Como a máquina de cliente 10move-se de uma primeira rede wireless a uma segunda redewireless, o client' a conexão de rede 4504 de s podetemporariamente ser interrompida da primeira rede wirelessenquanto uma conexão de rede é estabelecido com a segundarede wireless. A segunda rede wireless pode atribuir umidentificador novo da rede, tal como um nome de anfitriãoou um endereço do Internet Protocol, à máquina de cliente
10. Este identificador novo da rede pode ser diferente doque o identificador da rede atribuído à máquina de cliente10 pela primeira rede wireless. Em um outro exemplo, amáquina de cliente 10 pode fisicamente ser conectadaatravés de um cabo de Ethernet a um porto na rede. Aconexão física pode ser desconectada e a máquina de cliente10 ser movida para uma outra posição para obstruir em umporto diferente na rede. Isto causaria um rompimento naconexão de rede 102 e possível uma mudança no identificadoratribuído da rede. Pelo método e pelos sistemas descritosnisto, a conexão de rede é mantida para o cliente erestabeleceu automaticamente a conexão de rede da máquinade cliente 10, incluir a manipulação muda na topologia derede e no identificador da rede. A máquina de cliente 10, etodas as aplicações ou sessões na máquina de cliente 10,podem continuar a operar-se como se não havia um rompimentoda conexão de rede ou uma mudança no identificador da rede.Além disso, o usuário na máquina de cliente 10 não podereconhecer lá era nenhuma interrupções ou mudanças, e amáquina de cliente 10 não pode receber nenhuma observaçãode tais interrupções. Mesmo com uma sessão de comunicaçãode confiança e persistente como descrita acima, as conexõesde rede são interrompidas ainda. Ao restabelecer o client1a conexão de s ao serviço de acolhimento, a máquina decliente 10 igualmente precisa de ser re- autenticado àmáquina remota 30. Em uma modalidade, os sistemas e osmétodos autenticam uma máquina de cliente 10 a um serviçode acolhimento 4516 e re- autentique a máquina de cliente10 à máquina remota 30 sem credenciais re-entering daautenticação. Em uma outra modalidade, firmementeestabelecer uma sessão de comunicação entre a máquina decliente 10 e o serviço de acolhimento 4516 é permitidoatravés das conexões ou do " múltiplo; hops" issocomponentes múltiplos transversais da rede, tais como umproxy, uma passagem da segurança, um guarda-fogo ou umrouter. O estabelecimento da sessão de comunicação seguramúltipla do lúpulo pode mais ser iniciado através de umacanal de comunicação segura do usuário da cliente-correiafotorreceptora, por exemplo, entre o navegador de rede 63 02e primeiros um SSL de utilização da máquina remota 30. Aautoridade 6102 do bilhete pode fornecer bilhetes para cadaum dos lúpulos tais como a cliente-primeira conexão 4504 doserviço do protocolo e o primeiro serviço do protocolo àsconexões 4508a-4508n do serviço de acolhimento. Desse modo,a máquina de cliente 10 é autenticada através de todas asconexões entre a máquina de cliente 10 e o serviço deacolhimento 4516a-45116n. Em algumas modalidades, umaprimeira máquina remota 30, funcionando como um servidor derede, recebe um pedido da máquina de cliente 10 para umaaplicação e a primeira máquina remota 30 valida o pedidocom a autoridade 6102 do bilhete. A autoridade 6102 dobilhete gera então um bilhete da peça de N (por exemplo, Tiao TN). Em uma modalidade, a autoridade 6102 do bilhetetransmite então um Ti da parcela do bilhete da peça de N(por exemplo, a primeira parte do bilhete, ou do primeiroTi do bilhete) à primeira máquina remota 30. A primeiramáquina remota 3 0 transmite então o Ti do bilhete à máquinade cliente 10. Em uma modalidade, a autoridade 6102 dobilhete igualmente transmite o endereço do " seguinte; hop"(por exemplo, o primeiro serviço 4502 do protocolo àprimeira máquina remota 30, que transmite então o endereçoà máquina de cliente 10. Este endereço é endereço do lúpuloseguinte (por exemplo, primeiro serviço 4502 do protocolo)que necessidades deste lúpulo (por exemplo, máquina decliente 10) de se comunicar com para a máquina de cliente10 a ser autenticado eventualmente à máquina remota 30. Amáquina de cliente 10 usa o endereço para contatar então o" seguinte; hop" (por exemplo, primeiro serviço 4502 doprotocolo) e novatos uma sessão de comunicação com oprimeiro serviço 4502a do protocolo transmitindo um pedidode conexão do proxy sobre a cliente-primeira canal decomunicação 4504 do serviço do protocolo. O primeiroserviço 4502a do protocolo então extrai o primeiro Tl dobilhete do pedido de conexão do proxy e envia este bilheteã autoridade 6102 do bilhete para a validação. A autoridade6102 do bilhete valida então o primeiro Tl do bilhete. Emcima da verificação apropriada do primeiro Tl do bilhete, aautoridade 6102 do bilhete transmite o bilhete seguinte Tjdo bilhete da peça de N (por exemplo, T2) ao primeiroserviço seguinte 4502 do protocolo (por exemplo, primeiroserviço 4502a do protocolo). Em algumas modalidades, aautoridade 6102 do bilhete igualmente transmite o endereçodo lúpulo seguinte (por exemplo, o segundo primeiro serviço4502b do protocolo) a este lúpulo (por exemplo, o primeiroserviço 4502a do protocolo). 0 primeiro serviço 4502a doprotocolo transmite este bilhete ao lúpulo seguinte (porexemplo, o segundo primeiro serviço 4502b do protocolo). Emuma modalidade, o segundo primeiro serviço 4502b doprotocolo verific o T2 transmitindo o bilhete à autoridade6102 do bilhete. A autoridade 6102 do bilhete valida osegundo T2 do bilhete e o processo continua. A última partedo bilhete da peça de N foi validada uma vez a aplicação élança na máquina de cliente 10. Em uma modalidade, cadaprimeiro serviço 4502 do protocolo (isto é, cada lúpulo)valida o Ti (por exemplo, T2) com uma autoridade 6102 dobilhete associada com o primeiro protocolo por exemplo, oT2) com uma autoridade 6102 do bilhete, a autoridade 6102do bilhete em que a validação ocorreu transmite o bilheteseguinte Ti+1 (por exemplo, T3) e o endereço do primeiroserviço seguinte 4502 do protocolo (isto é, o " seguinte;hop" destino) ao primeiro serviço 4502 do protocolo quetinha validado o bilhete Tj . Assim, cada primeiro serviço4502 do protocolo é associado com uma autoridade 6102 dobilhete que seja configurada com os bilhetes atuais eseguintes do lúpulo (isto é, validando Tj e transmitindoTj +1 para o lúpulo seguinte). Conseqüentemente, o primeiroserviço seguinte 4502 do protocolo actua como o clientepara esse lúpulo. Este processo é repetido até o alcance damáquina remota 30. Assim, cada lúpulo foi validadoindividualmente sem revelar todo o bilhete a todo o umlúpulo. Em outras modalidades, a autoridade 6102 do bilhetepode emitir mais de um bilhete um pouco do que emitindo umbilhete que tem muitas peças. Por exemplo, a autoridade6102 do bilhete gera um primeiro bilhete do lúpulo e umsegundo bilhete do lúpulo, onde o primeiro bilhete dolúpulo não tenha nenhuma associação com o segundo bilhetedo lúpulo. A autoridade 6102 do bilhete transmitesubseqüentemente o primeiro bilhete do lúpulo à primeiramáquina remota 30 e a primeira máquina remota 30 transmiteo primeiro bilhete do lúpulo à máquina de cliente 10. Amáquina de cliente 10 transmite este primeiro bilhete dolúpulo ao primeiro serviço 4502 do protocolo (por exemplo,primeiro serviço 4502a do protocolo) para a validação pelaautoridade 6102 do bilhete. Em cima da validação, aautoridade 6102 do bilhete transmite o segundo bilhete dolúpulo ao primeiro serviço seguinte 4502 do protocolo (porexemplo, serviço 4502b do protocolo do segundo primeiro)quando o primeiro bilhete do lúpulo for independente dosegundo bilhete do lúpulo. Em uma modalidade maisadicional, umas ou várias das autoridades 6102 do bilhetefornecem proxys, como parte do primeiro serviço 4502 doprotocolo ou separado do primeiro serviço 4502 doprotocolo, com toda a informação necessária necessário paraconectar ao lúpulo seguinte, tal como, mas sem a limitação,as chaves de cifragem, do método do SSL informação deconfiguração, e informação de autenticação para conectar àsPEÚGAS um usuário (por exemplo, usuário SOCKS5,desenvolvido por NEC Corporaçõ de Tokyo, de Japão). Emcontudo uma outra modalidade, uma autoridade 6102 dobilhete gera somente um único bilhete. A autoridade 6102 dobilhete transmite o único bilhete à primeira máquina remota30. A primeira máquina remota 30 envia o único bilhete àmáquina de cliente 10. O primeiro serviço 4502 do protocolorecebe subseqüentemente o bilhete da máquina de cliente 10e do 11 consumes" o único bilhete em cima da validação. Emconseqüência, um único bilhete pode fornecer a habilidadede usar protocolos de comunicação arbitrários sobre a canalde comunicação 4504 do cliente-proxy e a canal decomunicação do usuário da cliente-correia fotorreceptora.
Adicionalmente, porque a máquina remota 30 não recebe nemnão verific o único bilhete, o bilhete é transparente àmáquina remota 30 e, conseqüentemente, a máquina remota 3 0não é " aware" do uso do bilhete. Explorando a segurançadas comunicações seguras entre a máquina de cliente 10 e aprimeira máquina remota 30 sobre a canal de comunicaçãosegura do usuário da cliente-correia fotorreceptora, osistema estabelece uma ligação de comunicação segura sobrea canal de comunicação non-secure 4504 do cliente-proxypara indIcar r-^moii^jx^aii^ firmemente s?pli=cações ds==wjfea detrabalho na máquina de cliente 10. Em contudo uma outramodalidade, a autoridade 6102 do bilhete transmite umaversão dos enfermos do primeiro bilhete do serviço doprotocolo com o bilhete do cliente à primeira máquinaremota 30 para a transmissão à máquina de cliente 10. Amáquina de cliente 10 transmite subseqüentemente o primeirobilhete do serviço do protocolo junto com o bilhete docliente ao primeiro serviço 4502 do protocolo como parte dopedido de conexão do proxy. O primeiro serviço 4502 doprotocolo envia então ambos os bilhetes à autoridade 6102do bilhete. Em cima de receber um primeiro protocolo dosenfermos preste serviços de manutenção ao bilhete, aautoridade 6102 do bilhete permite o primeiro bilhete doserviço do protocolo após ter validado o bilhete docliente. A autoridade 6102 do bilhete transmite então oprimeiro bilhete permitido do serviço do protocolo aoprimeiro serviço 4502 do protocolo para a autenticação aonó de ânfitrião 118. Alternativamente, em uma outramodalidade a primeira máquina remota 30 recebe bilhete doserviço do protocolo dos enfermos um primeiro e um bilhetepermitido do cliente da autoridade 6102 do bilhete etransmite somente o bilhete do cliente à máquina de cliente
10. A máquina de cliente 10 transmite o bilhete do clienteao primeiro serviço 4502 do protocolo como parte do pedidode conexão do proxy. O primeiro serviço 4502 do protocoloenvia então o bilhete do cliente à autoridade 6102 dobilhete. A autoridade 6102 do bilhete valida o bilhete docliente e, em cima da validação, permite o primeiro bilhetedo serviço do protocolo transmitido previamente à primeiramáquina remota 30. Em contudo uma outra modalidade, aautoridade 6102 do bilhete transmite um primeiro bilhetepermitido do serviço do protocolo à primeira máquina remota30 em cima da validação do bilhete do cliente para aautenticação à máquina remota 30. Assim, a um momentodeterminado, a autoridade 6102 do bilhete fornece somenteum bilhete que é permitido ao serviço 4502 do protocolo damáquina de cliente 10 ou primeiros que a autoridade 6102 dobilhete pode validar. A autoridade 6102 do bilhete podefornecer um outro bilhete que can1 t esteja validado (istoé, um bilhete dos enfermos) até que o bilhete permitidoesteja validado. Alternativamente, a autoridade 6102 dobilhete não pode transmitir o primeiro bilhete do serviçodo protocolo ao primeiro serviço 4502 do protocolo até quea autoridade 6102 do bilhete valide o bilhete permitido.
Como discutido em um detalhe mais adicional abaixo, istoreforça o roteamento de rede das comunicações usandomodalidades deste sistema porque a máquina de cliente 10não pode atravessar a primeira máquina remota 3 0 ou oprimeiro serviço 4502 do protocolo sem ter a autoridade6102 do bilhete valida o bilhete permitido e transmite obilhete necessário para se comunicar com a máquina remota30. Em uma outra modalidade, em vez de transmitir oprimeiro bilhete do serviço do protocolo ao primeiroserviço 4502 do protocolo, a autoridade 6102 do bilhetetransmite o primeiro bilhete do serviço do protocolo àprimeira máquina remota 3 0 diretamente sobre uma canal decomunicação da autoridade do usuário da correiafotorreceptora. A primeira máquina remota 30 entãotransmite automaticamente o primeiro bilhete do serviço domáquina remota 30; pushes" o primeiro bilhete do serviço doprotocolo à máquina remota 30. A autoridade 6102 do bilhetepode igualmente empurrar o primeiro bilhete do serviço doprotocolo ã máquina remota 3 0 sem transmissão do primeirobilhete do serviço do protocolo ao primeiro serviço 4502 doprotocolo ou à primeira máquina remota 30. Em contudo umaoutra modalidade, a máquina remota 3 0 recupera o primeirobilhete do serviço do protocolo da autoridade 6102 dobilhete sobre o usuário do bilhete-índice canal decomunicação 157. Ou seja o " da máquina remota 30; pulls" oprimeiro bilhete do serviço do protocolo da autoridade 6102do bilhete. Além disso, o sistema reforça o roteamento damáquina de cliente 10 com o primeiro serviço 4502 doprotocolo. Como dito acima, a máquina de cliente 10 tem quepossuir o primeiro bilhete do serviço do protocolo paraestabelecer uma sessão de comunicação com a máquina remota30. Mais especificamente, para estabelecer uma conexão coma máquina remota 30, a primeira máquina remota 3 0primeiramente tem que validar o pedido da máquina decliente 10 com a autoridade 6102 do bilhete. Uma vez quevalidada, a máquina de cliente 10 obtém o primeiro bilhetee transmite este primeiro bilhete à autoridade 6102 dobilhete para a validação. Entretanto, em cima da validação,a autoridade 6102 do bilhete transmite o primeiro bilhetedo serviço do protocolo de volta ao primeiro serviço 4502do protocolo um pouco do que a máquina de cliente 10. Asessão de comunicação entre a máquina de cliente 10 e oserviço de acolhimento 4516 é estabelecida quando o serviçode acolhimento 4516 recebe o primeiro bilhete do serviço do.As-sim, ci mci qu H- "ei d c clxcntc 10 t c™ qurc-comunicar-se com o primeiro serviço 4502 do protocolo a fimter o primeiro bilhete do serviço do protocolo transmitidoao serviço de acolhimento 4516, reforçando desse modo oroteamento da máquina de cliente 10 com o primeiro serviço4502 do protocolo. Assim, a invenção pode assegurar otraversal apropriado de um dispositivo de segurança (porexemplo, o primeiro serviço 4502 do protocolo) antes deconceder o acesso ã máquina remota 30. Por exemplo, umamáquina remota 3 0 executa diversas aplicações, tais comoMICROSOFT WORD e MICROSOFT EXCEL, ambos desenvolvidos porMicrosoft Corporation de Redmond, Washington. Em umamodalidade, a máquina de cliente 10 usa NFUSE, desenvolvidopor Citrix Sistemas, Inc. do Fort Lauderdale, Florida, aobtenha a informação da exploração agrícola 3 8 da máquinaem que as aplicações podem ser alcançadas pela máquina decliente 10. Se um usuário de cliente quer alcançar e usarMICROSOFT WORD, a máquina de cliente 10 pede a aplicação daprimeira máquina remota 30. Entretanto, somente os usuáriosque pagam uma taxa de aplicação por MICROSOFT WORD podemtornar-se autorizados para alcançar a aplicação. Paraassegurar o pagamento da taxa de aplicação, o sistemainclui o primeiro serviço 4502 do protocolo e a autoridade6102 do bilhete para reforçar o roteamento da máquina decliente 10 com o primeiro serviço 4502 do protocolo. Oroteamento da máquina de cliente 10 com o primeiro serviço4502 do protocolo é valioso ao fornecedor de aplicação se oprimeiro serviço 4502 do protocolo é usado para coletar ataxa de aplicação e para autorizar o usuário para o acessoà aplicação. A autoridade 6102 do bilhete gerasubsequentemente um bilhete associado com o pedido para a aplicação. Um primeiro bilhete permitido é transmitidoentão à máquina de cliente 10. Porque a máquina de cliente10 não tem o endereço do nó de anfitrião 118, a máquina decliente 10 não pode alcançar a aplicação. Mais, a máquinade cliente 10 não foi autorizada pelo primeiro serviço 4502do protocolo contudo (isto é, não pagou ainda). Assim, amáquina de cliente 10 tem que comunicar-se com o primeiroserviço 4502 do protocolo para tornar-se autorizada. Oprimeiro serviço 4502 do protocolo pode então transmitir oprimeiro bilhete permitido à autoridade 6102 do bilhete emcima do pagamento da taxa de aplicação. A autoridade dobilhete valida então o bilhete do cliente e transmitesubseqüentemente (ou permite) um primeiro bilhete doserviço do protocolo ao proxy. 0 primeiro serviço 4502 doprotocolo transmite então o primeiro bilhete do serviço doprotocolo ao telecontrole máquina 3 0 (por exemplo, supr ousuário de cliente pagou a taxa de aplicação), que permitea máquina remota 3 0 de transmitir a aplicação à máquina decliente 10. O FIG. 50 descreve uma modalidade de um sistema5000 a que seja capaz de reconectar a máquina de cliente 10a um serviço de acolhimento 4516 usar um cliente automáticoreconecte o serviço consultado porque o auto clientereconecta o serviço ou o serviço 5002 do ACR. Na brevevista geral, uma máquina de cliente 10 comunica-se com umamáquina remota 30, igualmente referida como um usuário,sobre uma canal de comunicação 5004. A canal de comunicação5004 pode incluir uma rede 150. Por exemplo, a canal decomunicação 5004 pode estar sobre uma rede local-area(LAN), como um Intranet da companhia, ou uma rede da vastamáquina remota 3 0 fornece o auto cliente reconecta serviçoscom um serviço 5002 do ACR. A máquina de cliente 10 alcançaa máquina remota 30 através da canal de comunicação 5004. 0serviço 5002 do ACR da máquina remota 30 proporcionaserviços da autenticação para autenticar a máquina decliente 10 à máquina remota 30. Quando há um rompimento emuma conexão de rede, o serviço 5002 do ACR proporciona maisserviços re- da autenticação para re-authenticate a máquinade cliente 10 à máquina remota 30. Embora descrito com umaúnica canal de comunicação 5004 da máquina de cliente 10 euma, algum número dos clientes (por exemplo 10, 10') enúmero das canais de comunicação (por exemplo 5004, 5004')pode ser a parte do sistema 4500. O serviço 5002 do ACR quefunciona na máquina remota 3 0 inclui um gerador chave 5006,um gerador 5008 do identificador de sessão (SID), umencryptor 5010, a contratorpedeiro chave 5012, e umdecryptor 5014. O gerador chave 5006 gera uma chave quandoa máquina remota 30 ou o serviço 5002 do ACR recebemcredenciais da autenticação da máquina de cliente 10. Emuma modalidade, o gerador chave 5006 deriva a chave de umacaracterística da máquina remota 30. Os exemplosparticulares incluem o gerador chave 5006 que deriva achave da temperatura do processador 5016, do tempo que amáquina remota 30 recebeu as credenciais da autenticação, edo número de chaves armazenadas na memória 5018. Em umamodalidade mais adicional, a chave e as credenciais daautenticação são o mesmo tamanho (por exemplo oitobocados). Em uma modalidade, o gerador chave é um módulo desoftware. Em uma outra modalidade, o gerador chave 5006 éo SID original para permitir a máquina remota 30 deidentificar uma sessão de comunicação particular. Em umamodalidade, o gerador 5008 do SID é um módulo de software.Em uma outra modalidade, o gerador 5008 do SID é um geradorde número aleatório. Em uma outra modalidade, o gerador doSID transmite o SID ao serviço de acolhimento 4516. Em umamodalidade, o gerador 5008 do SID obtém o SID de um serviçode acolhimento 4516 que funciona no usuário. Em contudo umaoutra modalidade, o gerador do SID gera o SID recebendo umidentificador de sessão do servicel 16 do anfitrião queestabelece uma sessão de usuário. O encryptor 5010 cifra achave com as credenciais da autenticação para criarcredenciais cifradas da autenticação. Em uma modalidade, oencryptor 5010 cifra a chave com as credenciais daautenticação executando um exclusive OU uma operação (istoé XOR) na chave e nas credenciais da autenticação. Em umaoutra modalidade, o encryptor 5010 adiciona as credenciaisda autenticação à chave para cifrar as credenciais daautenticação; isto é, o encryptor 5010 executa um " CaesarCipher" nas credenciais da autenticação usando a chave comoo valor do deslocamento. Em uma outra modalidade, oencryptor 5010 executa uma função de mistura, tal como MD4,MD5, ou SHA-1, nas credenciais da autenticação. Deve serdesobstruído que o encryptor 5010 pode executar qualquertipo de manipulação nas credenciais da autenticaçãocontanto que o serviço 5 0 02 do ACR puder descifrar ascredenciais cifradas da autenticação com a chave. Em umamodalidade, o encryptor 5010 é um módulo de software queexecute algoritmos matemáticos na chave e nas credenciaisda autenticação para criar as credenciais cifradas daautenticação. Em uma outra modalidade, o encryptor 5010 éuma porta de lógica da máquina remota 30, tais como umexclusive OU uma porta (XOR). Em uma modalidade, oencryptor 5010 armazena as credenciais cifradas daautenticação com o SID em uma tabela 5020 na memória 5018.
Em uma outra modalidade, o encryptor 5010 armazena ascredenciais cifradas da autenticação na tabela 5020 e ogerador 5008 do SID armazena o SID na tabela 5020. Em umamodalidade, a tabela 5020 é uma área na memória 5018alocada pelo processador 5016 para nós pelo encryptor 5010.
Em uma outra modalidade, o encryptor 5010 armazena ascredenciais cifradas da autenticação com o SID em uma basede dados (não mostrada em Fig. 50) separa da memória 5018.Em uma modalidade, o serviço 5002 do ACR usa o SID como umvetor à posição das credenciais cifradas da autenticação natabela 5020. Em outrosa modalidade, o serviço 5002 do ACRusa o SID como uma chave de base de dados para encontrar erecuperar as credenciais cifradas da autenticação em umabase de dados (não mostrada em Fig. 50) . Cada credenciaiscifradas da autenticação criadas pelo encryptor 5010 sãoassociadas com o somente um SID original. Assim, o serviço5002 do ACR pode encontrar e recuperar as credenciaiscifradas da autenticação usando um SID particular. Ocontratorpedeiro chave 5012 suprime da chave uma vez que oserviço 5 0 02 do ACR determina que a chave é já nãonecessário. Em uma modalidade, o contratorpedeiro chave5012 é uma função da supressão de um programa de softwaretal como o sistema de exploração da máquina remota 30. Odecryptor 5014 descifra as credenciais cifradas daautenticação uma vez que o serviço 5002 do ACR recebe achave e o SID da máquina de cliente 10. Em uma modalidade,o decryptor 5014 é um módulo de software que execute afunção inversa ou o algoritmo que o encryptor 5 010 executoupara criar as credenciais cifradas. Em uma outramodalidade, o decryptor 5 014 é um componente de ferragem(por exemplo uma porta de lógica) para executar ofuncionamento inverso do encryptor 5010. Em uma modalidade,uns ou vários do gerador chave 5006, o gerador 5008 do SID,o encryptor 5010, o contratorpedeiro chave 5012 e odecryptor 5 014 são juntados em um módulo de software querepresenta o serviço 5002 do ACR. Em uma outra modalidade,estes componentes podem ser componentes de ferragem taiscomo portas de lógica. Em uma modalidade mais adicional,estes componentes são incluídos em um único circuitointegrado. Em contudo uma outra modalidade, algumas doscomponentes, por exemplo o gerador chave 5006 e o gerador5008 do SID, pode ser ferragem os componentes, e outroscomponentes, por exemplo o encryptor 5010, ocontratorpedeiro chave 5012 e o decryptor 5014, podem sercomponentes de software. Em uma outra modalidade, métodospara reconectar uma máquina de cliente 10 a uma máquinaremota 30 quando houver um rompimento no client' a conexãode s à rede é fornecida. Os métodos incluem orestabelecimento do client' a conexão de s à máquina remota30 e utilização do ACR presta serviços de manutenção a 5002a re- autentica o cliente ao serviço de acolhimento.
Referindo FIG. 51, a máquina de cliente 10 estabelece umaprimeira sessão de comunicação com a máquina remota 3 0sobre a canal de comunicação 5004. A máquina de cliente 10obtém (etapa 54100) credenciais da autenticação de umusuário da máquina de cliente 10. Em um sistema 4500 quenão usa um protocolo da interconexão de sistema aberto(OSI) como o protocolo da transmissão para comunicaçõesentre a máquina de cliente 10 e a máquina remota 30, ascredenciais da autenticação podem ser uma senha do iníciode uma sessão que seja necessário estabelecer a primeirasessão de comunicação. Nesta modalidade, a obtenção dascredenciais da autenticação do usuário precede oestabelecimento da sessão de comunicação. Em uma outramodalidade, as credenciais da autenticação são informaçãopessoal do usuário que a máquina de cliente 10 obtém depoisque a primeira sessão de comunicação foi estabelecida. Osexemplos de credenciais da autenticação incluem uma senhado início de uma sessão, um número da Segurança Social, umnúmero de telefone, um endereço, a informação biométrica,um código time-varying da passagem e uma certificaçãodigital. A máquina de cliente 10 transmite então (etapa54 05) as credenciais da autenticação à máquina remota 3 0sobre a comunicação canal 5 0 04 de modo que a máquina remota3 0 possa autenticar a máquina de cliente 10 ou o usuário damáquina de cliente 10. Depois que a máquina remota 30recebe as credenciais da autenticação, os ACR que o serviço5002 fornece seu auto cliente reconectam serviços. Ogerador chave 5006 cria (etapa 5410) uma primeira chave decifragem para o uso com as credenciais da autenticação. Emuma modalidade, a chave de cifragem é um número aleatório.
Em uma outra modalidade, a chave de cifragem é toda a chavecriptograficamente padrão. O encryptor 5010 cifra então(etapa 5415) as credenciais da autenticação com a primeirachave para gerar credenciais cifradas da autenticação. Istoimpede um atacante que aceda à máquina remota 3 0 dealcançar as credenciais da autenticação sem a chave. O
gerador 5008 do SID cria então (etapa 5120) um primeiro SIDpara identificar a primeira sessão de comunicação entre umamáquina de cliente 10 e a máquina remota 30. Em umamodalidade, a primeira sessão de comunicação é com umserviço de acolhimento 4516 hospedado pela máquina remota30. 0 encryptor 5010 armazena então (etapa 5425) ascredenciais cifradas da autenticação com o primeiro SID natabela 5020 descrita acima. Em uma modalidade, o encryptor5010 armazena as credenciais cifradas da autenticação com oprimeiro SID em alguma posição para uma recuperação maiseficiente em uma estadia mais atrasada. Por exemplo, oencryptor 5010 armazena todas as credenciais e SIDscifrados da autenticação que foram criados dentro de umaquantidade de tempo predeterminada no RAM. O serviço 5002do ACR transfere todas as credenciais da autenticação eSIDS cifrados criados antes de uma estadia predeterminada aum segundo, memória externa (não mostrada). Em uma outramodalidade, o encryptor 5010 armazena as credenciaiscifradas da autenticação com o SID em uma base de dados(não mostrada).
O SID e as credenciais cifradas da autenticaçãoarmazenados na memória 5018 podem ser arranjados em toda aordem e/ou formato particulares. Por exemplo, o SID e ascredenciais cifradas da autenticação podem ser armazenadosna ordem cronológica no que diz respeito à época da criaçãodas credenciais cifradas da autenticação. A máquina remota30 transmite então (etapa 5430) a primeira chave e oprimeiro SID associado à máquina de cliente 10 sobre a rede150. A máquina de cliente 10 armazena (etapa 5435) aprimeira chave e o primeiro SID na memória (não mostrada).
Então o contratorpedeiro chave 5012 do serviço 5002 do ACRsuprime (etapa 5440) da chave armazenada na memória 5018.
Em uma outra modalidade, o serviço 5002 do ACR não suprimeda primeira chave da memória 5018 até que o serviço 5002 doACR tenha a notificação que a máquina de cliente 10 recebeua chave. Por exemplo, a máquina de cliente 10 transmite umamensagem do reconhecimento à máquina remota 3 0 após amáquina de cliente 10 recebeu com sucesso a chave. Uma vezque o serviço 5002 do ACR recebe a notificação, ocontratorpedeiro chave 5012 suprime então (etapa 5440) dachave da memória 5018. Isto impede o ACR que o serviço 5002de suprimir a chave antes da máquina de cliente 10 recebeucom sucesso a chave. Não suprimindo a chave até a mensagemdo reconhecimento, o serviço 5002 do ACR pode retransmitira chave e o SID à máquina de cliente 10 em cima de umafalha na transmissão. Suprimindo a chave em etapa 5440, oserviço 5002 do ACR não tem o mecanismo necessário paradescifrar as credenciais cifradas da autenticaçãoarmazenadas na tabela 5020. Assim, se um atacante alcança amemória 5018 da máquina remota 30, o atacante poderecuperar as credenciais cifradas da autenticação mas nãopode descifrar as credenciais cifradas da autenticação.Conseqüentemente, o atacante não pode ler as credenciais daautenticação. No short, as credenciais cifradas daautenticação armazenadas na máquina remota 30 não fornecemnenhuma informação que o atacante puder interpretar oucompreender. Como tal, a máquina remota 30 não possuinenhuma informação para descifrar as credenciais cifradasda autenticação. Além, a máquina de cliente 10 é o únicodispositivo que pode fornecer a chave às credenciaiscifradas da autenticação. Com a possibilidade de muitasmáquinas de cliente 10 como parte da rede 150, um atacantepode ter que tentar aceder a cada cliente (por exemplo 10,10') para encontrar individualmente a máquina de cliente 10que possui a chave correta. Isto pode ser demorado efastidioso e, em conseqüência, pode intimidar um atacantede uma tentativa de descifrar as credenciais cifradas daautenticação. Em uma outra modalidade, a máquina remota 30tem uma característica do intervalo de parada no que dizrespeito a alcançar as credenciais cifradas daautenticação. Por exemplo, a máquina remota 3 0 começa umtemporizador depois que a primeira comunicação é terminadaanormalmente. Se o temporizador alcangou um valorpredeterminado antes que a máquina de cliente 10restabeleça a segunda sessão de comunicação e transmita achave à máquina remota 30 para a decifração, o serviço 5002do ACR suprime do credenciais cifradas da autenticação databela 5020. Se nenhum temporizador é usado, a chave actuacomo uma senha de fato para as sessões futuras. Uma vez quea máquina de cliente 10 recebe a primeira chave e oprimeiro SID da máquina remota 3 0 como descritos acima nareferência a FIG. 51, a sessão pode ser restabelecida,segundo as indicações de FIG. 52, sem exigir o usuárioreenter suas credenciais da autenticação. Quando umrompimento ou uma ruptura ocorrem na primeira sessão decomunicação (etapa 54100) entre a máquina de cliente 10 e amáquina remota 30, as primeiras necessidades da sessão decomunicação 5004 de ser restabelecido e a máquina decliente 10 re-authenticated à máquina remota 30. O serviço5002 do ACR fornece um sistema e um método restabelecendo ere-authenticating a máquina de cliente 10 à máquina remota30. Quando a máquina de cliente 10 e a máquina remota 30restabelecem uma segunda sessão de comunicação, a máquinade cliente 10 transmite a primeira chave e o primeiro SID(etapa 5405) à máquina remota 30. O serviço 5002 do ACR usao SID (etapa 5210) para encontrar e recuperar ascredenciais cifradas da autenticação no server1 memória5018 de s e usos a chave (etapa 5215) descifrar ascredenciais recuperadas da autenticação. A máquina remota30 então re- autentica a máquina de cliente 10 à máquinaremota 3 0 (etapa 522 0) validando as credenciais daautenticação da máquina de cliente 10. Em uma modalidade, aautenticação e o re-authentication são facilitados com osserviços da segurança proporcionados pelo sistema deexploração do dispositivo de computação da máquina remota30. Por exemplo, as credenciais da autenticação são uminício de uma sessão e uma senha à máquina remota 30. Emuma outra modalidade, a autenticação e o re-authenticationsão facilitados com os serviços de segurança do nível daaplicação de um programa da aplicação ou de software namáquina remota 30. Por exemplo, as credenciais daautenticação são um início de uma sessão e uma senha daaplicação a um serviço de acolhimento específico 4516.
Para ilustrar, em cima de uma terminação anormal deuma primeira sessão de comunicação (etapa 54100) em que ousuário a senha do início de uma sessão de s era ascredenciais da autenticação, as tentativas da máquina decliente 10 de estabelecer uma segunda sessão de comunicaçãocom a máquina remota 30. Como parte do pedido à máquinaremota 3 0 estabelecer uma segunda sessão de comunicação coma máquina remota 30, a máquina de cliente 10 transmite achave e o SID (etapa 5405) da primeira sessão decomunicação terminada à máquina remota 30. Em vez dealertar o usuário incorporar o usuário a senha do início deuma sessão de s outra vez, a máquina remota 30, com oserviço 5002 do ACR, usa o SID (etapa 5210) para encontrare recuperar as credenciais cifradas associadas com ousuário, usos da autenticação a chave (etapa 5215)descifrar as credenciais recuperadas da autenticação, ereauthenticates o cliente que usa a informação deautenticação descifrada (etapa 5220) . Em uma modalidade,durante a segunda sessão de comunicação, o serviço 5002 doACR cria (etapa 5225) uma segunda chave para as credenciaisda autenticação e cifra então (etapa 5230) as credenciaisda autenticação usando a segunda chave. Um segundo SID écriado (etapa 5235) para identificar a segunda sessão decomunicação e para associar a sessão com a máquina decliente 10. O segundo as credenciais cifradas daautenticação são armazenadas (etapa 5425) com o segundo SIDna tabela 5020. Nesta modalidade, o usuário transmite então(etapa 5240) a segunda chave e o segundo SID à máquina decliente 10. A máquina de cliente 10 armazena então (etapa5245) a segunda chave e o segundo SID na memória (nãomostrada) para a recuperação futura. O serviço 5002 do ACRsuprime então (etapa 54150) da segunda chave da memória5018. Assim, o serviço 5002 do ACR pode somente descifrar asegunda autenticação cifrada em cima de obter a segundachave e o segundo SID da máquina de cliente 10. O serviço5002 do ACR criou uma chave nova e um SID novo para asegunda sessão de comunicação que é usada com as mesmascredenciais da autenticação que o usuário tinha transmitidodurante a primeira sessão de comunicação. Conseqüentemente,um usuário as credenciais da autenticação de s não têm queser retransmitidas em cima de uma segunda canal decomunicação após uma terminação anormal da primeira sessãode comunicação. Embora a invenção seja discutida nos termosde credenciais da autenticação, toda a informaçãoconfidencial que puder ser mantida através das sessões sehá uma falha de comunicação pode ser usada. Assim se ainformação do cartão de crédito está exigida por umaaplicação e a informação do cartão de crédito está emitidaao usuário, a disconexão subseqüente entre o cliente e ousuário não exige a informação do cartão de créditoreentered se esta invenção é emitida. Mais, embora umidentificador de sessão, ou o SID, são discutidos como ofornecimento de um ponteiro às credenciais armazenadas daautenticação, a todo o número ou a valor que foremapropriados porque um ponteiro pode ser usado. 0 FIG. 53descreve uma outra modalidade de um sistema 53 00 que sejacapaz de reconectar uma máquina de cliente 10 a uma máquinaremota 30 usando um serviço 5 0 02 do ACR que executa em umamáquina intermediária 30'. A máquina intermediária 30' é umdispositivo computar diferente da máquina remota 30 e podeser toda a máquina remota 3 0 que são capaz de umacomunicação e que tiver a suficiente capacidade do poder ede memória do processador executar as operações descritasnisto. Na breve vista geral, a máquina de cliente 10 estáem uma comunicação com uma máquina intermediária 30' sobreuma canal de comunicação 5004. A canal de comunicação 5004pode incluir uma rede 150. A máquina intermediária 30'fornece o auto cliente reconectam serviços, através de umserviço 5002 do ACR, à máquina de cliente 10 para a conexãoda máquina de cliente 10 à máquina remota 30. A máquinaintermediária 30' está nas comunicações com a máquinaremota 30 sobre uma canal de comunicação 5004'. A canal decomunicação 5004' pode incluir uma rede 150'. A máquina decliente 10 alcança os serviços da máquina remota 3 0 atravésda máquina intermediária 30'. 0 serviço 5002 do ACR namáquina intermediária 30' fornece o auto cliente reconectamserviços para a conexão da máquina de cliente 10 à máquinaremota 30. Embora ilustrado com uma única máquina decliente 10 sobre uma canal de comunicação 5004, todo onúmero de clientes e o número de canais de comunicaçãopodem ser parte do sistema 5300. Em uma modalidade maisadicional (não mostrada), o sistema 5300 inclui as máquinasmúltiplas 30' do intermediário; isso está em umacomunicação com umas ou várias máquinas de cliente 10através de uma rede 15 0 sobre as canais de comunicaçãoadicionais 5004, 5004'. Embora ilustrado em FIG. 53 com umaúnica máquina intermediária 30' sobre uma canal decomunicação 5004, todo o número de nós intermediários e onúmero de canais de comunicação podem parte do sistema5300. Em uma outra modalidade, a invenção relaciona-se aosmétodos para facilitar estabelecer e autenticar um clientemachine' conexão de s 10 a uma máquina remota 30 usandoumas ou várias máquinas 30' do intermediário;. Segundo asindicações de FIG. 54, uma máquina intermediária 30'estabelece uma sessão com a máquina remota 30. A máquina decliente 10 estabelece uma primeira sessão de comunicaçãocom a máquina intermediária 30' sobre a canal decomunicação 5004. A máquina de cliente 10 obtém (etapa5400) credenciais da autenticação de um usuário da máquinade cliente 10. A máquina de cliente 10 transmite então(etapa 5405) as credenciais da autenticação à máquinaintermediária 30' sobre a canal de comunicação 5004 de modoque a máquina intermediária 30' pode autenticar o usuáriocom a máquina remota 30.
Após a máquina intermediária 30' recebe as credenciaisda autenticação, ACR que o serviço 5002 fornece seu autocliente reconecta serviços. O serviço 5002 do ACR cria(etapa 5410) uma primeira chave de cifragem para o uso comas credenciais da autenticação e cifra então (etapa 5415)as credenciais da autenticação com a primeira chave paragerar credenciais cifradas da autenticação. Isto impede umatacante que aceda à máquina remota 30 de alcançar ascredenciais da autenticação sem a chave. Uma sessão éestabelecida então com a máquina remota 30 (etapa 5420A) ea máquina de cliente 10 é autenticada ã máquina remota 30usando as credenciais da autenticação. Desse modo, oserviço 5002 do ACR cria um primeiro SID para identificar aprimeira sessão de comunicação. As credenciais cifradas daautenticação são armazenadas (etapa 5425) com o primeiroSID na tabela 5020 descrita acima. A máquina intermediária30' transmite então (etapa 5430) a primeira chave e oprimeiro SID à máquina de cliente 10 sobre a rede 150. Amáquina de cliente 10 armazena (etapa 5435) a primeirachave e o primeiro SID no cliente machine1 memória de s(não mostrada) . O serviço 5002 do ACR suprime então (etapa5440) da chave armazenada na memória 5018. Uma vez que amáquina de cliente 10 recebe a primeira chave e o primeiroSID do intermediário fazem à máquina 30' como descritoacima na referência a FIG. 54, a sessão de comunicação podeser restabelecida e re-authenticated, segundo as indicaçõesde FIG. 55, sem exigir o usuário reenter suas credenciaisda autenticação. Por exemplo, pode haver um rompimento naprimeira sessão de comunicação (etapa 5505) entre a máquinade cliente 10 e a máquina intermediária 30' de umaterminação anormal. Quando a máquina de cliente 10 e amáquina intermediária 30' restabeleça uma segunda sessão decomunicação, a máquina de cliente 10 transmite a primeirachave e o primeiro SID (etapa 5505) à máquina intermediária30'. O serviço 5002 do ACR da máquina intermediária 30' usao SID (etapa 5510) para encontrar e recuperar ascredenciais cifradas da autenticação no server1 memória5018 de s e usos a chave (etapa 5515) descifrar ascredenciais recuperadas da autenticação. O gerador chavecria (etapa 5520) uma segunda chave para as credenciais daautenticação e o encryptor chave 5010 cifra então (etapa5525) as credenciais da autenticação usando a segundachave. O gerador 5008 do SID igualmente cria (etapa 5530)um segundo SID para identificar a segundos sessão eassociados de comunicação ele com a sessão mantida entre amáquina intermediária 30' e a máquina remota 30. 0encryptor 5010 armazena as segundas credenciais cifradas daautenticação com o segundo SID na tabela 5020. Nestamodalidade, a máquina remota 3 0 transmite então (etapa5535) a segunda chave e o segundo SID à máquina de cliente10. A máquina de cliente 10 armazena então (etapa 5540) asegunda chave e o segundo SID para a recuperação futura. 0contratorpedeiro chave 5012 suprime então (etapa 5545) dasegunda chave da memória 5018. Assim, o serviço 5002 do ACRpode somente descifrar a segunda autenticação cifrada emcima de obter a segunda chave e o segundo SID da máquina decliente 10. O serviço 5002 do ACR criou uma chave nova e umSID novo para a segunda sessão de comunicação que é usadacom as mesmas credenciais da autenticação que o usuáriotinha transmitido durante a primeira sessão de comunicação.
Conseqüentemente, um usuário as credenciais da autenticaçãode s não têm que ser retransmitidas em cima de uma segundacanal de comunicação após uma terminação anormal daprimeira sessão de comunicação. Em uma outra modalidade,pode haver um rompimento ou uma terminação anormal nasegunda sessão de comunicação (etapa 5600) entre a máquinaintermediária 30' e a máquina remota 30. Como descrito emFIG. 56, a segunda sessão de comunicação pode serrestabelecida e re-authenticated sem exigir o usuárioreenter suas credenciais da autenticação. Quando a máquinaintermediária 30' e a máquina remota 30 restabelece umasegunda sessão de comunicação, a máquina intermediária 30'pede (etapa 5605) o primeiro SID chave e primeiro damáquina de cliente 10 restabelecer uma sessão com a máquinaremota 30 no client1 interesse de s. Na resposta, a máquinade cliente 10 transmite a primeira chave e o primeiro SID(etapa 5610) à máquina intermediária 30'. O serviço 5002 doACR da máquina intermediária 30' usa o SID (etapa 5615)para encontrar e recuperar as credenciais cifradas daautenticação no server1 memória 5018 de s e usos a chave(etapa 5620) descifrar as credenciais recuperadas daautenticação. O serviço 500 do ACR restabelece então oclient, sessão de s com o usuário (etapa 5625) que usa ascredenciais descifradas da autenticação para re-authenticate a máquina de cliente 10 à máquina remota 30.
Em uma outra modalidade, após ter restabelecido e re-authenticating o cliente sobre a segunda sessão decomunicação, o serviço 5002 do ACR da máquina intermediária30' cria uma recolocação segunda SID e a segunda chave comodescrito previamente em FIG. 55. Na referência à modalidadedo serviço do ACR ilustrado no FIGO 50, o gerador chavecria (etapa 5520) uma segunda chave para as credenciais daautenticação e o encryptor chave 5010 cifra então (etapa5525) as credenciais da autenticação usando a segundachave. O gerador 5008 do SID igualmente cria (etapa 5530)um segundo SID para identificar a segundos sessão eassociados de comunicação ele com a sessão restabelecidaentre a máquina intermediária 30' e a máquina remota 30. Oencryptor 5010 armazena as segundas credenciais cifradas daautenticação com o segundo SID na tabela 5020. Nestamodalidade, o usuário transmite então (etapa 5535) asegunda chave e o segundo SID à máquina de cliente 10. Ocliente a máquina 10 armazena então (etapa 5540) a segundachave e o segundo SID para a recuperação futura. 0contratorpedeiro chave 5012 suprime então (etapa 5545) dasegunda chave da memória 5018. Em outras modalidades, unsou vários do primeiro serviço 4502 do protocolo e doserviço 5002 do ACR podem ser distribuídos através dealguns dos nós do serviço de acolhimento. Como tal, afuncionalidade do restabelecimento e de re-authenticating,ou automaticamente da reconexão, uma máquina de cliente 10conecta a um serviço de acolhimento 4516 pode flexível serdistribuída em arquiteturas diferentes do sistema e dadistribuição através dos serviços de acolhimento 4516 e/oudas máquinas remotas 30. Em uma modalidade, um ACR que oserviço 5002 pode ser associado com o cada um dos serviçosde acolhimento 4516a-4516n no sistema 4500 para fornecer oauto cliente reconecta os serviços dedicados a cada serviçode acolhimento 4516, respectivamente. Um único primeiroserviço 4502 do protocolo pode ser desdobrado para tratartodos os serviços de acolhimento 4516a-4516n. Segundo asindicações de FIG. 57, cada um dos serviços múltiplos5002a-5002n do ACR é associado com o cada um dos serviçosde acolhimento 4516a-4516n, respectivamente. Como exemplo,uma máquina de cliente 10 estabelece uma sessão decomunicação com o serviço de acolhimento 4516a usando oprimeiro serviço 4502 do protocolo. Os ACR que o serviço5002a associado com o serviço de acolhimento 4516a forneceo auto cliente reconectam serviços para a conexão damáquina de cliente 10 ao serviço de acolhimento 4516a. Sehá um rompimento em uma conexão de rede, o primeiro serviço4 502 do protocolo restabelecerá a conexão com a máquina decliente 10 e o serviço 5002a do ACR re- autenticará amáquina de cliente 10 ao serviço de acolhimento 4516a. Umasegunda máquina de cliente 10' possa simultaneamente, com aprimeira máquina de cliente 10, para estabelecer a sessãode comunicação com o serviço de acolhimento 4516b usando-oprimeiro serviço 4502 do protocolo. Os ACR que o serviço5002b fornece o auto cliente reconectam serviços para oclient1 conexão de s ao serviço de acolhimento 4516b. Se háum rompimento da rede, o primeiro serviço 4502 do protocoloconjuntamente com o serviço 5002b do ACR reconectará amáquina de cliente 10' ao serviço de acolhimento 4516b. Emuma outra modalidade destes métodos, um serviço do ACR podeser associado com o cada um dos serviços de acolhimentomúltiplos 4516a-4516n que funcionam em cada um das máquinasremotas 30 do sistema 4500. Um primeiro serviço 4502 doprotocolo pode ser desdobrado em cada máquina remota 3 0para prestar serviços de manutenção a cada um das máquinasremotas múltiplas 30 que funcionam nesse nó de anfitrião118. Segundo as indicações de FIG. 57, cada serviço 5002a-5002n do ACR é associado com cada serviço de acolhimento4516a-4516n, respectivamente. Cada máquina remota 30 tem umprimeiro serviço dedicado 4502 do protocolo prestarserviços de manutenção a cada um de seus serviços deacolhimento 4516 e de cada serviço 5002 do ACR. Porexemplo, uma máquina de cliente 10 estabelece uma sessão decomunicação com serviço de acolhimento 4516a na máquinaremota 30 usando o primeiro serviço 4502 do protocolo. OsACR que o serviço 5002a na máquina remota 30 fornece o autocliente reconectam serviços para a conexão da máquina decliente 10 ao serviço de acolhimento 4516a na máquinaremota 30. Se um rompimento da rede é detectado, o primeiroserviço 4502 do protocolo restabelece o client' a conexãode s ao serviço de acolhimento 4516a na máquina remota 30 eno serviço 5002a do ACR na máquina remota 30 re-authenticates a máquina de cliente 10 ao serviço deacolhimento 4516a na máquina remota 30. Simultaneamente coma primeira máquina de cliente 10, uma segunda máquina decliente 10' estabelece a sessão de comunicação com serviçode acolhimento 4516b na máquina remota 30 usando o primeiroserviço 4502 do protocolo e o serviço 5002a do ACR. Se háum rompimento da rede, o primeiro serviço 4502 do protocoloconjuntamente com o serviço 5002a do ACR reconecta amáquina de cliente 10' com serviço de acolhimento 4516b namáquina remota 30. Simultaneamente com a primeira máquinade cliente 10 e a segunda máquina de cliente 10' , umterceiro da máquina de cliente 1; estabelece uma sessãode comunicação com serviço de acolhimento 4516n na máquinaremota 30' usando o primeiro protocolo preste serviços demanutenção a 4502 e a serviço 5002n do ACR na máquinaremota 30'. Em uma maneira similar, o primeiro serviço 4502do protocolo e o serviço 5002n do ACR podem reconectar amáquina de cliente 10" ao serviço de acolhimento 4516n damáquina remota 30'.
Em outras modalidades, uns ou vários dos serviços 5002do ACR podem ser distribuídos com os primeiros serviços4502 do protocolo através de alguns do intermediário ou dosprimeiros nós dos serviços do protocolo. Como tal, afuncionalidade de reconectar uma máquina de cliente 10 a umserviço de acolhimento 4516 pode flexível ser distribuídanas arquiteturas diferentes do sistema e da distribuiçãoassociadas com o primeiro serviço 4502 do protocolo. Em umamodalidade deste aspecto da invenção, os ACR que o serviço5002 pode ser associado com cada primeiro serviço 4502 doprotocolo para fornecer o auto cliente reconectam osserviços dedicados ao primeiro serviço 4502 do protocolo.
Um único primeiro serviço 4502 do protocolo e o serviço5002 do ACR podem ser desdobrados para tratar todos osserviços de acolhimento 4516a-4516n. Segundo as indicaçõesde FIG. 59, os ACR que o serviço 5002 reside com o primeiroserviço 4502 do protocolo no mesmo dispositivo decomputação para fornecer o auto cliente reconectam serviçosaos serviços de acolhimento 4516a-4516n. Por exemplo, umamáquina de cliente 10 estabelece uma sessão de comunicaçãocom o alguns de os serviços de acolhimento 4516a-4516nusando o primeiro serviço 4502 do protocolo e o serviço5002 do ACR. O primeiro serviço 4502 do protocolo e oserviço 5002 do ACR fornecem a reconexão da funcionalidadede uma máquina de cliente 10 a alguns dos serviços deacolhimento 4516a-4516n. Em uma outra modalidade desteaspecto da invenção, cada um dos serviços 5002a-5002n do
ACR pode ser associado com o cada um do múltiplo dosprimeiros serviços 4516a-4516n do protocolo. Por exemplosegundo as indicações de FIG. 60, um primeiro serviço 4502do protocolo e um serviço 5002a do ACR podem serdesdobrados em uma máquina remota 3 0 para prestar serviçosde manutenção a cada um dos serviços de acolhimentomúltiplos 4516a-4516n que funcionam nessa máquina remota30. Como mostrado mais em FIG. 60, cada ACR que o serviço5002a-405n é associado com cada primeiro serviço 4502-112ndo protocolo para fornecer auto cliente dedicado reconectaserviços aos serviços de acolhimento múltiplos 4516a-4516nde cada máquina remota 30-118n. Como exemplo, a máquina decliente 10 estabelece uma sessão de comunicação com serviçode acolhimento 4 516a na máquina remota 3 0 usando o primeiroserviço 4502 do protocolo e o serviço 5002a do ACR na mesmamáquina remota 30. Se há um rompimento da rede, o primeiroserviço 4502 do protocolo conjuntamente com o serviço 5002ado ACR reconecta a máquina de cliente 10 ao serviço deacolhimento 4516a na máquina remota 30. Embora a invençãoseja discutida acima nos termos de várias arquiteturas dosistema e da distribuição nos FIGOS. 57-60, alguns outrossistema e/ou arquitetura da distribuição de que combinare/ou distribuir uns ou vários dos primeiros serviços 4502do protocolo, dos serviços 5002 do ACR, e do serviço deacolhimento 4516 através de alguns as máquinas remotas 30,intermediário fazem à máquina 30" ou outros dispositivos decomputação podem ser usados. Além disso, em vez de usar umserviço 5002 do ACR para proporcionar serviços daautenticação e do re-authentication, um serviço daautoridade 6102 do bilhete pode ser usado. Uma autoridade6102 do bilhete gera e valida bilhetes para finalidades daconexão e da autenticação. Um bilhete pode compreender umidentificador e uma chave de sessão. Pode igualmentecompreender um número aleatório, um certificado do servidorde aplicações, um nonce, um valor constante ou nulo ouqualquer outro tipo da informação da identificação, aconfidencial ou segurança baseado que puder ser usado paratais finalidades. Em uma modalidade de um sistema decomunicação da rede para reconectar uma máquina de cliente10 a um serviço de acolhimento 4516 segundo as indicaçõesde FIG. 61, uma autoridade 6102 do bilhete pode funcionarem um nó separado da máquina intermediária 30, do primeiroserviço 4502 do protocolo ou de algum dos serviços deacolhimento 4516a-4516n. 0 FIG. 61 descreve uma máquinaintermediária 30 e a autoridade 6102 do bilhete, quepoderiam ser um único dispositivo de computação, como partedo sistema 4500. Além do que as redes 150 e 150' , osistema 4500 inclui uma máquina de cliente 10, o primeiroserviço 4502 do protocolo, e os serviços de acolhimento4516a-4516n, que são descritos acima. Em uma modalidade, amáquina intermediária 3 0 é uma passagem da segurança, como,por exemplo, um guarda-fogo e/ou um router, através de queas mensagens entre a máquina de cliente 10 e o primeiroserviço 4502 do protocolo devem passar devido àconfiguração da rede 150. A autoridade 6102 do bilhete podeser, por exemplo, um componente autônomo da rede que sejamcapaz de uma comunicação e que tenha a suficientecapacidade do poder e de memória do processador executar asoperações descrito nisto. A autoridade 6102 do bilheteigualmente pode ser um serviço de acolhimento específico4516 dedicado a proporcionar serviços relativos bilhete emuma máquina remota 30. Segundo as indicações de umamodalidade de FIG. 61, a máquina intermediária 30 éconfigurada para aceitar uma conexão 4504a iniciada pelamáquina de cliente 10 e para estabelecer uma segundaconexão 4504b com o primeiro serviço 4502 do protocolo.Junto, a conexão 4504a e a segunda conexão 4504b constituema conexão 4 504, descrita acima, sobre que a máquina decliente 10 e o primeiro serviço 4502 do protocolo secomunicam usando o primeiro protocolo. A máquinaintermediária 30, como mostrados, é configurada igualmentepara comunicar-se com a autoridade 6102 do bilhete. Em umamodalidade, a autoridade 6102 do bilhete é configurada parareceber um pedido para um primeiro bilhete do reconexão donó intermediário 30' e para gerar depois disso o primeirobilhete do reconexão. 0 primeiro bilhete do reconexão podeincluir, por exemplo, um grande número aleatório. 0primeiro bilhete do reconexão permite que a máquina decliente 10 restabeleça automaticamente uma conexão com oserviço de acolhimento após um rompimento anormal doserviço sem exigir a máquina de cliente 10 fornecer outravez credenciais da autenticação.
Em uma outra modalidade, a autoridade 6102 do bilheteé configurada para receber um pedido para um primeirobilhete do re-connection para cada um do " hops" entre amáquina de cliente 10 e o serviço de acolhimento 4516. Porexemplo, a máquina intermediária 3 0 pode pedir bilhetes dore-connection para a conexão entre a máquina de cliente 10e a máquina intermediária 30, entre a máquina intermediária30 e o primeiro serviço 4502 do protocolo, e entre oprimeiro serviço 4502 do protocolo e o serviço deacolhimento 4516. Estes bilhetes do re-connection podemsomente ser válidos para cada um do " hops". Por exemplo,um primeiro bilhete do re-connection para o primeiroserviço 4502 do protocolo à conexão do serviço deacolhimento 4516 é válido somente para autenticar oprimeiro serviço 4502 do protocolo ao serviço deacolhimento 4516 em nome da máquina de cliente 10. Após ageração do primeiro bilhete do reconexão, a autoridade 6102do bilhete cifra as credenciais da autenticação fornecidaspela máquina de cliente 10 usando o primeiro bilhete doreconexão de modo que um atacante que aceda à máquinaintermediária 3 0 ou à autoridade 6102 do bilhete não possaalcançar as credenciais da autenticação sem o primeirobilhete do reconexão. A autoridade 6102 do bilhete podeigualmente gerar um SID para identificar a sessão decomunicação que é estabelecida entre a máquina de cliente10 e a máquina intermediária 30. A autoridade 6102 dobilhete então armazena as credenciais cifradas daautenticação com o SID na memória e transmite o SID e oprimeiro bilhete do reconexão à máquina de cliente 10 sobrea rede 150. Em cima do client' o recibo de s do SID e doprimeiro bilhete do reconexão, a autoridade 6102 do bilhetedestrói (isto é, supressões) o bilhete de sua memória (nãomostrada). Em uma outra modalidade, a autoridade 6102 dobilhete é configurada para gerar um punho. O punho podeser, por exemplo, um número aleatório que seja associadocom (por exemplo, traçado) o primeiro bilhete do reconexão.Em uma modalidade, o punho é um número aleatório menor doque o número aleatório que dá forma ao primeiro bilhete doreconexão. Por exemplo, o punho pode ser um númeroaleatório de 32 bits. Em uma modalidade mais adicional, opunho associou com um bilhete ou um bilhete do re-connection é um endereço de ou o ponteiro ao " seguinte;hop" na conexão do múltiplo-lúpulo entre a máquina decliente 10 e o serviço de acolhimento 4516. Neste caso, umbilhete ou o bilhete do re-connection são validados para umúnico " hop" com um ponteiro ao " seguinte; hop". 0 "seguinte; hop" precisará de obter e assim por diante evalidar um bilhete diferente ou o bilhete de conexão re-até o último " hop" é validado e conectado ao serviço deacolhimento 4516 em nome da máquina de cliente 10. Aautoridade 6102 do bilhete transmite o primeiro bilhete doreconexão e o punho à máquina intermediária 30, ao manteruma cópia do primeiro reconexão ticket e uma cópia dopunho. A cópia do primeiro bilhete do reconexão pode maistarde ser usada pela autoridade 6102 do bilhete paravalidar o primeiro bilhete do reconexão transmitidooriginal à máquina de cliente 10 quando é apresentada maistarde à autoridade 6102 do bilhete durante o processo dereconectar a máquina de cliente 10. Em uma modalidade, aautoridade 6102 do bilhete igualmente mantém um endereçopara o primeiro serviço 4502 do protocolo, que, comoexplicado abaixo, é associado com o primeiro bilhete doreconexão e, em cima da validação do primeiro bilhete doreconexão, transmitido à máquina intermediária 30. Em umamodalidade, a máquina intermediária 30 é configurada maispara usar o punho transmitido a ela pela autoridade 6102 dobilhete para suprimir da cópia do primeiro bilhete doreconexão mantido na autoridade 6102 do bilhete. Em umaoutra modalidade, como descrita abaixo, a autoridade 6102do bilhete é configurada mais para suprimir, durante oprocesso de reconectar a máquina de cliente 10 a um serviçode acolhimento 4516, ao primeiro bilhete do reconexão epara gerar depois disso bilhete do reconexão da recolocaçãoum primeiro. Adicionalmente, em uma outra modalidade, oprimeiro bilhete do reconexão é configurado para oapagamento automático após predeterminado período de tempo.Na modalidade de bilhetes do re-connection para cada um do" hops" entre o cliente e o serviço de acolhimento 4516,se, alguns ou todos os bilhetes de conexão re- pode serconfigurado para o apagamento automático após um período detempo predeterminado. Em outras modalidades, a autoridade6102 do bilhete ou a máquina intermediária 30 sãoconfiguradas para suprimir de cada um dos bilhetes domúltiplo-lúpulo e para gerar bilhetes da recolocação Em umaoutra modalidade, o primeiro serviço 4502 do protocolo éconfigurado para gerar um segundo bilhete do reconexão,que, como no caso do primeiro bilhete do reconexão, podeincluir, por exemplo, um grande número aleatório. Em umamodalidade, o primeiro serviço 4502 do protocolo gerasegundos bilhetes do re-connection para cada um do " hops"entre a máquina de cliente 10 e o serviço de acolhimento4516. O primeiro serviço 4502 do protocolo pode igualmenteser configurado para transmitir o segundo bilhete doreconexão à máquina de cliente 10, ao manter uma cópia dosegundo reconexão ticket e um número de sessão. A cópia dosegundo bilhete do reconexão pode mais tarde ser usada peloprimeiro serviço 4502 do protocolo para validar o segundobilhete do reconexão transmitido original à máquina decliente 10 quando é apresentada mais tarde ao primeiroserviço 4 5 02 do protocolo durante o processo de reconectara máquina de cliente 10. Em uma modalidade, o primeiroserviço 4502 do protocolo transmite o segundo bilhete doreconexão à máquina de cliente 10 através da máquinaintermediária 30. Em uma outra modalidade, o primeiroserviço 4502 do protocolo transmite o segundo bilhete doreconexão à máquina de cliente 10 diretamente. Em umamodalidade mais adicional, o primeiro serviço 4502 doprotocolo pode transmitir segundos bilhetes do reconexão aoutros primeiros serviços 4502 do protocolo ou às máquinasintermediárias
30 que podem compreender a conexão do múltiplo-lúpuloentre a máquina de cliente 10 e o serviço de acolhimento4516. Além disso, como descrito no maior detalhe abaixo, oprimeiro serviço 4502 do protocolo pode mais serconfigurado para suprimir, durante o processo de reconectara máquina de cliente 10 a um serviço de acolhimento 4516, osegundo bilhete do reconexão, e gera depois disso umbilhete do reconexão da recolocação segunda.
Adicionalmente, em uma outra modalidade, o segundo bilhetedo reconexão é configurado para o apagamento automáticoapós um período de tempo predeterminado. Em umasmodalidades mais adicionais, um primeiro serviço 4502 doprotocolo de uns ou vários primeiros serviços 4502 doprotocolo em uma conexão de lúpulo múltiplo é configuradopara suprimir dos segundos bilhetes do re-connection paracada um do " hops", e gere depois disso bilhetes do re-connection da recolocação segundos para um, algum ou todo o"hops." Em uma modalidade, a máquina intermediária 30 serecomo um intermediário para os primeiros e segundos bilhetesdo reconexão. A máquina intermediária 3 0 recebe, porexemplo, o primeiro bilhete do reconexão gerado pelaautoridade 6102 do bilhete e o segundo bilhete do reconexãogerado pelo primeiro serviço 4502 do protocolo. A máquinaintermediária 30 pode então transmitir o primeiro bilhetedo reconexão e o segundo bilhete do reconexão à máquina decliente 10. Além disso, durante o processo de reconectar amáquina de cliente 10 a um serviço de acolhimento 4516, amáquina intermediária 30 pode aceitar o primeiro bilhete doreconexão e o segundo bilhete do reconexão da máquina decliente 10 e depois disso transmitir o primeiro bilhete doreconexão à autoridade 6102 do bilhete e, se apropriado, osegundo bilhete do reconexão ao primeiro serviço 4502 doprotocolo. Em uma outra modalidade, o nó intermediário 632sere como um intermediário para os bilhetes do re-connection para os múltiplo-lúpulos entre a máquina decliente 10 e o serviço de acolhimento 4516. A máquinaintermediária 3 0 recebe, por exemplo, o primeiro bilhete dore-connection para a máquina de cliente 10 à primeiraconexão do serviço 4502 do protocolo e o primeiro bilhetedo re-connection para o primeiro serviço 4502 do protocoloao serviço de acolhimento 4516. Em uma modalidade maisadicional, a máquina intermediária 30 recebe um primeirobilhete do re-connection para a conexão entre a máquinaintermediária 30 e o primeiro serviço 4502 do protocolo. Amáquina intermediária 3 0 pode então transmitir o primeirobilhete do re-connection para o cliente à máquina decliente 10 e o primeiro bilhete do re-connection para oprimeiro serviço 4502 do protocolo ao primeiro serviço 4502do protocolo. Além disso, durante o processo de reconectara máquina de cliente 10 a um serviço de acolhimento 4516, amáquina intermediária 30 pode aceitar o primeiro bilhete dore-connection da máquina de cliente 10 para validar obilhete para restabelecer o client' conexão de s à máquinaintermediária 30 ou ao primeiro serviço 4502 do protocolo.Se a primeira sessão de comunicação entre a máquina decliente 10 e o serviço de acolhimento 4516 termina, porexemplo anormalmente, a sessão nova pode ser restabelecidasem exigir o usuário reenter suas credenciais daautenticação. Quando a máquina de cliente 10 e o serviço deacolhimento 4516 restabelecem uma segunda sessão decomunicação, a máquina de cliente 10 retransmite osprimeiros e segundos bilhetes do reconexão e o SID àmáquina intermediária 30. A máquina intermediária 3 0transmite os primeiros e segundos bilhetes do reconexão e oSID à autoridade 6102 do bilhete, que usa o SID paraencontrar e recuperar credenciais cifradas da autenticaçãopara a primeiros conexão e usos o primeiro bilhete doreconexão descifrar as credenciais recuperadas daautenticação. A autoridade 6102 do bilhete autentica entãoo cliente validando as credenciais descifradas daautenticação. Após o re-authentication, o segundo bilhetedo reconexão é enviado ao primeiro serviço 4 5 02 doprotocolo para restabelecer a segunda conexão 4508 com oserviço de acolhimento 4516. Em uma outra modalidade de umsistema de comunicações 6100 da rede segundo as indicaçõesde FIG. 62 e 63, a máquina de cliente 10 usa o navegador derede 63 02 para pedir o acesso a um recurso e uma primeiramáquina remota 3 0 autentica o usuário. Após ter recebido opedido, a primeira máquina remota 3 0 valida o pedido com aautoridade 136 do bilhete. A autoridade 6102 do bilhetegera então um bilhete, que inclua um primeiro bilhete, oubilhete do cliente, e um segundo bilhete, ou primeirobilhete do serviço do protocolo. Os primeiros e segundosbilhetes são " use" one-time; bilhetes que não têm nenhumvalor mais adicional após seu primeiro uso. Em ainda umaoutra modalidade, os primeiros e segundos bilhetes devemser usados dentro de um período de tempo predeterminado. Emuma modalidade, a autoridade 6102 do bilhete armazena osprimeiros e segundos bilhetes na memória (por exemplo, RAM)até que o bilhete esteja usado. Alternativamente, aautoridade 6102 do bilhete armazena os primeiros e segundosbilhetes em um dispositivo de armazenamento (não mostrado)até que o bilhete esteja usado. 0 dispositivo dearmazenamento pode incluir, por exemplo, uma base de dadosou uma memória persistente (por exemplo, em umamovimentação de disco flexível ou do disco rígido). Aautoridade 6102 do bilhete transmite subseqüentemente obilhete do cliente à primeira máquina remota 3 0 e aprimeira máquina remota 30 envia então o bilhete do clienteà máquina de cliente 10.
30 que podem compreender a conexão do múltiplo-lúpuloentre a máquina de cliente 10 e o serviço de acolhimento4516. Além disso, como descrito no maior detalhe abaixo, oprimeiro serviço 4502 do protocolo pode mais serconfigurado para suprimir, durante o processo de reconectara máquina de cliente 10 a um serviço de acolhimento 4516, osegundo bilhete do reconexão, e gera depois disso umbilhete do reconexão da recolocação segunda.Adicionalmente, em uma outra modalidade, o segundo bilhetedo reconexão é configurado para o apagamento automáticoapós um período de tempo predeterminado. Em umasmodalidades mais adicionais, um primeiro serviço 4502 doprotocolo de uns ou vários primeiros serviços 4502 doprotocolo em uma conexão de lúpulo múltiplo é configuradopara suprimir dos segundos bilhetes do re-connection paracada um do " hops", e gere depois disso bilhetes do re-connection da recolocação segundos para um, algum ou todo o" hops." Em uma modalidade, a máquina intermediária 30 serecomo um intermediário para os primeiros e segundos bilhetesdo reconexão. A máquina intermediária 3 0 recebe, porexemplo, o primeiro bilhete do reconexão gerado pelaautoridade 6102 do bilhete e o segundo bilhete do reconexãogerado pelo primeiro serviço 4502 do protocolo. A máquinaintermediária 30 pode então transmitir o primeiro bilhetedo reconexão e o segundo bilhete do reconexão à máquina decliente 10. Além disso, durante o processo de reconectar amáquina de cliente 10 a um serviço de acolhimento 4516, amáquina intermediária 3 0 pode aceitar o primeiro bilhete doreconexão e o segundo bilhete do reconexão da máquina decliente 10 e depois disso transmitir o primeiro bilhete doreconexão à autoridade 6102 do bilhete e, se apropriado, osegundo bilhete do reconexão ao primeiro serviço 4502 doprotocolo. Em uma outra modalidade, o nó intermediário 632sere como um intermediário para os bilhetes do re-connection para os múltiplo-lúpulos entre a máquina decliente 10 e o serviço de acolhimento 4516. A máquinaintermediária 30 recebe, por exemplo, o primeiro bilhete dore-connection para a máquina de cliente 10 ã primeiraconexão do serviço 4502 do protocolo e o primeiro bilhetedo re-connection para o primeiro serviço 4502 do protocoloao serviço de acolhimento 4516. Em uma modalidade maisadicional, a máquina intermediária 3 0 recebe um primeirobilhete do re-connection para a conexão entre a máquinaintermediária 30 e o primeiro serviço 4502 do protocolo. Amáquina intermediária 3 0 pode então transmitir o primeirobilhete do re-connection para o cliente à máquina decliente 10 e o primeiro bilhete do re-connection para oprimeiro serviço 4502 do protocolo ao primeiro serviço 4502do protocolo. Além disso, durante o processo de reconectara máquina de cliente 10 a um serviço de acolhimento 4516, amáquina intermediária 3 0 pode aceitar o primeiro bilhete dore-connection da máquina de cliente 10 para validar obilhete para restabelecer o client' conexão de s ã máquinaintermediária 30 ou ao primeiro serviço 4502 do protocolo.Se a primeira sessão de comunicação entre a máquina decliente 10 e o serviço de acolhimento 4516 termina, porexemplo anormalmente, a sessão nova pode ser restabelecidasem exigir o usuário reenter suas credenciais daautenticação. Quando a máquina de cliente 10 e o serviço deacolhimento 4516 restabelecem uma segunda sessão decomunicação, a máquina de cliente 10 retransmite osprimeiros e segundos bilhetes do reconexão e o SID àmáquina intermediária 30. A máquina intermediária 3 0transmite os primeiros e segundos bilhetes do reconexão e oSID à autoridade 6102 do bilhete, que usa o SID paraencontrar e recuperar credenciais cifradas da autenticaçãopara a primeiros conexão e usos o primeiro bilhete doreconexão descifrar as credenciais recuperadas daautenticação. A autoridade 6102 do bilhete autentica entãoo cliente validando as credenciais descifradas daautenticação. Após o re-authentication, o segundo bilhetedo reconexão é enviado ao primeiro serviço 4 5 02 doprotocolo para restabelecer a segunda conexão 4508 com oserviço de acolhimento 4516. Em uma outra modalidade de umsistema de comunicações 6100 da rede segundo as indicaçõesde FIG. 62 e 63, a máquina de cliente 10 usa o navegador derede 63 02 para pedir o acesso a um recurso e uma primeiramáquina remota 3 0 autentica o usuário. Após ter recebido opedido, a primeira máquina remota 3 0 valida o pedido com aautoridade 136 do bilhete. A autoridade 6102 do bilhetegera então um bilhete, que inclua um primeiro bilhete, oubilhete do cliente, e um segundo bilhete, ou primeirobilhete do serviço do protocolo. Os primeiros e segundosbilhetes são " use" one-time; bilhetes que não têm nenhumvalor mais adicional após seu primeiro uso. Em ainda umaoutra modalidade, os primeiros e segundos bilhetes devemser usados dentro de um período de tempo predeterminado. Emuma modalidade, a autoridade 6102 do bilhete armazena osprimeiros e segundos bilhetes na memória (por exemplo, RAM)até que o bilhete esteja usado. Alternativamente, aautoridade 6102 do bilhete armazena os primeiros e segundosbilhetes em um dispositivo de armazenamento (não mostrado)até que o bilhete esteja usado. 0 dispositivo dearmazenamento pode incluir, por exemplo, uma base de dadosou uma memória persistente (por exemplo, em umamovimentação de disco flexível ou do disco rígido). Aautoridade 6102 do bilhete transmite subseqüentemente obilhete do cliente à primeira máquina remota 3 0 e aprimeira máquina remota 3 0 envia então o bilhete do clienteà máquina de cliente 10. A máquina de cliente 10 iniciaentão uma sessão de comunicação com o primeiro serviço 4502do protocolo transmitindo um pedido de conexão do proxysobre canal de comunicação 4504 do serviço do protocolo docliente a primeira. O pedido de conexão do proxy inclui obilhete do cliente. Em uma modalidade, o pedido de conexãodo proxy igualmente inclui uma senha do manequim que possaser substituída pelo primeiro serviço 4502 do protocolo aoestabelecer uma sessão de comunicação com uma máquinaremota 30. Em uma outra modalidade, a primeira máquinaremota 3 0 transmite a senha do manequim à máquina decliente 10 para a futura geração de um pedido de conexão doproxy que tem um formato aceitável ao primeiro serviço 4502do protocolo. O primeiro serviço 4502 do protocolo entãoextricates o bilhete do cliente do pedido de conexão doproxy e envia o bilhete do cliente à autoridade 6102 dobilhete para a validação. A autoridade 6102 do bilhetevalida então o primeiro bilhete. Em uma modalidade, aautoridade 6102 do bilhete verific o primeiro bilheteprocurarando seu dispositivo de armazenamento (por exemplo,base de dados) pelo primeiro bilhete previsto. Se aautoridade 6102 do bilhete não encontra o primeiro bilheteno dispositivo de armazenamento (como se o primeiro bilhetetem sido usado já), a autoridade 6102 do bilhete termina asessão de comunicação. Se o bilhete recebido combina obilhete do cliente que a autoridade 6102 do bilhete espera,o bilhete do cliente é validado. A autoridade 6102 dobilhete transmite então o segundo ou primeiro bilhete doserviço do protocolo ao primeiro serviço 4502 do protocolo.
Adicionalmente, a autoridade 6102 do bilhete suprime dobilhete do cliente do dispositivo de armazenamento, porqueo bilhete do cliente foi usado agora uma vez. Em uma outramodalidade, a autoridade 6102 do bilhete igualmentetransmite o endereço do Internet Protocol (IP) da máquinaremota 30 ao primeiro serviço 4502 do protocolo. Em aindauma outra modalidade, a autoridade 6102 do bilhetetransmite o Domain Name da máquina remota 30 ao primeiroserviço 4502 do protocolo para a conversão futura no IPaddress. O primeiro serviço 4502 do protocolo recebe osegundo bilhete, ou o primeiro bilhete do serviço doprotocolo, e abre subseqüentemente comunicações através dacanal de comunicação 145 do proxy server transmitindo osegundo bilhete à máquina remota 30. A máquina remota 30recebe o primeiro bilhete do serviço do protocolo etransmite então o bilhete sobre uma canal de comunicação dobilhete-usuário à autoridade 6102 do bilhete para avalidação. Em uma modalidade, se a autoridade 6102 dobilhete determina que o primeiro bilhete do serviço doprotocolo recebido da máquina remota 30 tem sido usadopreviamente ou não tem o valor correto (isto é, o mesmovalor que o valor armazenado no dispositivo dearmazenamento associado), a autoridade 6102 do bilhetetransmite uma mensagem de erro ao primeiro serviço 4502 (oua primeira máquina remota 30) do protocolo para terminar asessão de comunicação estabelecida com a máquina de cliente10. Se a autoridade 6102 do bilhete valida o primeirobilhete do serviço do protocolo, a máquina remota 30 lançaentão a aplicação publicada AIC. A máquina remota 30transmite então a informação da aplicação ao primeiroserviço 4502 do protocolo para a indicação remota daaplicação na máquina de cliente 10 usando o agente 4506 docliente. Em uma modalidade, a máquina de cliente 10 lança oagente 4506 do cliente ao iniciar comunicações com oprimeiro serviço 4502 do protocolo. Em outras modalidades,a máquina de cliente 10 lança o agente 4506 do clientequando a máquina de cliente 10 recebe a informação daaplicação do primeiro serviço 4502 do protocolo. Assim, amáquina de cliente 10 não está ciente do primeiro bilhetedo serviço do protocolo mas somente do bilhete do cliente.Além disso, o agente 4506 do cliente não pode alcançar amáquina remota 30 sem comunicar-se com o primeiro serviço4502 do protocolo e apresentar o bilhete do cliente. Aautoridade 6102 do bilhete podia igualmente transmitir oprimeiro bilhete do serviço do protocolo ao primeiroserviço 4502 do protocolo como a senha de usuário para ousuário da máquina de cliente 10. Isto permite que oprimeiro serviço 4502 do protocolo use o primeiro bilhetedo serviço do protocolo como a senha do início de umasessão para aceder ã máquina remota 30 sem expr o usuáriosenha do início de uma sessão de s sobre a parte untrustedda correia fotorreceptora (isto é, a cliente-primeira canalde comunicação non-secure 4504 do serviço do protocolo).Assim, em uma modalidade, o sistema de comunicações 6100podia incluir uma senha centralizada que traça a base dedados controlada pela autoridade 6102 do bilhete ecoimplantada com a máquina remota 30 para traçar o primeirobilhete do serviço do protocolo com um usuário senha de s.Conseqüentemente, a senha pode acompanhar bilhetes (isto é,o primeiro bilhete do serviço do protocolo e o bilhete docliente) ou a senha pode acompanhar um dos dois bilhetes.Como descrita acima, se a senha acompanha um dos doisbilhetes, tais como o bilhete do cliente, a seguir oprimeiro bilhete do serviço do protocolo é a senha. Em umamodalidade, a senha pode ser uma senha do sistema que nãomude no valor nem possa ser uma senha one-time do uso, talcomo aquelas gerado por símbolos de SecurlD tornou-se porRSA Segurança Inc. de Bedford, Massachusetts.
Adicionalmente, os métodos descritos acima podem serexpandidos a um sistema de comunicações que têm todo onúmero dos primeiros serviços 4502 do protocolo, ou ao 11hops" com qual a máquina de cliente 10 tem que se comunicarantes de estabelecer uma sessão de comunicação com amáquina remota 30. Embora descrito com relação a umprimeiro serviço 4502 do protocolo, um lúpulo podecompreender todo o componente da rede, tal como um proxy,um guarda-fogo, um router, e um relé. Por exemplo, umexemplo do quatro-lúpulo é um sistema de comunicação quetem um primeiro serviço 4502a do protocolo, um primeiroserviço 4502b do protocolo, e um primeiro serviço 4502n doprotocolo, cada serviço do protocolo que inclui um proxy eencontrado dentro da zona demilitarized 6308. Os serviços4502a-n do protocolo podem comunicar-se um com o otro sobreuma canal de comunicação do proxy-proxy. A máquina decliente 10 comunica-se com o primeiro serviço 4502a doprotocolo que se comunica com o segundo primeiro serviço4502b do protocolo. Por sua vez, o segundo primeiro serviço4502b do protocolo comunica-se com o terceiro primeiroserviço 4502n do protocolo e então o terceiro primeiroserviço 4502n do protocolo comunica-se com a máquina remotasobre uma canal de comunicação 4 508 do proxy server paraestabelecer a sessão de comunicação com a máquina remota.Além disso, embora a modalidade descrita acima inclua umbilhete que tem um bilhete do cliente e um primeiro bilhetedo serviço do protocolo, uma outra modalidade inclui obilhete que compreende bilhetes numerosos. Em ainda umaoutra modalidade de um sistema de comunicações 6100 da redesegundo as indicações de FIG. 62, um serviço 5002 do ACRpode ser usada em vez da autoridade 6102 do bilhetereconectando a máquina de cliente 10 a alguns dos serviçosde acolhimento 4516a-4516n. Nesta modalidade, o serviço5002 do ACR pode proporcionar serviços similares comodescritos acima com as considerações à autoridade 6102 dobilhete. Como descrito previamente, o serviço 5002 do ACRgera, valida e controla um SID e uma chave para conectar ereconectar uma sessão de comunicação do cliente. Um SID euma chave podem dar forma a um bilhete como no tipo debilhete gerado, validado e controlado pela autoridade 6102do bilhete como descrito acima. Como tal, em uma outramodalidade, um bilhete pode ser usado permutavelmente paraa combinação de um identificador de sessão e de uma chave.A máquina intermediária 30, segundo as indicações de FIG.62, é configurada para comunicar-se com o serviço 5002 doACR. Em uma modalidade, o serviço 5002 do ACR é configuradopara receber um pedido para um primeiro SID e uma primeirachave da máquina intermediária 30 e para gerar depois dissoo primeiro SID e a primeira chave. 0 serviço 5002 do ACRusa o primeiro SID para identificar a sessão de comunicaçãoque é estabelecida entre a máquina de cliente 10 e umserviço de acolhimento 4516. 0 primeiro SID e a primeirachave permitem que a máquina de cliente 10 reconecteautomaticamente com o serviço de acolhimento 4516 após umrompimento anormal do serviço sem exigir a máquina decliente 10 fornecer outra vez credenciais da autenticação.Após a geração do primeiro SID e da primeira chave, oserviço 5002 do ACR cifra as credenciais da autenticaçãofornecidas pela máquina de cliente 10 usando a primeirachave de modo que um atacante que aceda à máquinaintermediária 3 0 ou o serviço 5002 do ACR não pode alcançaras credenciais da autenticação sem a primeira chave. 0serviço 5002 do ACR então armazena as credenciais cifradasda autenticação com o SID na memória 5018 e transmite oprimeiro SID e a primeira chave ã máquina de cliente 10sobre a rede 150. Em cima do client' o recibo de s do SID eda chave, o serviço 5002 do ACR destrói (isto é,supressões) a chave de sua memória 5018. Em uma outramodalidade, o primeiro serviço 4502 do protocolo éconfigurado para gerar um segundo SID e uma segunda chave.0 primeiro serviço 4502 do protocolo pode igualmente serconfigurado para transmitir o segundo SID e a segunda chaveà máquina de cliente 10, ao manter uma cópia do segundo SIDe da segunda chave. A cópia do segundo SID e da segundachave pode mais tarde ser usada pelo primeiro serviço 4502do protocolo para validar o segundo SID e a segunda chavetransmitidos original à máquina de cliente 10 quando éapresentada mais tarde ao primeiro serviço 4502 doprotocolo durante o processo de reconectar a máquina decliente 10. Em uma modalidade, o primeiro serviço 4502 doprotocolo transmite o segundo SID e a segunda chave àmáquina de cliente 10 através da máquina intermediária 30.Em uma outra modalidade, o primeiro serviço 4502 doprotocolo transmite o segundo SID e a segunda chave àmáquina de cliente 10 diretamente. Além disso, comodescrito no maior detalhe abaixo, o primeiro serviço 4502do protocolo pode mais ser configurado para suprimir,durante o processo de reconectar a máquina de cliente 10 aum serviço de acolhimento 4516, o segundos SID e segundachave, e gera depois disso uma recolocação segunda SID e asegunda chave. Adicionalmente, em uma outra modalidade, osegundos SID e segunda chave são configurados para oapagamento automático após um período de tempopredeterminado.
Em uma modalidade, a máquina intermediária 3 0 serecomo um intermediário para o primeiros e segundos SIDs echaves. A máquina intermediária 3 0 recebe, por exemplo, oprimeiro SID e primeira chave gerada pelo serviço 5002 e osegundo SID do ACR e a segunda chave gerados pelo primeiroserviço 4502 do protocolo. A máquina intermediária 30 podeentão transmitir o primeiro SID e a primeira chave e o SIDe a segunda chave à máquina de cliente 10. Além disso,durante o processo de reconectar a máquina de cliente 10 aum serviço de acolhimento 4516, a máquina intermediária 30pode aceitar o primeiro SID e a primeira chave e o segundoSID e a segunda chave da máquina de cliente 10 e depoisdisso transmitir o primeiro SID e a primeira chave aoserviço 5002 e, se apropriado, o segundo SID e o segundo tchave do ACR ao primeiro serviço 4502 do protocolo. Se aprimeira sessão de comunicação entre a máquina de cliente10 e o serviço de acolhimento 4 516 termina, por exemploanormalmente, a sessão nova pode ser restabelecida semexigir o usuário reenter suas credenciais da autenticação.Quando a máquina de cliente 10 e o serviço de acolhimento4516 restabelecem uma segunda sessão de comunicação, amáquina de cliente 10 transmite o primeiros e segundos SIDse chaves à máquina intermediária 30. A máquinaintermediária 30 transmite o primeiro SID e a primeirachave ao serviço 5002 do ACR, que usa o SID para encontrare recuperar as credenciais cifradas da autenticação para aprimeira conexão e usa a primeira chave para descifrar ascredenciais recuperadas da autenticação. O serviço 5002 doACR autentica então o cliente validando as credenciaisdescifradas da autenticação. Após o re-authentication, osegundo SID e a segunda chave é enviada ao primeiro serviço4502 do protocolo para restabelecer a segunda conexão 4508com o serviço de acolhimento 4516. Referindo FIG. 63, umaoutra modalidade de um sistema 4500 para comunicações darede inclui as redes 150 e 150' , a máquina de cliente 10,o primeiro serviço 4502 do protocolo, os serviços deacolhimento 4516, a máquina intermediária 30, e aautoridade 6102 do bilhete, como descritos acima, edescrevem mais uma primeira máquina remota 3 0 e uma segundamáquina remota 30, ambo são usados, em uma modalidade,inicialmente conectando a máquina de cliente 10 a umserviço de acolhimento 4516. Além disso, na modalidade deFIG. 63, a máquina de cliente 10 inclui mais um navegadorde rede 63 02, como, por exemplo, o programa de INTERNETEXPLORER de Microsoft Corporation de Redmond, WA, paraconectar ao World Wide Web. Em uma modalidade (nãomostrada) , o sistema 4500 inclui dois ou mais máquinas 30do intermediário e/ou dois ou mais primeiros serviços 4502do protocolo. A máquina intermediária 30, através de que asmensagens entre a máquina de cliente 10 e o primeiroserviço 4502 do protocolo devem passar, e/ou o primeiroserviço 4502 do protocolo podem, como explicado abaixo,cada um seja escolhido baseou sobre, por exemplo, umaequação de equilíbrio da carga. Cada um da primeira máquinaremota 30 e da segunda máquina remota 30 pode ser todo odispositivo de computação que são capaz de uma comunicaçãoe que tiver a suficiente capacidade do poder e de memóriado processador executar as operações descritas nisto. Porexemplo, em uma modalidade, a primeira máquina remota 30 éum servidor de rede, fornecendo uns ou vários Web site ouaplicações baseadas correia fotorreceptora. Em uma outramodalidade, a segunda máquina remota 30 proporciona umserviço de XML ou o serviço da correia fotorreceptora. Emuma modalidade, na máquina de cliente 10 e no formulário darede 150 uma rede externa 6304, separada do descanso dosistema 6100 por um primeiro guarda-fogo 6306, descritocomo uma linha tracejada. A máquina intermediária 30 e aprimeira máquina remota 30 podem ser ficadas situadas em um" zone" demilitarized; 6308 (isto é, uma região da redecoloc entre um company' rede confidencial de s e a redepública), separada do descanso do sistema 4500 peloprimeiro guarda-fogo 6306 e por um segundo guarda-fogo6310, igualmente descrito por uma linha tracejada. Emalgumas modalidades, o primeiro guarda-fogo 6306 e osegundo guarda-fogo 6310 proibem comunicaçõesdesautorizadas a ou das máquinas remotas 30. Então, comomostrado, a rede 150' , o primeiro serviço 4502 doprotocolo, os serviços de acolhimento 4516a- 4516n, aautoridade 6102 do bilhete, e a segunda máquina remota 30,dão forma a uma rede interna 6312, separada do descanso dosistema 4 5 00 pelo segundo guarda-fogo 6310. Em algumasmodalidades, a zona demilitarized 6308 inclui um serviço6314 do protocolo do bilhete (mostrado na sombra em FIG.63) , compreendendo um proxy (não mostrado) , e a primeiramáquina remota 30, que pode ser um servidor de rede. 0proxy pode compreender uma passagem da segurança através deque mensagens sobre a cliente-primeira passagem da canal decomunicação 4 5 04 do serviço do protocolo. Em umamodalidade, o guarda-fogo de rede 6306 repudiates toda amensagem entrante da cliente-primeira canal de comunicação4504 do serviço do protocolo que não tem o primeiro serviço4502 do protocolo como seu destino. Do mesmo modo, oguarda-fogo de rede 63 06 repudiates toda a mensagem queparte para a cliente-primeira canal de comunicação 4504 doserviço do protocolo a menos que sua fonte for o primeiroserviço 4502 do protocolo. A passagem da segurança podealternativamente ser um router, guarda-fogo, relê, ou todoo componente da rede que puder fornecer a segurançanecessária. O proxy pode igualmente ser um componente darede separado do primeiro serviço 4502 do protocolo quepode funcionar no mesmo dispositivo de computação doprimeiro serviço 4502 do protocolo ou em um dispositivo decomputação diferente. Em algumas modalidades, o proxy é umintermediário para firmemente passar comunicações entre amáquina de cliente 10 e o primeiro serviço 4502 doprotocolo.
Alternativamente, em uma outra modalidade não mostradaem FIG. 63, o sistema 4500 inclui mais uma terceira máquinaremota 30 posicionada, na zona demilitarized 6308, entre arede 150 e a máquina intermediária 30. A terceira máquinaremota 30 pode ser todo o dispositivo de computação que sãocapaz de uma comunicação conectada e que tiver a suficientecapacidade do poder e de memória do processador executar asoperações descritas nisto. Como descrito abaixo, a terceiramáquina remota 30 é usada, em algumas modalidades, duranteo processo inicialmente de conectar a máquina de cliente 10a um serviço de acolhimento 4516 e/ou durante o processo dereconectar a máquina de cliente 10 a um serviço deacolhimento 4516. Mais especificamente, como descritoabaixo, onde o sistema 4500 inclui dois ou mais máquinas 30do intermediário, a terceira máquina remota 3 0 pode,baseado em uma equação de equilíbrio da carga por exemplo,para escolher completamente a máquina intermediária 3 0 comcomunicações entre o agente 4506 do cliente da máquina decliente 10 e o primeiro serviço 4502 do protocolo devepassar. Além disso, referindo FIG. 63, a máquinaintermediária 30, em uma modalidade alternativa, pode sersubstituída por dois ou mais " dos níveis; a" - " n" dasmáquinas 30 do intermediário. Como ilustrado, cada "nivelado; a" - " n" podem incluir dois ou o maisintermediários faz â máquina 30'. Como descrito abaixo, oagente 4506 do cliente da máquina de cliente 10 pode serdistribuído com toda a combinação das máquinasintermediárias 30 baseadas sobre, por exemplo, equações deequilíbrio da carga. Por exemplo, como ilustrado, o agente4506 do cliente pode ser distribuído através das máquinasintermediárias 30 através da conexão 4504. Para a segurançaadicional, cada um do " hops" através da conexão 4504 podemexigir um bilhete ou o bilhete do re-connection paravalidar e autenticar a conexão do múltiplo-lúpulo entre amáquina de cliente 10 e o serviço de acolhimento 4516.Outras configurações do sistema 4500, como seja prontamenteaparente à pessoa qualificada, são igualmente possíveis.
Referindo outra vez FIG. 63, em uma modalidade, aonavegador de rede 6302 comunica-se sobre a rede 150 com aprimeira máquina remota 30, que própria conecta com asegunda máquina remota 30 e a autoridade 6102 do bilhete.Mais especificamente, a primeira máquina remota 30 éconfigurada com o endereço da segunda máquina remota 30 eda autoridade 6102 do bilhete. Em uma modalidade, comoexplicada mais abaixo, a primeira máquina remota 30 éconfigurada para retransmitir no meio a informação, eimpede desse modo uma comunicação direta no meio, onavegador de rede 6302 da máquina de cliente 10, da segundamáquina remota 30, e da autoridade 6102 do bilhete.Impedindo tal comunicação direta, a primeira máquina remota30 adiciona um nível de segurança adicional ao sistema4500. A primeira máquina remota 30 pode igualmente serconfigurada com o endereço da máquina intermediária 30, ou,alternativamente, com o endereço de dois ou mais máquinasintermediárias 30. Para sua parte, a segunda máquina remotaé configurada para determinar qual dos programas deaplicação que funcionam nos serviços de acolhimento 4 516esteja disponível a um usuário da máquina de cliente 10. ouseja que a segunda máquina remota 30 são configurados paradeterminar qual dos programas de aplicação o usuário éautorizado alcançar. Em uma modalidade, depois que ousuário seleciona seu programa de aplicação desejado, comodescrito mais abaixo, a segunda máquina remota 3 0 éconfigurada mais para determinar qual dos serviços deacolhimento 4 516 será usado para funcionar o usuário sdesejou o pedido para finalidades do equilíbrio de carga. Asegunda máquina remota 30 retorna o endereço desse serviçode acolhimento 4516 à primeira máquina remota 30. A segundamáquina remota 30 igualmente retorna o endereço do primeiroserviço 4502 do protocolo, que pode igualmente serselecionado entre de uma pluralidade dos primeiros serviços4502 do protocolo com o uso de uma equação de equilíbrio dacarga, à primeira máquina remota 30. Por sua vez, aprimeira máquina remota 30 transmite o endereço do primeiroserviço escolhido 4502 do protocolo e do serviço deacolhimento escolhido 4516 à autoridade 6102 do bilhete.Para sua parte, a autoridade 6102 do bilhete gera bilhetesde conexão. Em uma modalidade, a autoridade 6102 do bilhetetransmite um bilhete de conexão inicial à primeira máquinaremota 30 para a transmissão à máquina de cliente 10. Emuma outra modalidade, a autoridade do bilhete transmite umprimeiro bilhete do reconexão à máquina intermediária 30.Em uma modalidade, a autoridade 6102 do bilhete emite unsou vários bilhetes para autenticar em particular a máquinade cliente 10., a autoridade 6102 do bilhete permite aautenticação da máquina de cliente 10 sobre uma canal decomunicação (isto é, uma canal de comunicação do usuário dacliente-correia fotorreceptora) baseada em credenciais daautenticação. A autoridade 6102 do bilhete permite mais amáquina de cliente 10 de ser autenticada a uma outra canalde comunicação (isto é, a cliente-primeira canal decomunicação 4504 do serviço do protocolo) sem ter a máquinade cliente 10 fornece repetidamente credenciais daautenticação na outra canal de comunicação. Era umamodalidade, a autoridade 6102 do bilhete é um componenteautônomo da rede. Em outras modalidades, uma autoridademodular 13 6 do bilhete é um módulo de software que resideem umas ou várias máquinas remotas 30. Por exemplo, podehaver uma autoridade 6102 do bilhete para cada um dasmáquinas remotas 30. Em algumas modalidades, uma primeiramáquina remota 30, tais como um servidor de rede na zonademilitarized 6308, pode comunicar-se com a autoridade 6102do bilhete e/ou a máquina remota 3 0 sobre uma canal decomunicação do agente-usuário. Em uma outra modalidade, aautoridade 6102 do bilhete pode residir em uma máquinaremota intermediária 3 0 separada de outras máquinas remotas30 .
Em uma modalidade, a autoridade 6102 do bilhete geraum primeiro bilhete e um segundo bilhete. Em algumasmodalidades, os bilhetes são ambos os nonces. Em umasmodalidades mais adicionais, os bilhetes são gerados usandoum gerador de número aleatório criptograficamente que sejasemeado apropriadamente com randomness. 0 primeiro bilheteé transmitido à máquina de cliente 10 e usado paraestabelecer um primeiro sessão de comunicação entre amáquina de cliente 10 e o primeiro serviço 4502 doprotocolo. O segundo bilhete é transmitido ao primeiroserviço 4502 do protocolo e usado para estabelecer umasegunda sessão de comunicação entre o primeiro serviço 4502do protocolo e uma máquina remota 30. Em algumasmodalidades, a primeira máquina remota 3 0 é um servidor derede. Em uma destas modalidades, a primeira máquina remota30 entrega Página de redes à máquina de cliente 10. Emoutras destas modalidades, a primeira máquina remota 30 écapaz de estabelecer uma canal de comunicação segura dousuário da cliente-correia fotorreceptora com a máquina decliente 10. Em outras modalidades, a primeira máquinaremota 30 é um servidor de rede que fornece um portalincorporado, igualmente referido como um portal dainformação da empresa, à máquina de cliente 10. Em umadestas modalidades, os portais da empresa são os Web siteda companhia que agregam, personalizam e serem aplicações,dados e índice aos usuários, quando ferramentas de gestãode oferecimento para organizar e usar a informação maiseficientemente. Em outras modalidades, a primeira máquinaremota 30 fornece um portal da web, ou o portal deInternet, à máquina de cliente 10. Um portal da web ésimilar a um portal incorporado mas tipicamente não incluia informação negócio-específica. Em uma modalidade, umusuário da máquina de cliente 10 emprega o navegador derede 6302 para autenticar o usuário à primeira máquinaremota 30. Em uma modalidade, a máquina de cliente 10transmite credenciais do usuário, tais como o início de umasessão e a informação de senha, à primeira máquina remota30. A primeira máquina remota 30 verific que o usuário temo acesso à exploração agrícola 38 da máquina. Em umamodalidade mais adicional, o navegador de rede 6302 usa oSSL para estabelecer uma canal de comunicação segura dousuário da cliente-correia fotorreceptora. O navegador derede 6302 pode alternativamente conectar à primeira máquinaremota 30 sobre uma canal de comunicação do usuário dacliente-correia fotorreceptora usando outros protocolos desegurança, como, mas não limitado a, o protocolo detransferência de hypertext seguro (SHTTP) desenvolvido porTerisa Sistema de altos do Los, o CA7 o HTTP sobre SSL(HTTPS), a tecnologia de comunicação confidencial (PCT)desenvolvida por Microsoft Corporation de Redmond, oWashington, e o padrão da segurança do nível do transporte(TLS) promulgado pelo Internet Engineering Task Force(IETF). Em uma modalidade, a primeira máquina remota 30transmite um portal da web ou um portal da empresa, comodescrito acima, à máquina de cliente 10 em cima davalidação do usuário para permitir a máquina de cliente 10de pedir um recurso, como, por exemplo, uma aplicação ou umárea de trabalho do usuário a ser indicados remotamente namáquina de cliente 10. A canal de comunicação do usuário dacliente-correia fotorreceptora pode ser toda a canal decomunicação segura. Em algumas modalidades, as comunicaçõessobre a canal são cifradas. Em certo destas modalidades, amáquina de cliente 10 e a primeira máquina remota 30 podemcomunicar-se usando a camada de soquete seguro (SSL) doprotocolo de transferência de hypertext (HTTPS).
Alternativamente, a máquina de cliente 10 e a primeiramáquina remota 30 podem usar outras técnicas da cifragem,tais como técnicas simétricas da cifragem, para protegercomunicações. Mais, em uma modalidade a cliente-primeiracanal de comunicação 4502 do serviço do protocolo pode serestabelecida usando, por exemplo, serviços de apresentaçãoprotocolo tal como o protocolo AIC, Xll, o VNC, ou a RDP.
Embora descrito como o estabelecimento de uma primeirasessão de comunicação entre a máquina de cliente 10 e oprimeiro serviço 4502 do protocolo e uma segunda sessão decomunicação entre o primeiro serviço 4502 do protocolo e amáquina remota 30, a sessão de comunicação pode ser vistacomo uma única, sessão de comunicação lógica entre amáquina de cliente 10 e o serviço de acolhimento 4516. Emuma outra modalidade de um sistema de comunicação 4 500 darede segundo as indicações de FIG. 64, o serviço 5002 doACR pode ser usado em vez da autoridade 6102 do bilhetepara reconectar uma máquina de cliente 10 a um serviço deacolhimento 4516. Em vez de usar bilhetes como com aautoridade 6102 do bilhete, o serviço 5002 do ACR gera,valida e controla SIDs e chaves para conectar e reconectarsessões de comunicação do cliente. O serviço 5002 do ACRautentica e re-authenticates o cliente a um serviço deacolhimento 4 516 ou à máquina remota 3 0 usando um SID e umachave, ou um bilhete, associado com a máquina de cliente10. Como mencionado previamente, um bilhete pode ser usadopara referir a combinação de um SID e para fechar ou umbilhete pode compreender um SID e uma chave. 0 sistema 4500de FIG. 64 inclui as redes 150 e 150' , a máquina decliente 10, o primeiro serviço 4502 do protocolo, osserviços de acolhimento 4516, a máquina intermediária 30, eo serviço 5002 do ACR, como descritos acima, e descrevemmais uma primeira máquina remota 3 0 e uma segunda máquinaremota 30, ambo são usados, em uma modalidade, inicialmenteconectando a máquina de cliente 10 a um serviço deacolhimento 4516. Além disso, a máquina de cliente 10inclui mais um navegador de rede 6302 para conectar aoWorld Wide Web. Em uma modalidade (não mostrada), o sistema4 500 inclui dois ou mais máquinas 3 0 do intermediário e/oudois ou mais primeiros serviços 4502 do protocolo ou doisou mais serviços 5002 do ACR. A máquina intermediária 30,através de que as mensagens entre a máquina de cliente 10 eo primeiro serviço 4502 do protocolo devem passar, e/ou oprimeiro serviço 4502 do protocolo podem e/ou o serviço5002 do ACR, como explicados abaixo, cada um seja escolhidobaseou sobre, por exemplo, uma equação de equilíbrio dacarga. Em uma outra modalidade, o sistema 4500 de FIG. 64pode incluir uma rede externa 6304, separada de um 11 zone"demilitarized; 6308 por um primeiro guarda-fogo 6306 queseja separado por sua vez de uma rede interna 6312 por umsegundo guarda-fogo 6310. Embora a invenção seja discutidaacima nos termos de várias topologias de rede nos FIGOS. 63e 64, todas as outras topologias de rede podem ser usados,como por exemplo, uma topologia que inclui combinações deredes internas, de redes externas, de sub-redes, deintranets, de guarda-fogos, de zonas da segurança, deúnicos usuários, de uma rede do usuário ou de exploraçõesagrícolas do usuário. Alternativamente, em uma outramodalidade não mostrada em FIG. 64, o sistema 4500 incluimais uma terceira máquina remota 30 posicionada, na zonademilitarized 6308, entre a rede 150 e a máquinaintermediária 30. A terceira máquina remota 30 é usada, emalgumas modalidades, durante o processo inicialmente deconectar a máquina de cliente 10 a um serviço deacolhimento 4516 e/ou durante o processo de reconectar amáquina de cliente 10 a um serviço de acolhimento 4516. Emuma outra modalidade do sistema 4500 em FIG. 64, a máquinaintermediária 30, pode ser substituída por dois ou mais "dos níveis; a" - " n" do intermediário faz à máquina 30'. Oagente 4506 do cliente da máquina de cliente 10 pode serdistribuído com toda a combinação das máquinasintermediárias 30 baseadas sobre, por exemplo, equações deequilíbrio da carga. Em uma modalidade, o navegador de rede6302 comunica-se sobre a rede 150 com a primeira máquinaremota 30, que própria conecta com a segunda máquina remota530 e o serviço 5002 do ACR. A primeira máquina remota 30 éconfigurada com o endereço da segunda máquina remota 30 edo serviço 5002 do ACR. Em uma outra modalidade parafornecer um nível de segurança adicional no sistema 4500, aprimeira máquina remota 30 é configurada para retransmitirno meio a informação, e impede desse modo uma comunicaçãodireta no meio, o navegador de rede 6302 da máquina decliente 10, da segunda máquina remota 30, e do serviço 5002do ACR. A primeira máquina remota 30 pode igualmente serconfigurada com o endereço de algumas das máquinas 30' dointermediário;. Para sua parte, a segunda máquina remota 30é configurada para determinar qual dos programas deaplicação que funcionam nos serviços de acolhimento 4516esteja disponível a um usuário da máquina de cliente 10 epara fornecer o endereço do serviço de acolhimento 4516selecionado pelo usuário à primeira máquina remota 30. Asegunda máquina remota 30 igualmente fornece o endereço deum do primeiro serviço múltiplo 4502 do protocolo, com ouso de uma equação de equilíbrio da carga, à primeiramáquina remota 30. Por sua vez, a primeira máquina remota30 transmite o endereço do primeiro serviço escolhido 4502do protocolo e do serviço de acolhimento escolhido 4516 aoserviço 5002 do ACR. Para sua parte, o serviço 5002 do ACRgera, valida e controla a conexão SIDs e a chaveproporcionar serviços da autenticação e dos re-authentications para restabelecer um client1 sessão decomunicação de s com um serviço de acolhimento 4516 ou amáquina remota 30, como descritos nisto. Em uma modalidade,o serviço 5002 do ACR transmite um primeiro SID e umaprimeira chave à primeira máquina remota 3 0 para atransmissão à máquina de cliente 10. Em uma outramodalidade, o serviço 5002 do ACR transmite um primeiro SIDe uma primeira chave a uma das máquinas 3 0 dointermediário.
Em outras modalidades, os métodos para comunicações darede permitem a reconexão de uma máquina de cliente 10 a umserviço de acolhimento 4516 usando uma pluralidade deprotocolos secundários encapsulated dentro de um primeiroprotocolo. O método inclui o estabelecimento de umaprimeira conexão entre uma máquina de cliente 10 e umprimeiro serviço 4502 do protocolo usando um primeiroprotocolo e comunicando-se entre a máquina de cliente 10 eo primeiro serviço 4502 do protocolo através de umapluralidade de segundos protocolos encapsulated dentro doprimeiro protocolo. Além disso, pelo menos um dos segundosprotocolos inclui uma pluralidade de canais virtuais. Emuma modalidade deste aspecto da invenção, uma segundaconexão é estabelecida entre o primeiro serviço 4502 doprotocolo e um serviço de acolhimento 4516 o utilização dosprotocolos secundários. Uma comunicação entre o primeiroserviço 4502 do protocolo e o serviço de acolhimento 4516ocorre através de um dos protocolos secundários.
Especificamente, cada um da pluralidade de segundasconexões é estabelecida entre o primeiro serviço 4502 doprotocolo e um serviço de acolhimento diferente 4516 e cadaum da pluralidade de segundas conexões é estabelecidousando uma da pluralidade de protocolos secundários. Emcontudo uma outra modalidade, a primeira conexão entre amáquina de cliente 10 e o primeiro protocolo presteserviços de manutenção a 4516 é estabelecido através deumas ou várias máquinas intermediárias 30. Referindo agoraFIG. 65, uma modalidade de um método 6500 para reconectarum cliente a um serviço de acolhimento após uma falha derede é ilustrada. Em etapa 6502, a máquina de cliente 10conecta inicialmente a uma de uma pluralidade dos serviçosde acolhimento 4516. Geralmente, a máquina de cliente 10 éexigida para transmitir credenciais da autenticação aoserviço de acolhimento 4516 para iniciar a sessão decomunicação. Depois que a máquina de cliente 10 é conectadaao serviço de acolhimento 4516, a máquina de cliente 10 e oserviço de acolhimento 4516 comunicam-se, com o primeiroserviço 4502 do protocolo, e em etapa 6504, através de umapluralidade de protocolos secundários encapsulated dentrodo primeiro protocolo como discutidos acima na referênciaaos FIGOS. 47-4 8 e FIG. 49. Em uma modalidade, o primeiroserviço 4502 do protocolo cifra, antes da transmissão detodos os primeiros pacotes do protocolo, comunicações anível do primeiro protocolo 4704, fixando desse modo ascomunicações. Em uma outra modalidade, o primeiro serviço45 02 do protocolo comprime, antes da transmissão de todosos primeiros pacotes do protocolo, as comunicações a níveldo primeiro protocolo, melhorando desse modo a eficiênciade uma comunicação. Em etapa 6506, o agente 4506 do clientedetermina se a conexão 4504 entre o agente 4506 do clientee o primeiro serviço 4502 do protocolo falhou. Por exemplo,a conexão 4504a entre o agente 4506 do cliente e a máquinaintermediária 30 pode ter falhado, a conexão 4504b entre amáquina intermediária 30 e o primeiro serviço 4502 doprotocolo pode ter falhado, ou a conexão 4504a e a conexão4504b podem ter falhado. Se o cliente que o agente 4506determina que a conexão 4504 não falhou, o método 6500prosigue a etapa 6508. Se, de um lado, o agente 4506 docliente determina que a conexão 4504 falhou, a máquina decliente 10 está, em etapa 6510, reconectada ao serviço deacolhimento 4516. A etapa da reconexão em etapa 6510 apósuma primeira sessão de comunicação termina anormalmente,pode compreender em um sistema 4500 que desdobram umaautoridade 6102 do bilhete e na máquina de cliente 10 quetransmite o SID e os primeiros e segundos bilhetes doreconexão à máquina intermediária 30. A máquinaintermediária 30 usa o primeiro bilhete do reconexão paraautenticar a máquina de cliente 10 e para restabelecer aconexão 4504 entre a máquina de cliente 10 e o nóintermediário 30'. A máquina intermediária 30 transmiteentão o segundo bilhete do reconexão ao primeiro serviço4502 do protocolo, que usa o segundo bilhete do reconexãopara autenticar restabelece a conexão 4508 ao serviço deacolhimento 4516. Os bilhetes do reconexão permitem assimque a máquina de cliente 10 estabeleça automaticamente umasegunda sessão de comunicação ao serviço de acolhimento4516 sem retransmitir as credenciais da autenticação umasegunda vez. Em uma outra modalidade, a etapa da reconexão,em etapa 6510, pode igualmente compreender um sistema 4500que desdobra um serviço 5002 do ACR. Em tal modalidade, amáquina de cliente 10 transmite um primeiro SID e umaprimeira chave à máquina intermediária 30 para autenticar amáquina de cliente 10 e para restabelecer a conexão damáquina de cliente 10 ao serviço de acolhimento 4516. Édeterminada, em etapa 6508, se a máquina de cliente 10deseja terminar limpa sua conexão 4 5 04 com o primeiroserviço 4 5 02 do protocolo e, conseqüentemente, suasconexões 4508a-4508n com os serviços de acolhimento 4516a-4516n. Se não, uma comunicação entre a máquina de cliente10 e o primeiro serviço 4502 do protocolo, através dapluralidade de protocolos secundários encapsulated dentrodo primeiro protocolo, continua em etapa 6504. Em casoafirmativo, então, em etapa 6512, todas as conexões 4504a,4504b, e 4508a-4508n são quebrados e todos os bilhetes doreconexão são suprimidos. Em uma outra modalidade usando umserviço 5002 do ACR, em etapa 6512, todas as conexões4504a, 4504b, e 4508a-4508n são quebrados e todos os SIDS echaves são suprimidos. Em uma modalidade, a máquinaintermediária 3 0 usa um punho que recebe da autoridade 6102do bilhete para suprimir de uma cópia de um primeirobilhete do reconexão mantido na autoridade 6102 do bilhete.
Em uma outra modalidade que desdobra uma autoridade 6102 dobilhete, o primeiro serviço 4502 do protocolo suprime deuma cópia de um segundo bilhete do reconexão mantido noprimeiro serviço 4502 do protocolo. Em contudo uma outramodalidade que desdobra o ACR presta serviços de manutençãoa 5002, as primeiras supressões do serviço 4502 doprotocolo uma cópia de um segundo SID e a segunda chavemanteve-se no primeiro serviço 4 5 02 do protocolo. Em umamodalidade mais adicional usando uma autoridade 6102 dobilhete, se por qualquer motivo uma conexão secundária 4508do protocolo falha, uma cópia do segundo bilhete doreconexão associou em conseqüência e manteve-se no primeiroserviço 4502 do protocolo é suprimida pelo primeiro serviço4502 do protocolo. Em contudo uma outra modalidade, umprimeiro bilhete do reconexão e/ou um segundo bilhete doreconexão são suprimidos automaticamente após um período detempo predeterminado que segue uma falha na conexão 4504,como em etapa 6506, e/ou depois de uma terminação limpa daconexão 4504, como em etapa 6508. Em um outro aspecto, estainvenção relaciona-se aos métodos para reconectar a máquinade cliente 10 ao serviço de acolhimento 4516 usando oserviço 5002 do ACR. Referindo agora FIG. 66, umamodalidade de etapa 6510 no FIGO 65 é ilustrada. A máquinade cliente 10 transmite o primeiro SID e a primeira chaveao serviço 5002 do ACR para reconectar ao serviço deacolhimento (etapa 6602). O serviço 5002 do ACR usa o SID(etapa 6604) para encontrar e recuperar as credenciais e osusos cifrados da autenticação a chave (etapa 6606)descifrar as credenciais recuperadas da autenticação. Emuma modalidade (não mostrada), o serviço 5002 do ACR usa ascredenciais descifradas da autenticação para re-authenticate a máquina de cliente 10 à sessão mantida entreo primeiro serviço 4502 do protocolo e o serviço deacolhimento 4516. Após re-authenticating, a conexãorestabelecida da máquina de cliente 10 ao primeiro serviço4516 do protocolo re-linked à sessão mantida entre oprimeiro serviço 4502 do protocolo e o serviço deacolhimento 4516. Em uma outra modalidade, durante asegunda sessão de comunicação, o serviço 5002 do ACR gera(etapa 6608) uma segunda chave para as credenciais daautenticação e cifra então (etapa 6610) as credenciais daautenticação usando a segunda chave. 0 serviço 5002 do ACRcria um segundo SID (etapa 6612). Então as credenciaisdescifradas da autenticação re-authenticated com o serviçode acolhimento 4516 e o segundo SID é associado com asessão de comunicação mantida com o serviço de acolhimento4516 (etapa 6612a). O serviço 5002 do ACR transmite então osegundo SID e a segunda chave à máquina de cliente 10(etapa 6614). Em uma modalidade, o serviço 5002 do ACR podetransmitir o segundo SID e a segunda chave através de umamáquina intermediária 30.
A máquina de cliente 10 armazena o segundo SID e asegunda chave (etapa 6616). O serviço 5002 do ACR suprimeentão da segunda chave (etapa 6618). Referência FIGOS. 67-68, uma modalidade de um método 6700 para inicialmenteconectar a máquina de cliente 10 ao serviço de acolhimento4516 que usa um serviço 5 0 02 do ACR é ilustrada. Em etapa6702, a máquina de cliente 10, usando o navegador 6302,emite um pedido, como, por exemplo, um pedido de HTTP, àprimeira máquina remota 30. A primeira máquina remota 30retorna um Página de rede, como, por exemplo, um formuláriodo HTML que pede a informação de autenticação (por exemplo,um username e uma senha). Um usuário da máquina de cliente10 incorpora suas credenciais da autenticação e transmite oformulário terminado à primeira máquina remota 30. Aprimeira máquina remota 30, em etapa 6704, informa então ousuário da máquina de cliente 10 das aplicações disponíveispara a execução. Em uma modalidade, a primeira máquinaremota 30 extrai o usuário as credenciais de s do início deuma sessão paginam-nos e transmitem-n à segunda máquinaremota 30, junto com um pedido para a segunda máquinaremota 3 0 enumerar as aplicações disponíveis ao usuário.Baseado no usuário as credenciais de s, a segunda máquinaremota 3 0 retornam uma lista de aplicações específicasdisponíveis à primeira máquina remota 30, que envia então alista, sob a forma de um Página de rede por exemplo, aousuário da máquina de cliente 10. Em etapa 6706, o usuárioseleciona a aplicação desejada e um pedido para essaaplicação é emitido à primeira máquina remota 30. Porexemplo, em uma modalidade, o usuário estala sobre umaaplicação desejada alistada no Página de rede apresentado aele pela primeira máquina remota 3 0 e um pedido de HTTPpara aquele a aplicação é enviada à primeira máquina remota30. O pedido é processado pelo primeiro nó de computação14 0 e enviado à segunda máquina remota 30. Em etapa 67 08, asegunda máquina remota 3 0 determina o serviço deacolhimento 4516 em que a aplicação desejada seráexecutada. A segunda máquina remota 3 0 pode fazer quedeterminação baseada, por exemplo, em uma equação deequilíbrio da carga. Em uma modalidade, a segunda máquinaremota 30 igualmente determina um primeiro serviço 4502 doprotocolo entre de uma pluralidade de primeiros serviços4502 do protocolo que serão usados para se comunicar com oserviço de acolhimento 4516 através de uma conexão 4508.Além disso, a segunda máquina remota 3 0 pode fazer quedeterminação baseada, por exemplo, em uma equação deequilíbrio da carga. A segunda máquina remota 3 0 retorna oendereço do serviço de acolhimento escolhido 4516 e doprimeiro serviço escolhido 4502 do protocolo à primeiramáquina remota 30. A máquina de cliente 10, em etapa 6710,é fornecida então com uma identificação da sessão daconexão e uma chave inicial, um primeiro SID e uma primeirachave, e um endereço para a máquina intermediária 3 0 (que éseu endereço real ou seu endereço virtual, como descritoabaixo). Em uma modalidade, a primeira máquina remota 30fornece o endereço para o serviço de acolhimento escolhido4516 e o primeiro serviço escolhido 4502 do protocolo aoserviço 5002 do ACR, junto com um pedido para aidentificação da sessão da conexão e a chave iniciais. Oserviço 5002 do ACR gera a identificação da sessão e achave iniciais, e transmite a identificação da sessão e achave à primeira máquina remota 30, ao manter uma cópiapara se. Em algumas modalidades, a autoridade 6102 dobilhete gera um bilhete de conexão inicial. Em uma destasmodalidades, a autoridade 6102 do bilhete mantém o endereçodo serviço de acolhimento escolhido 4516 e do primeiroserviço escolhido 4502 do protocolo, gera o bilhete deconexão inicial, e transmite o bilhete de conexão inicial àprimeira máquina remota 30, ao manter uma cópia para se. Emuma modalidade, a autoridade 6102 do bilhete, em respostaao pedido para o bilhete de conexão inicial pela primeiramáquina remota 30, gera bilhetes de conexão para cada um do" hops" entre a máquina de cliente 10 e o serviço deacolhimento 4516. Em uma outra modalidade, a primeiramáquina remota 30 pede bilhetes de conexão iniciais paracada um do " hops" em um único pedido ou em pedidosmúltiplos. A primeira máquina remota 30, configurada, emuma modalidade, com o endereço real da máquinaintermediária 30, transmite então o endereço real damáquina intermediária 30 e a identificação da sessão daconexão e a chave inicial ao navegador 6302 da máquina decliente 10. Em algumas modalidades, um bilhete de conexãoinicial é transmitido. A primeira máquina remota 30 pode,por exemplo, primeiramente criar uma lima que contem oendereço real da máquina intermediária 30 e o bilhete deconexão inicial e então transmitindo a lima ao navegador6302 da máquina de cliente 10. opcionalmente, em uma outramodalidade, a primeira máquina remota 30 é configurado como endereço real de dois ou mais máquinas 30 dointermediário. Em tal modalidade, a primeira máquina remota30 determina primeiramente a máquina intermediária 30através de que as mensagens entre a máquina de cliente 10 eo primeiro serviço 4502 do protocolo terão que passar. Aprimeira máquina remota 30 transmite então o endereço realdaquele escolhido máquina intermediária 30 e o bilhete deconexão inicial ao navegador 6302 da máquina de cliente 10usando, por exemplo, a lima descrita acima. Em umamodalidade, a primeira máquina remota 30 escolhe a máquinaintermediária 30 usando uma equação de equilíbrio da carga.O agente 4506 do cliente da máquina de cliente 10 então élança e usa o endereço da máquina intermediária 30, paraestabelecer, em etapa 6712, em uma primeira conexão 4504ado protocolo entre o agente 4506 do cliente da máquina decliente 10 e da máquina intermediária 30. Alternativamente,em uma outra modalidade, a primeira máquina remota 30 éconfigurada com um endereço real da terceira máquina remota30, que sere como um endereço virtual de uma máquinaintermediária 30. Em tal modalidade, a primeira máquinaremota 30 transmite, em etapa 6710, o endereço real daterceira máquina remota 30 e a identificação da sessão daconexão e a chave iniciais ao navegador 6302 da máquina decliente 10 usando, por exemplo, a lima descrita acima. 0agente 4506 do cliente da máquina de cliente 10 então élança e usa o endereço real da terceira máquina remota 3 0para estabelecer, em etapa 6712, em uma primeira conexão doprotocolo entre o agente 4506 do cliente da máquina decliente 10 e da terceira máquina remota 30. A terceiramáquina remota 3 0 determina então a máquina intermediária30 através de que as mensagens entre a máquina de cliente10 e o primeiro serviço 4502 do protocolo terão que passar.
Em uma modalidade, a terceira máquina remota 30 escolhe amáquina intermediária 3 0 usando uma equação de equilíbrioda carga. Escolhendo a máquina intermediária 30, a terceiramáquina remota 3 0 estabelece uma primeira conexão doprotocolo à máquina intermediária 30. Uma primeira conexão4504a do protocolo existe conseqüentemente, com o terçomáquina remota 30, entre o agente 4506 do cliente damáquina de cliente 10 e da máquina intermediária 30. Oendereço real da terceira máquina remota 3 0 é traçadoconseqüentemente ao endereço real da máquina intermediária30. Ao agente 4506 do cliente da máquina de cliente 10, oendereço real da terceira máquina remota 3 0 sereconseqüentemente como um endereço virtual da máquinaintermediária 30. Em uma modalidade, onde mais de um nívelde intermediário faz à máquina 30' existem, como descritoacima, a primeira máquina remota 3 0 ou a terceira máquinaremota 30, respectivamente, simplesmente escolha a máquinaintermediária 30 a que o agente 4506 do cliente conectaráno " nivelado; a." Em tal modalidade, em cada um do " dosníveis; a" - " n-1" , a máquina intermediária 30 através deque o agente 4506 do cliente é distribuído a esse níveldepois disso determina, baseado em uma equação deequilíbrio da carga por exemplo, a máquina intermediária 30a que conectará a nível seguinte. Alternativamente, emoutras modalidades, a primeira máquina remota 3 0 ou aterceira máquina remota 30, respectivamente, determinam,para mais de um ou todo o " dos níveis; a" - " η" , ointermediário faz à máquina 30 com que o agente 4506 docliente será distribuído. Estabelecendo a primeira conexão4504a do protocolo entre o agente 4506 do cliente da máquina de cliente 10 e da máquina intermediária 30, porexemplo o nó intermediário 30' no " nivelado; n" (referidoem seguida no método 6700 como a máquina intermediária 30),o agente 4506 do cliente transmite então o bilhete deconexão inicial à máquina intermediária 30.
Determina-se então, em etapa 6714, se a conexãoinicial SID e a chave são válidas. Em uma modalidade, amáquina intermediária 30 transmite a conexão inicial SID ea chave ao serviço 5002 do ACR para a validação. Em umamodalidade, o serviço 5002 do ACR valida o SID e a chavecomparando a à cópia do SID e das credenciais que cifradasda autenticação se manteve em etapa 6710. Se o serviço 5002do ACR determina o SID e a chave ser válido, o serviço 5002do ACR transmite, em etapa 6802. (FIG. 68), no endereço doprimeiro serviço 4502 do protocolo e no endereço do serviçode acolhimento escolhido 4516 à máquina intermediária 30. Oprimeiro serviço 4502 do protocolo pode igualmente suprimirdo SID e fechá-los e de toda a cópia disso. Se, de um lado,o serviço 5002 do ACR determina o SID e a chave a serinválida, a máquina de cliente 10 está, em etapa 6716, naconexão recusada ao primeiro serviço 4502 do protocolo e,conseqüentemente, na conexão ao serviço de acolhimento4516. Em algumas modalidades, a autoridade 6102 do bilheterecebe um bilhete de conexão inicial da máquinaintermediária 30 para a validação e valida o bilhete comodescrito acima. Depois de etapa 6802, a máquinaintermediária 30 usa o endereço do primeiro serviçoescolhido 4502 do protocolo para estabelecer, em etapa6804, em uma primeira conexão 4504b do protocolo entre amáquina intermediária 30 e no primeiro serviço 4502 doprotocolo. Em uma modalidade, a máquina intermediária 30usa um bilhete de conexão inicial para estabelecer aprimeira conexão 4504b do protocolo entre a máquinaintermediária 30 e o primeiro serviço 4502 do protocolo. Emum caso, a máquina intermediária 3 0 usa o mesmo bilhete deconexão inicial recebido da máquina de cliente 10 paravalidar a conexão 4 5 04b. Em um outro caso, a máquinaintermediária 3 0 usa um bilhete de conexão inicial geradopara e válido para a primeira conexão 4504b do protocolo.
Uma primeira conexão 4504 do protocolo conseqüentemente20 existe agora, através da máquina intermediária 30, entre oagente 4506 do cliente da máquina de cliente 10 e doprimeiro serviço 4502 do protocolo. A máquina intermediáriapode igualmente passar o endereço do serviço deacolhimento escolhido 4516 ao primeiro serviço 4502 do25 protocolo. Em uma modalidade, em etapa 68 06, o primeiroserviço 4502 do protocolo usa o endereço do serviço deacolhimento escolhido 4516 para estabelecer uma conexãosecundária 4508 do protocolo entre o primeiro serviço 4502do protocolo e o serviço de acolhimento escolhido 4516. Porexemplo, o serviço de acolhimento escolhido 4516 é de fatoo serviço de acolhimento 4516a e uma conexão secundária4508a do protocolo é estabelecida entre o primeiro serviço4502 do protocolo e o serviço de acolhimento 4516a. Em umamodalidade, depois de etapa 6806, o usuário escolhe, emetapa 6808, uma segunda aplicação a ser executada e asegunda máquina remota 3 0 determina, em etapa 6810, oserviço de acolhimento 4516 em que a segunda aplicação deveser executada. Por exemplo, calculando uma equação deequilíbrio da carga, a segunda máquina remota 30 podeescolher o serviço de acolhimento 4516b executar o segundoprograma de aplicação. A segunda máquina remota 3 0transmite então o endereço do serviço de acolhimentoescolhido 4516b ao primeiro serviço 4502 do protocolo. Emuma modalidade, a segunda máquina remota 3 0 está em umacomunicação direta com o primeiro serviço 4502 do protocoloe transmite diretamente o endereço a isso. Em uma outramodalidade, o endereço do serviço de acolhimento escolhido4516b é transmitido indiretamente ao primeiro serviço 4502do protocolo. Por exemplo, o endereço pode ser transmitidoao primeiro serviço 4502 do protocolo com alguma combinaçãoda primeira máquina remota 30, ao serviço 5002 do ACR, àmáquina intermediária 30, e ao primeiro serviço 4502 doprotocolo. Recebendo o endereço do serviço de acolhimentoescolhido 4516b, o primeiro serviço 4502 do protocoloestabelece, em etapa 6812, em uma conexão secundária 4508bdo protocolo entre o primeiro serviço 4502 do protocolo eno serviço de acolhimento escolhido 4516b. Os protocolossecundários que podem ser usados para se comunicar sobre asconexões 4508a e 4508b incluem, mas não são limitados a,HTTP, ftp, Oscar, telnet, AIC, e RDP. Além disso, em umamodalidade, pelo menos um dos protocolos secundários, comodescrito acima, inclui uma pluralidade de canais virtuais,cada qual podem incluir uma pluralidade de pacotes doprotocolo permitindo a funcionalidade na máquina de cliente10. por exemplo, em uma modalidade, um serviço deacolhimento que 4 516a é um servidor de rede, se comunicandocom o primeiro serviço 4 5 02 do protocolo sobre a conexão4508a usando o protocolo do HTTP, e um outro serviço deacolhimento 4516b é um servidor de aplicações, secomunicando com o primeiro serviço 4502 do protocolo sobrea conexão 4508b usando o protocolo do AIC. O serviço deacolhimento 4516b gera pacotes do protocolo para transmitircomandos gráficos da tela à máquina de cliente 10, parafazer com a máquina de cliente 10 indique uma interface deutilizador gráfica, e pacotes do protocolo para comandostransmissores da impressora à máquina de cliente 10, parafazer com que um original seja imprimido na máquina decliente 10. Etapas 6808, 6810, e 6812 podem ser repetidastodo o número de épocas. Como tal, todo o número deprogramas de aplicação pode ser executado em qualquernúmero dos serviços de acolhimento 4516a-4516n, as saídasde que pode ser comunicado ao primeiro serviço 4 5 02 doprotocolo sobre as conexões 4508a-4508n usando algum númerode protocolos secundários. Girando agora para etapa 6814, oprimeiro serviço 4502 do protocolo pode, como descritoacima, para encapsulate a pluralidade de protocolossecundários dentro do primeiro protocolo. Como tal, amáquina de cliente 10 é conectada, e comunica-sesimultaneamente com, a uma pluralidade dos serviços deacolhimento 4516. Em uma outra modalidade, antes deexecutar etapas 6808, 6810, e 6812 para executar umprograma da nova aplicação em um serviço de acolhimento4516, como, por exemplo, o serviço de acolhimento 4516b, umusuário da execução dos fins da máquina de cliente 10 de umoutro programa de aplicação, como, por exemplo, um programade aplicação executando no serviço de acolhimento 4 516a. Emtal caso, o primeiro serviço 4502 do protocolo interrompe aconexão 4508a entre o primeiro serviço 4502 do protocolo eo serviço de acolhimento 4516a. O primeiro serviço 4502 doprotocolo estabelece então, executando etapas 6808, 6810, e6812, a conexão 4508b entre o primeiro serviço 4502 doprotocolo e o serviço de acolhimento 4516b, sem interrompera conexão 4 504 entre a máquina de cliente 10 e o primeiroserviço 4 5 02 do protocolo. Em uma modalidade, um primeirosSID e chave são gerados em etapa 6816. Em algumasmodalidades, um primeiro bilhete do re-connection é gerado.Por exemplo, a máquina intermediária 3 0 pede um primeirosSID e chave do serviço 5002 do ACR. Em cima de receber opedido, o serviço 5 0 02 do ACR gera o primeiros SID e chave,e pode igualmente gerar um punho, que seja, por exemplo, umnúmero aleatório. 0 serviço 5002 do ACR pode entãotransmitir, em etapa 6902, o primeiro SID e feche e o punhoà máquina intermediária 30, ao manter uma cópia do primeiraSID e chave e uma cópia do punho. O serviço 5002 do ACRcontinua a manter o endereço do primeiro serviço 4502 doprotocolo que lhe foi transmitido pela primeira máquinaremota 30 em etapa 6710. A máquina intermediária 30transmite então, em etapa 6904, o primeiro bilhete doreconexão ã máquina de cliente 10.
Em algumas modalidades, a máquina intermediária 3 0pede um primeiro bilhete do reconexão da autoridade 6102 dobilhete ou pede um primeiro bilhete do re-connection paracada um do " hops" entre a máquina de cliente 10 e oserviço de acolhimento 4516. Em cima de receber o pedido, aautoridade 6102 do bilhete gera uns ou vários primeirosbilhetes do re-connection. Um bilhete do re-connection é,por exemplo, um grande número aleatório, e pode igualmentegerar um punho, que seja, por exemplo, um número aleatóriomenor. A autoridade 6102 do bilhete pode então transmitir,em etapa 6902, os primeiros bilhetes do re-connection e ospunhos ao nó intermediário 632, ao manter uma cópia dosprimeiros bilhetes do re-connection e uma cópia dos punhos.
A autoridade 6102 do bilhete continua a manter o endereçodo primeiro serviço 4502 do protocolo que lhe foitransmitido pela primeira máquina remota 30 em etapa 6710.
O nó intermediário 632 transmite então, em etapa 6904, oclient' bilhete do re-connection de s primeiro à máquina decliente 10. Em etapa 6906, um segundos SID e chave sãogerados então. Em uma modalidade, o primeiro serviço 4502do protocolo gera o segundos SID e chave. O primeiroserviço 4502 do protocolo, em etapa 6908, transmite então osegundos SID e chave, através da máquina intermediária 30,à máquina de cliente 10. Em fazer assim, o primeiro serviço4502 do protocolo mantém uma cópia da chave e de um númerode sessão associado em conseqüência para identificar asessão a ser reconectada depois de um rompimento da conexão4504. Em uma modalidade, por exemplo, o primeiro serviço4502 do protocolo mantém, para um número de sessãoparticular, uma tabela que alista as conexões secundárias4508a-4508n do protocolo associadas com esse número desessão. Em etapa 6906, uns ou vários segundos bilhetes dore-connection são gerados então. Em uma modalidade, oprimeiro serviço 4502 do protocolo gera o segundo bilhetedo re-connection para a máquina de cliente 10, que podeser, por exemplo, um grande número aleatório. Em uma outramodalidade, o primeiro serviço 4502 do protocolo gerasegundos bilhetes do re-connection para uns ou vários do "hops" entre a máquina de cliente 10 e o serviço deacolhimento 4516. O primeiro serviço 4502 do protocolo, emetapa 6908, transmite então o client' bilhete do re-connection de s segundo, através da máquina intermediária30, à máquina de cliente 10. Em fazer assim, o primeiroserviço 4502 do protocolo mantém uma cópia do segundobilhete do re-connection e um número de sessão associadosem conseqüência identificando a sessão a ser reconectadosdepois de um rompimento da conexão 4504. Em uma modalidade,por exemplo, o primeiro serviço 4502 do protocolo mantém,para um número de sessão particular, uma tabela que alistaas conexões secundárias 4508a-4508n do protocolo associadascom esse número de sessão. De maneira similar, o primeiroserviço 4502 do protocolo pode manter os primeiros e/ousegundos bilhetes do re-connection para cada um do " hops"sendo validado para reconectar a máquina de cliente 10 aoserviço de acolhimento 4516. Conformemente, depois dorestabelecimento da primeira conexão 4504 do protocolo e davalidação do segundos SID e chave no primeiro serviço 4502do protocolo, ou o segundo bilhete do re-connection, comodescrito abaixo, o primeiro serviço 4502 do protocolo podeidentificar as conexões secundárias 4508 do protocolo aencapsulated dentro da primeira conexão restabelecida 4504do protocolo para uma comunicação à máquina de cliente 10.Em uma modalidade não mostrada nos FIGOS. 67-69, umaautoridade 6102 do bilhete pode ser usada em vez do serviço5002 do ACR para prever reconectar uma máquina de cliente10 a um serviço de acolhimento 4516. No método 6700, aautoridade 6102 do bilhete geraria e transmitiria bilhetesdo reconexão em vez de SIDs e de chaves como com o serviço5002 do ACR. Por exemplo, em etapa 6710, uma autoridade6102 do bilhete forneceria a máquina de cliente 10 umbilhete de conexão inicial e um endereço para a máquinaintermediária 30. Também, em etapa 6714, a autoridade 6102do bilhete determinaria se o bilhete de conexão inicial éválido e em etapa 6816, geraria um primeiro bilhete doreconexão. Adicionalmente, em etapas 6902, 6904, 6906 e6908 que a autoridade do bilhete geraria e transmitiria osprimeiros e segundos bilhetes do reconexão de acordo com ométodo 6700. Como tal, a autoridade 6102 do bilhetefacilitou a reconexão da máquina de cliente 10 ao serviçode acolhimento 4516. Referindo agora FIG. 70, umamodalidade de um método 7000 para fornecer uma máquina decliente 10 uma conexão persistente e de confiança a uns ouvários serviços de acolhimento 4516 e para reconectar amáquina de cliente 10 aos serviços de acolhimento 4516 (porexemplo em etapa 6510 de FIG. 65) é ilustrada. Emparticular, em etapa 7002, a conexão secundária 4508 doprotocolo entre o primeiro serviço 4502 do protocolo e cadaum de uns ou vários serviços de acolhimento 4516 sãomantidas. Além disso, em etapa 7004, uma fila dos pacotesde dados transmitidos recentemente entre o agente 4506 docliente da máquina de cliente 10 e o primeiro serviço 4502do protocolo, através da conexão 4 504 que foi determinadater quebrado, por exemplo, em etapa 6510 de FIG. 65, sãomantidos. Em uma modalidade, os pacotes de dados sãoenfileirados e mantiveram antes e em cima da falha daconexão 4504. Os pacotes de dados enfileirados podem sermantidos, por exemplo, em um amortecedor pelo agente 4506do cliente. Alternativamente, o primeiro serviço 4502 doprotocolo pode manter em um amortecedor os pacotes de dadosenfileirados. Em contudo uma outra modalidade, o agente4506 do cliente e o primeiro serviço 4502 do protocolomantém os pacotes de dados enfileirados em um amortecedor.Em etapa 7006, uma primeira conexão nova 4504 do protocoloé estabelecida entre o agente 4506 do cliente da máquina decliente 10 e do primeiro serviço 4502 do protocolo e Iig àconexão secundária mantida 4508 do protocolo entre oprimeiro serviço 4502 e cada um do protocolo de uns ouvários serviços de acolhimento 4516, desse modoreconectando a máquina de cliente 10 aos serviços deacolhimento 4516. Depois que a máquina de cliente 10 éreconectada, os pacotes de dados enfileirados mantidos emetapa 7004 podem ser transmitidos, em etapa 7008, atravésda primeira conexão recentemente estabelecida 4504 doprotocolo. Como tal, a sessão de comunicação entre osserviços de acolhimento 4516 e a máquina de cliente 10, como primeiro serviço 4502 do protocolo, são persistentes eprosiguem sem nenhuma perda de dados. Em uma modalidade, oserviço 5002 do ACR autentica a máquina de cliente 10 aoserviço de acolhimento 4516 antes de reconectar a máquinade cliente 10 a um serviço de acolhimento 4516. Em umaoutra modalidade, o primeiro serviço 4502 do protocolovalida um bilhete do reconexão com a autoridade 6102 dobilhete antes de reconectar a máquina de cliente 10 a umserviço de acolhimento 4516. Em uma modalidade com "múltiplo; hops" atravessando serviços 4502 do protocolo domúltiplo os primeiros, uma parcela ou todos os pacotes dedados podem ser mantidos em uns ou vários dos primeirosserviços 4502 do protocolo de modo que cada " hop" pode serrestabelecido. Depois que a máquina de cliente 10 éreconectada e re-linked ao primeiro dos uns ou vários oprimeiro protocolo presta serviços de manutenção a 4502como descritos acima, cada um das conexões restantes podeser restabelecida e re-linked ao " previamente re-linked;hop" até o " final; hop" ao serviço de acolhimento 4516 sãorestabelecidos. Qualquer um após o " final; hop" érestabelecido e re-linked, ou como cada " hop" érestabelecido e re-linked, os pacotes de dados enfileiradosmantidos podem ser transmitidos. FIGOS. 71-72, ilustre umamodalidade de um método 7100 para reconectar a máquina decliente 10 a uns ou vários serviços de acolhimento 4516usando um serviço 5002 do ACR como na modalidade do sistema4500 descrito em FIG. 64. Em etapa 7102, todas as conexõesrestantes entre a máquina de cliente 10 e o primeiroserviço 4502 do protocolo são quebrados. Por exemplo, ondea conexão 4504a falhou, mas a conexão 4504b não tem, aconexão 4 5 04b é quebrado. Alternativamente, onde a conexão4504b falhou, mas a conexão 4504a não tem, a conexão 4504aé quebrado. Em uma mcpdalidade, usando o endereço real damáquina intermediária 3 0 fornecida à máquina de cliente 10,o agente 4506 do cliente da máquina de cliente 10restabelece então, em etapa 7104, na primeira conexão 4504ado protocolo entre o agente 4506 do cliente e na máquinaintermediária 30. Alternativamente, em outros a modalidade,usando o endereço real da terceira máquina remota 30fornecida à máquina de cliente 10, o agente 4506 do clienteda máquina de cliente 10 restabelece então, em etapa 7104,em uma primeira conexão do protocolo entre o agente 45 06 docliente e na terceira máquina remota 30. A terceira máquinaremota 3 0 determina então a máquina intermediária 30através de que as mensagens entre a máquina de cliente 10 eo primeiro serviço 4502 do protocolo terão que passar. Emuma modalidade, a terceira máquina remota 30 escolhe amáquina intermediária 30 usando uma equação de equilíbrioda carga. A máquina intermediária 30 escolhida pelaterceira máquina remota 30 em reconectar a máquina decliente 10 a uns ou vários serviços de acolhimento 4516pode ser diferente daquela escolhida conectar inicialmentea máquina de cliente 10 a uns ou vários serviços deacolhimento 4516. Em uma modalidade, um bilhete de conexãoinicial para a máquina intermediária escolhida 30 é geradoao reconectar a máquina de cliente 10 a um serviço deacolhimento 4516.
Escolhendo a máquina intermediária 30, a terceiramáquina remota 30 restabelece uma primeira conexão doprotocolo à máquina intermediária 30. Uma primeira conexão4504a do protocolo é restabelecida conseqüentemente,através da terceira máquina remota 30, entre o agente 4506do cliente da máquina de cliente 10 e da máquinaintermediária 30. Em uma modalidade, quando a primeiraconexão 4504 do protocolo à máquina intermediária 30 érestabelecida, a primeira conexão 4504 do protocolo évalidada validando um primeiro ou segundo bilhete do re-connection para este " hop" com a autoridade 6102 dobilhete. Em uma modalidade, onde mais de um nível deintermediário faz à máquina 30 existem, a máquinaintermediária 30 através de que o agente 4506 do cliente édistribuído em cada um do " dos níveis; a" - 11 n-l"determina depois disso, baseado em uma equação deequilíbrio da carga por exemplo, a máquina intermediária 30a que conectará a nível seguinte. Alternativamente, em umaoutra modalidade, a terceira máquina remota 30 determina,para mais de um ou todo o " dos níveis; a" - " η" , ointermediário faz à máquina 30 com que o agente 4506 docliente será distribuído. Em outras modalidades, ou amáquina intermediária 3 0 ou uma das máquinas remotas 3 0(por exemplo, a terceira máquina remota 30) geram bilhetesde conexão primeiramente ou em segundo re- para umas ouvárias das conexões ou o " hops" com qual o agente 4506 docliente é distribuído. Restabelecendo a primeira conexão4504a do protocolo entre o agente 4506 do cliente damáquina de cliente 10 e da máquina intermediária 30, porexemplo o nó intermediário 30' no 11 nivelado; n" (referidoem seguida no método 7100 como a máquina intermediária 30),o agente 4506 do cliente transmite então, na etapa 7106, oprimeira SID e chave e o segundos SID e chave à máquinaintermediária 30. Em uma modalidade, o agente 4 506 docliente transmite, em etapa 7106, no primeiro bilhete dore-connection e no segundo bilhete do re-connection para amáquina de cliente 10 à máquina intermediária 30.Determina-se então, em etapa 7108, se o primeiros SID echave são válidos. Em uma modalidade, a validez do primeiroSID e a chave são determinadas usando o serviço 5002 doACR. Por exemplo, a máquina intermediária 3 0 transmite oprimeiros SID e chave ao serviço 5002 do ACR. Em umamodalidade, o serviço 5002 do ACR determina a validez doprimeiro SID e a chave comparando á uma cópia do primeiroSID armazenado na memória 5018. Se o serviço 5002 do ACRdetermina o primeiro 0 SID e a chave a ser válidos, oserviço 5002 do ACR re-authenticates a máquina de clienteao serviço de acolhimento 4516 e transmitem-na, em etapa10 7110, o endereço do primeiro serviço 4502 do protocolo àmáquina intermediária 30. Se não, se o serviço 5002 do ACRdetermina o primeiros SID e chave ser inválido, a máquinade cliente 10 está, em etapa 7112, no reconexão recusado aoprimeiro serviço 4502 do protocolo e, conseqüentemente, noreconexão aos serviços de acolhimento 4516. Em umamodalidade, a validez de um primeiro bilhete do re-connection é determinada usando a autoridade 6102 dobilhete. Por exemplo, a máquina intermediária 30 transmiteo primeiro bilhete do re-connection à autoridade 6102 dobilhete. Em uma modalidade, a autoridade 6102 do bilhetedetermina a validez do primeiro bilhete do reconexãocomparando o a uma cópia previamente mantida do primeirobilhete do reconexão. Se a autoridade 6102 do bilhetedetermina o primeiro bilhete do re-connection ser válida, aautoridade 6102 do bilhete transmite, em etapa 7110, oendereço do primeiro serviço 4502 do protocolo à máquinaintermediária 30. Se não, se a autoridade 6102 do bilhetedetermina o primeiro bilhete do re-connection ser inválida,a máquina de cliente 10 está, em etapa 7112, no re-connection recusado ao primeiro serviço 4502 do protocoloe, conseqüentemente, no re-connection aos serviços deacolhimento 4 516. Em etapa 7114, o primeiros SID e chavesão suprimidos perto, por exemplo, o serviço 5002 do ACR euma recolocação segunda SID e a chave são gerados peloserviço 5002 do ACR. Em algumas tais modalidades, o serviço5002 do ACR transmite o segundos SID e chave à máquinaintermediária 30. Em algumas modalidades, o serviço 5002 doACR espera a máquina de cliente 10 para reconhecer que temrecebeu o segundo SID e a chave antes dela prosiguesuprimir do primeiros SID e chave. Em outras modalidades,em etapa 7114, um primeiro bilhete do re-connection ésuprimido perto, por exemplo, a autoridade 6102 do bilhetee bilhete do re-connection da recolocação um primeiro sãogerados perto, por exemplo, a autoridade 6102 do bilhete.
Além disso, um punho da recolocação pode ser gerado perto,por exemplo, a autoridade 6102 do bilhete. Em algumas taismodalidades, a autoridade 6102 do bilhete transmite bilhetedo re-connection da recolocação o primeiro e o punho darecolocação à máquina intermediária 30. Além disso, emalgumas tais modalidades, a autoridade 6102 do bilhetemantém uma cópia bilhete do re-connection da recolocação doprimeiro. Em algumas modalidades, a autoridade 6102 dobilhete espera a máquina de cliente 10 para reconhecer querecebeu bilhete do re-connection da recolocação o primeiroantes que prosiga suprimir do primeiro bilhete do re-connection. Depois que o primeira SID e chave (ou, emalgumas modalidades, no primeiro bilhete de conexão re-)são validados, a máquina intermediária 30, usando oendereço do primeiro serviço 4502 do protocolo,restabelece, em etapa 7116, na primeira conexão 4504b doprotocolo entre a máquina intermediária 3 0 e no primeiroserviço 4502 do protocolo. Restabelecendo a primeiraconexão 4 5 04b do protocolo entre a máquina intermediária 3 0e o primeiro serviço 4502 do protocolo, determina-se entãose o segunda SID e chave, ou o bilhete do re-connection,são válidos. Em uma modalidade, a validez do segundo SID ea chave sao determinadas usando o primeiro serviço 4502 doprotocolo. Por exemplo, a máquina intermediária 3 0transmite o segundos SID e chave ao primeiro serviço 4502do protocolo. Em um a modalidade, o primeiro serviço 4502do protocolo determina a validez do segundo SID e a chavecomparando á uma cópia previamente mantida do segundo SID ecifrou credenciais da autenticação. Se o primeiro serviço4502 do protocolo determina o segundos SID e chave serválido, a primeira conexão restabelecida 4504b do protocoloentre a primeira máquina intermediária 3 0 e o primeiroserviço 4502 do protocolo está lig, em etapa 7202, àconexão secundária mantida 4508 do protocolo entre oprimeiro serviço 4 5 02 e cada um do protocolo de uns ouvários serviços de acolhimento 4516. Se não, se o primeiroserviço 4502 do protocolo determina o segundos SID e chaveser inválido, a primeira conexão restabelecida 4504b doprotocolo não é lig a umas ou várias conexões secundáriasmantidas 4508 do protocolo e a máquina de cliente 10 éreconexão recusado a uns ou vários serviços de acolhimento4516. Nas modalidades usando bilhetes do re-connection, avalidez do segundo bilhete de conexão re- é determinadausando o primeiro serviço 4502 do protocolo. Por exemplo, amáquina intermediária 30 transmite o segundo bilhete do re-connection ao primeiro serviço 4502 do protocolo. Em umamodalidade, o primeiro serviço 4502 do protocolo determinaa validez do segundo bilhete do re-connection comparando oa uma cópia previamente mantida do segundo bilhete do re-connection. Em uma outra modalidade, o primeiro serviço 112do protocolo valida um primeiro bilhete do re-connectionpara a conexão entre o primeiro serviço 4502 do protocolo ena modalidade do serviço de acolhimento 4516, ou outro,entre o primeiro serviço 4502 do protocolo e um outroprimeiro serviço 4502 do protocolo ou uma máquinaintermediária 30. Em uma maneira similar, cada " hop"depois disso entre o primeiro serviço 4502 do protocolo e oserviço de acolhimento 4516 podem ser validados com uns ouvários bilhetes, bilhetes da inicial ou do re-connection,para validar o uso continuado do " hop" em nome da máquinade cliente 10.
Se o primeiro serviço 4502 do protocolo determina osegundo bilhete do re-connection ser válido, a primeiraconexão restabelecida 4504b do protocolo entre a primeiramáquina intermediária 30 e o primeiro serviço 4502 doprotocolo está Iig à conexão secundária mantida 4508 doprotocolo entre o primeiro serviço 4502 e cada um doprotocolo de uns ou vários serviços de acolhimento 4516. Senão, se o primeiro serviço 4502 do protocolo determina osegundo bilhete do re-connection ser inválido, a primeiraconexão restabelecida 4504b do protocolo não é Iig a umasou várias conexões secundárias mantidas 4508 do protocolo ea máquina de cliente 10 é re-connection recusado a uns ouvários serviços de acolhimento 4516. No caso de uma conexãodo múltiplo-lúpulo entre o primeiro protocolo presteserviços de manutenção a 4502 e ao serviço de acolhimento4516, cada " hop" pode ser validado para o re-connection eser Iig ao " precedente; hop" até o " final; hop" aoserviço de acolhimento 4516 sãos, ou até um do " hops" sidoo re-connection recusado. Em etapa 7204, o segundos SID echave são suprimidos perto, por exemplo, o primeiro serviço4 5 02 do protocolo e uma recolocação segunda SID e a chavesão gerados perto, por exemplo, o primeiro serviço 4502 doprotocolo para a transmissão à máquina de cliente 10. Emtal modalidade, o primeiro serviço 4502 do protocolo mantémuma cópia da recolocação segunda SID e da chave. Em algumasmodalidades, o primeiro serviço 4502 do protocolo espera amáquina de cliente 10 para reconhecer que recebeu arecolocação segunda SID e a chave antes dele prosiguemsuprimir da segundas identificação da sessão e chave Emalgumas modalidades, o segundo bilhete do re-connection ésuprimido perto, por exemplo, o primeiro serviço 4502 doprotocolo e um bilhete do re-connection da recolocaçãosegunda são gerados perto, por exemplo, o primeiro serviço4502 do protocolo para a transmissão à máquina de cliente10. Em tal modalidade, o primeiro serviço 4502 do protocolomantém uma cópia do bilhete do re-connection da recolocaçãosegunda. Em algumas modalidades, o primeiro serviço 4 5 02 doprotocolo espera a máquina de cliente 10 para reconhecerque recebeu o bilhete do re-connection da recolocaçãosegunda antes que prosiga suprimir do segundo bilhete dore-connection. No caso de validar uns ou vários do " hops"para reconectar um cliente 108, uns ou vários bilhetes dore-connection da recolocação, em etapa 948, podem sergerados e/ou uma cópia ser conservados pela autoridade 136do bilhete, pelos nós intermediários 632, por alguns dosnós de computação, ou por uns ou vários dos primeirosserviços 112 do protocolo. Em etapa 7206, a recolocaçãosegunda SID e a chave são transmitidas à máquina de cliente10. por exemplo, ACR que o serviço 5002 pode transmitir,com a máquina intermediária 30, a recolocação segunda SID ea chave à máquina de cliente 10. Além disso, em umamodalidade, o primeiro serviço 4502 do protocolo transmite,com a máquina intermediária 30, a recolocação segunda SID ea chave à máquina de cliente 10. Em algumas modalidades,bilhete do re-connection da recolocação o primeiro e obilhete do re-connection da recolocação segunda sãotransmitidos à máquina de cliente 10. por exemplo, aautoridade 6102 do bilhete podem transmitir, através dointermediário máquina 30, bilhete do re-connection darecolocação o primeiro à máquina de cliente 10. Além disso,em uma modalidade, o primeiro serviço 4502 do protocolotransmite, através da máquina intermediária 30, o bilhetedo re-connection da recolocação segunda à máquina decliente 10. Em outras modalidades, os bilhetes do re-connection da recolocação para uns ou vários " hops" podeser transmitido a umas ou várias da máquina intermediária30, alguns dos nós de computação, ou uns ou vários dosprimeiros serviços 4502 do protocolo. Alternativamente, emoutras modalidades, os métodos descritos acima prevêemsomente um único bilhete do re-connection para a máquina decliente 10 e/ou uma única conexão re- para cada um do "hops" entre a máquina de cliente 10 e um serviço deacolhimento 4516. Como tal, um pouco do que usando oprimeiro e segundo re-connection tickets, nestasmodalidades, simplesmente o único bilhete acima mencionadodo re-connection é usado. Em uma tal modalidade, o agente4506 do cliente da máquina de cliente 10 é fornecidoigualmente com o endereço do primeiro serviço 4502 doprotocolo. Para reconectar aos serviços de acolhimento4516, o agente 4506 do cliente transmite o único bilhete dore-connection diretamente ao primeiro serviço 4502 doprotocolo. O primeiro serviço 4502 do protocolo determinaentão se o único bilhete do re-connection é válido. Em umamodalidade, o primeiro serviço 4502 do protocolo determinaa validez do único bilhete do re-connection comparando o auma cópia previamente mantida do único bilhete do re-connection. Se o primeiro serviço 4502 do protocolodetermina o único bilhete do re-connection ser válido, aprimeira conexão restabelecida 4504 do protocolo entre amáquina de cliente 10 e o primeiro serviço 4502 doprotocolo está Iig à conexão secundária mantida 4508 doprotocolo entre o primeiro protocolo serviço 4502 e cada umde uns ou vários serviços de acolhimento 4516. Se não, se oprimeiro serviço 4502 do protocolo determina o únicobilhete do re-connection ser inválido, a primeira conexãorestabelecida 4504 do protocolo não é Iig a umas ou váriasconexões secundárias mantidas 4508 do protocolo e a máquinade cliente 10 é re-connection recusado a uns ou váriosserviços de acolhimento 4516. Depois que o único bilhete dore-connection é validado, o único bilhete do re-connectionestá suprimido perto, por exemplo, o primeiro serviço 4502do protocolo e bilhete do re-connection da recolocação umúnico são gerados perto, por exemplo, o primeiro serviço4502 do protocolo para a transmissão à máquina de cliente10. Em transmitir bilhete do re-connection da recolocação oúnico à máquina de cliente 10, o primeiro serviço 4502 doprotocolo mantém uma cópia bilhete do re-connection darecolocação do único. Em algumas modalidades, o primeiroserviço 4502 do protocolo espera a máquina de cliente 10para reconhecer que recebeu bilhete de conexão re- darecolocação o único antes que prosiga suprimir do únicobilhete do re-connection. Em contudo uma outra modalidade,como os primeiros e segundos bilhetes do re-connection, oúnico bilhete do re-connection é configurada para oapagamento automático após um período de tempopredeterminado que segue uma falha na conexão 4504, e/oudepois de uma terminação limpa da conexão 4504. Em umamodalidade não mostrada nos FIGOS. 71-72, uma autoridade6102 do bilhete podia igualmente ser usada em vez doserviço 5002 do ACR reconectando uma máquina de cliente 10a um serviço de acolhimento 4516. No método 7100, aautoridade 6102 do bilhete geraria e transmitiria bilhetesdo reconexao em vez de SIDs e de chaves como com o serviço5002 do ACR. Por exemplo, em etapa 7106, uma autoridade6102 do bilhete determine em etapa 7108 se um primeiroreconecta o bilhete recebido da máquina intermediária 3 0 emetapa 7106 é válido. Em etapa 7114 a autoridade 6102 dobilhete suprimiria do primeiro bilhete do reconexão e geraum segundo bilhete do reconexão com um punho. Como tal, aautoridade 6102 do bilhete facilita restabelecer e re-autenticando a sessão de comunicação da máquina de cliente10 ao serviço de acolhimento 4516. O desempenho da rede 150pode ser monitorado para aumentar o desempenho percebidopelo usuário de uma máquina de cliente 10. A largura defaixa e a latência da rede 150 são um fator que afete aexperiência da interação do utilizador final da máquina decliente 10. Outros fatores incluem o número de máquinasvirtuais que executam em uma máquina remota 3 0 ou o númerode aplicações que executam dentro de uma máquina virtual namáquina remota 30, a quantidade de dados que estão sendoexecutados (ou carga) das aplicações, a quantidade deprocessar (ou carga) ser feito pela máquina de cliente 10.Durante a operação, cada um destes fatores flutua. Enquantoos dados são transmitidos através da rede 15 0 a quantidadede largura de faixa disponível da rede está reduzida. 0número de pedidos aos aumentos e à diminuição de umamáquina remota 3 0 que variam desse modo a carga da máquinaremota 30. Um aspecto da invenção caracteriza sistemas emétodo para determinar se e como estas mudançasindependentes afetam a experiência da interação doutilizador final.
O FIG. 7 3 é um diagrama de bloco conceptual de umamodalidade de um sistema que inclua o software 73 02 docliente e o software 7306 da máquina remota que monitoram ostatus da conexão entre a máquina de cliente 10 e otelecontrole máquina 30. Deve-se compreender que os váriosmódulos não são necessariamente aplicações individuais. Emlugar de, os módulos podem ser fornecidos como uma únicaaplicação de software ou ser agrupados como toda acombinação de aplicações individuais. Adicionalmente,determinados módulos podem ser ferragem física. O software7302 do cliente está em uma comunicação com um módulo 73 04do transceptor da máquina de cliente 10. O software 7302 docliente inclui um módulo 7308 do disparador em umacomunicação com o módulo 73 04 do transceptor. O módulo 73 08do disparador gera uma mensagem 7310 que seja transmitidaao software 7306 da máquina remota. A mensagem 7310 estáconfigurada para gerar uma resposta do software 7306 damáquina remota quando a mensagem é processada pela máquinaremota 30. Por exemplo, a mensagem pode incluir um eventoda entrada do usuário esse resultados em uma respostagráfica da máquina remota. Em uma modalidade, o módulo 7308do disparador gera a mensagem 7310 em uma base periódica. Ocomprimento do período pode ser configurável pelo usuáriodo usuário da máquina de cliente 10 ou outro tal como umadministrador de sistema. Em uma outra modalidade, o módulodo disparador gera a mensagem 7310 em resposta a umutilizador final específico entrado usando o dispositivo deentrada 7312. O módulo 7304 do transceptor está em umacomunicação com a rede 150 e é configurado para transmitira mensagem 7310 da máquina de cliente 10 à máquina remota30 através da rede 150 e para receber uma resposta damáquina remota 30. Caso necessário, o módulo 7304 dotransceptor formata a mensagem 7310 para a transmissãoatravés da rede 150 e formata a resposta para a execuçãopelo software 7302 do cliente. Opcionalmente, o software7302 do cliente pode incluir um módulo 7316 do tinner e ummódulo 7314 do cálculo. O módulo 7316 do temporizador estáem uma comunicação com o módulo 7308 do disparador e omódulo 7314 do cálculo. O módulo 7316 do temporizador estáconfigurado para medir o tempo decorrido da geração damensagem 7310 até que a máquina de cliente 10 termine asinstruções incluídas na resposta da máquina remota. Em umamodalidade, o módulo 7316 do temporizador gera um timestampdo começo e um timestamp da conclusão e determina o tempodecorrido therebetween. Em uma outra modalidade, o módulodo temporizador actua como um cronômetro e gera o tempodecorrido sem executar cálculos. Em uma modalidade, o tempodecorrido é emitido a uma outra máquina remota 30' para atransformação mais ulterior, tal cálculo de uma estadiadecorrida prevista, a análise de tensão, e o armazenamento.
Em uma outra modalidade, o momento decorrido é enviado aomódulo do cálculo da comparação de encontro a um valorprevisto de determinar se o ambiente 7300 se está operandodentro da especificação. Em ainda uma outra modalidade, otempo decorrido é enviada à máquina remota 3 0 que o clientese está comunicando com. 0 software 73 06 da máquina remotaestá em uma comunicação com um módulo 7326 do transceptorda máquina remota 30. O software 7306 da máquina remotainclui uma aplicação 7318 do eco, um módulo opcional 7320da iniciação, e um módulo opcional 7328 da confirmação. Emuma modalidade, o software 73 06 da máquina remota está emuma comunicação com os programas de aplicação 7322 e osistema de exploração 7324 que estão executando na máquinaremota 30. Em uma outra modalidade, o software 7306 damáquina remota está em uma comunicação com o a ambiente decomputação e um hypervisor que executa na máquina remota30. Em ainda outras modalidades, o software 73 06 da máquinaremota executam em uma máquina virtual fornecida por umhypervisor e, nestas modalidades, comunicam-se com osprogramas de aplicação fornecidos pelo ambiente decomputação e pelo sistema de exploração virtualizado damáquina virtual. A aplicação 7318 do eco está em umacomunicação com o módulo 7326 do transceptor e se presentecada um do módulo 7320 da iniciação e do módulo 7328 daconfirmação. Em uma modalidade, a aplicação 7318 do eco éinvisível ao utilizador final da máquina de cliente 10. porexemplo, a aplicação 7318 do eco pode ser uma windowless(por exemplo, aplicação do discrição). 0 utilizador finalnão interage diretamente com a aplicação 7318 do eco. Aaplicação do eco gera uma resposta gráfica 733 0 à mensagem7310 dò software 7302 do cliente. A mensagem de respostagráfica 7330 inclui instruções para manipular, modificar,actualizar, alterar, ou mudar a exposição da máquina decliente 10 em uma maneira que não seja perceivable peloutilizador final da máquina de cliente 10, mas éperceivable pelo software 7302 do cliente da máquina decliente 10. Em uma modalidade, a aplicação 7318 do ecoexecuta invisível ao lado dos programas de aplicação 7322.Em tal modalidade, a aplicação 7318 do eco é sujeita aosmesmos efeitos ambientais e muda como os programas deaplicação 7322. O módulo 7326 do transceptor está em umacomunicação com a rede 150 e é configurado para transmitira resposta 7330 da máquina remota 30 à máquina de cliente10 através da rede 150 e para receber a mensagem 7310 do amáquina de cliente 10. caso necessário, o módulo 7304 dotransceptor formata a resposta 733 0 para a transmissãoatravés da rede 150 e formata a mensagem 7310 para aexecução pela máquina remota 30. O módulo do transceptorenvia a mensagem recebida 7310 ao sistema de exploração7324 da máquina remota 30. O sistema de exploração 7324 éconfigurado para ler e processar a mensagem 7310 para gerarum evento 7332 da entrada para a aplicação 7318 do eco. 0evento 7332 da entrada pode ser um evento conhecido daentrada de WINDOWS ou um evento feito sob encomenda daentrada. Conceptual, o evento 7332 da entrada é configuradopara causar a aplicação 7318 do eco gera a resposta gráfica7330. O módulo 7320 da iniciação está em uma comunicaçãocom os programas de aplicação 7322 e o sistema deexploração 7324. Em uma modalidade, o módulo 7320 dainiciação monitora os programas de aplicação 7322 e iniciaautomaticamente a aplicação 7318 do eco quando específicada aplicação dos programas de aplicação 7322 começa aexecutar na máquina remota 30. Em uma outra modalidade, omódulo 7320 da iniciação inicia a aplicação do eco quando amáquina remota 3 0 recebe a mensagem 7310. Em uma outramodalidade, a aplicação 7318 do eco está iniciada quandouma sessão do cliente/máquina remota começa e permanecequieta até que a mensagem 7310 esteja recebida. Deve-secompreender que o módulo da iniciação pode iniciar uns ouvários exemplos da aplicação 7318 do eco. Por exemplo, omódulo 7320 da iniciação pode começar um pedido respectivo7318 do eco para cada máquina de cliente 10 a que conecta amáquina remota 30 ou de que conecta a uma máquina virtualfornecida pela máquina remota 30. O módulo 7328 daconfirmação está em uma comunicação com a aplicação 7318 doeco. Em uma modalidade, uma função executada pelo módulo7328 da confirmação inclui a monitoração da aplicação 7318do eco para assegurar um exemplo da aplicação 7318 do ecoestá executando para cada conexão entre uma máquina decliente 10 e uma máquina remota 30 que seja do interesse. Omódulo 7328 da confirmação pode relatar se a aplicação 7318do eco é de funcionamento e de funcionamento corretamente auma outra máquina remota 30', como um usuário da gerênciadescrito acima, ou o módulo 7328 da confirmação poderelatar se a aplicação 7318 do eco é de funcionamento e defuncionamento corretamente ao sistema de exploração 7324 damáquina remota 3 0 ou a uma máquina virtual fornecida por umhypervisor. Em referência a FIG. 74, uma modalidade de ummétodo 74 0 0 da operação e a interação entre a máquina decliente 10 e a máquina remota 3 0 são descritas. Como umavista geral geral, o método pode ser conceituado como umageração de uma medida para o uso em calcular umaexperiência do utilizador final métrica no ambiente decomputação baseado 73 00 da máquina remota. A operação dosoftware 7302 do cliente e do software 7306 da máquinaremota inclui transmitir a mensagem 7310 à aplicação 7318(etapa 77410), recebendo uma resposta gráfica (etapa 77420)da aplicação 7318, e determinando uma época decorrida(etapa 7743 0) que represente o end-usuário experiência dainteração de s. Em uma modalidade, o módulo 73 08 dodisparador no software 73 02 do cliente transmite a mensagem7310 através do transceptor 73 04 em uma base periódica. Emuma outra modalidade, o módulo 73 08 do disparador gera a mensagem 7310 em resposta à entrada do utilizador final. Amensagem 7310 pode incluir instruções para gerar umamensagem de WINDOWS que seja enviada à aplicação 7318.Alternativamente, a mensagem 7310 pode ser a mensagem deWINDOWS e representar um evento da entrada à aplicação7318. Em uma modalidade, a mensagem 7310 está transferidasobre uma canal virtual separada dentro do córrego doprotocolo do AIC, e uma mensagem de WINDOWS gerada pelosoftware 73 06 da máquina remota quando a mensagem 7310 érecebida.
Quando o software 73 06 da máquina remota recebe amensagem 7310, a aplicação 7318 do eco processa asinstruções da mensagem 7310 e gera a resposta gráfica 7330.Em uma modalidade, a resposta gráfica 7330 gera uma mudançana exposição do cliente que é undetectable pelo utilizadorfinal. Em várias modalidades, a resposta gráfica 733 0 podeincluir instruções para mudar um pequeno número de pixéisna exposição do cliente, instruções para mudar o únicopixel na origem (isto é, canto esquerdo superior) daexposição do cliente, instruções para dar um ciclo um pixelda exposição através de uma escala dos valores, ouinstruções para dar um ciclo uma mudança através de umaescala de posições do pixel da exposição. Quando o software7302 do cliente processa a resposta gráfica 7330, o tempodecorrido entre a transmissão da transmissão da mensagem7310 e a conclusão do processamento da resposta gráfica7330 é determinado. Em uma modalidade, o software 7302 docliente determina o tempo decorrido e envia o tempodecorrido a uma máquina remota 30' da gerência; para aanálise do armazenamento e de tensão. Em uma outramodalidade, um timestamp do começo e um timestamp daextremidade é enviado do módulo 7316 do temporizador amáquina remota 30' da gerência,·. Em tal modalidade amáquina remota 30' da gerência; determina o tempodecorrido. Deve-se compreender que a medida do tempodecorrido é equivalente à experiência da interação comousado nisto. A máquina remota 30' da gerência; podem asmedidas da experiência da interação do múltiplo de loja. Asmedidas armazenadas podem ser usadas para isolar-se que aparcela de uma conexão da máquina de cliente 10 não estáexecutando como esperado. Por exemplo, a medida dosincronismo de rede para o mesmo período de tempo pode sercomparada à experiência da interação à aplicação doisolado, máquina virtual, e a carga de máquina da execuçãotende. Também, as medidas armazenadas da experiência dainteração podem ser analisadas usando métodos conhecidospara determinar um valor previsto da experiência dainteração. O valor previsto pode ser comparado ao valormedido, pelo módulo 7314 do cálculo do software 7302 ou amáquina remota 30' do cliente da gerência,·. Em referência aFIG. 75, uma modalidade do método operacional 7500 damáquina remota 30 e o software 7306 da máquina remota sãodescritos. Depois que os novatos da máquina de cliente 10(etapa 77505) estabeleceram uma sessão com uma máquinaremota 30, o software da máquina remota inicia (etapa77510) a aplicação 7318 do eco. A máquina remota 30 recebe(etapa 77520) a mensagem 7310 da máquina de cliente 10. Umavez que a mensagem 7310 é recebida, o módulo 7328 daconfirmação confirma (etapa 77530) que a aplicação 7318 doeco está executando. Da mensagem 7310, o sistema deexploração 7324, ou o hypervisor, gera (etapa 77540) oevento 7332 da entrada que é processado pela aplicação doeco para gerar (etapa 77550) a resposta gráfica 7330. Omódulo 7320 da iniciação do software 7306 da máquina remotainicia (etapa 77510) a aplicação 7318 do eco quando amáquina de cliente 10 começa a sessão. Em uma modalidade,uma única aplicação 7318 do eco é iniciada. Em outrasmodalidades, uma aplicação 7318 do eco é começada para cadaum dos programas de aplicações 7322 que executam na máquinaremota 30. Em tais modalidades, a experiência da interaçãopode ser medida em uma aplicação pela base da aplicação. Emoutras modalidades, uma aplicação 7318 do eco é começadapara cada um das máquinas virtuais que executam na máquinaremota 30. Nestas modalidades, a experiência da interaçãopode ser medida em uma base da máquina virtual. Em umaoutra modalidade, uma única aplicação 7318 do eco écomeçada para uma máquina da execução que executa osprogramas de aplicação múltiplos 7322 do programa. Porexemplo, uma máquina remota pode comunicar-se com asmáquinas de cliente múltiplas 10. Cada um das máquinas decliente 10 conecta à máquina remota 30 através de umtrajeto de rede diferente e tem assim uma experiênciadiferente da interação. A aplicação 7318 do eco não évisível ao usuário. Isto é, o usuário não interagediretamente com a aplicação 7318 do eco e a aplicação 7318do eco não é mostra na exposição do cliente. Em umamodalidade, a aplicação 7318 do eco é uma aplicaçãowindowless. O módulo 7326 do transceptor recebe (etapa77520) a mensagem 7310 da máquina de cliente 10. Em umamodalidade, o módulo 7326 do transceptor inclui um cartãode relação da rede que se comunique com a rede 150. omódulo do transceptor pode formatar a mensagem recebida7310 de modo que a mensagem 7310 seja legível pelo sistemade exploração 7324. Antes de gerar a resposta gráfica 7330,o módulo 7328 da confirmação confirma (etapa 77530) que aaplicação 7318 do eco está executando no espaço do usuárioatribuído pelo sistema de exploração. Em algumasmodalidades, o espaço do usuário é atribuído pelo sistemade exploração nativo, isto é, o sistema de exploração damáquina da execução. Em outras modalidades, o espaço dousuário é atribuído por um sistema de exploraçãovirtualizado, isto é, um sistema de exploração de umamáquina virtual fornecida por um hypervisor. Em umamodalidade, o módulo 7328 da confirmação comunica umaindicação que a aplicação 7318 do eco esteja executando aosistema de exploração. Em uma modalidade, a máquina remota30 cria um registro mesmo na máquina remota 3 0 para indicarque a aplicação 7318 do eco não estava funcionando quando amensagem 7310 foi recebida ou quando a sessão foi iniciada.A confirmação da execução da aplicação 7318 do eco érecebida uma vez, os processos do sistema de exploração amensagem 7310 que gera desse modo (etapa 77540) o evento73 3 2 da entrada. Em uma modalidade, o evento da entrada éuma mensagem de WINDOWS que seja enviada à aplicação 7318do eco para modelar uma mensagem de WINDOWS do evento daentrada normal. O evento da entrada é projetado fazer comque a aplicação 7318 do eco gere uma resposta gráfica 7330.Os eventos exemplares da entrada podem incluir, mas não serlimitados a, movimentos do rato, cursos do teclado, geraçãoda janela, destruição da janela, ou todo o outro evento quegerar uma resposta gráfica da aplicação 7318 do eco. Emoutros a modalidade, o evento da entrada é um " feito sobencomenda; usuário-defined" mensagem característica daaplicação de WINDOWS. A aplicação 7318 do eco processa oevento 7332 da entrada e gera (etapa 77550) a respostagráfica 7330, que por sua vez é enviada à máquina decliente 10. Em várias modalidades, a resposta gráfica 7330é gerada uma vez que a aplicação 7318 do eco executou umjogo das tarefas como: cálculos, uso da memória, acesso dedisco, e acesso do recurso de rede. A aplicação 7318 do ecopode ser configurada por um administrador para executartarefas especific. Em uma outra modalidade, a aplicação7318 do eco pode executar as tarefas da execução queespelham um programa de aplicação 158 que executa namáquina remota 30 e geram a resposta gráfica 7330. Mim Emuma modalidade, a resposta gráfica 733 0 inclui asinstruções que causam uma mudança na exposição da máquinade cliente 10 que não é detectável pelo utilizador final.
Por exemplo, a resposta gráfica 7330 inclui instruções paramudar um único pixel na origem da exposição. Umas respostasgráficas mais complexas podem ser usadas para diferenciar-se do gráfico gerado pelos programas de aplicação 7322 oupara detectar todos os indicadores da resposta perdidos dasoptimizações gráficas do protocolo. Por exemplo, o valor dopixel pode dar um ciclo através de uma escala prevista dosvalores. Em uma outra modalidade, a resposta gráfica fazcom que uma posição do pixel dê um ciclo através de umaescala prevista de posições do pixel. Um outro exemplo deuma resposta gráfica é um BitBlt com uma Quadriculação-Operação inesperada, à exposição ou a um off-screen deuperfície (por exemplo, off-screen um amortecedor). Alémdo que a medição da experiência total da interação doutilizador final, em várias modalidades, o secundário-medidor que compreende a experiência total da interação doutilizador final métrica pode ser medido e gravado.
Geralmente, este secundário-medidor inclui o tempo exigidopela máquina de cliente 10 para gerar e emitir a mensagem7310 do disparador, a latência da rede 150, o tempo exigidopela máquina remota 30 para processar a mensagem 7310 epara gerar e transmitir a resposta gráfica 7330, e o tempoexigido pela máquina de cliente 10 para processar aresposta gráfica 7330. Em referência a FIG. 76 e a FIG. 77,as modalidades de um método de gerar o secundário-medidorda máquina de cliente 10 são descritas. Da perspectiva damáquina de cliente 10, há dois tipos de secundário-medidorque é gerado a) aqueles relativos a gerar e a transmitir amensagem 7310 do disparador segundo as indicações de FIG.76 e b) aqueles relativos a detectar e a processar aresposta gráfica 7330 segundo as indicações de FIG. 77. Emreferência a FIG. 76, uma modalidade de um método 7600 paracapturar o secundário-medidor relativo a gerar a mensagem7310 do disparador é descrita. Supor que a mensagem 7310 dodisparador está gerada em resposta ao uso do dispositivo deentrada 7312, o módulo 7304 do disparador detecta (etapa77610) o uso do evento da entrada e das marcas (etapa77620) a época da deteção. O módulo do disparador gera(etapa 77630) a mensagem 7310 e marcas (etapa 77640) otempo onde a mensagem que gera é terminada. 0 módulo 73 08do disparador envia a mensagem 7310 ao transceptor 304, quetransmite então (etapa 77650) a mensagem 7310 à máquinaremota 30. O módulo 7308 do disparador ou o módulo 7304 dotransceptor marca (etapa 77660) o tempo onde a mensagem7310 é transmitida à máquina remota 30.
Em referência a FIG. 77, uma modalidade de um método7700 para capturar o secundário-medidor relativo aprocessar a resposta 7330 é descrita. 0 transceptor 304recebe (etapa 7710) a resposta gráfica 7330 da máquinaremota 30 e das marcas (etapa 7720) a época de recibo. 0processo do software 7302 do cliente (etapa 7730) aresposta gráfica 7330. Em cima da conclusão de processar aresposta gráfica 7330, o software 7302 do cliente marca(etapa 7740) a época da conclusão. Uma vez que completo, osoftware 7302 do cliente indica a resposta gráfica edetecta-a (etapa 7750) que a resposta gráfica 7330 estáindicada. O software 7302 do cliente igualmente marca(etapa 7760) a época da deteção na exposição. As açõesdescritas acima de determinados tempos da marcação queindicam a ocorrência de determinados eventos podem ocorrerem maneiras diferentes. Em uma modalidade, ostemporizadores múltiplos são começados e parados pelomódulo 7316 do temporizador em cima da ocorrência de cadaum dos eventos descritos acima. Em uma outra modalidade, umúnico temporizador é usado e os tempos da separação (istoé, o tempo decorreu entre a ocorrência dos eventos) sãoganhados em uma tabela que seja acessível pelo módulo 7314do cálculo. Em ainda uma outra modalidade, um selo de tempoé adicionada à mensagem 7310 e à resposta gráfica 7330 paracada um das ações da marcação. Em tal modalidade, antes detransmitir a mensagem 7310 os selos de tempo são relatadosao módulo 7314 do cálculo, onde o selo do tempo decorridono meio cada vez é determinado. Estes tempos decorridosrepresentam secundário-medidor diferente descrito acima.
Deve-se compreender que as várias combinações dos temposdecorridos podem igualmente ser usadas. Por exemplo, o selode tempo relacionou-se à deteção do uso do dispositivo deentrada e o selo de tempo que indica que a transmissão damensagem 7310 pode ser processada para determinar o totaldecorreu usado pela máquina de cliente 10 para gerar eemitir a mensagem 7310 à máquina remota 30. Os princípiosdescritos acima no que diz respeito ã geração da mensagem7310 são ingualmente aplicáveis ao processamento daresposta gráfica 7330 pela máquina de cliente 10. Emreferência a FIG. 78, uma modalidade de um método 7800 paracapturar o secundário-medidor relativo a gerar a respostagráfica 7330 é descrita. 0 transceptor 320 recebe (etapa7810) a mensagem 7310 da máquina de cliente 10 e das marcas(etapa 7820) a época de recibo. 0 sistema de exploração7324 gera então (etapa 7830) o evento 7332 da entrada. 0software 7306 da máquina remota marca (etapa 7840) a épocada conclusão da geração do evento 7332 da entrada. Aaplicação 7318 do eco recebe (etapa 7850) o evento 7332 daentrada e o software 7306 da máquina remota marca (etapa7860) a época de recibo do evento 73 3 2 da entrada. Uma vezque a aplicação 7318 do eco recebe o evento da entrada, aaplicação 7318 do eco gera (etapa 7870) a resposta gráfica7330. O software 7306 da máquina remota marca (etapa 7880)o tempo onde a aplicação 7318 do eco termina a geração daresposta gráfica 7330. Em uma modalidade, o tempo exigidopara gerar a resposta gráfica 7330 pela aplicação 7318 doeco inclui a aplicação do eco que executa tarefas queadicionais das execuções esse similar àqueles executou peloprogramas de aplicação 7322. O módulo 7326 do transceptorrecebe a resposta gráfica 7330 e transmite (etapa 7890) aresposta gráfica 7330 à máquina de cliente 10. 0 softwareda máquina remota igualmente marca (etapas 900) o tempoonde a resposta gráfica 7330 é emitida. Similar a marcaçãodos eventos descritos em referência à máquina de cliente10, os mesmos métodos podem ser empregados no que dizrespeito à máquina remota 30. Em uma modalidade, ostemporizadores múltiplos são começados e parados pelomódulo 7316 do temporizador em cima da ocorrência de cadaum dos eventos descritos acima. Em uma outra modalidade, umúnico temporizador é usado e os tempos da separação (istoé, o tempo decorreu entre a ocorrência dos eventos) sãoganhados em uma tabela que seja acessível pelo módulo 7314do cálculo. Em ainda uma outra modalidade, um selo de tempoé adicionada à resposta gráfica 7330 para cada um das açõesda marcação. Em tal modalidade, em cima do recibo daresposta gráfica 7330 os selos de tempo são relatados aomódulo 7314 do cálculo, onde o selo do tempo decorrido nomeio cada vez é determinado. Estes tempos decorridosrepresentam o secundário-medidor diferente descrito acima.Deve-se compreender que as várias combinações dos temposdecorridos podem igualmente ser usadas. Por exemplo, o selode tempo relacionou-se a detectar o recibo da mensagem 7310e o selo de tempo que indica que a transmissão da respostagráfica 7330 pode ser processada para determinar o totaldecorreu usado pela máquina remota 3 0 para gerar e emitir aresposta gráfica à máquina de cliente 10. Referindo agoraFig. 79, um outro sistema para aumentar a conveniência e ausabilidade dos sistemas descritos acima é mostrado. Umcomputador de usuário do cliente o sistema 7900 inclui umaprimeira máquina de cliente 10, uma segunda máquina decliente 10, e uma máquina remota 30. A descrição de duasmáquinas de cliente é para finalidades ilustrativassomente. O sistema informático de usuário do cliente podeincluir todo o número de máquinas de cliente. Em umamodalidade, a primeira máquina de cliente 10 inclui ummódulo de entrada 7908, um processo 7910 do cliente, ummódulo 7912 da rede, e um módulo 7914 da exposição. 0módulo de entrada 7 908 fornece uma relação para um usuárioda primeira máquina de cliente 10 para interagir com aprimeira máquina de cliente 10, por exemplo para pedir aexecução remota de uma aplicação 7916 em uma sessão 7918 daaplicação da máquina remota 30. Uma sessão 7918 daaplicação é um processo, operando-se na máquina remota 30que fornece o acesso a ou suporta a execução de uns ouvários recursos, tais como a aplicação 7916. Uma aplicação7916 pode ser um programa de software, por exemplo, ou jogoorganizado do código de software capaz da execução por umcomputador, ou hardwired em circuitos sob a forma de umcircuito integrado característico da aplicação (ASIC),microchip somente da memória lida (ROM), e semelhante. Asaplicações do exemplo incluem, mas não são limitadas aMicrosoft Word (disponível de Microsoft CorporationRedmond, de Washington), a Internet Explorer (Microsoft), àacrobata (disponível de Adobe Systems, Inc. San Jose,Califórnia), etc. Em uma modalidade, uma sessão 7918 daaplicação inclui uma aplicação de área de trabalho 7916 deque a execução da outra aplicação 7916 pode ser iniciada.As sessões 7918 da aplicação podem ser aninhadas dentro daoutra aplicação sessões 7918. Em uma outra modalidade, asessão 7918 da aplicação inclui um exemplo da execução deuma única aplicação 7916. Em uma modalidade, o módulo deentrada 7908 é, por exemplo, uma interface de utilizadorgráfica que forneça uns ou vários ícones ou seleções demenu para que um usuário selecione. Cada seleção do íconeou de menu representa uma aplicação específica 7916disponível para a execução remota. Selecionar uma seleçãodo ícone ou de menu inicia o transmissor de um pedido deinício de uma sessão à máquina remota 30 para o acesso aessa aplicação 7916. Em uma outra modalidade, uma seleçãodo ícone ou de menu não representa nenhuma aplicaçãoespecífica 7916, mas representa preferivelmente umprocedimento de início de uma sessão geral da máquinaremota 30. Em uma outra modalidade, o módulo de entrada7908 é interface de utilizador non-graphical. Nestamodalidade, o usuário pode incorporar um comando emitir umpedido de início de uma sessão à máquina remota 30.
Incorporar um comando pode incluir a dactilografia de umjogo predefinido dos caráteres ou a compressão de umaseqüência chave especific em um dispositivo de entrada (porexemplo, um teclado ou um teclado). O pedido de início deuma sessão inclui pelo menos usuário-forneceu a informaçãode autenticação. O módulo de entrada 7908 aceita a entradado usuário-forneceu a informação de autenticação, que podemincluir qualquer tipo de informação de autenticação,incluindo sem limitação de combinações do usuário name-password/PIN, as amostras da voz, os passcodes one-time, osdados biométricos, os certificados digitais, os dados dosmart card, etc. Em algumas modalidades, o módulo deentrada 7908 está em uma comunicação com os peripheralsadicionais da ferragem (não mostrados) para facilitar aaceitação da informação de autenticação do usuário. Emoutras modalidades, o módulo de entrada 7908 pode aceitar ainformação de autenticação fora do processo do início deuma sessão.
0 módulo de entrada 7908 aceita a informação deautenticação e fornece-a ao processo 7910 do cliente. Oprocesso 7910 do cliente controla então a funcionalidade dolado de cliente da sessão da aplicação remotamente daexecução. 0 processo 7910 do cliente envia o usuárioentrado incluindo a informação e os pedidos de autenticaçãopara a terminação ou a desconexão das sessões 7918 daaplicação à máquina remota 30. O processo 7910 do clienteigualmente segura os dados entrantes da máquina remota 30,por exemplo, enviando a saída gráfica de uma sessão 7918 daaplicação ao módulo 7914 da exposição. 0 módulo 7912 darede prevê uma comunicação entre a primeira máquina decliente 10 e a máquina remota 30. 0 módulo da rede emite aentrada do usuário, tal como a informação de autenticação eos pedidos para o acesso a, a desconexão de, ou aterminação das sessões 7918 da aplicação que executam namáquina remota 30. 0 módulo da rede igualmente recebe asaída das sessões 7918 da aplicação e envia a saída aoprocesso 7910 do cliente. Em uma modalidade, o módulo 7912da rede encapsulates o usuário entrado, e reconstitutes asessão da aplicação output, de um protocolo predeterminadopara a transmissão à máquina remota 30. Em uma outramodalidade, o módulo da rede cifra transmissões que parte edescifra transmissões entrantes. 0 módulo 7914 da exposiçãoindica a saída de uma aplicação 7916 de uma sessão 7918 daaplicação da remoto-execução. O módulo 7920 da rede fornecea funcionalidade de uma comunicação para a máquina remota30. Por exemplo, o módulo 7920 da rede recebe comunicaçõesdas primeiras e segundas máquinas de cliente 10 sobre umasou várias redes de dados ou ligações 150. 0 módulo da rede7920 igualmente transmitem dados de saída do recurso àsprimeiras e segundas máquinas de cliente 10. Em umamodalidade, o módulo 7920 da rede cifra comunicações queparte e descifra comunicações entrantes. Do mesmo modo, emuma modalidade, o módulo 7920 da rede encapsulatescomunicações que parte em um protocolo para a transmissão erecupera dados entrantes das transmissões recebidas deacordo com um protocolo. Os protocolos podem incluir, porexemplo e sem limitação, HTTP, protocolo de computaçãoindependente da arquitetura (AIC) (usado por Citrix,Sistemas, Inc. Ft. Lauderdale, Florida), protocolo remotodo Área de trabalho (RDP) (Microsoft Corporation), ouprotocolo comum da passagem (CGP) (Citrix). 0 módulo 7920da rede da máquina remota 30 comunica-se com o módulo 7912da rede da primeira máquina de cliente 10 sobre uma rede150. A rede 150 pode ser executada com as algumas de umavariedade de tecnologias apropriadas. As comunicaçõesentrantes, uma vez que descifrado ou recuperado de umprotocolo (caso necessário), são enviadas a uma sessão 7918da aplicação ou ao processo de usuário 7 922, comoapropriado. 0 processo de usuário 7922 controla a execução,suspensão ao disco, ressunção da execução, suspensão semestado da escrita ao disco, e terminação das sessões 7918da aplicação e as conexões e as desconexões daquelassessões 7 918 da aplicação às primeiras e segundas máquinasde cliente 10. O processo de usuário 7922 pode iniciar assessões 7 918 da nova aplicação, desconecta uma máquina decliente 10 de uma sessão 7918 da aplicação, detecta umadesconexão da máquina de cliente 10 de uma sessão 7918 daaplicação, encontra uma sessão 7918 da aplicação de que umusuário desconectou, encontra uma aplicação a que umusuário da primeira máquina de cliente 10 é conectado dasegunda máquina de cliente 10, e conectam um usuário a umasessão disconnected 7918 da aplicação. Em algumasmodalidades, as sessões 7918 da aplicação são fornecidaspara ser configuradas com o usuário preferências pessoaisde s e permissões do acesso. 0 processo de usuário 7922pode executar no hypervisor, em uma máquina virtualfornecida pelo hypervisor, em um sistema de exploração doconvidado que executam em uma máquina virtual, em umsistema de exploração fornecido pela máquina física ou nascombinações daquelas entidades. 0 transmissor 7924 da saídada aplicação transmite a saída de uma sessão 7918 daaplicação a uma máquina de cliente 10 através do módulo7920 da rede. 0 transmissor 7924 da saída da aplicaçãointercepta a saída de uma sessão 7918 da aplicação edetermina que máquina de cliente 10 é conectado à sessão7918 da aplicação. Em outras modalidades, a identidade damáquina de cliente 10 que é conectada à sessão 7918 daaplicação é armazenada naquele tempo a conexão é feita. Sea sessão 7918 da aplicação é conectada a uma estação docliente, o transmissor 7924 da saída da aplicação transmiteos dados de saída da aplicação à máquina de clienteconectada 10 através do módulo 7920 da rede. Em umamodalidade, se a sessão da aplicação não é conectada a umamáquina de cliente 10, os descartes do transmissor 7924 dasaída da aplicação os dados e as esperas de saída daaplicação para receber os dados de saída futuros daaplicação. Em uma outra modalidade, se a sessão 7918 daaplicação não é conectada a uma máquina de cliente 10, otransmissor 7924 da saída da aplicação negligencia todos osdados de saída mais adicionais da aplicação até que otransmissor 7924 da saída da aplicação receba a notificaçãoque a aplicação a sessão 7918 conectou a uma máquina decliente 10. Em uma outra modalidade, o transmissor 7924 dasaída da aplicação armazena os dados até que o transmissor7924 da saída da aplicação receba a notificação que asessão 7918 da aplicação conectou a uma máquina de cliente10. Em uma outra modalidade, o transmissor 7924 da saída daaplicação tenta emitir dados de saída da aplicação a umamáquina de cliente 10 até que o processo de usuário 7922notifique o transmissor 7924 da saída da aplicação que amáquina de cliente 10 é disconnected da máquina remota 30.Em uma modalidade, o transmissor 7924 da saída da aplicaçãodetermina que máquina de cliente 10, eventualmente, asessão 7918 da aplicação é conectada a consultar a loja7926 dos dados. A loja 7926 dos dados inclui relativo àinformação às sessões da aplicação iniciadas por usuários.A loja dos dados pode ser armazenada na memória temporáriaou permanente ou, por exemplo, ser distribuída através dosusuários múltiplos. Em algumas modalidades, afuncionalidade de uma loja 7926 dos dados é fornecida porum usuário 8620 da sessão como descrita em relação a FIG.86. Em uma modalidade, a máquina remota 30 igualmenteinclui uma fonte 7928 das réguas. A fonte 7928 das réguasarmazena as réguas que governam a reação do processo deusuário 7922 a uma informação de autenticação transmissorado usuário à máquina remota 30. Em uma modalidade, asréguas armazenadas na fonte 7928 das réguas são especificpelo menos na parte pelo administrador de sistema. Em umaoutra modalidade, um usuário especific pelo menos algumasdas réguas armazenadas na fonte 7928 das réguas. As réguasespecificadas pelo utilizador são armazenadas comopreferências. A fonte 7928 das réguas pode ser armazenadona memória temporária ou permanente ou, por exemplo,distribuído através dos usuários múltiplos. Uma réguaarmazenada na fonte 7928 da régua, por exemplo, pôde exigirou proibir a conexão automática às sessões disconnected7918 da aplicação. Uma outra régua pôde exigir ou proibir aconexão automática às sessões 7918 da aplicação ativaconectadas atualmente a uma máquina de cliente diferente10. Contudo uma outra régua pôde fazer a conexão e/ou ocontingente da conexão na máquina de cliente 10 que pede oacesso que está dentro de uma rede segura. Uma régua maisadicional pôde somente permitir a conexão às sessões 7918da aplicação após ter recebido a aprovação do usuário. Umaoutra régua pôde somente permitir a conexão por um tempopredeterminado após a desconexão. Ainda uma outra réguapermite somente a conexão às sessões 7918 da aplicação queincluem a aplicação específica 7916.
0 módulo 7930 da autenticação é responsável paraautenticar um usuário que tente entrar à máquina remota 30.O módulo 7930 da autenticação recebe usuário-forneceu ainformação de autenticação transmitida da primeira máquinade cliente 10. O módulo 7930 da autenticação autenticaentão o usuário baseado no usuário-forneceu a informação deautenticação. Em resposta a uma autenticação bem sucedida,o módulo 7930 da autenticação transmite os resultados doprocesso de autenticação (por exemplo, permita ou negue oacesso, o usuário sistema identificação de s, identificaçãodo computador do cliente, permissões de acesso do usuário,etc.) ao processo de usuário 7922. Em uma modalidade, osmódulos e os processos descritos acima da máquina remota 3 0(isto é, o módulo 7920 da rede, o processo de usuário 7922,a aplicação output o transmissor 7924, e o módulo 7930 daautenticação) e a a máquina de cliente 10 (isto é o módulode entrada 7908, o processo 7910 do cliente, o módulo 7912da rede e o módulo 7914 da exposição) é toda executada nosoftware executável em um de diversos sistemas deexploração de computador, incluindo sem limitação a famíliade Windows de sistemas de exploração (MicrosoftCorporation), a família do MacOS de sistemas de exploração(Apple Computer, Inc., Cupertino, Califórnia), e desistemas de exploração baseados no Unix (por exemplo,solaris, Sun Microsystems, Sunnyvale, CA). Em outrasmodalidades, uns ou vários módulos ou processos sãoexecutados na ferragem como circuitos integradoscaracterísticos da aplicação (ASICs), dispositivos somenteda memória lida (ROM) , ou outros circuitos digitais daferragem. Terminação involuntária das sessões 7918 daaplicação resultando das conexões de rede imperfeitas e dousuários a falha terminar suas sessões 7918 da aplicaçãoelas mesmas pode conduzir às dificuldades do usuário. Umamodalidade da invenção limita estas dificuldadesdiferenciando a desconexão (que é tratada como se o usuárionão é funcionamento feito com uma sessão 7918 da aplicação)da terminação (que é supor para ser uma extremidadeintencional à sessão da aplicação) e correlacionando assessões 7918 da aplicação com os usuários ao contrário dasmáquinas de cliente. Quando um usuário é terminado usandouma aplicação 7916 que se opera em uma sessão 7918 daaplicação, o usuário pode terminar uma sessão 7918 daaplicação. A terminação envolve geralmente a entradaafirmativa do usuário que indica que o usuário deve já nãomanter a sessão 7918 da aplicação. Tal entrada afirmativado usuário pode incluir a selecção de um " Exit" opção deum menu, estalando em um ícone, etc. em resposta aoprocesso de usuário 7922 que recebe um pedido determinação, na execução da sessão 7918 da aplicação e emalguma aplicação 7916 dentro daquele a sessão 7918 daaplicação é parada. Em uma modalidade, os dados relativos àsessão 7918 da aplicação são removidos igualmente da loja7926 dos dados. A desconexão, intencional ou involuntária,de um lado, não conduz à terminação das sessões 7918 daaplicação. Desde que a aplicação ou as aplicações que seoperam em uma sessão 7 918 da aplicação estão executando namáquina remota 30, uma conexão à primeira máquina decliente 10 não é geralmente necessária para continuar aexecução da aplicação 7916, e em uma modalidade a aplicação7916 pode continuar a executar ao esperar o usuário paraconectar. Em uma modalidade alternativa, em cima dadesconexão de um usuário, o processo de usuário 7922 para aexecução da aplicação 7916 que opera-se na sessão 7918 daaplicação. Isto é, o processo de usuário 7922 para umaexecução mais adicional da aplicação 7916, e as lojas doprocesso de usuário 7922 o estado operacional da aplicação7916 e de alguns dados que a aplicação 7916 processar. Emuma modalidade mais adicional, o processo de usuário 7922pode seletivamente parar a execução da aplicação específica7916 depois que disconexões de um usuário. Por exemplo, emuma modalidade, o usuário continua a execução de um pedido7916 por um período de tempo fixo, e se um usuário nãoconecta dentro desse período de tempo, o processo deusuário 7922 para a aplicação 7916. Em uma outramodalidade, o usuário para as sessões especific 7918 daaplicação que não podem continuar a executar sem entrada dousuário. Em cada um das modalidades descritas acima, se ousuário das primeiras disconexões da máquina de cliente 10da máquina remota 30 e conecta então à máquina remota 30 aooperar a primeira máquina de cliente 10, a segunda máquinade cliente 10, ou um terceiro computador do cliente, oprocesso de usuário 7922 pode conectar o cliente pelocomputador pelo usuário a uns ou vários iniciadospreviamente, às sessões não-terminadas 118 da aplicaçãoassociadas com o usuário, e reinitiate a execução de toda aaplicação parada 7916. Em uma modalidade, o processo deusuário 7922 detecta uma desconexão. Um usuário podeintencionalmente e manualmente instruir o usuário paradesconectar uma sessão 7918 da aplicação da máquina decliente 10 de que o usuário se está comunicando. Porexemplo, em uma modalidade, as sessões 7918 da aplicaçãofornecem uma opção do menu para a desconexão (comodistinguido da terminação acima) que um usuário podeselecionar. O processo de usuário 7922 pode igualmentedetectar uma desconexão involuntária. Por exemplo, em umamodalidade, o módulo 7920 da rede da máquina remota 30informa o processo de usuário 7922 quando um númeropredeterminado de pacotes de dados transmitidos pelo módulo7920 da rede a uma máquina de cliente 10 não foireconhecido pela máquina de cliente 10. Em uma outramodalidade, a máquina de cliente 10 transmiteperiodicamente um sinal à máquina remota 30 confirmar queuma conexão é ainda intata. Se o processo de usuário 7922detecta que um número predeterminado de sinais previstos daconfirmação de uma máquina de cliente 10 não chegou, oprocesso de usuário 7922 determina que a máquina de cliente10 desconectou. Se o processo de usuário 7922 detecta queum usuário desconectou de uma sessão 7918 da aplicação,intencionalmente, ou involuntariamente, a entrada na loja7926 dos dados relativa à sessão disconnected 7918 daaplicação é modificada para refletir a desconexão.Referindo igualmente FIG. 80, um método 8000 de fornecer oacesso remoto a uma sessão da aplicação, em uma modalidade,começa com o módulo 7920 da rede da informação deautenticação de recepção da máquina remota 30 associada comum usuário (etapa 8002) . A informação de autenticação podeincluir um número de tipos de informação de autenticação,incluindo sem nomes de usuário da limitação, nomes docliente, endereços do cliente, senhas, pinos, amostras davoz, passcodes one-time, dados biométricos, os certificadosdigitais, os bilhetes, etc. e as combinações disso. Ainformação de autenticação podia ser sob a forma de umpedido de início de uma sessão de um usuário. Como descritoacima, um pedido de início de uma sessão pode ser iniciadopor um usuário através do módulo de entrada 7908 de umamáquina de cliente 10. O client' o módulo da rede de senvia o pedido ao processo de usuário 7922. Em umamodalidade, em cima de receber o pedido, o processo deusuário 7922 envia usuário-forneceu a informação deautenticação ao módulo 7930 da autenticação, que autenticaa identidade do usuário. O server' o módulo 7930 daautenticação de s pode executar a autenticação própria e/ouem colaboração com outro um ou módulo ou computador, taiscomo um usuário de domínio, um serviço de autenticação,resultados bem sucedidos da autenticação etc. na informaçãotransmissora da identificação do módulo da autenticaçãopara o usuário (por exemplo, um username ou umaidentificação) ao processo de usuário 7922.
Em resposta à recepção a informação de autenticaçãoassociou com o usuário que o processo de usuário 7922identifica todas as sessões disconnected 7918 da aplicaçãoassociou com o usuário que executarem, parou na máquinaremota 30, ou suspendeu ao disco (etapa 8004) . Em umamodalidade, o processo de usuário 7922 identificam assessões 7918 da aplicação em cima de receber a informaçãode autenticação. Em uma outra modalidade, o processo deusuário identifica as aplicações em resposta a receber ainformação de autenticação depois que o módulo 793 0 daautenticação verific do usuário identidade de s. Em umamodalidade, o processo de usuário 7922 determina se umassessões disconnected 7918 da aplicação existem consultandoa loja 7926 dos dados para sessões, que é algumasmodalidades é uma loja dos dados persistentes, relativa aousuário. Por exemplo, a sessão disconnected 7918 daaplicação poderia ter sido desconectada pelo sentido dousuário da sessão 7918 da aplicação, tendo por resultado oprocesso de usuário 7922 que desconecta a sessão 7918 daaplicação, por exemplo, modificando o status da sessão 7918da aplicação na loja 7926 dos dados ao " disconnected, " esuprimindo da identificação da máquina de cliente conectada10 nos dados armazene a entrada 7926 para a sessão 7918 daaplicação. Em uma outra modalidade, a desconexão erainvoluntária. Resultados involuntários da desconexão noprocesso de usuário 7922 que faz as mesmas modificações àloja 7926 dos dados como seria feito em conseqüência de umadesconexão intencional. Em cima de identificar todas assessões disconnected 7918 da aplicação (etapa 8004), em umamodalidade, o processo de usuário 7922 alerta o usuárioindicar se a conexão está desejada. Se a conexão não édesejada, o processo de usuário 7922 alerta o usuárioindicar se as sessões disconnected 7918 das aplicaçõesdevem permanecer disconnected, ou se as sessões 7918 daaplicação devem ser suspendidas ao disco, ser pausadas, outerminado. Em uma modalidade alternativa, o processo deusuário 7922 consulta uma régua armazenada na fonte dasréguas 7928 para determinar se a conexão e/ou a conexãoestão permitidas e/ou exigidas. Em uma modalidadealternativa, o usuário conecta à máquina remota 30, aoprocesso de usuário 7922, e a todas as sessões disconnectedda aplicação utilizando um único elemento da interface deutilizador, por exemplo estalando um ícone etiquetado "Log-on." Nesta modalidade, ativar a única interface deutilizador conectará automaticamente o usuário a todas assessões disconnected 7918 das aplicações. Em umamodalidade, o cliente pode ser configurado para emitirautomaticamente a informação de autenticação em cima de talconexão do usuário. Se a conexão é permitida, e é aprovadapelo usuário ou é automática, o processo de usuário 7922conecta o usuário às sessões disconnected da aplicação(etapa 8006). Em uma modalidade, a conexão inclui aalteração da entrada na loja 7 92 6 dos dados para indicarque o usuário está conectado à sessão 7918 da aplicação epara indicar de que máquina de cliente 10 o usuário éconectado ao usuário. Em cima da conexão, a máquina remota30 recomeça dados de saída transmissores da aplicação dotransmissor 7924 da saída da aplicação ao cliente 10 (etapa8 008) . Em uma outra modalidade, o transmissor da saída daaplicação consulta a fonte 7928 das réguas antes quecomeçar transmitindo a saída da aplicação para assegurartal transmissão esteja permitido. As sessões da aplicaçãosão associadas primeiramente com os usuários em vez damáquina de cliente 10 de que o usuário era operar quando ousuário tinha conectado previamente a, (e entãodesconectado) o usuário. Em conseqüência, as réguaspermitindo, o usuário podem reconectar a uma sessão 7918 daaplicação do primeira máquina de cliente 10, o segundocomputador do cliente da máquina de cliente 10, ou algumoutro. Em outras modalidades, o usuário da máquina decliente 10 pode ser dado umas opções mais adicionais, taiscomo o " reconecte a todas as sessões que não executam emuma máquina virtual, " suspenda todas as sessões queexecutam em uma máquina virtual, " " reconecte todas assessões hospedadas atualmente, " ou " reconecte a toda asessão não suspendida, " por exemplo. Está referindo FIG.81, mesmo se uma sessão não é disconnected (isto é, ativo)pode ser útil transferir a sessão de um cliente a outro.Por exemplo, pode-se ser que uma sessão da aplicação sejadisconnected, mas o usuário não detectou ainda adesconexão. Pode-se ser que o usuário deixe deliberadamenteum corredor da sessão, mas gostaria agora de alcançar asessão de uma outra posição. Um método 8100 para transferiras sessões 7918 da aplicação ativa de uma primeira máquinade cliente 10 a uma segunda máquina de cliente 10 começatipicamente com a informação de autenticação de recepção domódulo 7920 da rede de um usuário, por exemplo sob a formade um pedido de início de uma sessão. Em uma modalidade, ousuário submete a informação de autenticação através domódulo de entrada 7908. A informação de autenticação podeser transmitida pelo módulo 7912 da rede da segunda máquinade cliente 10 à máquina remota 30. O módulo 7920 da rede damáquina remota 30 pode enviar o pedido ao processo deusuário 7922. O processo de usuário 7922 recebe usuário-forneceu a informação de autenticação (etapa 8102). Em umamodalidade, o processo de usuário 7922 envia usuário-forneceu a informação de autenticação a um módulo 7930 daautenticação, que autentique a identidade do usuário que seusa, por exemplo, alguma da variedade de técnicas daautenticação descritas acima. Resultados bem sucedidos daautenticação no módulo da autenticação que transmite porexemplo, informação da identificação para o usuário aoprocesso de usuário 7922. Após ter recebido a informação deautenticação (etapa 8102), o processo de usuário consulta aloja 7926 dos dados para identificar todas as sessões 7918da aplicação ativa que são associadas com o usuário, masque forem conectados a um computador diferente do cliente,tal como a primeira máquina de cliente 10 como um exemploilustrativo (etapa 8104). Em uma modalidade, se o processode usuário 7922 identifica umas sessões 7918 da aplicaçãoativa, o processo de usuário desconecta automaticamente assessões 118 da aplicação da primeira máquina de cliente 10(etapa 8106) e conecta as sessões 118 da aplicação àmáquina de cliente atual 10 (etapa 8108). Em umamodalidade, o usuário pode provocar a consulta automáticada loja dos dados e a conexão subseqüente com a seleção deum único elemento da interface de utilizador.
Em uma modalidade alternativa, o processo de usuário7922 alerta o usuário se o usuário quer ter as sessões 118da aplicação ativa conectadas à máquina de cliente atual10. Se o usuário declina transferir umas ou várias dassessões da aplicação ativa, o processo de usuário 7922alerta o usuário ao sustento o active das sessões 118 daaplicação, suspende a sessão da aplicação ao disco, pausa asessão da aplicação, ou para terminar as sessões 118 daaplicação. Em uma modalidade alternativa, o processo deusuário 7922 consulta uma régua armazenada na fonte 7928das réguas para determinar se transferência das sessões 118da aplicação ativa está permitida antes de transferir assessões 118 da aplicação ativa. Se transferência dassessões 118 da aplicação é permitida e transferência éautomática ou pedida pelo usuário, em uma modalidade oprocesso de usuário 7922 realiza a desconexão (etapa 8106)e a conexão (etapa 8108) modificando a entrada mantida naloja 7926 dos dados para a sessão 7918 da aplicação parasubstituir a identidade da máquina de cliente armazenada 10com a identidade do computador atual do cliente, isto é amáquina de cliente 10. em cima da conexão com a máquina decliente atual 10, o transmissor 7924 da saída da aplicaçãocomeça a aplicação transmissora output ao computador atual(etapa 8110). Em uma outra modalidade, o transmissor dasaída da aplicação consulta a fonte 7928 das réguas antesque começar transmitindo a saída da aplicação paraassegurar tal transmissão esteja permitido. Deve sercompreendido que os métodos de FIG. 80 e de FIG. 81 podemser combinados para permitir que um cliente estejaconectado a disconnected, suspendido, pausado, e sessõesativas ser associado com um usuário. Além, antes detransferência ou do reconexão, as sessões ativas e/oudisconnected poderiam ter sido conectadas ao mesmos ou adiversas máquinas de cliente diferentes. Referindo FIG. 82,como mencionados acima, a máquina remota 3 0 pode serexecutada como uma exploração agrícola 3 8 da máquina. Emuma modalidade, a exploração agrícola 3 8 da máquina incluidiversas máquinas remotas 30, 30' , e 30" , que são Iigjunto e que sãas comum. Diversas máquinas de cliente 10,10' , e 10" (tipicamente muitos computadores) podidoconectar ã exploração agrícola 3 8 da máquina sobre uma rede150. Os usuários 30, 30' , e 30" compartilhe da cargacomputacional põr sobre a exploração agrícola 3 8 damáquina. Por exemplo, se um usuário está alcançando trêssessões 8218a da aplicação, 8218b, e 8218c, cada sessão daaplicação pode executar em um usuário diferente 30, 30' ,ou 30". Similarmente, se o usuário está alcançando dois oumais aplicações 7916 com uma única sessão 8218a, 8218b ou8218c da aplicação, o processo de usuário 7922 daexploração agrícola 3 8 da máquina pode atribuir umaaplicação para executar em um usuário 30 e em uma outraaplicação a executar no usuário 30'. Em uma configuração daexploração agrícola da máquina, nos módulos do usuário 120,122, e 124, os dados armazenam 7926, e a fonte 7928 dasréguas (Fig.l), pode ser armazenada em um único usuário 30,30' ou 30" , ou pode ser distribuído entre os usuários 30,30' , e 30". No que diz respeito à conexão à exploraçãoagrícola 3 8 da máquina após uma desconexão ou após termudado as máquinas de cliente 10, 10' e 10" semdesconectar, o processo de usuário 7922 trata os usuários30, 30' , e 30" como um único usuário. Isto é, se umaexploração agrícola da máquina está executando um usuáriosessões 8218a, 8218b, e 8218c da aplicação de s nosusuários separados 30, 30' , e30" , eas disconexões dousuário da máquina cultivam 3 8 ou mudanças o computador 10do cliente, 10' , ou 10" em quais o usuário estátrabalhando, em cima subseqüentemente da conexão àexploração agrícola 38 da máquina, o processo de usuário7922 da exploração agrícola 38 da máquina podeautomaticamente conectar o usuário computador 10 do clientede s, 10' , ou 10" com todas as três sessões 8218a daaplicação, 8218b, e 8218c que executa em todos os trêsseparam 30, 30' , e 30". Em uma modalidade do sistema, umusuário de um primeiro computador 10 do cliente, que nesteexemplo seja um computador handheld móvel, entra àexploração agrícola 3 8 da máquina através de um modem semfio e pede duas sessões 8218a e 8218b da aplicação. 0processo de usuário 7922 da exploração agrícola 38 damáquina lança uma primeira sessão 8218a da aplicação em umprimeiro usuário 30 e em uma segunda sessão da aplicação emum segundo usuário 30'. 0 modem sem fio perde sua conexãocom a exploração agrícola da máquina quando o usuário doprimeiro computador 10 entra em um elevador. O processo deusuário 7922 da exploração agrícola 38 da máquina determinaque o usuário é disconnected, e o processo de usuário 7922actualiza a loja 7926 dos dados conformemente. O usuárioentra então à exploração agrícola 3 8 da máquina de umsegundo computador 10' do cliente; , que neste exemplo é umcomputador de secretária em seu escritório. O processo deusuário 7922 consulta a loja 7926 dos dados e determina quedois desconectaram as sessões 8218a da aplicação e 8218bestão associados com o usuário. O processo de usuário 7922(que não supor nenhuma régua pelo contrário) conectaautomaticamente o segundo computador 10' do cliente; àssessões 8218a da aplicação e ao 8218b que executa nosusuários 30 e 30' , respectivamente. O usuário deixa entãoo segundo computador 10' do cliente; sem desconectar daexploração agrícola 38 da máquina e entra à exploraçãoagrícola 38 da máquina de um terceiro computador 10" docliente; por exemplo um colleague' portátil de s. Em cimada abertura do terceiro computador 10" do cliente; oprocesso de usuário consulta a loja 7926 dos dados edetermina que o usuário está associado com as duas sessões8218a e 8218b da aplicação ativa conectados ao segundocomputador 10' do cliente. O processo de usuário 7922 (quenão supor nenhuma régua pelo contrário) então desconectaautomaticamente ambas as sessões 8218a e 8218b da aplicaçãodo segundo computador 10' do cliente; , e conecta ambas assessões 8218a e 8218b da aplicação ao terceiro computador10" do cliente;. O usuário em seguida seleciona uma opçãoda disconexão para cada sessão 8218a e 8218b da aplicação.O processo de usuário 7922 actualiza a loja 7926 dos dadospara indicar que as sessões .8218a e 8218b da aplicaçãoestiveram desconectadas. 0 usuário entra então à exploraçãoagrícola 3 8 da máquina do segundo computador 10' docliente;. O processo de usuário 7922 consulta a loja 7926dos dados e determina que dois desconectaram as sessões8218a da aplicação e 8218b estão associados com o usuário.
O processo de usuário 7922 (que não supor nenhuma réguapelo contrário) conecta automaticamente as sessõesdisconnected 8218a e 8218b da aplicação ao segundocomputador 10' do cliente;. Referindo agora FIG. 83, umdiagrama de fluxo descreve uma modalidade das etapasrecolhidas um método para fornecer o acesso remoto a umambiente de computação fornecido por um sistema deexploração virtualizado. Na breve vista geral, a informaçãode autenticação associada com um usuário de uma máquina decliente 10 é recebida (etapa 8302). Baseado na informaçãode autenticação recebida, um ambiente de computaçãoforneceu por um sistema de exploração virtualizado e jáassociou com o usuário é identificado (etapa 8304). Umaconexão é estabelecida entre a máquina de cliente 10 e oambiente de computação identificado (etapa 83 06). Emalgumas modalidades os métodos e os sistemas descritosacima em relação aos figos. 79-82 pode ser executado nossistemas incluir máquinas virtuais. Em algumas modalidades,a máquina de cliente 10 estabeleceu uma conexão a umamáquina física que fornece o acesso a um recurso pedidopela máquina de cliente 10. Nesta modalidade, a máquina decliente 10 pode ser conectado a uma sessão disconnected daaplicação e receba a aplicação output como descrita acimaem relação aos figos. 79-82.
Em outras modalidades, a máquina de cliente 10estabeleceu uma conexão a uma máquina virtual que fornece oacesso a um recurso. Em uma destas modalidades, a máquinade cliente 10 pode ser reconectada a uma sessão daaplicação que executa na máquina virtual. Em outras destasmodalidades, a máquina de cliente 10 pode ser reconectada auma pluralidade de sessões da aplicação que executam dentrode um ambiente de computação fornecido por uma máquinavirtual. Em ainda outras destas modalidades, a máquina decliente 10 podem ser reconectadas a uma sessão da aplicaçãoque compreende uma pluralidade dos programas de aplicaçãoque executam dentro de um ambiente de computação fornecidopor uma máquina virtual. Contudo outras destas modalidades,a máquina de cliente 10 podem ser reconectadas a uma sessãoda aplicação que compreende uma pluralidade dos ambientesde computação fornecidos por uma máquina virtual.
Consultando ainda a FIG. 83, e no maior detalhe, ainformação de autenticação associada com um usuário de umamáquina de cliente 10 é recebida (etapa 8302). Em umamodalidade, responsiva à informação de autenticaçãorecebida, um agente de coleção recolhe a informação sobre amáquina de cliente 10. Em algumas modalidades, o usuário damáquina de cliente 10 é responsivo autenticado à informaçãode autenticação recebida. Baseado na informação deautenticação recebida, um ambiente de computação forneceupor um sistema de exploração virtualizado e já associou como usuário é identificado (etapa 8304). Em algumasmodalidades, a autenticação a informação inclui uma decisãodo controlo de acessos, gerada como descrita acima emrelação aos figos. 7A e 7B. Como descrito acima, umamáquina de cliente 10 pede o acesso a um recurso, um agentede coleção recolhe a informação sobre a máquina de cliente10, e um motor da política faz uma decisão do controlo deacessos. Em uma destas modalidades, a identificação doambiente de computação já associado com o usuário é feitaem resposta à informação de autenticação recebida. Emoutras destas modalidades, uma conexão é estabelecida entrea máquina de cliente 10 e o ambiente de computaçãoidentificado. Em ainda outras destas modalidades, umamáquina remota 30, actuando como um usuário intermediário,recebem a informação de autenticação que inclui a decisãodo controlo de acessos, e estabelecem uma conexão entre amáquina de cliente 10 e uma máquina remota 30' , actuandocomo uma máquina da execução que fornece o usuário damáquina de cliente 10 o acesso ao recurso pedido. Em umamodalidade, baseada na informação de autenticação recebidae na informação recolhida da máquina de cliente, umambiente de computação forneceu por um sistema deexploração virtualizado e já associou com o usuário éidentificado. Em uma outra modalidade, os dados armazenadosassociados com o um ambiente de computação são consultadospelo menos para identificar, baseado na informação deautenticação recebida, em um ambiente de computaçãofornecidos por um sistema de exploração virtualizado e jáassociados com o usuário. Em ainda uma outra modalidade,baseada na informação de autenticação recebida, umaidentificação é feita de um primeiro ambiente de computaçãofornecido por um primeiro sistema de exploraçãovirtualizado e de um segundo ambiente de computaçãofornecido por um segundo sistema de exploraçãovirtualizado, os primeiros e segundos ambientes decomputação já associaram com o usuário. Em contudo umaoutra modalidade, baseada na informação de autenticaçãorecebida, uma identificação é feita de um primeiro ambientede computação fornecido por um primeiro sistema deexploração virtualizado que executa em um primeiro usuárioe de um segundo ambiente de computação fornecido por umsegundo sistema de exploração virtualizado que executam emum segundo usuário, dos primeiros e segundos ambientes decomputação já associado com o usuário Uma conexão éestabelecida entre a máquina de cliente 10 e o ambiente decomputação identificado (etapa 8306). Em uma modalidade, aconexão é estabelecida entre a máquina de cliente 10 e oassunto de computação identificado do ambiente a uma régua.
Em uma outra modalidade, uma conexão é estabelecida entre amáquina de cliente 10 e o assunto de computaçãoidentificado do ambiente a uma política aplicada àinformação de autenticação recebida e à informaçãorecolhida da máquina de cliente. Em algumas modalidades, umpedido é recebido desconectar a máquina de cliente doambiente de computação identificado. Em uma destasmodalidades, a conexão entre a máquina de cliente e oambiente de computação identificado é terminada. Em outrasdestas modalidades, um registro de dados associado com oambiente de computação identificado é atualizado indicarque a máquina de cliente é disconnected. Em ainda outrasdestas modalidades, uma execução do ambiente de computaçãoidentificado são continuadas. A execução pode continuarembora o cliente seja disconnected do ambiente decomputação identificado. Em algumas modalidades, ainformação de autenticação associada com o usuário érecebida. Em uma destas modalidades, o usuário usa umasegunda máquina de cliente 101. Em outras destasmodalidades, uma identificação é feita, baseado nainformação de autenticação recebida de um ambiente decomputação fornecido por um sistema de exploraçãovirtualizado e já associado com o usuário. Em ainda outrasdestas modalidades, uma conexão são estabelecidas entre asegunda máquina de cliente 10' e o ambiente de computaçãoidentificado. Contudo outro destas modalidades, da conexãoentre a primeira máquina de cliente 10 e do ambiente decomputação identificado é terminado. Referindo agora FIG.84, um diagrama de fluxo descreve uma modalidade das etapasrecolhidas um método para fornecer o acesso remoto a umapluralidade de sessões da aplicação. Na breve vista geral,uma seleção de um único elemento da interface de utilizadorpor um usuário de uma máquina de cliente 10 é recebida namáquina de cliente 10 (etapa 8410). Em resposta à seleçãodo elemento da interface de utilizador, a informação deautenticação associada com o usuário é transmitida (etapa8412). Baseado na informação de autenticação transmitida,um ambiente de computação forneceu por um sistema deexploração virtualizado e já associou com o usuário éidentificado (etapa 8414). Uma conexão é estabelecida entrea máquina de cliente e o ambiente de computaçãoidentificado (etapa 8416). Uma seleção de um único elementoda interface de utilizador por um usuário de uma máquina decliente 10 é recebida na máquina de cliente 10 (etapa8410). Em resposta à seleção do elemento da interface deutilizador, a informação de autenticação associada com ousuário é transmitida (etapa 8412). Em uma modalidade, umagente de coleção recolhe informação sobre a máquina decliente em resposta à informação recebida. Em uma outramodalidade, um motor da política faz uma decisão docontrolo de acessos responsiva à informação recolhida, comodescrito acima em relação ao FIGO. 7A e FIGO. 7B. Emalgumas modalidades, baseadas na informação de autenticaçãorecebida e na informação recolhida da máquina de cliente,uma identificação é feita de um ambiente de computaçãofornecido por um sistema de exploração virtualizado e jáassociado com o usuário. Em outras modalidades, o usuário éresponsivo autenticado à informação de autenticaçãorecebida.
Baseado na informação de autenticação transmitida, umambiente de computação forneceu por um sistema deexploração virtualizado e já associou com o usuário éidentificado (etapa 8414). Em uma modalidade, uma conexão éestabelecida entre a máquina de cliente e o assunto decomputação identificado do ambiente a uma régua aplicada àinformação de autenticação recebida e à informaçãorecolhida da máquina de cliente. Em uma outra modalidade,baseada na identificação recebida, uma identificação éfeita de um primeiro ambiente de computação fornecido porum primeiro sistema de exploração virtualizado e de umsegundo ambiente de computação fornecido por um segundosistema de exploração virtualizado, dos primeiros esegundos ambientes de computação já associado com ousuário. Em ainda uma outra modalidade, baseada nainformação de autenticação recebida, uma identificação éfeita de um primeiro ambiente de computação fornecido porum primeiro sistema de exploração virtualizado que executaem um primeiro usuário e de um segundo ambiente decomputação fornecido por um segundo sistema de exploraçãovirtualizado que executam em um segundo usuário, dosprimeiros e segundos ambientes de computação já associadocom o usuário. Em algumas modalidades, os dados armazenadosassociados com o um ambiente de computação são consultadospelo menos para identificar, baseado na informação deautenticação recebida, em um ambiente de computaçãofornecidos por um sistema de exploração virtualizado e jáassociados com o usuário. Uma conexão é estabelecida entrea máquina de cliente e o ambiente de computaçãoidentificado (etapa 8416). Em uma modalidade, a conexãoentre a máquina de cliente e o ambiente de computaçãoidentificado é feita sujeita a uma régua. Em algumasmodalidades, a informação de autenticação associada com amáquina de cliente 10 é recebida que inclui uma decisão docontrolo de acessos, gerada como descrita acima em relaçãoaos figos. 7A e 7B. Em uma destas modalidades, aidentificação do ambiente de computação já associado com ousuário é feita em resposta à informação de autenticaçãorecebida. Em outras destas modalidades, uma máquina remota30, actuando como um usuário intermediário do corretor,recebe a informação de autenticação que inclui a decisão docontrolo de acessos, e estabelece uma conexão entre amáquina de cliente 10 e uma máquina remota 30' , actuandocomo uma máquina da execução que fornece o usuário damáquina de cliente 10 o acesso ao recurso pedido. Emalgumas modalidades, um pedido é recebido desconectar amáquina de cliente do ambiente de computação identificado.
Em uma destas modalidades, a conexão entre a máquina decliente e o ambiente de computação identificado éterminada. Em outras destas modalidades, um registro dedados associado com o ambiente de computação identificado éatualizado indicar que a máquina de cliente é disconnected.
Em ainda outra destes as modalidades, execução do ambientede computação identificado são continuadas. A execução podecontinuar embora o usuário termine a conexão entre amáquina de cliente e o ambiente de computação identificado.
Em algumas modalidades, a informação de autenticaçãoassociada com o usuário é recebida, o usuário que usa umasegunda máquina de cliente 10'. Em uma destas modalidades,baseado na informação de autenticação recebida, umaidentificação é feita de um ambiente de computaçãofornecido por um sistema de exploração virtualizado e jáassociado com o usuário. Em outras destas modalidades, umaconexão é estabelecida entre a segunda máquina de cliente10' e o ambiente de computação identificado. Contudo outrodestas modalidades, de uma conexão entre a primeira máquinade cliente 10 e do ambiente de computação identificado éterminado. Referindo agora FIG. 85, um diagrama de blocodescreve uma modalidade de um usuário para fornecer oacesso remoto a um ambiente de computação. Na breve vistageral, uma máquina remota 3 0 é um usuário e inclui ummódulo 7920 da rede, uma loja 7926 dos dados, e um processo8532 do corretor. Em algumas modalidades, na máquina remota30 os componentes, nos módulos e nos subsistemas descritosacima em relação a FIG. 79. 0 módulo 7920 da rede recebe ainformação de autenticação associada com um usuário queopera uma máquina de cliente, tal como a máquina de cliente10. Em algumas modalidades, o módulo 7920 da rede está emuma comunicação com um módulo da autenticação paraautenticar o usuário em resposta ao recebido informação deautenticação. Em outras modalidades, o módulo 7920 da redeinclui o módulo da autenticação. A loja 7926 dos dadoscontem um identificador de um ambiente de computaçãoassociado com o usuário. Em uma modalidade, a loja 7926 dosdados contem um primeiro identificador de um primeiroambiente de computação associado com o usuário e um segundoidentificador de um segundo ambiente de computaçãoassociado com o usuário. Em uma outra modalidade o primeiroambiente de computação executa em uma primeira máquinaremota 3 0 e o segundo ambiente de computação executa em umasegunda máquina remota 30'. Em algumas destas modalidades,o processo 8532 do corretor transmite a enumeração da lojados dados à máquina de cliente 10. 0 processo 8532 docorretor conecta a máquina de cliente 10 ao ambiente decomputação identificado enumerado na loja 7926 dos dados,em resposta à informação recebida. Em uma modalidade, oprocesso 8532 do corretor conecta a máquina de cliente 10ao assunto de computação identificado do ambiente a umarégua. Em uma outra modalidade, o processo 8532 do corretordesconecta a máquina de cliente 10 do ambiente decomputação identificado em resposta a um sinal recebido dadisconexão. Em ainda uma outra modalidade, o processo 8532do corretor actualiza um registro de dados associado com oambiente de computação identificado para indicar que amáquina de cliente 10 é disconnected do ambiente decomputação identificado. Em algumas modalidades, a máquinaremota 3 0 inclui um agente de coleção e um motor dapolítica. Em uma destas modalidades, o agente de coleçãorecolhe a informação sobre a máquina de cliente 10. Emoutras destas modalidades, o agente de coleção compreendepelo menos um certificado. Em ainda outra destes asmodalidades, o agente de coleção compreendem o bytecode.Contudo outras destas modalidades, o agente de coleçãorecolhem a informação funcionando pelo menos um certificadona máquina de cliente 10. Em algumas destas modalidades, oagente de coleção executa na máquina de cliente 10. Emoutro destas modalidades, o agente de coleção é transmitidoà máquina de cliente 10. Em uma destas modalidades, o motorda política transmite o agente de coleção à máquina decliente 10. Em algumas destas modalidades, a máquina remota30 inclui um motor da política que recebe a informaçãorecolhida e que atribui uma de uma pluralidade de níveis deacesso responsivos à aplicação de uma política à informaçãorecebida, o processo 8532 do corretor que conecta a máquinade cliente ao ambiente de computação identificado enumeradona loja dos dados responsiva ao nível de acesso atribuído.
Em uma modalidade, o motor da política mais adicionalcompreende uma base de dados que armazena políticasconfiguráveis. Em uma outra modalidade, o motor da políticatransmite instruções ao agente de coleção que determina otipo de informação que o agente de coleção recolhe. Emoutro destas modalidades, o motor da política maisadicional compreende um agente do início de uma sessão. Emuma destas modalidades, o agente do início de uma sessãorecebe a informação recolhida do agente de coleção. Emoutras destas modalidades, o agente do início de uma sessãoidentifica para a informação de autenticação do motor dapolítica recebida do agente de coleção. Em ainda outrasdestas modalidades, o motor da política mais adicionalcompreendem uma pluralidade de agentes do início de umasessão. Contudo outras destas modalidades, pelo menos umada pluralidade de agentes do início de uma sessão reside emcada domínio da rede de que uma máquina de cliente 10 podetransmitir um pedido do recurso. Em algumas modalidades, amáquina de cliente 10 transmite o pedido do recurso a umagente particular do início de uma sessão. Em outrasmodalidades, o agente do início de uma sessão identificapara o motor da política o domínio da rede de que a máquinade cliente transmite o pedido do recurso.
Em algumas modalidades, uma exploração agrícola damáquina virtual fornece a funcionalidade para relocatinguma sessão de uma máquina de pedido a um segundo pedidomáquina. Em uma destas modalidades, a exploração agrícolada máquina virtual fornece o acesso à informação exigidarelocating uma sessão. Em outra destes as modalidades, umhypervisor fornecem a funcionalidade relocating uma máquinavirtual sessão. Em algumas modalidades, o hypervisorexecuta conhecido técnicas, incluindo o pre-copi, o borne-copi, e o preguiçoso-copi para mover-se a informação desessão associou com uma sessão da máquina virtual de umamáquina da execução a uma segunda máquina da execução. Emalgumas modalidades, a exploração agrícola da máquinavirtual está em uma comunicação com um sistema comodescrito em FIG. 86 e em FIG. 87, e fornece afuncionalidade para internamento de uma sessão da aplicaçãodentro de uma sessão da máquina virtual. Referindo FIG. 86,uma modalidade de uma rede construída dentro o acordo com ainvenção é descrito, que inclui uma máquina de cliente 10,a agente de coleção 704, um motor 706 da política, uma basede dados 708 da política, uma circunstância base de dados710, uma máquina de cliente 10' , um usuário 8620 dasessão, uma aplicação armazenada base de dados 8622, umamáquina remota 30' , uma primeira base de dados 8628, umamáquina remota 30" , e uma segunda base de dados 8 632. Nabreve vista geral, quando a máquina de cliente 10 transmiteao motor 706 da política um pedido 206 para o acesso a umaaplicação o programa, o agente de coleção 704 comunica-secom a máquina de cliente 10, recupera-se a informação sobrea máquina de cliente 10, e transmite-se a máquina decliente informação 714 ao motor 706 da política. O motor706 da política faz decisão do controlo de acessos, comodiscutido acima no FIGO. 7A e FIGO. 7B. O cliente a máquina10 recebe uma enumeração das aplicações disponíveisassociadas com a máquina de cliente 10. Em algumasmodalidades, o usuário 8620 da sessão estabelece umaconexão entre a máquina de cliente 10 e uma pluralidade desessões da aplicação associou com a máquina de cliente 10.Em uma destas modalidades, a conexão é estabelecido a umamáquina virtual que fornece o acesso a um ambiente decomputação dentro qual as sessões da aplicação executam. Emoutras modalidades, a política o motor 706 determina que amáquina de cliente 10 tem a autorização recuperar umapluralidade de limas de aplicação que compreendem aaplicação e executar programa de aplicação localmente. Emuma destas modalidades, a máquina remota 30' dados desessão da aplicação das lojas e uma pluralidade de limas deaplicação que compreendem o programa de aplicação. Emoutras destas modalidades, a máquina de cliente 10estabelece uma aplicação que flui a sessão com uma máquinaremota 30' armazenagem os dados de sessão da aplicação e apluralidade de inclusão das limas de aplicação programa deaplicação. Referindo agora FIG. 87, um diagrama de fluxodescreve uma modalidade do etapas tomadas pelo usuário 8620da sessão para fornecer o acesso para a máquina de cliente10 a suas sessões associadas da aplicação. O usuário 8620da sessão recebe informação sobre a máquina de cliente 10da contenção do motor 706 da política decisão que docontrolo de acessos o motor 706 da política fêz (etapa8780). Em um a modalidade, a informação igualmente inclui ainformação 714 da máquina de cliente. Em uma outramodalidade, a informação inclui a autorização executarprograma de aplicação localmente. Em ainda uma outramodalidade, a informação inclui autorização fornecer oacesso ao ambiente de computação em que o programa deaplicação executa. Em algumas modalidades, o motor 706 dapolítica identifica uma pluralidade de sessões da aplicaçãojá associadas com a máquina de cliente 10. Em outro asmodalidades, o usuário 8620 da sessão identificam sessõesarmazenadas da aplicação associado com a máquina de cliente10 (etapa 8782) . Em alguma destes as modalidades, o usuário8620 da sessão identificam automaticamente armazenadosessões da aplicação em cima de receber a informação domotor 706 da política. Em uma modalidade, a base de dadosarmazenada 8622 da aplicação reside na sessão usuário 8620.
Em uma outra modalidade, a base de dados armazenada 8622 daaplicação reside no motor 706 da política. A base de dadosarmazenada 8622 da aplicação contem os dados associados como a pluralidade das máquinas 30 nas sessões da aplicação daexecução da exploração agrícola 38 da máquina ou fornecendoo acesso aos dados de sessão da aplicação e as limas deaplicação que compreendem programas de aplicação, oufornecimento do acesso aos ambientes de computação em queas sessões da aplicação podem executar, incluindo asmáquinas virtuais que podem ser ativo, suspendido, pausadoou desconectado. Em algumas modalidades, identificando assessões da aplicação associadas com a máquina de cliente 10exigem dados armazenados de consulta associados com umas ouvárias máquinas 30. Em algum de estas modalidades, ousuário 8620 da sessão consultam os dados armazenadosassociados com umas ou várias máquinas 30. Em outro destasmodalidades, a política o motor 706 consulta os dadosarmazenados associados com umas ou várias máquinas 30. Emalgumas modalidades, uma primeira sessão da aplicaçãofunciona em uma máquina remota 30' e funcionamentossegundos de uma sessão da aplicação em uma máquina remota30". Em outro as modalidades, todas as sessões da aplicaçãofuncionam em uma única máquina remota 3 0 dentro aexploração agrícola 3 8 da máquina. Em ainda outrasmodalidades umas ou várias aplicação as sessões funcionamem uma máquina remota 3 0 que executa um fornecimento damáquina virtual alcance a um ambiente de computação em queas sessões da aplicação executam.
0 usuário 8620 da sessão inclui relativo à informaçãoà aplicação sessões iniciadas por usuários. 0 usuário dasessão pode ser armazenado no volátil ou no non-> memóriatemporária ou, por exemplo, distribuído através dosusuários múltiplos. Tabela 4 mostra os dados incluídos emuma parcela de um usuário ilustrativo 8620 da sessão:Tabela 40 usuário 8620 da sessão na tabela 4 inclui osdados que associam cada um sessão da aplicação com ousuário que iniciou a sessão da aplicação, identificação damáquina de cliente 10, eventualmente, de que o usuário éatualmente conectado à máquina remota 30' , e o IP addressdesse computador do cliente 10. 0 usuário 8620 da sessãoigualmente inclui o status de cada aplicação sessão. Osdados podem incluir uma identificação de uma máquinavirtual que fornece a ambiente de computação em que asessão da aplicação executa. o status da sessão daaplicação pode ser, por exemplo, " active" (significar umusuário é conectado à sessão da aplicação) , ou ao 11disconnected" (significar um usuário não é conectado àsessão da aplicação). Em uma modalidade alternativa, ostatus da sessão da aplicação pode igualmente ser ajustadoao " execução-disconnected" (significado o usuáriodesconectou da sessão da aplicação, mas das aplicaçõesdentro a sessão da aplicação ainda está executando), ou "parado-disconnected" (significado o usuário é disconnectede as aplicações na sessão da aplicação não são a execução,mas seu estado operacional imediatamente antes dadesconexão tem armazenado). 0 usuário 8620 da sessãoarmazena mais a indicação da informação aplicação 7 916 queestá executando dentro de cada sessão e dados da aplicaçãoindicando cada application' processo de s no usuário. Paraas modalidades em que a sessão hypervisor-é baseada, ousuário 8620 da sessão pode armazenar identificação de umdomínio do hypervisor ou de um identificador do exemplo damáquina virtual. Em modalidades em que a máquina remota 30'é a parte da exploração agrícola 3 8 da máquina, o usuário8620 da sessão é pelo menos uma parte da loja dinâmica alémdo que dados nas últimas três fileiras da tabela 4 queidentificam uma máquina remota 30 no faça à máquina aexploração agrícola 3 8 em que cada aplicação is/was queexecuta, e no IP address dessa máquina remota 30. Emmodalidades alternativas, o usuário 8620 da sessão incluium indicador de status para cada aplicação em cada sessãoda aplicação. Por exemplo, no exemplo da tabela 4, trêssessões da aplicação existem, A sessão 1 do App, a sessão 2do App, e a sessão 1 do App da sessão 3. do App sãoassociadas com usuário 1, que está usando atualmente oterminal 1. one1 terminal; o IP address de s é 172.16.2.50.O status da sessão 1 do App é ativo, e na sessão 1 do App,a o programa de processamento da palavra, está sendoexecutado. O programa de processamento da palavra éexecução no usuário A como o usuário A1 do número 1. doprocesso; o IP address de s é 172.16.2.55. A sessão 2 doApp na tabela 1 é um exemplo de um disconnected sessão 7918da aplicação. A sessão 2 do App é associada com o usuário2, mas o App A sessão 2 não é conectada a uma máquina decliente 10 ou 20. A sessão 2 do App inclui um programa dabase de dados que esteja executando no usuário A, no IPaddress 152.16.2.55 como a sessão 3 do App do número 3. doprocesso é um exemplo do como um usuário pode interagir comsessões da aplicação que operam-se nas máquinas remotasdiferentes 30. Sessão 3 do App é associado com o usuário 1,como é a sessão 3 do App da sessão 1. do App inclui aprograma de spreadsheet que está executando no usuário B noIP address 152.16.2.56 como processo número 2, visto que asessão da aplicação incluída na sessão 1 do App é execuçãono usuário A. Embora somente uma sessão 1 do App sejadescrita no a sessão da aplicação, a sessão da aplicaçãopode compreender uma pluralidade da execução recursos,incluindo as sessões da aplicação que executam em ambientesde computação e ambientes de computação que executam em umamáquina virtual. Em um outro exemplo, um usuário podealcançar um primeiro programa de aplicação completamenteuma sessão da aplicação que executa em uma máquina remota30', como o usuário A, ao comunicar-se através de umaaplicação que flui a sessão com um segundo máquina remota30", como o usuário B, para recuperar um segundo programade aplicação da segunda máquina remota 30" para a execuçãolocal. 0 usuário da máquina de cliente 10 pode teradquirido a autorização executar a segunda aplicaçãoprograme localmente ao não satisfazem as condições préviaslocais da execução do primeiro programa de aplicação. Emuma modalidade, o usuário 8 62 0 da sessão é configurado parareceber a o pedido de disconexão desconectar as sessões daaplicação associou com máquina de cliente 10 e disconexõesas sessões da aplicação em resposta ao pedido. 0 usuário8620 da sessão continua a executar uma sessão da aplicaçãoapós ter desconectado a máquina de cliente 10 da sessão daaplicação. Nisto a modalidade, o usuário 8620 da sessãoalcança a base de dados armazenada da aplicação 8622 eactualizações que um registro de dados associou com cadaaplicação disconnected sessão de modo que o registroindique que a sessão da aplicação associou com a máquina decliente 10 é disconnected.
Após ter recebido a informação de autenticaçãoassociada com uma máquina de cliente 10 que conecta à rede,o usuário 8620 da sessão consulta a base de dadosarmazenada 8622 das aplicações para identificar todas assessões da aplicação ativa que são associadas com umusuário da máquina de cliente 10, mas que forem conectadosa uma máquina de cliente diferente 10, tais como a máquinade cliente 10 se a informação de autenticação é associadacom a máquina de cliente 10' , por exemplo. Em umamodalidade, se o usuário 8620 da sessão identifica umassessões da aplicação ativa, o usuário 8620 da sessãodesconecta automaticamente as sessões da aplicação damáquina de cliente 10 e conecta as sessões da aplicação àmáquina de cliente atual 10' (etapa 8784). Em algumasmodalidades, a informação de autenticação recebidarestringirá as sessões da aplicação a que a máquina decliente 10 pode reconectar. Em outras modalidades, ainformação de autenticação recebida autoriza a execução deum programa de aplicação na máquina de cliente 10' , onde aautorização pode ter sido negada à máquina de cliente 10.
Em uma destas modalidades, o usuário 8620 da sessão podefornecer a informação do acesso da máquina de cliente 10para recuperar o programa de aplicação para a segundaexecução. Em ainda outras modalidades, a informação deautenticação recebida autorizam a execução de um programade aplicação em um ambiente de computação fornecido por umamáquina virtual. Referindo agora FIG. 88, um diagrama debloco descreve uma modalidade particular de um sistema parafornecer, por um acesso da máquina virtual a um ambiente decomputação. Um agente 8802 do cliente em uma máquina decliente 10 conecta a uma máquina remota 30. Em algumasmodalidades, o agente 8802 do cliente estabelece umaconexão com um componente 1300 da gerência de sessão. Emoutras modalidades, o componente 13 00 da gerência de sessãoé executado pela máquina remota 30 a que a máquina decliente 10 conecta. Em uma modalidade, o componente 1300 dagerência de sessão pergunta um componente 1200 da gerênciada máquina virtual, para a posição das limas daconfiguração e de disco virtual de uma máquina virtual parafuncionar para o usuário atual e um hypervisor em que amáquina virtual pode executar. Em algumas modalidades, ohypervisor e a máquina virtual identificados executam namáquina remota 30. Em outras modalidades, o hypervisor e amáquina virtual identificados executam em uma máquinaremota 30'. Em uma modalidade, o componente da gerência desessão lança a máquina virtual dentro do hypervisorespecific na modalidade de tela cheia. Em uma outramodalidade, uma máquina virtual da precedente-execução éalocada à máquina de cliente 10. Em algumas modalidades, umcomponente de serviço 8 8 04 da máquina virtual executadentro de um ambiente de computação fornecido por umamáquina virtual em uma máquina remota 30. Em uma destasmodalidades, o componente de serviço 8 8 04 da máquinavirtual recebe um IP address e um porto com que paraestabelecer uma canal de comunicação entre o componente1300 da gerência de sessão e o componente de serviço 8804da máquina virtual. Em uma modalidade, isto a canal decomunicação é usada para passar a informação deconfiguração relativa sessão da sessão do agente do clientena sessão da máquina virtual. Em algumas modalidades, ainformação de configuração inclui os ajustes e as mudançasda exposição, a informação da movimentação do cliente e osdados da autenticação com que para permitir único sign-onpara um usuário da máquina de cliente 10. Em algumasmodalidades, uma vez que a canal de comunicações éestabelecida e a informação relacionada da sessão inicialestá passada ao componente de serviço 8 8 04 da máquinavirtual, o componente de serviço 8804 da máquina virtualconecta automaticamente o usuário a um ambiente decomputação, tal como um sistema de exploração do convidado,usando as mesmas credenciais que foram fornecidos ao agente8802 do cliente pelo usuário (eventualmente). Em uma destasmodalidades, o componente de serviço 8804 da máquinavirtual reconfigura automaticamente os ajustes da exposiçãodo sistema de exploração do convidado para combinar aquelesdo cliente 8802. A máquina virtual produz gráficos e asaída sadia aos dispositivos virtuais que reorientam essasaída, diretamente ou indiretamente, ao agente 8802 docliente na máquina de cliente 10. A máquina virtual recebeos dados áudio do dispositivo da entrada, do rato e doteclado reorientados da máquina de cliente 10. Quando amáquina virtual é parada programada ou suspendeu ocomponente 1300 da gerência de sessão termina a sessão doagente do cliente. Referindo agora FIG. 95, um diagrama debloco descreve uma modalidade de um sistema para fornecer aum primeiro agente do cliente, através de um segundo agentedo cliente em uma primeira máquina remota, os dados desaída gerados por um recurso executando em uma máquinavirtual fornecida por uma segunda máquina remota. Um agente8802 do cliente em uma máquina de cliente 10 conecta a umamáquina remota 3 0 e pede o acesso á recurso. Em umamodalidade, a máquina remota 3 0 é uma máquinaintermediária. Em uma outra modalidade, a máquina remota 30determina fornecer o acesso ao recurso pedido através deuma máquina virtual. Em ainda uma outra modalidade, amáquina remota 30 identifica uma máquina remota 30' parafornecer o acesso ao recurso pedido através de uma máquinavirtual que executa na máquina remota 3 0'. A máquina remota30' pode ser referido como uma máquina 30' da execução;. Emuma modalidade, a máquina de cliente 10 comunica-se com amáquina remota 30 usando um protocolo da camada deapresentação, tal como o AIC, a RDP, o VNC, ou o X11. Emalgumas modalidades, as pilhas do protocolo são executadaspara permitir comunicações entre a máquina de cliente 10 eas máquinas remotas 30, como descritas acima em relação aoFIGO 8, à etapa 816 e com FIG. 24. Em uma modalidade, umagente 8 8 02' na máquina remota 30 estabelecem uma conexão àmáquina remota 30'. Em uma outra modalidade, a máquinaremota 30 comunica-se com a máquina remota 30' usando umprotocolo da camada de apresentação, tal como o AIC, a RDP,o VNC, ou o X11. Em ainda uma outra modalidade, a máquinaremota 30 estabelece uma conexão com a máquina remota 30' ecomunica-se com a máquina remota 30' usando um protocolo dacamada de apresentação, tal como a RDP, dentro de umterminal presta serviços de manutenção à sessão executandona máquina remota 30. Em algumas modalidades, as pilhas doprotocolo são executadas para permitir comunicações entre oagente 8802' na máquina remota 30 e na máquina remota 30' ,como descrito acima em relação ao FIGO 8, à etapa 816 e comFIG. 24.
Em uma modalidade, como descrita por FIG. 95, amáquina remota 30' fornece o acesso ao recurso pedidofornecendo o acesso a um ambiente virtualizado oufornecendo o acesso a uma aplicação que flui o serviço,como descrito acima em relação ao FIGO. 8. Em uma outramodalidade, a máquina remota 30' executa o recurso em umamáquina virtual que executa na máquina remota 30'. Em aindauma outra modalidade, a máquina remota 30' transmite osdados de saída gerados pela execução do recurso à máquinaremota 30 usando um protocolo da camada de apresentação. Emuma outra modalidade, a máquina remota 3 0 envia os dados desaída recebidos da máquina remota 30' à máquina de cliente10 usando um protocolo da camada de apresentação. Emalgumas modalidades, a máquina virtual executa na máquinaremota 30'. Em outras modalidades, as máquinas virtuaisexecutam em uma máquina remota 30". Em uma modalidade, amáquina remota 30' fornece o acesso a um ambiente decomputação publicado do área de trabalho. Em uma outramodalidade, a máquina remota 30' fornece o acesso a umambiente de computação publicado do área de trabalhoselecionado de uma enumeração de uma pluralidade deambientes de computação publicados do área de trabalhodisponíveis à máquina de cliente 10. Em algumasmodalidades, como descritas acima em relação à descrição docomponente 1200 da gerência da máquina virtual, as máquinasvirtuais podem fornecer o acesso aos ambientes defuncionamento padrão. Referindo agora FIG. 96, um diagramade bloco descreve uma modalidade de um sistema parafornecer a um primeiro agente do cliente, através de umsegundo agente do cliente em uma primeira máquina remota,os dados de saída gerados por um recurso executando em umvirtual máquina fornecida por uma segunda máquina remota.
Um agente 8802 do cliente em uma máquina de cliente 10conecta a uma máquina remota 30 e pede o acesso a umrecurso. Em uma modalidade, a máquina remota 30 é umamáquina intermediária. Em uma outra modalidade, a máquinaremota 30 determina fornecer o acesso ao recurso pedidoatravés de uma máquina virtual. Em ainda uma outramodalidade, a máquina remota 30 identifica uma máquinaremota 30' para fornecer o acesso ao recurso pedido atravésde uma máquina virtual que executa na máquina remota 3 0'. Amáquina remota 30' pode ser referido como uma máquina 30'da execução;. Em uma modalidade, a máquina de cliente 10comunica-se com a máquina remota 3 0 usando um protocolo dacamada de apresentação, tal como o AIC, a RDP, o VNC, ou oXll. Em algumas modalidades, as pilhas do protocolo sãoexecutadas para permitir comunicações entre a máquina decliente 10 e as máquinas remotas 30, como descritas acimaem relação ao FIGO 8, à etapa 816 e com FIG. 24. Em umamodalidade, um agente 8802' na máquina remota 30estabelecem uma conexão à máquina remota 30'. Em uma outramodalidade, a máquina remota 30 comunica-se com a máquinaremota 30' usando um protocolo da camada de apresentação,tal como o AIC, a RDP, o VNC, ou o Xll. Em ainda uma outramodalidade, a máquina remota 3 0 estabelece uma conexão coma máquina remota 30' e comunica-se com a máquina remota 30'usando um protocolo da camada de apresentação, tal como oAIC. Em algumas modalidades, as pilhas do protocolo sãoexecutadas para permitir comunicações entre o agente 8802'na máquina remota 3 0 e máquina remota 30' , como descritoacima em relação ao FIGO 8, à etapa 816 e com FIG. 24. Emuma modalidade, como descrita por FIG. 96, a máquina remota30' fornece o acesso ao recurso pedido fornecendo o acessoa um ambiente virtualizado ou fornecendo o acesso a umaaplicação que flui o serviço, como descrito acima emrelação ao FIGO. 8. Em uma outra modalidade, a máquinaremota 30' executa o recurso em uma máquina virtual queexecuta na máquina remota 3 0'. Em ainda uma outramodalidade, a máquina remota 30' transmite os dados desaída gerados pela execução do recurso à máquina remota 30usando um protocolo da camada de apresentação. Em uma outramodalidade, a máquina remota 30 envia os dados de saídarecebidos da máquina remota 30' à máquina de cliente 10usando um protocolo da camada de apresentação. Em algumasmodalidades, a máquina virtual executa na máquina remota30'. Em outras modalidades, as máquinas virtuais executamem uma máquina remota 30". Referindo agora FIG. 97, umdiagrama de bloco descreve uma modalidade de um sistemapara identificar, por uma máquina do coordenador, umamáquina do trabalhador que fornece, através de uma máquinavirtual, o acesso a um ambiente de computação. Um agente8802 do cliente em uma máquina de cliente 10 conecta a umamáquina remota 30 e pede o acesso a um recurso. Em umamodalidade, a máquina remota 30 é uma máquina docoordenador, fornecendo a funcionalidade de uma máquina docorretor intermediário. Em uma outra modalidade, a máquinaremota 30 identifica uma máquina remota 30' para fornecer oacesso ao recurso pedido. Em algumas modalidades, a máquinaremota 30 é uma máquina remota em uma pluralidade demáquinas remotas que funcionam como máquinas do corretorintermediário. Em uma destas modalidades, as máquinas docoordenador recebem pedidos e identificam outras máquinasremotas 30' de uma segunda pluralidade de máquinas remotas,as máquinas identificadas que respondem aos pedidos. Emoutras destas modalidades, as máquinas remotasidentificadas 30' são referidos como máquinas dotrabalhador. Em ainda outras destas modalidades, a máquinade cliente 10 comunicam-se com a máquina 30 do coordenadorusando um protocolo da camada de apresentação, tal como oAIC, a RDP, o VNC, ou o Xll. Em uma modalidade, a máquina30 do coordenador identifica uma associação das máquinas30' do trabalhador; cada um capaz de fornecer o acesso aorecurso pedido. Em algumas modalidades, a máquina 3 0 docoordenador identifica uma máquina 30' do trabalhador; daassociação do trabalhador faz à máquina 30' capaz defornecer o acesso ao recurso pedido. Em outras modalidades,a máquina 30 do coordenador identifica uma máquina 30' dotrabalhador; e transmite a informação para alcançar amáquina 30' do trabalhador; à máquina de cliente 10. Emainda outras modalidades, a máquina 3 0 do coordenadortransmitem a informação para alcançar a máquina de cliente10 à máquina 30' do trabalhador;. Em uma destasmodalidades, a máquina 3 0 do coordenador não fornecenenhuma informações adicionais ou comunicação à máquina decliente 10 após ter transmitido a informação do acessoassociada com a máquina 30' do trabalhador;. Em contudooutras modalidades, a máquina 3 0 do coordenador estabelecemuma conexão entre a máquina de cliente 10 e uma máquina 30'do trabalhador;.
Em uma modalidade, o agente 8 8 02 do cliente da máquinade cliente 10 estabelece uma conexão à máquina 30' dotrabalhador;. Em uma outra modalidade, a máquina de cliente10 comunica-se com a máquina 30' do trabalhador; usando umprotocolo da camada de apresentação, tal como o AIC, a RDP,o VNC, ou o Xll. Em algumas modalidades, a máquina 30' dotrabalhador; fornece o acesso ao recurso pedido executandouma aplicação na máquina 30' do trabalhador; e dadostransmissores da aplicação-saída gerados pela execução daaplicação ao cliente 10. Em outras modalidades, comodescritas por FIG. 97, a máquina 30' do trabalhador;fornece o acesso ao recurso pedido fornecendo o acesso a umambiente virtualizado ou fornecendo o acesso a umaaplicação que flui o serviço, como descrito acima emrelação ao FIGO. 8. Em algumas modalidades, em cima daidentificação de uma máquina 30' do trabalhador; , o agente8802 do cliente da máquina de cliente 10 estabelece umaconexão com um componente 13 00 da gerência de sessãoassociado com ou que reside na máquina 30' do trabalhador;.
Em outras modalidades, a máquina 30' do trabalhador;executa o componente 1300 da gerência de sessão a que amáquina de cliente 10 conecta. Em uma modalidade, ocomponente 1300 da gerência de sessão pergunta umcomponente 1200 da gerência da máquina virtual, para aposição das limas da configuração e de disco virtual de umamáquina virtual para funcionar para o usuário atual e umhypervisor em que a máquina virtual pode executar. Em aindaoutras modalidades, a máquina de cliente 10 conectamdiretamente à máquina 30' do trabalhador;. Em algumasmodalidades, o hypervisor e a máquina virtual identificadosexecutam na máquina 30' do trabalhador;. Em outrasmodalidades, identificado o hypervisor e a máquina virtualexecutam em uma máquina remota 30". Em uma destasmodalidades, a máquina 30' do trabalhador; comunica-se coma máquina remota 30" usando um protocolo da camada deapresentação para receber os dados de saída gerados por umrecurso executado pela máquina virtual. Em uma modalidade,o componente da gerência de sessão lança a máquina virtualdentro do hypervisor especific na modalidade de tela cheia.Em uma outra modalidade, uma máquina virtual da precedente-execução é alocada à máquina de cliente 10. Em algumasmodalidades, um componente de serviço 8804 da máquinavirtual executa dentro de um ambiente de computaçãofornecido por uma máquina virtual em uma máquina 30' dotrabalhador;. Em uma destas modalidades, o componente deserviço 8804 da máquina virtual recebe um IP address e umporto com que para estabelecer uma canal de comunicaçãoentre o componente 1300 da gerência de sessão e ocomponente de serviço 8804 da máquina virtual. Em umamodalidade, esta canal de comunicação é usada para passar asessão informação de configuração relativa da sessão doagente do cliente na sessão da máquina virtual. Em algumasmodalidades, a informação de configuração inclui os ajustese as mudanças da exposição, a informação da movimentação docliente e os dados da autenticação com que para permitirúnico sign-on para um usuário da máquina de cliente 10. Emalgumas modalidades, uma vez que a canal de comunicações éestabelecida e a informação relacionada da sessão inicialestá passada ao componente de serviço 8804 da máquinavirtual, o componente de serviço 8804 da máquina virtualconecta automaticamente o usuário a um ambiente decomputação, tal como um funcionamento do convidado sistema,usando as mesmas credenciais que foram fornecidos ao agente8802 do cliente pelo usuário (eventualmente). Em uma destasmodalidades, o componente de serviço 8804 da máquinavirtual reconfigura automaticamente os ajustes da exposiçãodo sistema de exploração do convidado para combinar aquelesdo cliente 10. A máquina virtual produz gráficos e a saídasadia aos dispositivos virtuais que reorientam essa saída,diretamente ou indiretamente, ao agente 8802 do cliente namáquina de cliente 10. A máquina virtual recebe os dadosáudio do dispositivo da entrada, do rato e do tecladoreorientados da máquina de cliente 10. Quando a máquinavirtual é parada programada ou suspendeu o componente 13 00da gerência de sessão termina a sessão do agente docliente. Em algumas modalidades, a máquina 3 0 docoordenador fornece a funcionalidade controlando umaassociação das máquinas 30' do trabalhador;. Em uma destasmodalidades, por exemplo, a máquina 3 0 do coordenadorrecebe a informação que identifica as máquinas 30' dotrabalhador; como máquinas físicas que fornecem o acessoaos recursos particulares, ou como máquinas virtuais quefornecem o acesso aos recursos particulares. Em outrasdestas modalidades, a máquina 3 0 do coordenador recebe ainformação que identifica uma pluralidade de tipos derecursos fornecidos pela associação das máquinas 30' dotrabalhador;. Por exemplo, a máquina 3 0 do coordenador podereceber a informação que identifica uma associação dasmáquinas 30' do trabalhador; como o fornecimento do acessoa um tipo de ambiente de computação, tal como um área detrabalho ou uma aplicação. Em ainda outras destasmodalidades, a máquina 3 0 do coordenador comunicam-se comum componente 1200 da gerência da máquina virtual parareceber a informação sobre máquinas virtuais na associaçãodas máquinas 30' do trabalhador;. Em outras modalidades, amáquina 3 0 do coordenador monitora umas ou várias máquinas30' do trabalhador; na associação do trabalhador faz àmáquina 30'. Em uma destas modalidades, a máquina 30 docoordenador identifica uma máquina 30' do trabalhador; parafornecer o acesso a um recurso para uma máquina de cliente10 e identifica uma máquina 30" do trabalhador; parafornecer o acesso ao recurso em cima de uma falha dotrabalhador faça à máquina 3 0'. Em outras destasmodalidades, a máquina 3 0 do coordenador identifica umamáquina 30" do trabalhador; para fornecer o acesso aorecurso responsivo a uma técnica do equilíbrio de carga. Emainda outras destas modalidades, a máquina 3 0 docoordenador identificam uma máquina 30" do trabalhador;para fornecer o acesso ao recurso responsivo a uma mudançaassociada com a máquina de cliente 10. por exemplo, amáquina 30 do coordenador pode identificar uma primeiramáquina 30' do trabalhador; para fornecer o acesso aorecurso para a máquina de cliente 10 e a recepção umsegundo pedido para o acesso pela máquina de cliente 10,depois que a máquina de cliente 10 estabeleceu conectadoatravés de uma rede diferente, ou perdeu uma primeiraconexão de rede e restabeleceu uma segunda conexão de rede.
Em algumas modalidades, a máquina 3 0 do coordenadoridentifica uma máquina 30 do trabalhador que forneça oacesso a um recurso para uma máquina de cliente 10 deacordo com um responsivo escolhido método a uma avaliaçãoda máquina de cliente 10, uma aplicação de uma política àmáquina de cliente 10 e à máquina 30' do trabalhador; , euma avaliação das capacidades e das exigências do recurso,da máquina de cliente 10 e da máquina 30' do trabalhador;.
As modalidades previamente descritas podem ser executadascomo um método, um instrumento ou um artigo da manufaturausando-se programando e/ou técnicas da engenharia paraproduzir o software, os firmware, a ferragem, ou a algumacombinação disso. 0 " do termo; artigo do manufature" comousado nisto é pretendido abranger o código ou a lógicaacessível de e encaixado em uns ou vários dispositivoslegíveis por computador, firmware, lógica programável,dispositivos de memória (por exemplo, EEPROMs, ROM, bailesde finalistas, ram, SRAMs, etc.), ferragem (por exemplo, amicroplaqueta do circuito integrado, coloca a disposição deporta programável (FPGA), o circuito integradocaracterístico da aplicação (ASIC), etc.), dispositivoselectrónicos, em uma unidade de armazenamento permanentelegível por computador (por exemplo, CD-ROM, namovimentação de disco flexível, do disco rígido, etc.), emum usuário do arquivo que fornecem o acesso aos programasatravés de uma linha de transmissão da rede, em meios semfio da transmissão, em sinais que propagam através doespaço, nas ondas de rádio, nos sinais infravermelhos, etc.O artigo da manufatura inclui a lógica da ferragem assimcomo o software ou o código programável encaixado em ummeio legível por computador que seja executado por umprocessador. Naturalmente, aqueles hábeis na artereconhecerão que muitas modificações podem ser feitas aesta configuração sem partir do espaço da invenção atual.Descrevendo determinadas modalidades dos métodos e dossistemas para fornecer o acesso a um ambiente decomputação, tornar-se-á agora aparente a uma da habilidadena arte que outras modalidades que incorporam os conceitosda invenção podem ser usadas. Conseqüentemente, a invençãonão deve ser limitada a determinadas modalidades, mas umpouco deve ser limitada somente pelo espírito e pelo espaçodas seguintes reivindicações.
Claims (334)
1. Método de provisão de acesso a um ambiente decomputação, o método caracterizado por compreender asetapas de:(a) recebimento por uma máquina de intermediação, umarequisição de uma máquina de cliente para acesso a umambiente de computação, a requisição incluindo umaidentificação de um usuário da máquina de cliente;(b) identificação de uma de uma pluralidade demáquinas virtuais, a máquina virtual identificada provendoo ambiente de computação requisitado;(c) identificação de uma de uma pluralidade demáquinas de execução, a máquina de execução identificadaexecutando um hipervisor provendo acesso a recursos dehardware requeridos pela máquina virtual identificada; e(d) estabelecimento de uma conexão entre a máquina decliente e a máquina virtual identificada.
2. Método, de acordo com a reivindicação 1,caracterizado pelo fato de a etapa (b) compreender ainda aidentificação de uma da pluralidade de máquinas virtuais emresposta à identificação recebida do usuário da máquina decliente.
3. Método, de acordo com a reivindicação 1,caracterizado pelo fato de a etapa (b) compreender ainda aidentificação de uma da pluralidade de máquinas virtuais emresposta a uma requisição pela máquina de cliente de umtipo de máquina virtual.
4. Método, de acordo com a reivindicação 1,caracterizado pelo fato de a etapa (b) compreender ainda aidentificação de uma da pluralidade de máquinas virtuais emresposta a uma requisição pela máquina de cliente de umtipo de ambiente de computação.
5. Método, de acordo com a reivindicação 1,caracterizado pelo fato de a etapa (b) compreender ainda aidentificação, pelo componente de gerenciamento de sessão,de uma da pluralidade de máquinas virtuais em resposta, amáquina virtual identificada executando o hipervisor.
6. Método, de acordo com a reivindicação 1,caracterizado pelo fato de a etapa (c) compreender ainda oaprovisionamento, pelo hipervisor, de uma pluralidade derecursos de hardware na máquina de execução identificadapara uso pela máquina virtual identificada.
7. Método, de acordo com a reivindicação 1,caracterizado pelo fato de a etapa (c) compreender ainda adivisão, pelo hipervisor, de uma pluralidade de recursos dehardware na máquina de execução identificada para uso pelamáquina virtual identificada.
8. Método, de acordo com a reivindicação 1,caracterizado pelo fato de a etapa (c) compreender ainda aidentificação de uma da pluralidade de máquinas de execuçãoem resposta a uma identificação de recursos de hardwarerequeridos pela máquina virtual identificada.
9. Método, de acordo com a reivindicação 1,caracterizado pelo fato de a etapa (c) compreender ainda aidentificação, pela máquina de intermediação, de uma dapluralidade de máquinas de execução.
10. Método, de acordo com a reivindicação 1,caracterizado pelo fato de a etapa (d) compreender ainda aprovisão de um endereço de protocolo de internet associadoà máquina virtual identificada para a máquina de cliente.
11. Método, de acordo com a reivindicação 1,caracterizado pelo fato de a etapa (d) ainda compreender aprovisão de um endereço de protocolo de internet associadoà máquina de execução identificada para a máquina decliente.
12. Método, de acordo com a reivindicação 1,caracterizado pelo fato de a etapa (d) compreender ainda aprovisão de um proxy para comunicação entre a máquina decliente e a máquina virtual identificada.
13. Método, de acordo com a reivindicação 1,caracterizado pelo fato de a etapa (d) ainda compreender aabertura da máquina virtual identificada no hipervisor.
14. Método, de acordo com a reivindicação 1,caracterizado pelo fato de a etapa (d) ainda compreender oestabelecimento de uma conexão entre a máquina de cliente ea máquina virtual identificada usando-se um protocolo decamada de apresentação.
15. Aparelho, em um sistema provendo acesso a umambiente de computação por uma máquina de intermediação auma máquina de cliente, uma máquina de execução executandoum hipervisor provendo acesso a recursos de hardwarerequeridos pelo ambiente de computação, o aparelhocaracterizado pelo fato de compreender:um componente de identificação em comunicação com umcomponente de gerenciamento de máquina virtual e recebendouma identificação de uma de uma pluralidade de máquinasvirtuais, a máquina virtual identificada provendo umambiente de computação requisitado;um componente de execução aprovisionando a máquinavirtual identificada; eum componente de gerenciamento estabelecendo umaconexão entre a máquina de cliente e a máquina virtualidentificada.
16. Aparelho, de acordo com a reivindicação 15,caracterizado pelo fato de compreender ainda um componentede serviço de máquina virtual em execução no hipervisor, ocomponente de serviço de máquina virtual em comunicação como componente de gerenciamento de sessão e recebendo umainformação de configuração associada à máquina de cliente.
17. Aparelho, de acordo com a reivindicação 15,caracterizado pelo fato de compreender ainda um componentede serviço de máquina virtual em execução na máquinavirtual identificada, o componente de serviço de máquinavirtual em comunicação com o componente de gerenciamento desessão e recebendo uma informação de configuração associadaà máquina de cliente.
18. Aparelho, de acordo com a reivindicação 15,caracterizado pelo fato do componente de identificaçãoreceber a partir do componente de gerenciamento de máquinavirtual a identificação de uma da pluralidade de máquinasvirtuais.
19. Aparelho, de acordo com a reivindicação 15,caracterizado pelo fato do componente de identificaçãoidentificar uma de uma pluralidade de máquinas de execução,um hipervisor em execução na máquina de execuçãoidentificada.
20. Aparelho, de acordo com a reivindicação 15,caracterizado pelo fato do componente de identificaçãoidentificar uma de uma pluralidade de áreas de memória, ocomponente de identificação abrindo a máquina virtualidentificada em um hipervisor em execução na máquina deexecução identificada.
21. Aparelho, de acordo com a reivindicação 15,caracterizado pelo fato do componente de identificaçãoreceber uma identificação de uma de uma pluralidade demáquinas de execução.
22. Aparelho, de acordo com a reivindicação 15,caracterizado pelo fato do componente de identificaçãoreceber a partir da máquina de intermediação umaidentificação de uma da pluralidade de máquinas deexecução.
23. Aparelho, de acordo com a reivindicação 15,caracterizado pelo fato do componente de identificaçãoainda compreender um transceptor recebendo umaidentificação de um usuário da máquina de cliente etransmitindo a identificação do usuário para o componentede gerenciamento de máquina virtual.
24. Aparelho, de acordo com a reivindicação 15,caracterizado pelo fato do componente de identificaçãoainda compreender um transceptor que recebe umaidentificação por um usuário da máquina de cliente de umtipo de ambiente de computação requisitado e que transmitea identificação do tipo de ambiente de computaçãorequisitado para o componente de gerenciamento de máquinavirtual.
25. Aparelho, de acordo com a reivindicação 15,caracterizado pelo fato do componente de identificaçãoainda compreender um transceptor que recebe umaidentificação por um usuário da máquina de cliente de umtipo de máquina virtual requisitada e que transmite aidentificação do tipo de máquina virtual requisitada para ocomponente de gerenciamento de máquina virtual.
26. Aparelho, de acordo com a reivindicação 15,caracterizado pelo fato do componente de identificaçãoainda compreender um transceptor que recebe umaidentificação de um tipo de ambiente de computaçãorequisitado e que transmite a identificação do tipo deambiente de computação requisitado para o componente degerenciamento de máquina virtual.
27. Aparelho, de acordo com a reivindicação 15,caracterizado pelo fato do componente de identificaçãoainda compreender um transceptor que recebe umaidentificação de um tipo de máquina virtual requisitada eque transmite a identificação do tipo de máquina virtualrequisitada para o componente de gerenciamento de máquinavirtual.
28. Aparelho, de acordo com a reivindicação 15,caracterizado pelo fato do componente de identificaçãoainda compreender o recebimento de uma identificação de umade uma pluralidade de máquinas virtuais, a máquina virtualidentificada já em execução no hipervisor na máquina deexecução.
29. Aparelho, de acordo com a reivindicação 15,caracterizado pelo fato do componente de identificaçãoreceber uma identificação de uma de uma pluralidade demáquinas virtuais, a máquina virtual identificadaselecionada em resposta a uma identificação recebida de umusuário da máquina de cliente.
30. Aparelho, de acordo com a reivindicação 15,caracterizado pelo fato do componente de identificaçãoreceber uma identificação de uma de uma pluralidade demáquinas virtuais, a máquina virtual identificadaselecionada em resposta a uma identificação recebida de umtipo de ambiente de computação requisitado.
31. Aparelho, de acordo com a reivindicação 15,caracterizado pelo fato do componente de identificaçãoreceber uma identificação de uma de uma pluralidade demáquinas virtuais, a máquina virtual identificadaselecionada em resposta a uma identificação recebida de umtipo de máquina virtual requisitada.
32. Aparelho, de acordo com a reivindicação 15,caracterizado pelo fato do componente de execuçãocompreender a abertura da máquina virtual identificada nohipervisor.
33. Aparelho, de acordo com a reivindicação 15,caracterizado pelo fato do componente de gerenciamento demáquina virtual alocar a máquina virtual identificada a umusuário.
34. Aparelho, de acordo com a reivindicação 15,caracterizado pelo fato do componente de gerenciamentocompreender ainda a provisão de um endereço de protocolo deinternet associado à máquina virtual identificada para amáquina de cliente.
35. Aparelho, de acordo com a reivindicação 15,caracterizado pelo fato do componente de gerenciamentocompreender ainda a provisão de um endereço de protocolo deinternet associado à máquina de execução para a máquina decliente.
36. Aparelho, de acordo com a reivindicação 15,caracterizado pelo fato do componente de gerenciamentocompreender ainda a provisão de um proxy para comunicaçãoentre a máquina de cliente e a máquina virtualidentificada.
37. Aparelho, de acordo com a reivindicação 15,caracterizado pelo fato do componente de gerenciamentocompreender ainda o estabelecimento de uma conexão entre amáquina de cliente e a máquina virtual identificada usando-se um protocolo de camada de apresentação.
38. Método de tornar uma página de hipermeiointerativa, a página de hipermeio exibida em um navegadorde rede, caracterizado por compreender as etapas de:(a) seleção de um hiperlink na página de hipermeioexibida em uma máquina de cliente, o hiperlinkidentificando um recurso de computação desejado;(b) recuperação de um arquivo de configuração dehiperlink, o arquivo de configuração de hiperlinkcorrespondente ao hiperlink e identificando uma máquinavirtual;(c) o inicio de um agente de cliente na máquina decliente;(d) a criação pelo agente pelo agente de cliente de umlink de comunicação com a máquina virtual identificada peloarquivo de configuração de hiperlink;(e) o recebimento, pelo agente de cliente, de dados damáquina virtual; e(f) a exibição na máquina de cliente dos dadosrecebidos, sem intervenção pelo navegador de rede.
39. Método, de acordo com a reivindicação 38,caracterizado por compreender ainda a etapa de começo daexecução de um aplicativo identificado na máquina virtual,em resposta ao link de comunicação criado.
40. Método, de acordo com a reivindicação 38,caracterizado pelo fato da etapa (b) compreender ainda aidentificação, pelo arquivo de configuração de hiperlink,de uma máquina de servidor na qual a máquina virtualidentificada se executa.
41. Método, de acordo com a reivindicação 38,caracterizado pelo fato da etapa (d) ser realizada sem umaintervenção pelo navegador de rede.
42. Método, de acordo com a reivindicação 38,caracterizado pelo fato da etapa (c) compreender aindacomeçar o agente de cliente pelo navegador de rede medianteuma combinação bem sucedida de uma entrada no arquivo deconfiguração de hiperlink com um identificador associado aoagente de cliente em um arquivo de registro acessível pelonavegador de rede.
43. Método, de acordo com a reivindicação 38,caracterizado pelo fato de compreender ainda o emprego deum protocolo de apresentação para comunicação pelo link decomunicação.
44. Método, de acordo com a reivindicação 38,caracterizado pelo fato de compreender ainda o registro doagente de cliente junto ao navegador de rede.
45. Método, de acordo com a reivindicação 38,caracterizado pelo fato de compreender ainda a etapa deexibição dos dados recebidos a partir da máquina virtual emuma janela de exibição na máquina de cliente.
46. Método, de acordo com a reivindicação 38,caracterizado pelo fato de compreender ainda a etapa deobtenção de uma página de hipermeio a partir de um servidorde rede, antes da etapa (a).
47. Método, de acordo com a reivindicação 38,caracterizado pelo fato de compreender ainda a etapa decomeço de um agente de servidor na máquina virtual.
48. Método, de acordo com a reivindicação 38,caracterizado pelo fato de compreender ainda a abertura deuma máquina virtual.
49. Sistema para tornar uma página de hipermeiointerativa, a página de hipermeio exibida por um navegadorde rede, o sistema caracterizado pelo fato de compreender:uma máquina de cliente que executa um aplicativonavegador, o referido aplicativo navegador exibindo umapágina de hipermeio que inclui um hiperlink que identificaum recurso de computação desejado;um servidor de rede que transmite, em resposta a umaseleção do referido hiperlink um arquivo de configuração derede para a referida máquina de cliente, o referido arquivode configuração de rede correspondente ao referido recursode computação identificado; eum agente de cliente em execução na referida máquinade cliente, o referido agente de cliente estabelecendo, emresposta a dados no referido arquivo de configuração, umlink de comunicação com uma máquina virtual provendo orecurso de computação,onde o hipervisor transmite dados para o referidoagente de cliente para exibição sem intervenção peloreferido navegador de rede.
50. Sistema, de acordo com a reivindicação 49,caracterizado pelo fato do referido agente de clienteexibir dados recebidos a partir da referida máquina virtualem uma janela de exibição localizada na referida máquina decliente.
51. Sistema, de acordo com a reivindicação 50,caracterizado pelo fato da janela de exibição estarlocalizada nas fronteiras da página de hipermeio.
52. Sistema, de acordo com a reivindicação 50,caracterizado pelo fato da janela de exibição estarlocalizada fora das fronteiras da página de hipermeio.
53. Sistema, de acordo com a reivindicação 49,caracterizado pelo fato do arquivo de configuração de redeainda compreender uma identificação de uma máquina deservidor na qual a máquina virtual identificada se executa.
54. Sistema, de acordo com a reivindicação 49,caracterizado pelo fato de compreender ainda um processo deobtenção da referida página de hipermeio a partir doreferido servidor de rede e provisão da referida página dehipermeio para o referido nó de cliente.
55. Sistema, de acordo com a reivindicação 49,caracterizado pelo fato do referido arquivo de configuraçãode hiperlink compreender um identificador de recursocorrespondente ao referido hiperlink e um endereço demáquina virtual correspondente ao referido hiperlink.
56. Sistema, de acordo com a reivindicação 49,caracterizado pelo fato do agente de cliente estabelecer,em resposta aos dados no arquivo de configuração, um linkde comunicação com um programa de ajuda em execução em umamáquina de servidor.
57. Sistema, de acordo com a reivindicação 56,caracterizado pelo fato do programa de ajuda abrir umamáquina virtual provendo o recurso de computação desejado.
58. Método para provisão de acesso a um ambiente decomputação, o método caracterizado pelo fato de compreenderas etapas de:(a) recebimento de uma requisição a partir de umsistema de cliente por uma enumeração de ambientes decomputação disponíveis;(b) acesso a dados coletados com referência aambientes de computação disponíveis;(c) transmissão, para um sistema de cliente, de dadosacessados que indicam para o sistema de cliente cadaambiente de computação disponível para um usuário dosistema de cliente;(d) recebimento, a partir do sistema de cliente, deuma requisição para acesso a um dos ambientes decomputação; e(e) estabelecimento de uma conexão entre o sistema decliente e uma máquina virtual hospedando o ambiente decomputação requisitado.
59. Método, de acordo com a reivindicação 58,caracterizado pelo fato de compreender ainda adeterminação, para cada ambiente de computação armazenado,quanto a se aquele ambiente de computação está disponívelpara um usuário do sistema de cliente.
60. Método, de acordo com a reivindicação 59,caracterizado pelo fato da etapa (c) compreender atransmissão dos dados acessados para um sistema de cliente,os dados transmitidos exibíveis no sistema de cliente comoícones em uma janela de interface gráfica de usuáriorepresentando os ambientes de computação disponíveis paraum usuário do sistema de cliente.
61. Método, de acordo com a reivindicação 59,caracterizado pelo fato da etapa (c) compreender atransmissão dos dados acessados para um sistema de cliente,os dados transmitidos exibíveis no sistema de cliente comoícones em uma janela de interface gráfica de usuáriorepresentando os ambientes de computação não disponíveispara um usuário do sistema de cliente.
62. Método, de acordo com a reivindicação 58,caracterizado pelo fato da etapa (c) compreender orecebimento, a partir do sistema de cliente, de umarequisição para execução de um aplicativo, o aplicativorequisitado requerendo um dos ambientes de computaçãodisponíveis.
63. Método, de acordo com a reivindicação 58,caracterizado pelo fato da etapa (d) compreender oestabelecimento de uma conexão entre o sistema de cliente ea máquina virtual usando-se um protocolo de camada deapresentação.
64. Método, de acordo com a reivindicação 58,caracterizado pelo fato da etapa (e) compreender oestabelecimento de uma conexão entre o sistema de cliente ea máquina virtual usando-se o protocolo Xll.
65. Método, de acordo com a reivindicação 58,caracterizado pelo fato da etapa (e) compreender oestabelecimento de uma conexão entre o sistema de cliente ea máquina virtual usando-se o protocolo de Apresentação deÁrea de Trabalho Remota (RDP).
66. Método, de acordo com a reivindicação 58,caracterizado pelo fato da etapa (e) compreender oestabelecimento de uma conexão entre o sistema de cliente ea máquina virtual usando-se o protocolo de Arquitetura deComputação Independente (ICA).
67. Método, de acordo com a reivindicação 58,caracterizado pelo fato de compreender ainda o recebimentode credenciais de usuário a partir do sistema de cliente.
68. Método, de acordo com a reivindicação 67,caracterizado pelo fato da etapa (c) compreender atransmissão dos dados acessados para um sistema de clienteem resposta ao recebimento das credenciais de usuário, osdados transmitidos exibíveis no sistema de cliente comoícones em uma janela de interface gráfica de usuáriorepresentando ambientes de computação disponíveis para ocliente.
69. Método, de acordo com a reivindicação 67,caracterizado pelo fato da etapa (c) compreender atransmissão dos dados acessados para um sistema de clienteem resposta ao recebimento das credenciais de usuário, osdados transmitidos exibíveis no sistema de cliente comoícones em uma janela de interface gráfica de usuáriorepresentando ambientes de computação não disponíveis parao cliente.
70. Método, de acordo com a reivindicação 67,caracterizado pelo fato de compreender ainda a autenticaçãodo usuário do sistema de cliente com base nas credenciaisde usuário recebidas e provendo acesso a uma imagemselecionada das imagens de ambiente de computaçãodisponíveis, sem requerer uma entrada adicional decredenciais de usuário por um usuário do sistema decliente.
71. Método, de acordo com a reivindicação 58,caracterizado pelo fato de ainda compreender a acumulaçãode uma informação sobre o sistema de cliente e a geração deum conjunto de dados a partir da informação acumulada.
72. Método, de acordo com a reivindicação 71,caracterizado pelo fato da etapa (c) compreender atransmissão de dados acessados para um sistema de clienteindicando para o sistema de cliente, em resposta aoconjunto de dados gerados, cada ambiente de computaçãodisponível para o sistema de cliente.
73. Método, de acordo com a reivindicação 71,caracterizado pelo fato da etapa (c) compreender atransmissão dos dados acessados para um sistema de clienteindicando para o sistema de cliente, em resposta a umaaplicação de uma política ao conjunto de dados gerados,cada ambiente de computação disponível para o sistema decliente.
74. Método, de acordo com a reivindicação 58,caracterizado pelo fato da etapa (a) compreender orecebimento, por um servidor da web, de uma requisição deum sistema de cliente quanto uma enumeração de ambientes decomputação disponíveis.
75. Método, de acordo com a reivindicação 74,caracterizado pelo fato da etapa (b) compreender ainda (i)a recuperação a partir de um armazenamento persistente deum modelo de página, (ii) a criação, no servidor da web, deuma página descrevendo uma exibição de imagens de ambientede computação disponíveis para o sistema de cliente emresposta aos dados acessados e ao modelo de páginarecuperado, e (iii) a transmissão da página criada para umsistema de cliente indicando para o sistema de cliente quecada ambiente de computação disponível para o sistema decliente.
76. Método, de acordo com a reivindicação 58,caracterizado pelo fato de compreender ainda a criação deuma exibição de saída indicando cada ambiente de computaçãodisponível para o sistema de cliente e transmitindo aexibição de saída criada para o sistema de cliente.
77. Método, de acordo com a reivindicação 58,caracterizado pelo fato de compreender ainda a criação deuma exibição de saída que compreende uma página construídaem uma linguagem de marcação, a exibição de saída indicandocada ambiente de computação disponível para o sistema decliente e transmitindo a exibição de saída criada para osistema de cliente.
78. Servidor, em uma rede que inclui um sistema decliente e uma pluralidade de servidores que armazenamambientes de computação, caracterizado pelo fato decompreender:um módulo de intermediação acessando dados coletadosreferentes a ambientes de computação e determinando, paracada ambiente de computação, se aquela imagem de ambientede computação está disponível para um sistema de cliente;um transmissor que transmite dados acessados para osistema de cliente indicando para o sistema de cliente cadaambiente de computação determinado para estar disponívelpara o sistema de cliente;um receptor que recebe uma requisição para acesso a umdos ambientes de computação disponíveis; eum transceptor provendo uma conexão entre o sistema decliente e uma máquina virtual identificada provendo oambiente de computação requisitado.
79. Servidor, de acordo com a reivindicação 78,caracterizado pelo fato do receptor receber credenciais deusuário a partir do sistema de cliente.
80. Servidor, de acordo com a reivindicação 79,caracterizado pelo fato de compreender ainda um banco dedados que armazena os dados coletados, onde o módulo deintermediação determina para cada ambiente de computação seaquela imagem de ambiente de computação está disponívelpara um sistema de cliente com base nas credenciais deusuário e nos dados coletados.
81. Servidor, de acordo com a reivindicação 78,caracterizado pelo fato de compreender ainda um banco dedados que armazena os dados coletados.
82. Servidor, de acordo com a reivindicação 78,caracterizado pelo fato de compreender ainda um motor decriação de exibição de saída criando exibições de saídaindicando cada ambiente de computação disponível para osistema de cliente.
83. Servidor, de acordo com a reivindicação 82,caracterizado pelo fato do motor de criação de exibição desaída criar uma página da web que descreve uma exibição doambiente de computação disponível para um sistema decliente, a página da web criada em resposta à informaçãocoletada e a um modelo de página da web.
84. Servidor, de acordo com a reivindicação 78,caracterizado pelo fato do transceptor prover uma conexãoentre o sistema de cliente e uma máquina virtual provendo oambiente de computação requisitado, o transceptorestabelecendo uma conexão de protocolo de camada deapresentação.
85. Servidor, de acordo com a reivindicação 78,caracterizado pelo fato do transceptor prover uma conexãoentre o sistema de cliente e uma máquina virtual provendo oambiente de computação requisitado, o transceptorestabelecendo uma conexão Xll.
86. Servidor, de acordo com a reivindicação 78,caracterizado pelo fato do transceptor prover uma conexãoentre o sistema de cliente e uma máquina virtual provendo oambiente de computação requisitado, o transceptorestabelecendo uma conexão de ICA.
87. Servidor, de acordo com a reivindicação 78,caracterizado pelo fato do transceptor prover uma conexãoentre o sistema de cliente e uma máquina virtual provendo oambiente de computação requisitado, o transceptorestabelecendo uma conexão de RDP.
88. Sistema para a incorporação de janelas remotas apartir de ambientes de área de trabalho remotos díspares emum ambiente de área de trabalho local, o sistema caracterizado pelo fato de compreender:um primeiro canal virtual acoplado a um primeiroambiente de área de trabalho remoto provido por um sistemaoperacional nativo, o primeiro canal virtual portando dadosgráficos associados a uma janela remota provida peloprimeiro ambiente de área de trabalho remoto;um segundo canal virtual acoplado ao primeiro ambientede área de trabalho remoto e portando dados de atributo dejanela associados ã janela remota providos pelo primeiroambiente de área de trabalho remoto;um terceiro canal virtual acoplado a um segundoambiente de área de trabalho remoto provido por uma máquinavirtual, o terceiro canal virtual portando dados gráficosassociados a uma janela remota provida pelo segundoambiente de área de trabalho remoto;um quarto canal virtual acoplado ao segundo ambientede área de trabalho remoto e portando dados de atributo dejanela associados ã janela remota provida pelo segundoambiente de área de trabalho remoto; eum agente local acoplado aos ambientes de área detrabalho remotos através dos primeiro, segundo, terceiro equarto canais virtuais, o agente local dirigindo a formaçãode uma primeira janela local no ambiente de área detrabalho local correspondente à janela remota provida peloprimeiro ambiente de área de trabalho remoto e a formaçãode uma segunda janela local na ambiente de área de trabalholocal correspondente à janela remota provida pelo segundoambiente de área de trabalho remoto, a primeira janelalocal exibindo os dados gráficos portados pelo primeirocanal virtual de acordo com os dados de atributo de janelaportados pelo segundo canal virtual e a segunda janelalocal exibindo os dados gráficos portados pelo terceirocanal virtual de acordo com os dados de atributo de janelaportados pelo quarto canal virtual.
89. Sistema, de acordo com a reivindicação 88,caracterizado pelo fato de compreender ainda uma lista dejanelas combinadas sendo formada e mantida pelo agentelocal, a lista de janelas combinadas representando umaordem ζ modificável de uma janela no ambiente de área detrabalho local.
90. Sistema, de acordo com a reivindicação 88,caracterizado pelo fato dos dados de atributo de janelaassociados às janelas remotas e portados pelos segundo equarto canais virtuais incluírem o tamanho e a ordem ζ dasjanelas remotas.
91. Sistema, de acordo com a reivindicação 88,caracterizado pelo fato de compreender ainda um sistemaoperacional local que forma o ambiente de área de trabalholocal, o agente local periodicamente interrongando osistema operacional local para detectar uma mudança deatributo em uma dentre a primeira janela local e a segundajanela local, onde o agente local transmite uma mensagempara um dentre o primeiro ambiente de área de trabalhoremoto e o segundo ambiente de área de trabalho remotoindicativa da mudança de atributo.
92. Sistema, de acordo com a reivindicação 88,caracterizado pelo fato de compreender ainda um sistemaoperacional local que forma o ambiente de área de trabalholocal, o agente local detectando uma mudança de atributo emuma dentre a primeira janela local e a segunda janelalocal, onde o agente local transmite uma mensagem para umdentre o primeiro ambiente de área de trabalho remoto e osegundo ambiente de área de trabalho remoto indicativa damudança de atributo.
93. Sistema, de acordo com a reivindicação 88,caracterizado pelo fato de as janelas correspondentesexibirem dados de atributo de janela substancialmentesimilares em relação ao ambiente de área de trabalho localaos dados de atributo de janela das janelas remotas emrelação a seu respectivo ambiente de área de trabalhoremoto.
94. Sistema, de acordo com a reivindicação 88,caracterizado pelo fato de compreender ainda umapluralidade de links de comunicação acoplando o ambiente deárea de trabalho local a uma pluralidade de ambientes deárea de trabalho remotos, os links de comunicação incluindoprimeiro e segundo canais virtuais portando dados gráficose de atributo de janela associados às janelas remotas apartir da pluralidade de ambientes de área de trabalhoremotos para o agente local, onde o agente local formajanelas correspondentes no ambiente de área de trabalholocal correspondentes a cada uma da pluralidade de janelasremotas.
95. Método de incorporação de janelas remotas a partirde ambientes de área de trabalho remotos díspares em umambiente de área de trabalho local, o método caracterizadopelo fato de compreender as etapas de:(a) recebimento de dados gráficos associados a umajanela remota provida por um primeiro ambiente de área detrabalho remoto provido por um sistema operacional nativo,os dados gráficos recebidos através de um primeiro canalvirtual acoplado ao ambiente de área de trabalho remoto;(b) recebimento de dados de atributo de janelaassociados à janela remota providos pelo primeiro ambientede área de trabalho remoto através de um segundo canalvirtual acoplado ao primeiro ambiente de área de trabalhoremoto;(c) recebimento de dados gráficos associados a umajanela remota provida por um segundo ambiente de área detrabalho remoto provido por uma máquina virtual, os dadosgráficos recebidos através de um terceiro canal virtualacoplado ao segundo ambiente de área de trabalho remoto;(d) recebimento de dados de atributo de janelaassociados à segunda janela remota providos pelo segundoambiente de área de trabalho remoto através de um quartocanal virtual acoplado ao segundo ambiente de área detrabalho remoto;(e) formação de uma primeira janela no ambiente deárea de trabalho local exibindo os dados gráficos recebidosa partir do primeiro canal virtual de acordo com os dadosde atributo de janela recebidos a partir do segundo canalvirtual; e(f) formação de uma segunda janela no ambiente de áreade trabalho local exibindo os dados gráficos recebidos apartir do terceiro canal virtual de acordo com os dados deatributo de janela recebidos a partir do quarto canalvirtual.
96. Método, de acordo com a reivindicação 95,caracterizado pelo fato de compreender ainda a etapa deformação de uma lista de janelas combinadas armazenandopelo menos alguns dos dados de atributo de janela.
97. Método, de acordo com a reivindicação 95,caracterizado pelo fato de ainda compreender as etapas de:interrogação de um sistema operacional local associado aoambiente de área de trabalho local para detectar umamudança de atributo em uma dentre a primeira janela local ea segunda janela local e transmissão de uma mensagem paraum dentre o primeiro ambiente de área de trabalho remoto eo segundo ambiente de área de trabalho remoto indicativa damudança de atributo detectada.
98. Método, de acordo com a reivindicação 95,caracterizado pelo fato de as janelas locais exibirem dadosde atributo de janela substancialmente similares em relaçãoao ambiente de área de trabalho local aos dados de atributode janela das janelas remotas em relação aos ambientes deárea de trabalho remotos.
99. Sistema para a incorporação de janelas remotas apartir de ambientes de área de trabalho remotos em umambiente de área de trabalho local, o sistema caracterizadopelo fato de compreender:um primeiro canal virtual acoplado a um ambiente deárea de trabalho remoto provido por uma máquina virtual, oprimeiro canal virtual portando dados gráficos associados auma janela remota providos pelo ambiente de área detrabalho remoto;um segundo canal virtual acoplado ao ambiente de áreade trabalho remoto e portando dados de atributo de janelaassociados à janela remota providos pelo ambiente de áreade trabalho remoto; eum agente local acoplado ao ambiente de área detrabalho remoto através dos primeiro e segundo canaisvirtuais, o agente local dirigindo a formação de uma janelalocal no ambiente de área de trabalho local correspondenteà janela remota provida pelo ambiente de área de trabalhoremoto, a janela local exibindo os dados gráficos portadospelo primeiro canal virtual de acordo com os dados deatributo de janela portados pelo segundo canal virtual.
100. Sistema, de acordo com a reivindicação 99,caracterizado pelo fato de compreender ainda uma lista dejanelas combinadas sendo formada e mantida pelo agentelocal, a lista de janelas combinadas representando umaordem z modificável de uma janela no ambiente de área detrabalho local.
101. Sistema, de acordo com a reivindicação 99,caracterizado pelo fato dos dados de atributo de janelaassociados às janelas remotas e portados pelo segundo canalvirtual incluírem o tamanho e a ordem ζ da janela remota.
102. Sistema, de acordo com a reivindicação 99,caracterizado pelo fato de compreender ainda um sistemaoperacional local que forma o ambiente de área de trabalholocal, o agente local periodicamente interrongando osistema operacional local para detectar uma mudança deatributo na janela local, onde o agente local transmite umamensagem para o ambiente de área de trabalho remotoindicativa da mudança de atributo.
103. Sistema, de acordo com a reivindicação 99,caracterizado pelo fato da janela correspondente exibirdados de atributo de janela substancialmente similares emrelação ao ambiente de área de trabalho local aos dados deatributo de janela da janela remota em relação ao ambientede área de trabalho remoto.
104. Sistema, de acordo com a reivindicação 99,caracterizado pelo fato de compreender ainda umapluralidade de links de comunicação acoplando o ambiente deárea de trabalho local a uma pluralidade de ambientes deárea de trabalho remotos, os links de comunicação incluindoprimeiro e segundo canais virtuais portando dados gráficose de atributo de janela associados às janelas remotas apartir da pluralidade de ambientes de área de trabalhoremotos para o agente local, onde o agente local formajanelas correspondentes no ambiente de área de trabalholocal correspondentes a cada uma da pluralidade de janelasremotas.
105. Sistema, de acordo com a reivindicação 99,caracterizado pelo fato de compreender ainda:um terceiro canal virtual acoplado a um segundoambiente de área de trabalho remoto provido por uma segundamáquina virtual, o terceiro canal virtual portando dadosgráficos associados a uma segunda janela remota providapelo segundo ambiente de área de trabalho remoto; eum quarto canal virtual acoplado ao segundo ambientede área de trabalho remoto e portando dados de atributo dejanela associados à segunda janela remota provida pelosegundo ambiente de área de trabalho remoto.
106. Sistema, de acordo com a reivindicação 105,caracterizado pelo fato do agente local acoplado aosambientes de área de trabalho remotos através dos primeiro,segundo, terceiro e quarto canais virtuais dirigir aformação de uma primeira janela local no ambiente de áreade trabalho local correspondente à primeira janela remotaprovida pelo primeiro ambiente de área de trabalho remoto ea formação de uma segunda janela local no ambiente de áreade trabalho local correspondente à segunda janela remotaprovida pelo segundo ambiente de área de trabalho remoto, aprimeira janela local exibindo os dados gráficos portadospelo primeiro canal virtual de acordo com os dados deatributo de janela portados pelo segundo canal virtual e asegunda janela local exibindo os dados gráficos portadospelo terceiro canal virtual de acordo com os dados deatributo de janela portados pelo quarto canal virtual.
107. Método de incorporação de janelas remotas apartir de ambientes de área de trabalho remotos em umambiente de área de trabalho local, o método caracterizadopelo fato de compreender as etapas de:(a) recebimento de dados gráficos associados a umajanela remota provida por um ambiente de área de trabalhoremoto provido por uma máquina virtual, os dados gráficosrecebidos através de um primeiro canal virtual acoplado aoambiente de área de trabalho remoto;(b) recebimento de dados de atributo de janelaassociados à janela remota providos pelo ambiente de áreade trabalho remoto através de um segundo canal virtualacoplado ao ambiente de área de trabalho remoto; e(c) formação de uma primeira janela no ambiente deárea de trabalho local exibindo os dados gráficos recebidosa partir do primeiro canal virtual de acordo com os dadosde atributo de janela recebidos a partir do segundo canalvirtual.
108. Método, de acordo com a reivindicação 107,caracterizado pelo fato de compreender ainda a etapa deformação de uma lista de janelas combinadas que armazenapelo menos alguns dos dados de atributo de janela.
109. Método, de acordo com a reivindicação 107,caracterizado pelo fato de compreender ainda as etapas de:interrogação de um sistema operacional local associado aoambiente de área de trabalho local para a detecção de umamudança de atributo na janela local e transmissão de umamensagem para o ambiente de área de trabalho remotoindicativa da mudança de atributo detectada.
110. Método, de acordo com a reivindicação 107,caracterizado pelo fato da janela local exibir dados deatributo de janela substancialmente similares em relação aoambiente de área de trabalho local aos dados de atributo dejanela da janela remota em relação ao ambiente de área detrabalho remoto.
111. Método, de acordo com a reivindicação 107,caracterizado pelo fato de compreender ainda as etapas de:recebimento de dados gráficos associados a uma segundajanela remota provida por um segundo ambiente de área detrabalho remoto provido por uma segunda máquina virtual, osdados gráficos recebidos através de um terceiro canalvirtual acoplado ao segundo ambiente de área de trabalhoremoto; erecebimento de dados de atributo de janela associadosà segunda janela remota provida pelo segundo ambiente deárea de trabalho remoto através de um quarto canal virtualacoplado ao segundo ambiente de área de trabalho remoto.
112. Método, de acordo com a reivindicação 111,caracterizado pelo fato da etapa (c) compreender ainda aformação de uma segunda janela local no ambiente de área detrabalho local exibindo os dados gráficos recebidos apartir do terceiro canal virtual de acordo com os dados deatributo de janela recebidos a partir do quarto canalvirtual.
113. Método para execução de um programa aplicativorequisitado por. uma máquina de cliente, o métodocaracterizado pelo fato de compreender:(a) o recebimento de um arquivo que inclui umainformação de acesso para acesso a uma pluralidade dearquivos aplicativos e para execução de um primeiro clientecapaz de receber uma transmissão contínua de aplicativo;(b) a recuperação de uma identificação da pluralidadede arquivos aplicativos, em resposta ao arquivo;(c) recuperação de pelo menos uma característicarequerida para execução da pluralidade de arquivosaplicativos, em resposta ao arquivo;(d) determinar se uma máquina de cliente inclui pelomenos uma característica; e(e) execução de um segundo cliente, em resposta a umadeterminação que a máquina de cliente carece de pelo menosuma característica, o segundo cliente requisitando umaexecução da pluralidade de arquivos aplicativos em umamáquina remota compreendendo uma máquina virtual provendoum ambiente de computação que tem pelo menos umacaracterística.
114. Método, de acordo com a reivindicação 113,caracterizado pelo fato da etapa (a) compreender ainda orecebimento de uma informação de acesso que inclui umaidentificação de uma localização de uma pluralidade dearquivos aplicativos compreendendo um programa aplicativo.
115. Método, de acordo com a reivindicação 113,caracterizado pelo fato da etapa (b) ainda compreender arecuperação de uma identificação de uma pluralidade dearquivos aplicativos, a pluralidade de arquivos aplicativoscompreendendo um ou mais programas aplicativos.
116. Método, de acordo com a reivindicação 113,caracterizado pelo fato da etapa (b) ainda compreender orecebimento de uma enumeração de uma pluralidade deprogramas aplicativos disponíveis, a enumeração gerada emresposta à informação de acesso.
117. Método, de acordo com a reivindicação 113,caracterizado pelo fato da etapa (c) ainda compreender arecuperação de uma identificação de pelo menos umacaracterística requerida para execução da pluralidade dearquivos aplicativos, em resposta ao arquivo.
118. Método, de acordo com a reivindicação 113,caracterizado pelo fato da etapa (d) compreender ainda aavaliação de um sistema operacional na máquina de cliente.
119. Método, de acordo com a reivindicação 113,caracterizado pelo fato da etapa (d) compreender ainda aidentificação de uma linguagem usada por um sistemaoperacional na máquina de cliente.
120. Método, de acordo com a reivindicação 113,caracterizado pelo fato da etapa (d) compreender ainda aidentificação de um nível de revisão de um sistemaoperacional na máquina de cliente.
121. Método, de acordo com a reivindicação 113,caracterizado pelo fato da etapa (d) compreender ainda aidentificação de uma versão de aplicativo de um programaaplicativo residente na máquina de cliente.
122. Método, de acordo com a reivindicação 113,caracterizado pelo fato da etapa (d) ainda compreenderdeterminar se a máquina de cliente inclui um driver dedispositivo.
123. Método, de acordo com a reivindicação 113,caracterizado pelo fato da etapa (d) compreender aindadeterminar se a máquina de cliente inclui uma licença paraexecução da pluralidade de arquivos aplicativos.
124. Método, de acordo com a reivindicação 113,caracterizado pelo fato da etapa (d) compreender ainda aexecução de um script e determinar se a máquina de clienteinclui pelo menos uma característica em resposta à execuçãodo script.
125. Método, de acordo com a reivindicação 113,caracterizado pelo fato da etapa (d) compreender ainda orecebimento de instruções sobre como determinar se amáquina de cliente inclui pelo menos uma característica.
126. Método, de acordo com a reivindicação 113,caracterizado pelo fato da etapa (d) compreender aindareceber um agente de coleta, o agente de coleta acumulandouma informação associada à máquina de cliente edeterminando se a máquina de cliente inclui pelo menos umacaracterística.
127. Método, de acordo com a reivindicação 113,caracterizado pelo fato da etapa (d) compreender ainda orecebimento, pelo segundo cliente, de dados de saída deaplicativo gerados pela execução da pluralidade de arquivosaplicativos na máquina virtual.
128. Método, de acordo com a reivindicação 127,caracterizado pelo fato da etapa (e) compreender ainda aexibição, pelo segundo cliente, da saída de aplicativo namáquina de cliente.
129. Método, de acordo com a reivindicação 127,caracterizado pelo fato da etapa (e) compreender ainda orecebimento, pelo segundo cliente, de dados de saída deaplicativo através de um protocolo de camada deapresentação.
130. Método, de acordo com a reivindicação 12 7,caracterizado pelo fato da etapa (e) compreender ainda orecebimento, pelo segundo cliente, de dados de saída deaplicativo através de uma conexão de ICA.
131. Método, de acordo com a reivindicação 127,caracterizado pelo fato da etapa (e) compreender ainda orecebimento, pelo segundo cliente, de dados de saída deaplicativo através de uma conexão de Xll.
132. Método, de acordo com a reivindicação 127,caracterizado pelo fato da etapa (e) compreender ainda orecebimento, pelo segundo cliente, de dados de saída deaplicativo através de uma conexão de RDP.
133. Método, de acordo com a reivindicação 113,caracterizado pelo fato da etapa (e) compreender ainda aexecução, pela máquina virtual, da pluralidade de arquivosaplicativos.
134. Método, de acordo com a reivindicação 113,caracterizado pelo fato da etapa (e) compreender ainda orecebimento para execução, pela máquina virtual, de umatransmissão contínua de aplicativo compreendendo apluralidade de arquivos aplicativos.
135. Método, de acordo com a reivindicação 113,caracterizado pelo fato da etapa (e) compreender ainda amáquina remota aprovisionar a máquina virtual em resposta apelo menos uma característica.
136. Método, de acordo com a reivindicação 113,caracterizado pelo fato da etapa (e) compreender ainda arequisição, a partir da máquina remota, da execução dapluralidade de arquivos aplicativos por uma segunda máquinaremota aprovisionando a máquina virtual em resposta a pelomenos uma característica.
137. Método, de acordo com a reivindicação 113,caracterizado pelo fato da etapa (e) compreender ainda aexecução de um segundo cliente, em resposta a umadeterminação que a máquina de cliente carece de pelo menosuma característica, o segundo cliente requisitando aexecução da pluralidade de arquivos aplicativos em umamáquina remota compreendendo uma máquina virtual provendoum ambiente de computação que tem pelo menos umacaracterística, a máquina virtual aberta por um hipervisorem execução em uma sessão de serviços de terminal providapor um sistema operacional em execução na máquina remota.
138. Sistema para acesso a uma pluralidade de arquivoscompreendendo um programa aplicativo, o sistemacaracterizado por compreender:um arquivo compreendendo uma informação de acesso paraacesso a uma pluralidade de arquivos aplicativos;um primeiro cliente em execução em uma máquina decliente e capaz de receber uma transmissão contínua deaplicativo, o primeiro cliente recebendo o arquivo,recuperando uma identificação de uma pluralidade dearquivos aplicativos e pelo menos uma característicarequerida para execução da pluralidade de arquivosaplicativos e, em resposta ao arquivo, determinando se amáquina de cliente inclui pelo menos uma característica; eum segundo cliente que recebe o arquivo a partir doprimeiro cliente e requisitando, em resposta a umadeterminação pelo primeiro cliente que a máquina de clientecarece de pelo menos uma característica, a execução dapluralidade de arquivos aplicativos em uma máquina virtualprovendo um ambiente de computação que tem pelo menos umacaracterística.
139. Sistema, de acordo com a reivindicação 138,caracterizado pelo fato do arquivo compreender ainda umaidentificação de uma localização de uma pluralidade dearquivos aplicativos compreendendo um programa aplicativo.
140. Sistema, de acordo com a reivindicação 138,caracterizado pelo fato da pluralidade de arquivosaplicativos ainda compreender um ou mais programasaplicativos.
141. Sistema, de acordo com a reivindicação 138,caracterizado pelo fato do primeiro cliente aindacompreender um meio para recebimento de uma enumeração deuma pluralidade de programas aplicativos disponíveis, aenumeração gerada em resposta à informação de acesso.
142. Sistema, de acordo com a reivindicação 138,caracterizado pelo fato do primeiro cliente aindacompreender um meio para avaliação de um sistemaoperacional na máquina de cliente.
143. Sistema, de acordo com a reivindicação 138,caracterizado pelo fato do primeiro cliente aindacompreender um meio para a identificação de uma linguagemusada por um sistema operacional na máquina de cliente.
144. Sistema, de acordo com a reivindicação 138,caracterizado pelo fato do primeiro cliente aindacompreender um meio para a identificação de um nível derevisão de um sistema operacional na máquina de cliente.
145. Sistema, de acordo com a reivindicação 138,caracterizado pelo fato do primeiro cliente aindacompreender um meio para a identificação de uma versão deaplicativo de um programa aplicativo residente na máquinade cliente.
146. Sistema, de acordo com a reivindicação 138,caracterizado pelo fato do primeiro cliente compreenderainda um meio para se determinar se a máquina de clienteinclui um driver de dispositivo.
147. Sistema, de acordo com a reivindicação 138,caracterizado pelo fato do primeiro cliente compreenderainda um meio para se determinar se a máquina de clienteinclui uma licença para execução da pluralidade de arquivosaplicativos.
148. Sistema, de acordo com a reivindicação 138,caracterizado pelo fato do primeiro cliente compreenderainda um script, o primeiro cliente determinando se amáquina de cliente inclui pelo menos uma característica emresposta a uma execução do script.
149. Sistema, de acordo com a reivindicação 138,caracterizado pelo fato do primeiro cliente compreenderainda um receptor que recebe instruções quanto a comodeterminar se a máquina de cliente inclui pelo menos umacaracterística.
150. Sistema, de acordo com a reivindicação 138,caracterizado pelo fato do primeiro cliente compreenderainda um receptor que recebe um agente de coleta, o agentede coleta acumulando uma informação associada à máquina decliente e determinando se a máquina de cliente inclui pelomenos uma característica.
151. Sistema, de acordo com a reivindicação 138,caracterizado pelo fato do segundo cliente compreenderainda um meio para recebimento, pelo segundo cliente dedados de saída de aplicativo gerados pela execução dapluralidade de arquivos aplicativos na máquina virtual.
152. Sistema, de acordo com a reivindicação 151,caracterizado pelo fato do segundo cliente compreenderainda um meio para exibição dos dados de saída deaplicativo na máquina de cliente.
153. Sistema, de acordo com a reivindicação 151,caracterizado pelo fato do segundo cliente compreenderainda um meio para recebimento de dados de saída deaplicativo através de um protocolo de camada deapresentação.
154. Sistema, de acordo com a reivindicação 151,caracterizado pelo fato do segundo cliente compreenderainda um meio para recebimento de dados de saída deaplicativo através de uma conexão de ICA.
155. Sistema, de acordo com a reivindicação 151,caracterizado pelo fato do segundo cliente compreenderainda um meio para recebimento de dados de saída deaplicativo através de uma conexão de Xll.
156. Sistema, de acordo com a reivindicação 151,caracterizado pelo fato do segundo cliente compreenderainda um meio para recebimento de dados de saída deaplicativo através de uma conexão de RDP.
157. Sistema, de acordo com a reivindicação 138,caracterizado pelo fato da máquina virtual compreenderainda um meio para recebimento para execução de umatransmissão contínua de aplicativo compreendendo apluralidade de arquivos aplicativos.
158. Sistema, de acordo com a reivindicação 138,caracterizado pelo fato da máquina remota compreender aindaum meio para aprovisionamento da máquina virtual emresposta a pelo menos uma característica.
159. Sistema, de acordo com a reivindicação 138,caracterizado pelo fato de uma segunda máquina remotacompreender ainda um meio para aprovisionamento da máquinavirtual em resposta a pelo menos uma característica.
160. Sistema, de acordo com a reivindicação 138,caracterizado pelo fato do segundo cliente compreenderainda a requisição da execução da pluralidade de arquivosaplicativos em uma máquina virtual aberta por um hipervisorem execução em uma sessão de serviços de terminal providapor um sistema operacional em execução em uma dapluralidade de máquinas de execução, a máquina virtualprovendo o ambiente de computação tendo pelo menos umacaracterística.
161. Método para provisão de acesso remoto a umambiente de computação provido por uma máquina virtual, ométodo caracterizado pelo fato de compreender:(a) o recebimento de uma informação de autenticaçãoassociada a um usuário de uma máquina de cliente;(b) a identificação, com base na informação deautenticação recebida, de um ambiente de computação providopor um sistema operacional virtualizado e já associado aousuário; e(c) o estabelecimento de uma conexão entre a máquinade cliente e o ambiente de computação identificado.
162. Método, de acordo com a reivindicação 161,caracterizado pelo fato da etapa (a) compreender ainda aacumulação, por um agente de coleta, de uma informaçãosobre a máquina de cliente.
163. Método, de acordo com a reivindicação 162,caracterizado pelo fato da etapa (b) compreender aidentificação, com base na informação de autenticaçãorecebida e na informação de máquina de cliente acumulada,de um ambiente de computação provido por uma máquinavirtual e já associado ao usuário.
164. Método, de acordo com a reivindicação 162,caracterizado pelo fato da etapa (c) compreender oestabelecimento de uma conexão entre a máquina de cliente eo ambiente de computação identificado sujeito a uma regraaplicada à informação de autenticação recebida e àinformação de definição e máquina de cliente acumulada.
165. Método, de acordo com a reivindicação 161,caracterizado pelo fato da etapa (b) compreender aidentificação, com base na informação de autenticaçãorecebida, de um primeiro ambiente de computação provido poruma primeira máquina virtual e um segundo ambiente decomputação provido por uma segunda máquina virtual, osprimeiro e segundo ambientes de computação já associados aousuário.
166. Método, de acordo com a reivindicação 161,caracterizado pelo fato da etapa (b) compreender aidentificação, com base na informação de autenticaçãorecebida, de um primeiro ambiente de computação provido poruma primeira máquina virtual em execução em um primeiroservidor e um segundo ambiente de computação provido poruma segunda máquina virtual em execução em um segundoservidor, os primeiro e segundo ambientes de computação jáassociados ao usuário.
167. Método, de acordo com a reivindicação 161,caracterizado pelo fato da etapa (c) compreender oestabelecimento de uma conexão entre a máquina de cliente eo ambiente de computação identificado sujeito a uma regra.
168. Método, de acordo com a reivindicação 161,caracterizado pelo fato de compreender ainda:o recebimento de uma requisição para desconexão damáquina de cliente do ambiente de computação identificado;ea terminação da conexão entre a máquina de cliente e oambiente de computação identificado.
169. Método, de acordo com a reivindicação 168,caracterizado pelo fato de compreender ainda a atualizaçãode um registro, de dados associado ao ambiente de computaçãoidentificado para indicar que a máquina de cliente estádesconectada.
170. Método, de acordo com a reivindicação 169,caracterizado pelo fato de compreender ainda uma etapa decontinuação da execução do ambiente de computaçãoidentificado.
171. Método, de acordo com a reivindicação 161,caracterizado pelo fato de compreender ainda a autenticaçãodo usuário em resposta à informação de autenticaçãorecebida.
172. Método, de acordo com a reivindicação 161,caracterizado pelo fato da etapa (b) compreender consultardados armazenados associados a pelo menos um ambiente decomputação para identificação, com base na informação deautenticação recebida, de um ambiente de computação providopor um sistema operacional virtualizado e já associado aousuário.
173. Método, de acordo com a reivindicação 161,caracterizado pelo fato de compreender ainda as etapas de:(a) recebimento de uma informação de autenticaçãoassociada ao usuário, o usuário usando uma segunda máquinade cliente;(b) a identificação, com base na informação deautenticação recebida, de um ambiente de computação providopor um sistema operacional virtualizado e já associado aousuário; e(c) o estabelecimento de uma conexão entre a segundamáquina de cliente e o ambiente de computação identificado.
174. Método, de acordo com a reivindicação 173,caracterizado pelo fato de compreender ainda a terminaçãoda conexão entre a primeira máquina de cliente e o ambientede computação identificado.
175. Método, de acordo com a reivindicação 161,caracterizado pelo fato da etapa (b) compreender ainda aidentificação de um ambiente de computação provido por umsistema operacional virtualizado aberto por um hipervisorem execução em uma sessão de serviços de terminal providapor um sistema operacional em execução em uma de umapluralidade de máquinas de execução.
176. Método, de acordo com a reivindicação 175,caracterizado pelo fato da etapa (c) compreender ainda oestabelecimento de uma conexão entre a máquina de cliente eo ambiente de computação identificado, através da sessão deserviços de terminal.
177. Método, de acordo com a reivindicação 161,caracterizado pelo fato da etapa (c) compreender ainda oestabelecimento de uma conexão de protocolo de camada deapresentação entre a máquina de cliente e o ambiente decomputação identificado.
178. Método, de acordo com a reivindicação 161,caracterizado pelo fato da etapa (c) compreender ainda oestabelecimento de uma conexão de Xll entre a máquina decliente e o ambiente de computação identificado.
179. Método, de acordo com a reivindicação 161,caracterizado pelo fato da etapa (c) compreender ainda oestabelecimento de uma conexão de ICA entre a máquina decliente e o ambiente de computação identificado.
180. Método, de acordo com a reivindicação 161,caracterizado pelo fato da etapa (c) compreender ainda oestabelecimento de uma conexão de RDP entre a máquina decliente e o ambiente de computação identificado.
181. Método para a provisão de acesso remoto a umapluralidade de sessões de aplicativo, o métodocaracterizado pelo fato de compreender:(a) o recebimento, em uma máquina de cliente, de umaseleção de um elemento de interface de usuário único por umusuário da máquina de cliente;(b) a transmissão, em resposta à seleção de elementode interface de usuário, de uma informação de autenticaçãoassociada ao usuário;(c) a identificação, com base na informação deautenticação transmitida, de um ambiente de computaçãoprovido por um sistema operacional virtualizado e jáassociado ao usuário; e(d) o estabelecimento de uma conexão entre a máquinade cliente e o ambiente de computação identificado.
182. Método, de acordo com a reivindicação 181,caracterizado pelo fato de compreender ainda a acumulação,por um agente de coleta, em resposta à informação recebida,de uma informação sobre a máquina de cliente.
183. Método, de acordo com a reivindicação 182,caracterizado pelo fato da etapa (c) compreender aidentificação, com base na informação de autenticaçãorecebida e na informação de máquina de cliente acumulada,de um ambiente de computaçao provido por um sistemaoperacional virtualizado e já associado ao usuário.
184. Método, de acordo com a reivindicação 182,caracterizado pelo fato da etapa (d) compreender oestabelecimento de uma conexão entre a máquina de cliente eo ambiente de computação identificado sujeito a uma regraaplicada à informação de autenticação recebida e àinformação de máquina de cliente acumulada.
185. Método, de acordo com a reivindicação 181,caracterizado pelo fato da etapa (c) compreender aidentificação, com base na informação de autenticaçãorecebida, de um primeiro ambiente de computação provido porum primeiro sistema operacional virtualizado e um segundoambiente de computação provido por um segundo sistemaoperacional virtualizado, os primeiro e segundo ambientesde computação já associados ao usuário.
186. Método, de acordo com a reivindicação 181,caracterizado pelo fato da etapa (c) compreender aidentificação, com base na informação de autenticaçãorecebida, de um primeiro ambiente de computação provido porum primeiro sistema operacional virtualizado em execução emum primeiro servidor e um segundo ambiente de computaçãoprovido por um segundo servidor, os primeiro e segundoambientes de computação já associados ao usuário.
187. Método, de acordo com a reivindicação 181,caracterizado pelo fato da etapa (d) compreender oestabelecimento de uma conexão entre a máquina de cliente eo ambiente de computação identificado sujeito a uma regra.
188. Método, de acordo com a reivindicação 181,caracterizado pelo fato de compreender ainda:o recebimento de uma requisição para desconexão damáquina de cliente do ambiente de computação identificado;ea terminação da conexão entre a máquina de cliente e oambiente de computação identificado.
189. Método, de acordo com a reivindicação 188,caracterizado pelo fato de compreender ainda a atualizaçãode um registro de dados associado ao ambiente de computaçãoidentificado para indicar que a máquina de cliente estádesconectada.
190. Método, de acordo com a reivindicação 189,caracterizado pelo fato de compreender ainda a etapa decontinuação da execução do ambiente de computaçãoidentificado.
191. Método, de acordo com a reivindicação 181,caracterizado pelo fato de compreender ainda a autenticaçãodo usuário em resposta à informação de autenticaçãorecebida.
192. Método, de acordo com a reivindicação 181,caracterizado pelo fato da etapa (c) compreender consultardados armazenados associados a pelo menos um ambiente decomputação para a identificação, com base na informação deautenticação recebida, de um ambiente de computação providopor um sistema operacional virtualizado e já associado aousuário.
193. Método, de acordo com a reivindicação 181,caracterizado pelo fato de compreender ainda as etapas de:(a) recebimento de uma informação de autenticaçãoassociada ao usuário, o usuário usando uma segunda máquinade cliente;(b) a identificação, com base na informação deautenticação recebida, de um ambiente de computação providopor um sistema operacional virtualizado e já associado aousuário; e(c) o estabelecimento de uma conexão entre a segundamáquina de cliente e o ambiente de computação identificado.
194. Método, de acordo com a reivindicação 193,caracterizado pelo fato de compreender ainda a terminaçãoda conexão entre a primeira máquina de cliente e o ambientede computação identificado.
195. Método, de acordo com a reivindicação 181,caracterizado pelo fato da etapa (c) compreender ainda aidentificação de um ambiente de computação provido por umsistema operacional virtualizado aberto por um hipervisorem execução em uma sessão de serviços de terminal providapor um sistema operacional em execução em uma de umapluralidade de máquinas de execução.
196. Método, de acordo com a reivindicação 195,caracterizado pelo fato da etapa (d) compreender ainda oestabelecimento de uma conexão entre a máquina de cliente eo ambiente de computação identificado, através da sessão deserviços de terminal.
197. Método, de acordo com a reivindicação 181,caracterizado pelo fato da etapa (d) compreender ainda oestabelecimento de uma conexão de protocolo de camada deapresentação entre a máquina de cliente e o ambiente decomputação identificado.
198. Método, de acordo com a reivindicação 181,caracterizado pelo fato da etapa (d) compreender ainda oestabelecimento de uma conexão de Xll entre a máquina decliente e o ambiente de computação identificado.
199. Método, de acordo com a reivindicação 181,caracterizado pelo fato da etapa (d) compreender ainda oestabelecimento de uma conexão de ICA entre a máquina decliente e o ambiente de computação identificado.
200. Método, de acordo com a reivindicação 181,caracterizado pelo fato da etapa (d) compreender ainda oestabelecimento de uma conexão de RDP entre a máquina decliente e o ambiente de computação identificado.
201. Servidor para a provisão de acesso remoto a umambiente de computação, o servidor caracterizado pelo fatode compreender:um módulo de rede que recebe uma informação deautenticação associada a um usuário operando uma máquina decliente;um armazenamento de dados contendo um identificador deum ambiente de computação associado ao usuário e providopor uma máquina virtual;um processo de intermediação conectando a máquina decliente ao ambiente de computaçao identificado enumerado noarmazenamento de dados em resposta à informação recebida.
202. Servidor, de acordo com a reivindicação 201,caracterizado pelo fato do armazenamento de dados conter umprimeiro identificador de um primeiro ambiente decomputação associado ao usuário e um segundo identificadorde um segundo ambiente de computaçao associado ao usuário.
203. Servidor, de acordo com a reivindicação 202,caracterizado pelo fato do primeiro ambiente de computaçãose executar em um primeiro servidor e do segundo ambientede computação se executar em um segundo servidor.
204. Servidor, de acordo com a reivindicação 201,caracterizado pelo fato do processo de intermediaçãoconectar o cliente ao ambiente de computação identificadosujeito a uma regra.
205. Servidor, de acordo com a reivindicação 201,caracterizado pelo fato do processo de intermediaçãodesconectar o computador cliente do ambiente de computaçãoidentificado em resposta a um sinal de desconexão recebido.
206. Servidor, de acordo com a reivindicação 205,caracterizado pelo fato do processo de intermediaçãoatualizar um registro de dados associado ao ambiente decomputação identificado para indicar que a máquina decliente está desconectada do ambiente de computaçãoidentificado.
207. Servidor, de acordo com a reivindicação 201,caracterizado pelo fato de compreender ainda um módulo deautenticação para autenticação do usuário, em resposta àinformação de autenticação recebida.
208. Servidor, de acordo com a reivindicação 201,caracterizado pelo fato de compreender ainda:um agente de coleta que coleta uma informação sobre amáquina de cliente; eum motor de política que recebe a informação acumuladae que atribui um de uma pluralidade de níveis de acesso emresposta a uma aplicação de uma política à informaçãorecebida, o processo de intermediação conectando a máquinade cliente ao ambiente de computaçao identificado enumeradono armazenamento de dados, em resposta ao nível de acessoatribuído.
209. Servidor, de acordo com a reivindicação 208,caracterizado pelo fato do motor de política aindacompreender um banco de dados armazenando políticasconfiguráveis.
210. Servidor, de acordo com a reivindicação 208,caracterizado pelo fato do motor de política transmitirinstruções para o agente de coleta determinando o tipo deinformação que o agente de coleta acumula.
211. Servidor, de acordo com a reivindicação 208,caracterizado pelo fato do motor de política aindacompreender um agente de logon.
212. Servidor, de acordo com a reivindicação 208,caracterizado pelo fato do motor de política aindacompreender uma pluralidade de agentes de logon.
213. Servidor, de acordo com a reivindicação 212,caracterizado pelo fato do agente de logon receber ainformação acumulada a partir do agente de coleta.
214. Servidor, de acordo com a reivindicação 212,caracterizado pelo fato do agente de logon identificar parao motor de política uma informação de autenticação recebidaa partir do agente de coleta.
215. Servidor, de acordo com a reivindicação 214,caracterizado pelo fato de pelo menos um da pluralidade deagentes de logon residir em cada domínio de rede a partirdo qual uma máquina de cliente pode transmitir umarequisição de recurso.
216. Servidor, de acordo com a reivindicação 215,caracterizado pelo fato da máquina de cliente transmitir arequisição de recurso para um agente de logon emparticular.
217. Servidor, de acordo com a reivindicação 212,caracterizado pelo fato do agente de logon identificar parao motor de política o domínio de rede a partir do qual amáquina de cliente transmite a requisição de recurso.
218. Servidor, de acordo com a reivindicação 208,caracterizado pelo fato do agente de coleta se executar namáquina de cliente.
219. Servidor, de acordo com a reivindicação 208,caracterizado pelo fato do motor de política transmitir oagente de coleta para a máquina de cliente.
220. Servidor, de acordo com a reivindicação 208,caracterizado pelo fato do agente de coleta compreenderpelo menos um script.
221. Servidor, de acordo com a reivindicação 208,caracterizado pelo fato do agente de coleta compreender umcódigo de byte.
222. Servidor, de acordo com a reivindicação 208,caracterizado pelo fato do agente de coleta acumular ainformação ao rodar pelo menos um script na máquina decliente.
223. Servidor, de acordo com a reivindicação 201,caracterizado pelo fato do armazenamento de dadoscompreender ainda um identificador em um ambiente decomputação associado ao usuário provido por uma máquinavirtual aberta por um hipervisor em execução em uma sessãode serviços de terminal provida por um sistema operacionalem execução em uma da pluralidade de máquinas de execução.
224. Servidor, de acordo com a reivindicação 201,caracterizado pelo fato do processo de intermediaçãocompreender ainda a conexão da máquina de cliente aoambiente de computação identificado, através da sessão deserviços de terminal.
225. Servidor, de acordo com a reivindicação 201,caracterizado pelo fato do processo de intermediaçãocompreender ainda o estabelecimento de uma conexão deprotocolo de camada de apresentação entre a máquina decliente e o ambiente de computação identificado.
226. Servidor, de acordo com a reivindicação 201,caracterizado pelo fato do processo de intermediaçãocompreender ainda o estabelecimento de uma conexão de Xllentre a máquina de cliente e o ambiente de computaçãoidentificado.
227. Servidor, de acordo com a reivindicação 201,caracterizado pelo fato do processo de intermediação aindacompreender o estabelecimento de uma conexão de ICA entre amáquina de cliente e o ambiente de computação identificado.
228. Servidor, de acordo com a reivindicação 201,caracterizado pelo fato do processo de intermediaçãocompreender ainda o estabelecimento de uma conexão de RDPentre a' máquina de cliente e o ambiente de computaçãoidentificado.
229. Sistema para a concessão de acesso a recursos,caracterizado pelo fato de compreender:uma máquina de cliente requisitando acesso a umrecurso;um agente de coleta coletando uma informação sobre amáquina de cliente;um motor de política que recebe a informação acumuladae atribui um de uma pluralidade de níveis de acesso emresposta à aplicação de uma política à informação recebida;eum servidor de intermediação que estabelece, emresposta ao nível atribuído de acesso, uma conexão entre amáquina de cliente e um ambiente de computação provendo orecurso requisitado, o ambiente de computação provido poruma máquina virtual.
230. Sistema, de acordo com a reivindicação 229,caracterizado pelo fato do motor de política aindacompreender um banco de dados que armazena políticasconfiguráveis.
231. Sistema, de acordo com a reivindicação 229,caracterizado pelo fato de um administrador de sistemaconfigurar políticas no motor de política para a provisãode um nível de direitos de controle de acesso à máquina decliente.
232. Sistema, de acordo com a reivindicação 229,caracterizado pelo fato do motor de política transmitirinstruções para o agente de coleta determinando o tipo deinformação que o agente de coleta acumula.
233. Sistema, de acordo com a reivindicação 229,caracterizado pelo fato do motor de política aindacompreender um agente de logon.
234. Agente de logon, de acordo com a reivindicação 233, caracterizado pelo fato do agente de logon receber ainformação acumulada a partir do agente de coleta.
235. Agente de logon, de acordo com a reivindicação 233, caracterizado pelo fato do agente de logon identificarpara o motor de política uma informação de autenticaçãorecebida a partir do agente de coleta.
236. Sistema, de acordo com a reivindicação 229,caracterizado pelo fato do motor de política compreenderainda uma pluralidade de agentes de logon.
237. Sistema, de acordo com a reivindicação 236,caracterizado pelo fato de pelo menos um da pluralidade deagentes de logon residir em cada domínio de rede a partirdo qual uma máquina de cliente pode transmitir umarequisição de recurso.
238. Sistema, de acordo com a reivindicação 237,caracterizado pelo fato da máquina de cliente transmitir arequisição de recurso para um agente de logon emparticular.
239. Sistema, de acordo com a reivindicação 238,caracterizado pelo fato do agente de logon identificar parao motor de política o domínio de rede a partir do qual amáquina de cliente transmite a requisição de recurso.
240. Sistema, de acordo com a reivindicação 229,caracterizado pelo fato do agente de coleta se executar namáquina de cliente.
241. Sistema, de acordo com a reivindicação 229,caracterizado pelo fato do motor de política transmitir oagente de coleta para a máquina de cliente.
242. Sistema, de acordo com a reivindicação 229,caracterizado pelo fato do agente de coleta compreenderpelo menos um script.
243. Sistema, de acordo com a reivindicação 229,caracterizado pelo fato do agente de coleta compreender umcódigo de byte.
244. Sistema, de acordo com a reivindicação 229,caracterizado pelo fato do agente de coleta acumular ainformação ao rodar pelo menos um script na máquina decliente.
245. Sistema, de acordo com a reivindicação 229,caracterizado pelo fato do agente de coleta acumular umainformação sobre a máquina de cliente, a referidainformação residente em um servidor.
246. Sistema, de acordo com a reivindicação 245,caracterizado pelo fato do agente de coleta acumular umainformação sobre cabeçalhos em HTTP.
247. Si stema, de acordo com a reivindicação 24 5,caracterizado pelo fato do agente de coleta acumular umainformação compreendendo a zona de rede da máquina decliente.
248. Sistema, de acordo com a reivindicação 245,caracterizado pelo fato do agente de coleta acumular umainformação que compreende o método de autenticação usadopela máquina de cliente.
249. Sistema, de acordo com a reivindicação 229,caracterizado pelo fato do agente de coleta acumular um IDde máquina da máquina de cliente.
250. Sistema, de acordo com a reivindicação 229,caracterizado pelo fato do agente de coleta acumular umainformação compreendendo um tipo de sistema operacional.
251. Sistema, de acordo com a reivindicação 229,caracterizado pelo fato do agente de coleta acumular umainformação compreendendo a existência de um remendo em umsistema operacional.
252. Sistema, de acordo com a reivindicação 229,caracterizado pelo fato do agente de coleta acumular umainformação compreendendo endereços de MAC de placas de redeinstaladas.
253. Sistema, de acordo com a reivindicação 229,caracterizado pelo fato do agente de coleta acumular umainformação compreendendo uma marca d'água na máquina decliente.
254. Sistema, de acordo com a reivindicação 229,caracterizado pelo fato do agente de coleta acumular umainformação compreendendo uma afiliação em um DiretórioAtivo.
255. Sistema, de acordo com a reivindicação 229,caracterizado pelo fato do agente de coleta acumular umainformaç ao compreendendo a existência de um varredor paravírus.
256. Sistema, de acordo com a reivindicação 229,caracterizado pelo fato do agente de coleta acumular umainformação compreendendo a existência de um firewall.
257. Sistema, de acordo com a reivindicação 229,caracterizado pelo fato do agente de coleta acumular umainformação compreendendo um cabeçalho em HTTP.
258. Método para concessão de acesso a recursos, ométodo caracterizado pelo fato de compreender:(a) a requisição, por uma máquina de cliente, deacesso a um recurso;(b) a acumulação, por um agente de coleta, de umainformação sobre a máquina de cliente;(c) o recebimento, pelo motor de política, dainformação acumulada;(d) a tomada de uma decisão de controle de acesso combase na informação recebida; e(e) o estabelecimento, em resposta à decisão decontrole de acesso, de uma conexão entre a máquina decliente e um ambiente de computação provendo o acessorequisitado, o ambiente de computação provido por umamáquina virtual.
259. Método, de acordo com a reivindicação 258,caracterizado pelo fato de a etapa (a) compreender ainda arequisição de um recurso por uma conexão de rede.
260. Método, de acordo com a reivindicação 258,caracterizado pelo fato de a etapa (b) compreender ainda aacumulação da informação por uma conexão de rede.
261. Método, de acordo com a reivindicação 258,caracterizado pelo fato de a etapa (b) compreender ainda aacumulação de uma informação pela execução de pelo menos umscript na máquina de cliente.
262. Método, de acordo com a reivindicação 258,caracterizado pelo fato da etapa (c) compreender aindadeterminar se a informação recebida satisfaz a umacondição.
263. Método, de acordo com a reivindicação 262,caracterizado pelo fato da etapa (d) compreender aindatomar uma decisão de controle de acesso pela aplicação deuma política à condição.
264. Método, de acordo com a reivindicação 258,caracterizado pelo fato da etapa (e) compreender ainda oestabelecimento da conexão entre a máquina de cliente e oambiente de computação provido por uma máquina virtual, amáquina virtual selecionada em resposta à decisão decontrole de acesso.
265. Método, de acordo com a reivindicação 258,caracterizado pelo fato da etapa (e) compreender aindadeterminar, em resposta à decisão de controle de acesso, seé para estabelecer uma conexão entre a máquina de cliente eum ambiente de computação provendo o acesso requisitado, oambiente de computação provido por uma máquina remota.
266. Método para a provisão de acesso remotoautorizado a um ambiente de computação provido por umamáquina virtual, o método caracterizado pelo fato decompreender:(a) a requisição, por uma máquina de cliente, deacesso a um recurso;(b) a acumulação, por um agente de coleta, de umainformação sobre a máquina de cliente;(c) o recebimento, por um motor de política, dainformação acumulada;(d) a tomada, por um motor de política, de uma decisãode controle de acesso com base na informação recebida;(e) a identificação de um ambiente de computação jáassociado ao usuário, em resposta à informação recebida, oambiente de computação identificado provido por uma máquinavirtual; e(f) o estabelecimento, por um servidor deintermediação, em resposta à decisão de controle de acesso,de uma conexão entre a máquina de cliente e o ambiente decomputação identificado.
267. Método, de acordo com a reivindicação 266,caracterizado pelo fato da etapa (a) compreender ainda arequisição do recurso por uma conexão de rede.
268. Método, de acordo com a reivindicação 266,caracterizado pelo fato de a etapa (b) compreender ainda aacumulação da informação por uma conexão de rede.
269. Método, de acordo com a reivindicação 266,caracterizado pelo fato da etapa (b) compreender ainda aacumulação de uma informação pela execução de pelo menos umscript na máquina de cliente.
270. Método, de acordo com a reivindicação 266,caracterizado pelo fato da etapa (d) compreender aindadeterminar se a informação recebida satisfaz a umacondição.
271. Método, de acordo com a reivindicação 270,caracterizado pelo fato de compreender ainda determinar sea informação recebida satisfaz a uma condição pelacomparação da informação recebida com pelo menos umacondição.
272. Método, de acordo com a reivindicação 271,caracterizado pelo fato da etapa (d) compreender aindatomar uma decisão de controle de acesso pela aplicação deuma política à condição.
273. Método, de acordo com a reivindicação 266,caracterizado pelo fato da etapa (e) compreender aidentificação, em resposta à informação recebida, de umprimeiro ambiente de computação e de um segundo ambiente decomputação, os primeiro e segundo ambientes de computaçãojá associados ao usuário.
274. Método, de acordo com a reivindicação 266,caracterizado pelo fato da etapa (e) compreender aidentificação, em resposta à informação recebida, de umprimeiro ambiente de computação em execução em um primeiroservidor e de um segundo ambiente de computação em execuçãoem um segundo servidor, os primeiro e segundo ambientes decomputação já associados ao usuário.
275. Método, de acordo com a reivindicação 266,caracterizado pelo fato da etapa (e) compreender ainda aidentificação, em resposta à informação recebida, de umambiente de computação já associado ao usuário, o ambientede computação identificado compreendendo uma primeirasessão de aplicativo e a identificação, em resposta àinformação recebida, de um segundo ambiente de computação,já associado ao usuário e compreendendo uma segunda sessãode aplicativo.
276. Método, de acordo com a reivindicação 2 75,caracterizado pelo fato da primeira sessão de aplicativo seexecutar em um primeiro servidor e a segunda sessão deaplicativo se executar em um segundo servidor.
277. Método, de acordo com a reivindicação 266,caracterizado pelo fato da etapa (f) compreender oestabelecimento, por um servidor de intermediação, de umaconexão entre a máquina de cliente e o ambiente decomputação identificado sujeito a uma regra.
278. Método, de acordo com a reivindicação 266,caracterizado pelo fato de compreender ainda a etapa dedesconexão, pelo servidor de intermediação, da máquina decliente do ambiente de computação identificado, em respostaao recebimento de um sinal de desconexão.
279. Método, de acordo com a reivindicação 278,caracterizado pelo fato de compreender ainda a atualização,pelo servidor de intermediação, de pelo menos um registrode dados associado ao ambiente de computação identificadoindicando que a máquina de cliente e o ambiente decomputação identificado estão desconectados.
280. Sistema para a provisão de acesso remotoautorizado a um ambiente de computação provido por umamáquina virtual, o sistema caracterizado pelo fato decompreender:um agente de coleta acumulando informação sobre umamáquina de cliente;um motor de política recebendo a informação acumulada,tomando uma decisão de controle de acesso com base nainformação recebida, e requisitando uma enumeração deambientes de computação associados a um usuário da máquinade cliente, a requisição incluindo a decisão de controle deacesso; eum servidor de intermediação enumerando um ambiente decomputação associado à máquina de cliente, em resposta àdecisão de controle de acesso, o ambiente de computaçãoenumerado provido por uma máquina virtual.
281. Sistema, de acordo com a reivindicação 280,caracterizado pelo fato do agente de coleta se executar namáquina de cliente.
282. Sistema, de acordo com a reivindicação 280,caracterizado pelo fato do motor de política transmitir oagente de coleta para a máquina de cliente.
283. Sistema, de acordo com a reivindicação 280,caracterizado pelo fato do motor de política transmitirinstruções para o agente de coleta determinando o tipo deinformação que o agente de coleta acumula.
284. Sistema, de acordo com a reivindicação 280,caracterizado pelo fato do motor de política tomar umadecisão de controle de acesso com base na aplicação de umapolítica à informação acumulada.
285. Sistema, de acordo cora a reivindicação 280,caracterizado pelo fato do servidor de intermediaçãoenumerar um primeiro ambiente de computação e um segundoambiente de computação, os primeiro e segundo ambientes decomputação já associados ao usuário.
286. Sistema, de acordo com a reivindicação 280,caracterizado pelo fato do servidor de intermediaçãoenumerar um primeiro ambiente de computação em execução emum primeiro servidor e um segundo ambiente de computação emexecução em um segundo servidor, os primeiro e segundoambientes de computação já associados ao usuário.
287. Sistema, de acordo com a reivindicação 280,caracterizado pelo fato do servidor de intermediaçãocompreender ainda a enumeração de um ambiente de computaçãoidentificado já associado ao usuário, o ambiente decomputação identificado compreendendo uma primeira sessãode aplicativo, e a enumeração de um segundo ambiente decomputação já associado ao usuário e compreendendo umasegunda sessão de aplicativo.
288. Sistema, de acordo com a reivindicação 287,caracterizado pelo fato da primeira sessão de aplicativo seexecutar em um primeiro servidor e a segunda sessão deaplicativo se executar em um segundo servidor.
289. Sistema, de acordo com a reivindicação 280,caracterizado pelo fato do servidor de intermediaçãodesconectar a máquina de cliente do ambiente de computaçãoidentificado mediante o recebimento de um sinal dedesconexão.
290. Sistema, de acordo com a reivindicação 289,caracterizado pelo fato do servidor de intermediaçãoatualizar um registro de dados associado ao ambiente decomputação identificado para indicar que a máquina decliente e o ambiente de computação estão desconectados.
291. Método para seleção de um método de execução paraum programa aplicativo, o método caracterizado pelo fato decompreender:(a) o recebimento de credenciais;(b) a enumeração de uma pluralidade de aplicativosdisponíveis para uma máquina de cliente, em resposta àscredenciais recebidas;(c) o recebimento de uma requisição para execução deum aplicativo enumerado; e(d) a seleção de um de um número predeterminado demétodos para execução do aplicativo requisitado, emresposta a uma política, o número predeterminado de métodosincluindo um método para execução do aplicativo requisitadoem um ambiente de computação provido por uma máquinavirtual.
292. Método, de acordo com a reivindicação 291,caracterizado pelo fato de compreender ainda a etapa deprovisão de uma informação de acesso associada aoaplicativo enumerado, a informação de acesso gerada emresposta ao método selecionado.
293. Método, de acordo com a reivindicação 291,caracterizado pelo fato da etapa (a) compreender ainda orecebimento de credenciais associadas a um usuário de umamáquina de cliente.
294. Método, de acordo com a reivindicação 291,caracterizado pelo fato da etapa (c) compreender ainda orecebimento de uma requisição para execução de umaplicativo enumerado, o aplicativo enumerado compreendendouma pluralidade de arquivos aplicativos.
295. Método, de acordo com a reivindicação 291,caracterizado pelo fato da etapa (d) compreender ainda aseleção de um método para:(d-1) transmissão contínua do aplicativo requisitadopara uma máquina virtual; e(d-2) execução do aplicativo enumerado na máquinavirtual.
296. Método, de acordo com a reivindicação 295,caracterizado pelo fato da etapa (d) compreender ainda aavaliação, antes da etapa (d-1), da máquina virtual.
297. Método, de acordo com a reivindicação 296,caracterizado pelo fato de a etapa (d) compreender ainda adeterminação para transmissão contínua do aplicativorequisitado em resposta à avaliação.
298. Método, de acordo com a reivindicação 295,caracterizado pelo fato da etapa (d-1) compreender ainda atransmissão contínua para a máquina virtual de um de umapluralidade de arquivos compreendendo o aplicativoenumerado.
299. Método, de acordo com a reivindicação 295,caracterizado pelo fato de compreender ainda a provisão dedados de saída de aplicativo gerados pela execução doaplicativo através de um protocolo de nível deapresentação.
300. Método, de acordo com a reivindicação 295,caracterizado pelo fato de compreender ainda a provisão dedados de saída de aplicativo gerados pela execução doaplicativo através de um protocolo de nível de apresentaçãode Arquitetura de Computação Independente ou de umprotocolo de nível de apresentação de Windows DesktopRemoto ou um protocolo de nível de apresentação de X-Windows.
301. Método, de acordo com a reivindicação 295,caracterizado pelo fato da etapa (d-1) compreender ainda aidentificação de uma máquina virtual em resposta a umaavaliação da máquina de cliente.
302. Método, de acordo com a reivindicação 295,caracterizado pelo fato da etapa (d-1) compreender ainda aseleção da máquina virtual em resposta a uma política.
303. Método, de acordo com a reivindicação 291,caracterizado pelo fato da etapa (d) compreender ainda aidentificação de uma versão do aplicativo requisitado paraexecução.
304. Método, de acordo com a reivindicação 3 03,caracterizado pelo fato da etapa (d) compreender ainda oaprovisionamento de uma máquina virtual para execução doaplicativo requisitado, a máquina virtual selecionada emresposta à versão identificada do aplicativo requisitado.
305. Método, de acordo com a reivindicação 303,caracterizado pelo fato da etapa (d) compreender ainda aidentificação de um modelo a partir do qual se aprovisionauma máquina virtual, o modelo selecionado em resposta àversão identificada do aplicativo requisitado.
306. Método, de acordo com a reivindicação 291,caracterizado pelo fato da etapa (a) compreender ainda asetapas de:(a-1) recebimento de uma requisição a partir de umamáquina de cliente para acesso a um recurso;(a-2) a acumulação, por ura agente de coleta, decredenciais; e(a-3) o recebimento das credenciais acumuladas.
307. Método, de acordo com a reivindicação 306,caracterizado pelo fato da etapa (a-2) compreender ainda aacumulação de credenciais pela execução de pelo menos umscript na máquina local.
308. Método, de acordo com a reivindicação 3 06,caracterizado pelo fato da etapa (a-2) compreender ainda aacumulação de credenciais associadas a um usuário damáquina de cliente.
309. Método, de acordo com a reivindicação 306,caracterizado pelo fato de a etapa (a-3) compreender aindaa avaliação da máquina de cliente em resposta àscredenciais recebidas.
310. Método, de acordo com a reivindicação 306,caracterizado pelo fato da etapa (a-3) compreender atransmissão contínua de um de uma pluralidade de arquivoscompreendendo o aplicativo enumerado para uma máquinavirtual em resposta às credenciais acumuladas.
311. Aparelho, em um sistema para provisão de acesso aum ambiente de computação por uma máquina de intermediaçãoa uma máquina de cliente, uma máquina de execuçãoexecutando um hipervisor provendo acesso a recursos dehardware requeridos pelo ambiente de computação, o aparelhocaracterizado pelo fato de compreender:um transceptor que recebe credenciais associadas a umusuário de uma máquina de cliente, enumerando umapluralidade de recursos disponíveis para o usuário damáquina de cliente, em resposta às credenciais recebidas, erecebendo uma requisição para execução de ura recursoenumerado;um agente de servidor que seleciona um de um númeropredeterminado de métodos para execução do recursorequisitado, em resposta a uma política, o númeropredeterminado de métodos incluindo um método para aprovisão de acesso ao recurso requisitado em um ambiente decomputação provido por uma máquina virtual;um componente de identificação em comunicação com umcomponente de gerenciamento de máquina virtual e com oagente de servidor, e recebendo uma identificação dorecurso requisitado e uma identificação de uma de umapluralidade de máquinas virtuais, a máquina virtualidentificada provendo o ambiente de computação;um componente de execução aprovisionando a máquinavirtual identificada; eum componente de gerenciamento estabelecendo umaconexão entre a máquina de cliente e a máquina virtualidentificada.
312. Aparelho, de acordo com a reivindicação 311,caracterizado pelo fato de compreender ainda um motor depolítica.
313. Aparelho, de acordo com a reivindicação 312,caracterizado pelo fato do motor de política aplicar umapolítica às credenciais recebidas.
314. Aparelho, de acordo com a reivindicação 312,caracterizado pelo fato do motor de política tomar umadecisão de controle de acesso, em resposta às credenciaisrecebidas.
315. Aparelho, de acordo com a reivindicação 314,caracterizado pelo fato do agente de servidor selecionar umdo número predeterminado de métodos para execução doaplicativo requisitado, em resposta à decisão de controlede acesso.
316. Aparelho, de acordo com a reivindicação 311,caracterizado pelo fato do agente de servidor transmitircontinuamente o aplicativo requisitado para a máquinavirtual identificada para execução.
317. Aparelho, de acordo com a reivindicação 311,caracterizado pelo fato do agente de servidor selecionar ummétodo para transmissão contínua do aplicativo requisitadopara a máquina de cliente.
318. Aparelho, de acordo com a reivindicação 311,caracterizado pelo fato da máquina virtual identificadaprover dados de saída de aplicativo gerados por umaexecução do recurso no ambiente de computação através de umprotocolo de nível de apresentação.
319. Aparelho, de acordo com a reivindicação 311,caracterizado pelo fato do componente de identificaçãoainda compreender a identificação de uma máquina virtual emresposta a uma avaliação da máquina de cliente.
320. Aparelho, de acordo com a reivindicação 311,caracterizado pelo fato do componente de identificaçãoainda compreender a identificação de uma máquina virtual emresposta a uma avaliação do recurso requisitado.
321. Aparelho, de acordo com a reivindicação 311,caracterizado pelo fato do componente de identificaçãoainda compreender a seleção da máquina virtual em respostaa uma política.
322. Aparelho, de acordo com a reivindicação 311,caracterizado pelo fato de o componente de identificaçãocompreender ainda a identificação de um modelo a partir doqual se aprovisiona uma máquina virtual, o modeloselecionado em resposta a uma avaliação do recursorequisitado.
323. Aparelho, de acordo com a reivindicação 311,caracterizado pelo fato do componente de identificaçãoreceber a partir do componente de gerenciamento de máquinavirtual a identificação de uma da pluralidade de máquinasvirtuais.
324. Aparelho, de acordo com a reivindicação 311,caracterizado pelo fato do componente de identificaçãoidentificar uma da pluralidade de áreas de memória, umhipervisor em execução na máquina de execução identificada.
325. Aparelho, de acordo com a reivindicação 311,caracterizado pelo fato do componente de identificaçãoidentificar uma de uma pluralidade de máquinas de execução,o componente de identificação abrindo a máquina virtualidentificada em um hipervisor em execução na máquina deexecução identificada.
326. Aparelho, de acordo com a reivindicação 311,caracterizado pelo fato do componente de identificaçãoreceber uma identificação de uma de uma pluralidade demáquinas de execução.
327. Aparelho, de acordo com a reivindicação 311,caracterizado pelo fato do componente de execuçãocompreender ainda um meio para abertura da máquina virtualidentificada no hipervisor.
328. Aparelho, de acordo com a reivindicação 311,caracterizado pelo fato de compreender ainda um agente decoleta que acumula credenciais associadas à máquina decliente.
329. Aparelho, de acordo com a reivindicação 311,caracterizado pelo fato de compreender ainda um agente decoleta acumulando credenciais associadas a um usuário damáquina de cliente.
330. Aparelho, de acordo com a reivindicação 329,caracterizado pelo fato do agente de servidor determinar atransmissão contínua de um de uma pluralidade de arquivocompreendendo o recurso requisitado para uma máquinavirtual, em resposta a uma avaliação das credenciaisacumuladas.
331. Aparelho, de acordo com a reivindicação 311,caracterizado pelo fato do componente de gerenciamentocompreender ainda a provisão de um endereço de protocolo deinternet associado à máquina virtual identificada para amáquina de cliente.
332. Aparelho, de acordo com a reivindicação 311,caracterizado pelo fato do componente de gerenciamentocompreender ainda a provisão de um endereço de protocolo deinternet associado à máquina de execução para a máquina decliente.
333. Aparelho, de acordo com a reivindicação 311,caracterizado pelo fato do componente de gerenciamentocompreender ainda a provisão de um proxy para comunicaçãoentre a máquina de cliente e a máquina virtualidentificada.
334. Aparelho, de acordo com a reivindicação 311,caracterizado pelo fato do componente de gerenciamentocompreender ainda o estabelecimento de uma conexão entre amáquina de cliente e a máquina virtual identificada usando-se um protocolo de camada de apresentação.
Applications Claiming Priority (20)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US76167406P | 2006-01-24 | 2006-01-24 | |
| US60/761.674 | 2006-01-24 | ||
| US11/552.315 | 2006-10-24 | ||
| US11/552,315 US20070174429A1 (en) | 2006-01-24 | 2006-10-24 | Methods and servers for establishing a connection between a client system and a virtual machine hosting a requested computing environment |
| US11/559.658 | 2006-11-14 | ||
| US11/559,658 US20070180447A1 (en) | 2006-01-24 | 2006-11-14 | Methods and systems for interacting, via a hypermedium page, with a virtual machine |
| US11/563.932 | 2006-11-28 | ||
| US11/563.958 | 2006-11-28 | ||
| US11/563,932 US8341270B2 (en) | 2006-01-24 | 2006-11-28 | Methods and systems for providing access to a computing environment |
| US11/563,958 US20070174410A1 (en) | 2006-01-24 | 2006-11-28 | Methods and systems for incorporating remote windows from disparate remote desktop environments into a local desktop environment |
| US11/624,395 US8117314B2 (en) | 2006-01-24 | 2007-01-18 | Methods and systems for providing remote access to a computing environment provided by a virtual machine |
| US11/624,394 US7870153B2 (en) | 2006-01-24 | 2007-01-18 | Methods and systems for executing, by a virtual machine, an application program requested by a client machine |
| US11/624,403 | 2007-01-18 | ||
| US11/624,396 US7954150B2 (en) | 2006-01-24 | 2007-01-18 | Methods and systems for assigning access control levels in providing access to resources via virtual machines |
| US11/624,394 | 2007-01-18 | ||
| US11/624,403 US8341732B2 (en) | 2006-01-24 | 2007-01-18 | Methods and systems for selecting a method for execution, by a virtual machine, of an application program |
| US11/624,402 US7949677B2 (en) | 2006-01-24 | 2007-01-18 | Methods and systems for providing authorized remote access to a computing environment provided by a virtual machine |
| US11/624,395 | 2007-01-18 | ||
| US11/624,396 | 2007-01-18 | ||
| PCT/US2007/060963 WO2007087558A2 (en) | 2006-01-24 | 2007-01-24 | Methods and systems for providing access to a computing environment |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| BRPI0707220A2 true BRPI0707220A2 (pt) | 2011-04-26 |
Family
ID=38003083
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| BRPI0707220-1A BRPI0707220A2 (pt) | 2006-01-24 | 2007-01-24 | métodos e sistemas para fornecer acesso a um ambiente de computação |
Country Status (6)
| Country | Link |
|---|---|
| EP (2) | EP2375328A3 (pt) |
| AU (1) | AU2007208093A1 (pt) |
| BR (1) | BRPI0707220A2 (pt) |
| CA (1) | CA2637980A1 (pt) |
| IL (1) | IL192910A (pt) |
| WO (1) | WO2007087558A2 (pt) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9749333B2 (en) | 2014-05-05 | 2017-08-29 | Oliver Lloyd Pty Ltd | Shared access appliance, device and process |
Families Citing this family (50)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2005086802A2 (en) | 2004-03-08 | 2005-09-22 | Proxense, Llc | Linked account system using personal digital key (pdk-las) |
| RU2007127725A (ru) | 2004-12-20 | 2009-01-27 | ПРОКСЕНС, ЭлЭлСи (US) | Аутентификация по биометрическому ключу персональных данных (pdk) |
| US8433919B2 (en) | 2005-11-30 | 2013-04-30 | Proxense, Llc | Two-level authentication for secure transactions |
| US11206664B2 (en) | 2006-01-06 | 2021-12-21 | Proxense, Llc | Wireless network synchronization of cells and client devices on a network |
| US8340672B2 (en) | 2006-01-06 | 2012-12-25 | Proxense, Llc | Wireless network synchronization of cells and client devices on a network |
| US9269221B2 (en) | 2006-11-13 | 2016-02-23 | John J. Gobbi | Configuration of interfaces for a location detection system and application |
| US10068421B2 (en) | 2006-11-16 | 2018-09-04 | Cfph, Llc | Using a first device to verify whether a second device is communicating with a server |
| US8012015B2 (en) | 2006-11-15 | 2011-09-06 | Cfph, Llc | Verifying whether a gaming device is communicating with a gaming server |
| US7942740B2 (en) | 2006-11-15 | 2011-05-17 | Cfph, Llc | Verifying a first device is in communications with a server by storing a value from the first device and accessing the value from a second device |
| US7942739B2 (en) | 2006-11-15 | 2011-05-17 | Cfph, Llc | Storing information from a verification device and accessing the information from a gaming device to verify that the gaming device is communicating with a server |
| US7942741B2 (en) | 2006-11-15 | 2011-05-17 | Cfph, Llc | Verifying whether a device is communicating with a server |
| US7942738B2 (en) | 2006-11-15 | 2011-05-17 | Cfph, Llc | Verifying a gaming device is in communications with a gaming server |
| US7942742B2 (en) | 2006-11-15 | 2011-05-17 | Cfph, Llc | Accessing identification information to verify a gaming device is in communications with a server |
| WO2009062194A1 (en) | 2007-11-09 | 2009-05-14 | Proxense, Llc | Proximity-sensor supporting multiple application services |
| US8171528B1 (en) | 2007-12-06 | 2012-05-01 | Proxense, Llc | Hybrid device having a personal digital key and receiver-decoder circuit and methods of use |
| US9251332B2 (en) | 2007-12-19 | 2016-02-02 | Proxense, Llc | Security system and method for controlling access to computing resources |
| WO2009102979A2 (en) | 2008-02-14 | 2009-08-20 | Proxense, Llc | Proximity-based healthcare management system with automatic access to private information |
| US11120449B2 (en) | 2008-04-08 | 2021-09-14 | Proxense, Llc | Automated service-based order processing |
| US9418205B2 (en) | 2010-03-15 | 2016-08-16 | Proxense, Llc | Proximity-based system for automatic application or data access and item tracking |
| US8771064B2 (en) | 2010-05-26 | 2014-07-08 | Aristocrat Technologies Australia Pty Limited | Gaming system and a method of gaming |
| US9322974B1 (en) | 2010-07-15 | 2016-04-26 | Proxense, Llc. | Proximity-based system for object tracking |
| US9265450B1 (en) | 2011-02-21 | 2016-02-23 | Proxense, Llc | Proximity-based system for object tracking and automatic application initialization |
| US9191454B2 (en) * | 2011-06-27 | 2015-11-17 | Microsoft Technology Licensing, Llc | Host enabled management channel |
| US8683548B1 (en) | 2011-09-30 | 2014-03-25 | Emc Corporation | Computing with policy engine for multiple virtual machines |
| US8726337B1 (en) | 2011-09-30 | 2014-05-13 | Emc Corporation | Computing with presentation layer for multiple virtual machines |
| US9372735B2 (en) * | 2012-01-09 | 2016-06-21 | Microsoft Technology Licensing, Llc | Auto-scaling of pool of virtual machines based on auto-scaling rules of user associated with the pool |
| US8904008B2 (en) | 2012-01-09 | 2014-12-02 | Microsoft Corporation | Assignment of resources in virtual machine pools |
| US9047169B1 (en) * | 2012-03-30 | 2015-06-02 | Emc Corporation | Resizing snapshot mount points |
| US8448260B1 (en) * | 2012-05-25 | 2013-05-21 | Robert Hansen | Electronic clipboard protection |
| US9600351B2 (en) * | 2012-12-14 | 2017-03-21 | Microsoft Technology Licensing, Llc | Inversion-of-control component service models for virtual environments |
| US9305174B2 (en) | 2013-04-09 | 2016-04-05 | Robert Hansen | Electronic clipboard protection |
| US9405898B2 (en) | 2013-05-10 | 2016-08-02 | Proxense, Llc | Secure element as a digital pocket |
| US9519498B2 (en) * | 2013-12-24 | 2016-12-13 | Microsoft Technology Licensing, Llc | Virtual machine assurances |
| US9652631B2 (en) | 2014-05-05 | 2017-05-16 | Microsoft Technology Licensing, Llc | Secure transport of encrypted virtual machines with continuous owner access |
| US9584317B2 (en) | 2014-10-13 | 2017-02-28 | Microsoft Technology Licensing, Llc | Identifying security boundaries on computing devices |
| US10229272B2 (en) | 2014-10-13 | 2019-03-12 | Microsoft Technology Licensing, Llc | Identifying security boundaries on computing devices |
| US9519787B2 (en) | 2014-11-14 | 2016-12-13 | Microsoft Technology Licensing, Llc | Secure creation of encrypted virtual machines from encrypted templates |
| US11182713B2 (en) | 2015-01-24 | 2021-11-23 | Vmware, Inc. | Methods and systems to optimize operating system license costs in a virtual data center |
| US9742782B2 (en) * | 2015-06-11 | 2017-08-22 | International Business Machines Corporation | Configuration management for virtual machine environment |
| CN106230806A (zh) * | 2016-07-26 | 2016-12-14 | 中国南方电网有限责任公司信息中心 | 混合数据在内外网隔离环境下的定制协议通讯系统和方法 |
| CN107797845B (zh) * | 2016-09-07 | 2021-06-15 | 华为技术有限公司 | 用于访问容器的方法和装置 |
| DE102019119110A1 (de) * | 2019-07-15 | 2021-01-21 | Claas Selbstfahrende Erntemaschinen Gmbh | Verfahren zur Abarbeitung eines landwirtschaftlichen Arbeitsprozesses auf einem Feld |
| US11546208B2 (en) | 2019-12-31 | 2023-01-03 | Vmware, Inc. | Multi-site hybrid networks across cloud environments |
| CN112148107A (zh) * | 2020-09-18 | 2020-12-29 | 苏州浪潮智能科技有限公司 | 一种数据中心的功耗控制方法、系统及相关组件 |
| EP4323995B1 (en) * | 2021-04-15 | 2026-01-28 | Dexcom, Inc. | Global configuration service |
| CN113259696A (zh) * | 2021-05-11 | 2021-08-13 | 西安万像电子科技有限公司 | 直播方法和装置、存储介质及电子设备 |
| CN115442145A (zh) * | 2022-09-06 | 2022-12-06 | 武汉能量云计算科技有限公司 | 一种控制用户访问对象的方法和系统 |
| CN117082134A (zh) * | 2022-11-29 | 2023-11-17 | 中移(杭州)信息技术有限公司 | 一种代理连接方法、服务器、通信系统及存储介质 |
| CN116455660B (zh) * | 2023-05-04 | 2023-10-17 | 北京数美时代科技有限公司 | 页面访问请求的控制方法、系统、存储介质和电子设备 |
| GB2633743A (en) * | 2023-08-11 | 2025-03-26 | Matrix Booking Ltd | System and method |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8776050B2 (en) * | 2003-08-20 | 2014-07-08 | Oracle International Corporation | Distributed virtual machine monitor for managing multiple virtual resources across multiple physical nodes |
| US20050198303A1 (en) * | 2004-01-02 | 2005-09-08 | Robert Knauerhase | Dynamic virtual machine service provider allocation |
-
2007
- 2007-01-24 AU AU2007208093A patent/AU2007208093A1/en not_active Abandoned
- 2007-01-24 EP EP11161966A patent/EP2375328A3/en not_active Ceased
- 2007-01-24 CA CA002637980A patent/CA2637980A1/en not_active Abandoned
- 2007-01-24 EP EP07762438A patent/EP1977317A1/en not_active Ceased
- 2007-01-24 BR BRPI0707220-1A patent/BRPI0707220A2/pt not_active Application Discontinuation
- 2007-01-24 WO PCT/US2007/060963 patent/WO2007087558A2/en not_active Ceased
-
2008
- 2008-07-20 IL IL192910A patent/IL192910A/en active IP Right Grant
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9749333B2 (en) | 2014-05-05 | 2017-08-29 | Oliver Lloyd Pty Ltd | Shared access appliance, device and process |
Also Published As
| Publication number | Publication date |
|---|---|
| CA2637980A1 (en) | 2007-08-02 |
| EP2375328A2 (en) | 2011-10-12 |
| IL192910A0 (en) | 2009-02-11 |
| EP2375328A3 (en) | 2011-12-21 |
| IL192910A (en) | 2012-12-31 |
| WO2007087558A2 (en) | 2007-08-02 |
| EP1977317A1 (en) | 2008-10-08 |
| AU2007208093A1 (en) | 2007-08-02 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| BRPI0707220A2 (pt) | métodos e sistemas para fornecer acesso a um ambiente de computação | |
| US8341732B2 (en) | Methods and systems for selecting a method for execution, by a virtual machine, of an application program | |
| US20230325522A1 (en) | Systems and methods for securely deploying a collective workspace across multiple local management agents | |
| EP2369479A2 (en) | Methods and systems for providing access to a computing environment | |
| US11586738B2 (en) | Systems and methods for evaluating security risks using a manufacturer-signed software identification manifest | |
| US11757881B2 (en) | Workspace deployment using a secondary trusted device | |
| US12407520B2 (en) | Trusted local orchestration of workspaces | |
| US20210136082A1 (en) | Multilevel authorization of workspaces using certificates | |
| US11334675B2 (en) | Systems and methods for supporting secure transfer of data between workspaces | |
| WO2007100942A2 (en) | Methods and systems for providing access to a computing environment provided by a virtual machine executing in a hypervisor executing in a terminal services session | |
| US12003623B2 (en) | Multilayer encryption for user privacy compliance and corporate confidentiality | |
| KR20140143953A (ko) | 가상 데스크탑 서비스를 위한 장치 및 가상 데스크탑 서비스 방법 | |
| US20250245585A1 (en) | Predictive workspace orchestration | |
| HK1162706A (en) | Methods and systems for providing access to a computing environment | |
| HK1162707A (en) | Methods and systems for providing access to a computing environment |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| B06G | Technical and formal requirements: other requirements [chapter 6.7 patent gazette] |
Free format text: APRESENTE NOVAS FOLHAS DE DESENHOS ADAPATADAS AO AN 127 |
|
| B07A | Application suspended after technical examination (opinion) [chapter 7.1 patent gazette] | ||
| B09B | Patent application refused [chapter 9.2 patent gazette] | ||
| B12B | Appeal against refusal [chapter 12.2 patent gazette] |