BR112012000888B1 - método para inicializar e método para operar um dispositivo tendo pelo menos dois ambientes de sistemas operacionais - Google Patents

método para inicializar e método para operar um dispositivo tendo pelo menos dois ambientes de sistemas operacionais Download PDF

Info

Publication number
BR112012000888B1
BR112012000888B1 BR112012000888A BR112012000888A BR112012000888B1 BR 112012000888 B1 BR112012000888 B1 BR 112012000888B1 BR 112012000888 A BR112012000888 A BR 112012000888A BR 112012000888 A BR112012000888 A BR 112012000888A BR 112012000888 B1 BR112012000888 B1 BR 112012000888B1
Authority
BR
Brazil
Prior art keywords
operating system
environment
fact
system environment
primary
Prior art date
Application number
BR112012000888A
Other languages
English (en)
Other versions
BR112012000888A2 (pt
Inventor
N Tzakis Andrew
C Carlyle Jeffrey
D Galicia Joshua
Original Assignee
Google Technology Holdings LLC
Motorola Mobility Llc
Motorola Mobility Inc
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 Google Technology Holdings LLC, Motorola Mobility Llc, Motorola Mobility Inc filed Critical Google Technology Holdings LLC
Publication of BR112012000888A2 publication Critical patent/BR112012000888A2/pt
Publication of BR112012000888B1 publication Critical patent/BR112012000888B1/pt

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/24Loading of the microprogram
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45537Provision of facilities of other operating environments, e.g. WINE
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/461Saving or restoring of program or task context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Hardware Redundancy (AREA)

Abstract

método para inicializar e método para operar um dispositivo tendo pelo menos dois ambientes de sistemas operacionais várias modalidades da presente invenção fornecem um dispositivo de computação móvel que opera vários ambientes de sistema operacional co-existentes e independentes sobre um núcleo comum. um processo de inicialização para iniciar um ambiente de sistema operacional múltiplo também é fornecido. além disso, várias modalidades da presente invenção incluem processos para o gerenciamento de uma mudança entre um ambiente de sistema operacional para um segundo ambiente de sistema operacional.

Description

MÉTODO PARA INICIALIZAR E MÉTODO PARA OPERAR UM DISPOSITIVO TENDO PELO MENOS DOIS AMBIENTES DE SISTEMAS OPERACIONAIS
CAMPO DA INVENÇÃO
A presente invenção refere-se geralmente a sistemas operacionais e métodos para iniciar uma sequência de inicialização do sistema operacional. Mais especificamente, a presente invenção refere-se a sistemas operacionais multiambientes e métodos para iniciar sistemas operacionais multiambientes.
ANTECEDENTES DA INVENÇÃO
Os sistemas operacionais são projetados e geralmente otimizados com base em aplicações específicas e o desempenho desejado de usuário. É muitas vezes desejável ter funcionalidades de um tipo de sistema operacional disponível para outro sistema operacional, tal como programas de usuário preferidos podem ser dependentes de sistema operacional.
Sistemas operacionais de computador de propósito geral como LinuxTM e WindowsTM tem um extenso conjunto de funcionalidades, tais como sistemas de arquivos, drivers de dispositivos, aplicações, bibliotecas, etc. Esses sistemas operacionais permitem a execução simultânea de vários programas, e tentam otimizar o tempo de resposta (também conhecido como tempo de latência), e uso de CPU, ou carga, associados ao serviço dos programas executando simultaneamente. Infelizmente, no entanto, tais sistemas operacionais não são geralmente adequados para aplicações em tempo real incorporadas, tais como para os dispositivos de computação móvel. Sob certas circunstâncias, seria desejável para um dispositivo de computação móvel ter o
Petição 870190105898, de 18/10/2019, pág. 8/53 desempenho associado com um sistema operacional incorporado móvel específico e funcionalidades de um sistema operacional de uso geral.
Linux, por exemplo, é um conhecido sistema operacional desktop de uso geral com muitas funcionalidades desejáveis para dispositivos modernos, incluindo funcionalidades de sistemas operacionais modernos, ferramentas de desenvolvimento numerosas, redes, etc. No entanto, o Linux não foi projetado para ser um sistema operacional de tempo real ou incorporado. Muitos dispositivos modernos, tais como, sem limitação, caixas set top, telefones celulares e sistemas de navegação de automóveis exigem não apenas as funcionalidades de um sistema operacional de uso geral como o Linux, mas também as funcionalidades de um sistema operacional de tempo real ou incorporado, incluindo desempenho de tempo real.
Historicamente, executar vários ambientes operacionais em um único dispositivo foi realizado através de técnicas de virtualização, como, por exemplo, VMware™, VirtualBox™, QEMU™, etc. No entanto, quando se utiliza a virtualização um computador completo é emulado e uma ou mais pilhas de software são operadas no dispositivo de computação emulado. Emulação é feita com elevados custos de sobrecarga.
Em vista do exposto, existe uma necessidade de um sistema implementando um ambiente de um único núcleo que de forma eficiente e convenientemente fornece o desempenho e as funcionalidades de co-existentes, sistemas operacionais independentes.
BREVE RESUMO DA INVENÇÃO
Em conformidade com, pelo menos, uma modalidade da presente invenção, um método para inicialização de um dispositivo tendo pelo menos dois ambientes operacionais co-existentes independentes é fornecido. O método inclui iniciar uma sequência de inicialização de início, inicializando um núcleo central, identificação de um estado de modo de dispositivo, lançamento de serviços comuns a um primeiro sistema operacional e um segundo sistema operacional, seleção de um sistema operacional primário baseado pelo menos em parte no estado de modo e lançamento de scripts de inicialização do sistema operacional primário; e lançamento de scripts de inicialização de um sistema operacional secundário.
Em uma modalidade alternativa, um método para operar um dispositivo tendo vários ambientes operacionais coexistentes é fornecido. O método inclui iniciar uma sequência de inicialização configurada para simultaneamente lançar dois ambientes de ambientes de sistema operacional, identificar o estado de modo do dispositivo e selecionar um ambiente operacional primário baseado pelo menos em parte no estado de modo.
Em ainda uma outra modalidade da presente invenção, um sistema operacional de dispositivo móvel tendo um núcleo central configurado para interfacear um componente de hardware de dispositivo e um componente middleware são fornecidos. O sistema inclui pelo menos dois ambientes operacionais de middleware independentes co-existentes acoplados ao núcleo central, os ambientes operacionais de middleware cada uma tendo um componente de aplicação correspondente.
De acordo com outra modalidade da invenção, um dispositivo de computação móvel tendo uma unidade de armazenamento de memória acoplada a um processador do computador é fornecido. A unidade de armazenamento de memória inclui instruções executáveis por computador capazes de operar pelo menos dois ambientes de sistemas operacionais em um núcleo comum.
De acordo com ainda outra modalidade alternativa, um telefone móvel com uma interface de usuário gráfica configurada para receber e transmitir informação multimídia é fornecido. O telefone inclui um sistema de computação com um processador acoplado a uma unidade de armazenamento de memória, e um sistema operacional multiambiente tendo um núcleo comum. A unidade de armazenamento de memória inclui instruções executáveis por computador capazes de gerenciar os recursos compartilhados entre pelo menos dois ambientes de sistemas operacionais independentes co-existentes.
Em conformidade com uma modalidade alternativa, a presente invenção inclui um dispositivo de computação móvel com um processador de computador acoplado a uma memória de computador tendo instruções executáveis por computador configuradas para iniciar um sistema operacional. O dispositivo também inclui um sistema operacional configurado para rodar simultaneamente um ambiente de sistema operacional de distribuição Linux padrão e um ambiente de sistema operacional Android™ em um único núcleo.
De acordo com ainda outra modalidade alternativa, a invenção inclui um sistema operacional de dispositivo móvel tendo um núcleo central configurado para interfacear um componente de hardware de dispositivo e um componente middleware. O dispositivo também inclui um primeiro ambiente operacional middleware independente configurado para executar aplicações JAVA-interpretadas e acoplado ao núcleo central, e um segundo ambiente operacional middleware independente configurado para rodar aplicações nativas e acoplado ao núcleo central.
BREVE DESCRIÇÃO DOS DESENHOS
A Figura 1 é uma vista em perspectiva exemplar de um dispositivo móvel;
A Figura 2 é um diagrama de blocos representando um sistema operacional exemplar;
A Figura 3 é um diagrama de blocos de um sistema operacional exemplar;
A Figura 4 é um diagrama de blocos de um esquema de co-existência de tempo de execução de um sistema operacional exemplar;
Figura 5 é um diagrama de blocos de um esquema de comunicação interambiente de um sistema operacional exemplar;
A Figura 6 é um fluxograma identificando etapas em uma sequência inicialização para um sistema operacional exemplar;
A Figura 7 é um fluxograma identificando etapas exemplares para o lançamento de uma aplicação em um primeiro ambiente operacional enquanto um sistema operacional exemplar é controlado por um segundo ambiente operacional;
A Figura 8 é um gráfico de sequência de mensagens identificando etapas exemplares para o lançamento de uma aplicação de segundo ambiente operacional enquanto um primeiro ambiente operacional tem controle primário;
A Figura 9 é um fluxograma identificando etapas exemplares associadas com a mudança de um primeiro ambiente operacional a um segundo ambiente operacional;
A Figura 10 é um gráfico de sequência de mensagens identificando etapas exemplares para a mudança de um primeiro ambiente operacional a um segundo ambiente operacional;
A Figura 11 é um gráfico de sequência de mensagens identificando etapas exemplares para a mudança de um segundo ambiente operacional a um primeiro ambiente operacional;
A Figura 12 é um fluxograma identificando utilização exemplar de uma aplicação controlada por um primeiro ambiente operacional enquanto um segundo ambiente operacional tem o controle primário de um dispositivo de computação.
DESCRIÇÃO DETALHADA
Prevê-se que seria vantajoso ter um sistema operacional incorporado e um ambiente operacional baseado em Linux se comunicando diretamente com um único núcleo Linux rodando diretamente sobre o hardware de um dispositivo de computação.
Fazendo referência à Figura 1, um telefone móvel 10 é fornecido. O telefone 10 inclui uma interface gráfica 12 e uma pluralidade de botões de entrada de dados 14. 0 dispositivo móvel 10 é selecionado a partir do grupo que inclui, mas não limitado a, um computador móvel pessoal (PC), um netbook, um telefone móvel, um computador laptop, um computador portátil e um telefone inteligente. Embora o dispositivo 10 seja móvel, ele se destina a ter capacidade de computação significativa, com uma velocidade de processador de mais de 500 mHz, embora processadores mais lentos não sejam excluídos. Considerando o poder computacional, um usuário pode ligar o dispositivo 10 a uma variedade de dispositivos periféricos (não mostrados). Os dispositivos periféricos são selecionados entre um grupo que inclui, mas não se limita a, monitor de computador, um computador laptop, um computador pessoal, um tablet PC, e um projetor de tela.
Agora referindo-se à Figura 2, um diagrama de blocos de um sistema operacional exemplar (OS) 16 em comunicação com um núcleo 18 é fornecido. O OS 16 pode ser um sistema de distribuição Linux, um sistema operacional baseado em Linux ou um sistema operacional não baseado em Linux. 0 hardware de dispositivo 20 também está em comunicação com o núcleo 18. O sistema operacional 16 inclui um primeiro ambiente de sistema operacional 22 e um segundo ambiente de sistema operacional 24 em comunicação com um único núcleo
18. Por exemplo, o segundo ambiente de sistema operacional middleware 24 é uma distribuição Linux padrão e o primeiro ambiente de sistema operacional middleware 22 é um ambiente de sistema operacional incorporado para uso em dispositivos móveis, tais como sistema operacional de Android™ (Open Handset Alliance, www.openhandsetalliance.com). Uma distribuição Linux 16 está em comunicação com o núcleo Linux 18, que está em comunicação com o hardware de dispositivo 20. 0 hardware de dispositivo 20 pode ser um dispositivo de armazenamento de memória (não mostrado), acoplado a um processador (não mostrado), que armazena instruções executáveis por computador que são configuradas para executar várias funções e operações, como aqui descrito.
Um sistema operacional exemplar 16 inclui Ubuntu ® (Canonical Ltd., www.ubuntu.com) para o ambiente de sistema operacional baseado em Linux 24. É especificamente pretendido que múltiplos ambientes de sistemas operacionais middleware coexistam independente do outro (s) . Ambientes exemplares que podem ser incluídos em sistema operacional 16 incluem Android™, Ubuntu® (Canonical Ltd., www.ubuntu.com), ambientes baseados em Linux padrão, Symbian (Symbian Foundation Ltd., www.symbian.com), e ambientes baseados em Windows. Em uma modalidade alternativa, prevê-se que mais de dois ambientes de sistemas operacionais são configurados para co-existir independentemente no mesmo núcleo central 18.
Fazendo referência à Figura 3, um diagrama de blocos de um sistema operacional exemplar é fornecido. Na presente modalidade exemplar, o primeiro ambiente de sistema operacional 22 é um ambiente operacional baseado em Android™ e o segundo ambiente OS 24 é baseado em Linux. 0 primeiro ambiente de sistema operacional 22 inclui um módulo de serviço de portal 26, um módulo de atividade de portal 28, um módulo de serviço de sistema operacional 30 e um módulo de aplicação de sistema operacional 32. 0 segundo ambiente de sistema operacional 24 inclui um gerenciador de recursos 34, um módulo Android em uma janela (AIW) 36, um segundo aplicação de sistema operacional 38 e um segundo módulo de serviço de sistema operacional 40.
módulo AIW 36 é configurado para exibir uma primeira janela de aplicação de OS 22 na GUI 12, enquanto o segundo sistema operacional 24 é o ambiente operacional primário.
O módulo de serviço de portal 26 contém um conjunto de instruções configuradas para permitir o serviço para o primeiro sistema operacional 22 e dirige toda a comunicação com o gerenciador de recursos 34. Enquanto o dispositivo 10 está operando o módulo de serviço de portal 2 6 está de preferência executado em todos os momentos. Além disso, o módulo de serviço de portal 26 está ligado à atividade associada com o módulo de atividade de portal 28, bem como aos eventos de transmissão do primeiro OS 22. O módulo de atividade de portal 28 é uma aplicação, ou conjunto de instruções executáveis por computador, que representa uma aplicação de segundo OS 24 localizada na pilha do primeiro OS 22. Por exemplo, se o segundo sistema operacional 24 é Ubuntu® o módulo de atividade de portal 28 pode representar uma aplicação específica Ubuntu, e quando o módulo de atividade de portal 2 8 tem foco, o Ubuntu está em vista através da GUI 12. Numerosas aplicações podem funcionar simultaneamente, também referido como uma pilha de execução de aplicações, dentro de qualquer ambiente operacional dado. Logicamente falando, a aplicação de nível superior é considerada como tendo foco.
O núcleo 18 inclui um conjunto de drivers 42 e um módulo AEV 44. Incluído com os drivers 42 são drivers de dispositivo de entrada para componentes de hardware 20. 0 AEV 44 é um módulo do núcleo que leva coordenadas absolutas e eventos de teclado de AIW 3 6 e os passa a um hub de evento.
Os ambientes co-existentes dentro do sistema operacional 16 comunicam uns com os outros. O gerenciador de recursos 34, que é parte do segundo sistema operacional 24, comunica diretamente com o módulo de serviço de portal 26, que é parte do primeiro sistema operacional 22. Além disso, o módulo de serviço de portal 26, que é parte do primeiro sistema operacional 22, comunica diretamente com o gerenciador de recursos 34. 0 gerenciador de recursos 34 é um conjunto de instruções configuradas para gerenciar os recursos compartilhados pelo primeiro sistema operacional 22 e segundo OS 24. Os recursos compartilhados incluem dispositivos de video, dispositivos de entrada, serviços de gerenciamento de energia e informação do estado do sistema. Além disso, o gerenciador de recursos 34 é configurado para controlar o acesso dos OS 22,24 ao hardware 20. Além disso, o gerenciador de recursos 34 identifica e controla qual interface de usuário de sistema operacional 22,24 é exibida através da GUI 12.
De acordo com a presente modalidade, o serviço de portal 26 é a fonte de todas as comunicações a partir do primeiro sistema operacional 22 ao gerenciador de recursos 34. Além disso, o serviço de portal 26 é um lugar para todos os retornos de chamada a partir do gerenciador de recursos 34 para o primeiro sistema operacional 22. O gerenciador de recursos fornece uma interface de programação de aplicação de estado detectável (API) para o serviço de portal 26. Esta API é configurada para ser chamada pelo gerenciador de recursos 34 a qualquer momento. O gerenciador de recursos 34 é configurado para obter e processar estado de execução, que permite o gerenciador de recursos manter uma máquina de estado. Para o primeiro OS
22, o serviço de portal 26 fornece os estados de execução para processos que os exigem. Da mesma forma, os serviços de portal 26 solicitam e recebem atualizações de estados de processos que fornecem informações de estado. Uma comunicação semelhante para o segundo sistema operacional 24 é controlada pelo gerenciador de recursos 34, que fornece os estados de execução para os processos que os exigem. Gerenciador de recursos 34 solicita e recebe atualizações de estado a partir de vários processos que fornecem informações de estado. Os drivers de dispositivo 42 logicamente associados com o núcleo 18 se comunicam diretamente com o gerenciador de recursos 34, bem como os processos que fornecem informações de estado em tempo de execução. Por exemplo, a API arbitra o acesso a dispositivos de interface de usuário, tais como telas, telas sensíveis ao toque ou a GUI 12. Ainda outro exemplo, a API arbitra o acesso a dispositivos de entrada de energia, como baterias e/ou plugues de parede AC/DC.
O primeiro OS 22 e o segundo OS 24 são independentes um do outro, e co-existem com respeito ao outro. Cada OS 22, 24 é um ambiente de sistema operacional totalmente funcional, e não necessita do outro ambiente de sistema operacional para funcionar. Os dois ambientes de sistemas operacionais existem no mesmo dispositivo 10 com a independência de 100% com respeito ao outro. Como acima identificado, o primeiro e segundo sistema operacional 22, 24 não co-existem em um esquema de virtualização ou emulação, mas na verdade funcionam em um único núcleo 18. Em vez disso, há co-existência de tempo de execução em que ambos OS 22,24 rodam em seus respectivos ambientes nativos e nenhum OS 22,24 é recompilado, como não há necessidade de alavancar um ambiente de execução C comum. Os aplicações podem ser acessadas por um usuário que são codificadas apenas para um ou outro OS 22, 24 sem uma interrupção a experiência computacional do usuário.
Fazendo referência à Figura 4, um diagrama de blocos fornece um esquema de co-existência exemplar para um OS Android® 22 e um OS Ubuntu™ 24. Cada OS 22,24 opera em um ambiente de execução em separado, que fornece serviços de software para programas e/ou processos, enquanto o dispositivo 10 está operando. Processos Android 46 e bibliotecas Android 48 acessam uma Biblioteca C Bionic 50, que é otimizada e modificada especificamente para o ambiente Android. Processos Ubuntu 52 e bibliotecas Ubuntu 54 acessam a Biblioteca C Glibc 56, que é uma biblioteca C GNU usada em muitos sistemas baseados em Linux desktop padrão. Cada ambiente de sistema operacional roda em suas respectivas bibliotecas C sem entrar em conflito outro ambiente operacional.
Fazendo referência à Figura 5, um caminho de comunicação mais detalhado entre o primeiro sistema operacional 22 e o segundo OS 24 descrito na Figura 4 é fornecido. Um sistema de comunicação interprocesso (IPC) é configurado para gerenciar o fluxo de comunicação interambiente entre o primeiro sistema operacional 22 e o segundo OS 24. O serviço de portal 26 comunica com uma Ligação DBUS 58, que é um pacote de software contendo linguagem de programação e instruções executáveis configuradas para comunicar com uma biblioteca DBUS 60. O gerenciador de recursos 34 se comunica com uma ligação DBUS
Glib 62, que também é um pacote de software contendo linguagem de programação e instruções executáveis configuradas para se comunicar com uma biblioteca DBUS 64 configurada para o segundo sistema operacional 24. Tanto a primeira biblioteca DBUS de OS 22 60 e a segunda biblioteca 64 de OS 24 se comunicam através de um Daemon DBUS 66, que é logicamente parte do segundo sistema operacional 24, e atua como o elo de comunicação entre os dois ambientes operacionais.
Fazendo referência à Figura 6, um fluxograma que representa uma sequência de inicialização é fornecido. A sequência de inicialização inclui tanto as etapas de sistema operacional específico e comum. A sequência de inicialização atual é dependente de regras associadas a um estado de dispositivo pré-determinado que determina a sequência de inicialização. Por exemplo, se o dispositivo está ligado a um dispositivo periférico, tal como um monitor, o estado de dispositivo é considerado como no modo encaixado, e segundo OS 24 é o ambiente primário padrão. Alternativamente, se o dispositivo 10 não está ligado a um dispositivo periférico, então ele está no modo móvel, e o primeiro OS 22 é o ambiente operacional primário padrão. No entanto, o ambiente operacional secundário é lançado simultaneamente com o ambiente primário, e opera no fundo no caso do estado do dispositivo 10 mudar e o ambiente secundário é mudado para se tornar o ambiente primário. Por exemplo, quando o dispositivo 10 está no modo encaixado e o dispositivo periférico está desligado, há uma mudança automática para o modo móvel, o que resulta no ambiente secundário tornando-se o ambiente primário, e vice-versa.
A sequência de inicialização é iniciado na etapa 68, seguida pelo lançamento do núcleo Linux central 18 na etapa 70. Um programa carregador de inicialização inicializa antes do lançamento do núcleo. Depois do núcleo Linux 18 ser inicializado, o núcleo central lança scripts de espaço de usuário na etapa 72. O gerenciador de recursos 34 é lançado na etapa 74, seguido de identificar o estado de modo na etapa 76. Uma vez que o estado de modo é identificado uma biblioteca de referência é acessada na etapa 78 para determinar os critérios associados com e/ou ditados pelo estado modo que é identificado. Na etapa 80, os serviços comuns a ambos o primeiro sistema operacional 22 e o segundo OS 24 são lançados. O estado de modo determinado na etapa 76 é referenciado na etapa 82. Se o estado móvel é identificado, então o primeiro sistema operacional 22 é o ambiente operacional primário, então os scripts de inicialização de primeiro OS são lançados na etapa 84, seguido pelos scripts de inicialização do segundo sistema operacional lançados na etapa 86. Se o estado encaixado é referenciado na etapa 82, então o segundo OS 24 é o ambiente operacional primário, e então os scripts de inicialização de segundo OS 24 são lançados na etapa 88 seguido por lançar os scripts de inicialização de primeiro OS 2 2 na etapa 90. Independentemente de qual ambiente é o primário, ambos ambientes são lançados e rodando antes do dispositivo 10 estar operacional na etapa 92. Uma vez que os serviços comuns são lançados primeiro na etapa 80, para todos os efeitos e propósitos, os ambientes primário e secundário são lançados em paralelo. No entanto, serviços específicos de ambiente primário, com base no estado do dispositivo, são lançados imediatamente antes dos serviços específicos de ambiente secundário. Ao separar o lançamento de serviços comuns com o lançamento de ambiente específico, o dispositivo 10 pode estar rapidamente operacional com vários ambientes operacionais co-existentes e independentes.
Fazendo referência à Figura 7, um fluxograma identificando etapas para o lançamento de uma aplicação de segundo OS 24 enquanto o dispositivo 10 está em modo móvel 94 e o primeiro OS 22 tem o controlo primário. Uma aplicação de segundo OS 24, PC móvel, é selecionada na etapa 96. PC móvel é uma aplicação no primeiro OS 22, que proporciona uma vista de PC completa, alternativamente referida como uma vista de netbook, enquanto o dispositivo 10 está operando no modo móvel e o primeiro OS 22 está no controle primário. Em uma modalidade alternativa, aplicações individuais a partir do segundo OS 24 podem ser listadas em um menu de primeiro OS 22 e individualmente lançadas, o que pode ser semelhante a uma vista de netbook.
O serviço de portal 26 envia uma comunicação de atualização de estado para o gerenciador de recursos 34 na etapa 98 indicando que a atividade de portal 2 8 ganhou foco. Depois disso, o gerenciador de recursos 34 desativa a entrada de primeiro OS 22 e alterna um terminal virtual na etapa 100. A aplicação PC móvel é exibida na GUI 12 na etapa 102. Ao operar a aplicação PC móvel um evento não solicitado pode ocorrer na etapa 104 ou um evento solicitado por usuário pode ocorrer na etapa 106. Eventos não solicitados incluem eventos de tempo de crítico e não tempo crítico. Por exemplo, um evento não solicitado de tempo crítico inclui um telefonema ou um alarme programado ou não programado. Além disso, por exemplo, um evento não solicitado de não tempo crítico inclui uma mensagem SMS, uma mensagem de e-mail ou uma notificação de atualização do dispositivo. Após um evento 104,106 ocorrer o portal de serviço 26 envia uma comunicação ao gerenciador de recursos 34 indicando que a atividade de portal 28 perdeu o foco na etapa 108. Na etapa 110, o gerenciador de recursos 34 solicita ao primeiro sistema operacional 22 para permitir o fluxo de eventos de entrada e muda o terminal virtual. Por exemplo, a modalidade atual inclui terminais virtuais separados para alternar o controle de exibição entre o primeiro sistema operacional 22 e o segundo OS 24. Em termos gerais, um terminal virtual é uma aplicação Linux que permite que um usuário do sistema mude os controles de exibição entre a vista baseada em Windows e um console do sistema.
Quando um evento não solicitado ocorre ou um usuário seleciona o botão Home na etapa 112, a atividade de portal 28 é alternada para o fundo na etapa 114 enquanto o evento não solicitado continua ou o usuário opera uma outra aplicação a partir do menu Home da GUI 12. Alternativamente, se o usuário seleciona o botão Back na etapa 112, a atividade de portal 28 sai da aplicação e o dispositivo 10 reverte para o menu principal ocioso na etapa 94. Eventos iniciados pelo usuário, como selecionar o botão Home, botão Back, ou iniciar uma nova aplicação são eventos solicitados exemplares. Quando um evento ocorre uma decisão é feita na etapa 118, e o primeiro sistema operacional 22 é interrompido na etapa 120 se o evento é um evento não solicitado. Alternativamente, se o evento é um evento solicitado, tais como o usuário selecionar o botão Home, então o dispositivo reverte para o menu principal ocioso na etapa 94. Após a interrupção de OS na etapa 120, a aplicação interrompendo será encerrada e a atividade de portal 28 recupera o foco na etapa 122 e o dispositivo 10 reverte para a etapa 98.
Em uma modalidade alternativa, o terminal virtual não é utilizado. Renderizando uma aplicação de segundo OS 24 enquanto no modo móvel pode ser realizado através de uma aplicação tipo VNC. A aplicação de segundo OS 24, como o Ubuntu, pode ser renderizada remotamente no cliente VNC. Além disso, esta modalidade não tira o controle de exibição física do primeiro sistema operacional 22.
Em ainda outra modalidade alternativa, notificações de tempo não crítico geradas pelo primeiro OS 22 são identificados e listadas em um painel dentro da visa do segundo OS 24. Ao listar as notificações em um painel a informação de estado de primeiro sistema operacional 22 é integrada com a vista de segundo OS 24 quando o segundo sistema operacional 24 é o sistema operacional primário. No ócio do usuário, o painel é acessado para revelar notificações de estado de tempo não crítico. Quando o painel é envolvido o primeiro sistema operacional 22 tornase o sistema operacional primário e permite que as notificações sejam visualizadas. Por exemplo, o painel pode ser uma lista empurra para baixo que desce a partir de uma área de estado com um gesto de escorregar.
Fazendo referência à Figura 8, um gráfico de sequência de mensagens identificando as etapas para o lançamento de uma aplicação de segundo OS 24 enquanto que o primeiro sistema operacional 22 tem de controlo primário é fornecido. O gráfico de sequência fornece um fluxo de etapa inteligente, de cima para baixo, dos sinais transmitidos entre o módulo de atividade de portal 28 e o gerenciador de recursos 34 . A atividade de portal 28 recebe um sinal 124 para o lançamento do portal e desativa a entrada. O primeiro sistema operacional 22 tem controle primário antes do sinal 126 mudar o estado de modo para o segundo sistema operacional 24 obtendo controle primário. Sinal 126 é enviado a partir da atividade de portal 28 para o gerenciador de recursos 34, que gera então um sinal responsive 128 enviado para a atividade de portal 28, indicando que o segundo OS 24 é o OS primário. Sinal 130 é recebido pela atividade de portal 28 e habilita a entrada. Sinal 132 é enviado a partir da atividade de portal 28 para o gerenciador de recursos 34 alterando o estado de modo a partir do segundo OS 24 para o primeiro sistema operacional 22. Depois de receber sinal 132 o gerenciador de recursos 34 alterna o terminal virtual. O gerenciador de recursos 34, em seguida, envia um sinal de atualização de estado 134 para a atividade de portal 28 indicando que o primeiro sistema operacional 22 é primário.
Fazendo referência à Figura 9, um fluxograma
identificando etapas associadas com a mudança de um
primeiro ambiente operacional a um segundo ambiente
operacional é fornecido. 0 dispositivo 10 está inativo no
modo móvel ( lOSL 22), na etapa 136. Na etapa 138 o
dispositivo 1 0 está ligado a uma estação de encaixe, ou
ligado a um dispositivo periférico. Por exemplo, uma
conexão HDMI pode ser estabelecida entre o dispositivo 10 e um monitor ou uma televisão. O gerenciador de recursos 34 é notificado do estado da conexão atualizado na etapa 140 e o primeiro sistema operacional 22 é desativado na etapa 142 em resposta à mudança de estado da conexão. O portal de primeiro OS 22 muda o buffer de quadro de memória compartilhada na etapa 144, seguido pelo gerenciador de recursos 34 mudar o terminal virtual na etapa 146. Se a aplicação PC Móvel está em exibição na etapa 148, então a atividade do portal 26 sai na etapa 150. Alternativamente, se a aplicação PC Móvel não está em exibição, o modo encaixado é habilitado na etapa 152. No caso em que o estado de dispositivo muda na etapa 154, então o gerenciador de recursos 34 recebe uma atualização de estado de estado na etapa 156. Por exemplo, o estado do sistema muda quando um usuário remove um cabo HDMI, ou conector similar, o qual é utilizado para ligar o dispositivo 10 a um dispositivo periférico. Na sequência de um evento de atualização de estado 156, o primeiro sistema operacional 22 é ativado 158 e o dispositivo funciona no modo móvel. Uma mudança de buffer de quadro é solicitada na etapa 160 e uma mudança de terminal virtual é solicitada na etapa 162, ambas os quais são realizadas pela atividade de portal 26. Seguindo a etapa 162, o dispositivo reverte para um estado ocioso no modo móvel 136.
Fazendo referência à Figura 10, um gráfico de sequência de mensagens identificando as etapas realizadas quando o dispositivo 10 transita de modo móvel (OSL) para o modo encaixado (OS2) é fornecido. O dispositivo 10 está operando no modo móvel e o primeiro OS 22 é o OS primário.
Um sinal de cabo 164 é recebido pelo gerenciador de recursos 34, que indica que um plugue com fio HDMI ou alternativo foi ligado ao dispositivo 10. 0 sinal de cabo 164 é um sinal de mudança de inicialização de estado de modo exemplar. Em uma modalidade alternativa, o plugue pode ser de comunicação sem fio entre o dispositivo 10 e um dispositivo periférico, e desativar a comunicação sem fio faria com que um sinal de mudança de inicialização de estado de modo fosse gerado. Uma sequência de sinais de transitando o dispositivo de modo móvel para o modo encaixado é iniciada. Sinal 164 é enviado a partir do gerenciador de recursos 34 à atividade de portal 28 indicando uma transição de estado de modo e desativando a entrada de dados principal. A atividade de portal 28 envia sinal 168 ao gerenciador de recursos 34 para identificar que o segundo sistema operacional 24 é agora primário e alternar o terminal virtual. Sinal 170 é enviado a partir do gerenciador de recursos 34 para a atividade de portal identificando o segundo sistema operacional 24 como o primário e que tomou posse do buffer de quadro. Um sinal de confirmação de mudança de estado de modo 172 é enviado a partir da atividade de portal 28 para o gerenciador de recursos 34 identificando que o dispositivo está agora no modo encaixado e que o segundo OS 24 é o OS primário. Um sinal de atualização de modo de sistema é enviado a partir do gerenciador de recursos 34 ao AIW 36.
Fazendo referência à Figura 11, um gráfico de sequência de mensagens identificando as etapas realizadas quando o dispositivo 10 transita de modo encaixado (OS2) para modo móvel (OSL) é fornecido. Um sinal de cabo 176 é recebido pelo gerenciador de recursos 34, que indica que um plugue com fio HDMI ou alternativo foi removido a partir do dispositivo 10. A remoção do plugue indica que um dispositivo periférico (não mostrado) já não está em comunicação com o dispositivo 10. Em uma modalidade alternativa, o plugue pode estar em comunicação sem fio entre o dispositivo 10 e um dispositivo periférico ou alternativo (não mostrado). Uma sequência de sinais transitando o dispositivo do modo encaixado ao modo móvel é iniciada. Sinal 178 é enviado a partir do gerenciador de recursos 34 para a atividade de portal 28, indicando uma transição de estado de modo e habilitando a entrada de dados principal e o buffer de quadro principal. A atividade de portal 28 envia sinal 180 para o gerenciador de recursos 34 identificando que o primeiro sistema operacional 22 é agora primário e alternando o terminal virtual. Sinal 182 é enviado a partir do gerenciador de recursos 34 para a atividade de portal identificando o primeiro sistema operacional 22 como o principal e que tomou posse do buffer de quadro. Um sinal de confirmação de mudança de estado de modo 184 é enviado a partir da atividade de portal 28 para o gerenciador de recursos 34 identificando que o dispositivo está agora no modo móvel e que o primeiro sistema operacional 22 é o OS primário. Um sinal de atualização de modo de sistema é enviado a partir do gerenciador de recursos 34 ao AIW 36.
Fazendo referência à Figura 12, o dispositivo 10 está ocioso no modo encaixado e o segundo sistema operacional 24 é o ambiente operacional primário, na etapa 188. Se um evento não solicitado ocorre na etapa 190 ou o usuário seleciona o OSI 22 em uma aplicação de janela na etapa 192, então o OSI 22 em uma aplicação de janela é lançado na etapa 194. Por exemplo, se o Android é o ambiente operacional móvel 22, então o uma aplicação Android em janela (AIW) é iniciada. A aplicação AIW permite que um usuário acesse as aplicações Android enquanto o dispositivo está operando no modo encaixado. O gerenciador de recursos 34 também é notificado sobre a atualização de estado na etapa 194. Entrada para o primeiro sistema operacional 22 é ativada na etapa 196, seguido pela transmissão de notificações de atualização de exibição de primeiro OS na etapa 198. A aplicação AIW está operando e tem o foco na etapa 200. Se a aplicação AIW é encerrada na etapa 202 ou um usuário remove AIW do foco na etapa 204, então a entrada de primeiro OS 22 é desativada na etapa 206. A exibição de primeiro OS 22 é parada na etapa 208. Se a aplicação AIW é encerrada na etapa 210, então o sistema 188 reverte para o modo encaixado ocioso. Alternativamente, se a aplicação AIW perde o foco, então, a aplicação opera neste estado, na etapa 212. No caso de um evento não solicitado na etapa 214 ou uma interação solicitada com a aplicação AIW na etapa 216, o AIW recupera o foco na etapa 218. Enquanto o AIW está sem o foco um usuário pode selecionar a aplicação AIW e continuar a interação com a janela AIW, que devolve o foco ao AIW e notifica o gerenciador de recursos 34 da atualização de estado. Após o AIW recuperar o foco a entrada de primeiro sistema operacional 22, que é Android para a presente modalidade, é ativada na etapa 220. As notificações de atualização de exibição de primeiro OS 22 são transmitidas para o gerenciador de recursos 34, na etapa 222, seguido pela reversão de sistema para etapa 200, onde AIW é ativado e em foco. Quando uma aplicação está em foco, esta aplicação está no topo lógico de uma pilha de aplicações em execução.
Em uma modalidade alternativa, é contemplado que o dispositivo 10 pode transitar entre os estados de modo baseado em eventos que não sejam de encaixe ou desencaixe do dispositivo 10. Por exemplo, se o dispositivo 10 está estacionário durante um período de tempo predefinido o dispositivo 10 pode ser programado para operar no estado de modo mais eficiente de energia, independentemente do estado de dispositivo de outra forma. Em ainda outro exemplo, um usuário pode fazer a transição do estado de modo encaixado para móvel, mesmo se o dispositivo tem uma ligação com um dispositivo periférico. Além disso, o tipo de dispositivo periférico ligado ao dispositivo 10 pode ditar se uma sequência de mudança de estado de modo automática é iniciada, ou um usuário é fornecido com um pedido de mudança de estado de modo. O usuário, assim, sendo capaz de selecionar o estado de modo em que operar o dispositivo 10. Em ainda outra modalidade alternativa, os estados de modo adicionais são contemplados baseado na utilização de dispositivo particular 10 e as aplicações disponíveis na memória do dispositivo 20.
Especificamente pretende-se que a presente invenção não seja limitada às modalidades e as ilustrações aqui contidas, mas incluam formas modificadas destas modalidades incluindo porções das modalidades e combinações de elementos de modalidades diferentes, como vêm dentro do âmbito das reivindicações seguintes.

Claims (17)

  1. REIVINDICAÇÕES
    1. Método para inicializar um dispositivo tendo pelo menos dois ambientes de sistemas operacionais co-existentes independentes caracterizado pelo fato de que compreende as seguintes etapas:
    iniciar uma sequência de inicialização de início;
    inicializar um núcleo central;
    identificação de um estado de modo de dispositivo;
    lançar serviços comuns a um primeiro ambiente de sistema operacional e um segundo ambiente de sistema operacional, em que o primeiro e segundo sistemas operacionais operam no núcleo central em vez de existirem em um esquema de virtualização ou emulação;
    selecionar um ambiente de sistema operacional primário dentre o primeiro e segundo ambientes de sistemas operacionais baseado pelo menos em parte no estado de modo de dispositivo;
    lançar scripts de inicialização do ambiente de sistema operacional primário, e lançar scripts de inicialização de um ambiente de sistema operacional secundário.
  2. 2. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o dispositivo inicializa ambos os ambientes de sistemas operacionais em uma sequência de inicialização de início, o segundo ambiente de sistema operacional sendo o ambiente de sistema operacional primário quando o estado de modo é computador pessoal.
  3. 3. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o dispositivo inicializa pelo menos dois ambientes de sistemas operacionais em uma
    Petição 870190105898, de 18/10/2019, pág. 9/53 sequência de inicialização, o primeiro ambiente de sistema operacional inicializando primeiro quando o estado de modo é identificado como um modo móvel.
  4. 4. Método para inicializar um sistema operacional, caracterizado pelo fato de que compreende as seguintes etapas:
    inicializar uma sequência de inicialização;
    selecionar pelo menos dois ambientes de sistema operacional para operar um dispositivo móvel, em que os pelo menos dois ambientes de sistema operacional são configurados para serem independentes e co-existir enquanto o dispositivo é operacional;
    lançar um núcleo comum, em que os pelo menos dois ambientes de sistema operacional operam no núcleo comum em vez de existirem em um esquema de virtualização ou emulação;
    lançar serviços de aplicações comuns a um primeiro ambiente de sistema operacional e um segundo ambiente de sistema operacional dos pelo menos dois ambientes de sistemas operacionais;
    selecionar um ambiente de sistema operacional primário e secundário baseado pelo menos em parte no estado de modo do dispositivo, e lançar simultaneamente scripts de inicialização para os ambientes de sistema operacional primário e secundário.
  5. 5. Método, de acordo com a reivindicação 4, caracterizado pelo fato de que o primeiro ambiente de sistema operacional é o ambiente primário.
  6. 6. Método, de acordo com a reivindicação 4, caracterizado pelo fato de que o segundo ambiente de
    Petição 870190105898, de 18/10/2019, pág. 10/53
    sistema operacional é o ambiente primário. 7 . Método, de acordo com a reivindicação 6, caracterizado pelo fato de que o estado de modo é um modo móvel. 8 . Método, de acordo com a reivindicação 4, caracterizado pelo fato de que compreende ainda a etapa de iniciar uma aplicação do sistema operacional secundário. 9 . Método, de acordo com a reivindicação 4, caracterizado pelo fato de que o ambiente secundário é um
    ambiente móvel.
  7. 10. Método para operar um dispositivo tendo pelo menos dois ambientes de sistemas operacionais, caracterizado pelo fato de que compreende:
    operar os pelo menos dois ambientes de sistemas operacionais em um núcleo comum;
    em que os ambientes de sistemas operacionais não existem em um esquema de virtualização ou emulação.
  8. 11. Método, de acordo com a reivindicação 10, caracterizado pelo fato de que os pelo menos dois ambientes de sistemas operacionais incluem um primeiro ambiente de sistema operacional e um segundo ambiente de sistema operacional.
  9. 12. Método, de acordo com a reivindicação 11, caracterizado pelo fato de que compreende ainda:
    lançar serviços comuns ao primeiro ambiente de sistema operacional e ao segundo ambiente de sistema operacional.
  10. 13. Método, de acordo com a reivindicação 12, caracterizado pelo fato de que um dentre o primeiro e o segundo ambiente de sistema operacional é um ambiente de sistema operacional primário e o outro dentre o primeiro e
    Petição 870190105898, de 18/10/2019, pág. 11/53 o segundo ambiente de sistema operacional é um ambiente de sistema operacional secundário.
  11. 14. Método, de acordo com a reivindicação 13, caracterizado pelo fato de que o primeiro ambiente de sistema operacional ou o segundo ambiente de sistema operacional ser o ambiente de sistema operacional primário dependente pelo menos em parte de um estado de modo do dispositivo.
  12. 15. Método, de acordo com a reivindicação 14, caracterizado pelo fato de que se o estado de modo do dispositivo for um modo encaixado, então o ambiente de sistema operacional primário é o segundo ambiente de sistema operacional, e em que se o estado de modo do dispositivo for um modo móvel, então o ambiente de sistema operacional primário é o primeiro ambiente de sistema operacional.
  13. 16. Método, de acordo com a reivindicação 15, caracterizado pelo fato de que serviços específicos de ambiente primário são lançados antes de serviços específicos de ambiente secundário.
  14. 17. Método, de acordo com a reivindicação 16, caracterizado pelo fato de que o lançamento dos serviços comuns ao primeiro e segundo ambientes de sistemas operacionais ocorre de maneira separada de um lançamento de pelo menos parte dos serviços de ambiente específico primários e secundários.
  15. 18. Método, de acordo com a reivindicação 15, caracterizado pelo fato de que quando o dispositivo está no modo encaixado e um dispositivo periférico está desconectado, há uma comutação automática para o modo móvel
    Petição 870190105898, de 18/10/2019, pág. 12/53 de modo que o ambiente de sistema operacional primário se torna o ambiente de sistema operacional secundário e viceversa .
  16. 19. Método, de acordo
    5 caracterizado pelo fato de dispositivo móvel.
  17. 20. Método, de acordo caracterizado pelo fato de que com a reivindicação 14, que o dispositivo é um com a reivindicação 12, os pelo menos dois ambientes de sistemas operacionais são co-existentes e independentes.
BR112012000888A 2009-07-20 2010-07-20 método para inicializar e método para operar um dispositivo tendo pelo menos dois ambientes de sistemas operacionais BR112012000888B1 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US22697409P 2009-07-20 2009-07-20
US12/838,668 US9372711B2 (en) 2009-07-20 2010-07-19 System and method for initiating a multi-environment operating system
PCT/US2010/042516 WO2011011356A2 (en) 2009-07-20 2010-07-20 System and method for initiating a multi-environment operating system

Publications (2)

Publication Number Publication Date
BR112012000888A2 BR112012000888A2 (pt) 2016-02-23
BR112012000888B1 true BR112012000888B1 (pt) 2019-12-17

Family

ID=43466066

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112012000888A BR112012000888B1 (pt) 2009-07-20 2010-07-20 método para inicializar e método para operar um dispositivo tendo pelo menos dois ambientes de sistemas operacionais

Country Status (7)

Country Link
US (1) US9372711B2 (pt)
EP (1) EP2457157A2 (pt)
KR (1) KR101399161B1 (pt)
CN (1) CN102473102B (pt)
BR (1) BR112012000888B1 (pt)
MY (1) MY165249A (pt)
WO (1) WO2011011356A2 (pt)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8933949B2 (en) 2010-10-01 2015-01-13 Z124 User interaction across cross-environment applications through an extended graphics context
US8819705B2 (en) 2010-10-01 2014-08-26 Z124 User interaction support across cross-environment applications
US9152582B2 (en) 2010-10-01 2015-10-06 Z124 Auto-configuration of a docked system in a multi-OS environment
US8726294B2 (en) 2010-10-01 2014-05-13 Z124 Cross-environment communication using application space API
US9047102B2 (en) 2010-10-01 2015-06-02 Z124 Instant remote rendering
US8966379B2 (en) 2010-10-01 2015-02-24 Z124 Dynamic cross-environment application configuration/orientation in an active user environment
US9348633B2 (en) * 2009-07-20 2016-05-24 Google Technology Holdings LLC Multi-environment operating system
US8868899B2 (en) * 2009-07-20 2014-10-21 Motorola Mobility Llc System and method for switching between environments in a multi-environment operating system
US9389877B2 (en) * 2009-07-20 2016-07-12 Google Technology Holdings LLC Multi-environment operating system
US9367331B2 (en) * 2009-07-20 2016-06-14 Google Technology Holdings LLC Multi-environment operating system
US9052800B2 (en) 2010-10-01 2015-06-09 Z124 User interface with stacked application management
CN103229156B (zh) 2010-10-01 2016-08-10 Flex Electronics ID Co.,Ltd. 多操作系统环境中的对接系统的自动配置
US8761831B2 (en) 2010-10-15 2014-06-24 Z124 Mirrored remote peripheral interface
US8983536B2 (en) 2010-10-22 2015-03-17 Google Technology Holdings LLC Resource management in a multi-operating environment
KR101295393B1 (ko) * 2011-01-27 2013-08-09 주식회사 엘지씨엔에스 단일 운영체제 상에서 스마트 서비스와 디지털 텔레비젼 서비스를 제공하는 스마트 셋탑 박스 및 그것의 구동 방법
US9354900B2 (en) 2011-04-28 2016-05-31 Google Technology Holdings LLC Method and apparatus for presenting a window in a system having two operating system environments
US9891800B2 (en) 2011-06-17 2018-02-13 Nokia Technologies Oy Method and apparatus for providing a notification mechanism
US8842057B2 (en) 2011-09-27 2014-09-23 Z124 Detail on triggers: transitional states
US9396041B2 (en) 2012-02-01 2016-07-19 Google Technology Holdings LLC Optimization of resource usage in a multi-environment computing system
US8615766B2 (en) 2012-05-01 2013-12-24 Concurix Corporation Hybrid operating system
US20130293573A1 (en) 2012-05-02 2013-11-07 Motorola Mobility, Inc. Method and Apparatus for Displaying Active Operating System Environment Data with a Plurality of Concurrent Operating System Environments
US9342325B2 (en) 2012-05-17 2016-05-17 Google Technology Holdings LLC Synchronizing launch-configuration information between first and second application environments that are operable on a multi-modal device
DE102013212016A1 (de) * 2013-06-25 2015-01-08 Robert Bosch Gmbh Verfahren zum Betreiben einer Kommunikationsanordnung
EP4224315A1 (en) * 2014-03-19 2023-08-09 Huawei Device Co., Ltd. Application data synchronization method and apparatus
KR101532873B1 (ko) * 2014-04-11 2015-06-30 플러스기술주식회사 스마트 폰의 듀얼 운영체제를 실행하는 방법
CN103927260B (zh) * 2014-04-22 2016-09-14 中国移动(深圳)有限公司 一种电信设备测试方法及系统
KR20160006482A (ko) * 2014-07-09 2016-01-19 에스케이하이닉스 주식회사 반도체 장치
CN105404547A (zh) * 2014-09-12 2016-03-16 阿里巴巴集团控股有限公司 一种操作系统的融合方法及装置
US9628279B2 (en) * 2014-09-30 2017-04-18 Microsoft Technology Licensing, Llc Protecting application secrets from operating system attacks
US9619242B2 (en) 2014-12-23 2017-04-11 Intel Corporation Methods, systems and apparatus to initialize a platform
CN104618596A (zh) * 2015-01-30 2015-05-13 深圳酷派技术有限公司 系统控制方法、系统控制装置和终端
US10515344B1 (en) * 2015-02-10 2019-12-24 Open Invention Network Llc Location awareness assistant that activates a business-oriented operation system or a personal-oriented operation system based on conditions
CN108024002B (zh) * 2016-10-31 2021-05-07 成都卫士通信息产业股份有限公司 一种基于rom的双域手机系统的构建方法
KR102447434B1 (ko) 2018-01-10 2022-09-27 삼성전자주식회사 전자 장치 및 그 제어 방법
US11327803B2 (en) 2018-10-16 2022-05-10 Samsung Electronics Co., Ltd. Electronic device for executing multiple operating systems and method of controlling same
KR102631745B1 (ko) 2018-10-16 2024-02-01 삼성전자주식회사 이종 운영체제의 실행을 제어하기 위한 방법, 이를 위한 전자 장치 및 저장 매체
CN111796877B (zh) * 2020-07-14 2021-10-15 北京元心科技有限公司 操作系统的启动方法、电子设备及计算机可读存储介质
US11983541B1 (en) * 2023-05-19 2024-05-14 Lowe's Companies, Inc. Operation-specific device configuration

Family Cites Families (191)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU578423B2 (en) 1983-07-25 1988-10-27 Mead Corporation, The Thermal developing of microencapsulated photosensitive materials
US5191055A (en) * 1988-12-22 1993-03-02 Mitsui Toatsu Chemicals, Inc. Mercapto compound, a high refractive index resin and lens and a process for preparing them
US5087758A (en) * 1988-12-22 1992-02-11 Mitsui Toatsu Chemicals, Inc. Mercapto compound, a high refractive index resin and lens and a process for preparing them
US5119494A (en) 1990-07-10 1992-06-02 Athenix Corporation Application address display window mapper for a sharable ms-dos processor
US5446904A (en) 1991-05-17 1995-08-29 Zenith Data Systems Corporation Suspend/resume capability for a protected mode microprocessor
AU634932B1 (en) * 1991-08-08 1993-03-04 Mitsui Chemicals, Inc. Mercapto compound, its preparation process, and sulfur- containing urethane resins and lenses using the same
EP0568386A3 (en) 1992-05-01 1995-08-16 R Brent Johnson Console simulator, multi-console management system, and console management distribution system
JPH07121336A (ja) 1993-10-27 1995-05-12 Canon Inc 表示装置及びその方法
US5608115A (en) * 1994-01-26 1997-03-04 Mitsui Toatsu Chemicals, Inc. Polythiol useful for preparing sulfur-containing urethane-based resin and process for producing the same
EP0717344B1 (en) 1994-12-13 2001-10-31 Microsoft Corporation Taskbar with start menu
US6363409B1 (en) 1995-04-24 2002-03-26 Microsoft Corporation Automatic client/server translation and execution of non-native applications
US6336146B1 (en) 1995-12-22 2002-01-01 Sun Microsystems, Inc. Method and apparatus for docking, launching and running applications in a foreign environment
US5828376A (en) 1996-09-23 1998-10-27 J. D. Edwards World Source Company Menu control in a graphical user interface
DE19648422C2 (de) * 1996-11-22 2000-03-30 Hans Beckhoff Verfahren und Vorrichtung zum Implementieren eines echtzeitfähigen Steuerprogramms in einem nicht-echtzeitfähigen Betriebsprogramm
US6710788B1 (en) 1996-12-03 2004-03-23 Texas Instruments Incorporated Graphical user interface
US6170045B1 (en) 1997-04-30 2001-01-02 International Business Machines Corporation Cross-system data piping using an external shared memory
US6336120B1 (en) * 1997-08-26 2002-01-01 International Business Machines Corporation Method and system for supporting hierarchical storage management (HSM) file system across multiple platforms
US6205452B1 (en) 1997-10-29 2001-03-20 R. R. Donnelley & Sons Company Method of reproducing variable graphics in a variable imaging system
US6215490B1 (en) 1998-02-02 2001-04-10 International Business Machines Corporation Task window navigation method and system
US6043816A (en) 1998-05-29 2000-03-28 Hewlett-Packard Company User interface mechanism for maintaning quick access to important information in a windows-based computer environment
US6133915A (en) 1998-06-17 2000-10-17 Microsoft Corporation System and method for customizing controls on a toolbar
US6338149B1 (en) 1998-07-31 2002-01-08 Westinghouse Electric Company Llc Change monitoring system for a computer system
US6178503B1 (en) * 1998-09-11 2001-01-23 Powerquest Corporation Managing multiple operating systems on a single computer
US8065504B2 (en) 1999-01-28 2011-11-22 Ati International Srl Using on-chip and off-chip look-up tables indexed by instruction address to control instruction execution in a processor
US6691146B1 (en) * 1999-05-19 2004-02-10 International Business Machines Corporation Logical partition manager and method
JP2000347883A (ja) 1999-06-03 2000-12-15 Matsushita Electric Ind Co Ltd 仮想計算機装置
US6460136B1 (en) * 1999-07-12 2002-10-01 Hewlett-Packard Co., Method and apparatus for loading an operating system kernel from a shared disk memory
US6571282B1 (en) 1999-08-31 2003-05-27 Accenture Llp Block-based communication in a communication services patterns environment
US6763458B1 (en) 1999-09-27 2004-07-13 Captaris, Inc. System and method for installing and servicing an operating system in a computer or information appliance
US6757002B1 (en) 1999-11-04 2004-06-29 Hewlett-Packard Development Company, L.P. Track pad pointing device with areas of specialized function
US6756999B2 (en) 2000-04-06 2004-06-29 Microsoft Corporation Method and system for clustering and grouping taskbar buttons
GB2369959A (en) 2000-12-08 2002-06-12 Ubinetics Ltd Holder for connecting a mobile communications device to a screen
GB2377784B (en) 2001-02-12 2003-11-05 Altio Ltd A presentation server which enables a client device to run a network based application
US7461144B1 (en) * 2001-02-16 2008-12-02 Swsoft Holdings, Ltd. Virtual private server with enhanced security
US6765596B2 (en) 2001-02-27 2004-07-20 International Business Machines Corporation Multi-functional application launcher with integrated status
US7231531B2 (en) * 2001-03-16 2007-06-12 Dualcor Technologies, Inc. Personal electronics device with a dual core processor
US20020151334A1 (en) * 2001-04-11 2002-10-17 Motorola, Inc Communications device with call frequency analyzer
TW502210B (en) 2001-04-19 2002-09-11 Asustek Comp Inc Computer system capable of switching operating system
US20050240763A9 (en) 2001-08-06 2005-10-27 Shivaram Bhat Web based applications single sign on system and method
US9152582B2 (en) * 2010-10-01 2015-10-06 Z124 Auto-configuration of a docked system in a multi-OS environment
WO2003027876A1 (en) 2001-09-26 2003-04-03 Jodie Lynn Reynolds System and method for communicating media signals
US20030065738A1 (en) * 2001-10-01 2003-04-03 Thumb Logic, Inc. Wireless information systems and methods
JP2003196096A (ja) 2001-12-07 2003-07-11 Internatl Business Mach Corp <Ibm> コンピュータシステム、その起動制御方法及びプログラム
US7533101B2 (en) 2002-03-04 2009-05-12 Microsoft Corporation Extensible loader
EP1347373A3 (en) * 2002-03-20 2005-02-02 Seiko Epson Corporation Apparatus for processing instructions of different instruction set architectures
US7783665B1 (en) * 2002-03-27 2010-08-24 Parallels Holdings, Ltd. Effective file-sharing among virtual environments
US7424623B2 (en) * 2002-03-28 2008-09-09 O2 Micro International Limited Personal computer integrated with personal digital assistant
US20030204708A1 (en) * 2002-04-24 2003-10-30 Colin Hulme Portable computer having hierarchical operating systems
US7111303B2 (en) 2002-07-16 2006-09-19 International Business Machines Corporation Virtual machine operating system LAN
JP2004086330A (ja) 2002-08-23 2004-03-18 Toshiba Corp 電子機器
TW591398B (en) 2002-09-26 2004-06-11 Tatung Co Method of implementing a plurality of system tray areas
US7913183B2 (en) 2002-10-08 2011-03-22 Microsoft Corporation System and method for managing software applications in a graphical user interface
US20040095388A1 (en) * 2002-11-15 2004-05-20 Rocchetti Robert J. Method and apparatus for creating user interfaces for computing devices
US7254831B2 (en) 2002-12-04 2007-08-07 Microsoft Corporation Sharing a sign-in among software applications having secured features
US20070128899A1 (en) 2003-01-12 2007-06-07 Yaron Mayer System and method for improving the efficiency, comfort, and/or reliability in Operating Systems, such as for example Windows
US20050240756A1 (en) 2003-01-12 2005-10-27 Yaron Mayer System and method for improving the efficiency, comfort, and/or reliability in Operating Systems, such as for example Windows.
US7114104B1 (en) 2003-02-11 2006-09-26 Compuware Corporation System and method of fault detection in a Unix environment
EP1467282B1 (en) 2003-04-09 2008-10-01 Jaluna SA Operating systems
US20040207508A1 (en) * 2003-04-16 2004-10-21 Jyh-Han Lin Method and apparatus for a dynamically customizable smart phonebook
US7634770B2 (en) * 2003-05-19 2009-12-15 Hewlett-Packard Development Company, L.P. Kernel module interface dependencies
AU2004307162A1 (en) 2003-10-29 2005-05-12 Qualcomm Incorporated High data rate interface
US7620667B2 (en) * 2003-11-17 2009-11-17 Microsoft Corporation Transfer of user profiles using portable storage devices
US20050125739A1 (en) 2003-11-20 2005-06-09 Thompson Jeffrey W. Virtual desktop manager system and method
EP1688816A4 (en) 2003-11-28 2012-04-25 Panasonic Corp DATA PROCESSING DEVICE
JP4617683B2 (ja) 2004-02-24 2011-01-26 ソニー株式会社 半導体集積回路,携帯モジュールおよびメッセージ通信方法。
GB0407977D0 (en) * 2004-04-08 2004-05-12 Ibm Communication between browser windows
US7478204B2 (en) * 2004-04-29 2009-01-13 International Business Machines Corporation Efficient sharing of memory between applications running under different operating systems on a shared hardware system
US7543166B2 (en) 2004-05-12 2009-06-02 Intel Corporation System for managing power states of a virtual machine based on global power management policy and power management command sent by the virtual machine
US7590945B2 (en) 2004-06-14 2009-09-15 At&T Intellectual Property I, L.P. Viewing applications from inactive sessions
KR101013143B1 (ko) 2004-06-29 2011-02-10 삼성전자주식회사 모니터 관리시스템
US7996785B2 (en) 2004-06-30 2011-08-09 Microsoft Corporation Systems and methods for integrating application windows in a virtual machine environment
US20060010446A1 (en) * 2004-07-06 2006-01-12 Desai Rajiv S Method and system for concurrent execution of multiple kernels
US7424601B2 (en) * 2004-07-07 2008-09-09 Yongyong Xu Methods and systems for running multiple operating systems in a single mobile device
US20060046706A1 (en) * 2004-08-26 2006-03-02 Jiansong Lin Monitoring and remote control of wireless communication device accessories and functionality
US7363128B2 (en) 2004-09-28 2008-04-22 Eaton Corporation Application launcher
US7529921B2 (en) * 2004-12-17 2009-05-05 Cardiac Pacemakers, Inc. Fast initialization of medical device system having multiple operating systems
US7468729B1 (en) 2004-12-21 2008-12-23 Aol Llc, A Delaware Limited Liability Company Using an avatar to generate user profile information
US8274518B2 (en) 2004-12-30 2012-09-25 Microsoft Corporation Systems and methods for virtualizing graphics subsystems
US20070162298A1 (en) 2005-01-18 2007-07-12 Apple Computer, Inc. Systems and methods for presenting data items
US20060225107A1 (en) 2005-04-01 2006-10-05 Microsoft Corporation System for running applications in a resource-constrained set-top box environment
US7478339B2 (en) 2005-04-01 2009-01-13 Microsoft Corporation Method and apparatus for application window grouping and management
US7565535B2 (en) 2005-05-06 2009-07-21 Microsoft Corporation Systems and methods for demonstrating authenticity of a virtual machine using a security image
US7533189B2 (en) 2005-06-21 2009-05-12 Microsoft Corporation Enabling a graphical window modification command to be applied to a remotely generated graphical window
WO2007005562A2 (en) * 2005-06-30 2007-01-11 Phoenix Technologies Ltd. Shared file system management between independent operating systems
JP4784189B2 (ja) 2005-07-26 2011-10-05 ソニー株式会社 通信システム、情報処理装置および情報処理方法、情報端末装置および情報処理方法、並びにプログラム
US20070050765A1 (en) * 2005-08-30 2007-03-01 Geisinger Nile J Programming language abstractions for creating and controlling virtual computers, operating systems and networks
US8429630B2 (en) 2005-09-15 2013-04-23 Ca, Inc. Globally distributed utility computing cloud
WO2007035611A2 (en) 2005-09-16 2007-03-29 Hoshiko, Llc Low power mode for portable computer system
US7636586B2 (en) * 2005-10-12 2009-12-22 Nokia Corporation Mobile communication terminal
US20070135043A1 (en) * 2005-12-12 2007-06-14 Motorola, Inc. Method and system for accessible contact information on a locked electronic device
US7657849B2 (en) 2005-12-23 2010-02-02 Apple Inc. Unlocking a device by performing gestures on an unlock image
JP5483884B2 (ja) 2006-01-17 2014-05-07 キダロ (イスラエル) リミテッド 複数のコンピューティング環境のシームレスな統合
US20070174429A1 (en) 2006-01-24 2007-07-26 Citrix Systems, Inc. Methods and servers for establishing a connection between a client system and a virtual machine hosting a requested computing environment
US20070180398A1 (en) 2006-01-30 2007-08-02 Mcardle James M Window cleanup via desktop icon
JP2007226413A (ja) 2006-02-22 2007-09-06 Hitachi Ltd メモリダンプ方法、メモリダンププログラム、及び、計算機システム
US7595810B2 (en) 2006-03-22 2009-09-29 Apple Inc. Methods of manipulating a screen space of a display device
US7536537B2 (en) * 2006-04-20 2009-05-19 Harris Corporation Simultaneous dual booting of platforms
US7987432B1 (en) 2006-04-25 2011-07-26 Parallels Holdings, Ltd. Seamless integration and installation of non-native application into native operating system
US20070266231A1 (en) * 2006-05-15 2007-11-15 Huey-Tyug Chua Portable Electronic Device and Method for Loading Resource Data of the Portable Electronic Device
US8738786B2 (en) 2006-05-18 2014-05-27 Sanggyu Lee Method for protecting client and server
US20070283147A1 (en) * 2006-05-30 2007-12-06 Fried Eric P System and method to manage device access in a software partition
US9201703B2 (en) * 2006-06-07 2015-12-01 International Business Machines Corporation Sharing kernel services among kernels
US8146089B2 (en) * 2006-06-14 2012-03-27 Intel Corporation Sharing resources of a partitioned system
US20080028326A1 (en) 2006-07-26 2008-01-31 Research In Motion Limited System and method for adaptive theming of a mobile device
US8352733B2 (en) 2006-08-04 2013-01-08 Apple Inc. Resource restriction systems and methods
US7996789B2 (en) 2006-08-04 2011-08-09 Apple Inc. Methods and apparatuses to control application programs
US7689820B2 (en) * 2006-09-27 2010-03-30 L3 Communications Corporation Rapid-boot computing device with dual operating systems
US20080100568A1 (en) * 2006-10-30 2008-05-01 Koch Paul B Electronic device providing tactile feedback
US7698660B2 (en) 2006-11-13 2010-04-13 Microsoft Corporation Shared space for communicating information
JP4809209B2 (ja) 2006-12-28 2011-11-09 株式会社日立製作所 サーバ仮想化環境における系切り替え方法及び計算機システム
US20080282205A1 (en) 2007-02-06 2008-11-13 Access Systems Americas, Inc. Unified launcher user interface system and method for integrating multiple disparate environments on an electronic device
US8046570B2 (en) 2007-02-06 2011-10-25 Microsoft Corporation Supporting multiple operating systems in media devices
US20080256468A1 (en) 2007-04-11 2008-10-16 Johan Christiaan Peters Method and apparatus for displaying a user interface on multiple devices simultaneously
US20080270910A1 (en) 2007-04-30 2008-10-30 Lukasik Derek J User selection of a remote session
WO2008137432A2 (en) 2007-05-01 2008-11-13 Dyyno Sharing of information and formatting information for transmission over a communication network
US8677270B2 (en) 2007-05-04 2014-03-18 Microsoft Corporation Live companion user interface
CN100470485C (zh) 2007-05-09 2009-03-18 浙江大学 多操作系统协同工作实现方法
US8745535B2 (en) 2007-06-08 2014-06-03 Apple Inc. Multi-dimensional desktop
US20080307350A1 (en) 2007-06-09 2008-12-11 Alessandro Francesco Sabatelli Method and Apparatus for Improved Desktop Arrangement
US7523738B2 (en) 2007-06-22 2009-04-28 Gm Global Technology Operations, Inc. Idle quality by torque smoothing
KR101415762B1 (ko) * 2007-07-25 2014-07-08 엘지전자 주식회사 보조 출력 장치 및 이를 구비한 휴대용 컴퓨터 그리고 이의os 전환 방법
TWI352909B (en) * 2007-09-05 2011-11-21 Htc Corp Method and system for supporting network sharing a
TWI362612B (en) 2007-09-05 2012-04-21 Htc Corp System and electronic device using multiple operating systems and operating method thereof
WO2009039375A2 (en) 2007-09-20 2009-03-26 C & S Operations, Inc. Computer system
US7840186B2 (en) * 2007-09-25 2010-11-23 Motorola Mobility, Inc. Wireless SATA/SAS data transfer system
US9003173B2 (en) * 2007-09-28 2015-04-07 Microsoft Technology Licensing, Llc Multi-OS (operating system) boot via mobile device
US20090158299A1 (en) 2007-10-31 2009-06-18 Carter Ernst B System for and method of uniform synchronization between multiple kernels running on single computer systems with multiple CPUs installed
CN101149685A (zh) 2007-11-07 2008-03-26 苏州壹世通科技有限公司 从移动存储设备启动多操作系统的组合装置及其方法
JP2009157802A (ja) 2007-12-27 2009-07-16 Kyocera Corp 携帯端末および情報処理装置
US9612847B2 (en) 2008-02-05 2017-04-04 Microsoft Technology Licensing, Llc Destination list associated with an application launcher
US8151100B2 (en) 2008-02-06 2012-04-03 Broadcom Corporation Operating system for a computing device with handheld and extended computing units
US8327286B2 (en) 2008-03-13 2012-12-04 Microsoft Corporation Unifying application launchers and switchers
US20090287571A1 (en) * 2008-03-26 2009-11-19 Robb Fujioka Hypervisor and virtual machine ware
GB2459097B (en) 2008-04-08 2012-03-28 Advanced Risc Mach Ltd A method and apparatus for processing and displaying secure and non-secure data
JP5405320B2 (ja) 2008-04-28 2014-02-05 パナソニック株式会社 仮想計算機制御装置、仮想計算機制御方法及び仮想計算機制御プログラム
CN101615123A (zh) 2008-06-26 2009-12-30 比亚迪股份有限公司 一种移动终端操作系统的引导方法及移动终端
US8307177B2 (en) 2008-09-05 2012-11-06 Commvault Systems, Inc. Systems and methods for management of virtualization data
US20100064251A1 (en) 2008-09-05 2010-03-11 International Business Machines Corporation Toggling window display state by screen in a multi-screened desktop environment
US8694920B2 (en) 2008-09-25 2014-04-08 Microsoft Corporation Displaying application information in an application-switching user interface
CN104317262B (zh) 2008-09-29 2017-09-12 费希尔-罗斯蒙特系统公司 过程控制系统的元件的高效设计和配置
KR101501167B1 (ko) 2008-10-20 2015-03-10 삼성전자주식회사 다중 모뎀을 구비한 이동통신 단말기에서 다중 운용 체제를운용하기 위한 장치 및 방법
US8819585B2 (en) 2008-10-27 2014-08-26 Microsoft Corporation Child window surfacing and management
US8069247B2 (en) 2008-12-03 2011-11-29 Verizon Data Services Llc Application launcher systems, methods, and apparatuses
US9459678B2 (en) 2009-01-29 2016-10-04 Hewlett-Packard Development Company, L.P. Power manager for virtual machines
US20100211769A1 (en) * 2009-02-19 2010-08-19 Subramonian Shankar Concurrent Execution of a Smartphone Operating System and a Desktop Operating System
US7987309B2 (en) 2009-02-26 2011-07-26 Broadcom Corporation Dockable handheld computing device with graphical user interface and methods for use therewith
US8566045B2 (en) 2009-03-16 2013-10-22 Apple Inc. Event recognition
US8253531B2 (en) 2009-03-26 2012-08-28 International Business Machines Corporation On chip verification and consequent enablement of card OS operation in smart cards
US8177554B2 (en) 2009-06-02 2012-05-15 Krasner Paul R Device and method for locating a pulp chamber in a tooth
US8555185B2 (en) 2009-06-08 2013-10-08 Apple Inc. User interface for multiple display regions
TWI400652B (zh) 2009-06-11 2013-07-01 Insyde Software Corp Dual operating system parallel processing methods, recording media and computer program products
US8881047B2 (en) 2009-06-19 2014-11-04 Moment Usa, Inc. Systems and methods for dynamic background user interface(s)
US8302094B2 (en) 2009-06-26 2012-10-30 Vmware, Inc. Routing a physical device request using transformer stack to an equivalent physical device in a virtualized mobile device
US8914511B1 (en) 2009-06-26 2014-12-16 VMTurbo, Inc. Managing resources in virtualization systems
US8868899B2 (en) * 2009-07-20 2014-10-21 Motorola Mobility Llc System and method for switching between environments in a multi-environment operating system
US9348633B2 (en) * 2009-07-20 2016-05-24 Google Technology Holdings LLC Multi-environment operating system
US9367331B2 (en) * 2009-07-20 2016-06-14 Google Technology Holdings LLC Multi-environment operating system
US9389877B2 (en) * 2009-07-20 2016-07-12 Google Technology Holdings LLC Multi-environment operating system
JP5365399B2 (ja) 2009-07-27 2013-12-11 富士通株式会社 スクリーンセーバ制御システム、画像処理装置、画像表示装置、スクリーンセーバ制御方法、及びコンピュータプログラム
CA2675666A1 (en) 2009-08-27 2009-11-05 Ibm Canada Limited - Ibm Canada Limitee Accelerated execution for emulated environments
US8341268B2 (en) 2009-08-28 2012-12-25 Microsoft Corporation Resource sharing in multi-principal browser
US8607082B2 (en) 2009-08-31 2013-12-10 Red Hat Israel, Ltd. Mechanism for managing power in a virtual machine system
US8341558B2 (en) 2009-09-16 2012-12-25 Google Inc. Gesture recognition on computing device correlating input to a template
EP2499556A1 (en) 2009-11-13 2012-09-19 Google, Inc. Live wallpaper
KR101620058B1 (ko) 2009-11-23 2016-05-24 삼성전자주식회사 가상 머신 간 화면 전환 장치 및 방법
US8769428B2 (en) 2009-12-09 2014-07-01 Citrix Systems, Inc. Methods and systems for generating a combined display of taskbar button group entries generated on a local machine and on a remote machine
US8538741B2 (en) 2009-12-15 2013-09-17 Ati Technologies Ulc Apparatus and method for partitioning a display surface into a plurality of virtual display areas
US9367341B2 (en) 2010-03-30 2016-06-14 Red Hat Israel, Ltd. Encrypting and decrypting virtual disk content using a single user sign-on
US8589952B2 (en) * 2010-06-30 2013-11-19 Palm, Inc. Dual operating system operation and configuration
CN102971740B (zh) 2010-07-01 2016-01-27 惠普发展公司,有限责任合伙企业 计算设备上的用于多个环境的用户管理框架
WO2012012865A1 (en) 2010-07-29 2012-02-02 9227-5668 Quebec Inc. Portable catalytic heating apparatus for drying, curing, polymerization or cross-linking of coatings and compounds
EP2416546A1 (en) 2010-08-03 2012-02-08 Research In Motion Limited Method for providing indication of communicatively coupled device
TWI520069B (zh) * 2010-08-11 2016-02-01 緯創資通股份有限公司 整合運用基於同一系統核心之異質作業系統之方法
US8620372B2 (en) 2010-09-30 2013-12-31 Apple Inc. Method and apparatus for transport format selection in a mobile wireless device
CN103229156B (zh) 2010-10-01 2016-08-10 Flex Electronics ID Co.,Ltd. 多操作系统环境中的对接系统的自动配置
WO2012048257A2 (en) * 2010-10-08 2012-04-12 Lumi Technologies, Inc. Scalable synchronization of events among server and clients with varying lag-times
US8983536B2 (en) * 2010-10-22 2015-03-17 Google Technology Holdings LLC Resource management in a multi-operating environment
US9245047B2 (en) 2010-12-10 2016-01-26 Wyse Technology L.L.C. Methods and systems for facilitating a remote desktop session utilizing a remote desktop client common interface
US8874665B2 (en) 2010-12-13 2014-10-28 At&T Mobility Ii Llc Systems, apparatus and methods for facilitating display and management of information for communication devices
US8782258B2 (en) 2011-01-04 2014-07-15 Motorola Mobility Llc Transferring web data between operating system environments
US20120173986A1 (en) 2011-01-04 2012-07-05 Motorola-Mobility, Inc. Background synchronization within a multi-environment operating system
US20120174021A1 (en) 2011-01-04 2012-07-05 Motorola, Inc. Systems and methods for displaying android applications launchers in webtop application tray
US20120192100A1 (en) 2011-01-25 2012-07-26 Motorola-Mobility, Inc. Method and apparatus for locking and unlocking multiple operating system environments with a single gesture input
US9891939B2 (en) 2011-03-03 2018-02-13 Microsoft Technology Licensing, Llc Application compatibility with library operating systems
US8898629B2 (en) 2011-04-06 2014-11-25 Media Direct, Inc. Systems and methods for a mobile application development and deployment platform
US20120278747A1 (en) 2011-04-28 2012-11-01 Motorola Mobility, Inc. Method and apparatus for user interface in a system having two operating system environments
US9354900B2 (en) 2011-04-28 2016-05-31 Google Technology Holdings LLC Method and apparatus for presenting a window in a system having two operating system environments
US9104307B2 (en) 2011-05-27 2015-08-11 Microsoft Technology Licensing, Llc Multi-application environment
US20130298140A1 (en) 2012-05-02 2013-11-07 Motorola Mobility, Inc. Method and Apparatus for Displaying Data from a Plurality of Concurrent Operating System Environments
US20130293573A1 (en) 2012-05-02 2013-11-07 Motorola Mobility, Inc. Method and Apparatus for Displaying Active Operating System Environment Data with a Plurality of Concurrent Operating System Environments
US9342325B2 (en) 2012-05-17 2016-05-17 Google Technology Holdings LLC Synchronizing launch-configuration information between first and second application environments that are operable on a multi-modal device

Also Published As

Publication number Publication date
KR101399161B1 (ko) 2014-05-27
EP2457157A2 (en) 2012-05-30
KR20120030563A (ko) 2012-03-28
BR112012000888A2 (pt) 2016-02-23
WO2011011356A2 (en) 2011-01-27
CN102473102B (zh) 2015-04-22
US9372711B2 (en) 2016-06-21
MY165249A (en) 2018-03-14
CN102473102A (zh) 2012-05-23
US20110016301A1 (en) 2011-01-20
WO2011011356A3 (en) 2011-09-01

Similar Documents

Publication Publication Date Title
BR112012000888B1 (pt) método para inicializar e método para operar um dispositivo tendo pelo menos dois ambientes de sistemas operacionais
KR101702729B1 (ko) 다중 환경 운영 시스템에서 환경을 전환하는 시스템 및 방법
US9348633B2 (en) Multi-environment operating system
US9367331B2 (en) Multi-environment operating system
US9389877B2 (en) Multi-environment operating system
EP2668572B1 (en) Method and apparatus for locking and unlocking multiple operating system environments with a single gesture input
US9317457B2 (en) Auto-waking of a suspended OS in a dockable system
US20120173986A1 (en) Background synchronization within a multi-environment operating system
WO2012094213A1 (en) Systems and methods for displaying android applications launchers in webtop application tray
WO2012044557A2 (en) Auto-configuration of a docked system in a multi-os environment
KR20090118941A (ko) 복수의 부트-가능 장치들 간의 부트 교섭
WO2011011368A2 (en) Multi-environment operating system
Sun et al. Supporting Multiple OSes with OS Switching.
RU2574205C2 (ru) Операционная система с множеством сред
CN108235757A (zh) 一种操作系统屏幕锁定的方法、装置及电子设备
WO2011011365A2 (en) Multi-environment operating system

Legal Events

Date Code Title Description
B25D Requested change of name of applicant approved

Owner name: MOTOROLA MOBILITY LLC (US)

B25G Requested change of headquarter approved

Owner name: MOTOROLA MOBILITY LLC (US)

B25A Requested transfer of rights approved

Owner name: GOOGLE TECHNOLOGY HOLDINGS LLC (US)

B06F Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette]
B06U Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B16A Patent or certificate of addition of invention granted

Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 20/07/2010, OBSERVADAS AS CONDICOES LEGAIS.