• 検索結果がありません。

情報工学教室 重松保弘Cornmand Processing Systenl of Output Retrieval System

N/A
N/A
Protected

Academic year: 2021

シェア "情報工学教室 重松保弘Cornmand Processing Systenl of Output Retrieval System"

Copied!
9
0
0

読み込み中.... (全文を見る)

全文

(1)

九州工業大学研究報告〔工学)No.411980年9月      175

出力検索システムFAMOUS 1のコマンド処理系

(昭和55年5月30日 原稿受付)

情報工学教室(大学院)野上睦夫*

情報工学教室 重松保弘

Cornmand Processing Systenl of Output Retrieval System

      FAMOUS 1

by Mutsuo NOGAMI   Yasuhiro SHIGEMATSU

       Ab8tr駐ct

  FAMOUS l iS an interactiΨe output retrieval system using a microcomputer as a terminal with a CRT display unit, a keyboard unit, a Hoppy disk unit, and so on.

  On developing e伍cient interative output retrieval sy5tem, it is important to design usable commallds and to develop their efHcient processing system. The feature of the commands of FAMOS l is as follows. First, the length of each command wa8 designed as short as possibe.

Second, the opera亡or symbol50f these commands were designed to be understood intuitively.

  In this system, job output file in the host computer{FACOM 230−45 S)li5 transfered to亡he terminal and stored in a diskette of the伺oppy disk. While executing output retrieval, the contents of the file are veτy frequently loaded in the main−mernory and this causes the system une伍cienし Therefore、ve developed an e缶cient access method to the Hoppy disk that is neces・

sary to execute some commands.

  This paper discrib巳s the commands and the comnland processillg system of FAMOUS l in

detail.

       である,{4}計算機運営に必要なLP用紙等の消耗品の節

L註がき        約に役立つ,な曙々の特雛もっている.しかレこ

 パッチモニタを基本とする電子計算機システムにおい   うしたシステムが効率的に利用されるためには,操作性 て出力検索を効率的に行うために,筆者らはマイクロコ   の良いコマンドの設計と効率的なコマンド処理系の開発が ンピュータを用いた出力検紫システムFAMOUs l(FA・  重要である。すなわち,打鍵数が少なく,直感的に理解 COM230−45S and Microcomputer Output Retrieval  できるコマンドを用意し,利用者のコマンド入力誤りを System ver5ion 1)を開発した;}一η本システムは,11}マ   減少させることによって,システムの操作性を向上させ イクロコンピュー一タをホスト計算機(FACOM230−45S)  るとともに,各コマンドの処理時間をできる限り短縮し に外付けしてあるので,検索がホスト計算機と独立に実行   なければならない。

できる,②データの出力量を気にしなくてよいので,ホ   本システムでは,出力検索の処理はマイクロコン スト計算機のソフトウェアリソース(トレーサ,デパッ   ピュータ上で行われるため,コマンド処理において,フ ガ,メモリダンプ機能など)を有効に利用できる,〔3)将   ロッピーディスク中に格納された出力用ファイルの効率 来,リモ_トジョブエントリーシステムへの発展が可能   的な読出し方法を実現する必要がある・また・出力用フプ        イルに比べて表示装置における表示文字数が少ないた

・現在は松下電器産業株式会社      め,表示画面の操作用コマンドを工夫しなければならな

(2)

o工.k

[日]・

④ 回

H 7K魯      5p開ヒer

F脚u5lH品iヒo  (EKB)

H』ppin乳ロbk  4.5RB

Buf∫直r 直r已畠

ACOH2珀一45S   RI㏄  i・t・rf直口

Li陣Pτ1w【己τ

rDc 2

5pc hcy 』醜i星亡 加P・

videO Coloτ

F卍{ou51}缶nltor Fi1昨 5τ燈且

di叩1且y

PIA

Keyb rd

Audio 亡n65ette       Floppy Di■ヒ

Ib、【       {o・5醐   已

図一1 FAMOUS 1のハードウェア構成←レはデータの流れ)

    RIOC:Remote Input Output Contro1]er A:ジョブの出力ファイル

    PIA :PeripheraI Interface Adapter   B:印刷指定されたAの部分ファイル     FDC :Fioppy Disk Con臼oller

    MPU:M{cro Proc鰯ing Unit

い。本藷文では,こうした問題に対処するために設計し

たFAMOUS 1のコマンドとコマンド処理系について    表_1 FAMOUS 1のコマンド

報告する。なお,コマンド処理系のアルゴリズムは,    コマンド唖別 コマンド   機    能 PASCAL風言語で記述する。以下・マイクロコンピュー    モ_ド制御 s    者示画面をスクロ_ルモ_ド タを用いて醗した出力鰯のターミナ・レを・T(マ @  ; ㌫麟型繧る卵

イクロターミナル)と呼ぶ。       面単位の移動)にする        64C    者示画面を64文宇モードにする  2.検索用コマンドと検索手順      避    表示画面を32文宇モードにする        画面制御 n↑   nライン(n画面)上方向移動

本システムは・図1に示すようなハードウェ珊成を @  π 漂瑠面)下醐多動

とっている。システムの処理手順については既に報告し      一   〔1≦・≦99)

た・・ので醐する。         ユニ 1醤螂向拗

本システムの糠用コマンドを刻に示す・また牢   旦二 膣皇舅㌣欄

システムの検索画面の構成は図2のようになっている。      CR    最左端の画面へ戻る        GO HOME 第一画面へ戻る

1 ,,/②      …64

1 1 ロoo1    且・1.

目器i  ::1:,        個

000ξ   D・且・9

D口[)5        凹n1TE[6.100} A,B.C.O

1 00D5     100 Fo割HAT{1H1∫…臣1,°A●輻1F5.1.      B・IF5.1ノ〆

a        一    10x, A守B.㌦F5.】Jox. A・自・㌔F5.1;

盾盾盾V    〜TOP

的自8    E舶 dP

i] 直. ]』  9・2.o

@  A・B・ 3◆O        A一日1 ・LO

:楯

εrr Ll川丁      ④

印刷指定L    現在表示されている画面全体        を印刷指定

     ユL  響§薔嘉羅じ1璽聖1      皿・・L誓鷲鶉繋嬬蕊行

       (1≦m≦n≦14)

     φノφL    リスト7〒イル全体を印刷指定 検索終了T     出力検索を終丁する

      田一2 検索画面の例       これを機能的に分類すると,①検索画面の行番号部,②

謡㌶曇行蹴8禦禦慧  LPの制御文端③検索臨④システムメ・セニジお

      ジ及びλ力部       よび入力部,に分けられる。本システムはこれらの各部

(3)

177

を異なった色を用い,詰めて表示している。また,検索   ば,そのコマンドは無視される。画面制御の特殊なコマ 画面中の印刷指定された行は,他のいずれとも異なる色   ンドとしてCRコマンドとGOHOMEコマンドが用意 を割当てているので,一見して出力させる予定の行が判   されている。CRコマンドは,画面を左に移動したあと 別できる。       で,元の画面に戻すときに用いる。GOHOMEコマンド  出力用ファイルがμTに転送された後,μTはディス   は,表示画面を出力用ファイルの先頭に戻すときに用い

プレイ装置にLPの先頭に出力される予定の部分を表示   る。これらの画面制御コマンドは,最大3回の打鍵でコ し,検索可能の音声メッセージを出す。検索開始時には,   マンドを入力できる。また,画面を移動してゆくと,シ システムは64文字モード(1行に64文字表示)およびス   ステムメッセージ部にUP LIMIT(DOWN LIMIT,

クロールモード{画面の移動が行単位)に設定されてい   LEFT LIMIT, RIGHT LIMIT}というメッセージが表 る。画面の移動をページモード(画面の移動が画面単位)   示されるときがある。利用者は,このメッセージによっ で実行したいときは上を入力する。ここで,_(アンダー   て現在表示されている画面が出力用ファイルの上{下,

パー)は一掴のキーであることを示している。また,表   左,右)端にあることを知ることができる。

示画面を32文字モード(1行に32文字表示)に変更した    Lコマンドを入力すると,表示画面上の印刷指定され いときは,i旦⊆を入力する。これらのモード制御コマン   た行だけ画面上の色が変化し,印刷指定されたことを利

ドによって設定されたシステムのモードは,新たなモー   用者に知らせる。例えば,現在表示されている画面全体 ド制御コマンドが入力されるまで持続される。       を印刷指定したいときは,次のように入力する。

 本システムの画面は最大で64文宇x16行しか表示で

      _       L きないので,出力用ファイルの一部分しか表不すること       一

ができない。従って,利用者は,最初の画面に検索した    表示画面の12行目を印刷指定したいときには,図一2の い箇所が存在しないときは,画面制御コマンドを入力し   行番号部を用いて次のように入力する。

て画面の移動を行い,出力用ファイルの必要な部分を検

素することができる。例えば酒面を50画面分上方向に     1≡

移動させたいときは,画面の移動がページモードである    表示画面のうち5行目から10行目まで印刷指定した ことを確認して,次のように入力する。      いときにには,次のように入力する。

旦旦1      5,10L

 上方向に移動させすぎて10画面戻したい(画面を下方    しかし,印刷指定をすると直ちにホスト計算機のLP 向に移動させたしs)ときは次のように入力する。      に印刷されるおけではない。Tコマンドを入力すること

       1Ω⊥     によって検索が終了した後・印昂1」縮された行がホスト

      計算機に転送され,LPに印刷される。検索が終了する  また,LP用紙は横136文字である。そこで,画面に入っ   と,μTは,次の検索用ファイルをホスト計算機から受信 ていない横方向の隠れた箇所を検索したい場合が起こ   するために受信状態となる。

る。例えば,表示画面を30桁左に移動させたいときは,

       3.データ構造とラインイン 次のように入力する。

       本システムで用いるデータ構造について説明する。

      30 嘘一

      一一一      出力用ファイルは,すべてフロッピーディスクに格納  移動させすぎて10桁戻したい(画面を右方向に移動さ   されており,その一部が表示用として主記憶に枯納され せたいときは,次のように入力する。       る。この領域を1{st−bufferと呼ぶ。 list−bllfferは,次の       ようなデータ構造になっている。

      1旦ゴ

       ニ  このとき,↓,↑,←,→の前に入力する数字は1か     ㌫::ll:li1加i ら99までの問でなければならない.この範囲外であれ     三r栖.4恒、国..品声副、

(4)

  dl5h 1°9 c 1 掴〔 o 11 1ξe−1:      される領域を示すために3つのポインタ(top, btm, col.

  こロ ロ  セ おぜエらぎ  ぽロア ま  ばゆ きゃロロロト

  旦こ       umn}が用意されている。すなわち,tOPポインタが指す

   れしヒロドヒ コロエカロロぼ エパか きコゴ

   里鯉      ラインからbtmポインタが指すラインまでのうちco1・

   ヨ  ば お      ピ  モよロム

    1 ・「K耐 :『       umnポインタが指す桁から61文字が表示される(図一3参

         こふエ ロ      トじパオゴこ

         倒 ・14 t」=[1・・143皇1山F      照)。

         ロぬニ

    °1°「  :=°d堺       マッピングテープルは,ラインに付けられたシーケン

     リエにょしばぴロェェニピ コし ロがピロ おロもニ

   些      ス番号〔論理アドレス)と,それが格納されているフロッ

  ホロロロロヒロ     ムほロヒュロァせユエト

  聞口    :° 甑      ピーディスクのシリンダ,トラック,セクタ番号(まと  list bufferはレコード型の要素から成る配列である。   めて物理アドレスと呼ぶ)との1対1の対応関係を保持 list bufferの配列要素をラインと呼ぶ。各ラインには,   するために用いられる。次に,マッピングテーブルの構 出力用ファイルの一行分のデータとモれに関する検索情   造を示す。

報が格納される(実際にはフロッピーディスクには出力     亜

用ファイルはラインの形式で格納されている)。ライン     dい鉤 1砿晶d己「e 零康,,t..n;

の各欄は次のような目的に使用される。list.record欄に      1:::.:!::1;

      ロ ニは,出力用ファイルの一行分のデータが格納される。     エ      ー

file end欄の{直は,最後のラインの場合{こWとなるσ  與題 ≒1⊂ u°gl : dd哩        ロおドロロゴうパ けエエロ ユロロ がニト co1⑪r欄は, list.record欄の内容を表示する際の色コー      ・・… 』1       げロトドを保持している。logicaLaddres5欄には,このライン      ー

が格納されているフロツピーディスクの論理アドレス    ここで,cylinder, track, sectorの各欄は・ラインの格

(後述)を格納する。list.bufferは,具体的には図3に   納されている物理アドレスを保持している。trns欄の値 示すような形式で主記憶に割付けられる。list−buffer   は,このラインが印刷指定されたときに 真庁になる。

は,その領域が効率的に使用されるために環状になって    ホスト計算機の出力用ファイルをすべてμTの おワ,その境界(最後のライン)を示すポインタとして   list.buffer領域に格納できないとき,必要なラインをフ bndが用意されている。また,ディスプレイ装置に表示   ロッピーディスクからlist−buffer領域に読込むことが        必要になる。この動作をラインインと呼ぶ。例えば,表       1に示したコマンドのうち,↑コマンドを入力したとき     甲・・1遮ノー一一扁iii≡li鞭i      {こ,btm=bndならば, toPとbtmをインクリメント{l        bγt        を加えて64でモードをとる)する前にラインインが必要        になる。ラインインが必要になる状態をラインフォルト       と呼ぶ。

4.コマンド処理

 本章では,表1で示したコマンドの処理手順について,

PASCAL風言語で記述されたプログラムに添って述べ る。前章で示したデータ構造のほかに,次のようなグロー バル(global}変数を用いる。

      工

       11書吋;引 」叩1 1.岨dr■ sull■.d1佃.11』.r1伯;bφ n:

       ロ ドよ らのヒロロ ヒ  ヒロド ニロロパニロエ ほ  ¶ 丁 1 畠b」ロ       ユ。岬,‡阻.      剛e:≡P・国2:幽1° n巴:

  白,,1吾 t■b1       lr】叩PγOilk)

       11endは,出力用ファイルの最後のラインの請理アド

国一

黶G璽=;;雅;:#暮  レスを醗するために用いる・・lim・dlim・llim・・lim

   構成とラインインの遇程       は、それぞれ出力用ファイルの上,下,左,右の境界が

(5)

179

表示されているときに になる。operand, operandl   れ,1セクタに1ラインを格納するので,実際には,1 には,それぞれコマンドの第1,第2オペランドの数値   トラック単位の書込みとなる。

が格納される。nagについては4.3節で詳述する。 mode

      1    2      バイト は,画面表示がスクロールモードか,ページモードか,

あるいは64文字表示か,32文字表示かを示すために用い      {a)   {b)      (c)

られる。

 4.1. 出力用ファイルの受侶      図一5 転送される行の形式  ホスト計算機からの出力用ファイルの受信手続きを,      ω転送パイト敵

図4に示す・出力用フ・イルの転送は・行鞭行われ   ll違㌶慧ξ雰欝タ

る。また、転送効率を上げるために,行の後方の空白詰  、

めを行っている。従って,転送される行の長さは可変と    4.2.モード制御コマンド

なる。転送される行の形式を図5に示す。図4の中の手    コマンドS,P,64C,32Cは,それぞれ表1に示す 続きreceive−from−hostの中では,まず,ホスト計算機   ような機能をもっている。これらのコマンドが入力され から転送データのパイト長を示す1バイトのデータを受   ると,本システムでは,前述のレコード型変数modeに 取る。次に,このバイト数だけのデータをホスト計算機   対し.それぞれ次のような処理を行う。

から受取り,list bufferに格納する。そして,

      ■04e.P:●ra 1民;

disk−10gical.address欄に論理アドレス{dlralの値:

      1国嘘■.P:●tru叫 最初のラインに対しては0,その後1つつ増す)を,color

      ■o促.也氾:・「占1 欄に色コード(skyblue)をそれぞれ格納し,完成したラ

      剛■.■工21●tw引 インをフロッピーディスクのdaaddressが示す物理ア

ドレスに格納する。ただし,フロッピーディスクへは]5    このレコード型変数modeは,手続きdigplay(出力 ラインまとめて格納する。また,フロッピーディスクは,   用ファイルをディスプレイ装置に表示する機能をもつ)

1トラックが15セクタ(256バイト/セクタ)で構成さ   と,次節で述べる手続きmove(画面の移動を行う)の       中で参照される。

   r囎臨川.、       4.3.画面制御コマンド

   ピユ ぱレ ヘロ  ロご ロはらロ の ヒ しコロ りぷ

   一11・副・・.副開隅d酎 醐・曲k.p櫛・・L耐陀鶉       表1に示されているコマンドのうち,画面制御コマン     零山鴫1・・抽、      ドと印刷指定コマンドは,オペランドを必要とする。従っ

     ロ コしロロアロ マざ セで いまロペホロおぼホち ニ      

     里甦       て,システムでは,最初の1文字だけでコマンドを認識

       エロロフ

     巳巴      することができない。画面制御コマンドは,第2オペラ       1濡;:蕊継Lbu「f 仙     ンドをもたないで,下1こ示龍うに麟型鐡f|、gを用

      d1慧:ll:ll lllllご1;1°唄1 1」d蝋 :鴫1 ■已;     し}てコマンドの解析を行う。ここで,画面制御と印刷指      岩・ 国5匹1は』u臨魂山 1e 硫       定以外のコマンドは,コマンドが入力された時点で認識      驚ぷ ・{白副門・・.順一b・仇司叩;       されるので省略した。

       f hot  t●t口 th■n

      些虹三       c .仁o一己吋of

       t1:州 E       I¶・.・↓・.・ピ.・→・−r Fl r・2いen er吋r・1¶・旬叫        四pp暗一tΩ]・{d1・・2/・出耐・・司・ d哨…         r   ㌃,tp.1,t「 

       d1「.2: d1「・2°1        ●・一L警    :旦r1岬・2旦旦a 曲1e[字丁.吋1}±

      巴亘…       」埜f1 】・〜;11 r田b1.〔。碑r1刷巴:

      di k 出問 ・1町r即t{如dd哨 );      ・.・     :f1・9:・2      巴旦11同5里1僚一Mfer[H・1L川e−・唾       歪鳩:

    ±些旦1} Lbur白式 1・)LIl1・・加i      示P1岬;

    ■叩1呵. blddlr121.trn 1叫rw…

    .三輌 d1「劇       画面制御および印刷指定の両コマンドとも,オペラン       ドが入力されないときはflag=0,第1オペランドだけ    図一4㌫欝機から出力用ファイルを受  入力されたときはfl・g=1・第1・第2の両オペランド       r已ceive−fUe       とも入力されたときはflag=2とする。そして,この変

{a) {b) (c)

(6)

数flagは,次節で述べる印刷指定コマンドの処理手続き    手続きup(図6)では,画面を上方向に移動する。こ の中で用いられる。      れは,基本的にはポインタtOPとbtmをインクリメント    画面制御コマンドが入力されると,次に示す手続き   することによって行われる。しかし,前章で述べたよう moveが呼び出される。      に, btmニbndとなったときにはラインインが必要に   幽剛・・       なる。ラインインでは,必要なラインをフロッピーディ   鍵⌒ °曲゜…       スクから読込むが,酬唖数に応じてラインイン醜

   こロちロ こぽハロ ロす

     恒眠       理を変える必要がある。なぜならば,移動画面数が少な

    ロザニ こ

    午唱・1・臨           い場合は,検索する画面までのすぺてのラインをフロッ

     ヰ ニずロロヒ

   已・      ピーディスクから1ist bufferに読込んでも検索時間は

   べ ほロニ セロリロコぱニロ

  巴三       長くならないが,検索画面が現在の画面と大きく離れて  この手続きは,コマンドの最後の1文字によって画面   いる場合(本システムでは3画面以上離れている場合)

の移動方向を決定し,実際に画面を移動するための手続   は,上記のように検索画面までのすべてのラインをフ き{up, down、 left, right)を呼出す。オペランドが省略さ   ロッピーディスクから読出すと,検索時間が長くなるか れたときは,コマンドに応じて1行または1画面または  らである。そこで,この場合には,より効率的なライン

1桁の画面移動を行う。以下,本節では,上,下,左方   インの処理手願が必要になる。

向への画面の移動を行う手続きup,down, lefヒについて    検索画面が現在の画面と大きく離れていないときは,

述べる。右方向への画面の移動を行う手続きτightは,   実際に画面を指定されたライン数だけ移動するための手 手続Ieftとほぼ同じ処理であるのでここでは省略する。   続きup」ine(図6}を呼び出す。手続きup」ineの呼       び出しは,スクロールモードでは1回,ページモードで     鷲,三,、d、 d1,k.1凶{、.1..伽、、、      は14回(1画面のライン数)行われる。手続きup.linEで     巴血      は,まずラインフォルトが発生しているかどうかを調べ

      トロバロヨエ ト

     旦剛 ・P巴゜〔㎡>3虫       る。ラインフォルトが発生していれば(bnd=btmなら       エ

      ::;㌫竺震瓢認㌃1・幽冊 国聞聞 川       ば),ラインインを行う。このとき2画面分,すなわち28       ぎ      ライン分の先読みを行う。その理由は・ラインフォルト       ご::lp喪町耐」,d巳口Φ中.臨.         が起こったときに1ラインしかラインインを行わないな       巴      らば,一度ラインフォルトが起こると,↑コマンドを入     三些

      力するたびにラインフォルトが起こり,検索効率が低下     四幽⇒.1㌔、       するからである・2画面分の先読みのラインインは,次     里い・{輪酬‥1 」°°回・1伽隅       の手順で行われる。すなわち,まずbndの指すラインの

    鯉二㌔:・1」里叩er拙 些し

     蜘      論理アドレスを変数ゴに取出し,次に述べる①〜③の操

      ヨず   カセロ まピハ

      竺血      作を28回または出力用ファイルが終わりになるまで繰

        ニ ほ

       巡・㍑三㌣竺㌫:㌶〕篇ll加虫        返す。①論理アドレス4に1を加え、 bndをインクリメ        里晶.1;加d、.掴. ≡、、仙.、        ントする。②マッピングテーブルを参照して,この請理         111:1㍑竺認L剛牛副.団.、幽.、}、      アドレスに対応する物理アドレスで示されるフロッピー

        旦1:慧1蒜鴇鑑1,、    ディ〃のセ〃からラインを読出し,ll・t−M・・の         二小I       bndが指す領域へ格納する(図7参照)。③もし,このラ       ,言…:1厩嗣.イ、ロ.d.r↓1,.綱虫旦         インが既に印刷指定されているならば・画面への表示色       里芸,.It刷]些』川H:       を変更する・

       ユ輌副}已団担゜       検索画面が現在の画面と大きく離れている場合は,次       ま

     ㌫輌…       の手順でライン繍出す・まず・↑・マンドの前 ・抽

      されたオベランドの値によって,現在の画面と検索画面   図一6 画面の上方向への移動を行う手続きup     との問にあるライン数を求める。これをtOPが指すライ

(7)

181

ンの瀦アドレスに加え糠画面胱頭ラインの纏ア  讐 ぽ⊇蝋d⌒1輌L翻

ドレスとし,変数ゴに格納する。そして,これを引数と       巳1漂」器』慧∴三旬:軌d1町…里坐竺 してラインをフ・・ピーディスクからli・ゆ・ff・・全体   旦還 口  ≡

に読出すための手続きto」⊃uffer.fro皿一floppyを呼出      旦窒 ご二蕊口、 1悟、巾丙虫

す。       蕊蒜}ll:ご M細

      已

       パ・フ・鯛 ・・ツピーデ御     遮岬司±

      1f4く11e品噛1jt●∩t叩:ヰe1玉e

       1fζ叩くOthen t叩:・0        4:・口

      三竺1;

    マツピングテーブル       b国: t叩 U1嗣: 0;

      111山咋寸剛・・由 L・e凶帥,1・g・L851・固・・dd・・H):

       r叫,1叩.抽1e[。1・t・・ 竺      2畠,イン       11エt.M蘭【幽ユ.c・1。r:叩・叩1町       恒 :・∋n己・1}d:司・1;

       胆川溺・64。P 11エし加fr.r〔加4.川e.:軌       b鳩;中Φt

       里1:

