JP2004295885A - メイン・メモリの動的再割当てが可能なコンピュータ・システム - Google Patents

メイン・メモリの動的再割当てが可能なコンピュータ・システム Download PDF

Info

Publication number
JP2004295885A
JP2004295885A JP2004077827A JP2004077827A JP2004295885A JP 2004295885 A JP2004295885 A JP 2004295885A JP 2004077827 A JP2004077827 A JP 2004077827A JP 2004077827 A JP2004077827 A JP 2004077827A JP 2004295885 A JP2004295885 A JP 2004295885A
Authority
JP
Japan
Prior art keywords
memory
nms
cpu
computer system
main memory
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.)
Pending
Application number
JP2004077827A
Other languages
English (en)
Inventor
Sharma Mannish
マニッシュ・シャーマ
Janice H Nickel
ジャニス・エイチ・ニッケル
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
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 LP filed Critical Hewlett Packard Development Co LP
Publication of JP2004295885A publication Critical patent/JP2004295885A/ja
Pending legal-status Critical Current

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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • 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/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)

Abstract

【課題】動作中にメモリモジュールが挿入または取外しされたときにメインメモリの使用を動的に調整するオペレーティングシステムを備えたコンピュータシステムを提供する。
【解決手段】本発明は、メインボードと、メインボードに結合された少なくとも1つのCPUと、メイン・ボードによって少なくとも1つのCPUに結合され、第1のメモリ記憶装置(FMS)と、少なくとも1つのCPUでFMSと実質的に同じ速度で動作する取り外し可能な不揮発性メモリ記憶装置(NMS)と、を備えるメイン・メモリと、を有し、メイン・メモリは、さらに、NMSの取外しまたは挿入に応じてメイン・メモリの動的調整を可能にするオペレーティング・システムを支援することが可能であり、CPUに結合された少なくとも1つの入力装置と、CPUに結合された少なくとも1つの出力装置と、を有するコンピュータ・システムを提供する。
【選択図】図1

Description

本発明は、一般に、記憶装置を備えたコンピュータ・システム用のオペレーティング・システムに関し、より詳細には、コンピュータ・システムの動作中に不揮発性のメイン・メモリモジュールが挿入または取外しされたときにメイン・メモリの使用量を動的に調整するオペレーティング・システムを備えたコンピュータ・システムに関する。
今日のコンピュータ・システムは、ますます高性能化されてきており、ユーザは、増え続ける様々な計算タスクをより高速に実行することができる。
プロセッサの速度、ハードドライブの記憶容量、使用可能なメイン・メモリ、およびその他のハードウェアの優れた機能に関係なく、これらの構成要素は、電力が印加されオペレーティング・システムがロードされてシステムの使用が可能になるまで単なる紙押さえに過ぎない。
最も単純なレベルでかつ最も一般的な意味において、オペレーティング・システムのタスクは、特定のカテゴリ、すなわちプロセス管理、デバイス管理(アプリケーション管理とユーザ・インタフェース管理を含む)、およびメモリ管理(記憶装置を含む)に分類される。
コンピュータ・システムのメモリは、技術的には、任意の形の電子的、磁気的または光学的な記憶装置であるが、一般に、ある程度速度と機能に基づいて様々なカテゴリに分けられる。大容量記憶装置は、一般に、ハード・ドライブ、テープ・ドライブ、光学媒体、他の大容量記憶装置など、一般に安価で低速で大容量の装置であると理解されている永久的な不揮発性記憶装置である。大容量記憶装置の主な目的は、アプリケーションまたはデータを、実行に必要になるまで記憶することである。大容量記憶装置は、低コストでかつ不揮発性の性質により、一般に、コンピュータ・システムに、数百ギガバイトまでの記憶装置を提供する。このような大容量記憶装置は、ほぼ1ミリ秒を超えるアクセス時間で動作する。プロセッサが、必要とされるすべてのデータごとにそのような大容量記憶装置にアクセスしなければならない場合、コンピュータ・システムは、きわめて低速で動作することになる。
処理のための迅速なアクセスを容易にするために、最新の通常のコンピュータは、メモリ・バスによってプロセッサに直接接続されたメイン・メモリを有する。比較的遅い記憶装置と対照的に、メイン・メモリは、一般に、アクセス時間がほぼ100ナノ秒未満のDRAM、SDRAM、RDRAMなどの高速で高価な揮発性ランダム・アクセス・メモリ(RAM)から成る。高いコストと連続的な電力を必要とする揮発性の性質によって、メイン・メモリRAMは、一般に、数十メガバイトから1または2ギガバイトの範囲の容量で提供される。プロセッサとメイン・メモリの間に置かれる少量のキャッシュ・メモリとして、一般に、きわめて高速(10ナノ秒未満のこともある)でより高価なSRAMが使用される。そのような高速キャッシュの容量は、一般に、数十キロバイトから数メガバイトである。より高性能なシステムでは、各レベルが異なる速度と容量のいくつかのレベルのキャッシュ・メモリが使用されることがある。
メイン・メモリは、プロセッサによって使用可能なように、編成されなければならない。初期化の際に、オペレーティング・システムは、BIOSによって報告された使用可能なメイン・メモリを、例えば2キロバイトなどの標準のブロック・サイズに分割する。次に、実行されるアプリケーションが、これらの固定されたブロック・サイズにロードされる。従来より、メイン・メモリには、アプリケーションの目前の動作に必要な部分だけが、その都度ロードされる。処理のためにアプリケーションの様々な部分が必要とされるので、メイン・メモリブロック内のアクティブなコードの一部分が置き換えられる。メイン・メモリが大きいほど、メモリに一度に常駐できる処理コードの量が多くなる。
メイン・メモリ内の使用可能なスペースの必要に応じてメイン・メモリからコードを出し入れすることは、時間のかかるプロセスであり、システムの性能に直接影響を及ぼす。しかしながら、一般に、プロセッサは、1度にメモリの1つの記憶場所にしかアクセスできず、したがって、任意の所定の瞬間においてメイン・メモリRAMの大部分は使用されていない。
コンピュータ・システムが、様々な形で使用されることがあるので、ある瞬間に適切と思われたRAMの量が、別の瞬間には不十分または過剰なことがある。例えば、画像の処理および操作アプリケーションは、使用するための初期化に時間がかかるだけでなく、使用可能なメイン・メモリRAMリソースの大部分をも必要とするが、単純なテキスト・エディタは、システムにとってほとんど注目に値しない。
RAMは高価である。ユーザは、実際には、コンピュータ・システムの電力を遮断し、RAMの容量を変更して予想される需要を反映させることができるが、これは、時間がかかり、追加RAMの投資だけでなく特殊なツールと知識を必要とすることがある。
このジレンマを支援するために、コンピュータ・システムは、一般に、仮想メモリを使用する。具体的には、オペレーティング・システムが、ハードドライブの一部分を追加RAMの機能を果たすように指定する。これは、有効でコスト効率が高いが、ハードドライブの低速性のため、システム全体のパフォーマンスが低下し、多くの状況において有効とは言えないソリューションである。
仮想メモリとその使用を支援するオペレーティング・システムの1つの特徴は、システムの動作中に仮想メモリを動的に調整できることである。一般に、これは、システム・ユーザが、メモリを大量に使用する多数のアプリケーションを同時に立ち上げるときにオペレーティング・システムによって自動化されるタスクである。非割当て(Deallocation)を実行することもできるが、これは、一般に、さらに複雑なプロセスである。
このプロセスと機能は有益であるが、ハードドライブの一般的な速度は約7ミリ秒であり、これは、メイン・メモリRAMの一般的な速度よりもかなり長い。したがって、割当てプロセスまたは非割当てプロセスの間に、ユーザは、コンピュータ・システムの著しい使用停止に耐えなければならない。
最新の多くのオペレーティング・システムは、起動時に認識され自動的に構成されるプラグ・アンド・プレイ装置と、動作中にコンピュータ・システムに追加または取外しすることができるホットプラグ可能な(hot-plaggable、接続または取外しを認識可能な)装置を使用することができる。
いくつかの例において、プラグ・アンド・プレイ装置またはホットプラグ装置は、ハードドライブによって提供される仮想メモリよりも優れた改良品として使用することができるFLASHカードなどの記憶装置である。しかしながら、このような装置は、メイン・メモリRAMよりもかなり遅く、したがって、メイン・メモリの容量と能力をシームレスに増大させるために使用することができない。
さらに、メイン・メモリは、オペレーティング・システムの初期のロード中に、オペレーティング・システムによって構成され細分される。システムの電力が遮断されているときにはメイン・メモリRAMを増減することができるが、現在のオペレーティング・システムでは、システムの動作中にメイン・メモリRAMを追加したり取外したりすることはできない。これを行うと、オペレーティング・システムとコンピュータ・システム全体がきわめて不安定性になる。現在のオペレーティング・システムでは、システムが実行している間にメイン・メモリの動的再割当てができない。
さらに、メイン・メモリRAMが、コンピュータ・システムを危機的に使用不能にすることなく取り外された場合でも、一般に使用されるRAMの揮発性によって、取り外す前にRAMに保持されていた内容が、取り外されたとたんに失われることになる。したがって、遅い不揮発性メモリの技術を使用することによって、コンピュータ・システム間でアプリケーションを共用したり後日すぐに使用できるように記憶したりすることが必要とされている。
従って、以上示した欠点のうちの1つまたは複数を克服するコンピュータ・システムおよびオペレーティング・システムが必要である。本発明は、これらの必要のうちの1つまたは複数を満たす。
本発明は、コンピュータ・システムの動作中に不揮発性メイン・メモリ・モジュールが挿入または取外しされたときにメイン・メモリの使用を動的に調整するオペレーティング・システムを備えたコンピュータ・システムを提供する。
特にまた単なる例として、本発明の実施形態によれば、本発明は、メイン・ボードと、メイン・ボードに結合された少なくとも1つの中央処理装置(CPU)と、メイン・ボードによって少なくとも1つのCPUに結合され、第1のメモリ記憶装置(first memory store、FMS)と、少なくとも1つのCPUでFMSと実質的に同じ速度で動作する取り外し可能な不揮発性メモリ記憶装置(non-volatile memory store、NMS)と、を備える少なくとも2つのメモリ記憶を収容することができるメイン・メモリと、を有し、メイン・メモリは、さらに、コンピュータ・システムの起動時にメイン・メモリにロードされ、少なくとも1つのCPUとメイン・メモリの基本動作を制御し、NMSの取外しまたは挿入に応じてメイン・メモリの動的調整を可能にするオペレーティング・システムを支援することが可能であり、CPUに結合された少なくとも1つの入力装置と、CPUに結合された少なくとも1つの出力装置と、を有するコンピュータ・システムを提供する。
さらに、本発明の実施形態によれば、本発明は、メイン・ボードと、メイン・ボードに結合された少なくとも1つの中央処理装置(CPU)と、メイン・ボードによって少なくとも1つのCPUに結合され、第1のメモリ記憶装置(FMS)と、CPUで第1のメモリ記憶と実質的に同じ速度で動作するNMSと、を備えるメイン・メモリと、コンピュータ・システムの起動時に第1のメモリ記憶装置内にロードされ、少なくとも1つのCPUとメイン・メモリの基本動作を制御し、NMSの取外しまたは挿入に関する通知に応じてメイン・メモリの動的調整を可能にするオペレーティング・システムと、CPUに結合された少なくとも1つの入力装置と、CPUに結合された少なくとも1つの出力装置とを有するコンピュータ・システムを提供することができる。
さらにもう1つの実施形態において、本発明は、アクティブなプロセスのCPUへのアクセス時間を管理するプロセス・マネージャと、CPUによって現在アクティブなプロセスを実行するために、キャッシュ、メイン・メモリおよび仮想メモリを含むメモリを管理するメモリ・マネージャと、CPUによって実行されるときに、プロセスによって必要とされる情報の入出力を管理するデバイス・マネージャと、メモリ・マネージャに結合されており、動作中に不揮発性メイン・メモリがコンピュータ・システムに追加または取外しされたときにメイン・メモリの使用を動的に調整するメイン・メモリ・コントローラと、を有する、CPUとメモリを備えるコンピュータによって実行可能なオペレーティング・システムを提供することができる。
好ましい装置および方法の以上その他の特徴および利点は、本発明の原理を例として示す添付図面と関連して行われる以下の詳細な説明から明らかになるであろう。
詳しい説明に進む前に、本発明が、特定のタイプのコンピュータ・システム、オペレーティング・システム、および不揮発性メイン・メモリと関連した使用または応用に限定されないことを認識されたい。したがって、本発明は、説明の都合上、代表的な実施例に関して示し説明されるが、本発明を、他のタイプのコンピュータ・システム、オペレーティング・システムおよび不揮発性メイン・メモリに適用できることを認識されたい。
磁気ランダム・アクセス・メモリ(MRAM)技術または強誘電体ランダム・アクセス・メモリ(FeRAM)は、MRAMチップが、10ナノ秒未満の速度で動作できるようになるまで進歩した。そのような速度は、例えばDRAMやSRAMなどの従来のRAMに匹敵しかつ適合性がある。
従来のRAMと違って、MRAMは、不揮発性であるように意図的に設計されている。より具体的には、MRAMは、システム電源が入っているか入っていないかに関係なく、コンピュータ・システムから提供された情報を保持することができる。また、この特性によりMRAMが情報を無制限に記憶できることを認識されたい。
当業者は、MRAMメモリ記憶装置を、従来のコンピュータに使用するために、さらに前のRAMメモリ記憶に使用されていたものと実質的に同じ速度でかつ実質的に同じソケット接続を備えるように製造することができる。MRAMの特性と特徴を完全に利用し享受することは、以下で説明する本発明の実施形態によって実現することができる。
図1は、本発明の実施形態による例示的なコンピュータ・システム100のブロック図を示す。コンピュータ・システム100は、メイン・ボード120と、ハードドライブ140などの大容量記憶装置とを取り囲むケース102を有する。メイン・ボードは、システム・バス122、拡張スロット124、接続ポート126、CPU150、メモリ・バス152、メモリ・バス・インタフェース154、キャッシュ156、メイン・メモリ160、およびBIOS172を含むBIOSチップ170を含む。適切な環境下で、コンピュータ・システム100は、例えば追加のハードディスクや追加のコプロセッシング用のCPUなどの冗長な構成要素を有することがある。
図示したように、メイン・メモリ160は、第1のメモリ記憶(first memory store、FMS)162と取り外し可能な不揮発性メモリ記憶(non-volatile memory store、NMS)164として細分することができ、それぞれのメモリ記憶は、メモリ・バス・インタフェース154によってメモリ・バス152に接続される。マウス80、キーボード182、ビデオ・ディスプレイ184、ハードドライブ140、フロッピ・ドライブ142およびCD ROMドライブ144などの装置が、例えば、メイン・ボード120に結合され、より具体的には、接続ポート126と拡張スロット124によってシステム・バス122に結合される。接続ポート126と拡張スロット124は、システム・バス122へのアクセス・ポイントとして働き、装置をCPU150に有効に結合して、コンピュータ・システム100との間の入出力を提供する。
少なくとも1つの実施形態において、NMS164は、MRAM166および/またはFeRAMでよい。FMS162は、例えばRAM168であり、より具体的には、例えばSRAM、DRAM、SDRAM、RDRAMなどのコンピュータ・メモリに使用されているような従来のRAMの任意の変形でよいことを理解され認識されたい。さらに、適切な環境下で、FMSは、例えばMRAMやFeRAMなどの従来と異なるRAMでよい。
図示したように、メイン・ボード120は、一体型(unitary)構造でよい。例えば限られた空間の使用を最大にするのに適切な環境下で、メイン・メモリ160、BIOSチップ170、接続ポート126、拡張スロット124、キャッシュ156、CPU150、および他のメイン・ボード120の構成要素は、独立した構造に別々に、すなわち小さなグループで結合することができる。これらの独立した構造を相互接続するバスは、リボン・ケーブルなどのケーブルや他のデータ経路装置の形でよい。そのような構成において、CPU150および/またはメイン・メモリ160を支持するような主な独立構造を、メイン・ボードとして識別することができる。しかしながら、この考察のために、相互接続された独立構造の集合体は、実質的に単一構造のメイン・ボード120と同じように機能するように認識することができる。
メモリ・バス152とシステム・バス122は、一般に、メイン・ボードに取り付けられたCPU150とすべての装置を相互接続するメイン・ボード120上に提供されたデータ経路および物理インタフェースであるように理解され認識される。バスの容量は、一般に幅(width)と呼ばれ、1度にデータをどれだけ転送できるかを決定し、クロック速度は、データをどれだけの速さで転送できるかを決定する。より具体的には、バスの幅と速さが大きいほど、多くのデータを転送することができる。一般に、メモリ・バス152は、システム・バス122よりも速さと幅がかなり大きい。
メモリ・バス152は、FMS162とNMS164をCPU150に結合する幅の広い長方形として示されている。これと対照的に、ハードウェア・サブシステムをCPU150に結合するシステム・バス122は、2つのバスの速度と容量の相対的な違いを示すために、細い矢印として示されている。キャッシュ156は、CPU150とメモリ・バス152に直接結合されることがある。
例えばPCI、ISA、AGPなどの多数のバスを使用するような適切な環境下では、コンピュータ・システム100は、あるバスから別のバスへの情報の流れの制御を支援するバス・マスタを含むことができる。
FMS162とNMS164が共に、メイン・メモリ160を含み、同じメモリ・バス152を介してCPU150と通信するため、NMS164が、実質的にFMS162と同じ速度で動作することを理解され認識されたい。
電力が加えられコンピュータ・システムが起動するとき、基本入出力システム(basic input output system、BIOS)172として知られている小さなソフトウェアがロードされ、コンピュータ・システム100が初期化される。BIOSは、多くのタスクを受け持ち、一般に、CMOSの個別設定を確認し、割込みハンドラをロードし、パワー・オン・セルフテスト(POST)を実行してCPU150とメイン・メモリ160を確認し、ブートストラップ・シーケンスを開始して、ハードドライブ140などの起動可能な記憶装置から、オペレーティング・システム190をメイン・メモリ160にロードする。
一般に、PCMCIA、USB、Firewire、他の再起動なしにシステムに接続または取外しできるような装置など、プラグ・アンド・プレイ装置とホットプラグ接続可能装置は、BIOS172によって認識される。認識は、システムの起動中、あるいは装置が脱着されたときにハードウェア・サブシステムによって生成されるハードウェア割込み(IRQ)や他の信号に応じて行うことができる。いずれの場合も、装置は、BIOS172によって認識され記録される。次に、オペレーティング・システム190が、そのようなBIOS記録またはフラグを認識することができる。適切な環境下では、オペレーティング・システムは、IRQまたは他の信号を直接認識し応答することができる。
少なくとも1つの実施形態において、BIOS172は、例えば、追加のユーザ構成なしにシステム装置を認識し初期化することができるプラグ・アンド・プレイBIOSである。さらに、少なくとも1つの実施形態において、BIOS172は、フラグ276に、NMS164の有無を記録するためにイネーブルされる(図2を参照)。より具体的には、PCMCIA、USB、Firewireまたは他のそのような装置の有無を認識し登録するBIOS172の機能と同じように、BIOS172は、NMS164の有無を認識し登録することができる。
初期化シーケンスに続いて、FMS162のような従来のメモリ記憶装置は、メモリ・レディ信号(Memory Ready signal)のように、FMS162が適切に初期化されたことをコンピュータ・システムに知らせる制御信号に応答することを理解され認識されたい。現在の慣例とコンピュータ・ハードウェア・サブシステムのよく理解されたアーキテクチャに合わせるために、NMS164は、メモリ・レディ信号などの制御信号も提供することができる。BIOS172は、NMS164からのそのような制御信号を、NMS164の存在、適切な環境下ではNMS164の容量を認識し登録する際に利用することができる。
図2は、NMS164の概略的なブロック図を示す。図示したように、NMS164は、メモリ・セル250上に、NMS164に記憶された1または0の2進データ値の性質を決定するのに必要な電圧検出動作を行うセンスアンプを含むことができる。NMS164に電力が加えられたとき、NMS164は、セットアップおよび較正段階を実行してセンスアンプの電圧検出レベルを較正しなければならない。セットアップ・プロセスを短縮するために、NMS164のメモリ・セル250のセットアップ記憶域252に割り当てられた部分に、範囲値と較正値を記憶することができる。NMS164の不揮発性によって、これらの値が、後の起動サイクルに使用可能になり、較正時間を改善すなわち短縮できることが保証される。残りのメモリ・セルは、メイン・メモリ160に組み込まれた汎用メモリ254に使用することができる。
NMS164は、また、メモリ・バス・インタフェース154、制御ロジック256、およびメイン・メモリ160の回路に結合するインタフェース回路260を含むことができる。インタフェース回路260は、NMS164が電力検出動作を実行して、例えば実行中のコンピュータ・システム100にNMS164が差し込まれたときや、コンピュータ・システム100全体に電力が加えられたときなど、メイン・ボード120の制御ロジック256からNMS164に電力が提供されたことを決定することができる。さらに、インタフェース回路260は、セットアップ記憶域252に保持された記憶値に基づいてセットアップと較正を実行する。従来のハンドシェーク方式(handshaking、初期接続手順)・プロトコルに従ってセットアップと較正が完了したとき、NMS164は、メモリ・レディ信号を提供する。
メモリ・チップに関しては、メモリ・アドレスが要求されてから内容が送られるまでの待ち時間(latency)と呼ばれる潜在期間がある。記憶するためにデータが提供されるときにも類似の潜在期間がある。NMS164は、CPU150と共に実質的にFMS162と同じ速度で動作すると理解されるので、記憶とアクセスに関連した待ち時間は、NMS164とFMS162に関して実質的に同じである。
コンピュータ・システム100にNMS164をホット・プラグ(hot-plug、接続または取外しを認識する機能)できることは、NMS164が即座に使用可能になることを意味しない。本発明に関する待ち時間は、NMS164をメモリ・バス152に差し込み、セットアップし、較正し、あるいは使用の準備をするのにかかる時間として定義される。
前述のように、コンピュータの起動プロセスは、複雑で時間がかかる動作であり、必要な場合がある複雑で特殊なインタフェース構成要素によって、かかる時間がさらに長くなる可能性がある。NMS164を使用する有益な面は、オペレーティング・システム190がロードされ、それがNMS164に完全にロードされた場合に、システムへの電力を取外しできることである。再接続されたとき、NMS164は、オペレーティング・システム190をコンピュータ・システム100に、あたかも電力の中断がなかったかのような状態と状況で提供する。これは、常用電源から離れて使用することができるラップトップ、PDAおよび他の装置にとって望ましい機能である。少なくとも1つの実施形態において、コンピュータ・システム100が現在使用されてないときに、バッテリ電力や他のリモート電源を節約するために、NMS164が使用される。
例えばWindowsやMacintosh、Unixなどのオペレーティング・システムの種類に関係なく、当業者は、オペレーティング・システムの基本コンポーネントが、プロセス管理、デバイス管理(アプリケーションとユーザ・インタフェースを含む)、およびメモリ管理(記憶管理を含む)であることを認識するであろう。
本発明の少なくとも1つの実施形態によれば、オペレーティング・システム190は、プロセス・マネージャ200、メモリ・マネージャ210、デバイス・マネージャ220、およびメイン・メモリ・コントローラ230を有するように理解され認識される。
プロセス・マネージャ200は、アクティブなプロセスのためのCPU150へのアクセス時間を管理するタスクを課される。より具体的には、プロセス・マネージャ200は、2つのタスクに集中させられる。第1のタスクは、各プロセスが、適切に機能するためにCPU150に対する十分なアクセス時間を有するようにすることである。第2のタスクは、各CPUサイクルごとにできるだけ多く実際の作業が行われるようにすることである。オペレーティング・システム190の種類によって、CPU150によって操作される実行可能なアプリケーションのコンポーネントは、プロセスまたはスレッドと呼ばれることがある。本明細書での考察のために、「プロセス」という用語を使用する。
メモリ・マネージャ210は、一般にキャッシュ156、メイン・メモリ160および適切な環境下の仮想メモリ158からなるコンピュータ・システム100のメモリを管理するタスクを課される。より具体的には、メモリ・マネージャ210は、メイン・メモリ160の構成をメモリ・ブロックに初期化し、ハードドライブ140のスペースを仮想メモリ158として機能するように確保し構成し、キャッシュ156を最適化する役割を持つ。メイン・メモリ160は、メモリの単位当りのコストに関して、ハードディスク140よりもかなり高価である。以上考察したように、仮想メモリを使用して、メイン・メモリ150に課される常に変化するリソース要件を補うことができる。
システムの動作中、メモリ・マネージャ210は、CPU150による処理の必要に応じて、メイン・メモリ160とキャッシュ156と仮想メモリ158の間での実行中のアプリケーションに対するメモリ割当てを管理する役割を持つ。どれをどこに入れるかを制御し管理するために、メモリ・アドレッシングを使用することができる。
さらに、メモリ・マネージャ210は、各プロセスが、別のプロセスに割り当てられたメモリ・ブロック内で動作したり別のプロセスによって間違って実行されたりすることがなく実行する十分なメモリを有するように保証することに集中する。
デバイス・マネージャ220は、例えばキーボード182上のキーストロークの入力やビデオ・ディスプレイ184上の値の表示など、CPU150によって実行されるようなアクティブ・プロセスによって必要とされる情報の入出力を管理するタスクを課される。
デバイス・マネージャ220は、このタスクをドライバの使用によって達成することができるが、これは、ハードウェア・サブシステムの電気信号とオペレーティング・システムの間の変換機構として働く特別なプログラムであることを理解され認識されたい。デバイス・マネージャ220は、また、アプリケーション・インタフェースの役割を負うことがある。ドライバの使用と同じように、オペレーティング・システム190と、オペレーティング・システム190によるプログラム実行のために作成されたアプリケーションとの間のインタフェースを標準化するために、アプリケーション・プログラム・インタフェース(API)を使用することができる。
メイン・メモリ・コントローラ230の存在は重要である。メイン・メモリ・コントローラ230は、オペレーティング・システム190を実行するコンピュータ・システム100のユーザが、システムの遮断と再起動を必要とせずに、メイン・メモリ160の使用状態を動的に調整できるようにする。より具体的には、メイン・メモリ・コントローラ230は、コンピュータ・システム100の動作を不安定にすることなく、NMS164の抜き差しを可能にするためにメイン・メモリ160の使用状態を動的に調整する。
動作中のメイン・メモリ160の動的再割当てを可能にするオペレーティング・システム190を備えたコンピュータ・システム100の構造的な実施形態について説明したが、次に、図2および図3と図4の流れ図を参照して、コンピュータ・システム100の挙動について説明する。示したイベントおよび動作方法は、本明細書に示した順序で実行されなくてもよく、この説明が、単に、本発明による1つの動作方法の例示に過ぎないことを認識されたい。
図2と図3を参照すると、少なくとも1つの実施形態において、NMS164の挿入330は、メモリ・バス・インタフェース154と制御ロジック256を誘導し、コンピュータ・システム100へのハードウェア・ベースのIRQ274通知を生成する。少なくとも1つの実施形態において、IRQ274は、前述の待ち期間の終わりに生成される。
より具体的には、NMS164の挿入330に続いて、ブロック332として示された前述のNMS164の初期化および設定が実行される。ブロック334に示したように、NMS164が存在することをシステム100に知らせるためにIRQ274が生成される。
当業者は、ブロック336に示したように、IRQ274が、BIOS172に登録され、BIOSフラグ276によって記録されることがあることを理解さ認識されよう。適切な環境下で、ブロック337に示したように、オペレーティング・システム190がIRQ274を直接登録することができる。同様に、メモリ・レディ信号が、BIOS172において認識され登録される。
少なくとも1つの実施形態において、動作中に取り付けられBIOS172によって認識され登録されたPCMCIA、USB、Firewireまたは他の装置の接続と同様に、NMS164の挿入は、BIOSフラグ276の設定によってBIOS172による固有のイベントとして記録され、システムに登録される。NMS164とそのレディ状態の認識は、ブロック338に示したように、BIOS172によってシステムに登録されたイベントに応答しかつBIOSフラグ276の状態を読み取るオペレーティング・システム190によって認識される。
少なくとも1つの実施形態において、ブロック337に示したように、NMS164が差し込まれたというIRQ274の通知が、オペレーティング・システム190によって直接登録される。オペレーティング・システム190は、例えばNMS164の予想容量に関するさらに詳しい情報をBIOS172にポーリングすることができる。
NMS164が存在するという信号に応じて、ブロック340に示したように、オペレーティング・システム190のメイン・メモリ・コントローラ230コンポーネントが連結されることがある。メイン・メモリ・コントローラ230は、ブロック342に示したように、メイン・メモリ160の再構成の処理の優先順位が最も高いことを示す信号をプロセス・マネージャ200に送ることができる。より具体的には、プロセス・マネージャ200は、メイン・メモリ160の再構成としての時間が終了するまで、現在あるすべてのプロセスのそれ以上の処理活動をサスペンドするように指示される。
一般に、CPU150は、任意の所定の瞬間に1つのイベントしか実行できないため、プロセス・マネージャ200は、現在の動作の各プロセスに優先順位のレベルを割り当てる。それぞれの活動中のアプリケーションの処理要求を最も短時間で完了することが望ましいが、一般に、各処理要求が、割り込まれかつ/または異なる優先順位を再割り当てされることがあることを、当業者は認識されよう。この規則に基づいて、プロセス・マネージャ200は、メイン・メモリ160の再構築が絶対優先で行われるように、優先順位を再割り当てすることができる。
前述のように、使用可能にするために、一般に、メイン・メモリ160のリソースは、メモリ・マネージャ210によって、例えば2キロバイトなどの標準ブロック・サイズに分割される。NMS164は、コンピュータ・システム100から取り外されたときにデータを保持するので、少なくとも1つの実施形態において、NMS164は、NMS164の最初の初期化の際にオペレーティング・システム190によって最初に適用された標準ブロック・サイズを保持する。
メモリ・マネージャ210は、判断ブロック344に示したように、NMS164にポーリングして、NMSのメモリ・ブロックが、メイン・メモリ160の残りの部分と合致するかどうかを判断する。NMS164内にある構成されたブロック・サイズが、メモリ・マネージャ210によって利用される現行のブロック・サイズと一致しない場合は、少なくとも1つの実施形態において、オペレーティング・システム190は、ユーザに報告されるエラーを生成する。次に、ユーザは、判断ブロック346に示したように、メモリ・マネージャ220によって要求されたメモリ・ブロック・サイズになるように、合致しないNMS164を取外しするかNMS164を再び初期化することを選択することができる。
合致したメモリ・ブロックに関しては、メイン・メモリ160と関連して使用できるようにするために、ブロック348に示したように、NMS164メモリ・ブロックのアドレスを追加するか、使用可能なメモリ・アドレス・プールを更新する。
メイン・メモリ160のNMS164の認識された構成要素により、システムは、ブロック350に示したように、メモリ・マネージャ210の制御下で通常動作に戻る。
NMS164の取り外しは、同じように操作される。図2と図4を参照すると、少なくとも1つの実施形態において、ユーザは、オペレーティング・システム190に、NMS164を取り外したいという自分の要求を伝える信号を送り、それにより、ブロック460として示したような取り外しシーケンスが開始される。そのような信号は、例えば、適切なGUIオブジェクト上のマウス・クリックあるいは装置インタフェース154上のリリース・ボタンの押し下げの形である。
次に、ブロック462に示したように、メイン・メモリ・コントローラ230が連結されることがある。メイン・メモリ・コントローラ230は、ブロック464に示したように、メイン・メモリ160の再構成の処理が最も優先順位の高いイベントであるという信号をプロセス・マネージャ200に送ることができる。より具体的には、プロセス・マネージャ200は、メイン・メモリ160の再構成の時間が終了するまで、現在のすべてのプロセスのさらになる処理活動をサスペンドするように指示される。
次に、メイン・メモリ・コントローラ230は、ブロック466と判断ブロック468に示したように、メモリ・マネージャ210と連絡をとって、NMS164内のメモリ・ブロックが、NMS164の取り外し後にシステムと現行アプリケーションの連続動作に必要とされる可能性のあるデータを含む場合にはそれがどのデータかをポーリングすることができる。
必要なデータが識別された場合は、そのデータを、NMS164の取り外し前に複写しかつ/または移動することができる。例えば、NMS164のメモリ・アドレス28088が、現行プロセスと関連したデータを保留の状態で含むと判断された場合は、判断ブロック470に示したように、メモリ・マネージャ230は、メイン・メモリ160を調べて関連データを保持するのに十分なスペースがあるかを判断することができる。メイン・メモリ160のスペースが不十分であると判断された場合は、ブロック472に示したように、仮想メモリ158を増やすことができる。次に、ブロック474によって示されたように、メモリ・アドレス28088の識別されたデータを、メイン・メモリ160または仮想メモリ158にあるメモリ・アドレス20274に移動し、ブロック476に示したように、関連アドレスが、メモリ・マネージャ220によって更新される。
次に、ブロック478に示したように、システム・メモリ・アドレス・プールが更新されたときに、NMS164のメモリ・アドレスを取外しすることができる。次に、ブロック480に示したように、NMS164が安全に取り外すことができることを示す信号を、ユーザに提供することができる。
NMS164がコンピュータ・システム100から物理的あるいは論理的に取外しされると、ブロック482に示したように、システムは通常の動作を続ける。
例えばオペレーティング・システム190がFMS162に完全に保持されたような適切な環境下で、メモリの内容を残りのメモリ記憶に再割り当てすることなくNMS164を取り外すことができる。そのような適切な環境下で、少なくとも1つの実施形態において、オペレーティング・システム190は、NMS164の取り外しによって停止されたアプリケーション・プロセスを認識し終了する。
NMS164は、本来不揮発性なので、アプリケーションがあらかじめロードされたNMS164の挿入により、「瞬時オン」にきわめて近い機能で、メモリ・バス152を介してオペレーティング・システム190およびCPU150にアプリケーションが提供される。そのようなメイン・メモリ160内への直接挿入およびメモリ・バス152への接続は、CD上のアプリケーションをCD ROMドライブ144に提供する機能、あるいはシステム・バス122を介して最終的に提供されるアプリケーションの他のどの機能よりもかなり高速であることが分かる。
さらに、システムの通常動作中にNMS164を追加することができるので、必要に応じていくつかのコンピュータ・システムにわたりNMS164リソースを共用することで、メイン・メモリ・リソース全体の投資コストを節約でき望ましい。
さらに、NMS164が、メイン・メモリに直接挿入され、メモリ・バス152に接続されるので、ハードディスク140上の仮想メモリ158のような補助メモリを提供したりシステム・バス122にFLASHメモリや他のメモリ装置を接続したりするよりも動作がかなり高速であることが分かる。
本発明を、好ましい実施形態に関して説明したが、当業者は、本発明の範囲を逸脱することなく、様々な修正、変更および改良を行うことができ、本発明の要素およびステップに同等のものを代用できることを理解されよう。さらに、本発明の本質的な範囲から逸脱することなく、本発明の教示に関して、特定の状況または材料に多くの修正を行うことができる。しかしながら、そのような代替、変更、修正および改良は、以上に明示的に示していないが、本発明の目的と趣旨の範囲内であるように意図され含意される。したがって、本発明は、本発明を実行するために熟慮された最良の形態として開示された特定の実施形態に限定されず、本発明が、併記の特許請求の範囲内にあるすべての実施形態を含むように意図されている。
本発明の実施形態によるコンピュータ・システムの概略的なブロック図。 本発明の実施形態による不揮発性メモリ記憶装置の概略図。 本発明の実施形態によるメイン・メモリへの不揮発性メモリ記憶装置の追加を示す流れ図。 本発明の実施形態によるメイン・メモリから不揮発性メモリ記憶装置の取外しを示す流れ図。
符号の説明
100 コンピュータ・システム
120 メイン・ボード
150 中央処理装置(CPU)
160 メイン・メモリ
162 第1のメモリ記憶装置(FMS)
164 取り外し可能な不揮発性メモリ記憶装置(NMS)
166 磁気ランダム・アクセス・メモリ(MRAM)
168 揮発性RAM
170 BIOSメモリ
172 BIOS
182 入力装置
184 出力装置
190 オペレーティング・システム

Claims (20)

  1. コンピュータ・システムであって、
    メイン・ボードと、
    前記メイン・ボードに結合された少なくとも1つの中央処理装置(CPU)と、
    前記メイン・ボードによって前記少なくとも1つのCPUに結合され、
    第1のメモリ記憶装置(FMS)と、
    前記少なくとも1つのCPUで前記FMSと実質的に同じ速度で動作する取り外し可能な不揮発性メモリ記憶装置(NMS)と、
    を備える、少なくとも2つのメモリ記憶を収容することができるメイン・メモリと、
    を有し、
    該メイン・メモリが、さらに、前記コンピュータ・システムの起動時に前記メイン・メモリにロードされるオペレーティング・システムを支援することができ、
    該オペレーティング・システムが、前記少なくとも1つのCPUとメイン・メモリの基本動作を制御し、
    該オペレーティング・システムが、前記NMSの取外しまたは挿入に応じたメイン・メモリの動的調整を可能にしており、
    前記CPUに結合された少なくとも1つの入力装置と、
    前記CPUに結合された少なくとも1つの出力装置と、
    を有するコンピュータ・システム。
  2. 前記動的調整が、前記NMSの前記取外しまたは挿入に関する通知に対応する、請求項1に記載のコンピュータ・システム。
  3. 前記通知が、前記NMSの前記取外しまたは挿入に応じて前記メイン・ボードによって生成されるハードウェア割込み応答(IRQ)である、請求項2に記載のコンピュータ・システム。
  4. 前記メイン・ボードによって前記CPUに結合され、前記NMSが取外しまたは挿入されたときに前記システムに対する固有のイベントを登録するBIOSを含むBIOSメモリをさらに有する、請求項1に記載のコンピュータ・システム。
  5. 前記FMSが、揮発性RAMである、請求項1に記載のコンピュータ・システム。
  6. 前記FMSが、NMSである、請求項1に記載のコンピュータ・システム。
  7. 前記NMSが、磁気ランダム・アクセス・メモリ(MRAM)で、請求項1に記載のコンピュータ・システム。
  8. 前記NMSが、強誘電体ランダム・アクセス・メモリ(FeRAM)である、請求項1に記載のコンピュータ・システム。
  9. コンピュータ・システムであって、
    メイン・ボードと、
    前記メイン・ボードに結合された少なくとも1つの中央処理装置(CPU)と、
    前記メイン・ボードによって少なくとも1つのCPUに結合され、
    第1のメモリ記憶装置(FMS)と、
    前記少なくとも1つのCPUで前記FMSと実質的に同じ速度で動作する取り外し可能な不揮発性メモリ記憶装置(NMS)と、
    前記コンピュータ・システムの起動時に前記FMSにロードされ、前記少なくとも1つのCPUとメイン・メモリの前記基本動作を制御し、前記NMSの前記取外しまたは挿入に関する通知に応じたメイン・メモリの動的調整を可能にするオペレーティング・システムと、
    を備えるメイン・メモリと、
    前記少なくとも1つのCPUに結合された少なくとも1つの入力装置と、
    前記少なくとも1つのCPUに結合された少なくとも1つの出力装置と、
    を有するコンピュータ・システム。
  10. 前記通知が、前記NMSの前記取外しまたは挿入に応じて前記メイン・ボードによって生成されたハードウェア割込み応答(IRQ)である、請求項9に記載のコンピュータ・システム。
  11. 前記メイン・ボードによって前記CPUに結合され、前記NMSの前記取外しまたは挿入の際に前記システムに対する固有のイベントを登録するBIOSを含むBIOSメモリをさらに有する、請求項9に記載のコンピュータ・システム。
  12. 前記NMSが、磁気ランダム・アクセス・メモリ(MRAM)である、請求項9に記載のコンピュータ・システム。
  13. CPUとメモリを備えるコンピュータによって実行可能なオペレーティング・システムであって、
    アクティブなプロセスのための前記CPUへのアクセス時間を管理するプロセス・マネージャと、
    前記CPUによる現在アクティブなプロセスの実行のために、キャッシュ、メイン・メモリおよび仮想メモリを含むメモリを管理するメモリ・マネージャと、
    前記CPUによって実行されるときに、プロセスによって必要とされる情報の入出力を管理するデバイス・マネージャと、
    前記メモリ・マネージャに結合されており、動作中に不揮発性メイン・メモリが前記コンピュータ・システムに追加または取外しされたときにメイン・メモリの使用を動的に調整するメイン・メモリ・コントローラと、
    を有するオペレーティング・システム。
  14. 前記使用の動的調整が、
    第1のメモリ記憶装置(FMS)と、
    前記FMSと実質的に同じ速度で動作する取り外し可能な不揮発性メモリ記憶装置(NMS)と、
    を有するメイン・メモリに基づく、請求項13に記載のオペレーティング・システム。
  15. 前記プロセスが、スレッドであっても良い、請求項13に記載のオペレーティング・システム。
  16. 前記メイン・メモリ・コントローラが、前記ハードウェア・システムによって生成されたハードウェア割込み(IRQ)に基づいてメイン・メモリの使用を動的に調整する、請求項13に記載のオペレーティング・システム。
  17. 前記メイン・メモリ・コントローラが、前記システムに登録されたBIOSイベントに基づいてメイン・メモリの使用を動的に調整する、請求項13に記載のオペレーティング・システム。
  18. 前記メイン・メモリ・コントローラの前記動作が、前記プロセス・マネージャによって最も高い優先順位を与えられる、請求項13に記載のオペレーティング・システム。
  19. 前記FMSが、NMSである、請求項13に記載のコンピュータ・システム。
  20. 前記不揮発性メイン・メモリが、磁気ランダム・アクセス・メモリ(MRAM)である、請求項13に記載のオペレーティング・システム。
