KR20200034572A - 요청 처리 방법 및 장치 - Google Patents

요청 처리 방법 및 장치 Download PDF

Info

Publication number
KR20200034572A
KR20200034572A KR1020190083624A KR20190083624A KR20200034572A KR 20200034572 A KR20200034572 A KR 20200034572A KR 1020190083624 A KR1020190083624 A KR 1020190083624A KR 20190083624 A KR20190083624 A KR 20190083624A KR 20200034572 A KR20200034572 A KR 20200034572A
Authority
KR
South Korea
Prior art keywords
virtual machine
processing
work queue
processing thread
request
Prior art date
Application number
KR1020190083624A
Other languages
English (en)
Other versions
KR102214981B1 (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 KR20200034572A publication Critical patent/KR20200034572A/ko
Application granted granted Critical
Publication of KR102214981B1 publication Critical patent/KR102214981B1/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
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • G06F9/5088Techniques for rebalancing the load in a distributed system involving task 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/45575Starting, stopping, suspending or resuming virtual machine instances
    • 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/45579I/O management, e.g. providing access to device drivers or storage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5018Thread allocation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Bus Control (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 출원의 실시예는 요청 처리 방법 및 장치를 개시한다. 해당 방법의 일 구체적인 실시예는, 가상 머신이 작동됨에 대응하여, 가상 머신의 각 장치마다, 가상 머신의 장치에 대응되는 하나의 처리 스레드에 바인딩된 장치의 작업 대기열의 수량을 지시하는 작업 대기열 수량 정보를 획득하되, 상기 수량은 하나 또는 다수개인 단계와, 가상 머신의 각 장치의 작업 대기열 수량 정보를 기반으로, 상기 가상 머신의 각 장치에 대응되는 처리 스레드를 각각 구축하되, 상기 가상 머신의 각 장치에 대응되는 처리 스레드는 상기 처리 스레드에 바인딩된 장치의 작업 대기열 중의 가상 머신의 장치에 대한 액세스 요청을 처리하기 위한 것인 단계를 포함한다. 가상 머신의 상이한 장치를 상대로 하여, 장치에 대응되는 I/O 스레드에 바인딩된 처리 스레드의 수량을 조정하는 것을 구현함으로써, 가상 머신의 장치의 I/O 성능을 향상시켜키고, 나아가 전반적인 시스템의 I/O 성능을 향상시킨다.

Description

요청 처리 방법 및 장치{REQUEST PROCESSING METHOD AND APPARATUS}
본 출원은 컴퓨터 기술 분야에 관한 것으로, 구체적으로는 가상 머신 기술 분야에 관한 것이며, 특히 요청 처리 방법 및 장치에 관한 것이다.
클라우드 컴퓨팅 환경에 있어서, 다수의 작업 대기열을 구비하는 Virtio 장치는 광범위하게 적용된다. 클라우드 컴퓨팅 기술 분야에 있어서, 다수의 작업 대기열을 구비하는 Virtio 장치의 I/O 성능을 어떻게 향상시키는 것은 언제나 연구의 초점으로 대두되었다.
본 출원의 실시예는 요청 처리 방법 및 장치를 제공한다.
제1 양태에 있어서, 본 출원의 실시예는 요청 처리 방법을 제공하며, 해당 방법은, 가상 머신이 작동됨에 대응하여, 가상 머신의 각 장치마다, 가상 머신의 장치에 대응되는 하나의 처리 스레드에 바인딩된 장치의 작업 대기열의 수량을 지시하는 작업 대기열 수량 정보를 획득하되, 상기 수량은 하나 또는 다수개인 단계와, 가상 머신의 각 장치의 작업 대기열 수량 정보를 기반으로, 상기 가상 머신의 각 장치에 대응되는 처리 스레드를 각각 구축하되, 상기 가상 머신의 각 장치에 대응되는 처리 스레드는 상기 처리 스레드에 바인딩된 장치의 작업 대기열 중의 가상 머신의 장치에 대한 액세스 요청을 처리하기 위한 것인 단계를 포함한다.
제2 양태에 있어서, 본 출원의 실시예는 요청 처리 장치를 제공하며, 해당 장치는, 가상 머신이 작동됨에 대응하여, 가상 머신의 각 장치마다, 가상 머신의 장치에 대응되는 하나의 처리 스레드에 바인딩된 장치의 작업 대기열의 수량을 지시하는 작업 대기열 수량 정보를 획득하되, 상기 수량은 하나 또는 다수개인 획득 유닛과, 가상 머신의 각 장치의 작업 대기열 수량 정보를 기반으로, 상기 가상 머신의 각 장치에 대응되는 처리 스레드를 각각 구축하되, 상기 가상 머신의 각 장치에 대응되는 처리 스레드는 상기 처리 스레드에 바인딩된 장치의 작업 대기열 중의 가상 머신의 장치에 대한 액세스 요청을 처리하기 위한 것인 구축 유닛을 포함한다.
본 출원의 실시예에서 제공하는 요청 처리 방법 및 장치는, 가상 머신이 작동됨에 대응하여, 가상 머신이 작동됨에 대응하여, 가상 머신의 각 장치마다, 가상 머신의 장치에 대응되는 하나의 처리 스레드에 바인딩된 장치의 작업 대기열의 수량을 지시하는 작업 대기열 수량 정보를 획득하되, 상기 수량은 하나 또는 다수개이며, 가상 머신의 각 장치의 작업 대기열 수량 정보를 기반으로, 상기 가상 머신의 각 장치에 대응되는 처리 스레드를 각각 구축하되, 상기 가상 머신의 각 장치에 대응되는 처리 스레드는 상기 처리 스레드에 바인딩된 장치의 작업 대기열 중의 가상 머신의 장치에 대한 액세스 요청을 처리하기 위한 것이다. 가상 머신의 상이한 장치를 상대로 하여, 장치에 대응되는 I/O 스레드에 바인딩된 처리 스레드의 수량을 조정하는 것을 구현함으로써, 가상 머신의 장치의 I/O 성능을 향상시키고, 나아가 전반적인 시스템의 I/O 성능을 향상시킨다.
본 출원의 기타 특징, 과제 및 이점들은 아래의 첨부된 도면들을 참조하여 진행한 비 한정적인 실시예들에 대한 상세한 설명으로부터 명확해 질 것이다.
도1은 본 출원의 실시예를 구현하기에 적합한 예시적 시스템 체계구조를 나타낸다.
도2는 본 출원에 따른 요청 처리 방법의 일 실시예의 흐름도를 나타낸다.
도3은 가상 머신의 장치에 대응되는 I/O 스레드와 작업 대기열의 바인딩 관계의 개략적 효과도를 나타낸다.
도4는 본 출원에 따른 요청 처리 장치의 일 실시예의 개략적 구성도를 나타낸다.
도5는 본 출원의 실시예의 전자 장치를 구현하기에 적합한 컴퓨터 시스템의 예시적 구성도를 나타낸다.
이하, 첨부된 도면 및 실시예들을 결부하여 본 출원에 대한 보다 상세한 설명을 진행하기로 한다. 여기에 설명되는 구체적인 실시예들은 단지 관련된 발명을 해석하기 위한 것일 뿐, 해당 발명을 한정하기 위한 것이 아님을 이해할 수 있을 것이다. 또한, 설명의 편의를 위해 첨부된 도면에는 단지 관련 발명에 관한 부분만이 도시됨을 설명하고자 한다.
본 출원의 실시예 및 실시예 중의 특징들은 모순되지 않는 한 서로 조합될 수 있음을 설명하고자 한다. 이하, 첨부된 도면을 참조하고 실시예들을 결부하여 본 출원에 대한 상세한 설명을 진행하기로 한다.
도1을 참조하면, 도1은 본 출원의 실시예를 구현하기에 적합한 예시적 시스템 체계구조를 나타낸다.
가상 머신은 다수의 장치를 포함할 수 있고, 가상 머신의 장치는 가상 머신의 네트워크 카드, 디스크 등 장치일 수 있다. 가상 머신의 각 장치는 모두 작업 대기열을 구비한다. 가상 머신의 각 장치의 작업 대기열은 모두 다수개일 수 있다. 가상 머신의 장치에 대한 액세스 요청은 가상 머신의 장치에 대한 I/O 요청으로 지칭될 수 있다. 하나의 가상 머신의 장치에 대한 I/O 요청이 생성될 때마다, 가상 머신의 장치에 대한 I/O 요청은 장치의 작업 대기열에 추가된다. 가상 머신의 장치에 대한 I/O 요청을 처리하기 위한 처리 스레드는 물리적 머신 상의 가상 머신 모니터(Virtual Machine Monitor, VMM)를 통해 구축될 수 있으며, 처리 스레드는 I/O 스레드로 지칭될 수도 있다. 가상 머신의 장치의 I/O 요청의 처리 과정에, 물리적 머신과 가상 머신 사이에서 전송되는 데이터는 Virtio 프레임 워크를 통해 완성된다. 가상 머신의 장치는 모두 Virtio 장치로 지칭될 수 있다.
도2를 참조하면, 도2는 본 출원에 따른 요청 처리 방법의 일 실시예의 흐름을 나타낸다. 해당 방업은 아래와 같은 단계들을 포함한다.
단계(201)에서, 가상 머신이 작동됨에 대응하여, 가상 머신의 각 장치의 작업 대기열 수량 정보를 획득한다.
본 실시예에 있어서, 가상 머신이 작동될 경우, 가상 머신이 작동됨에 대응하여, 가상 머신의 각 장치의 작업 대기열 수량 정보를 각각 획득할 수 있다. 가상 머신의 하나의 장치의 작업 대기열은 다수개일 수 있다. 가상 머신의 하나의 장치에 대응되는 처리 스레드(즉, I/O 스레드)는 해당 장치에 대한 액세스 요청(즉, 해당 장치에 대한 I/O 요청)을 처리하기 위한 것이다. 가상 머신의 하나의 장치의 작업 대기열 수량 정보는, 해당 장치에 대응되는 하나의 처리 스레드에 대응되는 가상 머신의 장치의 작업 대기열의 수량을 지시하고, 해당 장치에 대응되는 하나의 처리 스레드에 대응되는 가상 머신의 장치의 작업 대기열의 수량은 하나 또는 다수개일 수 있다. 다시 말해서, 가상 머신의 하나의 장치의 작업 대기열 수량 정보는, 해당 장치에 대응되는 하나의 처리 스레드가 몇개의 해당 장치의 장치 객체 중의 해당 장치에 대한 I/O 요청을 처리하기 위한 것인지를 지시한다.
단계(202)에서, 가상 머신의 각 장치의 작업 대기열 수량 정보를 기반으로, 가상 머신의 각 장치에 대응되는 처리 스레드를 각각 구축한다.
본 실시예에 있어서, 가상 머신의 각 장치의 작업 대기열 수량 정보를 기반으로, 가상 머신의 각 장치에 대응되는 처리 스레드를 각각 구축할 수 있다. 가상 머신의 각 장치의 작업 대기열 수량 정보를 기반으로, VMM을 이용하여 가상 머신의 각 장치 각자에 대응되는 I/O 스레드를 각각 구축할 수 있다.
가상 머신의 하나의 장치에 대해, 해당 장치의 작업 대기열 수량 정보가 해당 장치에 대응되는 하나의 I/O 스레드에 바인딩된 장치의 작업 대기열의 수량이 1개인 것으로 지시할 경우, 해당 장치의 작업 대기열의 수량과 동일한 수량의 해당 장치에 대응되는 I/O 스레드를 구축할 수 있으며, 해당 장치에 대응되는 각 I/O 스레드는 처리 스레드에 대응되는 작업 대기열 중의 해당 장치에 대한 I/O 요청에 대해 각각 처리를 진행하기 위한 것이다. 해당 장치의 작업 대기열 수량 정보가 장치에 대응되는 하나의 처리 스레드에 대응되는 가상 머신의 장치의 작업 대기열의 수량이 N개 인것으로 지시하고, N>1일 경우, 다수의 I/O 스레드를 구축하고, 각 I/O 스레드에 바인딩된 해당 장치의 작업 객체의 수량은 N개일 수 있다.
본 실시예에 있어서, 가상 머신의 각 장치에 대응되는 I/O 스레드를 각각 구축한 이후, 각 장치 각자에 대응되는 I/O 스레드는 각자의 작업 대기열 중의 I/O 요청을 처리할 수 있다. 작업 대기열 중의 I/O 요청을 처리하는 과정에, 하나의 장치에 대응되는 I/O 스레드는 폴링 방식을 이용하여 각 작업 대기열을 액세스할 수 있으며, 임의의 하나의 작업 대기열이 빈 것이거나, I/O 스레드로 처리하는 임의의 하나의 작업 대기열 중의 I/O 요청의 수량이 부하 균형 임계값보다 클 경우, 다음의 작업 대기열 중의 I/O 요청을 처리한다.
본 실시예에 있어서, 가상 머신의 상이한 장치를 상대로 하여, 장치에 대응되는 하나의 I/O 스레드에 바인딩된 처리 스레드의 수량을 조정하여, 시스템의 I/O 성능을 향상시킬 수 있다.
본 실시예의 일부 선택 가능한 구현에 있어서, 가상 머신의 하나의 장치의 작업 대기열 수량 정보 중의 수량은 해당 장치의 장치 유형에 대응되는 기정 수량일 수 있다. 다시 말해서, 하나의 장치 유형은 하나의 기정 수량에 대응된다. 각 장치 유형에는 사전에 각각 하나의 수량이 대응되어 있다. 예를 들어, 네트워크 카드에 사전에 대응되는 수량은 1개이고, 가상 머신의 모든 네트워크 카드의 장치(즉, 모든 네트워크 카드)에 대해, 각 네트워크 카드에 대응되는 하나의 I/O 스레드에 대응되는 가상 머신의 장치의 작업 대기열의 수량은 모두 1개이다. 하드 디스크 유형에 사전에 대응되는 수량은 N개이고, N>1이다. 하나의 가상 머신의 각 하드 디스크 유형의 장치(즉, 각 하드 디스크)에 대해, 대응되는 하나의 I/O 스레드에 바인딩된 하드 디스크의 작업 대기열의 수량은 N개일 수 있다. 예를 들어, 하나의 장치는 하나의 자기 디스크이고, 해당 자기 디스크의 작업 대기열의 수량은 9이고, N=3이며, 이러할 경우, 해당 자기 디스크에 대응되는 3개의 I/O 스레드를 구축할 수 있으며, 각 해당 자기 디스크에 대응되는 I/O 스레드는 각각 해당 자기 디스크의 3개의 작업 대기열을 바인딩한다.
본 실시예의 일부 선택 가능한 구현에 있어서, 하나의 장치 유형에 대응되는 기정 수량 정보는 사전에 테스트를 통해 확정된다. 하나의 장치 유형에 대응되는 기정 수량이 확정될 경우, 해당 장치 유형을 이용하는 하나의 장치에 대해 테스트를 진행할 수 있다. 각 후보 수량에 대해, 매번의 테스트를 진행할 때마다, 후보 수량에 따라 상응한 수량의 해당 장치 유형의 장치에 대응되는 I/O 스레드를 구축한다. 매번의 테스트는 동일한 기정의 테스트 조건에서 진행된다. 동일한 기정의 테스트 조건은 동일한 시간 길이 내에 처리하여야 할 해당 장치의 작업 대기열 중의 I/O 요청의 수량이 동일한 것일 수 있다. 각 후보 수량에 대해, 동일한 기정의 테스트 조건에서 장치의 처리 장치 이용률(즉, CPU 이용률)을 각각 확정하여, 각 후보 수량 각자에 대응되는 처리 장치 이용률을 획득한다. 이어서, 대응되는 처리 장치 이용률이 가장 높은 후보 수량을 해당 장치 유형에 대응되는 기정 수량으로 이용할 수 있다. 다시 말해서, 동일한 테스트 환경에서 처리 장치 이용률이 어떠한 기정 수량으로 구축한 상응한 스레드에서 가장 높을 수 있는지를 확정하는 것에 해당된다.
예를 들어, 하나의 장치 유형에 대응되는 기정 수량이 확정될 경우, 하나의 해당 장치 유형의 장치를 이용하여 테스트를 완성하고, 후보 수량은 1, 2, 3, 4를 포함한다. 매번의 테스트에는 하나의 후보 수량이 선택된다. 매번의 테스트에서 선택된 후보 수량에 따라, 상응한 수량의 해당 장치 유형의 장치에 대응되는 I/O 스레드를 구축한다. 선택된 후보 수량이 1일 경우, 상응한 수량의 해당 장치 유형의 장치에 대응되는 I/O 스레드를 구축하고, 각 I/O 스레드는 1개의 해당 장치의 작업 대기열을 바인딩한다. 선택된 후보 수량이 2일 경우, 상응한 수량의 해당 장치 유형의 장치에 대응되는 I/O 스레드를 구축하고, 각 I/O 스레드는 2개의 해당 장치의 작업 대기열을 바인딩한다. 선택된 후보 수량이 3일 경우, 상응한 수량의 해당 장치 유형의 장치에 대응되는 I/O 스레드를 구축하고, 각 I/O 스레드는 3개의 해당 장치의 작업 대기열을 바인딩한다. 매번의 테스트는 동일한 기정의 테스트 조건에서 진행된다. 각 후보 수량 각자에 대응되는 처리 장치 이용률은 동일한 기정의 테스트 조건에서 각각 확정된다. 동일한 테스트 조건에서 해당 장치에 대응되는 하나의 I/O 스레드에 바인딩된 해당 장치의 작업 대기열의 수량이 3인 것으로 확정되는 것을 가정하면, 처리 장치 이용률이 가장 높고, 이러할 경우, 해당 장치 유형에 대응되는 기정 수량은 3이다.
본 실시예의 일부 선택 가능한 구현에 있어서, 하나의 장치 유형에 대응되는 기정 수량은 조정 명령에 따라 조정을 진행될 수 있고, 구성 지시는 사용자의 단말기에서 생성될 수 있다. 예를 들어, 사용자는 운영 및 유지 보수 엔지니어이고, 운영 및 유지 보수 엔지니어는 단말기의 관리 인터페이스에 대응되는 기정 수량을 조정하여야 할 장치 유형의 장치 유형 표지 및 조정 지시한 후 해당 장치 유형이 대응되어야 하는 기정 수량의 구성 수량을 입력할 수 있다. 구성 지시를 생성할 수 있으며, 구성 지시는, 해당 장치 유형 표지, 해당 구성 수량을 포함한다. 이어서, 운영 및 유지 보수 엔지니어의 단말기에서 발송하는 구성 지시를 수신할 수 있다. 서버는 구성 지시 중의 해당 장치 유형 표지, 해당 구성 수량에 따라 대응되는 기정 수량을 조정하는 장치 유형의 장치 유형 표지 및 조정 지시한 후 해당 장치 유형이 대응되어야 하는 기정 수량을 확정하고, 해당 구성 수량을 해당 장치 유형 표지를 구비하는 장치 유형에 대응되는 기정 수량으로 이용할 수 있다.
도3을 참조하면, 도3은 가상 머신의 장치에 대응되는 I/O 스레드와 작업 대기열의 바인딩 관계의 개략적 효과도를 나타낸다.
가상 머신의 장치는 Virtio 장치 1, Virtio 장치 2를 포함한다. Virtio 장치 1, Virtio 장치 2는 모두 다수의 장치를 구비하고, 각 장치는 모두 다수의 작업 대기열을 구비한다. Virtio 장치 1에 대한 I/O 요청은 Virtio 장치 1의 작업 대기열에 추가된다. Virtio 장치 2에 대한 I/O 요청은 Virtio 장치 2의 작업 대기열에 추가된다. Virtio 장치 1, Virtio 장치 2의 작업 대기열 중의 I/O 요청을 처리하기 위한 I/O 스레드는 VMM을 통해 각각 구축된다.
Virtio 장치 1에 대해, Virtio 장치 1에 대응되는 각 I/O 스레드는 각각 Virtio 장치 1의 2개의 작업 대기열을 바인딩하고, 즉, Virtio 장치 1에 대응되는 하나의 I/O 스레드는 Virtio 장치 1의 2개의 작업 대기열 중의 Virtio 장치 1에 대한 I/O 요청을 처리하기 위한 것이다. Virtio 장치 2에 대해, Virtio 장치 2에 대응되는 각 I/O 스레드는 각각 Virtio 장치 2의 1개의 작업 대기열을 바인딩하고, 즉, Virtio 장치 1에 대응되는 하나의 I/O 스레드는 Virtio 장치 2의 1개의 작업 대기열 중의 Virtio 장치 2에 대한 I/O 요청을 처리하기 위한 것이다.
도4를 참조하면, 상술한 각 도면에 도시된 방법의 구현으로서, 본 출원은 요청 처리의 일 실시예를 제공하며, 해당 장치 실시예는 도2에 도시된 방법 실시예에 대응된다.
도4에 도시된 바와 같이, 본 실시예의 요청 처리 장치는 획득 유닛(401), 구축 유닛(402)을 포함한다. 여기서, 획득 유닛(401)은, 가상 머신이 작동됨에 대응하여, 가상 머신의 장치에 대응되는 하나의 처리 스레드에 바인딩된 장치의 작업 대기열의 수량을 표시하는 가상 머신의 각 장치의 작업 대기열 수량 정보를 획득하도록 구성되되, 상기 수량은 하나 또는 다수개이고, 구축 유닛(402)은, 가상 머신의 각 장치의 작업 대기열 수량 정보를 기반으로, 상기 처리 스레드에 바인딩된 장치의 작업 대기열 중의 가상 머신의 장치에 대한 액세스 요청을 처리하기 위한 상기 가상 머신의 각 장치에 대응되는 처리 스레드를 각각 구축하도록 구성된다.
본 실시예의 일부 선택 가능한 구현에 있어서, 가상 머신의 작업 대기열 수량 정보로 표시되는 가상 머신의 장치에 대응되는 하나의 처리 스레드에 바인딩된 장치의 작업 대기열의 수량은 상기 장치의 장치 유형에 대응되는 기정 수량이다.
본 실시예의 일부 선택 가능한 구현에 있어서, 요청 처리 장치는, 장치 유형에 대응되는 기정 수량을 확정하기 위한 각 후보 수량에 대해, 후보 수량을 기반으로, 상기 장치 유형의 장치에 대응되는 처리 스레드를 구축하고, 기정의 테스트 조건에서의 상기 장치의 처리 장치 이용률을 획득하고, 획득된 처리 장치 이용률을 후보 수량에 대응되는 처리 장치 이용률로 이용하고, 대응되는 처리 장치 이용률이 가장 큰 후보 수량을 상기 장치 유형에 대응되는 기정 수량으로 이용하도록 구성되되, 구축된 처리 스레드는 기정의 테스트 조건에서 상기 장치의 작업 대기열 중의 상기 장치에 대한 액세스 요청을 처리하기 위한 기정 수량 확정 유닛을 더 포함한다.
본 실시예의 일부 선택 가능한 구현에 있어서, 요청 처리 장치는, 장치 유형 표지, 구성 수량을 포함하고 사용자의 구성 조작을 기반으로 생성되는 구성 지시를 수신하고, 상기 구성 수량을, 상기 장치 유형 표지를 구비하는 장치 유형에 대응되는 기정 수량으로 이용하도록 구성된 구성 유닛을 더 포함한다.
도5는 본 출원의 실시예의 전자 장치를 구현하기에 적합한 컴퓨터 시스템의 예시적 구성도를 나타낸다.
도5를 참조하면, 컴퓨터 시스템은 중앙 처리 유닛(501; CPU)을 포함하되, 이는 판독 전용 메모리 장치(502; ROM)에 저장된 프로그램 또는 저장부(508)로부터 랜덤 액세스 메모리 장치(503; RAM)에 로딩된 프로그램에 의해 각종의 적당한 동작과 처리를 실행할 수 있다. RAM(503)에는 컴퓨터 시스템을 작동하기에 필요한 각종 프로그램 및 데이터가 더 저장된다. CPU(501), ROM(502) 및 RAM(503)은 버스(504)를 통해 서로 연결된다. 입력/출력(I/O) 인터페이스(505)도 버스(504)에 연결된다.
I/O 인터페이스(505)에 연결되는 부재로서, 입력부(506)와, 출력부(507)와, 하드 드라이버 등을 포함하는 저장부(508)와, 예컨대 LAN 카드, 모뎀 등의 네트워크 인터페이스 카드를 포함하는 통신부(509)가 포함된다. 통신부(509)는 인터넷과 같은 네트워크를 통해 통신 처리를 실행한다. 구동부(510)도 수요에 따라 I/O 인터페이스(505)에 연결된다. 자기 디스크, 광 디스크, 광자기 디스크, 반도체 메모리 장치 등과 같은 착탈 가능한 매체(511)는 이러한 매체로부터 판독된 컴퓨터 프로그램을 수요에 따라 저장부(508)에 설치하도록 수요에 따라 구동부(510)에 설치된다.
특히, 본 출원의 실시예에 설명된 과정들은 컴퓨터 프로그램으로 구현될 수 있다. 예를 들어, 본 출원의 실시예는 컴퓨터 프로그램 제품을 포함하고, 상기 컴퓨터 프로그램 제품은 컴퓨터 판독 가능한 매체에 유형적으로 적재된 컴퓨터 프로그램을 포함하며, 해당 컴퓨터 프로그램은 흐름도에 도시된 방법을 실행하기 위한 명령을 포함한다. 해당 컴퓨터 프로그램은 통신부(509)를 경유하여 네트워크로부터 다운로드되어 설치될 수 있고 및/또는 착탈 가능한 매체(511)로부터 설치될 수 있다. 해당 컴퓨터 프로그램이 CPU(501)에 의해 실행될 경우, 본 출원의 방법에 한정된 상기 기능을 실행한다.
본 출원은 전자 장치를 더 제공하며, 해당 전자 장치는 하나 또는 다수의 프로세서와, 하나 또는 다수의 프로그램을 저장하기 위한 저장 장치가 구비될 수 있으며, 하나 또는 다수의 프로그램에는 상술한 실시예에 설명된 조작을 실행하기 위한 명령이 포함될 수 있다. 하나 또는 다수의 프로그램이 하나 또는 다수의 프로세서에 의해 실행될 경우, 하나 또는 다수의 프로세서로 상술한 실시예에 설명된 조작을 실행하도록 한다.
본 출원은 컴퓨터 판독 가능한 매체를 더 제공하며, 해당 컴퓨터 판독 가능한 매체는 전자 장치에 포함된 것일 수 있으며, 전자 장치에 장착되지 않고 독립적으로 존재하는 것일 수 도 있다. 상기 컴퓨터 판독 가능한 매체에는 하나 또는 다수의 프로그램이 적재될 수 있으며, 하나 또는 다수의 프로그램이 전자 장치에 의해 실행될 경우, 전자 장치로 상술한 실시예에 설명된 조작을 실행하도록 한다.
본 출원에 설명된 컴퓨터 판독 가능한 매체는 컴퓨터 판독 가능한 신호 매체 또는 컴퓨터 판독 가능한 저장 매체 또는 상술한 양자의 임의의 조합일 수 있음을 설명하고자 한다. 컴퓨터 판독 가능한 저장 매체는 예컨대 전기, 자기, 광학, 전자기, 적외선 또는 반도체 시스템, 장치 소자, 또는 이들의 임의의 조합을 포함할 수 있으나, 이에 한정되지 않는다. 컴퓨터 판독 가능한 저장 매체의 보다 구체적인 예시로서, 하나 또는 다수의 도선을 구비하는 전기적 연결, 휴대용 컴퓨터 디스켓, 하드 디스크, 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 소거 및 프로그래밍 가능한 판독 전용 메모리(EPROM 또는 플래시 메모리), 광섬유, 휴대용 콤팩트 디스크 판독 전용 메모리(CD-ROM), 광학 메모리 소자, 자기 메모리 소자, 또는 이들의 임의의 적합한 조합을 포함할 수 있으나, 이에 한정되지 않는다. 본 출원에 있어서, 컴퓨터 판독 가능한 저장 매체는 프로그램을 포함하거나 저장하는 유형 매체일 수 있고, 해당 프로그램은 메시지 실행 시스템, 장치 또는 소자에 의해 사용되거나 이들과 결합되어 사용될 수 있다. 그러나 본 출원에 있어서, 컴퓨터 판독 가능한 신호 매체는 컴퓨터 판독 가능한 프로그램 코드를 적재한 베이스 밴드 또는 캐리어의 일부로서 전파되는 데이터에 포함될 수 있다. 이렇게 전파되는 데이터 신호는 전자기 신호, 광 신호 또는 이들의 임의의 적합한 조합을 포함하는 여러가지 형식을 이용할 수 있으나, 이에 한정되지 않는다. 컴퓨터 판독 가능한 신호 매체는 컴퓨터 판독 가능한 저장 매체 이외의 임의의 컴퓨터 판독 가능한 매체일 수도 있으며, 해당 컴퓨터 판독 가능한 매체는 메시지 실행 시스템, 장치 또는 소자의해 사용되거나 이들과 결합되어 사용되는 프로그램을 발송하거나, 전파 또는 전송할 수 있다. 컴퓨터 판독 가능한 매체에 포함된 프로그램 코드는 무선, 유선, 광섬유 케이블, RF 등, 또는 이들의 임의의 적합한 조합을 포함하는 임의의 적당한 매체로 전송할 수 있으나, 이에 한정되지 않는다.
첨부된 도면 중의 흐름도 및 블록도는 본 출원의 각 실시예에 따른 시스템, 방법 및 컴퓨터 프로그램 제품의 구현 가능한 체계구조, 기능 및 조작을 도시하였다. 이러한 방면에서, 흐름도 또는 블록도 중의 각 블록은 하나의 모듈, 프로그램 세그먼트 또는 코드의 일부분을 대표할 수 있고, 해당 모듈, 프로그램 세그먼트 또는 코드의 일부분은 규정된 로직 기능을 구현하기 위한 하나 또는 다수의 실행 가능한 메시지을 포함한다. 일부 대체 구현에 있어서, 블록에 표기된 기능들은 첨부된 도면에 표기된 순서와 다른 순서로 발생할 수도 있음을 유의하여야 한다. 예를 들어, 순차적으로 표시된 두개의 블록은 실제적으로 거의 동시에 실행될 수 있고, 경우에 따라 반대된 순서에 따라 실행될 수도 있으며, 이는 관련된 기능에 따라 결정된다. 블록도 및/또는 흐름도 중의 각 블록 및 블록도 및/또는 흐름도 중의 블록들의 조합은 규정된 기능 또는 조작을 실행하는 하드웨어 기반의 전용 시스템으로 구현되거나, 전용 하드웨어와 컴퓨터 메시지의 조합으로 구현될 수 있음을 유의하여야 한다.
이상의 설명은 단지 본 출원의 비교적 바람직한 실시예 및 운용한 기술적 원리에 대한 설명이다. 본 출원에 관련된 발명의 범위는 상기 기술적 특징들의 특정 조합으로 이루어진 기술적 방안들에 한정되는 것이 아니라, 본 발명의 주지를 벗어나지 않고서 상기 기술적 특징들 또는 그들의 균등한 특징들의 임의의 조합으로 형성되는 기타의 기술적 방안들도 포함하여야 함을 해당 기술분야의 당업자는 이해하여야 한다. 예를 들어, 상기 특징들과 본 출원에 개시되어 있으나 이에 한정되지 않는 유사한 기능을 구비한 기술적 특징을 서로 대체하여 형성되는 기술적 방안도 포함한다.

Claims (10)

  1. 가상 머신이 작동됨에 대응하여, 가상 머신의 각 장치마다, 가상 머신의 장치에 대응되는 하나의 처리 스레드에 바인딩된 장치의 작업 대기열의 수량을 지시하는 작업 대기열 수량 정보를 획득하되, 상기 수량은 하나 또는 다수개인 단계; 및
    상기 가상 머신의 각 장치의 작업 대기열 수량 정보를 기반으로, 상기 가상 머신의 각 장치에 대응되는 처리 스레드를 각각 구축하되, 상기 가상 머신의 각 장치에 대응되는 처리 스레드는 상기 처리 스레드에 바인딩된 장치의 작업 대기열 중의 가상 머신의 장치에 대한 액세스 요청을 처리하기 위한 것인 단계를 포함하는 요청 처리 방법.
  2. 제1항에 있어서,
    상기 가상 머신의 작업 대기열 수량 정보로 표시되는 상기 가상 머신의 장치에 대응되는 하나의 처리 스레드에 바인딩된 장치의 작업 대기열의 수량은 상기 장치의 장치 유형에 대응되는 기정 수량인 요청 처리 방법.
  3. 제2항에 있어서,
    장치 유형에 대응되는 기정 수량을 확정하기 위한 각 후보 수량에 대해, 후보 수량을 기반으로, 상기 장치 유형의 장치에 대응되는 처리 스레드를 구축하고, 기정의 테스트 조건에서의 상기 장치의 처리 장치 이용률을 획득하고, 획득된 처리 장치 이용률을 후보 수량에 대응되는 처리 장치 이용률로 이용하되, 구축된 처리 스레드는 기정의 테스트 조건에서 상기 장치의 작업 대기열 중의 상기 장치에 대한 액세스 요청을 처리하기 위한 것인 단계; 및
    대응되는 처리 장치 이용률이 가장 큰 후보 수량을 상기 장치 유형에 대응되는 기정 수량으로 이용하는 단계를 더 포함하는 요청 처리 방법.
  4. 제3항에 있어서,
    장치 유형 표지, 구성 수량을 포함하고 사용자의 구성 조작을 기반으로 생성되는 구성 지시를 수신하는 단계; 및
    상기 구성 수량을 상기 장치 유형 표지를 구비하는 장치 유형에 대응되는 기정 수량으로 이용하는 단계를 더 포함하는 요청 처리 방법.
  5. 가상 머신이 작동됨에 대응하여, 가상 머신의 각 장치마다, 가상 머신의 장치에 대응되는 하나의 처리 스레드에 바인딩된 장치의 작업 대기열의 수량을 지시하는 작업 대기열 수량 정보를 획득하되, 상기 수량은 하나 또는 다수개인 획득 유닛; 및
    상기 가상 머신의 각 장치의 작업 대기열 수량 정보를 기반으로, 상기 가상 머신의 각 장치에 대응되는 처리 스레드를 각각 구축하되, 상기 가상 머신의 각 장치에 대응되는 처리 스레드는 상기 처리 스레드에 바인딩된 장치의 작업 대기열 중의 가상 머신의 장치에 대한 액세스 요청을 처리하기 위한 것인 구축 유닛을 포함하는 요청 처리 장치.
  6. 제5항에 있어서,
    상기 가상 머신의 작업 대기열 수량 정보로 표시되는 상기 가상 머신의 장치에 대응되는 하나의 처리 스레드에 바인딩된 장치의 작업 대기열의 수량은 상기 장치의 장치 유형에 대응되는 기정 수량인 요청 처리 장치.
  7. 제6항에 있어서,
    장치 유형에 대응되는 기정 수량을 확정하기 위한 각 후보 수량에 대해, 후보 수량을 기반으로, 상기 장치 유형의 장치에 대응되는 처리 스레드를 구축하고, 기정의 테스트 조건에서의 상기 장치의 처리 장치 이용률을 획득하고, 획득된 처리 장치 이용률을 후보 수량에 대응되는 처리 장치 이용률로 이용하고, 대응되는 처리 장치 이용률이 가장 큰 후보 수량을 상기 장치 유형에 대응되는 기정 수량으로 이용하되, 구축된 처리 스레드는 기정의 테스트 조건에서 상기 장치의 작업 대기열 중의 상기 장치에 대한 액세스 요청을 처리하기 위한 것 기정 수량 확정 유닛을 더 포함하는 요청 처리 장치.
  8. 제7항에 있어서,
    장치 유형 표지, 구성 수량을 포함하고 사용자의 구성 조작을 기반으로 생성되는 구성 지시를 수신하고, 상기 구성 수량을 상기 장치 유형 표지를 구비하는 장치 유형에 대응되는 기정 수량으로 이용하도록 구성된 구성 유닛을 더 포함하는 요청 처리 장치.
  9. 하나 또는 다수의 프로세서와,
    하나 또는 다수의 프로그램을 저장하기 위한 저장 장치를 포함하되,
    상기 하나 또는 다수의 프로그램이 상기 하나 또는 다수의 프로세서에 의해 실행될 경우, 상기 하나 또는 다수의 프로세서로 제1항 내지 제4항 중 어느 하나의 항의 방법을 구현하도록 하는 것을 특징으로 하는 전자 장치.
  10. 컴퓨터 프로그램이 저장된 컴퓨터 판독 가능한 매체에 있어서,
    상기 프로그램이 프로세서에 의해 실행될 경우, 제1항 내지 제4항 중 어느 하나의 항의 방법이 구현되는 것을 특징으로 하는 컴퓨터 판독 가능한 매체.
KR1020190083624A 2018-09-21 2019-07-11 요청 처리 방법 및 장치 KR102214981B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201811106831.1 2018-09-21
CN201811106831.1A CN109240802B (zh) 2018-09-21 2018-09-21 请求处理方法和装置

Publications (2)

Publication Number Publication Date
KR20200034572A true KR20200034572A (ko) 2020-03-31
KR102214981B1 KR102214981B1 (ko) 2021-02-09

Family

ID=65056573

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190083624A KR102214981B1 (ko) 2018-09-21 2019-07-11 요청 처리 방법 및 장치

Country Status (4)

Country Link
US (1) US11210127B2 (ko)
JP (1) JP6893531B2 (ko)
KR (1) KR102214981B1 (ko)
CN (1) CN109240802B (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112631744A (zh) * 2019-09-24 2021-04-09 阿里巴巴集团控股有限公司 进程处理方法、装置、电子设备及计算机可读存储介质
CN111104218B (zh) * 2019-11-29 2022-04-22 北京浪潮数据技术有限公司 存储系统数据同步方法、装置、设备及可读存储介质
CN113608828B (zh) * 2021-06-30 2023-07-14 苏州浪潮智能科技有限公司 一种防护方法及其相关设备
CN114697215A (zh) * 2022-03-31 2022-07-01 西安超越申泰信息科技有限公司 一种虚拟化网络性能提升的方法、系统、设备及介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070092559A (ko) * 2006-03-10 2007-09-13 삼성전자주식회사 가상 머신에서 스레드 스케줄링을 수행하는 장치 및 그방법
KR20070095382A (ko) * 2004-12-30 2007-09-28 인텔 코포레이션 사용자-레벨 멀티스레딩 방법 및 시스템과 머신-액세스가능매체를 포함하는 물품
JP2015197874A (ja) * 2014-04-03 2015-11-09 日本電信電話株式会社 仮想通信路構築システム、仮想通信路構築方法、及び仮想通信路構築プログラム
KR101638136B1 (ko) * 2015-05-14 2016-07-08 주식회사 티맥스 소프트 멀티 스레드 구조에서 작업 분배 시 스레드 간 락 경쟁을 최소화하는 방법 및 이를 사용한 장치
JP2016151852A (ja) * 2015-02-17 2016-08-22 富士通株式会社 実行情報通知プログラム、情報処理装置および情報処理システム
WO2018044794A1 (en) * 2016-08-29 2018-03-08 TidalScale, Inc. Associating working sets and threads

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7111303B2 (en) * 2002-07-16 2006-09-19 International Business Machines Corporation Virtual machine operating system LAN
US8881141B2 (en) * 2010-12-08 2014-11-04 Intenational Business Machines Corporation Virtualization of hardware queues in self-virtualizing input/output devices
CN102591715B (zh) * 2012-01-05 2014-02-12 北京航空航天大学 一种使用多队列技术的虚拟机网络性能优化的实现方法
JP5748349B2 (ja) * 2012-03-16 2015-07-15 株式会社日立製作所 仮想計算機の制御方法及び仮想計算機システム
CN103116517B (zh) * 2013-01-24 2016-09-14 华为技术有限公司 虚拟化平台下i/o通道的调整方法和调整装置
US9262192B2 (en) * 2013-12-16 2016-02-16 Vmware, Inc. Virtual machine data store queue allocation
CN104980438B (zh) * 2015-06-15 2018-07-24 中国科学院信息工程研究所 一种虚拟化环境中数字证书撤销状态检查的方法和系统
EP3206124B1 (en) * 2015-10-21 2020-01-08 Huawei Technologies Co., Ltd. Method, apparatus and system for accessing storage device
US10635474B2 (en) * 2016-05-09 2020-04-28 Marvell Asia Pte, Ltd. Systems and methods for virtio based optimization of data packet paths between a virtual machine and a network device for live virtual machine migration
US10733112B2 (en) * 2017-06-16 2020-08-04 Alibaba Group Holding Limited Method and apparatus for hardware virtualization

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070095382A (ko) * 2004-12-30 2007-09-28 인텔 코포레이션 사용자-레벨 멀티스레딩 방법 및 시스템과 머신-액세스가능매체를 포함하는 물품
KR20070092559A (ko) * 2006-03-10 2007-09-13 삼성전자주식회사 가상 머신에서 스레드 스케줄링을 수행하는 장치 및 그방법
JP2015197874A (ja) * 2014-04-03 2015-11-09 日本電信電話株式会社 仮想通信路構築システム、仮想通信路構築方法、及び仮想通信路構築プログラム
JP2016151852A (ja) * 2015-02-17 2016-08-22 富士通株式会社 実行情報通知プログラム、情報処理装置および情報処理システム
KR101638136B1 (ko) * 2015-05-14 2016-07-08 주식회사 티맥스 소프트 멀티 스레드 구조에서 작업 분배 시 스레드 간 락 경쟁을 최소화하는 방법 및 이를 사용한 장치
WO2018044794A1 (en) * 2016-08-29 2018-03-08 TidalScale, Inc. Associating working sets and threads

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ZHANG, Diming et al. 'High Performance and Scalable Virtual Machine Storage I/O Stack for Multicore System'. IEEE International Conference on Parallel and Distributed Systems, 2017.12., pp.292-301. *

Also Published As

Publication number Publication date
US20200097314A1 (en) 2020-03-26
CN109240802A (zh) 2019-01-18
JP2020053013A (ja) 2020-04-02
JP6893531B2 (ja) 2021-06-23
CN109240802B (zh) 2022-02-18
US11210127B2 (en) 2021-12-28
KR102214981B1 (ko) 2021-02-09

Similar Documents

Publication Publication Date Title
KR20200034572A (ko) 요청 처리 방법 및 장치
US10613788B2 (en) Data migration between cloud storage systems
CN106489251B (zh) 应用拓扑关系发现的方法、装置和系统
CN109213611B (zh) 跨进程通讯方法、装置、终端及存储介质
CN105357258B (zh) 一种加速管理节点、加速节点、客户端及方法
CN105518611A (zh) 一种远程直接数据存取方法、设备和系统
US11201836B2 (en) Method and device for managing stateful application on server
US20150286504A1 (en) Scheduling and execution of tasks
CN103530167A (zh) 一种虚拟机内存数据的迁移方法及相关装置和集群系统
CN102870377A (zh) 虚拟端口监控方法和设备
CN110688169B (zh) 应用程序加速方法及装置、存储介质、电子设备
US10564889B2 (en) Method and apparatus for processing data based on physical host
US20190158575A1 (en) Platform as a service cloud server and multi-tenant operating method thereof
CN110019496B (zh) 数据读写方法和系统
US20220405114A1 (en) Method, device and computer program product for resource scheduling
WO2018236691A1 (en) SYSTEMS AND METHODS FOR PERFORMING SOFTWARE APPLICATIONS ON DISTRIBUTED APPLICATION DEVELOPMENT ENVIRONMENTS
US10318343B2 (en) Migration methods and apparatuses for migrating virtual machine including locally stored and shared data
US11023825B2 (en) Platform as a service cloud server and machine learning data processing method thereof
CN109828830B (zh) 用于管理容器的方法和装置
CN109729110B (zh) 管理专用处理资源的方法、设备以及计算机可读介质
CN109462491B (zh) 用于测试服务器功能的系统、方法和装置
US9304874B2 (en) Virtual machine-guest driven state restoring by hypervisor
US8918559B2 (en) Partitioning of a variable length scatter gather list
CN115827517A (zh) 控制方法、设备及计算设备
CN109842665A (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