図一7 上方向に検索するときの28ラインの先

    蔑みの手順       図一9 離れた画面を上方向に検索するときの       手順

 手続きto.buffer.from−floPPyを図8に示す、この手       ・ 続きでは,仮引数ゴの値が検索中の出力用ファイルの範

囲内(。≦∂≦ll,,d)1、あるかどうかを調べる。範酬  {蒜蒜一興岨一・

蹴ぽ常にフ・・ピーデ・ス触ライ瀧出  き=三_迦

せるように∂の値捌正倣ばゴ<°であ]⊥ば∂= @  衆1_輌_.___、

0、4>11・・dであればゴ=il・・d−b・f・i・・とする)し・   蕊〔叫f1輌(

利用者頒求する ライン蝶示できるようにt・Pポイ   稟、.、

ンタの値を決定する・そして富理アド以勒㌔ら始ま   譜醐〔」:11里1禦帆11哨 るbufsize分のラインをフロッピーディスクから読出し      里「

てlist.bufferに格納する(図9参照)・このとき・印刷      瀦i,㌫111:t、u剛 1」粛情、、 d1、』rr,..㎞

指定されているラインに対しては画面上の表示色を変更       螢1巳。P…垣豊

       f 蝋川副旬酎R・1・t。,旦1虹

する。      一巴血 一

 手続きdown (図1⑪)では画面を下方向に移動する。      ㌫lll:;;1こご}ll;昏三1;lll:1:覗・

       ■h 1■d<0』o         、

      邑山召・司・h楠・・1蝋・1}⊇』「 1 !旦;

        ・フ 埴  フ助ピーディスク        d国幽 ]里M 川

