[go: up one dir, main page]

JPH06105440B2 - 主メモリ管理方法 - Google Patents

主メモリ管理方法

Info

Publication number
JPH06105440B2
JPH06105440B2 JP2055136A JP5513690A JPH06105440B2 JP H06105440 B2 JPH06105440 B2 JP H06105440B2 JP 2055136 A JP2055136 A JP 2055136A JP 5513690 A JP5513690 A JP 5513690A JP H06105440 B2 JPH06105440 B2 JP H06105440B2
Authority
JP
Japan
Prior art keywords
main memory
program
area
resident
resident program
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.)
Expired - Fee Related
Application number
JP2055136A
Other languages
English (en)
Other versions
JPH03257644A (ja
Inventor
亮吉 吉沢
智明 中村
茂則 金子
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2055136A priority Critical patent/JPH06105440B2/ja
Publication of JPH03257644A publication Critical patent/JPH03257644A/ja
Priority to US08/293,334 priority patent/US5579508A/en
Publication of JPH06105440B2 publication Critical patent/JPH06105440B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Stored Programmes (AREA)

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は、OS/常駐プログラム群/非常駐プログラム群
からなるマルチプログラムを実行する計算機システムに
おいて、主メモリをプログラムにダイナミックに割り当
てまたは解放する際の、OSによる主メモリ管理方法に関
するものである。
[従来の技術] マルチプログラムシステムにおけ従来の主メモリ管理方
法としては、特開昭61−54548号公報のように、主メモ
リをOS及び常駐プログラム群を格納する領域と、非常駐
プログラム群を格納する領域に論理的に分割し、プログ
ラムの実行時にはそのプログラムに対して決められた領
域の主メモリだけを割り当てるようにOSが制御する方法
が知られていた。これにより、たとえばある非常駐プロ
グラムが暴走して主メモリを多量に使用しても、その非
常駐プログラムが異常終了するにとどまり、OSや常駐プ
ログラム群の動作に影響を与えることはない。また、特
開昭62−177644号公報のように、プロセッサから直接ア
クセス可能なバンクメモリ(補助メモリ)を設けてお
き、主メモリ上にOS及び常駐プログラムを、バンクメモ
リ上に非常駐プログラムをのせて実行エリアを分ける方
法が知られていた。この方法によれば、主メモリに常駐
プログラム,バンクメモリに非常駐プログラムを配置
し、常駐プログラムは主メモリのみ、非常駐プログラム
はバンクメモリのみを用いて実行されるので、たとえば
非常駐プログラムの実行領域を拡張するときは、バンク
メモリを増設すればよく、主メモリすなわちOSや常駐プ
ログラムの実行エリアを圧迫することがないため、本方
法を適用した端末システムの機能・性能拡張が容易であ
った。
[発明が解決しようとする課題] 上記した特開昭61−54548号公報の方法では、OSと常駐
プログラム群が使用する主メモリを明確に分離する点に
ついて配慮がされていない。ところが、入出力装置の増
設やOSの機能拡張等の場合にはOSが使用する容量が増加
することがある。このようなときには、OSが使用する主
メモリ容量の増加のために、計算機システムのオンライ
ン運転中に主メモリ不足が発生して、常駐プログラムが
異常動作する、という事態に陥る可能性があった。ま
た、特開昭62−177644号公報の方法では、上記した特開
昭61−54548号公報の場合と同じ問題点があり、さらに
バンクメモリと、バンクメモリにロードされた非常駐プ
ログラムに制御を移すためのハードウェアとが必要であ
り、主メモリに常駐プログラムと非常駐プログラムを配
置する点について配慮されていないため、それらハード
ウェアを有していない計算機システムに適用できない、
という問題があった。
本発明の目的は、OS/常駐プログラム群/非常駐プログ
ラム群のそれぞれのプログラム群によって使用される主
メモリ容量が変動しても、他のプログラム群の動作に影
響を与えないような主メモリ管理方法を提供するにあ
る。
[課題を解決するための手段] 上記目的を達成するために、請求項1記載の発明につい
ては、OS/常駐プログラム群/非常駐プログラム群を配
置する領域を規定する手段を設け、それぞれのプログラ
ム群に対して決められた領域の主メモリだけを割り当て
るようにOSが制御するものである。
また、請求項2記載の発明については、OS/常駐プログ
ラム群/非常駐プログラム群に割り当てる主メモリ容量
を規定する手段を設け、それぞれのプログラム群に対し
て決められた容量を越えないだけの主メモリを割り当て
るようにOSが制御するものである。
[作用] 請求項1記載の発明については、OSまたは常駐プログラ
ムまたは非常駐プログラムが主メモリを確保するとき
は、OSがそれぞれのプログラムが使用できる主メモリの
領域を識別し、その領域内に要求分の空きがあれば要求
分の空き主メモリを割り当て、空きがなければその要求
を異常処理する。また、OSまたは常駐プログラムまたは
非常駐プログラムが主メモリを解放するときは、OSはそ
れぞれのプログラムが使用していた主メモリの領域を識
別し、所定の主メモリの領域を空き主メモリとする。
請求項2記載の発明については、OSまたは常駐プログラ
ムまたは非常駐プログラムが主メモリを確保するとき
は、OSはそれぞれのプログラムが使用できる主メモリの
最大要領を識別し、結果として主メモリ使用量がこの値
を越えなければ空き主メモリを割り当て、越えればその
要求を異常終了させる。また、OSまた常駐プログラムま
たは非常駐プログラムが主メモリを解放するときは、OS
その主メモリを空きとして管理するとともに、解放され
た主メモリ容量を識別し、現在の主メモリ使用量からそ
の値を減算する。
これによって、OSまたは常駐プログラムまたは非常駐プ
ログラムは、それぞれOS専用/常駐プログラム群専用/
非常駐プログラム群専用の主メモリだけを使用して動作
するので、1つのプログラムの変更や動作が他の領域の
プログラムに影響することはなくなる。
[実施例] 以下、本発明の一実施例を図により説明する。第1図は
請求項1記載の説明を適用した計算機システムの構成例
である。本計算機システムは主メモリ101のページング
機構をメモリ管理ユニット103によってサポートしてお
り、主メモリの各ページに対してそのページが使用中か
否かを記録する空き管理テーブル105が用意されてい
る。OSは、主メモリ内のOS専用領域110/常駐プログラム
専用領域111/非常駐プログラム専用領域112が空き管理
テーブル105上のどの範囲に相当するかを領域管理テー
ブル104に記録して管理する。空き管理テーブル105と領
域管理テーブル104は主メモリの先頭エリア107に配置さ
れ、OSの命令部がディスク106からローディングされる
のに先立って、これらテーブルの初期値がディスクから
ローディングされる。主メモリの各領域には、それぞれ
OS113/常駐プログラム群114/非常駐プログラム群115が
配置される。オンライン運転中の定常状態では、各領域
内には使用されていない空き主メモリ116〜118が存在す
る。ここで実際にはどのプログラムを常駐とし、どのプ
ログラムを非常駐とするかはユーザが指定する。そして
OS113、常駐プログラム群114内の個々のプログラム、及
び非常駐プログラム群の個々のプログラムはCPU102を時
分割に使用して実行される。
第2図はOSまたは常駐プログラムまたは非常駐プログラ
ムに主メモリを割り当てる場合に、OSが行う処理の流れ
図である。まず、ステップ201で領域管理テーブル104を
参照して処理対象となる主メモリ領域を特定する。次
に、ステップ202で空き管理テーブル105を参照して要求
サイズ分の空きページがあるか否かを判定する。もし、
要求サイズ分の空きページがあればステップ203からス
テップ204へ進み、空き管理テーブル105の該当エントリ
を使用中として登録し、ステップ205で割り当てられた
主メモリページを主メモリ要求元プログラムに対して報
告する。もし、要求サイズ分の空きページがなければ、
ステップ206で主メモリ要求元プログラムに異常を報告
する。
第3図はOSまたは常駐プログラムまたは非常駐プログラ
ムから主メモリが解放される場合に、OSが行う処理の流
れである。まず、ステップ301では解放要求を発行した
プログラムに対応する主メモリ領域を、領域管理テーブ
ル104を参照して特定する。次に、ステップ302〜303を
繰り返して解放要求ページの解放と空き管理テーブル10
5の該当エントリを未使用として登録する更新処理とを
行う。
本実施例によれば、主メモリ上のある位置を境にOS用/
常駐プログラム用/非常駐プログラム用の3領域に分割
され、それぞれのプログラムは対応する領域内でのみ実
行されるので、たとえば非常駐プログラムが主メモリを
不当に消費してもOSや常駐プログラムの実行に悪影響を
与えることはない。
第4図は請求項2記載の発明を適用した計算機システム
の構成例である。本計算機システムは主メモリ401のペ
ージング機構をメモリ管理ユニット403によってサポー
トしており、主メモリの各ページに対してそのページが
使用中か否かを記録する空き管理テーブル405が用意さ
れている。OSは、OS/常駐プログラム群/非常駐プログ
ラム群のそれぞれに割り当てられる最大主メモリページ
数X,Y,Zと現在割り当てられている主メモリページ数x,
y,zをページ割り当てテーブル404に記録して管理する。
空きページ管理テーブル405とページ割り当てテーブル4
04は、主メモリの先頭エリア407に配置され、OSの命令
部がディスク406からローディングされるのに先立っ
て、これらテーブルの初期値がローディングされる。主
メモリには、OS413/常駐プログラム群414/非常駐プログ
ラム群415が配置される。オンライン運転中の定常状態
では、現在割り当てられているページ数(x〜z)は、
それぞれに割り当てられる最大主メモリページ数X〜Z
に比べて小さい値である。
第5図はOSまたは常駐プログラムまたは非常駐プログラ
ムに主メモリを割り当てる場合に、OSが行う処理の流れ
図である。まず、ステップ501でページ割り当てテーブ
ル404を参照して、主メモリ要求元プログラムに対して
現在割り当て可能な主メモリページ数を算出する。これ
は、割り当て可能な最大主メモリページ数X〜Zから現
在使用している主メモリページ数x〜zを減算して求め
る。次に、ステップ502で要求ページ数が現在割り当て
可能なページ数を越えているか否かを判定する。もし越
えていなければ、ステップ503で空きページ管理テーブ
ル405を参照して主メモリを検索し、ステップ504で空き
管理テーブルの該当エントリを使用中として登録し、ス
テップ505で割り当てられた主メモリページを主メモリ
要求元プログラムに対して報告する。もし、要求サイズ
分の空きページがなければ、ステップ506で主メモリ要
求元プログラムに異常を報告する。
第6図はOSまたは常駐プログラムまたは非常駐プログラ
ムから主メモリが解放される場合に、OSが行う処理の流
れである。まず、ステップ601ではページ割り当てテー
ブル405内のうちから解放要求元プログラムに対応する
エントリを特定し、解放する主メモリページ数を、現在
使用中ページ数x〜zから減算する。そして解放される
ページ分、ステップ602,603を繰り返す。ステップ603で
は解放される主メモリページに対応する空き管理テーブ
ルのエントリを未使用として登録する。
本実施例によれば、ページ割り当てテーブル404に定義
された容量に基づいて主メモリはOS用/常駐プログラム
用/非常駐プログラム用に3分割され、それぞれのプロ
グラムは対応する容量分の範囲でのみ実行されるので、
たとえば非常駐プログラムが主メモリを不当に消費して
もOSや常駐プログラムの実行に悪影響を与えることはな
い。
[発明の効果] 本発明によれば、OS/常駐プログラム群/非常駐プログ
ラム群に割り当てられる主メモリが予め確保されてお
り、他のプログラム群によって使用できぬようOSによっ
て制御されるので、ユーザは、他のプログラム群の振舞
いを考慮することなくプログラミングでき、システム構
築時のソフト生産性を向上させることができる。特に常
駐プログラム群は、ある事象に対して速やかに所望の処
理を実行せねばならないリアルタイム処理のために作成
されることが多いので、常駐プログラムの主メモリ使用
量を、OSや非常駐プログラム群の主メモリ使用量と独立
なものとしたことは、リアルタイム処理計算機としての
タフネス性を強化し、信頼性を確保するうえで効果が大
きい。さらに、OSの入れ換えによってその容量が増加し
ても、常駐プログラム群と非常駐プログラム群は、OS入
れ換え前と同容量の主メモリを使用できるので、システ
ム運用上悪影響を与えない。
【図面の簡単な説明】
第1図は本発明の方法を適用したシステムの一実施例を
示すブロック図、第2図及び第3図は第1図の実施例に
おける主メモリの割り当て及び解放のための処理を示す
フローチャート、第4図は本発明の方法を適用したシス
テムの別の実施例を示すブロック図、第5図及び第6図
は第4図の実施例における主メモリの割り当て及び解放
のための処理を示すフローチャートである。 101……主メモリ、113,413……OS、114,414……常駐プ
ログラム群、115,415……非常駐プログラム群、105,405
……空きページ管理テーブル、104……領域管理テーブ
ル、404……ページ割り当てテーブル。

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】主メモリをOS領域,常駐プログラム領域,
    及び非常駐プログラム領域の3つの領域に分割した各領
    域ごとの先頭アドレス及び容量を記憶する領域管理テー
    ブルを設け、プログラムをその実行時に主メモリに割り
    付けるときには当該プログラムがOSであるか常駐プログ
    ラムであるか非常駐プログラムであるかに応じて上記3
    つの領域に対応して上記領域管理テーブルで定められた
    領域内に空きエリアがあればそのエリアに当該プログラ
    ムを割り付けることを特徴とする主メモリ管理方法。
  2. 【請求項2】主メモリの全容量をOS用,常駐プログラム
    用,及び非常駐プログラム用の3つの容量に分割して該
    分割した各容量及び該各容量の内の空き容量をその対象
    プログラム種別と対応づけて記憶する割り当てテーブル
    を設け、プログラムをその実行時に主メモリに割り付け
    るときには、当該プログラムがOSであるか常駐プログラ
    ムであるか非常駐プログラムであるかに応じて上記割り
    当てテーブルの3つの容量の内の対応する容量に空きが
    ある場合に当該プログラム用のエリアを主メモリに割り
    付けることを特徴とする主メモリ管理方法。
JP2055136A 1990-03-08 1990-03-08 主メモリ管理方法 Expired - Fee Related JPH06105440B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2055136A JPH06105440B2 (ja) 1990-03-08 1990-03-08 主メモリ管理方法
US08/293,334 US5579508A (en) 1990-03-08 1994-08-24 Main memory managing method and apparatus in which main memory is partitioned into three distinct areas

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2055136A JPH06105440B2 (ja) 1990-03-08 1990-03-08 主メモリ管理方法

Publications (2)

Publication Number Publication Date
JPH03257644A JPH03257644A (ja) 1991-11-18
JPH06105440B2 true JPH06105440B2 (ja) 1994-12-21

Family

ID=12990368

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2055136A Expired - Fee Related JPH06105440B2 (ja) 1990-03-08 1990-03-08 主メモリ管理方法

Country Status (2)

Country Link
US (1) US5579508A (ja)
JP (1) JPH06105440B2 (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5689707A (en) * 1995-12-04 1997-11-18 Ncr Corporation Method and apparatus for detecting memory leaks using expiration events and dependent pointers to indicate when a memory allocation should be de-allocated
US6745292B1 (en) * 1995-12-08 2004-06-01 Ncr Corporation Apparatus and method for selectively allocating cache lines in a partitioned cache shared by multiprocessors
KR0164546B1 (ko) * 1996-01-09 1999-01-15 김광호 메모리 영역의 분할 사용방법
US6023712A (en) * 1997-07-30 2000-02-08 Quarterdeck Corporation Method and apparatus for brokering memory resources
US6684304B2 (en) * 1999-01-29 2004-01-27 Micron Technology, Inc. Method to access memory based on a programmable page limit
DE19951716A1 (de) * 1999-10-27 2001-05-03 Heidenhain Gmbh Dr Johannes Verfahren zur dynamischen Speicherverwaltung
US7310801B2 (en) * 2000-04-27 2007-12-18 Microsoft Corporation Servicing a component-based software product throughout the software product lifecycle
JP2002132520A (ja) * 2000-10-24 2002-05-10 Hitachi Telecom Technol Ltd プログラム制御方法及びその方法を用いた装置
US20020129370A1 (en) * 2001-02-09 2002-09-12 Dan Kikinis Method and system for implementing an electronic program guide
US6681309B2 (en) * 2002-01-25 2004-01-20 Hewlett-Packard Development Company, L.P. Method and apparatus for measuring and optimizing spatial segmentation of electronic storage workloads
KR100997166B1 (ko) * 2002-06-20 2010-11-29 소니 주식회사 디코딩 장치 및 디코딩 방법
US20050091259A1 (en) * 2003-10-24 2005-04-28 Microsoft Corporation Redmond Wa. Framework to build, deploy, service, and manage customizable and configurable re-usable applications
JP4460967B2 (ja) * 2004-07-23 2010-05-12 株式会社東芝 メモリカード、不揮発性半導体メモリ、及び半導体メモリの制御方法
JP4522799B2 (ja) * 2004-09-08 2010-08-11 ルネサスエレクトロニクス株式会社 半導体回路装置及び暴走検出方法
JP2007011519A (ja) * 2005-06-29 2007-01-18 Fuji Electric Fa Components & Systems Co Ltd プログラマブルコントローラ
US8473691B2 (en) 2009-02-27 2013-06-25 Ryosuke Ohgishi Memory management device, image forming apparatus, and image forming method
JP2010198569A (ja) * 2009-02-27 2010-09-09 Kyocera Mita Corp メモリ管理装置及び画像形成装置
JP6354609B2 (ja) * 2015-01-30 2018-07-11 京セラドキュメントソリューションズ株式会社 情報処理装置およびメモリー管理プログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4403283A (en) * 1980-07-28 1983-09-06 Ncr Corporation Extended memory system and method
US4390945A (en) * 1980-08-25 1983-06-28 Burroughs Corporation Self-managing variable field storage station employing a cursor for handling nested data structures
US4996662A (en) * 1983-10-03 1991-02-26 Wang Laboratories, Inc. Method for generating document using tables storing pointers and indexes
JPS6154548A (ja) * 1984-08-23 1986-03-18 Fujitsu Ltd 非常駐プログラムの制御方法
JPS62177644A (ja) * 1986-01-31 1987-08-04 Hitachi Ltd オ−バレイ制御方式
US4811216A (en) * 1986-12-22 1989-03-07 American Telephone And Telegraph Company Multiprocessor memory management method
US5062039A (en) * 1988-09-07 1991-10-29 International Business Machines Corp. Sharing of workspaces in interactive processing using workspace name tables for linking of workspaces

Also Published As

Publication number Publication date
JPH03257644A (ja) 1991-11-18
US5579508A (en) 1996-11-26

Similar Documents

Publication Publication Date Title
JPH06105440B2 (ja) 主メモリ管理方法
US5193171A (en) Method of managing space of peripheral storages and apparatus for the same
US5559978A (en) Method for increasing the efficiency of a virtual memory system by selective compression of RAM memory contents
Pang et al. Memory-adaptive external sorting
JPH0628053B2 (ja) マルチプロセッサシステムの資源の割当制御方法
JPH0926889A (ja) 仮想計算機システム
US4984150A (en) Virtual memory control management system
US5511206A (en) Microprocessor based computer with virtual memory space in overwritable memory
JP3299294B2 (ja) メモリブロック制御方式
US6085264A (en) Accounting-information outputting device
JPS6152761A (ja) 演算装置
JPS603229B2 (ja) 情報処理方式
JPS635780B2 (ja)
JP3022829B2 (ja) 記憶装置の自動割り当て装置
JP3772003B2 (ja) メモリ管理システムおよびデータ管理方法
JPH0324697B2 (ja)
JPH0423137A (ja) スレツド生成方式及び並列処理方式
JPH01309118A (ja) ファイル・装置管理方式
JP2003076562A (ja) メモリ量的制御方法、装置、コンピュータプログラム及び記録媒体
JPS6089258A (ja) 直接アクセスボリユ−ムのスペ−ス割当て制御方式
JP2596185B2 (ja) アカウント採取方式
JPS6154548A (ja) 非常駐プログラムの制御方法
JPH0342740A (ja) ファイルの媒体割付け方法
JP2022127727A (ja) メモリ割当装置、メモリ割当プログラム、及びメモリ割当方法
JPH076045A (ja) 多重処理システムにおけるメモリ管理方法

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees