KR102488882B1 - 메모리 오류 처리 방법, 장치, 전자 기기 및 저장매체 - Google Patents

메모리 오류 처리 방법, 장치, 전자 기기 및 저장매체 Download PDF

Info

Publication number
KR102488882B1
KR102488882B1 KR1020210042579A KR20210042579A KR102488882B1 KR 102488882 B1 KR102488882 B1 KR 102488882B1 KR 1020210042579 A KR1020210042579 A KR 1020210042579A KR 20210042579 A KR20210042579 A KR 20210042579A KR 102488882 B1 KR102488882 B1 KR 102488882B1
Authority
KR
South Korea
Prior art keywords
error
memory
host machine
target
threshold
Prior art date
Application number
KR1020210042579A
Other languages
English (en)
Other versions
KR20210044194A (ko
Inventor
샤오웨이 후
Original Assignee
베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디.
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 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디. filed Critical 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디.
Publication of KR20210044194A publication Critical patent/KR20210044194A/ko
Application granted granted Critical
Publication of KR102488882B1 publication Critical patent/KR102488882B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/004Error avoidance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/008Reliability or availability analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/073Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0778Dumping, i.e. gathering error/state information after a fault for later diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1479Generic software techniques for error detection or fault masking
    • G06F11/1482Generic software techniques for error detection or fault masking by means of middleware or OS functionality
    • G06F11/1484Generic software techniques for error detection or fault masking by means of middleware or OS functionality involving virtual machines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45545Guest-host, i.e. hypervisor is an application program itself, e.g. VirtualBox
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/203Failover techniques using migration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45583Memory management, e.g. access or allocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/81Threshold
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • 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)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Algebra (AREA)
  • Probability & Statistics with Applications (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Debugging And Monitoring (AREA)
  • Hardware Redundancy (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

본 출원은 메모리 오류 처리 방법, 장치, 전자 기기 및 저장매체를 개시하는 바, 이는 클라우드 컴퓨팅분야에 관한 것이다. 구체적인 실현방안은, 호스트 머신의 메모리에 오류가 발생한 것을 검출할 경우, 오류 메모리의 오류 파라미터를 획득하고, 오류 파라미터에 따라 호스트 머신의 다운 확률을 결정하며, 다운 확률이 미리 설정된 제1 역치보다 크거나 같을 경우, 타겟 호스트 머신에 호스트 머신의 모든 가상 머신을 이전시키되, 타겟 호스트 머신의 다운 확률이 미리 설정된 제2 역치보다 작고, 제2 역치는 제1 역치보다 작은 것이다. 이로써, 호스트 머신의 메모리에 오류가 발생할 경우, 호스트 머신의 모든 가상 머신이 모두 서비스를 중지하는 문제를 방지하고 호스트 머신의 다운 확률이 미리 설정된 역치보다 크거나 같을 경우 호스트 머신의 가상 머신을 다운 확률이 호스트 머신보다 작은 타겟 호스트 머신에 이전시켜 가상 머신이 다운 오류의 영향을 받는 것을 회피하고 사용자 사용 체험과 서비스 품질을 향상시킨다.

Description

메모리 오류 처리 방법, 장치, 전자 기기 및 저장매체{MEMORY FAULT PROCESSING METHOD AND DEVICE, ELECTRONIC EQUIPMENT AND STORAGE MEDIUM}
본 출원은 컴퓨터 기술분야의 클라우드 컴퓨팅 분야에 관한 것으로, 특히 메모리 오류 처리 방법, 장치, 전자 기기 및 저장매체에 관한 것이다.
현재 인터넷의 관련 서비스의 끊임없는 발전과 더불어 호스트 머신에 가상 머신을 배치하는 규모도 끊임없이 확대되고 있다.
관련 기술에서, 호스트 머신의 메모리에 오류가 발생하면 호스트 머신의 모든 가상 머신을 직접 제어하여 서비스를 정지하도록 한다.
본 발명은 메모리 오류 처리에 사용되는 방법, 장치, 기기 및 저장매체를 제공한다.
본 발명의 일 양태에 따르면, 메모리 오류 처리 방법을 제공하는데, 이는,
호스트 머신의 메모리에 오류가 발생한 것을 검출할 경우, 오류 메모리의 오류 파라미터를 획득하는 단계;
상기 오류 파라미터에 따라 상기 호스트 머신의 다운 확률을 결정하는 단계; 및
상기 다운 확률이 미리 설정된 제1 역치보다 크거나 같을 경우, 타겟 호스트 머신에 상기 호스트 머신의 모든 가상 머신을 이전시키는 단계 - 상기 타겟 호스트 머신의 다운 확률은 미리 설정된 제2 역치보다 작고, 상기 제2 역치는 상기 제1 역치보다 작음 -;를 포함한다.
본 발명의 다른 양태에 따르면, 메모리 오류 처리 장치를 제공하는데, 이는,
호스트 머신의 메모리에 오류가 발생한 것을 검출할 경우, 오류 메모리의 오류 파라미터를 획득하는 제1 획득 모듈;
상기 오류 파라미터에 따라 상기 호스트 머신의 다운 확률을 결정하는 결정 모듈; 및
상기 다운 확률이 미리 설정된 제1 역치보다 크거나 같을 경우, 타겟 호스트 머신에 상기 호스트 머신의 모든 가상 머신을 이전시키는 처리 모듈 - 상기 타겟 호스트 머신의 다운 확률은 미리 설정된 제2 역치보다 작고, 상기 제2 역치는 상기 제1 역치보다 작음 -;을 포함한다.
본 출원의 제3 양태에 따른 실시예는 전자 기기를 제공하는데,
적어도 하나의 프로세서; 및
상기 적어도 하나의 프로세서와 통신 가능하게 연결되는 메모리를 포함하고,
상기 메모리에는 상기 적어도 하나의 프로세서에 의해 실행 가능한 명령이 저장되며 상기 명령이 상기 적어도 하나의 프로세서에 의해 실행되어 상기 적어도 하나의 프로세서에 의해 제1 양태의 실시예에서 제공하는 메모리 오류 처리 방법이 수행되도록 한다.
본 출원의 제4 양태에 따른 실시예는 컴퓨터 명령이 저장되어 있는 비일시적 컴퓨터 판독 가능 저장매체를 제공하는데 상기 컴퓨터 명령은 상기 컴퓨터가 제1 양태의 실시예에서 제공하는 메모리 오류 처리 방법을 수행하도록 한다.
본 출원의 제6 양태에 따른 실시예는, 컴퓨터 판독 가능 매체에 저장되어 있는 컴퓨터 프로그램을 더 제공하는바, 상기 컴퓨터 프로그램중의 명령이 실행될 경우, 제1 양태의 실시예에서 제공하는 메모리 오류 처리 방법이 실행된다.
상기 출원의 한 실시예는 아래와 같은 장점 또는 유리한 효과를 구비한다.
호스트 머신의 메모리에 오류가 발생한 것을 검출할 경우, 오류 메모리의 오류 파라미터를 획득하고, 오류 파라미터에 따라 호스트 머신의 다운 확률을 결정하며, 다운 확률이 미리 설정된 제1 역치보다 크거나 같을 경우, 타겟 호스트 머신에 호스트 머신의 모든 가상 머신을 이전시키되, 타겟 호스트 머신의 다운 확률이 미리 설정된 제2 역치보다 작고, 제2 역치는 제1 역치보다 작다. 이로써, 호스트 머신의 메모리에 오류가 발생할 경우, 호스트 머신의 모든 가상 머신이 모두 서비스를 중지하는 문제를 방지하고 호스트 머신의 다운 확률이 미리 설정된 역치보다 크거나 같을 경우 호스트 머신의 가상 머신을 다운 확률이 호스트 머신보다 작은 타겟 호스트 머신에 이전시켜 가상 머신이 다운 오류의 영향을 받는 것을 회피하고 사용자 사용 체험과 서비스 품질을 향상시킨다.
본 명세서에서 설명한 내용은 본 발명의 실시예의 관건적이거나 중요한 특징을 표기하기 위한 것이 아니고 본 발명의 범위를 한정하기 위한 것도 아님을 이해해야 한다. 본 발명의 기타 특징은 아래의 명세서를 통해 더 용이하게 이해할 수 있을 것이다.
첨부 도면은 본 해결수단을 더 잘 이해하기 위한 것으로, 본 출원을 한정하지 않는다. 여기서,
도 1은 본 출원의 제1 실시예에 따라 제공하는 메모리 오류 처리 방법의 흐름도이다.
도 2는 본 출원의 제2 실시예에 따라 제공하는 메모리 오류 처리 방법의 흐름도이다.
도 3은 본 출원의 제3 실시예에 따라 제공하는 메모리 오류 처리 방법의 흐름도이다.
도 4는 본 출원의 제4 실시예에 따라 제공하는 메모리 오류 처리 장치의 구조 개략도이다.
도 5는 본 출원의 제5 실시예에 따라 제공하는 메모리 오류 처리 장치의 구조 개략도이다.
도 6은 본 출원의 제6 실시예에 따라 제공하는 메모리 오류 처리 장치의 구조 개략도이다.
도 7은 본 출원의 제7 실시예에 따라 제공하는 메모리 오류 처리 장치의 구조 개략도이다.
도 8은 본 출원의 실시예에 따른 메모리 오류 처리 방법을 실현하기 위한 전자 기기의 블록도이다.
이하, 첨부 도면을 결부하여 본 출원의 예시적인 실시예들을 설명하고자 하며, 이해를 돕기 위해 본 출원의 실시예들의 다양한 세부 사항들이 포함되는데, 이들은 단지 예시적인 것으로 간주되어야 한다. 따라서, 본 출원의 기술 분야의 통상의 지식을 가진 자라면 본 출원의 범위 및 사상을 벗어나지 않으면서 본 명세서에 설명된 실시예들에 대해 다양한 변경 및 수정이 이루어질 수 있음을 알아야 한다. 또한, 명확성 및 간결성을 위해, 공지된 기능 및 구조에 대한 설명은 아래 설명에서 생략된다.
이하, 첨부 도면과 결부하여 본 출원의 실시예에 따른 메모리오류 처리 방법, 장치, 전자 기기 및 저장매체에 대해 설명하고자 한다.
도 1은 본 출원의 제1 실시예에 따라 제공하는 메모리 오류 처리 방법의 흐름도이다.
실제 응용에서, 클라우드 서비스의 끊임없는 발전과 더불어 호스트 머신에 가상 머신을 배치하는 규모도 끊임없이 확대되고 있어 호스트 머신에 메모리 오류가 발생하는 수량도 점점 많아져 호스트 머신의 다운을 초래하게 되는데, 관련 기술에서 호스트 머신이 다운 되면 모든 가상 머신을 직접 제어하여 서비스를 정지하도록 하므로 사용자가 사용하는 서비스에 영향을 미치게 되어 클라우드 서비스의 품질을 저하시키게 된다.
상기 문제점에 대하여, 본 출원은 메모리 오류 처리 방법을 제공하는데, 호스트 머신의 메모리에 오류가 발생한 것을 검출할 경우, 오류 메모리의 오류 파라미터를 획득하고, 오류 파라미터에 따라 호스트 머신의 다운 확률을 결정하며, 다운 확률이 미리 설정된 제1 역치보다 크거나 같을 경우, 타겟 호스트 머신에 호스트 머신의 모든 가상 머신을 이전시키되, 타겟 호스트 머신의 다운 확률이 미리 설정된 제2 역치보다 작고, 제2 역치는 제1 역치보다 작은 바, 바꾸어 말하면, 오류 파라미터에 따라 다운 확률을 결정하고 다운 확률이 큰 상황에서 호스트 머신의 가상 머신을 다운 확률이 호스트 머신보다 작은 타겟 호스트 머신에 이전시켜 가상 머신이 다운 오류의 영향을 받는 것을 회피하고 사용자 사용 체험과 서비스 품질을 향상시킨다.
도 1에 도시된 바와 같이, 상기 메모리 오류 처리 방법은 아래와 같은 단계를 포함할 수 있다.
단계101에서, 호스트 머신의 메모리에 오류가 발생한 것을 검출할 경우, 오류 메모리의 오류 파라미터를 획득한다.
본 출원의 실시예에서, 호스트 머신은 가상 머신의 물리적 기초인 바, 가상 머신은 호스트 머신에 존재하여 호스트 머신과 하드웨어 메모리를 공유할 수 있는 바, 즉 하나의 호스트 머신에 하나 또는 다수의 가상 머신이 존재한다.
본 출원의 실시예에서, 주요하게는 호스트 머신의 메모리에 오류가 발생하는 것을 대상로 하는 바, 바꾸어 말하면, 가상 머신을 사용 과정에서 호스트 머신의 메모리에 오류가 발생하게 되면 직접 다운 되지 않으므로 오류 파라미터에 따라 다운 확률을 결정하여 다운 확률에 따라 가상 머신 이전을 진행할지 여부를 결정함으로써 사용자 서비스 품질을 확보하고 사용자 사용 체험을 향상시킨다.
본 출원의 실시예에서, 호스트 머신의 메모리에 오류가 발생한 것을 검출하는 방식은 여러 가지가 있는 바, 구체적인 애플리케이션 시나리오에 따라 선택하여 설치할 수 있으며, 예를 들어 설명하면 아래와 같다.
첫번째 예에서, 호스트 머신의 타겟 메모리 페이지의 타겟 위치에 정보를 기입하여 타겟 메모리 페이지의 타겟 위치에 대응되는 제1 코드를 생성하는 것과, 판독 정보에 따라 상기 타겟 메모리 페이지의 타겟 위치에 대응되는 제2 코드를 생성하는 것을 비교하여, 제1 코드와 제2 코드가 상이할 경우, 호스트 머신의 메모리에 오류가 발생하였다고 결정한다.
두번째 예에서, 가상 머신 프로세스 진행 오류 또는 가상 머신이 제공하는 서비스 피드백 오류에 따라 호스트 머신의 메모리에 오류가 발생한 것을 결정한다.
더 나아가, 호스트 머신의 메모리에 오류가 발생한 것을 검출할 경우, 오류 메모리의 오류 파라미터, 예를 들면 오류 비트의 수량, 오류 비트의 위치 특징, 오류 비트의 시간 특징 및 오류 비트의 유형 특징 등에서의 하나 또는 다수를 획득한다.
이해할 수 있는 것은, 오류 메모리의 오류 파라미터를 획득하는 방식은 여러 가지가 있을 수 있는 바, 응용의 수요에 따라 선택하여 설치할 수 있으며, 예를 들어 설명하면 아래와 같다.
첫번째 예에서, 미리 설정된 알고리즘에 따라 기입 정보에 대응되는 코드 및 판독 정보에 대응되는 코드를 해석하고, 해석한 후의 제1 코드와 제2 코드의 차이 코드를 획득하며, 차이 코드에 따라 타겟 메모리 페이지의 타겟 위치에 대응되는 오류 비트를 결정하고, 오류 비트에 따라 오류의 총 수량 및 오류 비트 사이의 위치 특징을 획득한다.
두번째 예에서, 기입 정보와 판독 정보를 직접 하나씩 비교하여 일치하지 않은 오류 비트를 획득하고, 오류 비트의 위치 특징과 시간 특징을 획득한다.
단계102에서, 오류 파라미터에 따라 호스트 머신의 다운 확률을 결정한다.
본 출원의 실시예에서, 메모리 오류가 발생하였으나 호스트 머신이 다운 되지 않으면 본 출원은 오류 파라미터에 따라 호스트 머신의 다운 확률을 결정할 수 있다.
이해할 수 있는 것은, 오류 파라미터에 따라 호스트 머신의 다운 확률을 결정하는 방식은 여러 가지가 있을 수 있는 바, 수요에 따라 선택하여 설치할 수 있으며, 예를 들어 설명하면 아래와 같다.
첫번째 예에서, 미리 트레이닝 된 확률 분석 모델을 획득하고 오류 파라미터를 확률 분석 모델에 입력하여 처리하여, 호스트 머신의 다운 확률을 획득한다.
두번째 예에서, 다수의 과거 오류 파라미터와 다수의 과거 확률 사이의 관계에 따라 미리 설정된 공식을 셋업하고 미리 설정된 공식에 의해 오류 파라미터를 계산하여 호스트 머신의 다운 확률을 획득한다.
세번째 예에서, 미리 설정된 매핑 테이블에 의해 검색하여 오류 파라미터에 대응되는 호스트 머신의 다운 확률을 획득한다.
단계103에서, 다운 확률이 미리 설정된 제1 역치보다 크거나 같을 경우, 타겟 호스트 머신에 호스트 머신의 모든 가상 머신을 이전시키되, 타겟 호스트 머신의 다운 확률이 미리 설정된 제2 역치보다 작고, 제2 역치는 제1 역치보다 작다.
본 출원의 실시예에서, 다운 확률을 획득한 후, 호스트 머신이 현재의 메모리 오류에 기반한 상황에서 호스트 머신에 다운이 발생할 확률이 얼마인지를 알 수 있고, 제1 역치를 설치하는 것을 통해 다운 확률이 미리 설정된 제1 역치보다 크거나 같을 경우 호스트 머신에 다운이 발생할 가능성이 비교적 높아 호스트 머신의 모든 가상 머신을 다운 확률이 호스트 머신보다 작은 타겟 호스트 머신에 이전시켜야 한다는 것을 나타내며, 이로써 사용자 서비스의 정상화를 확보하고 서비스 품질과 사용자 체험을 향상시키며 이전이 완료될 경우 호스트 머신을 꺼서 재부팅 시킬 수 있다.
제1 역치와 제2 역치는 다수의 호스트 머신의 과거 다운 요약 또는 애플리케이션 수요에 따라 설치할 수 있는 바, 예를 들어, 클라우드 환경에서의 호스트 머신의 다운 원인을 요약함으로써 메모리 오류가 발생할 때 오류 파라미터에 따라 다운 확률이 40 퍼센트라고 결정하고 일정한 시간 뒤에 다운이 발생하게 되므로 제1 역치를 40 퍼센트로 설치할 수 있는데, 이전 후의 가상 서비스가 정상적으로 동작하도록 확보하기 위하여 제2 역치는 제1 역치보다 작고 제2 역치가 작을 수록 타겟 호스트 머신의 다운 확률이 더 작아 이전된 가상 서비스가 정상적으로 사용될 수 있도록 확보한다.
설명해야 할 것은, 다운 확률이 미리 설정된 제1 역치보다 작다는 것은 다운 가능성이 비교적 작아 계속하여 가상 머신 서비스로 사용할 수 있거나, 또는 일부 가상 머신 등을 이전시켜 실제 애플리케이션 시나리오에 따라 설치해야 한다는 것을 나타낸다.
본 출원의 실시예에 따른 메모리 오류 처리 방법은, 호스트 머신의 메모리에 오류가 발생한 것을 검출할 경우, 오류 메모리의 오류 파라미터를 획득하고, 오류 파라미터에 따라 호스트 머신의 다운 확률을 결정하며, 다운 확률이 미리 설정된 제1 역치보다 크거나 같을 경우, 타겟 호스트 머신에 호스트 머신의 모든 가상 머신을 이전시키되, 타겟 호스트 머신의 다운 확률이 미리 설정된 제2 역치보다 작고, 제2 역치는 제1 역치보다 작다. 이로써, 호스트 머신의 메모리에 오류가 발생할 경우, 호스트 머신의 모든 가상 머신이 모두 서비스를 중지하는 문제를 방지하고 호스트 머신의 다운 확률이 미리 설정된 역치보다 크거나 같을 경우 호스트 머신의 가상 머신을 다운 확률이 호스트 머신보다 작은 타겟 호스트 머신에 이전시켜 가상 머신이 다운 오류의 영향을 받는 것을 회피하고 사용자 사용 체험과 서비스 품질을 향상시킨다.
설명해야 할 것은, 본 출원의 메모리 오류 처리 방법은 각 호스트 머신에서 오류 파라미터에 따라 호스트 머신의 다운 확률을 결정하고 다운 확률과 역치를 비교하여 이전 여부를 결정할 수 있으며, 각 호스트 머신이 오류 파라미터를 관련 서버에 송신하여 분석하고 서버가 분석결과에 따라 송신한 제어 명령을 수신하여 작동할 수도 있는데, 구체적으로는 애플리케이션 시나리오에 따라 선택하여 설치할 수 있으며 본 출원은 이에 대해 한정하지 않는다.
상기 실시예의 설명에 기반하여 호스트 머신의 메모리에 오류가 발생한 것을 검출하는 동시에 어느 가상 머신 프로세스의 운행으로 인한 것인지 결정하거나 또는 큰 확률로 확정하고, 대응되는 가상 머신 프로세스를 꺼서 상기 가상 머신에 서비스를 제공하는 것을 정지시키며 상기 오류 메모리를 마킹하여 격리시켜 다운 오류의 발생을 방지할 수 있다는 것을 이해할 수 있는데, 구체적인 내용은 도 2와 결부하여 상세히 설명한다.
도 2는 본 출원의 제2 실시예에 따라 제공하는 메모리 오류 처리 방법의 흐름도이다.
도 2에 도시된 바와 같이, 상기 메모리 오류 처리 방법은 아래와 같은 단계를 포함한다.
단계201에서, 오류 메모리에 가상 머신 프로세스가 운행될경우, 가상 머신 프로세스를 닫는다.
구체적으로, 호스트 머신의 메모리에 오류가 발생한 것을 검출할 경우, 예를 들어 호스트 머신의 타겟 메모리 페이지의 아래 2 페이지에 오류가 존재하고, 가상 머신A가 방금 호스트 머신의 타겟 메모리 페이지 1-20 페이지에 정보를 기입한 것을 검출할 경우, 이로써 상기 메모리 오류는 가상 머신A가 서비스를 제공함으로써 초래한 것임을 결정할 수 있고 가상 머신A의 프로세스를 닫아 다운 위험을 감소시키고 기타 서비스가 다운 오류의 영향을 받는 것을 방지하여 서비스 품질을 향상시킬 수 있다.
호스트 머신의 메모리에 오류가 발생한 것을 검출하는 방식은 상기 실시예의 구체적인 설명을 참조할 수 있는 바, 여기서 더 이상 설명하지 않는다.
단계202에서, 오류 메모리의 오류 파라미터를 획득하고 미리 트레이닝 된 확률 분석 모델을 획득한다.
단계203에서, 오류 파라미터를 확률 분석 모델에 입력하여 처리하여, 호스트 머신의 다운 확률을 획득한다.
본 출원의 실시예에서, 이해할 수 있는 것은, 미리 오류 파라미터 샘플과 확률 샘플을 획득하여 오류 파라미터 샘플과 확률 샘플에 의해 확률 분석 모델의 모델 계수를 트레이닝 할 수 있다.
따라서, 오류 파라미터를 확률 분석 모델에 입력하고 미리 트레이닝 된 모델 계수에 의해 오류 파라미터를 처리하여 호스트 머신의 다운 확률을 획득할 수 있으며, 나아가 호스트 머신의 다운 확률을 획득하는 효율을 향상시킬 수 있다.
단계204에서, 다운 확률이 제1 역치보다 작고 제2 역치보다 크거나 같을 경우, 오류 메모리를 마킹한다.
단계205에서, 다운 확률과 호스트 머신의 모든 가상 머신 수량에 따라 타겟 가상 머신을 결정하고 타겟 가상 머신을 이전시키되; 타겟 가상 머신의 수량은 모든 가상 머신 수량보다 적다.
본 출원의 실시예에서, 오류 메모리를 처리하는 유연성을 더 향상시키기 위하여 상기 실시예에서 설치한 제1 역치를 제외하고 제2 역치를 더 설치할 수 있는데 제1 역치는 제2 역치보다 크다.
바꾸어 말하면, 다운 확률이 제1 역치보다 작다는 것은 호스트 머신에서 다운이 발생할 확률이 비교적 낮지만 다운이 발생하지 않는 것은 아니라는 것을 나타내므로 제1 역치보다 작은 제2 역치를 설치하여 진일보로 판정하고 대응되는 처리를 진행할 수 있는 바, 예를 들어 제1 역치는 60 퍼센트, 제2 역치는 40 퍼센트로 설치할 수 있다.
본 출원의 실시예에서, 다운 확률이 제1 역치보다 작고, 다운 확률이 미리 설정된 제2 역치보다 크거나 같다고 판정하면 오류 메모리를 마킹하고 계속하여 호스트 머신의 기타 정상적인 메모리를 사용하는데, 다시 말하면, 다운 위험이 존재하고 다운의 위험이 오류 메모리에 의한 것일 확률이 크면 이때 오류 메모리를 마킹하여 격리 처리하며, 계속하여 호스트 머신의 기타 정상적인 메모리를 사용하여 기타 서비스가 계속되도록 함으로써 서비스 효율과 품질을 향상시킬 수 있다.
상기 분석에 기반하면, 이때 다운 확률이 미리 설정된 제2 역치보다 크거나 같아도 여전히 다운 위험이 존재할 가능성이 있으므로 가상 서비스가 다운 영향을 받는 것을 진일보로 방지하기 위하여 다운 확률과 호스트 머신의 모든 가상 머신 수량에 따라 타겟 가상 머신을 결정하고 타겟 가상 머신을 이전시킬 수 있는데, 타겟 가상 머신의 수량은 모든 가상 머신 수량보다 적다.
가상 머신의 서비스 정보(예를 들어 실시간 서비스, 서비스 대상 등)에 기반하여 각 가상 머신을 배열하고, 다운 확률에 따라 3-5개를 이전시키도록 결정함으로써 마지막에 배열된 3개의 가상 머신을 선택하여 이전시킬 수 있는 바, 구체적으로는 응용의 수요에 따라 타겟 가상 머신와 이전 수량을 선택하여 서비스 품질과 사용자 사용 체험을 진일보로 확보할 수 있다.
설명해야 할 것은, 다운 확률이 미리 설정된 제1 역치보다 크거나 같을 경우, 호스트 머신의 모든 가상 머신을 이전시키고, 이전이 완료될 경우 호스트 머신을 끄며, 다운 확률이 제2 역치보다 작은 것은 처리하지 않고 단지 오류 메모리만 마킹하면 되며, 계속하여 호스트 머신의 기타 정상적인 메모리를 사용한다.
본 출원의 실시예의 메모리 오류 처리 방법은, 오류 메모리에 가상 머신 프로세스가 운행될경우, 가상 머신 프로세스를 닫고, 오류 메모리의 오류 파라미터를 획득 및 미리 트레이닝 된 확률 분석 모델을 획득하며, 오류 파라미터를 확률 분석 모델에 입력하여, 미리 트레이닝 된 모델 계수에 의해 오류 파라미터를 처리하여, 호스트 머신의 다운 확률을 획득하되, 다운 확률이 제1 역치보다 작고 미리 설정된 제2 역치보다 크거나 같으면, 오류 메모리를 마킹하고 다운 확률과 호스트 머신의 모든 가상 머신 수량에 따라 타겟 가상 머신을 결정하며 타겟 가상 머신을 이전시키는데; 타겟 가상 머신의 수량은 모든 가상 머신 수량보다 적다. 이로써, 호스트 머신의 메모리에 오류가 발생할 경우, 오류 메모리에서 운행되는 가상 머신 프로세스를 닫고 오류 메모리를 마킹하여 격리시키며 일부 가상 머신을 기타 호스트 머신에 이전시켜 가상 머신이 다운 오류의 영향을 받는 것을 회피하고 사용자 사용 체험과 서비스 품질을 향상시킨다.
도 3은 본 출원의 제3 실시예에 따라 제공하는 메모리 오류 처리 방법의 흐름도이다.
도 3에 도시된 바와 같이, 상기 메모리 오류 처리 방법은 아래와 같은 단계를 포함한다.
단계301에서, 커널 시스템이 송신한 제1 제어 명령을 획득하고, 제1 제어 명령에 따라 호스트 머신의 타겟 메모리 페이지의 타겟 위치에 정보를 기입하며, 기입 정보에 따라 타겟 메모리 페이지의 타겟 위치에 대응되는 제1 코드를 생성한다.
본 출원의 실시예에서, 상이한 애플리케이션 시나리오에 상이한 메모리 오류 처리 패턴을 설치할 수 있는데, 오류 검출을 진행하기 전에 호스트 머신 내의 커널 파라미터에 따라 어느 메모리 오류 처리 패턴을 작동시킬 것인가를 판정할 수도 있는 바, 예를 들어, 커널 파라미터1는 본 출원의 실시예의 메모리 오류 처리 패턴을 실행하는 것을 나타내고, 또 예를 들어 커널 파라미터2는 메모리 오류 검출을 실행하여 직접 호스트 머신 처리 패턴을 닫는 것을 나타낼 수 있으나 구체적으로는 실제 애플리케이션 시나리오에 따라 설치할 수 있다.
본 출원의 실시예에서, 커널 시스템이 송신한 명령에 따라 호스트 머신의 타겟 메모리 페이지의 타겟 위치에서 정보를 기입하거나 정보를 판독할 수 있으므로 커널 시스템이 송신한 제1 제어 명령을 획득한 후, 제1 제어 명령은 하나의 입력 명령으로서 기입 비트와 기입 위치 식별자 등 정보를 더 포함하므로 제1 제어 명령에 따라 호스트 머신의 타겟 메모리 페이지의 타겟 위치에 정보를 기입할 수 있다.
더 나아가, 코드 알고리즘 등 방식을 통해 기입 정보에 따라 타겟 메모리 페이지의 타겟 위치에 대응되는 제1 코드를 생성할 수도 있는데, 예를 들어 기입 정보 "ABC"를 코딩한 후 "11001"이 된다.
단계302에서, 커널 시스템이 송신한 제2 제어 명령을 획득하고, 제2 제어 명령에 따라 타겟 메모리 페이지의 타겟 위치로부터 정보를 판독하며, 판독 정보에 따라 타겟 메모리 페이지의 타겟 위치에 대응되는 제2 코드를 생성한다.
단계303에서, 제1 코드와 제2 코드가 상이할 경우, 타겟 메모리 페이지에 오류가 발생하였다고 결정한다.
본 출원의 실시예에서, 커널 시스템이 송신한 명령에 따라 호스트 머신의 타겟 메모리 페이지의 타겟 위치에서 정보를 기입하거나 정보를 판독할 수 있으므로 커널 시스템이 송신한 제2 제어 명령을 획득한 후, 제2 제어 명령은 하나의 판독 명령으로서 판독 비트와 판독 위치 식별자 등 정보를 더 포함하므로 제2 제어 명령에 따라 호스트 머신의 타겟 메모리 페이지의 타겟 위치에서 정보를 판독할 수 있다.
더 나아가, 코드 알고리즘 등 방식을 통해 판독 정보에 따라 타겟 메모리 페이지의 타겟 위치에 대응되는 제2 코드를 생성할 수도 있는데, 예를 들어 판독 정보 "ABC"를 코딩한 후 "11001"이 된다.
이해할 수 있는 것은, 메모리에 오류가 발생하지 않은 상황에서 1 코드와 제2 코드는 일치하므로 제1 코드와 제2 코드가 일치하지 않을 경우 타겟 메모리 페이지에 오류가 발생하였다고 결정하는 바, 예를 들어 모두 "11001"이면 메모리 오류가 발생하지 않은 것이고, 제1 코드가 "11001"이고 제2 코드가 "00001"이면 타겟 메모리 페이지에 오류가 발생하였다고 결정한다.
단계304에서, 미리 설정된 알고리즘에 따라 제1 코드와 제2 코드를 해석하여 해석한 후의 제1 코드와 제2 코드의 차이 코드를 획득하고, 차이 코드에 따라 타겟 메모리 페이지의 타겟 위치에 대응되는 오류 비트를 결정하며, 오류 비트에 따라 오류의 총 수량 및 오류 비트 사이의 위치 특징을 획득한다.
구체적으로, 미리 설정된 알고리즘에 따라 제1 코드와 제2 코드를 해석하여 양자의 차이 코드를 획득하는 바, 예를 들어 자동 비교 알고리즘으로 제1 코드 "11001"와 제2 코드 "00001"의 차이 코드가 "11"과 "00"임을 획득하고, 차이 코드에 따라 타겟 메모리 페이지의 타겟 위치에 대응되는 오류 비트를 결정하는 바, 예를 들어 상기 차이 코드는 첫번째와 두번째가 대응하는 타겟 메모리 페이지의 타겟 위치에 오류 비트가 존재하는 것을 결정하고, 마지막으로 류 비트에 따라 오류의 총 수량 및 오류 비트 사이의 위치 특징을 획득한다.
바꾸어 말하면, 차이 코드에 따라 어느 타겟 메모리 페이지의 어느 타겟 위치의 어느 비트에 오류가 발생, 예를 들어 제3 페이지 제1, 제3 및 제5 위치에 비트 오류가 발생하였는지를 결정할 수 있고 오류 비트가 획득한 오류의 총 수량 및 오류 비트 사이의 위치 특징을 획득할 수 있다.
단계305에서, 미리 트레이닝 된 확률 분석 모델을 획득하고, 오류 파라미터를 확률 분석 모델에 입력하여 처리하여, 호스트 머신의 다운 확률을 획득한다.
본 출원의 실시예에서, 이해할 수 있는 것은, 미리 오류 파라미터 샘플과 확률 샘플을 획득하여 오류 파라미터 샘플과 확률 샘플에 의해 확률 분석 모델의 모델 계수를 트레이닝 할 수 있다.
따라서, 오류 파라미터를 확률 분석 모델에 입력하고 미리 트레이닝 된 모델 계수에 의해 오류 파라미터를 처리하여 호스트 머신의 다운 확률을 획득할 수 있으며, 나아가 호스트 머신의 다운 확률을 획득하는 효율을 향상시킬 수 있다.
단계306에서, 다운 확률이 미리 설정된 제1 역치보다 크거나 같을 경우, 타겟 호스트 머신에 호스트 머신의 모든 가상 머신을 이전시키되, 타겟 호스트 머신의 다운 확률이 미리 설정된 제2 역치보다 작고, 제2 역치는 제1 역치보다 작다.
단계307에서, 다운 확률이 제1 역치보다 작고 미리 설정된 제2 역치보다 크거나 같을 경우, 오류 메모리를 마킹한다.
단계308에서, 다운 확률이 제2 역치보다 작을 경우, 오류 메모리를 마킹한다.
본 출원의 실시예에서, 다운 확률을 획득한 후, 호스트 머신이 현재의 메모리 오류에 기반한 상황에서 호스트 머신에 다운이 발생할 확률이 얼마인지를 알 수 있고, 제1 역치를 설치하는 것을 통해 다운 확률이 미리 설정된 제1 역치보다 크거나 같을 경우 호스트 머신에 다운이 발생할 가능성이 비교적 높아 호스트 머신의 모든 가상 머신을 다운 확률이 호스트 머신보다 작은 타겟 호스트 머신에 이전시켜야 한다는 것을 나타내며, 이로써 사용자 서비스의 정상화를 확보하고 서비스 품질과 사용자 체험을 향상시키며 이전이 완료될 경우 호스트 머신을 꺼서 재부팅 시킬 수 있다.
본 출원의 실시예에서, 오류 메모리를 처리하는 유연성을 더 향상시키기 위하여 상기 실시예에서 설치한 제1 역치를 제외하고 제2 역치를 더 설치할 수 있는데 제1 역치는 제2 역치보다 크다.
바꾸어 말하면, 다운 확률이 제1 역치보다 작다는 것은 호스트 머신에서 다운이 발생할 확률이 비교적 낮지만 다운이 발생하지 않는 것은 아니라는 것을 나타내므로 제1 역치보다 작은 제2 역치를 설치하여 진일보로 판정하고 대응되는 처리를 진행할 수 있는 바, 예를 들어 제1 역치는 60 퍼센트, 제2 역치는 40 퍼센트로 설치할 수 있다.
본 출원의 실시예에서, 다운 확률이 제1 역치보다 작고, 다운 확률이 미리 설정된 제2 역치보다 크거나 같다고 판정하면 오류 메모리를 마킹하고 계속하여 호스트 머신의 기타 정상적인 메모리를 사용하는데, 바꾸어 말하면, 다운 위험이 존재하고 다운의 위험이 오류 메모리에 의한 것일 확률이 크면 이때 오류 메모리를 마킹하여 격리 처리하며, 계속하여 호스트 머신의 기타 정상적인 메모리를 사용하여 기타 서비스가 계속되도록 함으로써 서비스 효율과 품질을 향상시킬 수 있다.
상기 분석에 기반하면, 이때 다운 확률이 미리 설정된 제2 역치보다 크거나 같아도 여전히 다운 위험이 존재할 가능성이 있으므로 가상 서비스가 다운 영향을 받는 것을 진일보로 방지하기 위하여 다운 확률과 호스트 머신의 모든 가상 머신 수량에 따라 타겟 가상 머신을 결정하고 타겟 가상 머신을 이전시킬 수 있는데, 타겟 가상 머신의 수량은 모든 가상 머신 수량보다 적다.
가상 머신의 서비스 정보(예를 들어 실시간 서비스, 서비스 대상 등)에 기반하여 각 가상 머신을 배열하고, 다운 확률에 따라 3-5개를 이전시키도록 결정함으로써 마지막에 배열된 3개의 가상 머신을 선택하여 이전시킬 수 있는 바, 구체적으로는 응용의 수요에 따라 타겟 가상 머신와 이전 수량을 선택하여 서비스 품질과 사용자 사용 체험을 진일보로 확보할 수 있다.
본 출원의 실시예에서, 다운 확률이 제2 역치보다 작은 것은 단지 오류 메모리만 마킹하면 되며, 계속하여 호스트 머신의 기타 정상적인 메모리를 사용할 수 있다.
본 출원의 실시예에 따른 메모리 오류 처리 방법은 커널 시스템이 송신한 제1 제어 명령을 획득하고, 제1 제어 명령에 따라 호스트 머신의 타겟 메모리 페이지의 타겟 위치에 정보를 기입하며, 기입 정보에 따라 타겟 메모리 페이지의 타겟 위치에 대응되는 제1 코드를 생성하고, 커널 시스템이 송신한 제2 제어 명령을 획득하며, 제2 제어 명령에 따라 타겟 메모리 페이지의 타겟 위치로부터 정보를 판독하고, 판독 정보에 따라 타겟 메모리 페이지의 타겟 위치에 대응되는 제2 코드를 생성하며, 제1 코드와 제2 코드가 상이할 경우, 타겟 메모리 페이지에 오류가 발생하였다고 결정하고, 미리 설정된 알고리즘에 따라 제1 코드와 제2 코드를 해석하여 해석한 후의 제1 코드와 제2 코드의 차이 코드를 획득하며, 차이 코드에 따라 타겟 메모리 페이지의 타겟 위치에 대응되는 오류 비트를 결정하고, 오류 비트에 따라 오류의 총 수량 및 오류 비트 사이의 위치 특징을 획득하며, 미리 트레이닝 된 확률 분석 모델을 획득하고, 오류 파라미터를 확률 분석 모델에 입력하여 처리하여, 호스트 머신의 다운 확률을 획득하며, 다운 확률이 미리 설정된 제1 역치보다 크거나 같을 경우, 타겟 호스트 머신에 호스트 머신의 모든 가상 머신을 이전시키되, 타겟 호스트 머신의 다운 확률이 미리 설정된 제2 역치보다 작고, 제2 역치는 제1 역치보다 작으며, 다운 확률이 상기 제1 역치보다 작고 미리 설정된 제2 역치보다 크거나 같을 경우, 오류 메모리를 마킹하고, 다운 확률이 제2 역치보다 작을 경우, 오류 메모리를 마킹하며 계속하여 호스트 머신의 기타 정상적인 메모리를 사용한다. 이로써, 가상 머신이 다운 오류의 영향을 받는 것을 회피하여 사용자 사용 체험과 서비스 품질을 향상시킨다.
상기 실시예를 구현하기 위하여 본 출원은 메모리 오류 처리 장치를 제공한다.
도 4는 본 출원의 제4 실시예에 따라 제공하는 메모리 오류 처리 장치의 구조 개략도이다.
도 4에 도시된 바와 같이, 상기 메모리 오류 처리 장치(400)는 제1 획득 모듈(401), 결정 모듈(402) 및 처리 모듈(403)을 포함한다.
제1 획득 모듈(401)은, 호스트 머신의 메모리에 오류가 발생한 것을 검출할 경우, 오류 메모리의 오류 파라미터를 획득한다.
결정 모듈(402)은, 상기 오류 파라미터에 따라 상기 호스트 머신의 다운 확률을 결정한다.
처리 모듈(403)은, 상기 다운 확률이 미리 설정된 제1 역치보다 크거나 같을 경우, 타겟 호스트 머신에 상기 호스트 머신의 모든 가상 머신을 이전시키되, 상기 타겟 호스트 머신의 다운 확률이 미리 설정된 제2 역치보다 작고, 상기 제2 역치가 상기 제1 역치보다 작다.
도 5는 본 출원의 제5 실시예에 따라 제공하는 메모리 오류 처리 장치의 구조 개략도이다.
도 5에 도시된 바와 같이, 도 4의 기초상에 클로즈 모듈(404)을 더 포함한다.
클로즈 모듈(404)은, 상기 오류 메모리에 가상 머신 프로세스가 운행될경우, 상기 가상 머신 프로세스를 닫는다.
이로써, 호스트 머신의 메모리에 오류가 발생할 경우, 오류 메모리에서 운행되는 가상 머신 프로세스를 닫음으로써 가상 머신이 다운 오류의 영향을 받는 것을 회피하여 사용자의 사용 체험과 서비스 품질을 향상시킨다.
본 출원의 실현 가능한 한가지 방식에서, 도 6에 도시된 바와 같이, 도 4의 기초상에 제2 획득 모듈(405), 기입 모듈(406), 제1 생성 모듈(407), 제3 획득 모듈(408), 판독 모듈(409), 제2 생성 모듈(410) 및 비교 결정 모듈(411)을 더 포함한다.
제2 획득 모듈(405)은, 커널 시스템이 송신한 제1 제어 명령을 획득한다.
기입 모듈(406)은, 상기 제1 제어 명령에 따라 상기 호스트 머신의 타겟 메모리 페이지의 타겟 위치에 정보를 기입한다.
제1 생성 모듈(407)은, 기입 정보에 따라 상기 타겟 메모리 페이지의 타겟 위치에 대응되는 제1 코드를 생성한다.
제3 획득 모듈(408)은, 상기 커널 시스템이 송신한 제2 제어 명령을 획득한다.
판독 모듈(409)은, 상기 제2 제어 명령에 따라 상기 타겟 메모리 페이지의 상기 타겟 위치로부터 정보를 판독한다.
제2 생성 모듈(410)은, 판독 정보에 따라 상기 타겟 메모리 페이지의 타겟 위치에 대응되는 제2 코드를 생성한다.
비교 결정 모듈(411)은 상기 제1 코드와 상기 제2 코드를 비교하는데, 양자가 일치하지 않으면 상기 타겟 메모리 페이지에 오류가 발생하였다고 결정한다.
본 출원의 실현 가능한 한가지 방식에서, 제1 획득 모듈(401)은 구체적으로, 미리 설정된 알고리즘에 따라 상기 제1 코드와 상기 제2 코드를 해석하여 해석한 후의 제1 코드와 제2 코드의 차이 코드를 획득하고; 상기 차이 코드에 따라 상기 타겟 메모리 페이지의 타겟 위치에 대응되는 오류 비트를 결정하며; 상기 오류 비트에 따라 오류의 총 수량 및 오류 비트 사이의 위치 특징을 획득하는데 사용된다.
본 출원의 실현 가능한 한가지 방식에서, 결정 모듈(402)은 구체적으로, 미리 트레이닝 된 확률 분석 모델을 획득하고; 상기 오류 파라미터를 상기 확률 분석 모델에 입력하여 처리하여, 상기 호스트 머신의 다운 확률을 획득하는데 사용된다.
본 출원의 실현 가능한 한가지 방식에서, 도 7에 도시된 바와 같이, 도 4의 기초상에 제1 마킹 모듈(412), 이전 결정 모듈(413) 및 제2 마킹 모듈(414)을 더 포함한다.
제1 마킹 모듈(412)은, 상기 다운 확률이 상기 제1 역치보다 작고 미리 설정된 제2 역치보다 크거나 같으며, 상기 제1 역치가 상기 제2 역치보다 크면, 상기 오류 메모리를 마킹하고 계속하여 상기 호스트 머신의 기타 정상적인 메모리를 사용한다.
이전 결정 모듈(413)은, 상기 다운 확률과 상기 호스트 머신의 모든 가상 머신 수량에 따라 타겟 가상 머신을 결정하고 상기 타겟 가상 머신을 이전시키되; 상기 타겟 가상 머신의 수량은 상기 모든 가상 머신 수량보다 적다.
제2 마킹 모듈(414)은, 상기 다운 확률이 상기 제2 역치보다 작으며, 상기 제1 역치가 상기 제2 역치보다 크면, 상기 오류 메모리를 마킹하고 계속하여 상기 호스트 머신의 기타 정상적인 메모리를 사용한다.
본 출원의 실시예에 따른 메모리 오류 처리 장치는, 호스트 머신의 메모리에 오류가 발생한 것을 검출할 경우, 오류 메모리의 오류 파라미터를 획득하고, 오류 파라미터에 따라 호스트 머신의 다운 확률을 결정하며, 다운 확률이 미리 설정된 제1 역치보다 크거나 같을 경우, 타겟 호스트 머신에 호스트 머신의 모든 가상 머신을 이전시키되, 타겟 호스트 머신의 다운 확률이 미리 설정된 제2 역치보다 작고, 제2 역치는 제1 역치보다 작다. 이로써, 호스트 머신의 메모리에 오류가 발생할 경우, 호스트 머신의 모든 가상 머신이 모두 서비스를 중지하는 문제를 방지하고 호스트 머신의 다운 확률이 미리 설정된 역치보다 크거나 같을 경우 호스트 머신의 가상 머신을 다운 확률이 호스트 머신보다 작은 타겟 호스트 머신에 이전시켜 가상 머신이 다운 오류의 영향을 받는 것을 회피하고 사용자 사용 체험과 서비스 품질을 향상시킨다.
본 출원의 실시예에 따르면, 본 출원은 전자 기기 및 판독 가능 저장 매체를 더 제공한다. 본 출원의 실시예에 따르면, 컴퓨터 판독 가능 매체에 저장되어 있는 컴퓨터 프로그램을 더 제공한다. 당해 컴퓨터 프로그램중의 명령이 실행될 경우, 상기 메모리 오류 처리 방법이 실행된다.
도 8에 도시된 바와 같이, 이는 본 출원의 실시예에 따른 메모리 오류 처리 방법을 구현하는 전자 기기의 블록도이다. 전자 기기는 랩톱 컴퓨터, 데스크톱 컴퓨터, 워크 벤치, 개인용 정보 단말기, 서버, 블레이드 서버, 메인 프레임 컴퓨터 및 다른 적합한 컴퓨터 등의 다양한 형태의 디지털 컴퓨터를 가리킨다. 전자 기기는 또한 개인용 정보 단말기, 셀룰러 폰, 스마트 폰, 웨어러블 장치 및 다른 유사한 컴퓨팅 장치와 같은 다양한 형태의 모바일 장치를 나타낼 수 있다. 본 명세서에 도시된 구성 요소, 그들의 연결 및 관계 및 그 기능은 단지 예시에 불과하며, 본 명세서에 기술되거나 및/또는 청구된 구현을 한정하도록 의도되지 않는다.
도 8에 도시된 바와 같이, 상기 전자 기기는 하나 이상의 프로세서(801), 메모리(802) 및 고속 인터페이스 및 저속 인터페이스를 포함하는 다양한 구성 요소를 연결하기 위한 인터페이스를 포함한다. 다양한 구성 요소는 서로 다른 버스를 사용하여 서로 연결되며 마더 보드에 설치되거나 필요에 따라 다른 방식으로 설치될 수 있다. 프로세서는 외부 입력/출력 장치(예를 들어, 인터페이스에 연결된 디스플레이 장치)에 GUI의 그래픽 정보를 표시하기 위해 메모리에 저장된 명령을 포함하여 전자 기기 내에서 실행되는 명령을 처리할 수 있다. 다른 실시 방식에서, 필요한 경우, 다수의 프로세서 및/또는 다수의 버스를 다수의 메모리와 함께 사용할 수 있다. 마찬가지로, 여러 전자 기기를 연결할 수 있고, 각 장치는 단지 몇가지 필요한 기능(예를 들어, 서버 배열, 블레이드 서버 그룹 또는 다중 프로세서 시스템)을 제공할 수 있다. 도 8은 프로세서(801)가 하나인 경우를 예를 들어 설명한다.
메모리(802)는 본 출원에 의해 제공된 비 일시적 컴퓨터 판독 가능 저장 매체이다. 적어도 하나의 프로세서에 의해 본 출원의 메모리 오류 처리 방법을 수행하도록, 상기 메모리에는 적어도 하나의 프로세서에 의해 실행 가능한 명령이 저장된다. 본 출원의 비 일시적 컴퓨터 판독 가능 저장 매체에는 컴퓨터로 하여금 본 출원의 메모리 오류 처리 방법을 실행하게 하는 컴퓨터 명령어가 저장된다.
메모리(802)는 비 일시적 컴퓨터 판독 가능 저장 매체로서, 비 일시적 소프트웨어 프로그램, 비 일시적 컴퓨터 실행 가능 프로그램, 본 출원의 실시예의 메모리 오류 처리 방법에 대응하는 프로그램 명령/모듈과 같은 모듈(예를 들어, 도 4에 도시된 제1 획득 모듈(401), 결정 모듈(402) 및 처리 모듈(403))을 저장하기 위해 사용될 수 있다. 프로세서(801)는 메모리(802)에 저장된 비 일시적 소프트웨어 프로그램, 명령 및 모듈을 실행하여 서버의 다양한 기능적 애플리케이션 및 데이터 처리를 실행한다. 다시 말하면, 상기 방법 실시예의 메모리 오류 처리 방법을 구현한다.
메모리(802)는 프로그램을 저장하기 위한 영역 및 데이터를 저장하기 위한 영역을 포함할 수 있고, 여기서 프로그램을 저장하기 위한 영역은 운영 체제 및 적어도 하나의 기능에 필요한 응용 프로그램이 저장될 수 있고; 데이터를 저장하기 위한 영역에는 모델의 파라미터를 업데이트하는 전자 기기를 사용하여 생성된 데이터가 저장될 수 있다. 또한, 메모리(802)는 고속 랜덤 액세스 메모리를 포함할 수 있고, 또한 자기 디스크 저장 장치, 플래시 메모리 장치 또는 다른 비 일시적 솔리드 스테이트 저장 장치와 같은 적어도 하나의 비 일시적 메모리를 포함할 수 있다. 일부 실시예에서, 메모리(802)는 프로세서(801)에 대해 원격으로 설정된 메모리를 선택적으로 포함할 수 있고, 이러한 원격 메모리는 네트워크를 통해 모델의 파라미터가 업데이트된 전자 기기에 연결될 수 있다. 상기 네트워크의 사례는 인터넷, 인트라넷, 근거리 통신망, 이동 통신망 및 이들의 조합을 포함하지만 이에 한정되지는 않는다.
메모리 오류 처리 방법을 수행하는 전자 기기는 입력 장치(803) 및 출력 장치(804)를 더 포함할 수 있다. 프로세서(801), 메모리(802), 입력 장치(803) 및 출력 장치(804)는 버스를 통해 연결되거나 또는 다른 방식으로 연결될 수 있으며, 도 8은 버스를 통한 연결을 예시한 것이다.
입력 장치(803)는 입력된 숫자 또는 문자 정보를 수신할 수 있고, 모델의 파라미터를 업데이트하는 전자 기기의 사용자 설정 및 기능 제어와 관련된 키 신호 입력을 생성할 수 있으며, 터치 스크린, 키 패드, 마우스, 트랙 패드, 터치 패드, 포인팅 스틱, 하나 이상의 마우스 버튼, 트랙 볼, 조이스틱 및 기타 입력 장치일 수 있다. 출력 장치(804)는 디스플레이 장치, 보조 조명 장치(예를 들어, LED), 촉각 피드백 장치(예를 들어, 진동 모터) 등을 포함할 수 있다. 상기 디스플레이 장치는 액정 디스플레이(LCD), 발광 다이오드(LED) 디스플레이 및 플라즈마 디스플레이를 포함할 수 있지만, 이에 한정되지는 않는다. 일부 실시 방식에서, 디스플레이 장치는 터치 스크린일 수 있다.
본 명세서에 설명된 시스템 및 기술의 다양한 실시 방식은 디지털 전자 회로, 집적 회로 시스템, 전용 ASIC(애플리케이션 특정 집적 회로), 컴퓨터 하드웨어, 펌웨어, 소프트웨어 및/또는 이들의 조합에 의해 구현될 수 있다. 이러한 다양한 실시 방식은 하나 이상의 컴퓨터 프로그램에 의해 실시될 수 있고, 상기 하나 이상의 컴퓨터 프로그램은 적어도 하나의 프로그램 가능 시스템에 의해 실행 및/또는 해석될 수 있으며, 상기 프로그램 가능 프로세서는 전용 또는 범용 프로그램 가능 프로세서일 수 있고, 저장 시스템, 적어도 하나의 입력 장치 및 적어도 하나의 출력 장치로부터 데이터 및 명령을 수신하며, 데이터 및 명령을 저장 시스템, 적어도 하나의 입력 장치 및 적어도 하나의 출력 장치에 전송할 수 있다.
이러한 컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 응용 프로그램 또는 코드라고도 함)에는 프로그램 가능 프로세서의 기계 명령어가 포함되고, 고급 프로세스 및/또는 객체 지향 프로그래밍 언어 및/또는 어셈블리 언어/기계어를 사용하여 이러한 컴퓨터 프로그램을 구현할 수 있다. 본 명세서에서 사용되는 용어 "기계 판독 가능 매체” 및 "컴퓨터 판독 가능 매체”는 프로그램 가능 프로세서에 기계 명령 및/또는 데이터를 제공하기 위해 사용되는 임의의 컴퓨터 프로그램 제품, 장비 및/또는 장치(예를 들어, 자기 디스크, 광 디스크, 메모리, 프로그램 가능 논리 장치(PLD))를 가리키며, 기계 판독 가능 신호로서 기계 명령을 수신하는 기계 판독 가능 매체를 포함한다. 용어 "기계 판독 가능 신호”는 기계 명령 및/또는 데이터를 프로그램 가능 프로세서에 제공하기 위한 임의의 신호를 지칭한다.
사용자와의 인터랙티브를 제공하기 위해, 컴퓨터에서 여기에 설명된 시스템 및 기술을 구현할 수 있다. 컴퓨터는 사용자에게 정보를 표시하기 위한 디스플레이 장치(예를 들어, CRT(음극선관) 또는 LCD(액정 디스플레이) 모니터)와 키보드 및 포인팅 장치(예를 들어, 마우스 또는 트랙 볼)를 포함하고, 사용자는 상기 키보드 및 상기 포인팅 장치를 통해 정보를 입력하여 컴퓨터에 제공할 수 있다. 다른 종류의 장치를 사용하여 사용자와의 인터랙티브를 제공할 수도 있다. 예를 들어, 사용자에게 제공되는 피드백은 임의의 형태의 감각 피드백(예를 들어, 시각적 피드백, 청각 피드백 또는 촉각 피드백) 일 수 있고, 임의의 형태(음성 입력, 스피치 입력 또는 촉각 입력 포함)로 사용자에 의해 송신된 정보를 수신할 수 있다.
본 명세서에 설명된 시스템 및 기술은 백 엔드 구성 요소(예를 들어, 데이터 서버)를 포함하는 컴퓨팅 시스템 또는 미들웨어 구성 요소(예를 들어, 애플리케이션 서버)를 포함하는 컴퓨팅 시스템 또는 프론트 엔드 구성 요소(예를 들어, 예를 들어, 그래픽 사용자 인터페이스 또는 웹 브라우저를 가진 사용자 컴퓨터일 수 있으며, 사용자는 그래픽 사용자 인터페이스 또는 웹 브라우저를 통해 여기에 설명된 시스템 및 기술의 실시형태와 인터랙티브 할 수 있음)를 포함하는 컴퓨팅 시스템 또는 이러한 백 엔드 구성 요소, 미들웨어 구성 요소 또는 프론트 엔드 구성 요소의 임의의 조합을 포함하는 컴퓨팅 시스템에 의해 구현될 수 있다. 시스템의 구성 요소는 임의의 형태 또는 매체의 디지털 데이터 통신(예를 들어, 통신 네트워크)에 의해 상호 연결될 수 있다. 통신 네트워크의 예로는 근거리 통신망(LAN), 광역 통신망(WAN) 및 인터넷이 포함될 수 있다.
컴퓨터 시스템은 클라이언트 및 서버를 포함할 수 있다. 클라이언트와 서버는 일반적으로 서로 멀리 떨어져 있으며, 일반적으로 통신 네트워크를 통해 인터랙티브 한다. 클라이언트와 서버 간의 관계는 해당 컴퓨터에서 실행되고 서로 클라이언트-서버 관계가 있는 컴퓨터 프로그램에 의해 발생된다.
본 출원의 실시예의 기술적 해결수단에 따르면, 호스트 머신의 메모리에 오류가 발생한 것을 검출할 경우, 오류 메모리의 오류 파라미터를 획득하고, 오류 파라미터에 따라 호스트 머신의 다운 확률을 결정하며, 다운 확률이 미리 설정된 제1 역치보다 크거나 같을 경우, 타겟 호스트 머신에 호스트 머신의 모든 가상 머신을 이전시키되, 타겟 호스트 머신의 다운 확률이 미리 설정된 제2 역치보다 작고, 제2 역치는 제1 역치보다 작다. 이로써, 호스트 머신의 메모리에 오류가 발생할 경우, 호스트 머신의 모든 가상 머신이 모두 서비스를 중지하는 문제를 방지하고 호스트 머신의 다운 확률이 미리 설정된 역치보다 크거나 같을 경우 호스트 머신의 가상 머신을 다운 확률이 호스트 머신보다 작은 타겟 호스트 머신에 이전시켜 가상 머신이 다운 오류의 영향을 받는 것을 회피하고 사용자 사용 체험과 서비스 품질을 향상시킨다.
상기에 도시된 다양한 형태의 과정을 통해 단계를 재정렬, 추가 또는 삭제할 수 있다는 것을 이해해야 한다. 예를 들어, 본 출원에 설명된 각 단계들은 병렬, 순차적 또는 상이한 순서로 수행될 수 있으며, 본 출원에 개시된 기술적 해결책이 원하는 결과를 달성할 수만 있으면, 별도로 한정되지 않는다.
상기 구체적인 실시 방식은 본 출원의 보호 범위에 대한 제한을 구성하지 않는다. 당업자는 설계 요건 및 다른 요인에 따라 다양한 변형, 조합, 하위 조합 및 대체가 이루어질 수 있다는 것을 이해해야 한다. 본 출원의 원리와 원칙 내에서 이루어진 모든 수정, 동등한 대체 및 개선은 모두 본 출원의 보호 범위에 포함된다.

Claims (17)

  1. 메모리 오류 처리 방법에 있어서, 상기 방법은 서버에 의해 수행되고,
    호스트 머신의 메모리에 오류가 발생한 것을 검출할 경우, 오류 메모리의 오류 파라미터를 획득하는 단계;
    상기 오류 파라미터에 따라 상기 호스트 머신의 다운 확률을 결정하는 단계;
    상기 다운 확률이 미리 설정된 제1 역치보다 크거나 같을 경우, 타겟 호스트 머신에 상기 호스트 머신의 모든 가상 머신을 이전시키는 단계 - 상기 타겟 호스트 머신의 다운 확률은 미리 설정된 제2 역치보다 작고, 상기 제2 역치는 상기 제1 역치보다 작음 -;
    상기 다운 확률이 상기 제1 역치보다 작고 상기 제2 역치보다 크거나 같을 경우, 상기 오류 메모리를 마킹하고, 상기 다운 확률과 상기 호스트 머신의 모든 가상 머신 수량에 따라 타겟 가상 머신을 결정하고 상기 타겟 가상 머신을 이전시키는 단계 - 상기 타겟 가상 머신의 수량은 상기 모든 가상 머신 수량보다 작음 -; 및
    상기 다운 확률이 상기 제2 역치보다 작을 경우, 이전시키지 않고 단지 상기 오류 메모리를 마킹하는 단계를 포함하는,
    것을 특징으로 하는 메모리 오류 처리 방법.
  2. 제1항에 있어서,
    상기 오류 메모리의 오류 파라미터를 획득하는 단계 전에,
    상기 오류 메모리에 가상 머신 프로세스가 운행될경우, 상기 가상 머신 프로세스를 닫는 단계를 더 포함하는
    것을 특징으로 하는 메모리 오류 처리 방법.
  3. 제1항에 있어서,
    커널 시스템이 송신한 제1 제어 명령을 획득하는 단계;
    상기 제1 제어 명령에 따라 상기 호스트 머신의 타겟 메모리 페이지의 타겟 위치에 정보를 기입하는 단계;
    기입 정보에 따라 상기 타겟 메모리 페이지의 타겟 위치에 대응되는 제1 코드를 생성하는 단계;
    상기 커널 시스템이 송신한 제2 제어 명령을 획득하는 단계;
    상기 제2 제어 명령에 따라 상기 타겟 메모리 페이지의 상기 타겟 위치로부터 정보를 판독하는 단계;
    판독 정보에 따라 상기 타겟 메모리 페이지의 타겟 위치에 대응되는 제2 코드를 생성하는 단계; 및
    상기 제1 코드와 상기 제2 코드가 상이할 경우, 상기 타겟 메모리 페이지에 오류가 발생하였다고 결정하는 단계를 더 포함하는
    것을 특징으로 하는 메모리 오류 처리 방법.
  4. 제3항에 있어서,
    상기 오류 메모리의 오류 파라미터를 획득하는 단계는,
    미리 설정된 알고리즘에 따라 상기 제1 코드와 상기 제2 코드를 해석하여 해석한 후의 제1 코드와 제2 코드의 차이 코드를 획득하는 단계;
    상기 차이 코드에 따라 상기 타겟 메모리 페이지의 타겟 위치에 대응되는 오류 비트를 결정하는 단계;
    상기 오류 비트에 따라 오류의 총 수량 및 오류 비트 사이의 위치 특징을 획득하는 단계를 포함하는
    것을 특징으로 하는 메모리 오류 처리 방법.
  5. 제1항에 있어서,
    상기 오류 파라미터에 따라 상기 호스트 머신의 다운 확률을 결정하는 단계는,
    미리 트레이닝 된 확률 분석 모델을 획득하는 단계;
    상기 오류 파라미터를 상기 확률 분석 모델에 입력하여 처리하여, 상기 호스트 머신의 다운 확률을 획득하는 단계를 포함하는
    것을 특징으로 하는 메모리 오류 처리 방법.
  6. 삭제
  7. 삭제
  8. 메모리 오류 처리 장치에 있어서,
    호스트 머신의 메모리에 오류가 발생한 것을 검출할 경우, 오류 메모리의 오류 파라미터를 획득하는 제1 획득 모듈;
    상기 오류 파라미터에 따라 상기 호스트 머신의 다운 확률을 결정하는 결정 모듈;
    상기 다운 확률이 미리 설정된 제1 역치보다 크거나 같을 경우, 타겟 호스트 머신에 상기 호스트 머신의 모든 가상 머신을 이전시키는 처리 모듈 - 상기 타겟 호스트 머신의 다운 확률은 미리 설정된 제2 역치보다 작고, 상기 제2 역치는 상기 제1 역치보다 작음 -;
    상기 다운 확률이 상기 제1 역치보다 작고 상기 제2 역치보다 크거나 같을 경우, 상기 오류 메모리를 마킹하는 제1 마킹 모듈;
    상기 다운 확률과 상기 호스트 머신의 모든 가상 머신 수량에 따라 타겟 가상 머신을 결정하고 상기 타켓 가상 머신을 이전시키되, 상기 타켓 가상 머신의 수량은 상기 모든 가상 머신 수량보다 작은 이전 결정 모듈; 및
    상기 다운 확률이 상기 제2 역치보다 작을 경우, 상기 오류 메모리를 마킹하는 제2 마킹 모듈을 포함하는,
    것을 특징으로 하는 메모리 오류 처리 장치.
  9. 제8항에 있어서,
    상기 오류 메모리에 가상 머신 프로세스가 운행될경우, 상기 가상 머신 프로세스를 닫는 클로즈 모듈을 더 포함하는
    것을 특징으로 하는 메모리 오류 처리 장치.
  10. 제8항에 있어서,
    커널 시스템이 송신한 제1 제어 명령을 획득하는 제2 획득 모듈;
    상기 제1 제어 명령에 따라 상기 호스트 머신의 타겟 메모리 페이지의 타겟 위치에 정보를 기입하는 기입 모듈;
    기입 정보에 따라 상기 타겟 메모리 페이지의 타겟 위치에 대응되는 제1 코드를 생성하는 제1 생성 모듈;
    상기 커널 시스템이 송신한 제2 제어 명령을 획득하는 제3 획득 모듈;
    상기 제2 제어 명령에 따라 상기 타겟 메모리 페이지의 상기 타겟 위치로부터 정보를 판독하는 판독 모듈;
    판독 정보에 따라 상기 타겟 메모리 페이지의 타겟 위치에 대응되는 제2 코드를 생성하는 제2 생성 모듈; 및
    상기 제1 코드와 상기 제2 코드가 상이할 경우, 상기 타겟 메모리 페이지에 오류가 발생하였다고 결정하는 비교 결정 모듈을 더 포함하는
    것을 특징으로 하는 메모리 오류 처리 장치.
  11. 제10항에 있어서,
    상기 제1 획득 모듈은 구체적으로,
    미리 설정된 알고리즘에 따라 상기 제1 코드와 상기 제2 코드를 해석하여 해석한 후의 제1 코드와 제2 코드의 차이 코드를 획득하고;
    상기 차이 코드에 따라 상기 타겟 메모리 페이지의 타겟 위치에 대응되는 오류 비트를 결정하며;
    상기 오류 비트에 따라 오류의 총 수량 및 오류 비트 사이의 위치 특징을 획득하는데 사용되는
    것을 특징으로 하는 메모리 오류 처리 장치.
  12. 제8항에 있어서,
    상기 결정 모듈은 구체적으로,
    미리 트레이닝 된 확률 분석 모델을 획득하고;
    상기 오류 파라미터를 상기 확률 분석 모델에 입력하여 처리하여, 상기 호스트 머신의 다운 확률을 획득하는데 사용되는
    것을 특징으로 하는 메모리 오류 처리 장치.
  13. 삭제
  14. 삭제
  15. 전자 기기에 있어서,
    적어도 하나의 프로세서; 및
    상기 적어도 하나의 프로세서와 통신 가능하게 연결되는 메모리를 포함하고,
    상기 메모리에는 상기 적어도 하나의 프로세서에 의해 실행 가능한 명령이 저장되어 있고 상기 명령이 상기 적어도 하나의 프로세서에 의해 실행되어 상기 적어도 하나의 프로세서에 의해 제1항 내지 제5항 중 어느 한 항에 따른 메모리 오류 처리 방법이 수행되도록 하는
    것을 특징으로 하는 전자 기기.
  16. 컴퓨터 명령이 저장되어 있는 비일시적 컴퓨터 판독 가능 저장매체에 있어서,
    상기 컴퓨터 명령은 상기 컴퓨터가 제1항 내지 제5항 중 어느 한 항에 따른 메모리 오류 처리 방법을 수행하도록 하는
    것을 특징으로 하는 비일시적 컴퓨터 판독 가능 저장매체.
  17. 컴퓨터 판독 가능 저장 매체에 저장되어 있는 컴퓨터 프로그램에 있어서,
    상기 컴퓨터 프로그램중의 명령이 실행될 경우, 제1항 내지 제5항 중 어느 한 항에 따른 메모리 오류 처리 방법이 실행되는,
    것을 특징으로 하는 컴퓨터 판독 가능 저장 매체에 저장되어 있는 컴퓨터 프로그램.
KR1020210042579A 2020-05-29 2021-04-01 메모리 오류 처리 방법, 장치, 전자 기기 및 저장매체 KR102488882B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010477094.7A CN111708653B (zh) 2020-05-29 2020-05-29 内存故障处理方法、装置、电子设备和存储介质
CN202010477094.7 2020-05-29

Publications (2)

Publication Number Publication Date
KR20210044194A KR20210044194A (ko) 2021-04-22
KR102488882B1 true KR102488882B1 (ko) 2023-01-17

Family

ID=72538390

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210042579A KR102488882B1 (ko) 2020-05-29 2021-04-01 메모리 오류 처리 방법, 장치, 전자 기기 및 저장매체

Country Status (5)

Country Link
US (1) US20210208923A1 (ko)
EP (1) EP3859528A3 (ko)
JP (1) JP7168833B2 (ko)
KR (1) KR102488882B1 (ko)
CN (1) CN111708653B (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113076175B (zh) * 2021-03-26 2022-09-30 北京汇钧科技有限公司 用于虚拟机的内存共享方法及装置
US20230315561A1 (en) * 2022-03-31 2023-10-05 Google Llc Memory Error Recovery Using Write Instruction Signaling

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050188278A1 (en) * 2003-12-30 2005-08-25 Zimmer Vincent J. System software to self-migrate from a faulty memory location to a safe memory location
US20120054543A1 (en) * 2010-08-26 2012-03-01 Cisco Technology, Inc. Partial memory mirroring and error containment
JP2012118841A (ja) 2010-12-02 2012-06-21 Hitachi Ltd 仮想マシン管理装置、移行先決定方法および移行先決定プログラム
KR101867487B1 (ko) 2016-12-23 2018-07-18 경희대학교 산학협력단 클라우드 환경에서 퍼지기반의 마이그레이션 시스템 및 방법
WO2020000405A1 (en) * 2018-06-29 2020-01-02 Microsoft Technology Licensing, Llc. Multi-phase cloud service node error prediction

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070074067A1 (en) 2005-09-29 2007-03-29 Rothman Michael A Maintaining memory reliability
US9069730B2 (en) * 2009-06-29 2015-06-30 Hewlett-Packard Development Company, L. P. Coordinated reliability management of virtual machines in a virtualized system
WO2014024279A1 (ja) 2012-08-08 2014-02-13 富士通株式会社 メモリ障害リカバリ装置、方法、及びプログラム
CN106547607B (zh) * 2015-09-17 2020-02-11 中国移动通信集团公司 一种虚拟机动态迁移方法和装置
CN106681797B (zh) * 2016-12-28 2019-11-29 深圳先进技术研究院 一种虚拟机应用迁移方法、装置及一种服务器
US20180329646A1 (en) * 2017-05-12 2018-11-15 International Business Machines Corporation Distributed storage system virtual and storage data migration
US10860367B2 (en) * 2018-03-14 2020-12-08 Microsoft Technology Licensing, Llc Opportunistic virtual machine migration
US10769007B2 (en) * 2018-06-08 2020-09-08 Microsoft Technology Licensing, Llc Computing node failure and health prediction for cloud-based data center
US10776225B2 (en) * 2018-06-29 2020-09-15 Hewlett Packard Enterprise Development Lp Proactive cluster compute node migration at next checkpoint of cluster cluster upon predicted node failure
CN110399253A (zh) * 2019-07-25 2019-11-01 北京百度网讯科技有限公司 宕机处理方法和装置
US11093358B2 (en) * 2019-10-14 2021-08-17 International Business Machines Corporation Methods and systems for proactive management of node failure in distributed computing systems

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050188278A1 (en) * 2003-12-30 2005-08-25 Zimmer Vincent J. System software to self-migrate from a faulty memory location to a safe memory location
US20120054543A1 (en) * 2010-08-26 2012-03-01 Cisco Technology, Inc. Partial memory mirroring and error containment
JP2012118841A (ja) 2010-12-02 2012-06-21 Hitachi Ltd 仮想マシン管理装置、移行先決定方法および移行先決定プログラム
KR101867487B1 (ko) 2016-12-23 2018-07-18 경희대학교 산학협력단 클라우드 환경에서 퍼지기반의 마이그레이션 시스템 및 방법
WO2020000405A1 (en) * 2018-06-29 2020-01-02 Microsoft Technology Licensing, Llc. Multi-phase cloud service node error prediction

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Shivam Swami 외 1명. Reliable Nonvolatile Memories: Techniques and Measures. 2017년*

Also Published As

Publication number Publication date
EP3859528A2 (en) 2021-08-04
KR20210044194A (ko) 2021-04-22
JP7168833B2 (ja) 2022-11-10
US20210208923A1 (en) 2021-07-08
CN111708653B (zh) 2023-08-08
JP2021108174A (ja) 2021-07-29
CN111708653A (zh) 2020-09-25
EP3859528A3 (en) 2022-01-19

Similar Documents

Publication Publication Date Title
CN113110988B (zh) 利用定义的输入格式来测试应用
KR102488882B1 (ko) 메모리 오류 처리 방법, 장치, 전자 기기 및 저장매체
US10339036B2 (en) Test automation using multiple programming languages
KR101761498B1 (ko) 추론을 지원하는 게스트 반환 주소 스택 에뮬레이션을 위한 방법 및 장치
JP2022003539A (ja) テキスト誤り訂正方法、装置、電子機器及び記憶媒体
US11086527B1 (en) Pre-fetching data based on memory usage patterns
JP7044839B2 (ja) エンドツーエンドモデルのトレーニング方法および装置
KR102497730B1 (ko) 데이터 처리 방법, 장치, 기기 및 저장매체
JP7133002B2 (ja) 句読点予測方法および装置
CN110175128B (zh) 一种相似代码案例获取方法、装置、设备和存储介质
KR20210080150A (ko) 번역 방법, 장치, 전자 기기 및 판독 가능 저장 매체
KR20210116295A (ko) 오디오 처리 칩의 처리 방법, 장치, 전자 기기, 매체 및 프로그램
US20210232765A1 (en) Method and apparatus for generating text based on semantic representation, and medium
JP7286737B2 (ja) テキスト誤り訂正方法、装置、電子デバイス、記憶媒体及びプログラム
US11199984B2 (en) Data writing method and apparatus, and electronic device
US20230012881A1 (en) Method and apparatus for reading data, electronic device and storage medium
EP4024217A1 (en) Sampling target determination method and apparatus, and electronic device and computer-readable storage medium
US20220374331A1 (en) Method of debugging applet, electronic device, and storage medium
US20200057802A1 (en) Techniques for automated control of computer programs through text-based user interfaces
CN117648092A (zh) 字节码处理方法及装置
CN116069582A (zh) 应用程序生成方法和装置

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant