BRPI0613131A2 - única visualização de dados em um sistema de computadores em rede com meio de armazenagem distribuido - Google Patents

única visualização de dados em um sistema de computadores em rede com meio de armazenagem distribuido Download PDF

Info

Publication number
BRPI0613131A2
BRPI0613131A2 BRPI0613131-0A BRPI0613131A BRPI0613131A2 BR PI0613131 A2 BRPI0613131 A2 BR PI0613131A2 BR PI0613131 A BRPI0613131 A BR PI0613131A BR PI0613131 A2 BRPI0613131 A2 BR PI0613131A2
Authority
BR
Brazil
Prior art keywords
computer
computer system
data objects
identification
identification set
Prior art date
Application number
BRPI0613131-0A
Other languages
English (en)
Inventor
Mohammed Samji
John Brezak
Anil Kumar Yadav
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of BRPI0613131A2 publication Critical patent/BRPI0613131A2/pt

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/168Details of user interfaces specifically adapted to file systems, e.g. browsing and visualisation, 2d or 3d GUIs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/188Virtual file systems
    • G06F16/192Implementing virtual folder structures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

ÚNICA VISUALIZAçãO DE DADOS EM UM SISTEMA DE COMPUTADORES EM REDE COM MEIO DE ARMAZENAGEM DISTRIBUìDO. Trata-se de um sistema principal de computador obtém uma solicitação para uma visualização agregada de conteúdo em uma rede de computador que corresponde a um critério. O sistema principal de computador consulta os sistemas de computador em rede para identificar os objetos de dados de acordo com o critério. Cada sistema correspondente de computador fornece um conjunto de identificação de objetos de dados especificados que estão armazenados no computador correspondente aos sistemas principais de computadores. O sistema principal de computador concatena os conjuntos de identificação para formar a visualização agregada do conteúdo para o usuário. Se um objeto de dados especificados está reproduzido para computadores em rede, o sistema principal de computador fornece uma instância do objeto de dados especificados no resultado da consulta. Conseqúentemente, a utilização paralela da sincronização do arquivo e a visualização agregada dos objetos de dados é facilitada. Se um objeto de dados especificados está armazenado no sistema principal de computador, o sistema principal de computador bloqueia a consulta dos computadores em rede a respeito do objeto de dados especificados.

Description

"ÚNICA VISUALIZAÇÃO DE DADOS EM UM SISTEMA DECOMPUTADORES EM REDE COM MEIO DE ARMAZENAGEM DISTRIBUÍDO"
ANTECEDENTES
Com a ubiqüidade dos computadores pessoais, fre-qüentemente os usuários possuem ou usam mais de uma máquina.
Por exemplo, muitos usuários pessoais e de negócios possuemou usam tanto uma máquina de mesa e um computador laptop ououtro dispositivo portátil de cliente. Os usuários que pos-suem ou têm acesso a múltiplas máquinas podem usar máquinasdiferentes em diferentes ocasiões para diferentes propósi-tos, embora ainda freqüentemente desejem consultar ou aces-sar arquivos comumente usados ou outro conteúdo em todas es-tas máquinas. Os aplicativos, os bancos de dados e outrosrecursos, normalmente, não têm capacidade suficiente que dãosuporte ao usuário para acessar ou compartilhar arquivos en-tre um grupo comum de máquinas.
Em um ambiente gerenciado de rede de computação,comum a negócios e outras redes de computação de ampla esca-la, a rede de computação compreende uma direção centralizadade rede, tal como um controlador primário de domínio que re-gula o acesso de usuários pela manutenção de senhas e per-missões. A direção centralizada de rede também pode gerenci-ar o acesso a arquivos de dados localmente armazenados parausuários autorizados da rede.
Em contraste às redes gerenciadas de computação,as redes de computação não gerenciadas, comum em residênciase redes de pequena escala, normalmente, não incorporam umcontrolador primário de domínio para regular o acesso de u-suários ou a armazenagem centralizada de arquivos de dados.
Ao invés disso, muitas redes de computação não gerenciadasrequerem um gerenciamento individual de usuário em termos deregulação de autorização de segurança de usuário para usaros vários dispositivos na rede. Além disso, a maioria dasredes de computação não gerenciadas requer participação adi-cional do usuário ou conhecimento para armazenar e solicitarnovamente o conteúdo armazenado nos vários dispositivos decomputação na rede.
A criação de locais compartilhados de armazenagemem um dos dispositivos de computação em rede é uma tentativade fornecer uma armazenagem de dados mais centralizada tantopara as redes gerenciadas quanto para as redes não gerencia-das. 0 local de armazenagem compartilhado pode servir comouma armazenagem designada para dados, independente de quaisos dispositivos de computação em rede um usuário está usandono momento. Apesar de esta abordagem tentar centralizar aarmazenagem, a abordagem pode se tornar deficiente pelo fatode exigir dos usuários lembrem o local e nome do local dearmazenagem compartilhado. Além disso, na hipótese do localde armazenagem compartilhada ser renomeado, deslocado ou deoutro modo modificado, os usuários podem ficar incapacitadosde acessar o conteúdo desejado.
A manutenção de perfis de usuário com acessibili-dade que define onde os dados estão armazenados é uma outraabordagem para uma armazenagem mais centralizada de arquivosde dados em redes gerenciadas. Apesar de um perfil de aces-sibilidade de usuário ser um auxiliar na localização de ar-quivos de dados armazenados em vários locais, a armazenageme atualização dos perfis de acessibilidade determina umamaior carga sobre o processamento e recursos de memória darede de computadores. Em conformidade com isso, na medida emque aumenta o número de dispositivos de computação em rede,a carga do perfil de acessibilidade de usuário também aumentaria.
0 redirecionamento de ações do sistema local dearquivos para um local de armazenagem designado na rede éuma abordagem adicional para uma armazenagem mais centrali-zada de arquivos de dados tanto nas redes gerenciadas quantonas redes não gerenciadas. Por exemplo, uma solicitação parao conteúdo de uma posição de armazenagem local pode ser au-tomaticamente redirecionada para buscar o conteúdo de umaposição de armazenagem designada na rede, que pode ser remo-ta a partir do dispositivo de computação. Similarmente, umasolicitação para localmente armazenar dados pode ser automa-ticamente redirecionada para armazenar o conteúdo seleciona-do no local de armazenagem designado na rede. Embora estaabordagem permitisse que todas as solicitações de dados se-jam conduzidas em direção a um local central de armazenagemsem exigir ao usuário o conhecimento do local da posição de-signada, a abordagem impede a armazenagem e busca de conteú-do em máquinas locais. Além disso, na hipótese de o local dearmazenagem designado ser renomeado deslocado ou de outromodo modificado, os usuários estariam incapacitados de aces-sar o conteúdo desejado.Freqüentemente o usuário deseja trabalhar com umaversão completa ou mais atualizada de um determinado arqui-vo, independente de qual a máquina que os mesmos estejam usando.
SUMÁRIO
Um sistema principal de computador obtém uma soli-citação para uma visualização agregada de conteúdo em umarede de computadores que corresponde a um critério. 0 siste-ma principal de computador consulta os sistemas de computa-dores em rede para identificar os objetos de dados de acordocom o critério. Cada sistema de computador correspondentefornece um conjunto de identificação de objetos de dados es-pecificados que estão armazenados no computador correspon-dente. O sistema principal de computador concatena os con-juntos de identificação para formar a visualização agregadado conteúdo para o usuário.
De acordo com um aspecto ilustrativo da invenção,se um objeto de dados especificado está reproduzido para oscomputadores em rede, o sistema principal de computador for-nece uma instância do objeto de dados especificado no resul-tado da consulta. Conseqüentemente, a utilização paralela dasincronização do arquivo e a visualização agregada do objetode dados podem ser facilitadas.
De acordo com um outro aspecto ilustrativo da in-venção, se um objeto de dados especificado está armazenadono sistema principal de computador, o sistema principal decomputador bloqueia a consulta dos computadores em rede arespeito do objeto de dados especificado.De acordo com ainda um outro aspecto ilustrativoda invenção, um sistema de computador consulta os computado-res em rede a respeito de objetos de dados distribuídos emuma rede de computadores. 0 sistema de computador compreendeum módulo de serviço de consulta a conteúdo que recebe umasolicitação para identificar objetos de dados especificados,obtém conjuntos de identificação dos objetos de dados espe-cificados armazenados nos computadores em rede, exclui iden-tificações múltiplas de objetos de dados reproduzidos e con-catena os conjuntos de identificação para fornecer uma visu-alização agregada do conteúdo ao usuário.
De acordo com outro aspecto ilustrativo da inven-ção, a sincronização de arquivos pode ser invocada em res-posta à visualização agregada de arquivos com a finalidadede reproduzir arquivos que ocorrem na lista agregada em umsistema de computador.
Este resumo foi fornecido para introduzir uma se-leção de projetos de uma forma simplificada que estão adi-cionalmente descritos a seguir nas Descrições Pormenoriza-das. Esse resumo não tem por finalidade identificar caracte-rísticas chave ou características essenciais da matéria doobjeto reivindicado e nem tem a intenção de ser usada comoum auxiliar na determinação da abrangência da matéria do ob-jeto reivindicado.
BREVE DESCRIÇÃO DOS DESENHOS
0 sumário da invenção acima mencionado, bem como adescrição pormenorizada dos exemplos das modalidades, forne-cerão uma compreensão mais ampla quando lidos em conjuntocom os desenhos que os acompanham que estão incluídos pormeio de exemplos e não por meio de limitação no que diz res-peito à invenção reivindicada.
A Figura 1 é um diagrama funcional de bloco de umexemplo de um ambiente de computação digital de propósitosgerais que pode ser usado para executar vários aspectos dapresente invenção.
A Figura 2 é um diagrama de bloco de uma rede decomputadores não gerenciados que compreendem três dispositi-vos de computação que armazenam localmente conteúdos varia-dos, de acordo com um aspecto da presente invenção.
A Figura 3 é um diagrama de bloco da rede de com-putadores da Figura 2 que ilustra a iniciação de uma solici-tação de dados de usuário e consulta de conteúdo, de acordocom um aspecto ilustrativo da presente invenção.
A Figura 4 é um diagrama de bloco de uma rede decomputadores da Figura 2 que ilustra o retorno e a concate-nação de identificadores de conteúdo correspondente a partirde dispositivos de computação em rede de acordo com um as-pecto ilustrativo da presente invenção.
A Figura 5 é um diagrama de bloco de uma rede decomputadores da Figura 2 que ilustra o resultado das solici-tações de visualização agregada de processamento em cadadispositivo de computação em rede de acordo com um aspectoilustrativo da presente invenção.
A Figura 6 é um diagrama de fluxo ilustrativo deuma rotina de criação de visualização agregada executada porum dispositivo de computação em rede de acordo com um aspec-to ilustrativo da presente invenção.
As Figuras 7A-7D são diagramas de bloco ilustrati-vos de telas de video para exibir identificadores de conteú-do concatenados correspondentes a uma visualização agregadade acordo com um aspecto ilustrativo da presente invenção.
A Figura 8 é um diagrama de fluxo ilustrativo deuma rotina remota de processamento de documento de visuali-zação agregada executada por um dispositivo de computação emrede de acordo com um aspecto ilustrativo da presente invenção.
A Figura 9 ilustra um ambiente no qual pode operarum sistema e um método de sincronização automatizada de ar-quivo no mesmo nivel (P2P), de acordo com modalidades ilus-trativas da invenção.
A Figura 10 ilustra uma interface que descreve alógica de gerenciamento de versão de arquivo que pode serusada em conjunto com a sincronização de arquivo, de acordocom modalidades ilustrativas da invenção.
A Figura 11 ilustra um ambiente no qual pode ope-rar um sistema e um método de sincronização no mesmo nivel(P2P) de arquivos com mais de duas máquinas participantes,de acordo com determinadas modalidades ilustrativas da invenção.
A Figura 12 ilustra um fluxograma de processamentode acessibilidade e sincronização de arquivo em geral, deacordo com modalidades ilustrativas da invenção.As Figuras 13A-13C ilustram roteiros de resultadosde consulta coma armazenagem distribuída em uma rede de com-putadores de acordo com uma incorporação ilustrativa da invenção.
A Figura 14 apresenta um diagrama de fluxo quefornece suporte a consultas a computadores em rede com arma-zenagem distribuída de acordo com uma incorporação ilustra-tiva da invenção.
A Figura 15 apresenta um sistema de computador queconsulta computadores em rede com armazenagem distribuída deacordo com uma incorporação ilustrativa da invenção.
DESCRIÇÃO DETALHADA
Descritos de modo geral, os aspectos da presenteinvenção correspondem a um sistema e método para gerar visu-alizações agregadas de conteúdo armazenado em vários dispo-sitivos de computação em uma rede de computadores. Algunsaspectos específicos da presente invenção correspondem a umsistema e método de consultar automaticamente dispositivosde computação em uma rede definida e gerar uma visualizaçãodas respostas de consulta concatenadas. Apesar de a presenteinvenção ser descrita com referência a uma rede de disposi-tivo de computação, na qual todos os dispositivos de compu-tação em rede apresentam perfis de segurança comum para to-dos os usuários autorizados da rede, uma pessoa habilitadana ciência relevante poderá avaliar que a presente invençãopode ser executada em redes alternativas de computação nasquais cada dispositivo de computação pode manter perfis desegurança separados para usuários autorizados de rede. Alémdisso, uma pessoa habilitada na ciência relevante poderá a-valiar que alguns ou todos os aspectos da presente invençãopodem ser praticados em redes gerenciadas de computadoresque apresentam uma direção centralizada de rede para regularo acesso de usuários. Em conformidade com isso, as modalida-des descritas com referência a presente invenção são de na-tureza ilustrativa e não devem ser interpretadas como Iimi-tantes.
Voltando aos desenhos, nos quais os números de re-ferência se referem aos números de elementos, sendo a inven-ção ilustrada como executada em ambiente de computação ade-quado. Apesar de não exigido, a invenção será descrita nocontexto geral de instruções executáveis em computador, taiscomo módulos de programas sendo executados por um computadorpessoal. Geralmente, os módulos de programa compreendem ro-tinas, programas, objetos, componentes, estruturas de dadosetc. que efetuam tarefas particulares ou executam tipos par-ticulares de dados abstratos. Não obstante, aqueles habili-tados na ciência poderão valorizar que a invenção pode serpraticada com outras configurações de sistemas de computado-res, que compreendem dispositivos portáteis, sistemas pro-cessadores múltiplos, eletrônicos com base em microprocessa-dores ou programáveis pelo consumidor, PCs de rede, computa-dores de grande porte e semelhantes. A invenção pode serpraticada em ambientes de computação distribuídos onde astarefas são desempenhadas por dispositivos de processamentoremoto que estão ligados através de rede de comunicações. Emum ambiente de computação distribuído, os módulos de progra-ma podem estar localizados tanto em dispositivos de armaze-nagem de memória local quanto remota.
A descrição a seguir inicia com uma descrição deum dispositivo de computação para propósitos gerais que podeser usado em um grupo de rede seguro de acordo com algunsaspectos da invenção. Voltando agora à Figura 1, um disposi-tivo de computação para propósitos gerais é apresentado naforma de um computador pessoal convencional 20, que compre-ende uma unidade de processamento 21, uma memória de sistema22 e uma conexão bus de sistema 23 que conectam vários com-ponentes de sistema abrangendo a memória do sistema à unida-de de processamento 21. A conexão bus do sistema 23 pode serqualquer dos diversos tipos de estruturas de conexão bus a-brangendo uma conexão bus de memória ou controlador de memó-ria, uma conexão bus periférica e uma conexão bus local u-sando qualquer de uma variedade de arquiteturas de conexãobus. A memória do sistema compreende a memória de somenteleitura (ROM) 24 e a memória de acesso aleatório (RAM) 25.
Um sistema de entrada/saida (BIOS) 26, que contém as rotinasbásicas que auxiliam na transferência de informações entreelementos dentro do computador pessoal 20, de modo tal quedurante a partida, é armazenada em ROM 24. 0 computador pes-soal 20 ainda compreende uma unidade de disco rígido 27 paraa leitura de e escrita para um disco rígido 60, uma unidadede disco magnético 28 para a leitura a partir de e escritapara um disco magnético removível 2 9 e uma unidade de discoóptico 30 para a leitura a partir de e escrita para um discoóptico removível 31 tal como um CD ROM ou outro meio óptico.A unidade de disco rígido 27, a unidade de discomagnético 28 e a unidade de disco óptico 30 estão conectadasà conexão bus do sistema 23 por uma interface de unidade dedisco rígido 34, respectivamente. As unidades e seus meiosassociados de leitura por computador fornecem armazenagemnão volátil de instruções legíveis pelo computador, estrutu-ras de dados, módulos de programas e outros dados para ocomputador pessoal 20.
Apesar da incorporação exemplarmente descrita nopresente documento utilizar um disco rígido 60, um discomagnético removível 29 e um disco óptico removível 31, pode-rá ser levado em consideração por aqueles habilitados na ci-ência que outros tipos de meios legíveis por computador quepodem armazenar dados que são acessíveis por um computador,tais como as fitas magnéticas, cartões de memória de armaze-nagem, discos de vídeo digital, cartuchos Bernoulli, memó-rias de acesso aleatório, memórias de somente leitura, áreade armazenagem de rede e semelhantes também podem ser usadosno ambiente de operação exemplar.
Uma série de módulos de programa podem ser armaze-nados no disco rígido 60, no disco magnético 29, no discoóptico 31, no ROM 24 ou RAM 25, que abrange um sistema deoperação 35, um ou mais programas aplicativos 36, outros mó-dulos de programa 37 e dados de programa 38. Um usuário podeinserir comandos e informações no computador pessoal 20 a-través dos dispositivos de entrada como o teclado 40 e odispositivo de sinalização 42. Outros dispositivos de entra-da (não apresentados) podem incluir microfones, joystick,adaptador de jogos, antena parabólica, scanner ou semelhan-tes. Estes e outros dispositivos de entrada freqüentementesão conectados à unidade de processamento 21 através de umainterface de porta serial 46 que está acoplada à conexão busdo sistema, porém pode ser conectado por outras interfaces,tais como portas paralelas, portas de jogos ou conexão debus serial universal (USB) ou um cartão de interface de re-de. Um monitor 47, ou outro tipo de dispositivo de exibição,também está conectado à conexão bus do sistema 23 por meiode uma interface, tal como um adaptador de video 48. Além domonitor, os computadores pessoais normalmente compreendemoutros dispositivos de saida periférica, não mostrados, taiscomo alto-falantes e impressoras.
O computador pessoal 20 pode operar em um ambientede rede usando conexões lógicas para um ou mais computadoresremotos, tal como o computador remoto 49. O computador remo-to 49 pode ser um outro computador pessoal, um servidor, umroteador, um PC de rede, um dispositivo igual ou outra jun-ção de rede comum e normalmente compreende muitos ou todosos elementos descritos acima relativos ao computador pessoal20, apesar de somente o dispositivo de armazenagem de memó-ria 50 ter sido ilustrado na Figura 1. As conexões lógicasrepresentadas na Figura 1 compreendem uma rede de área local(LAN) 51 e uma rede de área ampla (WAN) 52. Tais ambientesde rede são usuais em escritórios, redes amplas de computa-dores empresariais, rede interna e Internet.
Quando usado em um ambiente de rede LAN, o compu-tador pessoal 20 está conectado a uma rede local 51 atravésde uma interface de rede ou adaptador 53. Quando usado emum ambiente de rede WAN, o computador pessoal 20 normalmentecompreende um modem 54 ou outros meios para estabelecer co-municações sobre a WAN 52. 0 modem 54, que pode ser internoou externo, está conectado ao sistema de conexão bus 23 pormeio de uma interface de porta serial 46. Em um ambiente derede, os módulos de programa descritos com relação ao compu-tador pessoal 20, ou partes do mesmo, podem ser armazenadosem um dispositivo de armazenagem de memória remota. Será va-lorizado que as conexões de rede apresentadas são exemplarese outros meios de estabelecer uma comunicação entre os com-putadores podem ser usados.
A Figura 2 é um diagrama de bloco ilustrativo deuma rede de computador 100 que compreende três dispositivosde computação 102, 104 e 106 de acordo com os aspectos ilus-trativos da presente invenção. Os dispositivos de computação102, 104 e 106 podem ser incorporados como qualquer um dosdispositivos que podem ser utilizados para o conteúdo perma-nente à rede de computador 100. Exemplos de dispositivos decomputação compreendem, mas não estão limitados a dispositi-vos pessoais de computação, dispositivos de computação manu-ais, dispositivos de computação baseados em servidor, aces-sórios digitais pessoais, telefones móveis, dispositivos dememória autônoma, dispositivos eletrônicos que apresentamalgum tipo de memória e semelhantes.
Em uma incorporação ilustrativa da presente inven-ção cada dispositivo de computação 102, 104 e 106 mantém umbanco de dados de informações de segurança 108 que corres-ponde a um único identificador de segurança ("SID") para ca-da usuário autorizado. 0 banco dados 108 pode também manterinformações associando SIDs únicos de usuário a um ou maisgrupos de usuários, tais como administradores, usuários, re-visores e um único identificador de segurança para o grupo.
De acordo com a incorporação ilustrativa, o banco de dadosde informações de segurança 108 é reproduzido em cada um dosdispositivos de computação 102, 104 e 106 de modo tal que operfil de segurança de usuários, incluindo o SID de usuário,está acessível a qualquer um dos dispositivos de computação102, 104 e 106.
Conforme ilustrado na Figura 2, para um usuárioparticular, um primeiro dispositivo de computação 102, uma"MÁQUINA A", mantém um. primeiro arquivo 110, "ARQUIVO A", emuma posição de armazenagem local, tal como uma unidade rígi-da ou outro dispositivo de armazenagem de massa, que podeser acessado de alguma maneira pelo usuário. Similarmente,um segundo dispositivo de computação 104, "MÁQUINA B", man-tém um segundo arquivo 112, "Arquivo B", e uma terceira má-quina 106, "MÁQUINA C", mantém um terceiro arquivo 114, "Ar-quivo C", sendo que ambos podem ser acessados de alguma ma-neira pelo usuário. (Os dispositivos de computação 102, 104e 106 podem ser computadores pessoais conforme apresentadona Figura 1). Conforme será a seguir explicado em pormenoresadicionais, em uma incorporação ilustrativa da presente in-venção, cada arquivo 110, 112, 114 mantém uma lista de con-trole de acesso ("ACL") que indica quais os SIDs de usuárioe SIDs de grupo que tem permissão para acessar o arquivoparticular. Adicionalmente, cada arquivo ACL também pode in-dicar as limitações em relação ao tipo de acesso a um SID deusuário particular ou um SID de grupo pode ter. Por exemplo,um arquivo ACL pode indicar que o usuário particular podeacessar um arquivo para ler o arquivo, mas não pode modifi-car o arquivo de qualquer maneira. Além disso, cada arquivoACL também pode indicar um atual proprietário do arquivo quecorresponde ao SID de usuário que criou o arquivo e/ou edi-tou por último o arquivo. No entanto, sob abordagens convên-cionais de gerenciamento de dados, o usuário teria que lem-brar a localização exata de cada parte de dados para acessarremotamente os dados. Embora o gerenciamento de dados serdescrito com referência a uma ACL, uma pessoa habilitada naciência relacionada poderá avaliar que o gerenciamento adi-cional de dados, tais como a codificação de segurança, ge-renciamento digital de direitos e similares também podem serutilizados.
Com referência às Figuras 3-5, serão descritos ainiciação e o processamento de solicitação de visualizaçãoagregada entre os três dispositivos de computação 102, 104 e106 da rede de computador 100. Com referência à Figura 3, oprocesso é iniciado com o recebimento de uma solicitação deidentificação de conteúdo na MÁQUINA A 102 pelo usuário. Combase em uma única SID associada com o usuário particular, ouconta de usuário, a MÁQUINA A 102 inicia uma consulta deconteúdo local que corresponde a única SID e qualquer um deuma variedade de critérios que podem ser usados para os da-dos selecionados. Exemplos de critérios compreendem pesqui-sas de senha, tipos de arquivo, faixas de datas. Paralela-mente com a consulta de conteúdo local, ou após o processa-mento da consulta local, a MÁQUINA A 102 automaticamente i-nicia uma solicitação de conteúdo distribuído aos dispositi-vos de computação 102, 104 e 106 na rede 100. Em razão dosperfis de segurança em cada dispositivo de computação na re-de ilustrativa apresentarem bancos de dados 108 de perfil desegurança reproduzidos, a MÁQUINA A 102 pode emitir consul-tas idênticas de conteúdo a cada dispositivo de computação.
Além disso, apesar da Figura 3 ilustrar que todos dispositi-vos de computação na rede 100 recebem a consulta de conteúdodistribuído, a MÁQUINA A também pode limitar as solicitaçõesde conteúdo a um subconjunto de dispositivos de computaçãodentro da rede 100.
Com referência à Figura 4, cada dispositivo decomputação que recebe a solicitação de conteúdo processa asolicitação e retorna informações que identifiquem o conteú-do correspondente e a localização do conteúdo. Por exemplo,no exemplo ilustrativo, a MÁQUINA B 104 retornaria a infor-mação que identifica o arquivo B 112 e sua localização espe-cifica dentro do sistema de armazenagem da MÁQUINA B. Domesmo modo, a MÁQUINA C 106 retornaria a informação que i-dentifica o arquivo C 114 e sua localização específica den-tro do sistema de armazenagem da MÁQUINA C. Em uma incorpo-ração ilustrativa da presente invenção, o conteúdo localiza-do em cada dispositivo de computação não é transmitido aodispositivo de computação solicitante. Além disso, como seráexplicado em mais pormenores a seguir, as respostas de soli-citação de conteúdo previamente armazenadas ou as respostasde solicitação de conteúdo de dispositivo de memória tambémpodem ser processadas.
Uma vez as respostas recebidas da consulta pelaMÁQUINA A 102, os resultados da consulta são concatenados.
Em uma incorporação ilustrativa da presente invenção, os re-sultados concatenados são incorporados como representaçãosimples de todo o conteúdo correspondente sem referência di-reta à localização, ou origem do conteúdo. No entanto, a MA-QUINA A 102 pode obter instruções adicionais do usuário paraclassificar, ou de outro modo organizar, os resultados con-catenados para o usuário solicitante. Por exemplo, a MÁQUINAA 102 pode selecionar o conteúdo concatenado por tamanho,data, origem e similar. E, além disso, a MÁQUINA A 102 podeainda associar sinalizações visuais adicionais aos resulta-dos concatenados para identificar partes especificas de da-dos, tais como dados armazenados em um dispositivo de compu-tação que atualmente não está disponível.
A Figura 5 é um diagrama de bloco de uma rede decomputadores 100 da Figura 2 que ilustra o resultado do pro-cessamento das solicitações de visualização agregada dosdispositivos de computação na rede. Para os propósitos daFigura 5, fica pressuposto que cada um dos dispositivos decomputação 102, 104 e 106 emitiram solicitações de visuali-zação agregada e que o conteúdo de cada dispositivo de com-putação não tenha sido modificado. A visualização agregadapara a MÁQUINA A 102 apresenta o arquivo A 110, arquivo B112 e o arquivo C 114 com o arquivo B e arquivo C ilustradoem linhas tracejadas para mostrar que os mesmos foram arma-zenados remotamente a partir da MÁQUINA A. Similarmente, avisualização agregada para a MÁQUINA B 104 apresenta conteú-do idêntico com o arquivo A 110 e o arquivo C 114 ilustradoem linhas tracejadas para mostrar que os mesmos foram arma-zenados remotamente. Finalmente, a visualização agregada pa-ra a MÁQUINA C 106 apresenta o conteúdo idêntico com o ar-quivo A 110 e o arquivo B 112 ilustrado em linhas tracejadaspara mostrar que os mesmos foram armazenados remotamente.
Com base nas visualizações agregadas em cada dispositivo decomputação 102, 104 e 106, o usuário pode acessar o mesmoconteúdo sem requerer conhecimento de sua atual localização.
Além disso, na hipótese de que um ou mais dos dispositivosde computação não estejam disponíveis, o dispositivo de com-putação pode ainda apresentar o conteúdo armazenado na má-quina não disponível com sinalizações visuais adicionais pa-ra indicar que o mesmo não está disponível atualmente.
A Figura 6 é um diagrama de fluxo ilustrativo deuma rotina 600 de criação de visualização agregada executadapor um dispositivo de computação em rede, tais como os dis-positivos 102, 104, 106 de acordo com aspectos da presenteinvenção. No bloco 602, é obtida uma solicitação de usuáriopara a criação de uma visualização agregada de conteúdo. Emuma incorporação ilustrativa da presente invenção, a solici-tação de visualização agregada pode corresponder diretamentea um acesso de usuário a qualquer tipo de aplicativo, ou mó-dulo, que exibe o conteúdo. Por exemplo, uma solicitação devisualização agregada pode corresponder a uma solicitaçãopara abrir um arquivo dentro de um programa aplicativo desoftware. Similarmente, uma solicitação para criação de umavisualização agregada pode corresponder a uma iniciação deum programa de gerenciamento de sistema de arquivo. E, alémdisso, a solicitação de visualização agregada pode ainda serautomaticamente gerada na ocorrência de eventos específicos,tais como uma hora particular do dia, após um dispositivo decomputação ter sido ativado, após um dispositivo de computa-ção ter sido conectado à rede e semelhantes.
No bloco 604, o dispositivo de computação consultao sistema de arquivos do dispositivo de computação local porconteúdo que corresponde a uma consulta de conteúdo. Em umaincorporação ilustrativa da presente invenção, a consulta deconteúdo está na forma de uma consulta de banco de dados,tal como uma função de consulta com suporte do banco de da-dos SQL da Microsoft Corporation. A consulta de banco de da-dos compreende um conjunto de critérios para determinar oconteúdo correspondente. Em uma incorporação ilustrativa dapresente invenção, a consulta abrange uma solicitação paraencontrar todo o conteúdo no qual o usuário, identificadopela ficha de segurança SID do usuário, pode ter acesso. A-dicionalmente, a consulta pode compreender qualquer númerode critérios adicionais, tais como pesquisas de senhas, fai-xas de datas etc. que podem ser usados para encontrar o con-teúdo. 0 sistema de armazenagem de dispositivo de computaçãopode então aceitar a consulta e identificar qualquer conteú-do que corresponde aos critérios da consulta. Uma pessoa ha-bilitada na ciência relevante poderá avaliar que algumas outodas as partes da cadeia de consulta, tais como a SID dousuário, podem ser automaticamente inseridas sem requererentradas adicionais do usuário. Alternativamente, algumaparte da cadeia de consulta, tal como critérios de pesquisaadicionais, podem ser especificados pelo usuário na ocasiãoda pesquisa ser solicitada ou ser pré-determinada como parteda configuração do dispositivo de computação.
À decisão do bloco 606, é conduzido um teste paradeterminar se há dispositivos adicionais conectados à rede100. Em uma incorporação ilustrativa da presente invenção, oteste para os dispositivos adicionais pode corresponder auma fusão de todos os dispositivos de computação conectadosà rede. Alternativamente, o teste para os dispositivos adi-cionais pode ser limitado a um subconjunto especifico dedispositivos de computação definidos por um administrador ouusuário de sistema. Caso haja dispositivos de computação a-dicionais dentro da rede, no bloco 608, o dispositivo decomputação associado com o usuário envia consultas de conte-údo ao dispositivo de computação adicional. Em uma incorpo-ração ilustrativa da presente invenção, em razão do perfilde segurança do usuário, por ex.: SID, ser reproduzido a ca-da um dos dispositivos de computação, a consulta de conteúdopode ser idêntica. Alternativamente, se o perfil de seguran-ça do usuário se altera, cada consulta de conteúdo pode serúnica para adaptar-se a vários identificadores de segurançade usuário. O bloco 606 e 608 reproduzirão até que todos osdispositivos de computação dentro da rede 100, ou subconjun-to de dispositivos de computação, tenham sido consultados.De acordo com uma incorporação ilustrativa da presente in-venção, os resultados da consulta são transmitidos para odispositivo de computação solicitante na forma de um identi-ficador de conteúdo ou um caminho para localizar o conteúdo,tal como o caminho Localização Uniforme de Nome (Uniform Na-me Location) ("UNC"). Conforme descrito acima, o conteúdonão necessita ser movido para o dispositivo de computaçãosolicitante. Adicionalmente, o dispositivo de computação so-licitante não necessita efetuar uma cópia do conteúdo. Alémdisso, em uma incorporação ilustrativa da presente invenção,o dispositivo de computação pode manter uma cópia de umaresposta de solicitação de conteúdo previamente recebida apartir do computador remoto em memória, tal como RAM ou ca-che. Além de emitir uma nova solicitação de conteúdo a par-tir do dispositivo de computação remoto, o dispositivo decomputação pode chamar novamente a solicitação de conteúdopreviamente recebida para o mesmo dispositivo de computaçãoremoto e iniciar o processamento da solicitação de conteúdopreviamente recebida. Uma vez recebida a nova solicitação deconteúdo, o dispositivo de computação pode atualizar a res-posta e armazenar os novos resultados para uso subseqüente.
Uma vez que tenham sido consultados todos os dis-positivos de computação em rede, à decisão do bloco 610, éconduzido um teste para determinar se há alguns dispositivosde computação previamente em rede que não estejam disponí-veis atualmente. Uma pessoa habilitada na ciência poderá a-valiar que qualquer número de dispositivos de computação po-dem estar temporariamente não disponíveis, tal como estaremdesligados, fora da faixa de comunicação sem fio ou atual-mente não conectados a uma conexão de rede. Se há quaisquerdispositivos de computação previamente em rede que não este-jam atualmente disponíveis, no bloco 612, o dispositivo decomputação tenta chamar novamente o resultado de solicitaçãode conteúdo previamente armazenado para o dispositivo decomputação não disponível.
Uma vez que tenham sido consultados todos os dis-positivos de computação, no bloco 614, o dispositivo de com-putação solicitante concatena o resultado das consultas deconteúdo em uma lista agregada. Em uma incorporação ilustra-tiva da presente invenção, o dispositivo de computação podefiltrar, ou de outro modo processar os resultados concatena-dos. Adicionalmente, o dispositivo de computação pode arqui-var, cachê ou de outro modo armazenar, os resultados conca-tenados para uso em subseqüente criação de lista agregada.
No bloco 616, a visualização do identificador de conteúdoconcatenado é gerado e exibido ao usuário para manipulação.
Em uma incorporação ilustrativa da presente invenção, os re-sultados da concatenação são representados aos usuários emuma visualização plana que compreende o conteúdo de todos osdispositivos de computação. Além disso, na incorporação i-lustrativa, a origem do conteúdo não é inicialmente exibidaao usuário. No entanto, uma pessoa habilitada na ciência re-levante poderá avaliar que o dispositivo de computação soli-citante pode efetuar uma filtragem ou organização adicionalpara exibir o conteúdo correspondente ao usuário. Por exem-plo, o dispositivo de computação solicitante pode selecionaro conteúdo correspondente por vários atributos, tais comotamanho de dados, tipo de dados, titulo, critérios de data esimilares. Além disso, a localização da origem do conteúdopode ser fornecida diretamente ao usuário, como parte de umavisualização inicial ou como parte de dados adicionais dis-poníveis mediante solicitação do usuário. E, além disso, nahipótese de um dos dispositivos de computação não estar dis-ponível, a visualização selecionada pode ainda ser represen-tada para o usuário com sinalizações visuais especiais, taiscomo ícones transparentes, para indicar ao usuário que oconteúdo, provavelmente, está armazenado no dispositivo decomputação não disponível mas não pode ser acessado atual-mente. Em uma outra incorporação ilustrativa, o dispositivode computação pode utilizar um registro previamente armaze-nado da visualização agregada e compará-lo com a atual visu-alização agregada. O dispositivo de computação pode entãoindicar quais os arquivos que foram modificados, removidosou adicionados. No bloco 618, a rotina 600 finaliza.
As Figuras 7A-7D são diagramas de bloco ilustrati-vo de várias telas de vídeo para exibir os identificadoresde conteúdo concatenados em uma visualização de lista agre-gada de acordo com uma incorporação ilustrativa da invenção.Com referência à Figura 7A, a tela de vídeo 700 pode abran-ger uma primeira parte do vídeo 702 para permitir a um usuá-rio selecionar várias localizações de arquivos de interesse.A tela de vídeo 7 00 também pode abranger uma segunda partede vídeo 704 para exibir um conteúdo específico armazenadono espaço de arquivo selecionado. Com referência ao exemploanterior das Figuras 2-5, se um usuário está para iniciaruma solicitação de visualização agregada por manipulação doicone gráfico 706 correspondente ao "Meus documentos" ou, deoutro modo, iniciar uma solicitação para visualizar todos osarquivos correspondentes ao atual usuário, o dispositivo decomputação executaria a rotina 600. Os três arquivos resul-tantes 110, 112, 114 serão então exibidos ao usuário na se-gunda parte do vídeo 704 sem o usuário necessitar conhecer aorigem do conteúdo. Em contraste, sob um gerenciamento con-vencional de sistema de arquivos, o usuário necessitaria a-cessar cada sistema de arquivos de dispositivo de computa-ção, independentemente, para identificar a localização decada arquivo particular de interesse. Por exemplo, se os ar-quivos 110, 112 1 114 correspondem aos ícones 708, 710 e712, respectivamente, normalmente o usuário necessitaria a-cessar separadamente cada ícone para visualizar os mesmosarquivos criados pela visualização agregada.
Com referência à Figura 7B·, um ou mais dos identi-ficadores de conteúdo na segunda parte da tela de vídeo 700podem abranger sinalizações visuais para auxiliar o usuário.
Por exemplo, se o dispositivo de computação atualmente nãoestá conectado à rede e o dispositivo de computação solici-tante utilizou uma solicitação de conteúdo previamente namemória ou arquivada, o conteúdo pode ser distinguido visu-almente conforme ilustrado para o arquivo 112. Em uma incor-poração ilustrativa da presente invenção, um conteúdo nãodisponível pode ser exibido com uma borda tracejada e/ou deuma maneira semitransparente. Em um outro exemplo, o conteú-do que tenha sido determinado pelo dispositivo de computaçãocomo tendo sido modificado visto que uma solicitação préviade visualização agregada pode ser destacada ao usuário con-forme ilustrado para o arquivo 114. Em uma incorporação i-lustrativa da presente invenção, a parte modificada dos da-dos pode ser destacada na tela de video 700.
Com referência às Figuras 7C e 7D, o dispositivode computação pode automaticamente selecionar as solicita-ções de conteúdo correspondente concatenadas. Adicionalmen-te, o dispositivo de computação pode obter uma entrada dousuário para selecionar as solicitações de conteúdo corres-pondente concatenadas. Em uma incorporação ilustrativa dapresente invenção, o conteúdo correspondente concatenado po-de ser agrupado de acordo com a localização do conteúdo. Comreferência à Figura 7C, a tela de video 700 pode abrangeridentificadores adicionais 714, 716, 718 que indicam a iden-tidade da localização. Niveis adicionais de localizações dearmazenagem também podem ser exibidos na tela de video 700.
Em uma outra incorporação da invenção, o conteúdo correspon-dente concatenado pode ser agrupado de acordo com vários a-tributos dos dados. Com referência à Figura 7D, a tela devideo pode compreender uma lista de visualização que exibe otitulo dos dados, o tamanho dos dados na armazenagem e o ti-po de arquivos de dados. Se os dados foram selecionados portamanho conforme ilustrado na Figura 7D, o arquivo A 720 es-taria no topo da lista, seguido pelo arquivo C 722 e arquivoB 724. Nesta incorporação ilustrativa, um usuário poderiamodificar os critérios de seleção pela manipulação da telade video 700. Apesar das Figuras 7C e 7D ilustrarem váriosexemplos de seleção, uma pessoa habilitada na ciência rele-vante poderia avaliar que os critérios adicionais de seleçãoe/ou de telas de video também seriam compreendidos dentro daabrangência da presente invenção.
Com referência à Figura 8, será descrita a rotina800 para manipulação de conteúdo em uma visualização agrega-da. No bloco 802, é obtida uma solicitação para manipulaçãode conteúdo exibida em uma visualização agregada. Uma pessoahabilitada na ciência relevante poderá avaliar que a manipu-lação do conteúdo pode compreender a abertura de um arquivode dados com um aplicativo de software principal, modifican-do o conteúdo, excluindo o conteúdo, copiando o conteúdo oumovendo o conteúdo. No bloco 804, o dispositivo de computa-ção solicitante obtém um identificador de segurança a partirdo banco de dados local de informações de segurança 108.
À decisão do bloco 806, é conduzido um teste paradeterminar se o conteúdo selecionado está localmente armaze-nado. Se o conteúdo estiver localmente armazenado, no bloco808, o dispositivo de computação processa a solicitação coma informação local de segurança para determinar se o usuárioestá autorizado a manipular o conteúdo selecionado. Se oconteúdo não estiver localmente armazenado, à decisão dobloco 810, é conduzido um teste para determinar se a cópiados dados solicitados é mantida localmente pelo dispositivode computação. Em uma incorporação ilustrativa da invenção,o dispositivo de computação pode manter cópias de documentospreviamente acessados em uma memória volátil, tal como umcachê de dispositivo de computação. Se uma cópia do arquivoestiver localmente disponível, a rotina 800 prossegue para obloco 808 para processar a solicitação com a informação lo-cal de segurança, conforme descrito acima. Se uma cópia doarquivo solicitado não está localmente mantida, no bloco812, o dispositivo de computação solicitante transmite a in-formação de segurança do usuário particular como uma fichajuntamente com a solicitação de manipular o conteúdo ao dis-positivo de computação que realmente armazena o conteúdo. Odispositivo de computação receptor então utiliza a ficha desegurança para processar a solicitação e transmite uma res-posta. No bloco 814, o dispositivo de computação remetenterecebe a resposta do dispositivo de computação receptora. Sea manipulação está autorizada no bloco 808 ou no bloco 812,fica permitido ao usuário manipular o conteúdo do bloco 816.A rotina 800 finaliza no bloco 818.
1 Além da consulta por conteúdo (objeto de dados)com armazenagem distribuída em um sistema de computador emrede (por ex.: rede 100 conforme mostrado na Figura 2) con-forme previamente discutido, freqüentemente um usuário usadiversos sistemas de computador. 0 usuário, por exemplo, po-de possuir um computador de mesa em sua residência ou notrabalho e um computador laptop que o usuário usa enquantoestá em viagem. Em tais casos, o usuário pode criar ou modi-ficar arquivos em um sistema de computador. Freqüentemente,o usuário deseja sincronizar os arquivos (aqueles que o usu-ário cria ou modifica em um sistema de computador) com umoutro sistema de computador. As modalidades ilustrativas aseguir da invenção dão suporte à sincronização de objetos dedados para roteiros associados de usuários.
A Figura 9 ilustra um ambiente no qual um sistemae um método de sincronização no mesmo nivel (P2P) de arqui-vos ou outro conteúdo pode operar, de acordo com uma incor-poração ilustrativa da invenção. Um usuário pode usar ou a-cessar um conjunto de múltiplos computadores, clientes ououtras máquinas para negócios, pessoais ou outros usos, a-brangendo uma primeira máquina 902, ilustrativamente um com-putador de mesa, e uma segunda máquina 914, ilustrativamenteum computador laptop ou outro computador portátil. Outroscomputadores, clientes ou outras máquinas podem ser sincro-nizadas, abrangendo, por exemplo, telefones celulares habi-litados à rede, clientes de correio eletrônico habilitado àrede, acessórios digitais pessoais habilitados à rede, meiosde reprodução habilitados à rede ou outros componentes físi-cos. Em operação conforme apresentado, a primeira máquina902 e a segunda máquina 914 podem ser conectadas por meio deuma conexão 918, tal como uma conexão de Universal SerialBus, conexão Fire Wire™, conexão BlueTooth™, conexão WiFi™ou outras conexões ou canais de fio ou sem fio ou ópticas.
De acordo com modalidades ilustrativas da invenção, a cone-xão 918 pode ser continuamente mantida conforme em uma redede área local (LAN) ou de outro modo, ou em algumas modali-dades serem conectadas intermitentemente entre duas ou maismáquinas participantes.
De acordo com modalidades ilustrativas da inven-ção, a primeira máquina 902 pode gerar e apresentar uma in-terface de usuário 904, tal como uma interface gráfica deusuário, interface de linha de comando, ativada por voz ououtra interface para permitir ao usuário acessar os aplica-tivos, os arquivos, o sistema operacional e outros recursos.
De acordo com as modalidades ilustrativas conforme apresen-tadas, o usuário pode acessar uma interface de sincronização906 para ativar, selecionar e gerenciar arquivos ou outrasfunções de sincronização. A interface de sincronização 906pode estar sediada dentro de um sistema operacional da pri-meira máquina 902, ou em modalidades adicionais pode estarincorporada em um ou mais aplicativos, módulos ou outros re-cursos. De acordo com as modalidades ilustrativas conformeapresentadas, a interface de sincronização 906 pode oferecerao usuário seleções e opções de identificação, ativação egerenciamento de eventos de sincronização entre a primeiramáquina 902 e a segunda máquina 914, ou outras máquinas ououtras metas. De modo geral, essas atividades de sincroniza-ção podem envolver a sincronização de arquivos, pastas, di-retórios, volumes, discos ou outro conteúdo, informação, ar-mazenagem, ou meios selecionados ou descobertos entre máqui-nas participantes.
De acordo com modalidades ilustrativas da inven-ção, o usuário pode manipular a interface de sincronização906 para selecionar um conjunto de arquivos sincronizados926 para sincronização ou acessibilidade entre máquinas ousistemas participantes. O conjunto de arquivos sincronizados926 pode, por exemplo, conter arquivos ou outro conteúdo i-dentificado a partir de um conjunto de arquivos locais 912armazenados na primeira máquina 902, bem como a partir de umoutro conjunto de arquivos locais 916 armazenados na segundamáquina 914, ou outros arquivos ou informações. O conjuntode arquivos sincronizados 926 pode ser identificado, armaze-nado ou gerenciado por um mecanismo processador de sincroni-zação 908 sediado na primeira máquina 902. O mecanismo pro-cessador de sincronização 908 pode comunicar-se com um re-gistro de sistema de arquivo 910 mantido na primeira máquina902, para acompanhar e registrar a condição dos arquivos,pastas, diretórios, volumes ou outro conteúdo ou informaçãodesignada para sincronização ou acessibilidade no conjuntode arquivos sincronizados 926 ou de outro modo. Em modalida-des ilustrativas, a segunda máquina 914 ou outra máquina oumáquina adicional participante pode, do mesmo modo, manter amesma lógica ou lógica similar, na forma de uma outra ins-tância de mecanismo processador de sincronização 908, regis-tro de sistema de arquivos 910 e outros recursos de gerenci-amento, cada um dos quais em modalidades podem ser novamentesediados em um sistema operacional ou outros recursos.
De acordo com modalidades ilustrativas da inven-ção, o conjunto de arquivos sincronizados 926 pode tambémser configurado para compreender os diretórios, pastas ououtros recursos comumente usados pelo usuário, por exemplo,pastas ilustrativas tais como Meus documentos, Minhas músi-cas, Desktop (Área de Trabalho), Favoritos ou outras pastasou recursos. Os diretórios, as pastas e outros recursos co-mumente utilizados podem ser configurados para anunciar au-tomaticamente sua disponibilidade para sincronização ao me-canismo processador de sincronização 908 ou outros recursospara facilitar a seleção ou ativação pelo usuário pela acei-tação ou destaque desses recursos e uma destinação de sin-cronização. As pastas, os diretórios ou outros recursos po-dem ser selecionados ou configurados para sincronização quenão são específicos a um usuário, por ex.: pastas ou outrosconteúdos que são globais ao sistema de sincronização abran-gendo pastas de projeto orientadas por tarefa, pastas públi-cas tais como pastas na forma de c:\users\public, ou outraspastas, diretórios ou outros recursos. Nestas e outras moda-lidades da invenção, as pastas, os diretórios e outras fon-tes podem ser automaticamente descobertos por lógica de des-coberta ou qualquer uma ou mais máquinas, além ou em lugarde especificação manual de tal conteúdo. Do mesmo modo, emalgumas modalidades da invenção, além ou em lugar de manual-mente registrar um endereço ou identificador para máquinasde destinação, máquinas que podem ser candidatas para inclu-são em conjuntos de máquinas participantes também podem serautomaticamente excluídas usando lógica de descoberta, talcomo a lógica que pode detectar máquinas conectadas em umarede de área local ou de outro modo.
Para propósitos de gerenciamento de sincronização,o mecanismo processador de sincronização 908 na primeira má-quina 902, na segunda máquina 814 ou de outro modo pode de-tectar o status da conexão da primeira máquina, da segundamáquina 914 ou outras máquinas ou componentes físicos paradeterminar aquelas ocasiões quando aquelas máquinas desfru-tam da conectividade entre si ou outro componente físicoparticipante, por meio da conexão 918 ou outras conexões oucanais. Por exemplo, o mecanismo processador de sincroniza-ção 908 pode estabelecer uma conexão através de portas decomunicação disponíveis da primeira máquina 902, da segundamáquina 914 ou outras máquinas participantes, compreendendoabrir túneis através de recursos de sistemas de proteção deacesso conforme for apropriado.
Quando a conectividade está estabelecida, por ex.:por meio de USB ou conexões sem fio, o mecanismo processadorde sincronização 908 na primeira máquina 902 pode autenticaras máquinas participantes para assegurar que a sincronizaçãode arquivos está sendo corretamente iniciada. Quando uma co-nexão autenticada é verificada, o mecanismo processador desincronização 108 na primeira máquina 902 pode iniciar a a-cessibilidade automática de arquivos, o tratamento de ima-gens e a atividade de sincronização entre as máquinas parti-cipantes. Por exemplo, o mecanismo processador de sincroni-zação 908 na primeira máquina 902 pode acessar o conjunto dearquivos sincronizados 926 para determinar quais os arqui-vos, pastas, diretórios, volumes, ou outro conteúdo locali-zado na primeira máquina 902 necessitam ser transferidos pa-ra a segunda máquina 914 e do mesmo modo com conteúdo simi-lar localizado na segunda máquina 914 necessita ser transfe-rido para a primeira máquina 902 para manter um conjunto co-erente ou compatível de arquivos ou outras informações entreessas máquinas.
O mecanismo processador de sincronização 908 naprimeira máquina 902 pode então examinar o registro de sis-tema de arquivo 910 da primeira máquina 902 ou do registrode sistema de arquivo 910 da segunda máquina 914 com a fina-lidade de examinar a condição, o comportamento ou históricodos arquivos e outro conteúdo na máquina participante. Acondição, o comportamento, o histórico ou outros dados metaou informações em relação ao conjunto de arquivos sincroni-zados 926 pode compreender não meramente informações de datade entrada indicando a mais recente edição, baixa ou acessoa um arquivo, porém informações tais como o tamanho do ar-quivo, o tipo de arquivo, informações relacionadas a versõesanteriores ou transmissões de um arquivo e outras informações
Ao acessar estas e outras informações em relação àcondição do arquivo e outro conteúdo nas máquinas partici-pantes, o mecanismo processador de sincronização 908 da pri-meira máquina pode excluir, copiar, editar, reformatar, mo-dificar a localização de armazenagem ou de outro modo mani-pular o conjunto de arquivos sincronizados 926 em uma oumais localizações. Essas ações podem ser efetuadas para as-segurar que a mesma versão de um determinado arquivo sejamantida na primeira máquina, na segunda máquina 914 e outrasmáquinas participantes. De acordo com modalidades ilustrati-vas da invenção, o mecanismo processador de sincronização naprimeira máquina 902 pode aplicar a lógica de sincronizaçãodelta aos arquivos processados com a finalidade de atingirsomente aqueles arquivos ou partes de arquivos que foram mo-dificados depois da última sincronização ou outro ponto aser acessado entre as máquinas participantes. Em modalidadesilustrativas da invenção que envolve LANs corporativas ououtras LANs organizacionais, um administrador de sistemaspode ajustar o mecanismo processador de sincronização 908 daprimeira máquina ou outras máquinas para restringir a propa-gação de determinados arquivos a determinados usuários ouaplicar outros controles de sincronização. Quando são apli-cadas permissões, deve ser observado que as permissões devemser dispostas de modo que os dados possam migrar corretamen-te através de todas as máquinas participantes para asseguraros caminhos de conexão para todas as destinações necessá-rias. Outras configurações são possíveis de acordo com moda-lidades da invenção.
De acordo com modalidades ilustrativas da inven-ção, o usuário, o administrador ou os ajustes do sistema o-peracional pode estabelecer o gerenciamento sincronizado, atransferência de arquivos e outras atividades efetuadas pelomecanismo processador de sincronização 908 da primeira má-quina 902, o mecanismo processador de sincronização 908 dasegunda máquina 914 ou outros recursos para executar, a umnível de prioridade desejado, a operação como uma tarefa bá-sica, ou suspender ou reassumir as atividades de transferên-cia de arquivos até que a conectividade de banda larga este-ja estabelecida ou re-estabelecida, ou tomar outras medidasa outras ocasiões ou sob outras condições. De acordo com mo-dalidades ilustrativas da invenção, a primeira máquina 902,a segunda máquina 914 ou outras máquinas participantes, cli-entes, dispositivos ou componentes físicos, por exemplo, seridentificados por um serviço de nome de domínio (DNS) ou ou-tro endereço ou identificador. 0 mecanismo processador desincronização 908 da primeira máquina 902, o mecanismo pro-cessador de sincronização 908 da segunda máquina 914 ou ou-tras instâncias de mecanismo processador de sincronização,ou lógica pode utilizar a lógica de descoberta automáticapara detectar quando outras máquinas participantes aparecemna Internet ou outras redes, de modo que as máquinas possamreassumir a atividade com outras máquinas em qualquer pontodurante o qual as mesmas desfrutem da Internet ou outra co-nectividade.
O usuário pode seletivamente ou arbitrariamenteescolher aqueles arquivos ou outro conteúdo de origem que ousuário deseja reproduzir, acessar ou sincronizar entre oconjunto de usuários das máquinas participantes, de qualqueruma ou mais destas máquinas, sem restrição. Não obstante, aprimeira máquina 902, a segunda máquina 914 e qualquer outramáquina participante podem compartilhar um conjunto de ar-quivos sincronizados 926 em uma base de grupo, porém estasmáquinas não precisam estar diretamente conectadas umas àsoutras ao mesmo tempo para efetuar as operações de sincroni-zação da invenção. Na verdade, a atividade de sincronizaçãopode ser realizada automaticamente e oportunamente dependen-do da conexão, da rede ou outras condições para cada máquinaou subgrupo ou sub-rede de máquinas (pode ser observado queem tais modalidades ilustrativas, o conjunto de máquinasparticipantes pode, mesmo assim, ser capaz de atingir umarede totalmente conectada em uma base geral ou cumulativa,mesmo se as máquinas, os subgrupos ou sub-redes de máquinasconectem em horas diferentes, locais diferentes e usem dife-rentes tipos de conexões de rede). Um usuário pode escolherpara designar todos os arquivos localizados na primeira má-quina 902, a segunda máquina 914 ou de outro modo estar a-cessado ou sincronizado a uma outra máquina participante,para fazer uso de uma cópia reserva destes arquivos de ori-gem, se desejado.
De acordo com as modalidades ilustrativas da in-venção na Figura 20, a lógica de sincronização da primeiramáquina 902, a lógica de sincronização da segunda máquina914 ou outra lógica ou instâncias podem aplicar a lógica deversão de gerenciamento 1020 em associação com a realizaçãode transferências e atualizações de arquivo. Nas modalidadesilustrativas conforme mostradas, quando a lógica de sincro-nização 908 detecta um conflito de versão entre as instân-cias de um arquivo (por ex. : um arquivo mais antigo sendopreparado para sobrescrever uma versão mais nova deste mesmoarquivo), a lógica do gerenciamento de versão 1020 pode a-presentar ao usuário um diálogo ou consulta para resolvereste conflito para renomear ou mover o arquivo antigo, subs-tituir uma outra versão do arquivo, oü tomar alguma outramedida. Podem ser detectados conflitos baseados em versãoou outros conflitos. Em algumas modalidades, de preferênciaou além de apresentar ao usuário uma interface rica para ma-nuseio de exceção, a lógica de gerenciamento de versão 1020também pode aplicar regras automáticas ou o processamentopara arquivos ou dados conflitantes, tais como a execução deuma função de comparação para editar ou salvar arquivos con-flitantes, ou de outro modo processar as versões diferentes.
Mais uma vez pode ser observado que as modalidadesilustrativas da invenção, tais como na Figura 11, mais deduas máquinas podem participar na sincronização de arquivose funções relacionadas na mesma base automática. Um conjuntode máquinas conforme mostrado pode compreender, pelo menos,uma primeira máquina 902, uma segunda máquina 914, uma ter-ceira máquina 1122, uma quarta máquina 1124 ou máquinas,clientes, computadores ou dispositivos adicionais para sin-cronizar o arquivo selecionado ou outro conteúdo. Em modali-dades ilustrativas, as máquinas podem estar diretamente co-nectadas por meio de uma conexão por cabo tal como uma cone-xão 918 ilustrada na Figura 9, ou por outra conexão por fio,sem fio ou conexão óptica, abrangendo interfaces aéreas paratelefones celulares habilitados à rede. No entanto, o usuá-rio pode iniciar a sincronização seletiva dos arquivos dese-jados com comparativamente pouco esforço de configuração esem a necessidade de ou o apoio em uma armazenagem interme-diária, recurso lógico ou controle tal como um servidor dereserva da Internet. Portanto, as modalidades da invençãopodem intensificar a confiança, velocidade e interoperabili-dade das operações de acessibilidade de arquivos.
A Figura 12 ilustra o compartilhamento geral dearquivo e o processamento de sincronização de acordo com mo-dalidades ilustrativas da invenção. Na etapa 1202, o proces-samento pode iniciar. Na etapa 1204, um usuário pode iniciarou registrar uma primeira máquina 902, tal como um computa-dor pessoal, um laptop ou um computador portátil, um telefo-ne celular habilitado à rede ou outro cliente, máquina, com-ponente fisico ou dispositivo. Na etapa 1206, o usuário podeselecionar ou ativar um conjunto de arquivos de origem, pas-tas, diretórios, ou outros arquivos de origem, posições deorigem ou outras informações, conteúdo, destacando um con-junto de arquivos na primeira máquina 902 ou em outra loca-lização. Na etapa 1208, o usuário pode designar um conjuntode arquivos sincronizados 926 para serem automaticamentesincronizados e gerenciados entre um conjunto de computado-res de trabalho ou outras máquinas. Na etapa 1210, o statusda conexão de rede da máquina designada ou máquinas pode serautomaticamente descoberto pelo mecanismo de processamentode sincronização 908 ou outra lógica. Na etapa 1212, o usuá-rio pode selecionar ou o mecanismo de processamento de sin-cronização 908 pode recuperar, uma designação de uma ou maismáquinas para arquivo ou outra sincronização de dados.
Na etapa 1214, a conexão 918 tal como uma USB ououtra conexão de fio ou sem fio pode ser estabelecida e au-tenticada para conectar a máquina ou máquinas selecionadas,tal como uma segunda máquina 914 ou outro computador, máqui-na, cliente ou componente fisico. Na etapa 1216, o mecanismode processamento de sincronização 908 ou outra lógica decontrole pode iniciar a transferência de arquivos do conjun-to de arquivos sincronizados 926 ou outra transmissão deconteúdo entre a primeira máquina 902 ou a segunda máquina914. Na etapa 1218, o mecanismo de processamento de sincro-nização 908 da primeira máquina 902 ou a segunda máquina 914ou ambas podem aplicar o gerenciamento digital de direitosou lógica de proteção para ajustar os arquivos sincronizados926 ou outro conteúdo a ser transferido. O mecanismo de pro-cessamento de sincronização 908 de qualquer uma ou mais má-quinas participantes pode automaticamente buscar autoriza-ções ou licenças para reproduzir o arquivo ou conteúdo, talcomo música ou outro conteúdo de meios de armazenagem. Nahipótese de ser negada uma autorização, o mecanismo de pro-cessamento de sincronização 908 pode excluir o arquivo ouarquivos não autorizados da máquina destinada, notificar ousuário que uma cópia não autorizada foi removida, ou tomaroutra medida.
Na etapa 1220, o mecanismo de processamento desincronização 908 da primeira máquina ou da segunda máquinaou ambas podem aplicar a lógica de gerenciamento de versão1020 para ajustar os arquivos sincronizados 926 ou outroconteúdo a ser transferido para capturar instâncias de ar-quivos de versões incompatíveis, ou versões obsoletas de ar-quivos dos quais está sendo uma efetuada uma tentativa decopiar sobre versões mais recentes, ou detectar outros con-flitos de versões. A lógica de gerenciamento de versão 1020pode apresentar ao usuário um diálogo para obter a sua dis-posição preferida de conflitos de versões, tal como acessara versão mais atual de um arquivo, renomear ou efetuar umacópia de reserva de versões obsoletas de arquivos para subs-tituir outros arquivos por versões era conflito ou tomar ou-tra medida. Na etapa 1222, o mecanismo de processamento desincronização 908 ou outra lógica em uma ou mais máquinasparticipantes pode atualizar o registro de sistema de arqui-vo 910 nesta máquina ou componente físico local correspon-dente. Na etapa 1224, o processamento pode repetir, retornarpara um ponto de processamento anterior, pular para um pontode processamento adicional ou final.
Em modalidades ilustrativas da invenção, o usuáriopode consultar um sistema de computador em rede por objetosde dados bem como iniciar a sincronização de objetos de da-dos selecionados em múltiplos computadores do sistema decomputadores em rede. (Um objeto de dados é uma unidade deinformações que podem ser individualmente chamadas. Exemplosde objetos de dados compreendem arquivos, pastas, diretóriose dispositivos eletrônicos.) As modalidades ilustrativas dainvenção, como serão discutidas, dão suporte aos roteiros deusuários nas quais os objetos de dados podem ser reproduzi-dos em múltiplos computadores onde o usuário consulta o sis-tema de computador por objetos de dados especificados.
As Figuras 13A-C ilustram roteiros para resultadosde consulta com armazenagem distribuída em uma rede de com-putadores de acordo com uma incorporação da invenção. 0 ro-teiro nas Figuras 13A-C corresponde a uma rede de computado-res que consiste de computadores pessoais 1301, 1303, 1305 e1307. Como um exemplo, o usuário do computador 1307 consultaarquivos que foram criados em 17 de junho de 2004, quando ousuário trabalhou de casa no computador de mesa ou laptop dousuário. No exemplo, os arquivos AeB são documentos que ousuário criou no computador 1301, os arquivos CeD são do-cumentos que o usuário criou no computador 1303 e os arqui-vos EeF são arquivos com conteúdo de música. Os arquivosX, Y e Z (conforme associados com os computadores 1301, 1303e 1305, respectivamente) foram criados em uma data diferentede 17 de junho de 2004.
Com referência à Figura 13A, o computador 1301 ar-mazena os arquivos A e Β, o computador 1303 armazena os ar-quivos CeDeo computador 1305 armazena os arquivos DeF.No computador 1307 o usuário cria uma solicitação para a re-de de consulta 1300 para obter a identificação dos objetosde dados que foram criados em 17 de junho de 2004. Subse-qüentemente, o computador 1307 envia as solicitações de con-sulta com o critério de data (17 de junho de 2004) aos com-putadores 1301, 1303 e 1305. Conseqüentemente, o computador1307 recebe uma resposta do computador 1301 com identidadespara os arquivos AeB, uma resposta do computador 1303 comidentidades para os arquivos CeDe uma resposta do compu-tador 1305 com identidades para os arquivos D e F. 0 compu-tador 1307 combina as identidades para os objetos de dadosespecificados a partir das respostas e apresenta o resultada consulta ao usuário.
O roteiro apresentado na Figura 13B é similar àFigura 13A exceto que os arquivos EeF foram reproduzidospara o computador 1301. (A reprodução dos arquivos foi pre-viamente discutida, por ex. : Figura 12). Portanto, o compu-tador 1301 armazena os arquivos A, Β, E e F, o computador1303 armazena os arquivos CeDeo computador 1305 armazenaos arquivos E e F. No computador 1307 o usuário gera uma so-licitação para consultar a rede 1300 para obter a identifi-cação dos objetos de dados que foram criados em 17 de junhode 2004. O computador 1307 então envia solicitações de con-sulta com o critério (17 de junho de 2004) aos computadores1301, 1303 e 1305. Conseqüentemente, o computador 1307 rece-be uma resposta do computador 1301 com as identidades paraos arquivos A, Β, E e F, uma resposta do computador 1303com identidades para os arquivos CeDe uma resposta docomputador 1305 com identidades para os arquivos E e F. Ocomputador 1307 combina (relaciona) as identidades para osobjetos de dados especificados a partir das respostas e a-presenta o resulta da consulta ao usuário. No entanto, comoserá discutido em mais pormenores na Figura 14, o computador1307 determina que os arquivos EeF conforme identificadospelo computador 1301 são os mesmos arquivos EeF que estãoidentificados pelo computador 1307. Conseqüentemente, o re-sultado da consulta que é exibido ao usuário contém os ar-quivos EeF somente uma vez. Portanto, o resultado daconsulta indica os arquivos A, B, C, D, EeF ao invés de A,B.E, F, C, D, E e F. Um arquivo reproduzido normalmente temo mesmo nome em todas as máquinas alvo. No entanto, as moda-lidades da invenção operam com arquivos reproduzidos que temdiferentes nomes.
O roteiro apresentado na Figura 13C é similar àFigura 13A com exceção de que os arquivos BeF foram repro-duzidos para o computador 1301 e o arquivo A foi reproduzidopara o computador 1307. Assim, o computador 1301 armazena osarquivos A, Β, E e F, o computador 1303 armazena os arquivosC e D, o computador 1305 armazena os arquivos EeFeo com-putador 1307 armazena o arquivo A. No computador 1307 o usu-ário gera uma solicitação para consultar a rede 1300 paraobter a identificação dos objetos de dados que forma criadosem 17 de junho de 2004. Subseqüentemente, o computador 1307envia solicitações de consulta com o critério de data (17 dejunho de 2004) aos computadores 1301, 1303 e 1305. No entan-to, o computador 1307 já reproduziu o arquivo A e não con-sulta o computador 1301 a respeito do arquivo A. (Em uma in-corporação, quando o computador 1307 consulta por resulta-dos, o computador 1307 examina, primeiramente, os seus re-sultados de memória. Se o computador 1307 encontra um arqui-vo, então o computador 1307 modifica a consulta procedentepara a máquina 1301 de modo que a máquina 1301 somente éconsultada por arquivos que não estão presentes no computa-dor 1307.) Conseqüentemente, o computador 1307 recebe umaresposta do computador 1301 com identidades para os arquivosΒ, E e F, a resposta do computador 1303 com identidades paraos arquivos CeDe uma resposta do computador 1305 com i-dentidades para os arquivos E e F. 0 computador 13077 combi-na as identidades para os objetos de dados especificados apartir das respostas e apresenta o resulta da consulta aousuário.
A Figura 14 apresenta o diagrama de fluxo 1400 quefornece suporte a consultas para computadores em rede comarmazenagem distribuída de acordo com uma incorporação ilus-trativa da invenção. Na etapa 1401, o computador do usuário(por ex.: computador 1307) recebe uma solicitação de consul-ta através de uma interface de usuário (por ex. : interfacede usuário 1507 conforme mostrada na Figura 15) . Na etapa1403, o computador de usuário (computador local) determinaobjetos de dados reproduzidos no computador do usuário e nãoconsulta computadores em rede (computadores remotos) a res-peito de objetos de dados reproduzidos que foram armazenadosno computador do usuário. Conseqüentemente, o desempenho pa-ra executar a consulta pode ser intensificado. Na etapa1405, o computador do usuário consulta os computadores emrede a respeito dos objetos de dados remanescentes. O compu-tador do usuário recebe as respostas do computador em redena etapa 1407. Na etapa 1409, o objeto de dados é identifi-cado somente uma vez. A etapa 1411 seleciona as identidadesdos objetos de dados especificados que estão armazenados noscomputadores em rede bem como os objetos de dados que estãoarmazenados no computador do usuário. O resultado da consul-ta, conforme determinado pela etapa 1411, pode ser exibidoao usuário através da interface de usuário.
Além do processo 1400 que fornece uma visualizaçãosimples dos objetos especificados no sistema de computadoresem rede, o processo 1400 pode ser ampliado de modo que osobjetos especificados que não estão armazenados em um compu-tador em rede podem ser reproduzidos para o computador emrede. Por exemplo, conforme apresentado na Figura 13C, osresultados da consulta mostram os arquivos A, B, C, D, E e Fenquanto somente o arquivo A está armazenado no computador1307.
A Figura 15 apresenta um sistema de computador1500 que consulta computadores em rede com armazenagem dis-tribuída através da rede 1513 de acordo com uma incorporaçãoilustrativa da invenção. Em uma incorporação ilustrativa dainvenção, o sistema de computador 1500 está baseado em umaplataforma de computador conforme apresentado na Figura 1. 0sistema de computador compreende um módulo de serviço deconsulta de conteúdo 1501, estrutura de dados de reprodução1503, estrutura de dados de igual status 1505, interface deusuário 1507, interface de rede 1509 e memória cachê 1511. Ainterface de usuário 1507 pode conectar a dispositivos deentrada de usuário (por ex. : um teclado) e dispositivos desaida de usuário (por ex.: um dispositivo de exibição).
Quando solicitado por um usuário através de umainterface de usuário 1507, um módulo de serviço de consultade conteúdo 1501 executa o processo 1400 conforme apresenta-do na Figura 14. O módulo de serviço de consulta de conteúdo1501 consulta computadores em rede e recebe respostas a par-tir de computadores em rede através da interface de rede1509 e rede 1513. Se o módulo de serviço de consulta de con-teúdo 1501 determina que o computador em rede não está Iiga-do, então o módulo de serviço de consulta de conteúdo 1501abstém-se do envio da consulta ao computador que não estáligado. Neste caso, o módulo de serviço de consulta de con-teúdo 1501 pode consultar a memória cachê (memória volátillocal) 1511 a respeito dos objetos de dados mais recentesacessados a partir do computador que não está ligado.
Da mesma forma, o módulo de serviço de consulta deconteúdo 1501 armazena informações a respeito de objetos dedados reproduzidos na estrutura de dados de reprodução 1503.Por exemplo, se um arquivo que foi armazenado no sistema docomputador 1500 também foi reproduzido em um computador emrede, o módulo de serviço de consulta de conteúdo 1501 nãoconsulta os computadores em rede sobre o objeto de dados re-produzidos. Em uma incorporação da invenção, o módulo deserviço de consulta de conteúdo 1501 usa um índice de pes-quisa para determinar onde um arquivo se encontra. Se um ar-quivo foi localmente reproduzido, então o índice de pesquisana máquina local conterá o nome do arquivo.
Quando o módulo de serviço de consulta de conteúdo1501 recebe respostas a partir de computadores em rede, omódulo de serviço de consulta de conteúdo 1501 seleciona asidentificações dos objetos de dados selecionados e pode exi-bir o resultado da consulta ao usuário através da interfacede usuário 1507.
Conforme pode ser avaliado por uma pessoa habili-tada na ciência, um sistema de computador com um computadorassociado a um meio de leitura que contém instruções para ocontrole do sistema de computador pode ser utilizado paraexecutar as modalidades ilustrativas que estão descritas nopresente relatório.
Apesar do assunto em questão ter sido descrito nalinguagem específica a características estruturais e/ou a-ções metodológicas, deve ficar entendido que o assunto emquestão definido nas reivindicações anexas não estão neces-sariamente limitadas às características ou ações específicasacima descritas. Na verdade, as características e ações es-pecificas acima descritas estão relatadas como formas de e-xemplos de execução das reivindicações.

