[go: up one dir, main page]

BRPI0808226B1 - computer system and method for debugging system memory - Google Patents

computer system and method for debugging system memory Download PDF

Info

Publication number
BRPI0808226B1
BRPI0808226B1 BRPI0808226A BRPI0808226A BRPI0808226B1 BR PI0808226 B1 BRPI0808226 B1 BR PI0808226B1 BR PI0808226 A BRPI0808226 A BR PI0808226A BR PI0808226 A BRPI0808226 A BR PI0808226A BR PI0808226 B1 BRPI0808226 B1 BR PI0808226B1
Authority
BR
Brazil
Prior art keywords
memory
debug
bios
mor
bit
Prior art date
Application number
BRPI0808226A
Other languages
Portuguese (pt)
Inventor
B Hobson Louis
Novoa Manuel
Mohamad Ibrahim Wael
Original Assignee
Hewlett Packard Development Co
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 Hewlett Packard Development Co filed Critical Hewlett Packard Development Co
Publication of BRPI0808226A2 publication Critical patent/BRPI0808226A2/en
Publication of BRPI0808226B1 publication Critical patent/BRPI0808226B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/572Secure firmware programming, e.g. of basic input output system [BIOS]
    • 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/4401Bootstrapping
    • G06F9/442Shutdown
    • 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/445Program loading or initiating
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2143Clearing memory, e.g. to prevent the data from being stolen

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Stored Programmes (AREA)
  • Power Sources (AREA)
  • Storage Device Security (AREA)
  • Debugging And Monitoring (AREA)

Abstract

sistema de computador e método para depurar uma memória de sistema. um sistema de computador (100) é provido, o sistema de computador (100) tendo um processador (104) e uma memória de sistema (108) acoplada ao processador (104). o sistema de computador ( 100) também inclui um sistema básico de entrada/saída (bios) (130) em comunicação com o processador ( 104) . o bios ( 130) depura seletivamente a 10 memória de sistema ( 108) durante um processo de desligamento do sistema de computador (100).computer system and method for debugging system memory. a computer system (100) is provided, the computer system (100) having a processor (104) and a system memory (108) coupled to the processor (104). computer system (100) also includes a basic input / output system (bios) (130) in communication with processor (104). bios (130) selectively debug system memory (108) during a computer system shutdown process (100).

Description

SISTEMA DE COMPUTADOR E MÉTODO PARA DEPURAR UMA MEMÓRIA DE SISTEMA.COMPUTER SYSTEM AND METHOD FOR PURING A SYSTEM MEMORY.

O Grupo de Computação Confiável (TCG) especificou o conceito de um bit de depuração de memória (MOR) . Se o 5 bit MOR for definido, um Sistema Básico de Entrada/Saida de dados (BIOS) executa uma depuração da memória durante um processo de boot para garantir que os segredos armazenados na memória do sistema sejam apagados antes de serem expostos.The Trustworthy Computing Group (TCG) specified the concept of a memory debug bit (MOR). If the 5 bit MOR is set, a Basic Data Entry / Exit System (BIOS) performs a memory debugging during a boot process to ensure that the secrets stored in the system's memory are erased before being exposed.

Embora o bit MOR possa ser usado para evitar que ataques (p.ex., ataques de religação ou de ciclagem de energia) sejam efetivos, algumas implementações existentes carecem de sofisticação. Por exemplo, alguns sistemas de computador mantêm o bit MOR em uma condição ativada, o que faz o BIOS executar desnecessariamente uma depuração da memória durante cada processo de boot. Também, cada depuração da memória causa um atraso no processo de boot, o que pode fazer um usuário acreditar que o sistema do computador esteja pendurado.Although the MOR bit can be used to prevent attacks (eg, reconnection or power cycling attacks) from being effective, some existing implementations lack sophistication. For example, some computer systems keep the MOR bit in an activated condition, which causes the BIOS to unnecessarily debug the memory during each boot process. Also, each debugging of memory causes a delay in the boot process, which can make a user believe that the computer system is hanging.

Descrição resumida dos desenhosBrief description of the drawings

Para uma descrição detalhada de configurações exemplares da invenção, referência será feita agora aos desenhos anexos nos quais:For a detailed description of exemplary configurations of the invention, reference will now be made to the attached drawings in which:

A figura 1 ilustra um sistema de acordo com configurações;Figure 1 illustrates a system according to configurations;

A figura 2 ilustra acesso e uso de um bit de depuração de memória (MOR) de acordo com configurações;Figure 2 illustrates access and use of a memory debug (MOR) bit according to configurations;

A figura 3 ilustra um método de acordo com configurações;Figure 3 illustrates a method according to configurations;

A figura 4 ilustra um outro método de acordo com 30 configurações; eFigure 4 illustrates another method according to 30 configurations; and

A figura 5 ilustra ainda um outro método de acordo com configurações.Figure 5 illustrates yet another method according to configurations.

Notação e nomenclaturaNotation and nomenclature

Certos termos são usados através de toda a descrição e 35 reivindicações seguintes para se referir a particulares componentes do sistema. Como alguém experiente na técnica apreciaria, as companhias de computadores podem se referir a um componente por nomes diferentes. Este documento não pretende distinguir entre componentes que diferem de nome mas não de função. Na discussão seguinte e nas reivindicações, os termos incluindo e compreendendo são usados de devem ser interpretados limitado a.... Também, o termo um modo ilimitado, e portanto mas não acopla é intencionado a conexão elétrica indireta, a significar incluindo, acoplar ou significar qualquer de uma direta, ótica ou sem fio.Certain terms are used throughout the description and the following 35 claims to refer to particular components of the system. As someone skilled in the art would appreciate, computer companies may refer to a component by different names. This document is not intended to distinguish between components that differ in name but not in function. In the following discussion and in the claims, the terms including and comprising are used and should be interpreted limited to .... Also, the term an unlimited way, and therefore but not coupled is intended to mean an indirect electrical connection, meaning including, coupling or mean any of a direct, optical or wireless.

dispositivo sedevice if

Portanto, se um primeiro dispositivo, aquela conexão elétrica direta, por uma via outros dispositivos e acopla a um segundo conexão indireta pode ser conexão por uma elétrica conexões, por uma conexão elétrica ótica, ou por uma conexão elétrica sem fio.Therefore, if a first device, that direct electrical connection, via other devices and attaches to a second indirect connection can be connected by an electrical connection, by an optical electrical connection, or by a wireless electrical connection.

Descrição detalhadaDetailed Description

A discussão seguinte é dirigida a várias configurações da invenção. Embora uma ou mais destas configurações possam ser preferidas, as configurações divulgadas não devem ser interpretadas, ou de outra forma usadas, como limitando o escopo da divulgação, incluindo as reivindicações. Em adição, alguém experiente na técnica compreenderá que a descrição seguinte tem ampla aplicação, e a discussão de qualquer configuração é pretendida a ser somente exemplar daquela configuração, e não intencionada a sugerir que o escopo da divulgação, incluindo as reivindicações, está limitado àquela configuração.The following discussion is directed to various configurations of the invention. Although one or more of these configurations may be preferred, the disclosed configurations should not be interpreted, or otherwise used, as limiting the scope of the disclosure, including the claims. In addition, someone skilled in the art will understand that the following description has broad application, and the discussion of any configuration is intended to be only exemplary of that configuration, and not intended to suggest that the scope of the disclosure, including the claims, is limited to that configuration .

