JPH06282463A - プログラムテストにおけるメモリ管理方法 - Google Patents

プログラムテストにおけるメモリ管理方法

Info

Publication number
JPH06282463A
JPH06282463A JP5067838A JP6783893A JPH06282463A JP H06282463 A JPH06282463 A JP H06282463A JP 5067838 A JP5067838 A JP 5067838A JP 6783893 A JP6783893 A JP 6783893A JP H06282463 A JPH06282463 A JP H06282463A
Authority
JP
Japan
Prior art keywords
area
word data
memory
storage means
unused
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
JP5067838A
Other languages
English (en)
Inventor
Kouji Zaiki
幸治 材木
Shinji Sasaki
真司 佐々木
Mamoru Ito
守 伊藤
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP5067838A priority Critical patent/JPH06282463A/ja
Publication of JPH06282463A publication Critical patent/JPH06282463A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Memory System (AREA)

Abstract

(57)【要約】 【目的】 プログラムテスト時において、メモリの開放
処理を誤って行なった場合に、その検出を容易にする。 【構成】 メモリ管理手段101、プロセッサ108、
プログラムを格納する記憶手段107およびワードデー
タ格納手段106で構成された計算機システムにおい
て、メモリ管理手段101は、メモリ領域獲得手段10
2と、割り付け済み領域を未使用領域に変更し再使用を
可能にするメモリ領域開放手段103と、任意ワードデ
ータを記憶するワードデータ記憶手段104とを備え、
メモリ領域開放手段103は、プログラムのテスト時
に、返却された割り付け済み領域を未使用領域に変更す
る際、予めワードデータ記憶手段104に格納されてい
るワードデータをその領域全体に書き込む機能を有す
る。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、計算機システムにおけ
るメモリ管理方法に関するものであり、特にプログラム
テスト時に、使用中のメモリ領域が誤って返却され、そ
れを参照する場合に、その誤りを検出し易くするための
メモリ管理方法に関するものである。
【0002】
【従来の技術】一般に、メモリ資源の有効利用のために
実行時に必要とする領域を獲得したり、不要となった領
域を開放して再利用できるようにする方法がとられてい
る。この場合、ユーザプログラムでは、オペレーティン
グシステムに対してシステムコールによりサービスを受
けることになる。たとえば、領域獲得にはmallocシステ
ムコール、領域開放にはfreeシステムコールがある。
【0003】たとえば簡略化すると、従来は図2に示す
ような領域管理がなされている。図2(a)はある時刻で
の領域の様子を示したもので、201、206、211
はそれぞれ未使用領域203、208、213の大きさ
が格納されるフィールドで、204、209、214は
それぞれ使用中の領域205、210、215の大きさ
が格納されるフィールドであり、202、207、21
2は次の未使用領域へのポインタが格納されるフィール
ドである。フィールド202に格納されている次の未使
用領域へのポインタにより、次の未使用領域208を参
照することができ、更に、フィールド207に格納され
ている次の未使用領域へのポインタにより、次の未使用
領域213を参照することができる。
【0004】図2(b)はmallocシステムコールにより、
未使用領域213を使用中領域218にした様子を示し
たものである。216は次の未使用領域へのポインタ2
12に変わり、217は使用中領域218の大きさをも
つ。図2(c)は更に、freeシステムコールにより、使用
中の領域215を未使用領域222になった様子を示し
ており、それに伴って次の未使用領域へのポインタ21
9、未使用領域の大きさ220、次の未使用領域へのポ
インタ221も変わる。以上の方法で、メモリ領域の使
用中領域と未使用領域の管理がなされている。
【0005】例えば、図2(b)の状態で、ユーザプログ
ラムで誤って、開放すべきでない領域215に対してfr
eeシステムコールにより、使用中の領域215を未使用
領域222にしてしまったとする。その後mallocシステ
ムコールによって、その未使用領域222が使用中領域
として再利用される場合、そこを書き換えてしまうこと
が起こりうる。そこで、先に誤って領域を開放したにも
関わらず、その領域を書き換えてしまえば誤動作するた
め、誤って領域を開放したというプログラムの誤りが発
見される。しかし、その領域を書き換えない場合、たと
えその領域が再利用されて書き換えられる可能性があっ
ても、書き換えられるまで正常動作しているように見
え、誤動作とならずに誤って領域を開放したというプロ
グラムの誤りは発見されない。そこで従来は、freeシス
テムコールにより開放する領域を、”FFFF・・・”
または”0000・・・”でクリアする方法もあった
が、その場合元のデータにたまたま”F”あるいは”
0”の連続データが含まれる場合、完全にクリアできな
いため、誤動作とならない可能性が残る。この問題を解
決するため、特公平4−26737号公報では、freeシ
ステムコールにより開放する領域のビットの値を全て反
転することによって、元のデータを完全に破壊し、誤っ
てfreeシステムコールを発行した後でその領域を参照し
た場合、確実に誤動作を生じさせるようにしたものであ
る。
【0006】
【発明が解決しようとする課題】しかしながら上記のよ
うな方式では、freeシステムコールを発行するたびに開
放する領域内のデータを読み出してビット反転して書き
込むことを繰り返すので、プログラムの実行速度が低下
する。
【0007】本発明は上記問題点に鑑み、freeシステム
コールを発行した際に、開放する領域内のデータを読み
出すことなく、その領域内のデータを破壊する処理を高
速化し、プログラムの実行速度の向上を図ることを目的
とする。
【0008】
【課題を解決するための手段】上記問題点を解決するた
めに本発明のプログラムテストにおけるメモリ管理方法
は、メモリ管理手段、プロセッサ、プログラムを格納す
る記憶手段およびワードデータ格納手段で構成された計
算機システムにおいて、前記メモリ管理手段は、メモリ
領域獲得命令を発行してある大きさのメモリ領域獲得依
頼があったとき、未使用領域から必要な大きさのメモリ
領域を切り出して、それを使用可能とするメモリ領域獲
得手段と、メモリ領域開放命令を発行して使用中の領域
について領域返却依頼があったとき、該当する割り付け
済み領域を未使用領域に変更し再使用を可能にするメモ
リ領域開放手段と、任意ワードデータを記憶するワード
データ記憶手段と、前記ワードデータ記憶手段にデータ
を格納するワードデータ格納手段とを備え、前記メモリ
領域開放手段は、プログラムのテスト時に、返却された
割り付け済み領域を未使用領域に変更する際、あらかじ
め前記ワードデータ記憶手段に格納されているワードデ
ータをその領域全体に書き込む機能を有する。
【0009】
【作用】本発明は上記した方法により、メモリ領域開放
時に、あらかじめユーザが指定したワードデータをその
領域全体に書き込むことで、返却された領域内のデータ
は破壊されユーザが指定したデータに変わっているの
で、誤ってメモリ領域開放後に、その領域を参照した場
合、その誤りを確実に検出できる。
【0010】
【実施例】図1は本発明のメモリ管理方法を実現する計
算機システムの原理的構成を示す図である。図1におい
て、前記計算機システムはプロセッサ108、前記プロ
セッサ108から自由にアクセス可能な記憶手段107
とメモリ管理手段101とワードデータ書き込み手段1
06からなる。前記メモリ管理手段101はメモリ領域
獲得手段102とメモリ領域開放手段103とワードデ
ータ格納手段105と前記ワードデータ格納手段105
から任意のワードデータを記憶できるワードデータ記憶
手段104からなる。ワードデータ書き込み手段106
は記憶手段107にワードデータ記憶手段104に記憶
されているワードデータを書き込むためのものである。
【0011】図3は本発明の一実施例の領域管理方法を
示す図である。図3(a)はある時刻での領域の状態を表
しており、図3(b)はfreeシステムコール実行後の領域
の状態を表している。図3(a),(b)において、領域は前
記記憶手段107におかれ、freeシステムコールの実行
は前記メモリ領域開放手段103で行なわれる。図3
(a)において、未使用領域303、308がありそれぞ
れの大きさは、未使用領域の大きさが格納されるフィー
ルド301、306にそれぞれ書き込まれてあり、未使
用領域をポインタにより順次辿れるようにするため次の
未使用領域へのポインタフィールド302には未使用領
域308へのポインタが書き込まれている。さらに次の
未使用領域へのポインタフィールド307には次の未使
用領域へのポインタが書き込まれている。また未使用領
域303、308の間には使用中領域305があり、そ
の大きさが使用中領域の大きささが格納されるフィール
ド304に書き込まれている。
【0012】そこで、freeシステムコールにより前記使
用中領域305を未使用領域313にすることを考え
る。プログラムのデータ領域で書き込まれるデータが予
めわかっているので、前記ワードデータ格納手段105
から前記ワードデータ格納手段104にあらかじめユー
ザが指定したデータたとえば、”xxxx・・・・”3
09を格納することが可能である。そこで、freeシステ
ムコールが発行されると、前記ワードデータ書き込み手
段106から使用中領域305に前記ユーザが指定した
データ”xxxx・・・・”309が書き込まれる。
【0013】さらに、新たに未使用領域313が生成さ
れたことで、次の未使用領域へのポインタフィールド3
02の内容が書き換えられ、310のように未使用領域
313を指すように書き換えられる。また、未使用領域
313の大きさが未使用領域の大きさが格納されるフィ
ールド311に書き込まれ、次の未使用領域へのポイン
タフィールド312が作られる。使用中領域305にユ
ーザ指定のワードデータ”xxxx・・・・”309が
書き込まれてしまうので、もしこのfreeシステムコール
の発行が誤ってなされたものであれば、確実に誤動作を
起こすことになり、誤って発行されたfreeシステムコー
ルを検出することができる。
【0014】
【発明の効果】以上のように本発明によれば、メモリ領
域開放時にその領域全体にユーザが指定したワードデー
タを書き込むので、従来のようにたまたま誤動作として
検出されないこともなく、しかも高速にメモリ領域開放
処理が行なえ、容易に誤りを検出することができ、その
実用的効果は大きい。
【図面の簡単な説明】
【図1】本発明のメモリ管理方法を実現する計算機シス
テムの原理的構成図
【図2】従来の領域管理方法を示す図
【図3】本発明の一実施例の領域管理方法を示す図
【符号の説明】
101 メモリ管理手段 102 メモリ領域獲得手段 103 メモリ領域開放手段 104 ワードデータ記憶手段 105 ワードデータ格納手段 106 ワードデータ書き込み手段 107 記憶手段 108 プロセッサ

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】メモリ管理手段、プロセッサ、プログラム
    を格納する記憶手段およびワードデータ格納手段で構成
    された計算機システムにおいて、 上記メモリ管理手段は、メモリ領域獲得命令を発行して
    ある大きさのメモリ領域獲得依頼があったとき、未使用
    領域から必要な大きさのメモリ領域を切り出して、それ
    を使用可能とするメモリ領域獲得手段と、 メモリ領域開放命令を発行して使用中の領域について領
    域返却依頼があったとき、該当する割り付け済み領域を
    未使用領域に変更し再使用を可能にするメモリ領域開放
    手段と、 任意ワードデータを記憶するワードデータ記憶手段と、 前記ワードデータ記憶手段にデータを格納するワードデ
    ータ格納手段とを備え、 前記メモリ領域開放手段は、プログラムのテスト時に、
    返却された割り付け済み領域を未使用領域に変更する
    際、あらかじめ前記ワードデータ記憶手段に格納されて
    いるワードデータをその領域全体に書き込むことを特徴
    とするプログラムテストにおけるメモリ管理方法。