Claims (20)

1. Meio legível por computador dotado de instru-ções executáveis por computador armazenadas no mesmo em umsistema de computador local conectado a uma rede de computa-dores, sendo as ditas instruções configuradas para realiza-rem um método CARACTERIZADO pelo fato de compreender as eta-pas de:(a) obter uma solicitação para identificar objetosde dados especificados de acordo com um critério;(b) determinar objetos de dados especificados queestão armazenados em um sistema de computador local e quecorrespondem a um conjunto de identificação local de objetosde dados especificados;(c) executar uma consulta ao primeiro sistema decomputador na rede de computadores por objetos de dados es-pecificados que não estão armazenados no computador local;(d) obter um primeiro conjunto de identificaçãodos objetos de dados especificados que estão armazenados noprimeiro sistema de computador; e(e) incorporar o conjunto de identificação localao primeiro conjunto de identificação para formar um conjun-to de identificação incorporado.
2. Meio legível por computador, de acordo com areivindicação 1, CARACTERIZADO pelo fato de ser dotado deinstruções executáveis por computador adicionalmente confi-guradas para executar a etapa de:(f) gerar um resultado do conjunto de identifica-ção incorporado.
3. Meio legível por computador, de acordo com areivindicação 1, CARACTERIZADO pelo fato de ser dotado deinstruções executáveis por computador adicionalmente confi-guradas para executar a etapa de:(f) executar uma consulta a um segundo sistema decomputador na rede de computadores por objetos de dados es-pecificados que não estão armazenados no computador local;(g) obter um segundo conjunto de identificação dosobjetos de dados especificados que estão armazenados no pri-meiro sistema de computador;(h) se o primeiro conjunto de identificação contémuma identificação correspondente de um objeto de dado repro-duzido, manter somente uma identificação para o objeto dedados reproduzido; e(i) incorporar o conjunto de identificação local,ao primeiro conjunto de identificação e o segundo conjuntode identificação para formar um conjunto de identificaçãoincorporado.
4. Meio legível por computador, de acordo com areivindicação 2, CARACTERIZADO pelo fato de que (f) compre-ende instruções executáveis por computador adicionalmenteconfiguradas para efetuar a etapa de:exibir os resultados para o usuário.
5. Meio legível por computador, de acordo com areivindicação 1, CARACTERIZADO pelo fato de que a rede decomputadores compreende um terceiro sistema de computador eas instruções executáveis por computador são adicionalmenteconfiguradas para efetuar as etapas de:(f) se o terceiro sistema de computador está co-nectado na rede de computadores, obter um terceiro conjuntode identificação de objetos de dados especificados que estãoarmazenados no terceiro sistema de computador; e(g) incorporar o terceiro conjunto de identifica-ção com o primeiro conjunto de identificação e o conjunto deidentificação local.
6. Meio legivel por computador, de acordo com areivindicação 1, CARACTERIZADO pelo fato de que a rede decomputadores compreende um terceiro sistema de computador eas instruções executáveis por computador são adicionalmenteconfiguradas para efetuar as etapas de:(f) se o terceiro sistema de computador não estáconectado na rede de computadores, obter um terceiro conjun-to de identificação de objetos de dados especificados doterceiro sistema de computador a partir da memória cachê.
7. Meio legivel por computador, de acordo com areivindicação 1, CARACTERIZADO pelo fato de; (a) compreenderinstruções executáveis por computador adicionalmente confi-guradas para efetuar a etapa de:determinar que os objetos de dados especificadossão associados com um único identificador correspondente aum usuário.
8. Meio legivel por computador, de acordo com areivindicação 7, CARACTERIZADO pelo fato de que o usuário éum proprietário dos objetos de dados especificados.
9. Meio legivel por computador, de acordo com areivindicação 2, CARACTERIZADO pelo fato de que o resultadoé representado sem identificação de localizações associadasdos objetos de dados especificados.
10. Meio legível por computador, de acordo com areivindicação 2, CARACTERIZADO pelo fato de ser dotado deinstruções executáveis por computador adicionalmente confi-guradas para efetuar a etapa de:(g) agrupar os resultados de acordo com um crité-rio selecionado.
11. Meio legível por computador, de acordo com areivindicação 10, CARACTERIZADO pelo fato de que o critériode seleção corresponde a uma localização dos objetos de da-dos especificados.
12. Meio legível por computador, de acordo com areivindicação 1, CARACTERIZADO pelo fato de ser dotado deinstruções executáveis por computador adicionalmente confi-guradas para efetuar a etapa de:(f) iniciar a consulta em resposta à ocorrência deum evento especificado.
13. Meio legível por computador, de acordo com areivindicação 1, CARACTERIZADO pelo fato de ser dotado deinstruções executáveis por computador adicionalmente confi-guradas para efetuar a etapa de:(f) limitar o número de sistemas remotos de compu-tador que são consultados para identificar os objetos de da-dos especificados.
14. Meio legível por computador, de acordo com areivindicação 1, CARACTERIZADO pelo fato de ser dotado deinstruções executáveis por computador adicionalmente confi-guradas para efetuar a etapa de:(f) sincronizar um objeto de dado com base no con-junto de identificação concatenado.
15. Meio legível por computador, de acordo com areivindicação 2, CARACTERIZADO pelo fato de ser dotado deinstruções executáveis por computador adicionalmente confi-guradas para efetuar a etapa de:(g) destacar uma entrada no resultado para indicarque um objeto de dados especificado foi modificado desde ageração de um resultado prévio para identificar objetos dedados especificados.
16. Sistema de computador que consulta computado-res em rede a respeito de objetos de dados distribuídos emuma rede de computadores, sendo o sistema de computadorCARACTERIZADO pelo fato de compreender:uma interface de rede que possibilita o sistema decomputador a comunicar-se com um primeiro sistema de compu-tador e um segundo sistema de computador na rede de computa-dores;um módulo de interface de usuário;uma estrutura de reprodução de dados que contémindicação de objetos de dados reproduzidos;um módulo de serviço de consulta a conteúdo querecebe uma solicitação para identificar objetos de dados es-pecificados, de acordo com um critério, a partir de um usuá-rio através do módulo de interface de usuário, que obtém umprimeiro conjunto de identificação de objetos de dados espe-cificados no primeiro sistema de computador e um segundoconjunto de identificação de objetos de dados especificadosno segundo sistema de computador, que exclui uma identifica-ção correspondente de um objeto de dados reproduzido a par-tir de um dos conjuntos de identificação de acordo com a in-dicação de objetos de dados reproduzidos, e que concatena oprimeiro conjunto de identificação e o segundo conjunto deidentificação.
17. Sistema de computador, de acordo com a reivin-dicação 16, CARACTERIZADO pelo fato de compreender, adicio-nalmente :uma estrutura de dados de igual status que forneceinformações de status sobre a possibilidade de um computadorremoto estar desconectado; eno qual o módulo de serviço de consulta de conteú-do bloqueia uma consulta ao computador remoto se o computa-dor remoto estiver desconectado.
18. Sistema de computador, de acordo com a reivin-dicação 17, CARACTERIZADO pelo fato de compreender,adicionalmente:uma memória local que armazena objetos de dadospreviamente acessados a partir do computador remoto; eno qual o módulo de serviço de consulta de conteú-do obtém um conjunto de identificação associado dos objetosde dados especificados a partir da memória local com o pri-meiro conjunto de identificação e o segundo conjunto de i-dentificação.
19. Sistema de computador, de acordo com a reivin-dicação 18, CARACTERIZADO pelo fato de que a memória localcompreende uma memória cachê.
20. Meio legivel por computador dotado de instru-ções executáveis por computador armazenadas sobre isso em umsistema de computador local conectado a uma rede de computa-dores, sendo as ditas instruções configuradas para efetuarum método CARACTERIZADO pelo fato de compreender etapas de:(a) obter uma solicitação para identificar objetosde dados especificados de acordo com um critério;(b) determinar objetos de dados especificados queestão armazenados em um sistema de computador local e quecorrespondem a um conjunto de identificação local de objetosde dados especificados;(c) executar uma consulta ao primeiro sistema decomputador e um segundo sistema de computador por objetos dedados especificados que não estão armazenados no computadorlocal;(d) receber de uma primeira resposta do primeirocomputador com um primeiro conjunto de identificação dos ob-jetos especificados e uma segunda resposta a partir do se-gundo sistema de computador com o segundo conjunto de iden-tificação dos objetos de dados especificados;(e) se cada um do primeiro conjunto de identifica-ção e do segundo conjunto de identificação contém uma iden-tificação correspondente de um objeto de dado reproduzido,manter somente uma identificação para o objeto de dado re-produzido;(f) incorporar o conjunto de identificação local,ao primeiro conjunto de identificação e ao segundo conjuntode identificação para formar um conjunto de identificaçãoincorporado; e(g) gerar um resultado a partir do conjunto de i-dentificação concatenado.
BRPI0613131-0A 2005-07-12 2006-07-10 única visualização de dados em um sistema de computadores em rede com meio de armazenagem distribuido BRPI0613131A2 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/179,433 US7765229B2 (en) 2005-07-12 2005-07-12 Single view of data in a networked computer system with distributed storage
US11/179.433 2005-07-12
PCT/US2006/027073 WO2007008996A2 (en) 2005-07-12 2006-07-10 Single view of data in a networked computer system with distributed storage