Configurações permitem depurações de memória serem executadas seletivamente durante um processo de desligamento ou um processo de boot. O processo de desligamento pode ser parte de um desligamento, um reinicio, ou de um processo de hibernação. A depuração de memória pode ser baseada em um bit de depuração de memória (MOR) ou um outro mecanismo de controle. Se a depuração de memória for executada durante um processo de desligamento, o bit MOR é anulado tal que o Sistema Básico de Entrada/Saida (BIOS) não execute uma outra depuração de memória durante o processo de boot subsequente. Em pelo menos algumas configurações, um indicador de depuração de memória é provido tal que um usuário fique ciente que uma depuração de memória está sendo executada.Settings allow memory debugging to be performed selectively during a shutdown process or a boot process. The shutdown process can be part of a shutdown, a restart, or a hibernation process. Debugging memory can be based on a debugging memory bit (MOR) or another control mechanism. If the memory debugging is performed during a shutdown process, the MOR bit is cleared such that the Basic Input / Output System (BIOS) does not perform another memory debugging during the subsequent boot process. In at least some configurations, a memory debug indicator is provided such that a user is aware that a memory debug is being performed.

A figura 1 ilustra um sistema 100 de acordo com configurações. O sistema 100 compreende um computador 102 tendo um processador 104 acoplado a uma memória de sistema 108, a qual pode ser Memória de Acesso Randômico (RAM) . A memória de sistema 108 tem pelo menos uma área confidencial 110 que é usada para armazenar segredos tais como senhas, chaves de criptografia ou outras informações sensíveis. A área confidencial 110 pode ser fixa ou variável dentro da memória de sistema 108. Em pelo menos algumas configurações, uma ponte hospedeira (algumas vezes referidas como ponte Norte) 106 é colocada entre o processador 104 e a memória de sistema 108. Em configurações alternativas, um módulo de ponte explícito entre o processador 104 e a memória de sistema 108 não é necessário.Figure 1 illustrates a system 100 according to configurations. System 100 comprises a computer 102 having a processor 104 coupled to system memory 108, which may be Random Access Memory (RAM). System memory 108 has at least one confidential area 110 which is used to store secrets such as passwords, encryption keys or other sensitive information. Confidential area 110 can be fixed or variable within system memory 108. In at least some configurations, a host bridge (sometimes referred to as the North bridge) 106 is placed between processor 104 and system memory 108. In alternative configurations , an explicit bridge module between processor 104 and system memory 108 is not required.

Como mostrado, uma ponte de entrada/saída (I/O) (algumas vezes referida como uma ponte Sul) 112 acopla vários componentes na ponte hospedeira 106. Em pelo menos algumas configurações, um display 118 e um indicador de depuração de memória 120 se acoplam à ponte I/O 112.As shown, an input / output (I / O) bridge (sometimes referred to as a South bridge) 112 couples several components to the host bridge 106. In at least some configurations, a display 118 and a memory debug indicator 120 if connect to the 112 I / O bridge.

O display 118 pode compreender um display de cristal líquido (LCD) ou um outro display que depende de uma placa de vídeo e/ou drivers de vídeo. Se uma depuração de memória é executada durante um processo de boot, a placa de vídeo e/ou os drivers de vídeo podem não ser inicializados e portanto o display 118 não pode ser usado para notificar um usuário que a depuração de memória está sendo executada. Em contraste, se uma depuração de memória é executada durante um processo de desligamento, a placa de vídeo e os drivers de vídeo podem estar operativos e mensagens podem ser fornecidas a um usuário via o display 118. Por exemplo, mensagens no display 118 podem indicar quanto de uma depuração de memória foi executada, o tempo restante antes do término da depuração de memória e/ou outras informações.Display 118 may comprise a liquid crystal display (LCD) or another display that depends on a video card and / or video drivers. If a memory debug is performed during a boot process, the video card and / or the video drivers may not be initialized and therefore the display 118 cannot be used to notify a user that the memory debug is being performed. In contrast, if a memory debug is performed during a shutdown process, the video card and video drivers can be operational and messages can be delivered to a user via display 118. For example, messages on display 118 can indicate how much of a memory debug was performed, the time remaining before the memory debugging and / or other information is finished.

Mesmo se o display 118 estiver não operante (durante o processo de boot ou o processo de desligamento), o indicador de depuração de memória 120 pode fornecer informações para um usuário. Em pelo menos algumas configurações, o indicador de depuração de memória 120 compreende um diodo emissor de luz (LED) que indica a 10 duração ou término de uma depuração de memória. Por exemplo, um certo padrão de piscadas ou atividade sólida do LED pode indicar quando uma depuração de memória está sendo executada e/ou quando uma depuração de memória está terminada. Em configurações alternativas, o indicador de 15 depuração de memória 120 compreende um LCD que não depende de uma placa de video e/ou drivers de video como o faz o display 118. Em tal caso, o indicador de depuração de memória 120 pode exibir texto que indique quanto de uma depuração de memória foi executada, tempo 20 remanescente para uma depuração de memória e/ou outras informações apesar de o display 118 estar não operante. O indicador de depuração de memória 120 pode estar localizado no display 118, no teclado, ou algum outro local visível para um usuário do sistema 100. Alertas de 25 áudio podem adicionalmente ou alternativamente ser usados sujeitos a condições similares (p.ex., alertas de áudio não dependem de uma placa de áudio e/ou drivers de áudio).Even if display 118 is non-operative (during the boot process or the shutdown process), the memory debug indicator 120 can provide information to a user. In at least some configurations, the memory debug indicator 120 comprises a light emitting diode (LED) that indicates the duration or end of a memory debug. For example, a certain flashing pattern or solid LED activity can indicate when a memory debug is being performed and / or when a memory debug is finished. In alternative configurations, the 15 memory debug indicator 120 comprises an LCD that does not depend on a video card and / or video drivers as the display 118 does. In such a case, the memory debug indicator 120 can display text which indicates how much of a memory debug was performed, time remaining for a memory debug and / or other information even though the display 118 is non-operative. The memory debug indicator 120 can be located on the display 118, on the keyboard, or some other location visible to a user of the system 100. 25 audio alerts can additionally or alternatively be used subject to similar conditions (eg, alerts do not depend on an audio card and / or audio drivers).

Em pelo menos algumas configurações, a ponte de I/O 112 30 também se acopla a um controlador de Super I/O 114, umIn at least some configurations, the I / O bridge 112 30 also attaches to a Super I / O 114 controller, a

BIOS 130, um acionador de disco 140 e um Módulo de Plataforma Confiável (TPM) 150. O controlador de Super I/O 114 provê uma interface para um teclado/mouse 116. Em pelo menos algumas configurações, o controlador de Super 35 I/O 114 e/ou a ponte de I/O 112 são capazes de detectar uma solicitação para desligar o sistema de computador 100 (incluindo solicitações de desligamento, hibernação ou reinicio). A solicitação pode ser recebida, por exemplo, a partir do teclado 116. Em resposta, o controlador de Super I/O 114 e/ou a ponte de I/O 112 são capazes de capturar a solicitação de desligamento e notificar o BIOS 130. O BIOS 130 é então capaz de depurar a memória de sistema 108 antes que a solicitação de desligamento esteja completa.BIOS 130, a disk drive 140 and a Trusted Platform Module (TPM) 150. The Super I / O controller 114 provides an interface for a keyboard / mouse 116. In at least some configurations, the Super 35 I / O controller The 114 and / or I / O bridge 112 are capable of detecting a request to shut down computer system 100 (including requests for shutdown, hibernation or restart). The request can be received, for example, from the keyboard 116. In response, the Super I / O controller 114 and / or the I / O bridge 112 are able to capture the shutdown request and notify BIOS 130. BIOS 130 is then able to debug system memory 108 before the shutdown request is complete.

O acionador de disco 140 compreende um sistema operacional (OS) 142 e aplicações 144, que são executáveis pelo processador 104. Durante o tempo de funcionamento do sistema de computador 100 (ou antes), certas instruções ou dados relacionados com o OS 142 e/ou as aplicações 144 podem ser armazenados na memória de sistema 108. Estas instruções ou dados podem ser armazenados na área confidencial 110 ou em algum outro lugar na memória de sistema 108. Segredos também podem ser armazenados na área confidencial 110 como mencionado anteriormente.Disk drive 140 comprises an operating system (OS) 142 and applications 144, which are executable by processor 104. During the operating time of computer system 100 (or earlier), certain instructions or data related to OS 142 and / or applications 144 can be stored in system memory 108. These instructions or data can be stored in confidential area 110 or somewhere else in system memory 108. Secrets can also be stored in confidential area 110 as mentioned earlier.

Como mostrado, o acionador de disco 140 também pode compreender uma área protegida 146, que corresponde a parte ou todo o acionador de disco 140. A área protegida 146 é acessível através de um processo de autenticação que envolve, por exemplo, uma senha, uma frase de passe, uma chave de criptografia, uma leitura biométrica ou um outro segredo. Embora não requerido, algumas configurações dependem do TPM 150 para auxiliar com o processo de autenticação.As shown, disk driver 140 can also comprise a protected area 146, which corresponds to part or all of disk driver 140. Protected area 146 is accessible through an authentication process that involves, for example, a password, pass phrase, an encryption key, a biometric reading or another secret. Although not required, some configurations rely on the TPM 150 to assist with the authentication process.

O TPM 150 é configurado para prover funções criptográficas (p.ex., um algoritmo assimétrico RSA para assinatura digital e para criptografia), combinação SHA1, uma função de Código de Autenticação de Mensagem baseado em Combinação (HMAC), armazenagem segura, geração de número randômico, ou outras funções. O TPM 150 é implementado usando software, firmware [programa residente de inicialização] e/ou hardware. As arquiteturas e funções de TPM podem possivelmente mudar com o tempo como autorizado pelo TCG. Usando o TPM 150, um segredo pode ser autenticado para permitir um usuário acessar a área protegida 146.The TPM 150 is configured to provide cryptographic functions (eg, an asymmetric RSA algorithm for digital signature and for encryption), SHA1 combination, a Combination-based Message Authentication Code (HMAC) function, secure storage, generation of random number, or other functions. The TPM 150 is implemented using software, firmware [resident boot program] and / or hardware. TPM architectures and functions may possibly change over time as authorized by the TCG. Using TPM 150, a secret can be authenticated to allow a user to access protected area 146.

Em pelo menos algumas configurações, o OS 142 compreende um OS seguro que suporta usar o bit MOR como especificado pelo Grupo de Computação Confiável (TCG). Como um exemplo, se um usuário solicitar acesso à área protegida 146, o OS 142 pode ativar o bit MOR e armazenar um segredo associado com a solicitação do usuário na área confidencial 110. Depois que o usuário tiver terminado de acessar a área protegida 146, o OS 142 pode anular o bit MOR e depurar a área confidencial 110 para eliminar o segredo. A particular sincronia com relação a quando o bit MOR é ativado e anulado pode variar (p.ex., o bit MOR pode ser ativado antes ou depois do segredo ser armazenado na área confidencial 110 e pode ser anulado antes ou depois do segredo ter sido eliminado) . Se a segurança do OS estiver habilitada, o bit MOR pode permanecer ativo independente de se um segredo foi armazenado em ou anulado de a área confidencial 110. Com o bit MOR ativo, toda a memória 108 (não somente a área confidencial 110) seria depurada durante um processo de boot subsequente.In at least some configurations, OS 142 comprises a secure OS that supports using the MOR bit as specified by the Trustworthy Computing Group (TCG). As an example, if a user requests access to protected area 146, OS 142 can activate the MOR bit and store a secret associated with the user's request in confidential area 110. After the user has finished accessing protected area 146, OS 142 can override the MOR bit and purge confidential area 110 to eliminate the secret. The particular timing with respect to when the MOR bit is activated and cleared may vary (eg, the MOR bit can be activated before or after the secret is stored in confidential area 110 and can be cleared before or after the secret has been deleted). If OS security is enabled, the MOR bit can remain active regardless of whether a secret has been stored in or overridden from confidential area 110. With the MOR bit active, all memory 108 (not only confidential area 110) would be cleared during a subsequent boot process.

O BIOS 130 é armazenado em um meio lido pelo computador (p.ex., uma ROM flash [instantânea]) e compreende várias instruções executáveis pelo processador 104. Em pelo menos algumas configurações, o BIOS 130 permite depurações de memória serem seletivamente executadas desligamento ou um processo BIOS 130 pode interface de bit MOR 132, instruções durante um boot. Como processo de mostrado, o compreender de uma de memória 134, instruções de controle deBIOS 130 is stored on a medium read by the computer (eg, a flash [instant] ROM) and comprises several instructions executable by processor 104. In at least some configurations, BIOS 130 allows memory debugging to be selectively performed shutdown or a BIOS 130 process can MOR bit interface 132, instructions during a boot. As shown, the understanding of a memory 134, instructions for

Alguns uma interface de usuário 138.Some have a 138 user interface.

componentes do BIOS são parteBIOS components are part of

BIOS. Estes componentes acessados usando um Modo do de de depuração indicador 136 e ou todos destes de um blocoBIOS. These components accessed using a Debug Mode indicator 136 and or all of these from a block

BIOS tambémBIOS too

Gerenciamento de boot do podem ser de Sistema (SMM).Boot management can be System (SMM).

A interface de bit MOR 132 permite o BIOS 130 acessar e atualizar o bit MOR, o qual pode ser armazenado em um local seguro da memória do BIOS 130 ou em algum outro lugar. Por exemplo, durante o processo de boot, o BIOS 130 pode checar o status de um sinalizador [flag] de MOR. Se o bit MOR for definido para depuração, o BIOS 130 executa uma depuração de memória baseado nas instruções de depuração de memória 134 como serão descritas posteriormente. Se o valor do bit MOR não for definido para depuração, o BIOS 130 continua o processo de boot. Antes ou após a depuração de memória ser executada, a interface de bit MOR 132 pode fazer o bitThe MOR 132 bit interface allows BIOS 130 to access and update the MOR bit, which can be stored in a secure location in BIOS 130 memory or elsewhere. For example, during the boot process, BIOS 130 can check the status of a MOR flag. If the MOR bit is set for debugging, BIOS 130 performs a memory debug based on the memory debug instructions 134 as will be described later. If the MOR bit value is not set for debugging, BIOS 130 continues the boot process. Before or after memory debugging is performed, the MOR 132 bit interface can set the bit

