JPS6275845A - Symbol name storing system - Google Patents
Symbol name storing systemInfo
- Publication number
- JPS6275845A JPS6275845A JP60217089A JP21708985A JPS6275845A JP S6275845 A JPS6275845 A JP S6275845A JP 60217089 A JP60217089 A JP 60217089A JP 21708985 A JP21708985 A JP 21708985A JP S6275845 A JPS6275845 A JP S6275845A
- Authority
- JP
- Japan
- Prior art keywords
- string
- symbol
- page
- names
- general
- 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
Links
Abstract
Description
【発明の詳細な説明】
[概 要]
ベージング方式の仮想記憶をサポートする情報処理装置
を用いてLISP言語により記述されたプログラムの処
理を行なう場合、従来はシンボル名のストリングと該シ
ンボル名以外のストリングとを同一の領域にそれらが混
在するごとく格納していたが、使用頻度の低いシンボル
名のストリングが同一領域に存在するため、これが実記
憶上のページに必要なデータの存在する割合を低下させ
る結果を生じており、そのためページフォルトを発生す
る機会が増えて、プログラムの実行速度が低下するとい
う問題点があったので、シンボル名のストリングを別ベ
ージに格納することにより、ページフォルトの発生する
機会を低下せしめて、プログラムの実行速度の向上を図
ることの可能な制御方式を開示している。[Detailed Description of the Invention] [Summary] When processing a program written in the LISP language using an information processing device that supports virtual memory using a paging method, conventionally, a string of symbol names and a string other than the symbol name are used. Strings and strings were stored in the same area in a mixed manner, but since strings with symbol names that are infrequently used exist in the same area, this reduces the proportion of data necessary for pages on real memory. As a result, there was a problem that the chances of page faults increasing and the program execution speed slowing down. Therefore, by storing the symbol name string in a separate page, it is possible to prevent page faults from occurring. This disclosure discloses a control method that can improve the execution speed of a program by reducing the chances of it occurring.
[産業上の利用分野]
本発明は情報処理装置によりLISP言語で記述された
プログラムの処理を行なう場合の制御に関するもので、
特にベージング方式の仮想記憶をサポートする情報処理
装置を用いてLISP言語で記述されたプログラムの処
理を行なう場合の制御に係る。[Industrial Application Field] The present invention relates to control when an information processing device processes a program written in the LISP language.
In particular, the present invention relates to control when a program written in the LISP language is processed using an information processing device that supports virtual storage based on the paging method.
[従来の技術]
仮想記憶をサポートする情報処理装置においては、一般
に必要な仮想記憶の領域に対して、ページ(2〜4にバ
イトの固定長のブロック)を単位として実記憶を割り付
けて用いる。そして現在使用している実記憶上のページ
に該当するアドレスが存在しない場合には、該アドレス
の含まれるページを新たに実記憶上にロードし、実記憶
上にページをロードすべき領域が無くなったときには、
古いページあるいは必要度の少ないページのデータを返
還して、新たに必要なページをロードする。[Prior Art] In an information processing device that supports virtual memory, real memory is generally allocated and used in units of pages (fixed-length blocks of 2 to 4 bytes) to the necessary virtual memory area. If the corresponding address does not exist in the page on the real memory currently being used, the page containing the address is newly loaded on the real memory, and there is no more area in the real memory to load the page. When
Return data from old or less necessary pages and load newly needed pages.
従来、このような制御の行なわれる情報処理装置におい
て、LISP言語によって記述されたプログラムを処理
する場合において、該プログラムに係るシンボル名のス
トリングと該シンボル名以外の値、関数定義、属性リス
ト等のストリングとは、同一領域に混在して格納されて
いた。従って、実記憶上にページをロードしたとき、前
記各ストリングは同一ページ中に分散して存在すること
が多かった。Conventionally, when an information processing device that performs such control processes a program written in the LISP language, a string of symbol names related to the program, values other than the symbol names, function definitions, attribute lists, etc. Strings were stored together in the same area. Therefore, when a page is loaded onto real memory, the strings are often dispersed within the same page.
[発明が解決しようとする問題点]
LISP言語によって記述されたプログラムの処理に際
しては、シンボル名のストリングは殆どアクセスされる
ことはない。従って、これが実記憶上のページに存在す
ることは、貴重な資源を無駄に使用していることとなり
、使用頻度の高い他のデータを格納する領域がその分だ
け少なくなるという不都合を生じていた。そして、この
ことは実質的に実記憶上のページに必要なデータが存在
する割合が低下するという結果を生ずるから、ページフ
ォルトとなる機会が多くなり、これによるページの入れ
替えのオーバーヘッドによって、プログラムの実行速度
が低下するという問題点があった。[Problems to be Solved by the Invention] When processing a program written in the LISP language, strings of symbol names are rarely accessed. Therefore, the presence of this page on a real memory page results in wasted use of valuable resources, resulting in the inconvenience that the area for storing other frequently used data is correspondingly reduced. . This effectively results in a decrease in the proportion of pages in real memory that contain necessary data, increasing the chances of page faults, and the overhead of page replacement increases the program performance. There was a problem that the execution speed decreased.
本発明は、このような従来の問題点に鑑み、LISP言
語により記述されたプログラムの高速な実行を図ること
の可能な制御方式を提供することを目的としている。SUMMARY OF THE INVENTION In view of these conventional problems, it is an object of the present invention to provide a control method that enables high-speed execution of programs written in the LISP language.
[問題点を解決するための手段]
そして、この目的は本発明によれば、特許請求の範囲に
記載のとおり、仮想記憶上の領域をページ単位で実記憶
上にロードして処理を行なう情報処理装置を用いて、L
ISP言語により記述されたプログラムの処理を行なう
場合において、値、関数定義、属性リストおよびシンボ
ル名から構成されるシンボルの構造データにおけるシン
ボル名のストリングタイプのデータを該シンボル名以外
のストリングタイプのデータと異なる仮想記憶上のペー
ジに格納することを特徴とするシンボル名格納方式によ
り達成される。[Means for Solving the Problems] According to the present invention, this purpose is to provide information that is processed by loading an area on a virtual memory onto a real memory page by page, as described in the claims. Using a processing device, L
When processing a program written in an ISP language, string type data of a symbol name in symbol structure data consisting of values, function definitions, attribute lists, and symbol names is replaced with string type data other than the symbol name. This is achieved by a symbol name storage method characterized by storing symbols in different virtual memory pages.
[作 用1
上記手段によればLISP言語により記述されたプログ
ラムの実行に際し、使用頻度の低いシンボル名のストリ
ングと使用頻度の高い該シンボル名以外のデータのスト
リングとが別個のページに格納されているので、使用頻
度の高いデータが同一ページに存在する割合が従来より
大となるから、ページフォルトの発生する機会が低減す
る。従って、ページの入れ替えのオーバヘッドが減少し
、処理速度の向上が期待できる。[Function 1] According to the above means, when a program written in the LISP language is executed, strings of symbol names that are infrequently used and strings of data other than symbol names that are frequently used are stored in separate pages. As a result, the proportion of frequently used data on the same page is greater than in the past, reducing the chances of page faults occurring. Therefore, the overhead of page replacement is reduced, and an improvement in processing speed can be expected.
[実施例]
第1図は本発明の1実施例のブロック図であって、1は
入力部、2はストリング判定部、3は一般ストリング格
納部、4はシンボル格納部、5は二次記憶を表している
。[Embodiment] FIG. 1 is a block diagram of an embodiment of the present invention, in which 1 is an input section, 2 is a string determination section, 3 is a general string storage section, 4 is a symbol storage section, and 5 is a secondary storage. represents.
第1図において、入力部1によって読み込まれたLIS
P言語によるプログラムはストリング判定部2によって
一般ストリングとシンボル名のストリングとに分けられ
、一般ストリングは一般ストリング格納部3によって、
また、シンボル名のストリングはシンボル格納部4によ
って二次記憶5のそれぞれ異なるページ領域に格納され
る。In FIG. 1, the LIS read by the input unit 1
A program written in the P language is divided into general strings and symbol name strings by the string determination section 2, and the general strings are divided into general strings by the general string storage section 3.
Further, the symbol name strings are stored in different page areas of the secondary storage 5 by the symbol storage section 4.
第2図は本発明の一実施例のデータの格納を説明する図
であって、6はシンボル、7は値域、8は関数定義域、
9は属性リスト、10はシンボル名、11は一般ストリ
ング格納域、12はシンボル名格納域を表している。FIG. 2 is a diagram explaining data storage in an embodiment of the present invention, in which 6 is a symbol, 7 is a value range, 8 is a function domain,
9 represents an attribute list, 10 represents a symbol name, 11 represents a general string storage area, and 12 represents a symbol name storage area.
本図は下記プログラムを格納した場合を示すものであっ
て、参照符Aで示すものが値のデータ、Bで示すものが
シンボル名を示している。This figure shows the case where the following program is stored, in which the reference mark A indicates value data, and the reference mark B indicates symbol names.
(SETQ A ABCD”)
(SREF A Φ)
[発明の効果]
以上説明したように本発明の方式によれば、ページング
方式の仮想記憶をサポートする情報処理装置を用いてL
ISP言語により記述されたプログラムの処理を行なう
場合において、シンボル名に係るストリングと該シンボ
ル名以外のストリングとを別個のページとなるように格
納しているので、使用頻度の高い一般データのストリン
グが格納されているページに使用頻度の少ないシンボル
名が混在して実効的に領域を狭めることがないから、ペ
ージフォルトの発生する機会が少なくなる。従って、ペ
ージの入れ替えに係るオーバヘッドが従来より減少する
ので処理の高速化が図れるから効果は大である。(SETQ A ABCD”) (SREF A Φ) [Effects of the Invention] As explained above, according to the method of the present invention, L
When processing programs written in the ISP language, strings related to symbol names and strings other than symbol names are stored on separate pages, so frequently used general data strings can be Since the space is not effectively narrowed by mixing symbol names that are rarely used in the stored pages, the chances of page faults occurring are reduced. Therefore, since the overhead associated with page replacement is reduced compared to the conventional method, processing speed can be increased, which is highly effective.
第1図は本発明の1実施例のブロック図、第2図は本発
明の1実施例のデータの格納を説明する図である。
1・・・入力部、2・・・ストリング判定部、3・・・
一般ストリング格納部、4・・・シンボル格納部、5・
・・二次記憶、6・・・シンボル、7・・・値域、8・
・・関数定義域、9・・・属性リスト、10・・・シン
ボル名、11・・・一般ストリング格納域、12・・・
シンボル名格納域
代理人 弁理士 井 桁 貞 −FIG. 1 is a block diagram of one embodiment of the present invention, and FIG. 2 is a diagram illustrating data storage in one embodiment of the present invention. 1... Input section, 2... String judgment section, 3...
General string storage section, 4...Symbol storage section, 5.
...Secondary memory, 6...Symbol, 7...Range, 8.
...Function definition area, 9...Attribute list, 10...Symbol name, 11...General string storage area, 12...
Symbol Name Vault Agent Patent Attorney Sada Igata −
Claims (1)
処理を行なう情報処理装置を用いて、LISP言語によ
り記述されたプログラムの処理を行なう場合において、
値、関数定義、属性リストおよびシンボル名から構成さ
れるシンボルの構造データにおけるシンボル名のストリ
ングタイプのデータを該シンボル名以外のストリングタ
イプのデータと異なる仮想記憶上のページに格納するこ
とを特徴とするシンボル名格納方式。When processing a program written in the LISP language using an information processing device that loads virtual memory areas onto real memory page by page for processing,
String type data of a symbol name in the symbol structure data consisting of a value, a function definition, an attribute list, and a symbol name is stored in a page on a virtual memory different from string type data other than the symbol name. Symbol name storage method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60217089A JPS6275845A (en) | 1985-09-30 | 1985-09-30 | Symbol name storing system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60217089A JPS6275845A (en) | 1985-09-30 | 1985-09-30 | Symbol name storing system |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS6275845A true JPS6275845A (en) | 1987-04-07 |
Family
ID=16698660
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP60217089A Pending JPS6275845A (en) | 1985-09-30 | 1985-09-30 | Symbol name storing system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS6275845A (en) |
-
1985
- 1985-09-30 JP JP60217089A patent/JPS6275845A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4835734A (en) | Address translation apparatus | |
US6581142B1 (en) | Computer program product and method for partial paging and eviction of microprocessor instructions in an embedded computer | |
KR870007462A (en) | How to use the data processing system | |
US7725677B1 (en) | Method and apparatus for improving segmented memory addressing | |
JPH05233452A (en) | Information processor | |
EP0403124A2 (en) | Overlay swapping | |
JPS6275845A (en) | Symbol name storing system | |
JPS6220583B2 (en) | ||
EP0262301B1 (en) | Paging supervisor | |
JP2990609B2 (en) | Computer system | |
JPS5853075A (en) | Information processor provided with high speed separation buffer | |
KR100501903B1 (en) | Method for creating memory structure to process input-value specification file for data fields | |
KR920002829B1 (en) | Memory access control system | |
JPS62281040A (en) | Page managing system | |
JP2539419B2 (en) | Auxiliary storage device selection method | |
JPS6160151A (en) | Computer with tag | |
JPH01130237A (en) | Information processor | |
JPH039431A (en) | Interruption processing system | |
JPS62290962A (en) | Editing system for table of contents | |
JPS6134628A (en) | Computer provided with tag | |
JPS63177234A (en) | File save loading method | |
KR890016452A (en) | Information Transfer Method of Virtual Computer System | |
JPS63231622A (en) | Program execution system | |
JPS62126480A (en) | Image processor | |
JPH05113927A (en) | Main storage access system for information processor |