てOP

b[mbnd

+n費14

パソファ領埴      フ

マッピングテープル

64,イン

64予イン

 坐d1 岬色

  蜘   ]m.Mf.イ問

    :暢 」14d』帥 g』』1.[d〕」聞哨止    1f叫P1呵.t巾1・伺.tr ±     1t輌t、Mr d41L£凸㌔:叩岬1曹」

   d:司・1;61:・(d1・1)竺豊加h1

  些 巴1

1〔揃』㎡r・寸岬い内lc・1− d曲 ρ旦巴

  t叩:・(岬・1・Ou伯.}已ヒuf山田   b恒:・ ・』r コ司已旬f 1潤

 已・1冊u1悟:.tr虐

■闇;

図一8 G呈㌫ディスクから64ラ憐込  図一1・画面の下方向一の端行端き     t。−b。ff。・∫・・m.fl・ppy        d醐

(8)

{63を加えて64でモードをとる)することによって行わ   ときは最左端を表示させる。)。

れる。しかし,top=(bnd十1)mod buf8i2e となった

ときには.ラインインが必要になる。ラインインは,手      バッファ領娃  フロッピ丁ディスク 続きupで述べたのと同じく,移動画面数に応じてライ

ンインの処理を変える必要がある。すなわち,検索画面       28,イン       』nd 、