MOR ser anulado. O valor de depuração do bit MOR pode ser alto ou baixo em diferentes configurações. Como um exemplo, se o valor de depuração do bit MOR for alto, anular o bit MOR corresponde a definir o bit MOR para um valor baixo (p.ex., um 0 lógico). Se o valor de depuração do bit MOR for baixo, anular o bit MOR corresponde a definir o MOR para um valor alto (p.ex., um 1 lógico).MOR be canceled. The debug value of the MOR bit can be high or low in different configurations. As an example, if the debug value of the MOR bit is high, clearing the MOR bit corresponds to setting the MOR bit to a low value (eg, a logical 0). If the clearance value of the MOR bit is low, clearing the MOR bit corresponds to setting the MOR to a high value (eg, a logical 1).

Em pelo menos algumas configurações, o BIOS 130 usa a interface de bit MOR 132 para checar o status do bit MOR durante um processo de desligamento. Por exemplo, a ponteIn at least some configurations, BIOS 130 uses the MOR 132 bit interface to check the status of the MOR bit during a shutdown process. For example, the bridge

de I/O 112 I / O 112 e/ou o controlador de Super I/O 114 podem and / or the Super I / O 114 controller can detectar e detect and capturar uma solicitação para desligar o capture a request to shut down the sistema de system of computador 100. A solicitação pode ser computer 100. The request can be

identificada detectando quando o OS 142 tenta escrever um ou mais registros (p.ex., um registro para dormir ou um registro para reiniciar). Em resposta, a ponte de I/O 112 e/ou o controlador de super I/O 114 comutam o sistema de computador 100 para um Modo de Gerenciamento de Sistema (SMM), o qual opera sem envolvimento do OS 142.identified by detecting when OS 142 attempts to write one or more records (eg, a sleep record or a restart record). In response, I / O bridge 112 and / or super I / O controller 114 switches computer system 100 to System Management Mode (SMM), which operates without involvement of OS 142.

Durante o SMM, o BIOS 130 é capaz de anular seletivamente o bit MOR. Por exemplo, se o bit MOR tiver sido definido pelo OS 142 durante o tempo de funcionamento, o BIOS 130 pode anular o bit MOR mesmo se a segurança do OS estiver habilitada. Antes ou após o BIOS 130 anular o bit MOR, o BIOS 130 também pode depurar a memória de sistema 108 usando as instruções de depuração de memória 134. Em pelo menos algumas configurações, as instruções de depuração de memória 134 permitem ao BIOS 130 anular todos os conteúdos da memória de sistema 108. Como um exemplo, se 5 a memória de sistema 108 tiver uma capacidade de 16 GB e a operação de depuração de memória anular memória em uma taxa de 1-2 GB/a, então a depuração de memória duraria entre 8-16 segundos. Anulando o bit MOR e executando a depuração de memória durante o desligamento, o BIOS 130 10 não tem que executar a depuração de memória durante o boot subsequente.During SMM, BIOS 130 is able to selectively override the MOR bit. For example, if the MOR bit has been set by OS 142 during run time, BIOS 130 can override the MOR bit even if OS security is enabled. Before or after BIOS 130 overrides the MOR bit, BIOS 130 can also debug system memory 108 using memory debug instructions 134. In at least some configurations, memory debug instructions 134 allow BIOS 130 to override all the contents of system memory 108. As an example, if system memory 108 has a capacity of 16 GB and the memory debug operation aborts memory at a rate of 1-2 GB / a, then the memory debug would last between 8-16 seconds. By clearing the MOR bit and performing memory debugging during shutdown, BIOS 130 10 does not have to perform memory debugging during the subsequent boot.

Existem vantagens em executar a depuração de memória durante o processo de desligamento ao invés do processo de boot. Por exemplo, um usuário que esteja saindo do 15 sistema de computador 100 usualmente não se preocupa se o processo de desligamento é demorado para a depuração de memória. Em contraste, um usuário que chega e faz o boot do sistema de computador 100 usualmente deseja atingir o momento de funcionamento tão rapidamente quanto possível 20 e não aprecia que o tempo de boot seja estendido para executar a depuração de memória. Adicionalmente, placas de áudio/vídeo e/ou drivers podem estar disponíveis durante o processo de desligamento, mas não durante o processo de boot. Assim, se a depuração de memória for executada durante o processo de desligamento, um usuário pode receber informações com relação ao status da depuração de memória via o display 118.There are advantages to performing memory debugging during the shutdown process instead of the boot process. For example, a user logging out of computer system 100 usually does not care if the shutdown process takes time to debug memory. In contrast, a user who arrives and boots computer system 100 usually wants to reach the operating time as quickly as possible 20 and does not appreciate that the boot time is extended to perform memory debugging. In addition, audio / video cards and / or drivers may be available during the shutdown process, but not during the boot process. Thus, if the memory debug is performed during the shutdown process, a user can receive information regarding the status of the memory debug via the display 118.

Mesmo se placas de áudio/vídeo e/ou drivers não estiverem disponíveis no momento que a depuração de memória é executada, o de indicador indicador deEven if audio / video cards and / or drivers are not available at the time the memory debugging is performed, the

BIOS 130 implementa instruções de controle 136 que permitem o BIOS 130 controlar o depuração de memória 120.BIOS 130 implements control instructions 136 that allow BIOS 130 to control memory debugging 120.

o indicador de depuração nãothe debug indicator does not

Como discutido anteriormente, pode compreender um LED ou LCD que placa de vídeo e/ou drivers de vídeo. Ao de memória depende de i contrário, uma as instruções de controle de indicador 136 fazem o indicador de depuração de memória 120 fornecer informações para umAs discussed earlier, it can comprise an LED or LCD that video card and / or video drivers. Depending on the memory, the indicator control instructions 136 make the memory debug indicator 120 provide information for a

120 *120 *

usuário na forma de padrões de luz do LED ou texto de LCD que indicam quanto de uma depuração de memória foi executada, tempo remanescente par uma depuração de memória e/ou outras informações.user in the form of LED light patterns or LCD text that indicate how much of a memory debug has been performed, time remaining for a memory debug and / or other information.

A interface de usuário 138 do BIOS 130 permite um usuário selecionar várias opções relacionadas com depurações de memória executadas pelo BIOS 130. Em pelo menos algumas configurações, o usuário pode acessar a interface de usuário 138 via uma opção de ajuste F10 que apresenta um menu ao usuário. Como um exemplo, o menu pode permitir um usuário selecionar opções como quando depurações de memória são executadas (p.ex., imediatamente, durante o boot e/ou durante desligamento), ativação/desativação do bit MOR 132 (p.ex., alguns OSs podem não suportar operações com bit MOR), uma depuração de bit MOR (p.ex., o BIOS 130 pode executar depurações de memória sem depender do bit MOR ou pode executar depurações de memória mesmo se o bit MOR for anulado) , ativação/desativação do indicador de depuração de memória 120 ou outras opções.The user interface 138 of BIOS 130 allows a user to select various options related to memory debugging performed by BIOS 130. In at least some configurations, the user can access user interface 138 via an F10 setting option that presents a menu to the user. As an example, the menu may allow a user to select options such as when memory debugging is performed (eg, immediately during boot and / or during shutdown), activation / deactivation of the MOR 132 bit (eg, some OSs may not support MOR bit operations), MOR bit debugging (eg, BIOS 130 can perform memory debugging without depending on the MOR bit or can perform memory debugging even if the MOR bit is cleared), enable / disable memory debug indicator 120 or other options.

Resumindo, o sistema de computador 100 é capaz de responder a ataques de reinicio ou ataques de ciclagem de energia executando uma depuração de memória antecipadamente no processo de boot subsequente. Adicionalmente, o sistema de computador 100 reforça a usabilidade de depurações de memória e do bit MOR fornecendo várias opções. Por exemplo, as depurações de memória podem ser executadas durante um processo de desligamento e o bit MOR pode ser seletivamente anulado pelo BIOS 130 para impedir uma depuração de memória de ser executada durante um processo de boot subsequente. À medida do necessário, o BIOS 130 pode controlar o indicador de depuração de memória 120 para melhorar a conscientização do usuário com relação a operações de depuração.In summary, computer system 100 is capable of responding to restart attacks or power cycling attacks by performing a memory debug in advance in the subsequent boot process. Additionally, computer system 100 reinforces the usability of memory and MOR bit debugging by providing several options. For example, memory debugging can be performed during a shutdown process and the MOR bit can be selectively overridden by BIOS 130 to prevent a memory debugging from being performed during a subsequent boot process. As needed, BIOS 130 can control memory debug indicator 120 to improve user awareness of debug operations.

A figura 2 mostra o acesso e uso de um bit de depuração de memória (MOR) 206 de acordo com configurações. Como mostrado, um OS 202 e um BIOS 204 seletivamente definem e anulam o bit MOR 206. O valor de depuração do bit MOR pode ser alto ou baixo em diferentes configurações. Como um exemplo, se o valor de depuração do bit MOR for alto, 5 definir o bit MOR corresponde a um valor de bit MOR alto (p.ex., um 1 lógico) e anular o bit MOR corresponde a um valor de bit MOR baixo (p.ex., um 0 lógico). Alternativamente, se o valor de depuração do bit MOR for baixo, definir o bit MOR corresponde a um valor de bit 10 MOR baixo (p.ex., um 0 lógico) e anular o bit MOR corresponde a um valor de bit MOR alto (p.ex., um 1 lógico).Figure 2 shows the access and use of a memory debugging bit (MOR) 206 according to configurations. As shown, an OS 202 and BIOS 204 selectively set and override the MOR 206 bit. The debug value of the MOR bit can be high or low in different configurations. As an example, if the debug value of the MOR bit is high, 5 setting the MOR bit corresponds to a high MOR bit value (eg, a logical 1) and canceling the MOR bit corresponds to a MOR bit value low (eg, a logical 0). Alternatively, if the debug value of the MOR bit is low, setting the MOR bit corresponds to a low MOR 10 bit value (eg, a logical 0) and canceling the MOR bit corresponds to a high MOR bit value ( eg a logical 1).

Em pelo menos algumas configurações, o OS 202 define o bit MOR se um evento A ocorrer. Por exemplo, o evento A 15 pode corresponder a um segredo ser armazenado na área confidencial 110 da memória 108 ou na segurança do OS ser ativada. Em pelo menos algumas configurações, o OS 202 anula o bit MOR se um evento B ocorrer. Por exemplo, o evento B pode corresponder a um segredo ser eliminado da 20 área confidencial 110 da memória 108 ou à segurança do OS ser desabilitada. Em algumas configurações, o OS executa seletivamente uma depuração de memória da área confidencial 110 da memória 108 para eliminar segredos, mas não anula toda a memória de sistema 108.In at least some configurations, OS 202 sets the MOR bit if an A event occurs. For example, event A 15 may correspond to a secret being stored in confidential area 110 of memory 108 or in OS security being activated. In at least some configurations, OS 202 clears the MOR bit if an event B occurs. For example, event B may correspond to a secret being deleted from confidential area 110 of memory 108 or the security of the OS being disabled. In some configurations, the OS selectively performs a memory debugging of confidential area 110 of memory 108 to eliminate secrets, but does not clear all system memory 108.

Em pelo menos algumas configurações, o BIOS 204 anula o bit MOR se um evento C ocorrer. Por exemplo, o evento C pode corresponder a um segredo ser eliminado da área confidencial 110 da memória de sistema 108 enquanto a segurança do OS está habilitada. Em outras palavras, com 30 a segurança do OS habilitada, algumas configurações do OSIn at least some configurations, BIOS 204 will override the MOR bit if a C event occurs. For example, event C may correspond to a secret being cleared from confidential area 110 of system memory 108 while OS security is enabled. In other words, with OS security enabled, some OS settings

202 não anulam o bit MOR mesmo se a área confidencial 110 tiver sido anulada. Em tal caso, o BIOS 204 pode anular seletivamente o bit MOR. Por exemplo, o BIOS 204 pode anular o bit MOR durante um processo de desligamento tal 35 que uma depuração de memória não seja executada durante um processo de boot subsequente. Como mostrado, um modo SMM pode ser usado seletivamente para permitir o BIOS 204 t202 do not clear the MOR bit even if confidential area 110 has been cleared. In such a case, BIOS 204 may selectively override the MOR bit. For example, BIOS 204 may override the MOR bit during a shutdown process such that a memory debug is not performed during a subsequent boot process. As shown, an SMM mode can be used selectively to allow BIOS 204 t

anular o bit MOR. Alternativamente, o evento C pode corresponder ao BIOS 204 executar uma depuração de memória durante um processo de boot. Em tal caso, o BIOS 204 anula o bit MOR antes ou depois que a depuração de 5 memória está completa.cancel the MOR bit. Alternatively, event C may correspond to BIOS 204 performing a memory debugging during a boot process. In such a case, BIOS 204 clears the MOR bit before or after the 5 memory debugging is complete.

Em pelo menos algumas configurações, o BIOS 204 ativa o bit MOR se um evento D ocorrer. Por exemplo, o vento D pode corresponder a um usuário selecionar uma opção do BIOS para executar uma depuração de memória e com 10 depender do bit MOR. A depuração de memória pode ser executada no momento que o usuário seleciona a opção, durante um processo de boot ou durante um processo de desligamento. Se um usuário selecionar executar uma depuração de memória imediatamente, o BIOS 204 executa a 15 depuração e memória e o computador passa por novo boot.In at least some configurations, BIOS 204 turns the MOR bit on if a D event occurs. For example, wind D may correspond to a user selecting a BIOS option to perform a memory debug and 10 depending on the MOR bit. The memory debugging can be performed when the user selects the option, during a boot process or during a shutdown process. If a user selects to perform a memory debug immediately, BIOS 204 performs debug and memory and the computer is rebooted.

Em algumas configurações, o BIOS 204 depende do bit MOR ser definido como um pré-requisito para executar a depuração de memória. Alternativamente, o BIOS 204 pode executar depurações de memória independente do bit MOR ou 20 do valor do bit MOR. Por exemplo, o BIOS 204 pode executar seletivamente uma depuração de memória de toda a memória de sistema 108 durante o desligamento sem checar o valor do bit MOR ou pode executar a depuração de memória mesmo se o bit MOR for anulado. Mesmo se uma 25 depuração de memória de toda a memória de sistema 108 ocorrer durante o desligamento, o BIOS 204 ainda pode executar uma outra depuração de memória durante um boot subsequente se o bit MOR estiver ativo.In some configurations, BIOS 204 depends on the MOR bit being set as a prerequisite to perform memory debugging. Alternatively, BIOS 204 can perform memory debugging regardless of the MOR bit or 20 of the MOR bit value. For example, BIOS 204 can selectively perform a memory debug of all system memory 108 during shutdown without checking the MOR bit value, or it can perform memory debug even if the MOR bit is cleared. Even if a memory debugging of all system memory 108 occurs during shutdown, BIOS 204 can still perform another memory debugging during a subsequent boot if the MOR bit is active.

A figura 3 ilustra um método 300 de acordo com 30 configurações. Como mostrado, o método 300 inicia no bloco 302. No bloco 304, o método 300 espera receber uma solicitação de desligamento. Se uma solicitação de desligamento for recebida (bloco de determinação 304), a solicitação de desligamento é capturada (bloco 306) e o 35 bit MOR é anulado (bloco 308) . Por exemplo, um BIOS operando em SMM pode anular o bit MOR. Em pelo menos algumas configurações, o bit MOR pode ser definido (p.ex., devido à segurança do OS estar habilitada) mesmo se nenhum segredo for armazenado na memória a ser anulada. Se uma depuração de memória tiver sido solicitada (bloco de determinação 310), a depuração de 5 memória é executada (bloco 312) . Por exemplo, um BIOS operando em SMM pode executar a depuração de memória. Se uma depuração de memória não tiver sido solicitada (bloco de determinação 310) ou se depuração de memória no bloco 312 já tiver sido executada, o método 300 completa o 10 processo de desligamento (bloco 314). O processo de desligamento pode ser parte de um processo de hibernação ou de um processo de reinicio.Figure 3 illustrates a method 300 according to 30 configurations. As shown, method 300 starts at block 302. At block 304, method 300 expects to receive a shutdown request. If a shutdown request is received (determination block 304), the shutdown request is captured (block 306) and the 35 bit MOR is canceled (block 308). For example, a BIOS operating on SMM can override the MOR bit. In at least some configurations, the MOR bit can be set (eg, because OS security is enabled) even if no secrets are stored in the memory to be cleared. If a memory debugging has been requested (determination block 310), the memory debugging is performed (block 312). For example, a BIOS operating on SMM can perform memory debugging. If a memory clearance has not been requested (determination block 310) or if memory clearance in block 312 has already been performed, method 300 completes the shutdown process (block 314). The shutdown process can be part of a hibernation process or a restart process.

A figura 4 ilustra um outro método 400 de acordo com configurações. Como mostrado, o método 400 inicia no 15 bloco 402. No bloco 404, o método 400 espera até que uma depuração de memória seja solicitada. Se uma depuração de memória for solicitada (bloco de determinação 404), o método 400 determina se um indicador de depuração de memória é provido no bloco 406. Se um indicador de 20 depuração de memória estiver provido (bloco de determinação 406) , a duração da depuração de memória é indicada pelo indicador de depuração de memória (bloco 408). Por exemplo, o indicador de depuração de memória pode ser um LED ou LCD que não depende uma placa de vídeo 25 e/ou um driver de vídeo. Se um indicador de depuração de memória não estiver provido (bloco de determinação 406) ou a duração da depuração de memória tiver sido indicada (bloco 408), o método 400 executa a depuração de memória (bloco 410). Em configurações alternativas, o indicador 30 de depuração de memória pode começar a exibir informações após a depuração de memória ter iniciado. O método 400 pode ser executado, por exemplo, durante um processo de boot ou durante um processo de desligamento.Figure 4 illustrates another method 400 according to configurations. As shown, method 400 starts at block 402. At block 404, method 400 waits until a memory debug is requested. If a memory debug is requested (determination block 404), method 400 determines whether a memory debug indicator is provided in block 406. If a memory debug indicator is provided (determination block 406), the duration of the memory debug is indicated by the memory debug indicator (block 408). For example, the memory debug indicator can be an LED or LCD that does not depend on a 25 video card and / or a video driver. If a memory debug indicator is not provided (determination block 406) or the duration of the memory debug has been indicated (block 408), method 400 performs memory debugging (block 410). In alternative configurations, the memory debugging indicator 30 may begin to display information after the memory debugging has started. Method 400 can be executed, for example, during a boot process or during a shutdown process.

A figura 5 ilustra ainda um outro método 500 de acordo 35 com configurações. Como mostrado, o método 500 começa no bloco 502. Se uma operação segura tiver que ser executada (bloco de determinação 504), um bit MOR é definido (blocoFigure 5 illustrates yet another method 500 according to 35 configurations. As shown, method 500 starts at block 502. If a safe operation is to be performed (determination block 504), a MOR bit is set (block

506). Como um exemplo, a operação segura compreende acessar uma área protegida de um acionador de disco baseado em um processo de autenticação. Se a operação segura estiver terminada (bloco de determinação 508), o 5 bit MOR é seletivamente anulado (bloco 512). Por exemplo, se a segurança do OS estiver desabilitada, um segredo relacionado com a operação segura pode ser eliminado uma vez que a operação segura está terminada e o bit MOR pode ser anulado. Se a segurança do OS estiver habilitada, o 10 bit MOR permanece definido independente de se um segredo relacionado com a operação segura foi anulado. Uma vez que o bit MOR é seletivamente anulado, o método 500 determina se um BIOS é capaz de executar uma depuração de memória durante o desligamento no bloco 514.506). As an example, secure operation comprises accessing a protected area from a disk trigger based on an authentication process. If the safe operation is finished (determination block 508), the 5 bit MOR is selectively canceled (block 512). For example, if OS security is disabled, a secret related to safe operation can be eliminated once the safe operation is finished and the MOR bit can be cleared. If OS security is enabled, the 10 bit MOR remains set regardless of whether a secret related to secure operation has been overridden. Since the MOR bit is selectively overridden, method 500 determines whether a BIOS is capable of performing a memory debug during shutdown in block 514.

Voltando para o bloco 508, se a operação segura não tiver terminado (bloco de determinação 508) e um desligamento anormal ocorrer (bloco de determinação 510), o método 500 executa uma depuração de memória durante um processo subsequente de boot se o bit MOR estiver definido (bloco 20 516) . Se a operação segura não tiver terminado (bloco de determinação 508) e um desligamento anormal não ocorrer (bloco de determinação 510), o método 500 se ramifica para o bloco 514. O método 500 também se ramifica para o bloco 514 se uma operação segura não tiver que ser 25 executada (bloco de determinação 504) . Se um BIOS está preparado para executar uma depuração de memória durante ctesligamento (bloco de determinação 514), uma depuração de memória é executada durante o desligamento independente do valor do bit MOR e o bit MOR é anulado 30 (bloco 518) . Se o BIOS não é capaz de executar uma depuração de memória durante desligamento (bloco de determinação 514), o método 500 executa uma depuração de memória durante um processo de boot subsequente se o bit MOR estiver ativo (bloco 516).Returning to block 508, if the safe operation has not ended (determination block 508) and an abnormal shutdown occurs (determination block 510), method 500 performs a memory debugging during a subsequent boot process if the MOR bit is defined (block 20 516). If the safe operation has not ended (determination block 508) and an abnormal shutdown does not occur (determination block 510), method 500 branches to block 514. Method 500 also branches to block 514 if a safe operation does not have to be carried out (determination block 504). If a BIOS is prepared to perform a memory debugging during connection (determination block 514), a memory debugging is performed during the shutdown regardless of the MOR bit value and the MOR bit is cleared 30 (block 518). If the BIOS is not able to perform a memory debug during shutdown (determination block 514), method 500 performs a memory debug during a subsequent boot process if the MOR bit is active (block 516).