JP2004077827A 2003-03-26 2004-03-18 メイン・メモリの動的再割当てが可能なコンピュータ・システム Pending JP2004295885A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/397,434 US6950919B2 (en) 2003-03-26 2003-03-26 Computer system with operating system to dynamically adjust the main memory

Publications (1)

Publication Number Publication Date
JP2004295885A true JP2004295885A (ja) 2004-10-21

Family

ID=32824975

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004077827A Pending JP2004295885A (ja) 2003-03-26 2004-03-18 メイン・メモリの動的再割当てが可能なコンピュータ・システム

Country Status (3)

Country Link
US (1) US6950919B2 (ja)
EP (1) EP1462937A3 (ja)
JP (1) JP2004295885A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008546053A (ja) * 2005-05-16 2008-12-18 フリースケール セミコンダクター インコーポレイテッド 磁気抵抗ランダム・アクセス・メモリ(mram)を用いた不揮発性メモリ・システム

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7420815B2 (en) * 2003-11-06 2008-09-02 Gateway Inc. System for assembling computers to provide a favorable import classification
US7161756B2 (en) * 2004-05-10 2007-01-09 Tandberg Data Storage Asa Method and system for communication between a tape drive and an external device
US7761623B2 (en) * 2006-09-28 2010-07-20 Virident Systems, Inc. Main memory in a system with a memory controller configured to control access to non-volatile memory, and related technologies
US8074022B2 (en) * 2006-09-28 2011-12-06 Virident Systems, Inc. Programmable heterogeneous memory controllers for main memory with different memory modules
US8949555B1 (en) 2007-08-30 2015-02-03 Virident Systems, Inc. Methods for sustained read and write performance with non-volatile memory
US7761624B2 (en) * 2006-09-28 2010-07-20 Virident Systems, Inc. Systems and apparatus for main memory with non-volatile type memory modules, and related technologies
US9984012B2 (en) 2006-09-28 2018-05-29 Virident Systems, Llc Read writeable randomly accessible non-volatile memory modules
US7761626B2 (en) * 2006-09-28 2010-07-20 Virident Systems, Inc. Methods for main memory in a system with a memory controller configured to control access to non-volatile memory, and related technologies
WO2008040028A2 (en) * 2006-09-28 2008-04-03 Virident Systems, Inc. Systems, methods, and apparatus with programmable memory control for heterogeneous main memory
US7761625B2 (en) * 2006-09-28 2010-07-20 Virident Systems, Inc. Methods for main memory with non-volatile type memory modules, and related technologies
US20080082750A1 (en) * 2006-09-28 2008-04-03 Okin Kenneth A Methods of communicating to, memory modules in a memory channel
WO2008051940A2 (en) 2006-10-23 2008-05-02 Virident Systems, Inc. Methods and apparatus of dual inline memory modules for flash memory
US7774556B2 (en) 2006-11-04 2010-08-10 Virident Systems Inc. Asymmetric memory migration in hybrid main memory
KR101406493B1 (ko) * 2007-07-19 2014-06-12 엘지전자 주식회사 플래쉬 메모리를 구비한 컴퓨터 및 플래쉬 메모리의구동방법
US9921896B2 (en) 2007-08-30 2018-03-20 Virident Systems, Llc Shutdowns and data recovery to avoid read errors weak pages in a non-volatile memory system
US8856464B2 (en) * 2008-02-12 2014-10-07 Virident Systems, Inc. Systems for two-dimensional main memory including memory modules with read-writeable non-volatile memory devices
US9251899B2 (en) * 2008-02-12 2016-02-02 Virident Systems, Inc. Methods for upgrading main memory in computer systems to two-dimensional memory modules and master memory controllers
US9513695B2 (en) 2008-06-24 2016-12-06 Virident Systems, Inc. Methods of managing power in network computer systems
US8417873B1 (en) 2008-06-24 2013-04-09 Virident Systems, Inc. Random read and read/write block accessible memory
US20100250818A1 (en) * 2009-03-27 2010-09-30 Qualcomm Incorporated System and method of providing wireless connectivity between a portable computing device and a portable computing device docking station
US9128669B2 (en) * 2009-03-27 2015-09-08 Qualcomm Incorporated System and method of managing security between a portable computing device and a portable computing device docking station
US9201593B2 (en) 2009-03-27 2015-12-01 Qualcomm Incorporated System and method of managing displays at a portable computing device and a portable computing device docking station
US8653785B2 (en) 2009-03-27 2014-02-18 Qualcomm Incorporated System and method of managing power at a portable computing device and a portable computing device docking station
US8484436B2 (en) * 2010-09-02 2013-07-09 Atmel Corporation Processor independent loop entry cache
US8627036B2 (en) 2011-09-12 2014-01-07 Microsoft Corporation Memory management techniques
KR101924022B1 (ko) 2012-04-03 2019-02-22 삼성전자주식회사 메모리 시스템 및 그것의 페이지 교체 방법
US9274839B2 (en) * 2012-09-27 2016-03-01 Intel Corporation Techniques for dynamic physical memory partitioning
DE102013002117A1 (de) * 2013-02-08 2014-08-14 Werma Holding Gmbh + Co. Kg Betriebszustandswarnvorrichtung
US10229043B2 (en) * 2013-07-23 2019-03-12 Intel Business Machines Corporation Requesting memory spaces and resources using a memory controller
CN105630535A (zh) * 2015-05-29 2016-06-01 上海磁宇信息科技有限公司 一种计算系统及启动系统的方法
US11899949B2 (en) * 2020-07-17 2024-02-13 Dish Network Technologies India Private Limited Methods and systems for dynamic configuration and effective usage for allocating memory in media presentations or like devices

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5787466A (en) 1996-05-01 1998-07-28 Sun Microsystems, Inc. Multi-tier cache and method for implementing such a system
US5732238A (en) 1996-06-12 1998-03-24 Storage Computer Corporation Non-volatile cache for providing data integrity in operation with a volatile demand paging cache in a data storage system
JPH10154101A (ja) 1996-11-26 1998-06-09 Toshiba Corp データ記憶システム及び同システムに適用するキャッシュ制御方法
JP3649011B2 (ja) * 1998-01-09 2005-05-18 株式会社日立製作所 コンピュータシステム
TW424908U (en) 1999-04-16 2001-03-01 Kuang Yun Ming CD cleaning set with the function of sticking label
US6507883B1 (en) 2000-10-23 2003-01-14 International Business Machines Corporation Recalling logical volumes to cache from physical media volumes for redundant storage in automated data storage libraries
US6404674B1 (en) 2001-04-02 2002-06-11 Hewlett Packard Company Intellectual Property Administrator Cladded read-write conductor for a pinned-on-the-fly soft reference layer
US6490217B1 (en) 2001-05-23 2002-12-03 International Business Machines Corporation Select line architecture for magnetic random access memories
US20030005219A1 (en) 2001-06-29 2003-01-02 Royer Robert J. Partitioning cache metadata state
US6504221B1 (en) 2001-09-25 2003-01-07 Hewlett-Packard Company Magneto-resistive device including soft reference layer having embedded conductors

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008546053A (ja) * 2005-05-16 2008-12-18 フリースケール セミコンダクター インコーポレイテッド 磁気抵抗ランダム・アクセス・メモリ(mram)を用いた不揮発性メモリ・システム