Publications (1)

Publication Number Publication Date
BRPI0613131A2 true BRPI0613131A2 (pt) 2011-01-11

Family

ID=37637932

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI0613131-0A BRPI0613131A2 (pt) 2005-07-12 2006-07-10 única visualização de dados em um sistema de computadores em rede com meio de armazenagem distribuido

Country Status (9)

Country Link
US (1) US7765229B2 (pt)
EP (1) EP1902395A4 (pt)
JP (1) JP2009501397A (pt)
KR (1) KR20080031256A (pt)
CN (1) CN101568919B (pt)
BR (1) BRPI0613131A2 (pt)
MX (1) MX2008000514A (pt)
RU (1) RU2008101418A (pt)
WO (1) WO2007008996A2 (pt)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006053019A2 (en) 2004-11-08 2006-05-18 Sharpcast, Inc. Method and apparatus for a file sharing and synchronization system
US7870478B1 (en) * 2005-10-31 2011-01-11 Adobe Systems Incorporated Repurposing subsections and/or objects
EP1939760A1 (fr) * 2006-12-20 2008-07-02 Gemplus Procédé et dispositif de gestion de données dans un environnement distribué
FR2911467B1 (fr) * 2007-01-17 2009-05-08 Avanquest Software Sa Procede de gestion d'une memoire d'un terminal
US8170989B2 (en) * 2007-07-16 2012-05-01 International Business Machines Corporation Method and system for document management and exchange
US8491188B2 (en) * 2008-02-22 2013-07-23 Koninklijke Philips N.V. High-resolution quasi-static setup for X-ray imaging with distributed sources
US20090234872A1 (en) * 2008-03-11 2009-09-17 Microsoft Corporation Synchronization of disconnected/offline data processing/entry
US20090327405A1 (en) * 2008-06-27 2009-12-31 Microsoft Corporation Enhanced Client And Server Systems for Operating Collaboratively Within Shared Workspaces
US8612381B2 (en) 2008-09-12 2013-12-17 International Business Machines Corporation Enhanced synchronization framework providing improved sync granularity
US8650634B2 (en) * 2009-01-14 2014-02-11 International Business Machines Corporation Enabling access to a subset of data
US20100262582A1 (en) * 2009-04-10 2010-10-14 Microsoft Corporation Content synchronization across multiple computers
US20110040788A1 (en) * 2009-08-14 2011-02-17 Ic Manage, Inc. Coherent File State System Distributed Among Workspace Clients
US20140222758A1 (en) * 2009-08-14 2014-08-07 Ic Manage, Inc. Coherent File State Maintained Among Confederated Repositories By Distributed Workspace Apparatuses Backed Up By a File State Ledgerdemain Store
KR100985166B1 (ko) * 2009-11-03 2010-10-05 (주)피스페이스 분산 저장 시스템에서 파일을 동기화하는 장치 및 방법
US8441702B2 (en) 2009-11-24 2013-05-14 International Business Machines Corporation Scanning and capturing digital images using residue detection
US8610924B2 (en) 2009-11-24 2013-12-17 International Business Machines Corporation Scanning and capturing digital images using layer detection
US20110179270A1 (en) * 2010-01-20 2011-07-21 The Provost, Fellows and Scholars of the College of the Holy and Undivided Trinity of Queen Elizab Data Retrieval System
US11308490B2 (en) * 2010-07-28 2022-04-19 Cox Communications, Inc. Security system and method that allows users to securely setup and maintain system security for all business systems
US20180046627A1 (en) * 2011-12-12 2018-02-15 International Business Machines Corporation Pattern triggers while searching an index of data being ingested into a distributed computing system
US20130159408A1 (en) * 2011-12-15 2013-06-20 Microsoft Corporation Action-oriented user experience based on prediction of user response actions to received data
US8880249B2 (en) * 2011-12-30 2014-11-04 General Electric Company System, method, and computer program for an integrated human-machine interface (HMI) of an engine-generator
US10055419B2 (en) * 2012-02-03 2018-08-21 Apple Inc. User interface for accessing documents from a computing device
US10057318B1 (en) * 2012-08-10 2018-08-21 Dropbox, Inc. System, method, and computer program for enabling a user to access and edit via a virtual drive objects synchronized to a plurality of synchronization clients
CN103078926B (zh) * 2012-12-28 2016-03-30 华为技术有限公司 分布式存储系统的文件访问方法和装置以及系统
US20140351364A1 (en) * 2013-02-26 2014-11-27 Einar Rosenberg System, method, and apparatus for using a virtual bucket to transfer electronic data
US20150046557A1 (en) * 2013-02-10 2015-02-12 Einar Rosenberg System, method and apparatus for using a virtual bucket to transfer electronic data
US9331964B2 (en) * 2013-02-26 2016-05-03 Creating Revolutions Llc System, method, and apparatus for using a virtual bucket to transfer electronic data
WO2014174578A1 (ja) * 2013-04-22 2014-10-30 株式会社日立製作所 エッジサーバ及び記憶制御方法
GB2517159A (en) * 2013-08-13 2015-02-18 Sony Comp Entertainment Europe Data processing
CN105141569B (zh) * 2014-05-30 2019-06-21 华为技术有限公司 媒体处理方法及设备
US11276038B2 (en) 2016-08-07 2022-03-15 Verifi Media, Inc. Distributed data store for managing media
US20180121465A1 (en) * 2016-11-01 2018-05-03 Microsoft Technology Licensing, Llc Network-based communication and file sharing system
USD849029S1 (en) * 2016-12-30 2019-05-21 Adobe Inc. Display screen with graphical user interface for a marketing campaign
USD845974S1 (en) * 2016-12-30 2019-04-16 Adobe Inc. Graphical user interface for displaying a marketing campaign on a screen
US10817895B2 (en) 2016-12-30 2020-10-27 Adobe Inc. Marketing campaign system and method
US11334596B2 (en) 2018-04-27 2022-05-17 Dropbox, Inc. Selectively identifying and recommending digital content items for synchronization
CN114546273B (zh) * 2022-02-22 2023-08-04 苏州浪潮智能科技有限公司 聚合特性兼容多站点同步的方法、系统、设备和存储介质

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2067633C (en) * 1991-07-24 1996-10-01 Eric Jonathan Bauer Method and apparatus for accessing a computer-based file system
US5668986A (en) * 1991-10-02 1997-09-16 International Business Machines Corporation Method and apparatus for handling data storage requests in a distributed data base environment
US5590319A (en) * 1993-12-15 1996-12-31 Information Builders, Inc. Query processor for parallel processing in homogenous and heterogenous databases
US7165174B1 (en) 1995-02-13 2007-01-16 Intertrust Technologies Corp. Trusted infrastructure support systems, methods and techniques for secure electronic commerce transaction and rights management
US5708812A (en) 1996-01-18 1998-01-13 Microsoft Corporation Method and apparatus for Migrating from a source domain network controller to a target domain network controller
US6049809A (en) 1996-10-30 2000-04-11 Microsoft Corporation Replication optimization system and method
US5968121A (en) 1997-08-13 1999-10-19 Microsoft Corporation Method and apparatus for representing and applying network topological data
JP2000122910A (ja) * 1998-10-20 2000-04-28 Dainippon Printing Co Ltd データベースシステム、及びそのためのアクセス管理装置
US7076476B2 (en) 1999-03-02 2006-07-11 Microsoft Corporation Method and system for integrated service administration via a directory service
US6751634B1 (en) 1999-08-26 2004-06-15 Microsoft Corporation Method and system for detecting object inconsistency in a loosely consistent replicated directory service
US20030018694A1 (en) 2000-09-01 2003-01-23 Shuang Chen System, method, uses, products, program products, and business methods for distributed internet and distributed network services over multi-tiered networks
JP2002189733A (ja) * 2000-12-22 2002-07-05 Mitsubishi Electric Corp データベース検索システム及び検索サーバ及びプログラムを記録したコンピュータ読み取り可能な記録媒体
US6879564B2 (en) 2001-02-28 2005-04-12 Microsoft Corp. Method for designating communication paths in a network
US20020184361A1 (en) * 2001-05-16 2002-12-05 Guy Eden System and method for discovering available network components
US20030074421A1 (en) * 2001-08-14 2003-04-17 Mieko Kusano Internet access via specific server and via proprietary application for selecting and controlling content: remote and local
US8037181B2 (en) 2002-06-28 2011-10-11 Microsoft Corporation Re-partitioning directories
US7536386B2 (en) * 2003-03-27 2009-05-19 Microsoft Corporation System and method for sharing items in a computer system
US7640324B2 (en) 2003-04-15 2009-12-29 Microsoft Corporation Small-scale secured computer network group without centralized management
JP2005044155A (ja) * 2003-07-23 2005-02-17 I-O Data Device Inc マルチメディア情報機器及びそのファイル管理プログラム並びにマルチメディア情報機器ネットワークシステム及びそのシステムにおけるファイル管理方法
US7620679B2 (en) 2003-10-23 2009-11-17 Microsoft Corporation System and method for generating aggregated data views in a computer network
US20050114777A1 (en) * 2003-11-26 2005-05-26 Yahoo, Inc. Calendar integration with instant messaging
EP1733316A1 (en) * 2004-03-22 2006-12-20 Nitgen Technologies Inc. A streaming based contents distribution network system and methods for splitting, merging and retrieving files
US8108429B2 (en) * 2004-05-07 2012-01-31 Quest Software, Inc. System for moving real-time data events across a plurality of devices in a network for simultaneous data protection, replication, and access services
US7739303B2 (en) * 2004-07-22 2010-06-15 International Business Machines Corporation Method, system and program product for verifying access to a data object
US8126870B2 (en) * 2005-03-28 2012-02-28 Sybase, Inc. System and methodology for parallel query optimization using semantic-based partitioning