A discussão acima é pretendida a ser ilustrativa dos princípios e das várias configurações da presente invenção. Numerosas variações e modificações tornar-se-ão aparentes àqueles experientes na técnica uma vez que a divulgação acima seja apreciada completamente. Por exemplo, em algumas configurações, as depurações de memória executadas pelo BIOS 130 não necessitam anular 5 toda a memória de sistema 108. É pretendido que as reivindicações seguintes sejam interpretadas a abranger todas tais variações e modificações.The above discussion is intended to be illustrative of the principles and the various configurations of the present invention. Numerous variations and modifications will become apparent to those skilled in the art once the above disclosure is fully appreciated. For example, in some configurations, memory debugging performed by BIOS 130 does not need to erase all system memory 108. The following claims are intended to be interpreted to cover all such variations and modifications.

Claims (6)

1. Sistema de computador (100), caracterizado pelo fato de compreender:1. Computer system (100), characterized by the fact that it comprises: um processador (104);a processor (104); memória de sistema (108) acoplada ao processador (104); e um Sistema Básico de Entrada/Saída (BIOS) (130) em comunicação com o processador (104);system memory (108) coupled to the processor (104); and a Basic Input / Output System (BIOS) (130) in communication with the processor (104); uma ponte de entrada/saída (I/O) (112) acoplada ao processador (104); e um sistema operacional (OS) (142) em comunicação com o processador (104), sendo que a ponte de I/O (112) é arranjada para capturar uma solicitação de desligamento e fazer com que o sistema (100) entre em um Modo de Gerenciamento de Sistema (SMM) com base em uma seleção, o BIOS (130) sendo operativo para depurar a memória de sistema (108) no referido Modo de Gerenciamento de Sistema durante o processo de desligamento e depurar a memória de sistema (108) antes que a solicitação de desligamento esteja completa, sendo que a seleção compreende o OS (142) definindo um bit de depuração de memória (MOR) que faz o BIOS (130) depurar a memória de sistema (108) durante um processo de boot do sistema de computador (100), sendo que o OS (142) anula o bit MOR (206) se pelo menos um dentre os seguintes ocorrer:an input / output (I / O) bridge (112) coupled to the processor (104); and an operating system (OS) (142) in communication with the processor (104), the I / O bridge (112) being arranged to capture a shutdown request and cause the system (100) to enter a System Management Mode (SMM) based on a selection, the BIOS (130) being operative to debug system memory (108) in that System Management Mode during the shutdown process and debug system memory (108 ) before the shutdown request is complete, the selection comprising the OS (142) setting a memory debug (MOR) bit that causes the BIOS (130) to debug the system memory (108) during a boot process of the computer system (100), the OS (142) canceling the MOR bit (206) if at least one of the following occurs: um segredo é eliminado de uma área confidencial da memória (108), e uma segurança do OS é desabilitada.a secret is cleared from a confidential area of memory (108), and OS security is disabled. 2. Sistema de computador (100), de acordo com a reivindicação 1, caracterizado pelo fato de que o BIOS (130) é arranjado para anular o bit MOR (206) durante o processo de desligamento.2. Computer system (100) according to claim 1, characterized by the fact that the BIOS (130) is arranged to cancel the MOR bit (206) during the shutdown process. 3. Sistema de computador (100), de acordo com a reivindicação 1, caracterizado pelo fato de compreender adicionalmente um indicador de depuração de memória (120) em comunicação com o BIOS (130), o indicador de depuração de memória (120) é independente de uma placa de vídeo do sistema de computador e é arranjado para exibir 3. Computer system (100) according to claim 1, characterized in that it additionally comprises a memory debugging indicator (120) in communication with the BIOS (130), the memory debugging indicator (120) is independent of a video card from the computer system and is arranged to display Petição 870180158017, de 03/12/2018, pág. 10/11 informações com relação a uma depuração de memória.Petition 870180158017, of 12/03/2018, p. 10/11 information regarding a memory debug. 4. Método para depurar uma memória de sistema, caracterizado pelo fato de compreender:4. Method for debugging a system memory, characterized by the fact that it comprises: receber uma solicitação de desligamento para um sistema de computador (100);receiving a shutdown request for a computer system (100); capturar a solicitação de desligamento;capture the shutdown request; executar uma depuração de memória em uma operação em Modo de Gerenciamento de Sistema de BIOS (130) antes que a solicitação de desligamento esteja permitida a proceder; por um OS (142) do sistema de computador (100), definir um bit de depuração de memória (MOR) (206) que faz o BIOS (130) depurar a memória de sistema (108) durante um processo de boot do sistema de computador (100);perform a memory debug in an operation in BIOS System Management Mode (130) before the shutdown request is allowed to proceed; by an OS (142) of the computer system (100), set a memory debug (MOR) bit (206) that makes the BIOS (130) debug the system memory (108) during a system boot process computer (100); pelo OS (142), anular o bit MOR (206) se pelo menos um dentre os seguintes ocorrer: um segredo é eliminado de uma área confidencial da memória (108), e uma segurança do OS é desabilitada.by OS (142), clear the MOR bit (206) if at least one of the following occurs: a secret is deleted from a confidential area of memory (108), and OS security is disabled. 5. Método, de acordo com a reivindicação 4, caracterizado pelo fato de compreender adicionalmente anular o bit de depuração de memória (MOR) (206) antes que a solicitação de desligamento esteja permitida a proceder.5. Method, according to claim 4, characterized in that it additionally comprises clearing the memory debugging bit (MOR) (206) before the shutdown request is allowed to proceed. 6. Método, de acordo com a reivindicação 4, caracterizado pelo fato de compreender adicionalmente permitir um usuário selecionar pelo menos uma de múltiplas opções com relação a quando depurações de memória são executadas, as opções compreendendo executar uma depuração de memória durante um processo de boot e executar uma depuração de memória durante um processo de desligamento.6. Method, according to claim 4, characterized in that it additionally comprises allowing a user to select at least one of multiple options with respect to when memory debugging is performed, options comprising performing a memory debugging during a boot process and perform a memory debugging during a shutdown process.
BRPI0808226A 2007-03-21 2008-02-19 computer system and method for debugging system memory BRPI0808226B1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/689,055 US8898412B2 (en) 2007-03-21 2007-03-21 Methods and systems to selectively scrub a system memory
US11/689,055 2007-03-21
PCT/US2008/002277 WO2008115333A1 (en) 2007-03-21 2008-02-19 Methods and systems to selectively scrub a system memory

Publications (2)

Publication Number Publication Date
BRPI0808226A2 BRPI0808226A2 (en) 2014-07-08
BRPI0808226B1 true BRPI0808226B1 (en) 2019-09-10

Family

ID=39766215

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI0808226A BRPI0808226B1 (en) 2007-03-21 2008-02-19 computer system and method for debugging system memory

Country Status (6)

Country Link
US (1) US8898412B2 (en)
EP (1) EP2126687A4 (en)
CN (1) CN101663643A (en)
BR (1) BRPI0808226B1 (en)
TW (1) TWI499911B (en)
WO (1) WO2008115333A1 (en)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7945815B2 (en) * 2007-08-14 2011-05-17 Dell Products L.P. System and method for managing memory errors in an information handling system
US20090222635A1 (en) * 2008-03-03 2009-09-03 David Carroll Challener System and Method to Use Chipset Resources to Clear Sensitive Data from Computer System Memory
US8312534B2 (en) * 2008-03-03 2012-11-13 Lenovo (Singapore) Pte. Ltd. System and method for securely clearing secret data that remain in a computer system memory
WO2010033464A1 (en) * 2008-09-16 2010-03-25 Intelli-Services, Inc. Document and potential evidence management with smart devices
CN102207875B (en) * 2010-03-30 2014-11-12 鸿富锦精密工业(深圳)有限公司 Media data playing device and restart method thereof
US9619246B2 (en) * 2010-03-30 2017-04-11 Hon Hai Precision Industry Co., Ltd. Electronic computing device and reboot method thereof
US8724408B2 (en) 2011-11-29 2014-05-13 Kingtiger Technology (Canada) Inc. Systems and methods for testing and assembling memory modules
US9117552B2 (en) 2012-08-28 2015-08-25 Kingtiger Technology(Canada), Inc. Systems and methods for testing memory
JP6095330B2 (en) * 2012-11-13 2017-03-15 キヤノン株式会社 Information processing apparatus, control method therefor, and program
US9594638B2 (en) * 2013-04-15 2017-03-14 Amazon Technologies, Inc. Host recovery using a secure store
US9619238B2 (en) 2013-04-15 2017-04-11 Amazon Technologies, Inc. Remote attestation of host devices
US20150089245A1 (en) * 2013-09-26 2015-03-26 Asher M. Altman Data storage in persistent memory

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2251324B (en) * 1990-12-31 1995-05-10 Intel Corp File structure for a non-volatile semiconductor memory
WO1993007557A1 (en) * 1991-10-02 1993-04-15 Kabushiki Kaisha Toshiba Electronic appliance automatically controlling electric power consumed by components in response to operation time inputted by user
US6549995B1 (en) 2000-01-06 2003-04-15 International Business Machines Corporation Compressor system memory organization and method for low latency access to uncompressed memory regions
US6754815B1 (en) 2000-03-31 2004-06-22 Intel Corporation Method and system for scrubbing an isolated area of memory after reset of a processor operating in isolated execution mode if a cleanup flag is set
US6718463B1 (en) * 2000-08-17 2004-04-06 International Business Machines Corporation System, method and apparatus for loading drivers, registry settings and application data onto a computer system during a boot sequence
US6925557B2 (en) * 2001-10-26 2005-08-02 International Business Machines Corporation Method and system for a clean system booting process
US20030196100A1 (en) 2002-04-15 2003-10-16 Grawrock David W. Protection against memory attacks following reset
US7065688B1 (en) 2003-02-19 2006-06-20 Advanced Micro Devices, Inc. Simultaneous multiprocessor memory testing and initialization
EP1704483A2 (en) 2003-12-30 2006-09-27 SanDisk Corporation Non-volatile memory and method with memory planes alignment
US20050144432A1 (en) * 2003-12-30 2005-06-30 Chih-Wei Wu Method for updating BIOS setting
US7328315B2 (en) 2005-02-03 2008-02-05 International Business Machines Corporation System and method for managing mirrored memory transactions and error recovery
JP4325579B2 (en) 2005-03-29 2009-09-02 ヤマハ株式会社 Content data reproducing apparatus and content data reproducing program
US20060288079A1 (en) 2005-05-31 2006-12-21 Deobald Martyn G Security system for personal Internet communicator

Also Published As

Publication number Publication date
US8898412B2 (en) 2014-11-25
TW200842582A (en) 2008-11-01
WO2008115333A1 (en) 2008-09-25
EP2126687A4 (en) 2010-07-28
TWI499911B (en) 2015-09-11
US20080235505A1 (en) 2008-09-25
BRPI0808226A2 (en) 2014-07-08
CN101663643A (en) 2010-03-03
EP2126687A1 (en) 2009-12-02

Similar Documents

Publication Publication Date Title
BRPI0808226B1 (en) computer system and method for debugging system memory
Brasser et al. SANCTUARY: ARMing TrustZone with User-space Enclaves.
JP5539445B2 (en) Hardware-based anti-virus scanning service
JP5362767B2 (en) Method and apparatus for checking the safety of a data storage device from a remote server
TWI528281B (en) Platform firmware armoring method, apparatus, system and associated machine-readable medium
JP3539907B2 (en) Computer with bootable program
JP5711160B2 (en) Method and computer for protecting passwords
EP1918815B1 (en) High integrity firmware
US8028174B2 (en) Controlling update of content of a programmable read-only memory
US10032029B2 (en) Verifying integrity of backup file in a multiple operating system environment
EP2652666B1 (en) Storage drive based antimalware methods and apparatuses
JP5335634B2 (en) Computer that protects the privilege level of system administration mode
US20140115314A1 (en) Electronic device and secure boot method
KR20160146955A (en) Management of authenticated variables
KR20130056894A (en) Providing a multi-phase lockstep integrity reporting mechanism
US9367327B2 (en) Method to ensure platform silicon configuration integrity
US9245122B1 (en) Anti-malware support for firmware
JP2011503689A (en) Computer storage device having removable read-only area and read / write area, removable media component, system management interface, and network interface
JP2002007214A (en) Information processing apparatus and non-volatile storage device rewriting control method
BRPI0713817A2 (en) computer system and integrity measurement modification method
JPWO2010113282A1 (en) Information processing apparatus having configuration change verification function and control method thereof
JP2009223787A (en) Information processor and processing method, and program
US11836502B2 (en) Multi-boot system and method for a baseboard management controller (BMC)
ES3031232T3 (en) Security module and method for controlling and monitoring the data traffic of a personal computer
CN110023940A (en) It is suitable for the unit run under shielded and/or open operating status and affiliated method

Legal Events

Date Code Title Description
B06T Formal requirements before examination [chapter 6.20 patent gazette]

Free format text: PARECER 6.20

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

Free format text: A CLASSIFICACAO ANTERIOR ERA: G06F 9/06

Ipc: G06F 9/445 (1990.01), G06F 21/57 (2013.01), G06F 9

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 10/09/2019, OBSERVADAS AS CONDICOES LEGAIS. (CO) 10 (DEZ) ANOS CONTADOS A PARTIR DE 10/09/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 16A ANUIDADE.

B24J Lapse because of non-payment of annual fees (definitively: art 78 iv lpi, resolution 113/2013 art. 12)

Free format text: EM VIRTUDE DA EXTINCAO PUBLICADA NA RPI 2762 DE 12-12-2023 E CONSIDERANDO AUSENCIA DE MANIFESTACAO DENTRO DOS PRAZOS LEGAIS, INFORMO QUE CABE SER MANTIDA A EXTINCAO DA PATENTE E SEUS CERTIFICADOS, CONFORME O DISPOSTO NO ARTIGO 12, DA RESOLUCAO 113/2013.