JP2016513835A5 - - Google Patents

Download PDF

Info

Publication number
JP2016513835A5
JP2016513835A5 JP2015561519A JP2015561519A JP2016513835A5 JP 2016513835 A5 JP2016513835 A5 JP 2016513835A5 JP 2015561519 A JP2015561519 A JP 2015561519A JP 2015561519 A JP2015561519 A JP 2015561519A JP 2016513835 A5 JP2016513835 A5 JP 2016513835A5
Authority
JP
Japan
Prior art keywords
ipa
physical memory
function
page table
tlb
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
JP2015561519A
Other languages
English (en)
Other versions
JP2016513835A (ja
JP6298083B2 (ja
Filing date
Publication date
Priority claimed from US13/785,877 external-priority patent/US9015400B2/en
Application filed filed Critical
Publication of JP2016513835A publication Critical patent/JP2016513835A/ja
Publication of JP2016513835A5 publication Critical patent/JP2016513835A5/ja
Application granted granted Critical
Publication of JP6298083B2 publication Critical patent/JP6298083B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Claims (10)

  1. ハードウェアテーブルウォーク(HWTW)を実行することに関連する処理オーバーヘッドを低減するコンピュータシステムであって、
    ホストオペレーティングシステム(OS)およびハイパーバイザを実行する少なくとも1つの中央処理装置(CPU)であって、前記ハイパーバイザは、CPU上の少なくとも第1のゲストOSの実行を制御し、前記ハイパーバイザは、前記第1のゲストOSに関連付けられた少なくとも第1の仮想マシン(VM)を実行する、CPUと、
    前記CPUと通信状態にある物理メモリであって、前記物理メモリは、物理アドレス(PA)によってアドレス指定可能である物理メモリロケーションを有し、少なくとも1つのページテーブルが、物理メモリの物理メモリロケーションに記憶され、前記ページテーブルは、中間物理アドレス(IPA)を、物理メモリの実際のPAにマップするためのマッピングに対応するページテーブルエントリを備える、物理メモリと、
    前記ページテーブルエントリのサブセットを記憶する少なくとも1つの変換ルックアサイドバッファ(TLB)と、
    前記CPU、前記物理メモリ、および前記TLBと通信状態にある少なくとも1つのメモリ管理ユニット(MMU)と
    を備え、
    前記MMUは、IPAに関連するページテーブルエントリが前記TLBの中に記憶されているか否かを判定し、
    前記IPAに関連するページテーブルエントリが前記TLBの中に記憶されていない場合、TLBミスが生じており、
    TLBミスが生じた場合、前記MMUは、読み取られるべきページテーブルデータが記憶されている前記物理メモリのPAを予測し、
    前記MMUは、PA=f(IPA)である前記IPAの関数fとして前記PAを予測し、かつ、前記関数fは、IPAの範囲にわたって前記IPAと前記予測されるPAの間の1対1マッピングをもたらし、
    前記ハイパーバイザは、少なくとも第2のVMを実行しており、前記関数fは、f = IPA + Offset_function(VMID)であり、ここで、VMIDは、前記第1のVMおよび前記第2のVMにわたる一意識別子であり、かつ、Offset_functionは、前記VMIDに関連する特定のオフセット値に基づいて選択された出力を有する関数である、コンピュータシステム。
  2. モバイルデバイスの一部である請求項1に記載のコンピュータシステム。
  3. 前記モバイルデバイスは、モバイル電話機である請求項2に記載のコンピュータシステム。
  4. 前記モバイル電話機は、スマートフォンである請求項3に記載のコンピュータシステム。
  5. ハードウェアテーブルウォーク(HWTW)を実行することに関連する処理オーバーヘッドを低減する方法であって、
    少なくとも1つの中央処理装置(CPU)、少なくとも1つの物理メモリ、少なくとも1つの変換ルックアサイドバッファ(TLB)、および少なくとも1つのメモリ管理ユニット(MMU)を提供するステップであって、前記CPU、前記物理メモリ、前記TLB、および前記MMUは、互いに通信状態にあり、前記CPUは、ホストオペレーティングシステム(OS)およびハイパーバイザを実行しており、前記ハイパーバイザは、前記CPU上の少なくとも第1のゲストOSの実行を制御しており、前記ハイパーバイザは、前記第1のゲストOSに関連付けられた少なくとも第1の仮想マシン(VM)を実行しており、前記物理メモリは、物理アドレス(PA)によってアドレス指定可能である物理メモリロケーションを有し、少なくとも1つのページテーブルが、前記物理メモリの物理メモリロケーションに記憶され、前記ページテーブルは、中間物理アドレス(IPA)を、前記物理メモリの実際のPAにマップするためのマッピングに対応するページテーブルエントリを備え、前記TLBは、前記ページテーブルエントリのサブセットを記憶する、ステップと、
    前記MMUにおいて、
    IPAに関連するページテーブルエントリが前記TLBの中に記憶されているか否かを判定するステップと、
    前記IPAに関連するページテーブルエントリが前記TLBの中に記憶されていないという判定が行われた場合、TLBミスが生じたと決定するステップと、
    TLBミスが生じたという決定が行われた場合、読み取られるべきページテーブルデータが記憶されている前記物理メモリのPAを予測するステップと
    を備え、
    前記MMUは、PA=f(IPA)である前記IPAの関数fとして前記PAを予測し、かつ、前記関数fは、IPAの範囲にわたって前記IPAと前記予測されるPAの間の1対1マッピングをもたらし、
    前記ハイパーバイザは、少なくとも第2のVMを実行しており、前記関数fは、f = IPA + Offset_function(VMID)であり、ここで、VMIDは、前記第1のVMおよび前記第2のVMにわたる一意識別子であり、かつ、Offset_functionは、前記VMIDに関連する特定のオフセット値に基づいて選択された出力を有する関数である、方法。
  6. 前記ハイパーバイザは、前記CPU上の少なくとも第1のゲストOSおよび第2のゲストOSの実行を制御し、前記ハイパーバイザは、前記第2のゲストOSに関連付けられた少なくとも第2のVMを実行することもしており、PAを予測するのに前記MMUによって使用される前記関数fは、前記第1のVMに関連するミスに関するPAの第1の範囲内にあるPAを予測し、かつ前記第2のVMに関連するミスに関するPAの第2の範囲内にあるPAを予測し、PAの前記第1の範囲と前記第2の範囲は、互いに異なる請求項5に記載の方法。
  7. モバイルデバイスのコンピュータシステムによって実行される請求項5に記載の方法。
  8. 前記モバイルデバイスは、モバイル電話機である請求項7に記載の方法。
  9. 前記モバイル電話機は、スマートフォンである請求項8に記載の方法。
  10. コンピュータに請求項5乃至9のいずれか1項に記載の方法を実行させるための命令を含むコンピュータプログラム。
JP2015561519A 2013-03-05 2014-03-04 ハードウェアテーブルウォークを実行するのに要求される時間およびコンピューティングリソースの量を低減するための方法およびシステム Expired - Fee Related JP6298083B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/785,877 2013-03-05
US13/785,877 US9015400B2 (en) 2013-03-05 2013-03-05 Methods and systems for reducing the amount of time and computing resources that are required to perform a hardware table walk (HWTW)
PCT/US2014/020101 WO2014137970A1 (en) 2013-03-05 2014-03-04 Methods and systems for reducing the amount of time and computing resources that are required to perform a hardware table walk

Publications (3)

Publication Number Publication Date
JP2016513835A JP2016513835A (ja) 2016-05-16
JP2016513835A5 true JP2016513835A5 (ja) 2017-03-23
JP6298083B2 JP6298083B2 (ja) 2018-03-20

Family

ID=50382619

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015561519A Expired - Fee Related JP6298083B2 (ja) 2013-03-05 2014-03-04 ハードウェアテーブルウォークを実行するのに要求される時間およびコンピューティングリソースの量を低減するための方法およびシステム

Country Status (7)

Country Link
US (1) US9015400B2 (ja)
EP (1) EP2965210A1 (ja)
JP (1) JP6298083B2 (ja)
KR (1) KR20150128804A (ja)
CN (1) CN105027095B (ja)
TW (1) TWI526832B (ja)
WO (1) WO2014137970A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9330026B2 (en) 2013-03-05 2016-05-03 Qualcomm Incorporated Method and apparatus for preventing unauthorized access to contents of a register under certain conditions when performing a hardware table walk (HWTW)
US9805194B2 (en) 2015-03-27 2017-10-31 Intel Corporation Memory scanning methods and apparatus
US10474589B1 (en) 2016-03-02 2019-11-12 Janus Technologies, Inc. Method and apparatus for side-band management of security for a server computer
US10261916B2 (en) * 2016-03-25 2019-04-16 Advanced Micro Devices, Inc. Adaptive extension of leases for entries in a translation lookaside buffer
US10386904B2 (en) * 2016-03-31 2019-08-20 Qualcomm Incorporated Hardware managed power collapse and clock wake-up for memory management units and distributed virtual memory networks
US20180069767A1 (en) * 2016-09-06 2018-03-08 Advanced Micro Devices, Inc. Preserving quality of service constraints in heterogeneous processing systems
EP3355188B1 (en) 2017-01-31 2021-08-25 OpenSynergy GmbH Instrument display on a car dashboard by checking frames of a gui by a realtime os
US10754790B2 (en) * 2018-04-26 2020-08-25 Qualcomm Incorporated Translation of virtual addresses to physical addresses using translation lookaside buffer information

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2933628B2 (ja) * 1988-07-25 1999-08-16 株式会社日立製作所 主記憶装置管理方法および計算機システム
GB2260004B (en) 1991-09-30 1995-02-08 Apple Computer Memory management unit for a computer system
US7124170B1 (en) 1999-08-20 2006-10-17 Intertrust Technologies Corp. Secure processing unit systems and methods
US20030079103A1 (en) 2001-10-24 2003-04-24 Morrow Michael W. Apparatus and method to perform address translation
US8051301B2 (en) 2001-11-13 2011-11-01 Advanced Micro Devices, Inc. Memory management system and method providing linear address based memory access security
RU2005115094A (ru) 2002-11-18 2006-01-20 Арм Лимитед (Gb) Отображение адресов виртуальной памяти на физические адреса в системе с наличием защищенного домена и незащищенного домена
US7089397B1 (en) * 2003-07-03 2006-08-08 Transmeta Corporation Method and system for caching attribute data for matching attributes with physical addresses
US7117290B2 (en) * 2003-09-03 2006-10-03 Advanced Micro Devices, Inc. MicroTLB and micro tag for reducing power in a processor
US8156343B2 (en) * 2003-11-26 2012-04-10 Intel Corporation Accessing private data about the state of a data processing machine from storage that is publicly accessible
US7162609B2 (en) * 2003-12-03 2007-01-09 Marvell International Ltd. Translation lookaside buffer prediction mechanism
EP1870814B1 (en) 2006-06-19 2014-08-13 Texas Instruments France Method and apparatus for secure demand paging for processor devices
US7340582B2 (en) 2004-09-30 2008-03-04 Intel Corporation Fault processing for direct memory access address translation
US7428626B2 (en) 2005-03-08 2008-09-23 Microsoft Corporation Method and system for a second level address translation in a virtual machine environment
US20060224815A1 (en) 2005-03-30 2006-10-05 Koichi Yamada Virtualizing memory management unit resources
US20070226795A1 (en) 2006-02-09 2007-09-27 Texas Instruments Incorporated Virtual cores and hardware-supported hypervisor integrated circuits, systems, methods and processes of manufacture
US7822941B2 (en) 2006-06-05 2010-10-26 Oracle America, Inc. Function-based virtual-to-physical address translation
US7594079B2 (en) * 2006-09-29 2009-09-22 Mips Technologies, Inc. Data cache virtual hint way prediction, and applications thereof
US8615643B2 (en) * 2006-12-05 2013-12-24 Microsoft Corporation Operational efficiency of virtual TLBs
EP2075696A3 (en) 2007-05-10 2010-01-27 Texas Instruments Incorporated Interrupt- related circuits, systems and processes
WO2009001153A1 (en) * 2007-06-28 2008-12-31 Nokia Corporation Memory protection unit in a virtual processing environment
US8595465B1 (en) * 2009-09-09 2013-11-26 Marvell Israel (M.I.S.L) Ltd. Virtual address to physical address translation using prediction logic
WO2011156021A2 (en) 2010-03-01 2011-12-15 The Trustees Of Columbia University In The City Of New York Systems and methods for detecting design-level attacks against a digital circuit
US9405700B2 (en) 2010-11-04 2016-08-02 Sonics, Inc. Methods and apparatus for virtualization in an integrated circuit
US20120246381A1 (en) * 2010-12-14 2012-09-27 Andy Kegel Input Output Memory Management Unit (IOMMU) Two-Layer Addressing
US9092358B2 (en) * 2011-03-03 2015-07-28 Qualcomm Incorporated Memory management unit with pre-filling capability
US9009445B2 (en) * 2011-10-20 2015-04-14 Apple Inc. Memory management unit speculative hardware table walk scheme
CN102722451B (zh) * 2012-06-25 2015-04-15 杭州中天微系统有限公司 采用物理地址预测访问高速缓存的装置
US9330026B2 (en) 2013-03-05 2016-05-03 Qualcomm Incorporated Method and apparatus for preventing unauthorized access to contents of a register under certain conditions when performing a hardware table walk (HWTW)

Similar Documents

Publication Publication Date Title
JP2016513835A5 (ja)
US20230161615A1 (en) Techniques for virtual machine transfer and resource management
US9335943B2 (en) Method and apparatus for fine grain memory protection
JP2015526829A5 (ja)
US10877793B2 (en) Extending the base address register by modifying the number of read-only bits associated with a device to be presented to a guest operating system
JP2015135696A5 (ja)
US10671542B2 (en) Application execution enclave memory method and apparatus
JP2014174998A5 (ja)
JP2013519965A5 (ja)
MX2016007844A (es) Metodo de procesamiento de recursos, sistema operativo y dispositivo.
JP2020524840A5 (ja)
JP2015503805A5 (ja)
US9652274B2 (en) Techniques for handling memory accesses by processor-independent executable code in a multi-processor environment
WO2016033039A2 (en) Routing direct memory access requests in a virtualized computing environment
JP2018538630A5 (ja)
WO2015160448A1 (en) Binary translation reuse in a system with address space layout randomization
US10445247B2 (en) Switching between single-level and two-level page table translations
TWI526832B (zh) 用於減少執行硬體表搜尋(hwtw)所需的時間和計算資源量的方法和系統
US10339068B2 (en) Fully virtualized TLBs
JP2016515265A5 (ja)
GB2520856A (en) Enabling Virtualization of a processor resource
JP2014235501A5 (ja)
US20150248237A1 (en) Reverse Copy on Write for Better Cache Utilization
GB2577468A (en) Sharing virtual and real translations in a virtual cache
GB2559289A (en) Pre-loading page table cache lines of a virtual machine