BRPI0708901B1 - Método implementado por computador para conservar o consumo de energia com base na quantidade de energia disponível e mídia de armazenamento legível por computador - Google Patents

Método implementado por computador para conservar o consumo de energia com base na quantidade de energia disponível e mídia de armazenamento legível por computador Download PDF

Info

Publication number
BRPI0708901B1
BRPI0708901B1 BRPI0708901-5A BRPI0708901A BRPI0708901B1 BR PI0708901 B1 BRPI0708901 B1 BR PI0708901B1 BR PI0708901 A BRPI0708901 A BR PI0708901A BR PI0708901 B1 BRPI0708901 B1 BR PI0708901B1
Authority
BR
Brazil
Prior art keywords
computer
energy
power
consuming devices
available
Prior art date
Application number
BRPI0708901-5A
Other languages
English (en)
Inventor
Kenneth W. Stufflebeam
Original Assignee
Microsoft Technology Licensing, Llc
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 Technology Licensing, Llc filed Critical Microsoft Technology Licensing, Llc
Publication of BRPI0708901A2 publication Critical patent/BRPI0708901A2/pt
Publication of BRPI0708901A8 publication Critical patent/BRPI0708901A8/pt
Publication of BRPI0708901B1 publication Critical patent/BRPI0708901B1/pt

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/448Execution paradigms, e.g. implementations of programming paradigms
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Power Sources (AREA)
  • Supply And Distribution Of Alternating Current (AREA)

Abstract

gerenciamento adaptativo de energia modalidades da presente invenção são direcionadas para minimizar o consumo de energia de um computador, permitindo a execução de tarefas significativas por programas instalados no computador. de acordo com uma modalidade, é fornecido um método que implementa medidas de conservação de energia com base no valor da capacidade que está disponível em uma fonte de alimentação. mais especificamente, o método inclui identificar a quantidade atual de energia que está disponível em uma fonte de alimentação. então, é feita uma determinação considerando se a quantidade atual de energia disponível está associada com um estado de desempenho reduzido. se a quantidade atual de energia estiver associa- da com um estado de desempenho reduzido, o método muda a configuração dos dispositivos consumidores de energia para colocar o computador no estado de desempenho reduzido.

Description

Relatório Descritivo da Patente de Invenção para MÉTODO IMPLEMENTADO POR COMPUTADOR PARA CONSERVAR O CONSUMO DE ENERGIA COM BASE NA QUANTIDADE DE ENERGIA DISPONÍVEL E MÍDIA DE ARMAZENAMENTO LEGÍVEL POR COMPUTADOR.
ANTECEDENTES DA INVENÇÃO [001] Exigências de mercado, necessidades ambientais, custos de negócios e vida útil limitada de batería determinam que computadores usem o mínimo de energia possível, fornecendo ainda robustos serviços de computação. A energia consumida por um computador pode ser mais eficientemente gerenciada pelo fornecimento de energia computacional suficiente para cada serviço necessário, em vez de fornecer máxima energia computacional a todos os momentos. Computadores, tais como computadores portáteis, computadores de mesa e computadores de grande porte, assistentes pessoais digitais (PDAs), telefones celulares, etc, fornecem serviços, fazendo com que métodos sejam executadas por conjuntos de circuitos eletrônicos. Neste aspecto, vários dispositivos em um computador mantêm conjunto de circuitos eletrônicos que consomem energia para que serviços possam ser fornecidos.
[002] A maior parte dos computadores executa um programa de computador, comumente referido como um sistema operacional, que guia a operação de um computador e fornece serviços a outros programas. Mais especificamente, um sistema operacional controla a alocação e o uso de recursos de hardware, tais como memória, dispositivo de memória em massa, dispositivo periférico, etc. Tipicamente, os métodos para inicializar e operar o dispositivo de computador ficam contidos em um componente do sistema operacional, frequentemente referido como o núcleo. Pouco tempo depois que um computador é iniciado, o núcleo começa a executar. Já que
Petição 870180166232, de 21/12/2018, pág. 3/35
2/23 um núcleo tem controle direto do hardware e acesso aos dados que descrevem o estado de um computador, um núcleo pode ser usado para regular a energia computacional e, de outra forma, controlar o consumo de energia.
[003] Tradicionalmente, os recursos de gerenciamento de energia fornecidos por um sistema operacional consistem em quantificar a quantidade de processamento que é realizado e transicionar entre diferentes estados de sistema (alguma vezes, referidos como estados S) com base na ocupação / ociosidade de um computador. Por exemplo, alguns computadores e seus sistemas operacionais aderem a um padrão comumente conhecido como Interface de Configuração Avançada e de Energia (ACPI) que suporta diferentes estados de sistema, incluindo um estado ativo (por exemplo, SO) e vários estados de hibernação do sistema (por exemplo, S1-S4). Além do mais, quando um computador transiciona entre os estados do sistema, dispositivos consumidores de energia no computador podem transicionar até um estado de dispositivo apropriado (algumas vezes, referido como estados D) que inclui um estado ativo (por exemplo, DO) e vários estados de hibernação de dispositivo (por exemplo, D1-D3). Neste aspecto, o sistema operacional pode ser responsável pela manutenção de mapeamentos estado-para-dispositivo para que dispositivos individuais possam transicionar para um estado de dispositivo apropriado.
[004] Por um lado, cada estado de hibernação de sistema e dispositivo associado sucessivamente mais profundo oferece maiores níveis de economia de energia durante o estado ativo. Por outro lado, estados de hibernação do sistema e dispositivo mais altos estão cada qual associados com menor disponibilidade de hardware. Por exemplo, um período de tempo ou latência elevado pode ser exigido para transicionar de um estado de hibernação para o estado ativo. De qual
Petição 870180166232, de 21/12/2018, pág. 4/35
3/23 quer maneira, com estes tipos de sistemas existentes, decisões de gerenciamento de energia não consideram a quantidade de energia disponível restante. Em decorrência disto, o período de tempo no qual um usuário pode realizar tarefas significativas em um computador é curto, já que as capacidades de economia de energia de certos dispositivos de hardware não são completamente realizadas, mesmo quando a quantidade de energia restante é muito baixa.
SUMÁRIO DA INVENÇÃO [005] Descritas no geral, modalidades da presente invenção são direcionadas à minimização do consumo de energia de um computador, permitindo a execução de tarefas significativas por programas instalados no computador. De acordo com uma modalidade, é fornecido um método que implementa medidas de conservação de energia com base na capacidade de energia atual que está disponível em uma fonte de alimentação. Mais especificamente, nesta modalidade, o método inclui identificar a quantidade atual de energia que está disponível para o computador na fonte de alimentação. Então, e feita uma determinação considerando se a quantidade atual de energia disponível para o computador está associada com um estado de desempenho reduzido. Se a quantidade atual de energia estiver associada com um estado de desempenho reduzido, o método muda a configuração de alguns dispositivos consumidores de energia para colocar o computador no estado de desempenho reduzido apropriado.
[006] Este Sumário é fornecido para introduzir uma seleção de conceitos de uma forma simplificada que é adicionalmente descrita a seguir na Descrição Detalhada. Não se pretende que este Sumário identifique recursos chaves do assunto em questão reivindicado, nem pretende-se que seja usado como um auxílio na determinação do escopo do assunto em questão reivindicado.
DESCRIÇÃO RESUMIDA DOS DESENHOS
Petição 870180166232, de 21/12/2018, pág. 5/35
4/23 [007] Os aspectos expostos e muitas das vantagens presentes nesta invenção serão mais prontamente percebidos à medida que a mesma fica mais bem entendida pela referência à descrição detalhada seguinte, quando considerada em conjunto com os desenhos anexos, em que:
[008] a figura 1 e um diagrama de blocos de um computador exemplar com componentes que são adequados para implementar aspectos da presente invenção; e [009] a figura 2 é um fluxograma funcional de uma rotina de gerenciamento de energia adequada para ilustrar um método exemplar para identificar e realizar transições de estado de desempenho para conservar energia consumida por um computador de acordo com uma modalidade da presente invenção.
DESCRIÇÃO DETALHADA [0010] A presente invenção pode ser descrita no contexto geral de métodos executáveis por computador, tais como módulos de programa, que são executadas por um computador. Descritos no geral, módulos de programa incluem rotinas, programas, aplicações, pequenos programas que descrevem a função de símbolos gráficos, objetos, componentes, estruturas de dados e congêneres que realizam tarefas em particular ou que implementam tipos de dados abstratos em particular. A presente invenção também pode ser realizada em ambientes de computação distribuída em que tarefas são realizadas por dispositivos de processamento remotos que são ligados por meio de uma rede de comunicações. Em um ambiente de computação distribuída, módulos de programa podem ficar localizados em mídia de armazenamento no computador local e/ou remota.
[0011] Embora, basicamente, a presente invenção seja descrita no contexto da redução da energia consumida por dispositivos de hardware em um computador quando a quantidade de energia dispo
Petição 870180166232, de 21/12/2018, pág. 6/35
5/23 nível estiver abaixo de certos valores limites que podem ser arbitrariamente ajustadas e reconfiguradas se necessário, versados na técnica percebem que a presente invenção também é aplicável em outros contextos. De qualquer maneira, primeiro, a seguinte descrição fornece uma visão geral de um computador no qual aspectos da presente invenção podem ser implementados. Então, é descrita uma rotina ou método para realizar a invenção de acordo com uma modalidade. Não pretende-se que os exemplos ilustrativos aqui descritos sejam completos ou que limitem a invenção nas formas precisas divulgadas. Similarmente, todas as etapas aqui descritas podem ser intercambiáveis com outras etapas ou combinações de etapas a fim de alcançar o mesmo resultado.
[0012] Agora, em relação à figura 1, será descrito um computador exemplar 100 com componentes tanto de hardware quanta de software que podem implementar aspectos da presente invenção. Versados na técnica percebem que o computador 100 pode ser qualquer um de uma variedade de dispositivos, incluindo, mas sem limitações, dispositivo de computação pessoal, dispositivo de computação com base em servidor, minicomputadores e computadores de grande porte, computadores portáteis, assistentes pessoais digitais (PDAs) ou outros dispositivos eletrônicos com algum tipo de memória. Para a facilidade da ilustração e em virtude de não ser importante para o entendimento da presente invenção, a figura 1 não mostra os componentes típicos de muitos computadores, tais como memória, teclado, mouse, impressora ou outros dispositivos de E/S, um monitor, etc. Entretanto, da forma ilustrada na figura 1, o computador 100 inclui uma aplicação 102, um sistema operacional 104 e uma plataforma de hardware 106. Nesta modalidade, o sistema operacional 104 inclui os acionadores 108 e a rotina de gerenciamento de energia 110. Além do mais, da forma adicionalmente ilustrada na figura 1, a plataforma de hardware 106 inclui
Petição 870180166232, de 21/12/2018, pág. 7/35
6/23 a CPU 114, os dispositivos consumidores de energia 116 e uma fonte de alimentação 118.
[0013] Com propósitos ilustrativos e a título de exemplo somente, a figura 1 representa uma arquitetura de componente para um computador 100 na qual um sistema operacional 104 gerencia o acesso aos recursos de hardware em nome dos programas de aplicação. Neste aspecto, o sistema operacional 104 ilustrado na figura 1 pode ser um sistema operacional de uso geral, tais como o sistema operacional Microsoft®, o sistema operacional Linux®, o sistema operacional UNIX®, etc. Alternativamente, o sistema operacional 104 pode ser projetado para hardware especializado, tais como dispositivos de computação com recursos limitados. Neste exemplo, o sistema operacional 104 pode ser o sistema operacional Windows® CE, o sistema operacional Palm® e congêneres. De qualquer maneira, os componentes do computador 100 são colocados em camada com a plataforma de hardware 106 na camada de base e a aplicação 102 na camada de topo. A colocação em camadas do computador 100 ilustra que a presente invenção pode ser implementada em um ambiente hierárquico no qual cada camada do computador 100 depende dos sistemas nas camadas inferiores. Mais especificamente, a aplicação 102 não pode acessar diretamente os componentes da plataforma de hardware 106. Em vez disto, a aplicação 102 emite solicitações ao sistema operacional 104 quando serviços fornecidos pela plataforma de software 106 são necessários. À medida que as solicitações são recebidas, o sistema operacional 104 acessa os acionadores 108 para fazer interface com os componentes da plataforma de hardware 106. Por exemplo, os acionadores 108 fornecem uma maneira para que o sistema operacional 104 faça interface com a CPU 114 e com os dispositivos consumidores de energia 116.
[0014] De acordo com uma modalidade, a presente invenção es
Petição 870180166232, de 21/12/2018, pág. 8/35
7/23 tende a funcionalidade do sistema operacional 104 para conservar recursos de energia. Neste aspecto, o sistema operacional 104 é usado para identificar as exigências de desempenho de hardware da aplicação 102 quando a aplicação 102 for iniciado ou em algum momento posterior. A medida que a capacidade de energia disponível do computador 100 diminui, o sistema operacional 102 pode transicionar a plataforma de hardware 106 entre diferentes estados de desempenho que podem ocorrer em um dado sistema e/ou estado de dispositivo. Declarado no geral, aspectos da presente invenção estendem a funcionalidade do sistema operacional 104 para que o sistema operacional
104 possa agir como um intermediário para casar com as exigências de desempenho da aplicação 102 com as capacidades da plataforma de hardware 106.
[0015] A fim de que o sistema operacional 104 gerencie a execução dos programas, a informação que descreve a plataforma de hardware 106 é obtida. Tipicamente, um programa de software embarcado, comumente conhecido como Sistema Básico de Entrada / Saída (BIOS), desempenha funções para a inicialização da plataforma de hardware 106 quando energia for aplicada, primeiro, no computador 100, depois do que, o BIOS reinicia o sistema operacional 104. Neste aspecto, quando o computador 100 for energizado, a BIOS do computador 100 conduz uma verificação do hardware, denominada Autoteste de Ativação (POST), para determinar se a plataforma de hardware 106 está presente e funcionando corretamente. Então, métodos no BIOS controlam diretamente um programa comumente conhecido como um carregador de reiniciação que carrega o sistema operacional
105 na memória do sistema do computador 100, que é comumente implementada como um banco de memória de acesso aleatório (RAM).
[0016] Da forma ilustrada na figura 1, o computador 100 inclui uma
Petição 870180166232, de 21/12/2018, pág. 9/35
8/23 fonte de alimentação 108 que é responsável por fornecer energia ao conjunto de circuitos eletrônicos do computador 100. A fonte de alimentação 108 pode ser uma batería que fica contida no alojamento do computador 100. Neste exemplo, à medida que um usuário interage com o computador 100, o valor da capacidade de energia diminui e pode ficar indisponível se uma fonte de alimentação ininterrupta não for usada para recarregar a bateria. Aspectos da presente invenção são especialmente bem adequados quando uma bateria for usada para fornecer energia ao computador. Entretanto, a fonte de alimentação 108 pode ser uma fonte de alimentação ininterrupta, na qual a capacidade de energia que está disponível no computador 100 não diminui. Neste exemplo, aspectos da presente invenção podem ser usados para conservar o consumo de recursos de energia, mesmo embora uma quantidade de energia aparentemente infinita esteja disponível.
[0017] Tipicamente, quando o computador 100 reinicia, um ou mais acionadores 108 podem ler dados fornecidos por um BIOS para descobrir as capacidades de gerenciamento de energia dos dispositivos do sistema na plataforma de hardware 106 ou podem identificar as capacidades de gerenciamento de energia diretamente dos dispositivos do sistema por meio dos acionadores 100 ou de outra informação de espaço de configuração. Em alguns sistemas, dados fornecidos pelo BIOS ou pela determinação direta do sistema operacional 104 são passados a uma autoridade reguladora de energia incluída no sistema operacional 104, que controla a energia que é gasta pelo computador 100. Por exemplo, como exposto, em um sistema operacional 104 que se conforma ao padrão ACPI, a autoridade reguladora de energia pode quantificar a quantidade de processamento que é realizada no computador 100 e pode transicionar entre diferentes estados de sistema com base na ociosidade/ocupação do computador 100.
[0018] Aspectos da presente invenção podem ser implementados
Petição 870180166232, de 21/12/2018, pág. 10/35
9/23 em um computador no qual uma autoridade reguladora de energia transiciona entre diferentes estados de sistema. Nesta modalidade, quando o computador 100 está no estado de sistema ativo (por exemplo, S0), o sistema de gerenciamento adaptativo de energia fornecido pela presente invenção pode desfigurar e/ou reduzir o estado de desempenho dos dispositivos de hardware específicos com base no nível atual da capacidade de energia e/ou nas necessidades de desempenho de hardware dos programas de aplicação que estão em execução no computador 100. Mais especificamente, à medida que a capacidade de energia disponível no computador 100 diminui, os recursos do dispositivo de hardware e/ou os estados de desempenho são ajustados em um sistema funcional ou estado de dispositivo em um nível que é consistente com a capacidade de energia restante. Em decorrência disto, o desempenho de um computador é ajustado em um nível que maximiza o uso da energia disponível, ainda permitindo que um usuário desempenhe tarefas significativas. Se a autoridade reguladora de energia transicionar do estado ativo para um estado de hibernação do sistema, processamento adicional não é desempenhado pela presente invenção. Em vez disto, pela transição entre diferentes estados de hibernação do sistema, a autoridade reguladora de energia conserva o uso de energia no computador 100. Em uma outra modalidade, a presente invenção é implementada em um computador 100, no qual uma autoridade reguladora de energia não transiciona entre diferentes estados de sistema para conservar energia. Neste exemplo, os recursos de dispositivo de hardware e/ou estados de desempenho são ajustados por aspectos da presente invenção toda vez que condições do computador 100 impuserem que energia deve ser conservada, tal como quando a quantidade de energia disponível cair abaixo de certos valores limites.
[0019] Da forma ilustrada na figura 1, o computador 100 inclui uma
Petição 870180166232, de 21/12/2018, pág. 11/35
10/23
CPU 114 que é incluída na plataforma de hardware 106. Versados na técnica percebem que a CPU 114 serve como o centro computacional do computador 100 pelo suporte à execução dos métodos. Neste aspecto, o sistema operacional 104 faz com que os métodos de programa, incluindo os métodos de programa que implementam a presente invenção, sejam carregadas a partir de um dispositivo de armazenamento (por exemplo, um disco rígido) na memória do sistema (não ilustrada) do computador 100. Então, a CPU 114 implementa a funcionalidade de programa localizando e carregando e executando métodos carregados na memória do sistema. Versados na técnica percebem que algumas CPUs atualmente disponíveis suportam estados de desempenho com menor energia, tais como (1) estados-P, nos quais o par tensão/frequência da CPU 114 pode ser ajustado para reduzir o consumo de energia, e (2) estados-C, nos quais permite-se que a CPU 114 fique ociosa por um percentual de tempo pré-determinado. Da forma descrita com detalhes adicionais a seguir, aspectos da presente invenção podem fazer com que a CPU 114 transicione em um estado-P ou estado-C de energia reduzida, mesmo em casos em que o computador 100 está no estado de sistema ativo.
[0020] Os dispositivos consumidores de energia 116 ilustrados na figura 1 podem ser qualquer dispositivo existente, ou ainda a ser desenvolvido, que usa eletricidade fornecida por uma fonte de alimentação 118. Por exemplo, em sistemas de computador existentes, os dispositivos consumidores de energia 116 podem incluir, mas sem limitações, dispositivos de armazenamento em massa (por exemplo, disco rígido), cartões de vídeo, dispositivos periféricos, tais como unidades de DVD/CD-ROM, cartões e adaptadores de rede, dispositivos que podem ser removidos ou substituídos durante a operação, memória do sistema (por exemplo, RAM/ROM), e congêneres. Descrito no geral, aspectos da presente invenção direcionados ao ajuste do nível de de
Petição 870180166232, de 21/12/2018, pág. 12/35
11/23 sempenho da CPU 114 e de outros dispositivos consumidores de energia 116 para maximizar o uso da energia disponível.
[0021] Da forma ilustrada na figura 1, o sistema operacional 104 inclui uma rotina de gerenciamento de energia 110 que ajusta o nível de desempenho da CPU 114 e dos dispositivos consumidores de energia 116 para maximizar o período de tempo no qual o computador 100 pode desempenhar tarefas significativas. Entretanto, já que aspectos da rotina de gerenciamento de energia 110 são descritos com detalhes a seguir em relação a figura 2, uma descrição detalhada da rotina 110 não será aqui fornecida. Entretanto, descrito no geral, a rotina de gerenciamento de energia 110 monitora o valor da capacidade de energia que está disponível na fonte de alimentação 118. Se o nível de capacidade de energia cair abaixo de certos níveis limites, a rotina de gerenciamento de energia 110 identifica um estado de desempenho reduzido para certos dispositivos de hardware no computador 100. Então, o nível de desempenho dos dispositivos de hardware identificados e ajustado no estado de desempenho reduzido identificado. A medida que o nível de energia disponível para o computador 100 declina, os dispositivos de hardware são transicionados em estados de desempenho crescentemente mais reduzidos que são projetados para maximizar o período de tempo no qual o usuário pode realizar tarefas significativas no computador 100.
[0022] Versados na técnica percebem que o computador 100 representado na figura 1 é um exemplo altamente simplificado que inclui somente componentes que são usados na descrição de aspectos da presente invenção. Nas modalidades reais, o computador 100 terá componentes adicionais não ilustrados na figura 1. Além do mais, a arquitetura dos componentes ilustrados na figura 1 deve ser interpretada como exemplar, já que versados na técnica percebem que a presente invenção pode ser implementada em computadores que mantêm
Petição 870180166232, de 21/12/2018, pág. 13/35
12/23 diferentes arquiteturas de componente.
[0023] Agora, em relação à figura 2, uma rotina de gerenciamento de energia exemplar 110 supramencionada em resumo em relação à figura 1 será descrita com detalhes adicionais. Versados na técnica percebem que alguns dispositivos de hardware incluídos com computadores modernos são configurados para funcionar em diferentes níveis de desempenho e/ou para ter recursos que podem ser habilitados/desabilitados. Por exemplo, estados-D padronizados são usados para definir níveis de desempenho para alguns dispositivos de hardware. Em esquemas de gerenciamento de energia tradicionais, cada estado-D em que o dispositivo pode entrar pode ser mapeado em um estado de sistema. A rotina de gerenciamento de energia 110 pode usar dispositivos de hardware que são configurados para funcionar em diferentes níveis de desempenho, por exemplo, estados-D. Entretanto, diferente de esquemas de gerenciamento de energia tradicionais, a rotina de gerenciamento de energia 110 pode fazer com que dispositivos transicionem em um estado de desempenho que conserva mais energia no estado de dispositivo ativo D0 com base na quantidade de energia que está disponível para o computador. Como uma questão preliminar, antes de a rotina de gerenciamento de energia 110 ser executada, um sistema operacional instalado em um computador pode obter ou consultar automaticamente dispositivos para identificar suas capacidades de economia de energia. De acordo com uma modalidade, a rotina de gerenciamento de energia 110 usa a informação obtida por um sistema operacional para casar com as exigências de desempenho dos programas com as capacidades dos dispositivos de hardware conservar energia.
[0024] Da forma ilustrada na figura 2, a rotina de gerenciamento de energia 110 começa no bloco 180, onde a rotina 110 permanece ociosa até que uma aplicação seja carregada na memória do sistema.
Petição 870180166232, de 21/12/2018, pág. 14/35
13/23
Versados na técnica percebem que quando uma aplicação é programada para ser executada, o código do programa em um dispositivo de armazenamento (por exemplo, disco rígido) é carregado a partir do dispositivo de armazenamento na memória do sistema, onde o código de programa é facilmente acessível pela CPU. Entretanto, já que o carregamento do código de programa na memória do sistema é realizado usando sistemas existentes que, no geral, são conhecidos na tecnologia, descrição adicional destes sistemas não será aqui realizada.
[0025] No bloco 190, a rotina de gerenciamento de energia 110 consulta a aplicação que foi carregada na memória do sistema, no bloco 180, sobre informação de ajuste de exigências de hardware. Da forma descrita com detalhes adicionais a seguir, a rotina de gerenciamento de energia 110 pode fazer com que os dispositivos de hardware transicionem em diferentes estados de desempenho dependendo da quantidade de energia disponível em um computador. Mais especificamente, de acordo com uma modalidade, um dispositivo de hardware pode estar em um dos cinco diferentes estados de desempenho, incluindo um estado de desempenho completo e quatro estados de desempenho reduzidos, cada um dos quais conservando quantidades crescentemente maiores de energia. A informação de ajuste de exigências de hardware obtida a partir de uma aplicação descreve as exigências de hardware para a aplicação em cada um dos diferentes estados de desempenho disponíveis. Embora a rotina de gerenciamento de energia 110 descreva um sistema em que dispositivos podem estar em um dos cinco estados de desempenho, em modalidades alternativas, mais ou menos estados de desempenho podem ser implementados sem fugir do escopo do assunto em questão reivindicado.
[0026] No bloco de decisão 195, a rotina de gerenciamento de energia 110 espera até que ocorra um evento de disparo que ocasio
Petição 870180166232, de 21/12/2018, pág. 15/35
14/23 nara a determinação a ser feita, considerando se uma transição de estado de desempenho foi realizada. A título de exemplo somente, um sistema operacional pode ser configurado para emitir o evento de disparo em intervalos periódicos ou aleatoriamente. Além do mais, em uma outra modalidade, o sistema operacional é configurado para emitir um evento de disparo quando a capacidade de energia restante cair abaixo de certos valores limites. Como descrito com detalhes adicionais a seguir, a rotina de gerenciamento de energia 110 determina se uma transição de estado de desempenho será realizada em res posta ao evento de disparo que ocorre.
[0027] No bloco 200, um valor que representa a capacidade de energia restante disponível a um computador é obtido pela rotina de gerenciamento de energia 110. Versados na técnica percebem que sistemas existentes podem ser usados para identificar o valor da capacidade de energia restante que esta disponível em uma fonte de alimentação, no bloco 200. Por exemplo, computadores que se conformam à ACPI fornecem uma maneira padronizada para que um sistema operacional faça interface com uma plataforma de hardware e obtenha estes tipos de dados. Neste exemplo, a rotina de gerenciamento de energia 110 acessa uma tabela de outras estruturas de dados mantida por um sistema operacional para obter estes dados. Entretanto, versados na técnica percebem que outras técnicas podem ser usadas para obter um valor que representa a capacidade de energia restante, no bloco 200, e o exemplo aqui fornecido deve ser interpretado como exemplar e não limitante.
[0028] No bloco 202, a rotina de gerenciamento de energia 110 realiza uma comparação entre o valor que representa a capacidade de energia restante (obtida no bloco 200) com um conjunto de valores pré-determinados associados com diferentes estados de desempenho. Descrito no geral, à medida que a capacidade de energia disponível a
Petição 870180166232, de 21/12/2018, pág. 16/35
15/23 um computador diminui, a rotina de gerenciamento de energia 110 reduz o nível de desempenho de alguns dispositivos de hardware. De acordo com uma modalidade, o valor que representa a capacidade de energia restante é comparado com um conjunto de valores predeterminados, no bloco 202, para identificar um estado de desempenho para dispositivos no computador. A título de exemplo somente, se o valor da capacidade de energia disponível for menor do que oitenta por cento (80%) do máximo, a rotina de gerenciamento de energia 110 transiciona um conjunto de dispositivos consumidores de energia em um estado de desempenho reduzido. Entretanto, entende-se que os valores aqui descritos que estabelecem quando uma transição um estado de desempenho reduzido ocorrerá são exemplares.
[0029] No bloco de decisão 204, a rotina de gerenciamento de energia 110 determina se o valor da capacidade de energia restante disponível em uma fonte de alimentação é 80% ou mais. Como exposto, é realizada uma comparação no bloco 202 para identificar um estado de desempenho apropriado para dispositivos em um computador, dado o valor da capacidade de energia restante. No bloco 204, a rotina de gerenciamento de energia 110 determina se os resultados daquela comparação indicam que o valor da capacidade de energia restante é 80% ou mais. Da forma ilustrada na figura 2, se o valor da capacidade de energia restante for 80% ou mais, a rotina de gerenciamento de energia 110 prossegue até o bloco 206. Inversamente, se a quantidade restante de capacidade de energia for menor do que 80% do máximo, a rotina de gerenciamento de energia 110 prossegue até o bloco 208, descrito com detalhes adicionais a seguir.
[0030] No bloco 206, a rotina de gerenciamento de energia 110 permite que dispositivos de hardware em um computador implementem a presente invenção para funcionar em seu estado de desempenho mais alto. Em uma modalidade, quando a capacidade de energia
Petição 870180166232, de 21/12/2018, pág. 17/35
16/23 disponível for 80% ou mais, (1) um subsistema de exibição do computador fornece experiência visual mais rica ao usuário; (2) permite-se que dispositivos consumidores de energia, tais como memória, CPU, cartões de vídeo, dispositivos de armazenamento em massa, dispositivos de rede e congêneres realizem com todos seus recursos habilitados; e (3) permite-se que programas de aplicação, tais como protetores de tela, executem de acordo com seus ajustes definidos. Então, a rotina de gerenciamento de energia 110 prossegue até o bloco 223, descrito com detalhes a seguir.
[0031] No bloco de decisão 208, a rotina de gerenciamento de energia 110 determina se o valor da capacidade de energia restante disponível em uma fonte de alimentação é de 60% até 80 % do máximo. Como exposto, uma comparação é realizada no bloco 202 para identificar um estado de desempenho apropriado para dispositivos em um computador, dado o valor da capacidade de energia que é disponível. Da forma ilustrada na figura 2, se o valor da capacidade de energia restante for de 60% até 80% do máximo, a rotina de gerenciamento de energia 110 prossegue até o bloco 210. Inversamente, se o valor da capacidade de energia restante for menor do que 60% do máximo, a rotina de gerenciamento de energia 110 prossegue até o bloco 212, descrito com detalhes adicionais a seguir.
[0032] Da forma ilustrada adicionalmente na figura 2, no bloco 210, a rotina de gerenciamento de energia 110 faz com que certos dispositivos consumidores de energia em um computador que implementa a presente invenção transicionem para um primeiro estado de desempenho reduzido. O primeiro estado de desempenho reduzido é projetado para fornecer uma robusta experiência ao usuário, considerando uma quantidade menor do que o máximo de energia disponível. Em uma modalidade, quando a capacidade de energia disponível for de 60% até 80% do máximo, certos recursos avançados disponíveis
Petição 870180166232, de 21/12/2018, pág. 18/35
17/23 em um subsistema de exibição (por exemplo, placa de vídeo, monitor de computador, etc.) que podem ou não ser utilizados pelos programas de aplicação em um computador são redimensionados se os recursos não estiverem sendo atualmente usados. Por exemplo, de acordo com uma modalidade, certos recursos do subsistema, tais como, mas sem limitações, mapeamento de geometria, texturização em 64 bits, computação em 128 bits, renderização de cores em 32 bits, motor de renderização 3D e/ou múltiplos GPUs são reduzidos ao próximo estado de desempenho inferior disponível, no bloco 210, a menos que a aplicação exija o estado de desempenho mais alto do recurso. Como exposto, exigências de hardware utilizadas pelos programas de aplicação atualmente em execução são identificadas pela rotina de gerenciamento de energia 110 à medida que os programas são carregados na memória do sistema. Esta informação pode ser referenciada, no bloco 210, para identificar recursos de hardware que podem ser redimensionados no primeiro estado de desempenho reduzido. Além do mais, são implementadas outras medidas de conservação de energia, no bloco 210, que não são afetadas pelas exigências dos programas de aplicação atualmente em execução. Por exemplo, em uma modalidade, o brilho da luz de fundo de um monitor no subsistema de vídeo em 80% do máximo é feito no bloco 210. Nesta modalidade, outros dispositivos consumidores de energia, tais como memória, CPU, dispositivos de rede e congêneres, podem funcionar em um nível de desempenho completo. Entretanto, um dispositivo de armazenamento em massa (por exemplo, disco rígido) é colocado em um estado de recurso reduzido no qual o dispositivo de armazenamento em massa pode reduzir a velocidade de rotação do disco quando não estiver sendo usado. Então, a rotina de gerenciamento de energia 110 prossegue até o bloco 223, descrito com detalhes adicionais a seguir.
[0033] No bloco de decisão 212, a rotina de gerenciamento de
Petição 870180166232, de 21/12/2018, pág. 19/35
18/23 energia 110 determina se o valor da capacidade de energia restante disponível na fonte de alimentação está em 40% até 60% do máximo. Como exposto, é realizada uma comparação no bloco 202 para identificar um estado de desempenho apropriado para dispositivos em um computador, dado o valor da capacidade de energia que está disponível. Da forma ilustrada na figura 2, se o valor da capacidade de energia restante for de 40% até 60% do máximo, a rotina de gerenciamento de energia 110 prossegue até o bloco 214. Inversamente, se o valor da capacidade de energia restante for menor do que 40% do máximo, a rotina de gerenciamento de energia 110 prossegue até o bloco 216, descrito com detalhes adicionais a seguir.
[0034] No bloco 214, a rotina de gerenciamento de energia 110 faz com que os dispositivos de hardware em um computador que implementa a presente invenção transicione para um segundo estado de desempenho reduzido. Em uma modalidade, quando a capacidade de energia disponível for de 40% até 60% do máximo, recursos que podem estar disponíveis em um subsistema de exibição são redimensionados, mesmo em casos em que aqueles recursos estão sendo atualmente utilizados. Por exemplo, tarefas comuns de exibição do sistema são realizadas em 2D, precisão computacional é ajustada de 128 bits até 64 bits, texturização em 64 bits é reduzida para 32 bits, renderização de cor é reduzida de 32 bits para 24 bits, e a luz de fundo de um monitor é reduzida para 70% do brilho máximo. Permite-se que outros componentes do computador, tais como memória, CPU, dispositivos de rede e congêneres funcionem em um estado de desempenho completo. Entretanto, em uma modalidade, um dispositivo de armazenamento em massa é colocado em um estado de desempenho reduzido adicional, no qual uma sequência de reduções na velocidade do disco controlada por energia é realizada quando o dispositivo de armazenamento em massa for acessado.
Petição 870180166232, de 21/12/2018, pág. 20/35
19/23 [0035] No segundo estado de desempenho reduzido, a sincronia de quando uma aplicação fica ativa no computador pode influenciar decisões de gerenciamento de energia. Por exemplo, de acordo com uma modalidade, quando uma nova aplicação começar a executar enquanto o computador está no segundo estado de desempenho reduzido, a aplicação é apresentada com dispositivos de hardware desfigurados como os únicos dispositivos que estão disponíveis. A título de um outro exemplo, se a aplicação ativa em um computador for um protetor de tela, então, certos dispositivos consumidores de energia são colocados em um estado de desempenho reduzido. Em uma modalidade, quando o protetor de tela estiver ativo, uma CPU transiciona para os estados de desempenho P2 e C1. Então, a rotina de gerenciamento de energia 110 prossegue até o bloco 223, descrito com detalhes adicionais a seguir.
[0036] No bloco de decisão 216, a rotina de gerenciamento de energia 110 determina se o valor da capacidade de energia restante disponível em uma fonte de alimentação é de 20% até 40% do máximo. Como exposto, é realizada uma comparação no bloco 202 para identificar um estado de desempenho apropriado para dispositivos em um computador, dado o valor da capacidade de energia que está disponível. Da forma ilustrada na figura 2, se o valor da capacidade de energia restante for de 20% até 40% do máximo, a rotina de gerenciamento de energia 110 prossegue até o bloco 218. Inversamente, se o valor da capacidade de energia restante for menor do que 20%, a rotina de gerenciamento de energia 110 prossegue até o bloco 220, descrito com detalhes adicionais a seguir.
[0037] No bloco 218, a rotina de gerenciamento de energia 110 faz com que os dispositivos de hardware em um computador que implementa a presente invenção transicionem para um terceiro estado de desempenho reduzido. Quando a capacidade de energia disponível for
Petição 870180166232, de 21/12/2018, pág. 21/35
20/23 de 20% até 40% do máximo, recursos fornecidos pelos dispositivos de conservação de energia em um computador que implementa a presente invenção são reduzidos para satisfazer as exigências básicas dos programas de aplicação atualmente em execução.
[0038] De acordo com uma modalidade, a rotina de gerenciamento de energia 110 ajusta o nível de desempenho dos dispositivos consumidores de energia 116 (figura 1) para casar com as exigências básicas dos programas de aplicação atualmente em execução no bloco 218. Como exposto, exigências de hardware utilizadas pelos programas de aplicação atualmente em execução são identificadas pela rotina de gerenciamento de energia 110 à medida que os programas são carregados na memória do sistema. Esta informação pode ser referenciada, no bloco 218, para identificar as exigências básicas dos programas de aplicação atualmente em execução. Neste aspecto, uma aplicação 102 pode usar um dispositivo consumidor de energia para implementar a funcionalidade de programa. Entretanto, uma aplicação pode não exigir todos os recursos consumidores de energia do dispositivo. Neste caso, a rotina de gerenciamento de energia 110 casa os recursos de um dispositivo consumidor de energia com as exigências básicas da aplicação 102. Por exemplo, quando se entra no terceiro estado de desempenho reduzido, a rotina de gerenciamento de energia 110 pode acessar os dados do sistema para determinar os tipos de programas de aplicação que estão atualmente ativos no computador. Se nenhum dos programas de aplicação atualmente em execução exigirem certos recursos de renderização gráfica, por exemplo, se um usuário estiver executando somente programas com base em texto, tais como programas de processamento de texto, aplicações de bases de dados e congêneres, e não estiver executando um jogo com gráficos sofisticados, então, o subsistema de exibição do computador é colocado no modo somente texto.
Petição 870180166232, de 21/12/2018, pág. 22/35
21/23 [0039] Quando se entra no terceiro estado de desempenho reduzido, o desempenho ou o estado do dispositivo (por exemplo, estadoD) são redimensionados adicionalmente. Por exemplo, de acordo com uma modalidade, a memória do sistema é colocada em um modo de auto-atualização e o desempenho dos dispositivos de rede são reduzidos se uma diminuição no usa de energia acompanhar a redução no desempenho. Além do mais, dispositivos de armazenamento em massa são solicitados para operar em velocidade reduzida, por exemplo, uma velocidade de operação de disco rígido do computador pode ser reduzida de 7.200 para 5.400 revoluções por minuto. Então, a rotina de gerenciamento de energia 110 prossegue até o bloco 223, descrito com detalhes adicionais a seguir.
[0040] No bloco de decisão 220, a rotina de gerenciamento de energia 110 determina se o valor da capacidade de energia restante disponível de uma fonte de alimentação está menor do que 20% do máximo. Como exposto, é realizada uma comparação, no bloco 202, para identificar um nível de desempenho apropriado para dispositivos de hardware em um computador, dado o valor da capacidade de energia que está disponível. Da forma ilustrada na figura 2, se o valor da capacidade de energia restante for menor do que 20% do máximo, a rotina de gerenciamento de conservação de energia 110 prossegue até o bloco 222. Inversamente, se a capacidade de energia restante estiver em níveis críticos que podem ser ajustados em um valor arbitrário, o sistema operacional insere uma estratégia de saída que está Além do escopo da presente invenção. Neste caso, a rotina de gerenciamento de energia 110 pode retroceder até o bloco 195 e esperar que um evento de disparo ocorra.
[0041] Da forma ilustrada com mais detalhes na figura 2, no bloco 222, a rotina de gerenciamento de energia 110 faz com que dispositivos de hardware em um computador que implementa a presente in
Petição 870180166232, de 21/12/2018, pág. 23/35
22/23 venção transicione para um quarto estado de desempenho reduzido. O quarto estado de desempenho reduzido é projetado para fornecer recursos que permitem que um usuário realize tarefas significativas, conservando energia de forma agressiva. Em uma modalidade, quando a capacidade de energia disponível for menor do que 20% do máximo, certos recursos disponíveis em um subsistema de exibição não são mais usados. Por exemplo, o uso de memória de vídeo de alto desempenho disponível em uma placa de vídeo é descontinuado em favor da memória de servidor de baixo desempenho. Além do mais, de acordo com uma modalidade, o número de canalizações ou canais de comunicação usados por uma placa de vídeo é reduzido para um número que é exigido para suportar as exigências mínimas da aplicação atual.
[0042] Quando um computador estiver no quarto estado de desempenho reduzido, o uso de outros dispositivos consumidores de energia no exterior do subsistema de vídeo são redimensionados adicionalmente ou descontinuados, no geral. Por exemplo, de acordo com uma modalidade, o estado de desempenho da CPU é reduzido de P0 ate P2, independente da aplicação atual que está em execução. Também, a quantidade de memória do sistema que está disponível é reduzida até a quantidade mínima exigida para suportar a aplicação atual. Dispositivos de rede que não estão atualmente conectados no computador são desabilitados para que uma busca pelo dispositivo não tenha sido realizada. Além do mais, todos os dispositivos consumidores de energia que não estão sendo atualmente utilizados são transacionados para o estado de dispositivo mais baixo disponível (por exemplo, D3'j, a menos que necessário por uma aplicação ou usuário. Dispositivos anexados que podem ser removidos ou substituídos durante a operação, tais como uma unidade USB ou FireWire, são colocados em um estado suspenso até que ocorra uma interrupção que
Petição 870180166232, de 21/12/2018, pág. 24/35
23/23 indica que o dispositivo que pode ser removido ou substituído durante a operação é necessário. Então, a rotina de gerenciamento de energia 110 prossegue até o bloco 223.
[0043] Da forma ilustrada na figura 2, no bloco de decisão 223, a rotina de gerenciamento de energia 110 determina se a aplicação que foi carregada na memória do sistema no bloco 180 saiu. De acordo com uma modalidade, a rotina de gerenciamento de energia 110 é usada para regular a energia consumida por cada aplicação que está ativa em um computador. Quando uma aplicação sai e/ou, de outra forma, não é representada como um processo no computador, a rotina de gerenciamento de energia 110 termina em relação ao programa que sal. Neste aspecto, a rotina de gerenciamento de energia 110 prossegue até o bloco 224, onde ela termina. Inversamente, se a aplicação carregada na memória do sistema no bloco 180 não saiu, a rotina de gerenciamento de energia 110 retrocede para o bloco 195, e os blocos 195 até 222 são repetidos até que o programa saia.
[0044] Embora exemplos específicos dos recursos de conservação de energia e das transições até os estados de desempenho reduzidos com base em uma fonte de alimentação disponível tenham sido descritos em relação à figura 2, esta modalidade deve ser interpretada como exemplar e não limitante. Por exemplo, a rotina de gerenciamento de energia 110 é descrita anteriormente com quatro estados de desempenho reduzidos. Entretanto, em outras modalidades, a rotina de gerenciamento de energia 110 pode ter estados de desempenho adicionais ou menos estados de desempenho, sem fugir do escopo do assunto em questão reivindicado.
[0045] Embora modalidades ilustrativas tenham sido ilustradas como descrito, percebe-se que várias mudanças podem ser feitas.
[0046] As modalidades da invenção nas quais uma propriedade ou privilégio exclusivos são reivindicados, são definidas como segue.

Claims (12)

  1. REIVINDICAÇÕES
    1. Método implementado por computador, em um computador com um sistema operacional que gerencia dispositivos consumidores de energia no computador, para conservar o consumo de energia com base na quantidade de energia disponível para o computador, caracterizado pelo fato de que compreende as etapas de:
    (a) obter, para uma aplicação ativa no computador, uma informação de conjunto de exigências de hardware que descreve as exigências de hardware para a aplicação em um estado de desempenho reduzido;
    (b) identificar a quantidade atual de energia disponível para o computador;
    (c) determinar se a quantidade atual de energia disponível para o computador corresponde com o estado de desempenho reduzido; e (d) se a quantidade de energia atual corresponder com o estado de desempenho reduzido, modificar a configuração dos dispositivos consumidores de energia para colocar o computador no estado de desempenho reduzido.
  2. 2. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que ainda compreende, se a quantidade atual de energia não corresponder com um estado de desempenho reduzido, permitir que os dispositivos consumidores de energia funcionem em um nível de desempenho completo.
  3. 3. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o sistema operacional implementa um esquema de conservação de energia existente que faz com que o computador transicione entre diferentes estados de sistema com base na ociosidade do computador; e
    Petição 870180166232, de 21/12/2018, pág. 26/35
    2/4 em que a configuração dos dispositivos consumidores de energia é modificada para conservar energia quando o computador estiver no estado de sistema ativo.
  4. 4. Método, de acordo com a reivindicação 3, caracterizado pelo fato de que o esquema de conservação de energia existente usa uma Interface de Configuração Avançada e de Energia para facilitar a comunicação entre os dispositivos consumidores de energia e o sistema operacional; e em que a mudança da configuração dos dispositivos consumidores de energia para colocar o computador no estado de desempenho reduzido inclui usar a Interface de Configuração Avançada e de Energia para colocar um dispositivo consumidor de energia em um estado de hibernação de dispositivo.
  5. 5. Método, de acordo com a reivindicação 4, caracterizado pelo fato de que identificar a quantidade atual de energia disponível para o computador inclui realizar uma busca em uma estrutura de dados que é obtida usando a Interface de Configuração Avançada e de Energia.
  6. 6. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que determinar se a quantidade atual de energia disponível para o computador corresponde com um estado de desempenho reduzido inclui realizar uma comparação entre um valor que representa a quantidade de energia disponível para o computador e valores limites que estão associados com diferentes estados de desempenho reduzidos.
  7. 7. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que mudar a configuração dos dispositivos consumidores de energia para colocar o computador no estado de desempenho reduzido inclui as etapas de:
    Petição 870180166232, de 21/12/2018, pág. 27/35
    3/4 (a) identificar as exigências de uma aplicação que esteja ativa atualmente no computador; e (b) modificar os recursos fornecidos pelos dispositivos consumidores de energia para satisfazer as informações de conjunto de exigências de hardware da aplicação.
  8. 8. Método, de acordo com a reivindicação 7, caracterizado pelo fato de que identificar as exigências de uma aplicação que está atualmente ativa em um computador inclui obter as informações de conjunto de exigências de hardware que descrevem as exigências de hardware para a aplicação nos diferentes estados de desempenho disponíveis; e em que mudar os recursos fornecidos pelos dispositivos consumidores de energia para satisfazer as informações de conjunto de exigências de hardware da aplicação inclui desfigurar as capacidades do dispositivo consumidor de energia.
  9. 9. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que mudar a configuração dos dispositivos consumidores de energia inclui identificar e desativar recursos fornecidos pelos dispositivos consumidores de energia que não são atualmente utilizados.
  10. 10. Mídia de armazenamento legível por computador compreendendo um método executável por computador que, quando executado em um computador que inclui uma fonte de alimentação, dispositivos consumidores de energia e um sistema operacional, estende o período de tempo no qual um usuário pode interagir com uma aplicação no computador, o método caracterizado pelo fato de que compreende as etapas de:
    (a) obter, para a aplicação, informações de conjunto de exigências de hardware que descrevem as exigências de hardware para a aplicação em um estado de desempenho reduzido;
    Petição 870180166232, de 21/12/2018, pág. 28/35
    4/4 (b) identificar a quantidade de energia disponível atual da fonte de alimentação para o computador;
    (c) identificar um estado de desempenho apropriado para os dispositivos consumidores de energia com base na quantidade de energia que está disponível da fonte de alimentação; e (d) em resposta à determinação de que a quantidade de energia disponível está abaixo de um valor limite que corresponde com o estado de desempenho reduzido, modificar a configuração dos dispositivos consumidores de potência para atender as exigências de hardware descritas pelas informações de conjuntos de exigências de hardware de modo que o computador opere em um estado de desempenho reduzido.
  11. 11. Mídia de armazenamento legível por computador, de acordo com a reivindicação 10, caracterizada pelo fato de que um esquema de conservação de energia existente é implementado no computador que suporta diferentes estados de sistema; e em que a configuração dos dispositivos consumidores de energia é mudada para conservar energia quando o computador estiver no estado de sistema ativo.
  12. 12. Mídia legível por computador, de acordo com a reivindicação 11, caracterizada pelo fato de que o esquema de conservação de energia existente usa a Interface de Configuração Avançada e de Energia para facilitar a comunicação entre os dispositivos consumidores de energia e o sistema operacional; e em que a mudança na configuração dos dispositivos consumidores de energia inclui usar a Interface de Configuração Avançada e de Energia para colocar um ou mais dos dispositivos consumidores de energia em um estado de hibernação de dispositivo.
BRPI0708901-5A 2006-03-16 2007-03-08 Método implementado por computador para conservar o consumo de energia com base na quantidade de energia disponível e mídia de armazenamento legível por computador BRPI0708901B1 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/376,922 US7484110B2 (en) 2006-03-16 2006-03-16 Adaptive power management
US11/376.922 2006-03-16
PCT/US2007/005763 WO2007108934A1 (en) 2006-03-16 2007-03-08 Adaptive power management

Publications (3)

Publication Number Publication Date
BRPI0708901A2 BRPI0708901A2 (pt) 2011-06-14
BRPI0708901A8 BRPI0708901A8 (pt) 2018-06-12
BRPI0708901B1 true BRPI0708901B1 (pt) 2019-03-19

Family

ID=38519358

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI0708901-5A BRPI0708901B1 (pt) 2006-03-16 2007-03-08 Método implementado por computador para conservar o consumo de energia com base na quantidade de energia disponível e mídia de armazenamento legível por computador

Country Status (13)

Country Link
US (1) US7484110B2 (pt)
EP (1) EP1999542A4 (pt)
JP (3) JP4621290B2 (pt)
KR (1) KR101429299B1 (pt)
CN (1) CN101405677B (pt)
AU (1) AU2007227679B2 (pt)
BR (1) BRPI0708901B1 (pt)
CA (1) CA2644598A1 (pt)
MX (1) MX2008011653A (pt)
MY (1) MY146970A (pt)
NO (1) NO20083692L (pt)
RU (1) RU2436144C2 (pt)
WO (1) WO2007108934A1 (pt)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006129138A1 (en) * 2005-06-03 2006-12-07 Chan Kam-Fu Method of connecting hard disk
US8284205B2 (en) 2007-10-24 2012-10-09 Apple Inc. Methods and apparatuses for load balancing between multiple processing units
US8948822B2 (en) * 2008-04-23 2015-02-03 Qualcomm Incorporated Coordinating power management functions in a multi-media device
US8908763B2 (en) * 2008-06-25 2014-12-09 Qualcomm Incorporated Fragmented reference in temporal compression for video coding
US8138627B2 (en) * 2008-06-27 2012-03-20 Sharp Laboratories Of America, Inc. Power management of network-connected devices in peak power periods
US8964828B2 (en) * 2008-08-19 2015-02-24 Qualcomm Incorporated Power and computational load management techniques in video processing
US8948270B2 (en) * 2008-08-19 2015-02-03 Qualcomm Incorporated Power and computational load management techniques in video processing
US9213348B2 (en) 2009-01-16 2015-12-15 Broadcom Corporation Method and system for utilizing a broadband gateway for peer to peer communications
JP2010200589A (ja) * 2009-02-27 2010-09-09 Toshiba Corp 電力制御装置および方法
TW201042449A (en) * 2009-05-19 2010-12-01 Inventec Corp Method for accessing storage unit
JP2011008343A (ja) * 2009-06-23 2011-01-13 Toshiba Corp 電子機器
US20110099394A1 (en) * 2009-10-22 2011-04-28 International Business Machines Corporation Power management in a data processing apparatus
US8700926B2 (en) * 2010-01-11 2014-04-15 Qualcomm Incorporated System and method of tuning a dynamic clock and voltage switching algorithm based on workload requests
US8370665B2 (en) * 2010-01-11 2013-02-05 Qualcomm Incorporated System and method of sampling data within a central processing unit
US8381002B2 (en) 2010-06-23 2013-02-19 International Business Machines Corporation Transparently increasing power savings in a power management environment
US8643656B2 (en) * 2010-09-30 2014-02-04 Nec Laboratories America, Inc. Energy-aware task consolidation on graphics processing unit (GPU)
US8448006B2 (en) 2010-10-19 2013-05-21 International Business Machines Corporation Performing virtual and/or physical resource management for power management
KR101146383B1 (ko) * 2010-11-22 2012-05-17 숭실대학교산학협력단 배터리 전력 제어 장치, 휴대 기기 및 이의 제어 방법
EP2458501A1 (en) 2010-11-30 2012-05-30 France Telecom Method of operating a communication device and related communication device
JP5640832B2 (ja) * 2011-03-10 2014-12-17 ソニー株式会社 制御装置、制御方法および実行装置
US9465427B2 (en) 2011-06-30 2016-10-11 International Business Machines Corporation Software-centric power management by indirectly determining that user is not actively using computer program running on computing device
JP5729197B2 (ja) * 2011-07-28 2015-06-03 富士通株式会社 情報処理装置、情報処理プログラムおよび情報処理方法
CN103890693B (zh) 2011-10-28 2017-01-18 惠普发展公司,有限责任合伙企业 基于参数报告更新的阈值基准
US9064253B2 (en) 2011-12-01 2015-06-23 Broadcom Corporation Systems and methods for providing NFC secure application support in battery on and battery off modes
CN104204830B (zh) * 2012-01-19 2018-03-09 耐克创新有限合伙公司 活动监测装置和它的电源管理方法
US11073959B2 (en) * 2012-06-08 2021-07-27 Apple Inc. Simulating physical materials and light interaction in a user interface of a resource-constrained device
RU2538289C2 (ru) * 2012-11-30 2015-01-10 Закрытое акционерное общество "РСК Технологии" Способ оценки энергопотребления вычислителя
CN104937551B (zh) * 2013-02-28 2019-06-04 英特尔公司 用于管理设备中的功率的计算机实现的方法和用于管理设备中的功率的系统
RU2552177C2 (ru) * 2013-08-01 2015-06-10 Корпорация "САМСУНГ ЭЛЕКТРОНИКС Ко., Лтд." Способ оценки влияния работы приложений и их функций на энергопотребление во встраиваемых системах
KR101849369B1 (ko) * 2013-12-09 2018-06-01 한국전자통신연구원 부하 특성에 따른 시스템 전력 캐핑 장치
RU2653306C1 (ru) * 2014-03-20 2018-05-07 Интел Корпорейшн Способ, устройство и система для управления потреблением энергии неиспользуемым аппаратным средством канального интерфейса
ES2953733T3 (es) * 2015-04-14 2023-11-15 Huawei Tech Co Ltd Método y aparato de control de terminal, y terminal
US10365705B2 (en) * 2016-12-15 2019-07-30 Dell Products L.P. System and methods for prioritized multi-node server and infrastructure availability during power capacity loss
TWI659297B (zh) * 2017-12-07 2019-05-11 技嘉科技股份有限公司 系統電源管理方法及計算機系統
US11129103B2 (en) * 2018-03-15 2021-09-21 Qualcomm Incorporated Skipping periodic measurements to enable power saving in user equipments
KR102725203B1 (ko) 2018-09-11 2024-11-04 에스케이하이닉스 주식회사 데이터 처리 시스템 및 그의 동작방법
US11262825B2 (en) * 2018-11-02 2022-03-01 Hewlett-Packard Development Company, L.P. Power supply identification
CN112543375B (zh) * 2019-09-20 2024-08-20 Vidaa(荷兰)国际控股有限公司 一种电视耗能管理方法及相关设备
US11237611B2 (en) * 2020-05-08 2022-02-01 Dell Products L.P. Systems and methods for determining real-time workload power supply units and enhanced redundancy reporting
US12476462B2 (en) * 2022-01-27 2025-11-18 Intel Corporation Platform configuration based on availability of sustainable energy

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5339445A (en) * 1992-11-16 1994-08-16 Harris Corporation Method of autonomously reducing power consumption in a computer sytem by compiling a history of power consumption
JP2858542B2 (ja) * 1994-06-03 1999-02-17 インターナショナル・ビジネス・マシーンズ・コーポレイション コンピュータ用ディスク・ドライブの電力消費を節減する方法及び装置
JPH08161088A (ja) * 1994-12-02 1996-06-21 Olympus Optical Co Ltd 情報処理装置
EP0727728A1 (en) * 1995-02-15 1996-08-21 International Business Machines Corporation Computer system power management
JPH08234872A (ja) * 1995-02-23 1996-09-13 Fuji Xerox Co Ltd 情報処理装置
JPH11161385A (ja) * 1997-11-28 1999-06-18 Toshiba Corp コンピュータシステムおよびそのシステムステート制御方法
JP2002505479A (ja) 1998-02-26 2002-02-19 サン・マイクロシステムズ・インコーポレーテッド 共有メモリースペースのためのインタラクティブ設計ツール
JP4338842B2 (ja) * 1998-09-18 2009-10-07 パナソニック株式会社 電力制御装置、電力制御方法、及び記録媒体
JP2000214963A (ja) * 1999-01-25 2000-08-04 Toshiba Corp コンピュ―タシステムおよび設定情報の自動設定方法
JP4230585B2 (ja) * 1999-01-28 2009-02-25 株式会社東芝 コンピュータシステムおよび省電力制御方法
JP3064314U (ja) * 1999-04-20 2000-01-14 株式会社ハドソン バッテリ搭載装置
US6684341B1 (en) * 2000-03-09 2004-01-27 International Business Machines Corporation Method of altering the appearance of an icon of a program to provide an indication to a user that a power management is associated with the particular program
JP2001331242A (ja) * 2000-05-22 2001-11-30 Hitachi Ltd 情報処理装置及びその消費電力制御方法
KR100371181B1 (ko) * 2000-11-28 2003-02-06 엘지전자 주식회사 휴대용 기기의 절전방법
JP2002374349A (ja) * 2001-06-15 2002-12-26 Hitachi Ltd 情報端末電源管理方式
US6851781B2 (en) * 2002-02-20 2005-02-08 Seiko Epson Corporation Printing apparatus controlling method, printing apparatus controlling program, recording medium for storing printing apparatus controlling program and printing system
US6710578B1 (en) * 2002-08-27 2004-03-23 Motorola, Inc. Power resource management in a portable communication device
US20040158878A1 (en) * 2003-02-07 2004-08-12 Viresh Ratnakar Power scalable digital video decoding
RU2232138C1 (ru) * 2003-05-12 2004-07-10 Общество с ограниченной ответственностью "Стеклотермохим" Способ получения высокотемпературного фильтрующего материала (варианты)
US7353413B2 (en) * 2003-08-18 2008-04-01 Intel Corporation Computer system power policy adjustment in response to an affirmative indication from a user
JP4230463B2 (ja) * 2003-09-03 2009-02-25 シャープ株式会社 制御装置、通信装置、通信機器、電子装置、および情報処理装置
WO2005037388A1 (ja) * 2003-10-21 2005-04-28 Sony Computer Entertainment Inc. 電子装置
US7197651B2 (en) * 2003-10-30 2007-03-27 Intel Corporation Power mode calibration for add-on cards on mobile platforms
KR20050057822A (ko) 2003-12-11 2005-06-16 에스케이씨앤씨 주식회사 Xml을 이용한 gui 구현방법
KR100609240B1 (ko) 2003-12-19 2006-08-04 한국전자통신연구원 Mof 메타 모델과 사용자 요구 사항에 기반한 다이어그램 모델링 도구 생성 장치 및 방법
US20050206345A1 (en) * 2004-03-18 2005-09-22 Arif Maskatia Power management method for an electronic apparatus
US7565562B2 (en) * 2004-09-03 2009-07-21 Intel Corporation Context based power management
KR100663864B1 (ko) * 2005-06-16 2007-01-03 엘지전자 주식회사 멀티-코어 프로세서의 프로세서 모드 제어장치 및 방법

Also Published As

Publication number Publication date
KR20080111454A (ko) 2008-12-23
NO20083692L (no) 2008-09-09
MY146970A (en) 2012-10-15
JP5647721B2 (ja) 2015-01-07
MX2008011653A (es) 2008-09-22
JP5647460B2 (ja) 2014-12-24
RU2436144C2 (ru) 2011-12-10
JP2011023020A (ja) 2011-02-03
CN101405677A (zh) 2009-04-08
US20070220291A1 (en) 2007-09-20
US7484110B2 (en) 2009-01-27
WO2007108934A1 (en) 2007-09-27
AU2007227679A1 (en) 2007-09-27
BRPI0708901A8 (pt) 2018-06-12
JP4621290B2 (ja) 2011-01-26
JP2014038644A (ja) 2014-02-27
KR101429299B1 (ko) 2014-08-12
JP2009530709A (ja) 2009-08-27
EP1999542A1 (en) 2008-12-10
BRPI0708901A2 (pt) 2011-06-14
AU2007227679B2 (en) 2011-09-01
CN101405677B (zh) 2013-07-10
CA2644598A1 (en) 2007-09-27
RU2008137077A (ru) 2010-03-20
EP1999542A4 (en) 2013-01-09

Similar Documents

Publication Publication Date Title
BRPI0708901B1 (pt) Método implementado por computador para conservar o consumo de energia com base na quantidade de energia disponível e mídia de armazenamento legível por computador
EP2207092B1 (en) Software-based thread remapping for power savings
US9098274B2 (en) Methods and apparatuses to improve turbo performance for events handling
US9495001B2 (en) Forcing core low power states in a processor
US8527785B2 (en) Transitioning a computing platform to a low power system state
US9256271B2 (en) Predictive power management based on user category
CN111886562A (zh) 用于处理器的优化节流的系统、装置和方法
US20090320031A1 (en) Power state-aware thread scheduling mechanism
BRPI0907774B1 (pt) Programação de encadeamento ciente de energia e uso dinâmico de processadores
CN104508594A (zh) 在处理器中配置功率管理功能
US20140281610A1 (en) Exploiting process variation in a multicore processor
US10860085B2 (en) Modified sleep state graphics processing system
US8959371B2 (en) Techniques for reducing processor power consumption through dynamic processor resource allocation
CN105807887B (zh) CPU和SoC桥片构架的节能型系统、处理装置及方法

Legal Events

Date Code Title Description
B25A Requested transfer of rights approved

Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC (US)

B06T Formal requirements before examination [chapter 6.20 patent gazette]
B07A Application suspended after technical examination (opinion) [chapter 7.1 patent gazette]
B15K Others concerning applications: alteration of classification

Ipc: G06F 1/32 (2006.01)

B07A Application suspended after technical examination (opinion) [chapter 7.1 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

Free format text: PRAZO DE VALIDADE: 10 (DEZ) ANOS CONTADOS A PARTIR DE 19/03/2019, OBSERVADAS AS CONDICOES LEGAIS.

B21F Lapse acc. art. 78, item iv - on non-payment of the annual fees in time

Free format text: REFERENTE A 19A ANUIDADE.