が現在の画面と大きく艘れている(3画面以上)場合     t叩

は,↓コマンドの前に入力されたオペランドの値によっ         マツ已ングテ_プ,レ

三欝籔き翼㌶ll鐘聾 ⊇目

それを引数として手続きto.buffer」rom.floPPyを呼

び出す。これは,画面の上方向への移動の場合と同じで      図一11下方向に検索するときの28ラインの先統       統みの手順

ある。

 移動画面数が少ない場台は,実際に画面を指定された

ライン数だけ移動するための手続きdown」ine(図10)       幽・lght、

を呼出す。この呼出しは,スクロールモードでは1回,       零.、.f山.、、。1画、】。1画.。蝋岡;

ページモー一ドでは14回行われる。手続きdown−lineで        三c°1『°些竺血 己1醐1叱11i 1 〔已

は,まずラインフォルトが発生しているかどうかを調べ

る。ラインフ・・レトが発生しているとき(・・P=伽d+  固一12漂r右方向への移動を行う撫

1)mod buf呈ize)ラインインを行う。このとき,上方向へ

の移動のときと同じ理由で2画面分の先読みを行う。し    そのほか,CRコマンドでは かし,手続きupのときと同様に検索画面までのすぺて     ・・1回輪川…㌔

のラインを碩次フロッピ_ディスクからli皇t.bufferに   とする。 GOHOMEコマンドでは・変数ゴに0を代入し 読込むのは効率が良くない。なぜならば,フロッピーディ    (∂:=0),手続きto.buffer」rom.floPPyを呼出して スクのトラック中のセクタ番号は,フロッピーディスク   論理アドレス0から始まるラインをフロッピーディスク の回転方向に添って付けているので,画面の上方向への   からlist.bufferに読込む・

移動時にラインフォルトが発生した場合(手続き up.     d、・いエMf・・」噛一fl聯y{d}、副声・申       d11■:−「11匂:■「占] e;口11■:・111薗:. P㌔暗

1meの場合)は,ラインの連続読出しが高速になり,検

索は遼くなる。しかし,画面の下方向への移動時にライ    4・4・印刷指定コマンド

ンフォルトが発生した場合,手続きup−lineと同じ手頸    表1に示したように印刷指定コマンドには・オペラン では,フロッピ_ディスクの回転方向と逆の順番でライ   ドをもたない場合・1つだけオペランドをもつ場合・オ

ンを識すことになり.回転待ちのために楕索速度唖  ペラン陸2つもつ場合がある・これらを判別するため めて遅くなるからである。そこで,このときはまず,目   に.前節で述べたように整数型変数flagを用いている。

的ラインの誼理アドレス(変数のとlist.bufferにおけ   すなわち,上記3つの場合に対して・flagの値はそれぞ る2画面分前の位置(変数dDを発見する。そして, dl  れ0,1・2となる。

とtoPが等しくない間,ラインインを行う(図ll参照)。    印刷指定コマンドを処理する手続きlist.printを図13 このとき,艶に印刷指定されているラインに対しては画   に示す。手続きprint.true(i, j)は・ディスプレイ画面上 面の表示色の変更を行う。       のi行目からj行目までに対して・印刷指定されたこと  画面の右方向への移動は,手続きright(図12)で行   に対する処理を行う手統きである。すなわち・印刷指定 う。この手続きの中では,columnポインタの値からオ   されたラインに対応するマッピングテーブルのt「ns ペラン聞{直端じ,それ蜥た㍑・㎝・の枇する。 フィー・レドの値ゼ真川こレラインを表示す絶霞

もし,この値が負ならば0にする(右に移動させすぎた   更する。

(9)

183

幽1f¶t・,F1臨       幽t口t耐e;

蜘      エロ1r8:d1山1明tc.1. 己d哨Sl:M仲.刷・e5  ⊥1 1皐ヨ 0旦巴PT 1吐・t噛{1・川±      蜘

  旦n皐9・t」堕prlht・tr凌〔ロPせf4畦o調r4nd}三旦旦       dlr晶:司;

  旦旬ep綱司埜旦唯「蝋1 O巳竺      工型    製三       1:・Oi     叩冊9・剛司・1・t問・・t叱      三里旦

    11 ¶・Mf・r[・1・ロ]…ヰrP1・       」エr・{・g.t・カ14d 1 ・1t・耐旦旦    已      3虫

  ±P輪しt°山!{曙F1嘘・o開r晶Mlh      11 L』rre刊

 叩肝.r、d:rP●r肋d1:・f119:司       :鴫11k調」dロ距 ng.Uble[副r直】.■ h

●けd;      1‡d●1

       巴        d1口:■引「畠■1;

幽PP1賦」r時ltJ: 蘭eg■r};      巴工旦1白15旦[11エt●b匂ffErti].f{1e.壱r鋪;

旦二江: 聞e㌍「 1:加f「肝・血 1      1:・0;

工k:1‥1」三」・t虫       ユ旦

 蜘      t臼u ■ ,to.h白 {1 t一加f「犀r日己   1:●〔口,■k) ■直d bu「51e;      1:● ●1

  ■巴PP{nエt601el11}t・buffer{1L t廿01c■1_●ddre玉 ].tr貢5:・tγue;       型 1・15 旦こ 1 5t,b」rrrer[11_r11■_end:

  11 t.MFer{11.cロ1。r:叩咋1・      」型旦11 .Mred1L川書.・鴫  ■随」      er岨1

図一13 印刷指定の処理を行う手統き       図一14 検索終了の処理を行う手統き

    1垣t.print       terminate  手続きlist.printの中では,次のような処理が行われ    5.あとがき

ている。まず,flagの値が0のとき,すなわちオペラン    出力検索を高速かつ効率的に行うためのデータ構造と ドが入力されなかったときは画面全体を印刷指定するの   コマンド処理系について述べた。実際,どの画面でも短 で手続きprint−true(1,14)を呼出す。 flagの値が1   時間(最大約2秒)で検索す・ることが可能になった。今 のとき,すなわちオペランドで示される1ラインだけを   後,より使い易いシステムとなるように操作方法,処理 印刷指定するので,手続きprint.true(opeTand, oper・  機能に改良を加える予定である。また,リモートジョブ and)を呼出す。 flagの値が2のとき,両オペランドとも   エントリーシステムへの拡張については改めて報告する。

0ならば出力用ファイル全体を印刷指定するので,マツ    最後に,本システムの研究,開発の機会を与えて下さ ピングテープルのtrnsフィールドの値を全部 にし,   り,有益な御助言をいただいた本学情報工学科の磯泰行 現在画面に表示されているラインの色を変更する。そう   教授,安在弘幸助教授,および、本システムの作成に圃 でなければ,第1オペランドの値から第2オペランドの   カしていただいた卒論生諸氏に感謝します。

値までで示されるラインが印刷指定されるので,手続き

       参 考文献

print−true(operand、 operand 1)を呼出す。         1)野上,重松,安在.磯:マイクロコンピュータを用いた出力検渠  4.5.検索終了コマンド       システムについて・昭和53年度電気四学会九州支部連合大会訓

T・マンドを入力すると検索は終了し・印届1指定され 、罐竺藪呈、2留撫。。テムFAM。US I綱11昭和54 たラインだけがホスト計算機へ転送される。この手続き    年度電気四学会九州支部迎合大会講演諭文集,P.220.

terminateを図14に示す。前述したとおり,印刷指定さ   3)野上・鯨1::出力撞索システムFAMOUS lの間発{2〕・昭和54

れたラ俳これに対応するマ・ピングテーブルの 、灘霊蓋禦鷲‡響灘㌶㌫。.テム

tmsブイールドの値が 真〃になっている。従って,出    :FAMOS I、情報処理学会・マイクロコンピュータ研究会資料9 力用ファイルのうち,マッピングテーブルのtrns   −2・1979・

・・一ルドの値がwのライ測ナをホスト計繊へ 51篇{鑑篇量孟㌫㌘㍑襟1蒜

転送すればよい。この転送は,15ラインまとめて行って    ]70,1980,

いる。従って,手続きterminateでは,マッピングテー   5)松原:マイクロコンビュータによる出力検紫システム・昭和53

ブルのt…フ・一・レドの値が填〃のラインをフ・・ 講轡㌔_ピ.一,を輪知能鞠醐和、4

ピーディスクから読込んできて,それが15ライン,ある    年度悔士論文,

いはファイルの終切になるまで1i,t.M・・1こ格納し, 8〕松永・田町・出力酬ステムSORVALの改良について謂        _      和54年度電気四学会九州支部連合大会購演詰文集,p.222.

ホスト計算機へ転送する。ただし・この転送は行の後方   9)Jan記n,Writh=PASCAL Usεr Mamlal alld Report,

の余分な空白詰めは行っていない。      Springer−Veτ1白9.1974.

参照

関連したドキュメント

攻撃者は安定して攻撃を成功させるためにメモリ空間 の固定領域に配置された ROPgadget コードを用いようとす る.2.4 節で示した ASLR が機能している場合は困難とな

テューリングは、数学者が紙と鉛筆を用いて計算を行う過程を極限まで抽象化することに よりテューリング機械の定義に到達した。

当社は、お客様が本サイトを通じて取得された個人情報(個人情報とは、個人に関する情報

題が検出されると、トラブルシューティングを開始するために必要なシステム状態の情報が Dell に送 信されます。SupportAssist は、 Windows

目的 これから重機を導入して自伐型林業 を始めていく方を対象に、基本的な 重機操作から作業道を開設して行け

「系統情報の公開」に関する留意事項

Q-Flash Plus では、システムの電源が切れているとき(S5シャットダウン状態)に BIOS を更新する ことができます。最新の BIOS を USB

・子会社の取締役等の職務の執行が効率的に行われることを確保するための体制を整備する