Also Published As

Publication number Publication date
EP1462937A2 (en) 2004-09-29
US6950919B2 (en) 2005-09-27
EP1462937A3 (en) 2006-06-07
US20040193783A1 (en) 2004-09-30

Similar Documents

Publication Publication Date Title
JP2004295885A (ja) メイン・メモリの動的再割当てが可能なコンピュータ・システム
US10514931B2 (en) Computing platform interface with memory management
TWI407300B (zh) 電源管理控制器與方法
US9529410B2 (en) Service processor (SP) initiated data transaction with BIOS utilizing power off commands
US8275949B2 (en) System support storage and computer system
US9529750B2 (en) Service processor (SP) initiated data transaction with bios utilizing interrupt
US9058257B2 (en) Persistent block storage attached to memory bus
KR102219122B1 (ko) 다중-운영-체제 환경들에서 운영 체제 전환들을 위한 기술들
US20180203816A1 (en) System including hot plug module and memory module
CN110941395A (zh) 动态随机存取存储器、内存管理方法、系统及存储介质
CN1398372A (zh) 包含在系统自举时使用非系统内存存储资源的存储器存取控制器的计算机系统
US20180246647A1 (en) System and Method for Storing Modified Data to an NVDIMM During a Save Operation
KR20170127948A (ko) 메모리 모듈 및 이를 포함하는 시스템
US10877918B2 (en) System and method for I/O aware processor configuration
TWI823253B (zh) 計算系統、由電腦執行的方法以及電腦程式產品
CN112181286A (zh) 半导体系统和用于操作半导体系统的方法
US7752429B2 (en) Computer system and boot code accessing method thereof
JP2022161812A (ja) 低電力のコヒーレントメモリデバイスにアクセスする場合のプロセッサストールの回避法
US7464228B2 (en) System and method to conserve conventional memory required to implement serial ATA advanced host controller interface
US20110161647A1 (en) Bootable volatile memory device, memory module and processing system comprising bootable volatile memory device, and method of booting processing system using bootable volatile memory device
CN111177027A (zh) 动态随机存取存储器、内存管理方法、系统及存储介质
TWI840849B (zh) 計算系統、電腦實施方法及電腦程式產品
KR20100128033A (ko) 전자장치 및 그 부팅방법
US11023139B2 (en) System for speculative block IO aggregation to reduce uneven wearing of SCMs in virtualized compute node by offloading intensive block IOs
JP6105038B1 (ja) システム一時停止方法、システム再開方法、及びこれらの方法を用いるコンピュータシステム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060619

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060627

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20060925

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20060928

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070306

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20070706

A072 Dismissal of procedure [no reply to invitation to correct request for examination]

Free format text: JAPANESE INTERMEDIATE CODE: A072

Effective date: 20071211