Also Published As

Publication number Publication date
MX2008000514A (es) 2008-03-14
JP2009501397A (ja) 2009-01-15
CN101568919A (zh) 2009-10-28
EP1902395A2 (en) 2008-03-26
EP1902395A4 (en) 2011-07-06
KR20080031256A (ko) 2008-04-08
CN101568919B (zh) 2013-01-16
WO2007008996A2 (en) 2007-01-18
WO2007008996A3 (en) 2009-04-16
US7765229B2 (en) 2010-07-27
RU2008101418A (ru) 2009-07-20
US20070016586A1 (en) 2007-01-18

Similar Documents

Publication Publication Date Title
BRPI0613131A2 (pt) única visualização de dados em um sistema de computadores em rede com meio de armazenagem distribuido
JP6518338B2 (ja) 選択的コンテンツアイテム同期を用いる共有ワークスペースを提供するための方法、プログラム、及びコンピューティングシステム
CN108628658B (zh) 一种容器的许可证管理方法及装置
US20060242206A1 (en) System and method for peer to peer synchronization of files
KR101169085B1 (ko) 휴대용 저장 장치 및 방법
US9697376B2 (en) Federated cloud storage system
JP2007509410A (ja) コンピュータネットワークにおいて集約されたデータビューを生成するためのシステムおよび方法
US20070255677A1 (en) Method and apparatus for browsing search results via a virtual file system
BRPI0609105A2 (pt) agregação e sincronização de mìdia próxima
WO2012046800A1 (ja) シンクライアントシステム
WO2009052228A2 (en) Automatic determination of item replication and associated replication processes
US20140082508A1 (en) Simplified and unified management for network-attached storage
US20160050257A1 (en) Interfacing with remote content management systems
US20040111518A1 (en) Portability of computer system resources using transferable profile information
JP2007011959A (ja) ファイル管理装置、方法及び制御プログラム
JP2006215665A (ja) データ管理装置、データ管理システム、データ処理装置、データ管理方法、プログラム、及び記憶媒体
Tulloch Windows 2000 administration in a nutshell: a desktop quick reference
CN116319990B (zh) 一种支持多种网盘互操作的方法、系统、设备及介质
JP2006185150A (ja) ファイル管理システム、ファイル管理方法およびファイル管理プログラム
JP2009199231A (ja) 電子情報管理装置およびプログラム
US9390093B1 (en) Managing data objects
Edge et al. Client Management
Edge et al. Sharing Files
Marczak et al. Local MCX
JP2012238167A (ja) 情報管理装置、情報管理方法、及びプログラム

Legal Events

Date Code Title Description
B11A Dismissal acc. art.33 of ipl - examination not requested within 36 months of filing
B11Y Definitive dismissal - extension of time limit for request of examination expired [chapter 11.1.1 patent gazette]