JP5067838A 1993-03-26 1993-03-26 プログラムテストにおけるメモリ管理方法 Pending JPH06282463A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5067838A JPH06282463A (ja) 1993-03-26 1993-03-26 プログラムテストにおけるメモリ管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5067838A JPH06282463A (ja) 1993-03-26 1993-03-26 プログラムテストにおけるメモリ管理方法

Publications (1)

Publication Number Publication Date
JPH06282463A true JPH06282463A (ja) 1994-10-07

Family

ID=13356497

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5067838A Pending JPH06282463A (ja) 1993-03-26 1993-03-26 プログラムテストにおけるメモリ管理方法

Country Status (1)

Country Link
JP (1) JPH06282463A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008276763A (ja) * 2007-04-30 2008-11-13 Suresoft Technologies Inc メモリエラーの検出法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008276763A (ja) * 2007-04-30 2008-11-13 Suresoft Technologies Inc メモリエラーの検出法

Similar Documents

Publication Publication Date Title
JP2000259456A (ja) ファイルリビジョン管理システム
KR20000052371A (ko) 저장 디바이스에서 스택과 관련된 커랩션을 검출하기 위한장치 및 방법
CN102073553A (zh) 一种文件恢复的方法和装置
US20130031138A1 (en) Method and apparatus for improving the performance of object-oriented queues
JPH11203193A (ja) 共有メモリ管理装置及び方法
JP2000047909A (ja) システムログ記録装置、システムログ記録方法および記録媒体
JPH0764852A (ja) 動的確保領域の保証方式
JPS63200257A (ja) コンピユ−タのプログラムロ−ド方式
CN114676008A (zh) 一种omap操作性能测试方法、装置及介质
JP3419392B2 (ja) メモリアクセス監視装置、メモリアクセス監視方法およびメモリアクセス監視用プログラムを記録した記録媒体
JP2822869B2 (ja) ライブラリファイル管理装置
JPH01253024A (ja) データベース管理におけるバッファ制御方法
JP3130870B2 (ja) メモリダンプファイル再構成方式
US5951699A (en) Method and apparatus for verifying integrity of predefined data structures in a computer system
CN118276637A (zh) 一种时钟保持方法、装置以及介质
JPH06309236A (ja) メモリの不正書込み検出回路
JP2001202272A (ja) デバッグの方法とこの方法を用いたデバッグ装置及びデバッグの方法を記録した記録媒体
JPS62185280A (ja) 磁気デイスク媒体試験時のデ−タ退避/復元方式
US20070121162A1 (en) Method, Apparatus, and Computer Program Product for Memory Paging
JPS6051924A (ja) 外字アクセス方式
JPS62256052A (ja) 障害時の情報収集方式
JPH05233497A (ja) バッファチェーン破壊検出装置
JPH01130237A (ja) 情報処理装置
JPH04310149A (ja) メモリ管理方式
JPH0239251A (ja) トラブル情報収集表示方式