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

MS-DOSシステムの最適化-香川大学学術情報リポジトリ

N/A
N/A
Protected

Academic year: 2021

シェア "MS-DOSシステムの最適化-香川大学学術情報リポジトリ"

Copied!
30
0
0

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

全文

(1)

MS-DOS

システムの最適化

中 村 邦 彦

はじめに 筆者は以前に MS-DOSの操作性を改善するためのノえッチプログラム技法に ついていくつかの提案をしたが[IJ その後約 3年を経て MS-DOSをめぐるパソ コン環境にはかなりの変化が見られる。まず,ハードウェアはCPUが80386へ と大きくシフトした。そのため大容量のプロテクトメモ

J

L

搭載可能な機種が 増えた。メモリの使用方法も従来のバンク切り換え方式の

RAM

ディスクに加 えて, EMS, XMS, BMS, UMBなどの使い方が開発された。

1

ドライブ

4

0

M B 以上の大容量のハードディスクが普及した。 他方ソフトウェアの方は, MS-DOS本体がノえージョン3..xxから

40

5

.

.

0

へと 発展してきた。ただし,これはマイクロソフト社の版であり,

NEC

版 は 現 荘 3..3Cである。当時にぎにぎしくデビューしたOS/2は 期 待 さ れ た ほ ど 普 及 せ ず, MS-Windows3.. 0が発表されてからは, GUIはそちらの方が主流になりそ うな雲行きである。アプリケーションプログラムの多くはEMS対応になった。 操作環境を改善するためのツールも数多く開発された。 これらの変化により,先の論文で述べたことが一部陳腐化してしまったこ と,また, MS-DOSの操作環境を改善する方法としては,バッチファイルの技 (1) 1 MB以上のアドレス空間に配置されている主記憶。英語で、はextendedmemoryと 呼んで‘expandedmemoryと区別するが,これを拡張メモリと呼ぶと紛らわしいので ここではプロテクトメモリと呼ぶことにする。 (2) expanded memory specification (3) extended memory specification (4) bank memory specification (5) upper memory block

(2)

-282一 香川大学経済論叢 356 法のみでなく,もっと広い観点から検討する必要を感じたことから,今回は MS-DOSのシステム環境を最適化するための方法をいくつか検討してみるこ とにした。 本論で検討するのは次の 3点、である。 (1) システム構成の最適化 (2) ハードディスクの最適化 (3) MS-WINDOWS3,0の利用法 (1)ではMS-DOSマシンとしてのノ、ードウェアシステム構成,ソフトウェアシ ステム構成の最適化について検討する。特にアプリケーションのための領域を 大きく残すための技法を紹介する。 (2)では大容量ハードディスクの初期化とシ ステム効率の問題を考える。 (3)ではMS-DOSアプリケーションを実行するため にMS-Windows3, 0の386エンハンスドモードを利用する方法を紹介する。

E

システム構成の最適化

L

ハードウェアシステム ζこで検討することは, MS-DOSのもとで,し、かにして大きなユーザーメモ リを確保するかということである。その際に実用的な速度を維持することは大 前提である。こうL、う問題が浮上してきたのは, MS-DOS自身がその機能強化 に伴って大きくなってきたこと,アプリケーションプログラムが肥大化してい ることによる。本来80286なら16MB,80386なら4GBの広大な主記憶空間を直 接アクセスできるはずであるが, MS-DOSは未だに8086のモードでしか走らな

1

い。 8086のモードではメモリ空間は1MBしかなく,そのうち384KBはシステ ムROMやVRAM,拡張ボード用に使用または予約されているので,利用可能 な 主 記 憶 は 側KBとなってしまう。たとえXMSやEMSを利用しても,

(

p

-DOSにおいてはこの640KBの部分が基本になるので,これを基本メモリと呼ぶ ことにする。そこでシステムを考える場合,できるだけ大きな基本メモリをア (6) 英語で、はconventionalmemoryと呼んでいるので通常メモリと呼ぶ場合もある。

(3)

プリケーションのために残すことを考えなければならない。 MS-DOSの最新ノミージョンである5.0(以後DOS5と呼ぶ)では,まさにその 点についての配慮がなされ, 4.0で拡張された機能の一部を削ってまでも,基 本メモリを多く残すようになった[2[。すなわち, DOSのレベルでHMALUMB を正式にサポートし, DOSの本体やデパイスドライバを基本メモリの外に追い 出した。その結果DOSは基本メモリの約18KBしか使わなくてすむようになっ た。 NECのDOS3..3Cではほとんど何も組み込まないシステムでも90KBは必要 であることを考えれば,とれは大きな改善である(リスト

5

参照〉。 ここではDOS3..xxのもとで基本メモリを大きく残す方法を考える。 HMAは 80286以上の機種で利用可能である。 UMBは8086,V30, 80286等の機種でも理 論的には利用可能であるが, 80386のページマッピング機能を利用しないと本 格的な利用は不可能である。これらの事情から本論では,対象マシンとして第

l

に次のような構成を仮定する。 CPU : 80386SX以上 主記憶 640KB+プロテクトメモリ 3MB MS-DOSではl直接フ。ロテクトメモリをアクセスすることはないので,増設メ モリは必ずしもプロテクトメモリである必要はないが,後にMS-Windows3 , 0 を利用することを考えて,全てプロテクトメモリとして増設してあるものとす る。 そうは言っても, CPUがV30や80286のシステムを使用しているユーザーも 多いと思われるので,そのようなシステムについても少し検討してみることに する。 なお,本論における各種テスト並びに測定を行ったのは以下のシステムであ る。 NEC製PC-98XL2 CPU 80386 クロック16MHz

(4)

-284- 平寄川大学経済論議 358 主記憶 640KB+内蔵プロテクトメモリ 3MB ハードディスク:内蔵40MB,増設ICM製SRC-131

C

l

30MB) また, 386の機能を持たない機種としては, NECのPC-9801VM(CPU V30, クロック10MHz)を用いた。 2.. ンステムコンフィギュレーション -仮想、86モードで利用する 同じMS-DOSマシンであっても,ソフトウェア的には種々の構成が可能であ るが, 80386マシシならば仮想86モードで使うことを勧めたい。そうすれば増 設メモリは全てプロテクトメモリのみにしておいても, HMA, BMS, EMSと しての使い分けは自由にできる。 仮想86モードを利用するには,仮想86用EMSドライバをCONFIGSYSに組 み込む。このタイプのドライバーには2種類ある。 1つはプロテクトメモリを アクセスするときだけ仮想86モードにするもので,他の lつ は 完 全 に 仮 想86 モードで動作するものである[3J アイ・オー・データ機器のVMM386..SYSは

前者に, NECのEMM386..SYS,メガソフトのMEMORY←PR0386,メルコの

MELEMM386は後者になる。ページマッピング機能を利用してROMのアドレ スを移動できるのは後者である。筆者はMEMORY-PF3386を使用している が,これは豊富な機能が提供され,動作も安定している。 CPUを仮想86モードで走らせると,リアルーモードよりスピードが落ちるは ずであるが141,

DhInt-z

含むいくつかのベンチマークテストの結果は同じ であった。あまり気にすることはないと思われる。 .RAMディスクに 1MBをつかう 現在では,主要なアプリケーションソフト

2

ェアと日本語FEPは,ほとんど EMS対応になっている。またEMS対応のTRSプログラムも数多く開発されて (8) 筆者のシステムではPC-98XL'-07を使用してくださいと響告が出るが,問題なく 動作しているのでそのままにしている。 (9) CPUの性能を測るベンチマークプログラムの1つ。 (10) terminated and stay resident

(5)

いるので,

EMS

は必要であろう。

RAM

ディスクはどんなディスクキャッシコプログラムを使うより高速であ る。作業ドライブとして

1MB

程度は用意しておきたい。

UMB

のために

6

4

K

B

を確保して残りは

EMS

として使用す}るのが妥当なところだろう。 ディスクキャッシュプログラムを使用している人をよく見かけるが,最近の ハードディスクは高速のものが多くなっていること,ディスクキャッシュ内蔵 のものも多くなっていることから[5] これは使用しない。下手に使うと返って 遅くなることがあるからである。フロッピーディスクドライブに対iしては効果 があるように考えられるが,それは同じデータを何度も読み出す場合のことで あって,一度読むだけの処理ではほとんど効果がない。書き込むときは同じ か,返って時聞がかかるはずである。フロッピーディスクはファイルの交換と 保存用と考えておけばよいだろう。 さて筆者が勧める

CONFIGSYS

と,それに対応した

AUTOEXECBAT

を紹 介しよう(リスト1,リスト

2

)

。両方とも説明の都合上,余計なものは削除し てある。バッファは

l

つにつきセクタサイズ

+

1

6

八イトのメモリが必要になる。 buffers= 1となっているのは,ここではできるだけ小さくして基本メモリの消 費を抑えておき,実際には

UMB

の中に確保しようという訳である。

VEMS DRV

というのは

MEMORY-PR0386

の仮想

EMS

ドライバーである。

MX

1

STAR DRV

はノ《ンク方式の

RAM

ディスクドライパーで,これは

UMB

おく。

UMB

におくといっても,現状では全てを外に出す訳にはし、かず,実際に はいくらか基本メモリに残る。この例では304バイトが基本メモリに残った。

PRINT SYS

は文字型ドライバであるので,後でも組み込みと取り外しが可

能であるが,これも

UMB

に置くことにすれば,常に組みこんでおいても問題は ない。

AUTOEXEC BAT

(リスト

2

)

の中の

ENVDRV

というのは環境変数にその

システムのドライブ名を登録するプログラムであるl針。環境変数領域の見つけ 方,

RAM

ディスクの認識の仕方など,一部を修正して使用している。

(6)

-286ー 香川大学経済論叢 360

(11)

CONFIGSYS

を用いたときのメモリマップタを示す。これは

VMAP COM

よる出力であるが, {・・・}の部分は筆者があとで書き加えたものである。 何も組み込まない場合(リスト

4

,リスト

5

)

はフリーエリアが

5

6

3

1

8

4

バイ トである。リスト

3

の最大のフリーエリアは

5

8

1

8

0

8

であるから,

1

8

6

2

4

増 加 し ている。これはほとんど

BUFFERS

の数を減らしたことによっている。システ ム領域は

F

I

L

E

S

の数や接続ドライブ数によっても影響を受けるが,これは余り 大きくない。

VEMS DRV

自身は基本メモリを

1

6

0

パイト,

XMS

8

ページ使用する。そ の他

UMB

用に

4

ページ使用する。このタイプのドライバは基本メモリ占有量 が小さい。

VEMSDRV

のオプション

/

B

1

0

によって

RAM

ディスク用にパンク メモリを

1

0

パンクCl

28KBX1

0

)

を確保させているが,オプション

/x

により

2

5

6

K

B

の裏

RAM

をバンクメモリとして利用してくれるので,実際には

XMS

8

パンクが消費される。

.UMB

DOS

の管理

F

に組み入れる リスト

3

の メ モ リ マ ッ プ に は

UMB

ま で 含 ま れ て い る が , こ れ は

MCB

UMB

まで延長したからである。こうしておけば

UMB

の空き領域も

MS-DOS

の 管理下に入るので,

DOS

から利用できるようになる。このためのプログラム

LKUMB COM

は筆者が作成したものであるが,

MELWARE

UMBSTAT

COM

も利用できた。-Iol連結すると,

MEMORY-PR0386

付 属 の

UMB

管 理 プ

ログラム

LUCOM

は使用できなくなってしまったので,

LKUMBCOM

には連

結を切断するオプションを付け

2

日えた。その他

I

C

訟の

EO

システムも使えなく なった。連結後は

LOADC

O

I

V

(

ADDBUF COM

が利用できた。リスト

2

(11) エディタV u,こ付いて来るメモリマップを表示するプログラム。作者 兵藤嘉 l 多.フリーウェア (12) memory control block

M

S

-

D

O

S

の主記憶割当て状況を管理するために使用さ れる。 (1

3

)

常駐プログラムを拡張エリアにロードするプログラム。作者 junk

3

5

(臼経

M

I

X

)

,フリーウェア (14) バッファを

UBM

に割り付けるプログラム。作者 junk

3

5

(日経

M

I

X

)

,フリー ウzア

(7)

addbuf 30'とあるのは,基本メモリ内の分と合わせて30になるようにUMB

にバッファを確保することを意味する LOAD.COMによりTSRプログラム

(15) (16) (17)

AUTOLAND COM, CRTSHUT COM, EZKEY COMをUMBにロードして

いる。

また,そのままではMS-DOSが新たにメモリを割り付けるときには,下位領 域から割り付けるようになっているので, LKUM

B

.

COMはDOSのファンク ション

58H G

e

t

/

S

e

t

A

l

l

o

c

a

t

i

o

n

S

t

r

a

t

e

g

y

により,最小の利用可能ブロックか ら割り当てるようにしてある。これも変更できるようにCHGSTRCOMが用意 されている。 残念なことに,これらの工夫をしても,環境変数領域をUMBに取ってくれる 程度で,期待したほどにはうまくし、かなかった。これは基本的にDOSシステム がUMB対応になっていなし、からで, DOS5が使えるようになるまでの一時しの ぎというところである。 . CPUが80286以下の場合 次に80386の機能を持たないCPUについて検討してみる。まずハードウェア の構成であるが, EMS対応のソフトを使いたいのなら2MB程度のEMSボード が必要である。さらにRAMディスクも使いたいなら, EMSを3MB以上にして l部を利用するか,別に従来のバンク方式のメモリがあればそれを利用する。 EMSボードとパンク方式のメモリボードが異なるメーカーの製品であると きは,同時に使用できない場合がある。例えばエーヒーエム社のノミンク方式メ モリボード98-MBとメルコのEMSボードEMJmk皿は,制御に同じ

r/o

ポー

トを使用しているために同時に実装することはできない。 (15) ハードディスクのヘッドをシッピングゾーンに移動させるプログラム。作者

s

e

r

o

w

('アスキーネット),フリーウェア (16) CRTの焼き付き防止プログラム。作者 Takuya-N!SS,フリーウェア (17) キーボード入力を補助するプログラム。作者 兵藤嘉彦,フリーウェア (18) メモリ割当て方法を変更するプログラム。作者 junk 35(日経MIX),フリー ウェア

(8)

-288- 香川大学経済論叢 362 この場合

EMS

はハードウェア方式で実現することになるので,

EMM

はそれ ぞれのボードに対応したものを使用しなければならない。どんな場合でも何か 追加すればそれだけ貴重な基本メモリが消費されることになるので,この場合 も

UMB

を利用することを考えるべきである。

UMB

の利用は,

3

8

6

のようにうま くはし、かないが,ある程度可能である。例として

NEC

P

C

-

9

8

0

1VM

2

にアイ ・オー・データ機器の

EMS

ボード

P

I

O

-

P

C

3

4

H

X(

2

MB)

,エービーエムのバ ンク方式のメモリボード

9

8

-

M

B(

2

MB)

S

A

S

I

のハードディスクという構成 での実例を紹介する。 ソフトウェアは

EMM

と し て , 同 じ ア イ ・ オ ー ・ デ ー タ 機 器 の

EMM4

J

SYS

とパンク式メモリボード対応の

RAM

ディスクドライノえを用意する。

8

0

2

8

6

の場合はプロテクトメモリを利用することが可能である。

HMA

XMS

を利用 するプログラムも使いたい場合は,同じメモリをハードウェア方式の

EMS

と してもプロテクトメモリとしても利用可能なボードを増設すべきでる。 アイ・オー・データ機器から提供されるもので構成する場合はリスト

6

7

のようにすればよいだろう。

EMM4JSYS

/w

の後に

d

4

が書いてないのは, セグメント

D

7

0

0

からD7

FF

までは,

S

A

S

I

ROM

があるので使用できなL、から である。続いて

/A2 /B

が指定してあるが,これには次の意味がある。

/A 1 EMM

のデータ部分を

UMB

に移す

/A 2 EMM

のコード部分を

UMB

に移す

/B

UMB

をその他の目的に利用する

/A 1

を指定すると

EMS

の速度が向上する。

/A2

を指定すると,スピードは 遅くなるが基本メモリの消費が少なくなる[7)。

LUMB COM

BEX COM

はアイオーデータの製品で

UMB

にプログラムを

ロ ー ド , お よ び パ ッ フ ァ を 確 保 す る プ ロ グ ラ ム で あ る 。 リ ス ト

7

BEX

COM

2

度実行しているが,この例のように

UMB

が分断されているときは, 一度に必要バッファを確保できなかったからである。メモリマップをリスト

8

に示す。

(9)

あるが,それがと

(

Z

程度であるか調べておこう。

EMS

そ の も の の 速 度 は

EMSBENCH. COM

で測定した(表7)0

EMS

を使用するアプリケーションの

速度についてはLotus123で整数値データのコピ一時間を測定した(表8)。そ の結果次のようなことがわかった。

EMS

メ モ リ へ の ア ク セ ス は 全 て の 場 合 に つ い て 同 じ で あ る が , そ の 他 の

EMS

ファンクションについては,最も速し、

/A1

/A2

より1.

1

倍から1.

6

倍, 平均で1..

4

倍 高 速 で あ る 。 実 際 の ア プ リ ケ ー シ ョ ン プ ロ グ ラ ム で は そ の 差 は

1

.

.

1

5

倍であった。 ところで,アイ・オー・データのやり方では

SASI

ROM

があるページ全体 が利用できなかったが,

ROM

のないところは全て使えようにするプログラム が発表されている。

EXT-TPA

c

o

J

3

2

それである。今度は

EMS

のウインド ウに

CO

から

DC

まで全てのページが指定できる。/

A 2

指 定 を し な け れ ば

DO

か ら

DC

までのページのうち,

ROM

のある

4KB

を除き,残り

60KB

全てが

UMB

と して利用可能になる。残念なことに

EXT TPA

COM

では,ブロック型デバイ スドラパを

UMB

にロードすることができないので,

RAM

ディスクドライノえが 基本メモリ内に残る。その結果基本メモリ内の空き領域は約

1

KB

減少する が,

UMB

はl1

KB

増加している(リスト

9

1

0

1

1)。 さて,このように基本メモリを節約す向ることのメリットであるが,次のよう なことが考えられる。 (1) 大きなアプリケーションが余裕をもって使える。 (2) 常駐型プログラムが使用可能になる。 (3) 1つのプログラムを起動したまま,別のプログラムを呼び出して処理 をする。 (3)はエディタの中からコンパイラを起動したり,あるプログラムを実行中に (19)

EMS

の速度を測定するプログラム。作者 内田暁,フリーウェア問 (20)

EMS

の物理ベージを

UMB

に割り付けて使用するプログラム。作者 junk 35 (日経

M

I

X

)

,フリーウェア。

MELWARE

専用の部分があるが,それ以外はアイ ・オ・データの

EMS

でも利用できた。

(10)

364 香川大学経済論叢 -290ー 一時的にDOSへ抜けて,別の処理をしたりすることをさしている。最近のソフ トウェアの多くはこのようなことができるようになっている。この点で徹底し てるのはPARAD02li使用中に一時的にDOSに抜けたときは,自分自身はわ ずか 1 , 3KB を基本メモリ内に残すのみで,あとは全部EMS~こ待避している(リ UMBにはPARADOXの た め の 小 ブ ロ ッ ク と 新 た に 呼 び 出 さ れ た スト 12)。 V '-. COMMAND COMのためのブロックが

l

個,計496ノ《イトがとられている。 そ の 結 果 れ はUMBをDOSの 管 理 下 に 組 み 込 ん だ さ さ や か な 効 果 で あ る 。 PARADOXを終了することなく,入力するデータをエディタを使って編集した り, Lotus123にデータを送り込んで計算処理をしてからすぐに取り込むなどと ところがPARADOXは, EMSの空き領域を全て占有 してしまうので,後から呼び出されるプログラムはEMSを 利 用 で き な い と い う問題はあ

Z

?

この問題はMS-Windows3 ,.0を利用することにより解決できる ことを第W節で示す。 いうことが可能である。 ハードディスクの最適化 m 出 MS-DOSのファイノレシステムは,もともとがフロッピーディスク用に作成さ れたものであるため,大容量のハードディスクには対応しきれないところがあ マイクロソフト社のDOS5は初めてこれを本格的にサポートしたが,それ る。 を利用できないユーザーは既存のシステムを何とか工夫しながら使う必要があ る。ここではMS-DOSのハードディスクファイルシステムの問題点とそれを回 避する方法をいくつか紹介する。 ブート装寵と起動メニュー

1

.

システムをハードディスクから起動すると,いつも起動メニューが表示され (21) ボーランド社のリレーショ!ナルデータベース管理ソフト (22) それならPARADOXを起動する前にEMSを適当に確保しておいて, PARADOXを抜けてからそれを解放してやればうまくいくのではないかと考え られる。実際にPARADOXとLotus123で試してみたところ, Lotusで、は確かに EMSを利用できたが, PARADOXへ戻るところでハングアップしてしまう。

(11)

!

?

j

!

i

i

るという問題がある。ハードディスクを

NEC

FORMA

T.

EXE

で初期化した 場合,複数のパーティションからブート可能に設定しておくと,あるパーティ ションを自動起動に設定しただけでは,本当に自動的には立ち上がってくれな い。メモリスイッチで

BOOT

装置をそのハードディスクに設定しておく必要が ある。 以前はハートディスクに唯

l

つのブート可能なパーティションしかない場合 でもメモリスイッチの変更が必要であったが,

33C

ではパーティションが

1

つの場合は

BOOT

装置が標準のままでも自動的に起動するように改善されてい る。したがって,ここで引はハードディスクに複数のシステムがインストールさ れている場合を考える。 何か特殊なプログラムがあって,そのフロジピーディスクから立ちとげなけ ればならないようなことがある。自動起動に設定してしまうと,こういう時に いちいちメモリスイッチを書き換えてからリセットしなければならない。また 何らかの理由でハードディスクから起動できなくなったときは,ディップス イッチを操作してメモリスイッチを全て出荷時の設定に戻さなければシステム を起動できなくなる。 この問題は,

ICM

社の

EXFORM.EXE

で初期化することにより解決する。そ の他に,この問題だけを解決するツールもあ

Z

?

Z

パーティションの大きさ ノfーティションの大きさにより論理セクタサイズが決定される。 IBM-PCで は論理セクタという概念はないので,セクタサイス、と言えば物理セクタサイズ のことであり,これは

5

1

2

バイトに固定されている。

NEC

では,物理セクタを いくつかまとめて論理セクタとして扱うことができる。 DOSではセクタ番号を

1

6

ピットで表すことにしているため,

1

つのドライブは,

2

1

6

(

6

5

5

3

6

)

ま でしかセクタをもつことができない。したがって Iセクタを 1KBにとるな ら,

1

ドライブの容量は

64MB

が限度となる。それを越えると

128MB

まで

l

セ (23) IPLを変更するプログラム。作者 Ackune,フリーウェア

(12)

-292- 香川大学経済論議

3

6

6

クタは

2KB

になる。

このセクタサイス引は主記憶の消費にきいてくる。

DOS

の入出力バッファは, パッファ

1

個につき,セクタ長

+16

バイトのメモリを必要とする。したがっ て,

CONFIG SYS

BUFFERS=20

としてあれば,パーティションが

64MB

以 下なら

2

0

8

0

0

バイト,

65MB

以上なら

4

4

2

0

0

ノ《イトのバッファ領域が必要になる。 それなら,

1

パーティションは

64MB

以下にしておく方がよいかというと, ことはそう簡単ではない(表1)。表中の比較項目のうち,領域の有効利用につ いてほ次節で説明ーする。 アクセス速度の比較には微妙な問題があるが,バッファ領域を大きくとるこ とが可能であるならば,一度のアクセスで

2KB

読み書きする方が効率がよく なると考えられる。パーティションの大きさを

64MB

で抑えた場合には, ドラ イブ数が増えてしまうという欠点がある。あるファイルを探すとき,あちこち のドライブを訪ねて回るなどということもあり得る。そういう時には

JOIN

コ マンドを利用して見かけ上のドライブ数を抑えるとともできるが,直接ドライ ブ名を指定させるプログラムもあるので面倒な面もある。 しかし,それら以外にも問題はある。

MS-DOS

はファイルを更新するとき, 元のファイノレの領域に上書きするのではなく,新しい空き領域に書く。これは 上書きする前にそのファイルを消去してから書いても同じである。フロッピー ディスクの場合は,一旦メディアを取り出してからもう一度セットすることで 直前にできた空き領域を認識してくれるようになるが,ハードディスクや

RAM

ディスクのように取り外しのできないメディアのファイルは,こうして 書き換えるたびにその位置が移動することになる。こうなると論理的に関連の 深いファイルでも,実際には遠く離れて配置されることが起こる。

1

つのパー 表1 パーティションの大きさによる比較 パ ッ プ7数 領域の有効利用 アクセス速度 ドライブ数が増える

64MB

大きくとれる 有利 や や 不 利 不 利

65MB

以上 大きくとれない 不 利 や や 有 利 有利

(13)

ティションが大きければそれだけファイルが速く離れてしまう可能性が高くな ることは明かであろう。そのために時々ディスク内のファイルの配置を最適化 してやる必要がでてくるが,パーティションが大きければ,最適化に要する時 聞も長くなるであろう。 さらにパーティションが大きければパックアップとリストアが大変である。 パーティションがどうであろうと,全体としてのパックアップ時間は変わらな いが,大容量を

l

度に全部ノえックアップするのは大変である。小さく分割して あれば

1

回の処理時間は短くてすむ。 これらのことを総合して考えれば,通常のユーザーはlパーティションを64 MB以下にしておく方がよいと思われる。 3 クラスタサイズ セクタはMS-DOSがディスクをアクセスする単位であるが,ディスクの空き 領域の管理はクラスタが単位である。クラスタサイスの問題は先の論文でも触 れたが,その後かなり状況が変化しているのでここで再び取り上げる。 ハードディスクのインタフェースにはSASIとSCSIの2つ が あ る 。 従 来 は SASIが使われていたが,大容量のものはSCSIが使用されている。 ディスクの フォーマットについても標準フォーマットと拡張フォーマットの

2

つがある が,前者は20MBまでのディスクしか扱えないのでここで町は考えなし、。 まず, SCSIの場合であるが,表2より64MBの領域まではクラスタサイズが 2KBとなるので,余り問題はない。 SASIの場合40MBの領域ではクラスタサ イズヵ'l6KBになる。 これでは利用効率は悪くなる。 SCSIのときはlクラスタ 2KBでフォーマットできるのに, SASIではそれが できないのは何か理由があるのかと思うが,実は特に理由はなく, ただ従来そ うしていたからということのようである。実際

NEC

FORMAT

プログラムを ほんの少し変更すればSASIのノ、ードディスクをSCSIのようにフォーマットで きる。 クラスタサイズが小さければ,ディスクスペースの利用効率は高くなるが,

FAT

のサイスが大きくなるため,

FAT

に対する

1/0

が増加して全体の効率を

(14)

-294-

香川大学経済論叢

2 NEC

FORMA

T..

EXE

で初期化されたハードディスクの諸元1')

SASIの場合

一一積買事定

(

K

B

)

クラスタサイズ 拡張フォーマ yトの場合 ディレクトリ数

I

5

1

2

全て

1

2

ビット

FAT

,セクタ長は

1KB

SCSIの場合 領域指定

(

K

B

)

クラスタサイズ ディレクトリ数

10MB

までは

1

2

ビット

FAT

,それを越えると

1

6

ピット

FAT

セクタ長は

64MB

までは

1KB

,それを越えると

2KB

3

6

8

下げる可能性がある。手持ちのハードディスクで簡単なテストをした結果で は,バッファ数が極端に少ないときには

5%

程度の差がでたが,バッファ数

2

0

以上ではほとんど差が出なかった。したがって,クラスタのサイズは

2KB

に する。 以下に筆者のハードディスクの全ファイルのサイズについて調べた結果を示 しておく〔表3"-'表5)。最小がOになっているのは,プログラムが異常終了し たときにできたもので, MS-Windowsの 作 業 フ ァ イ ル が3個 , そ の 他 が 1個 あった。最大は花子のアウトラインフォントファイノレであった。ファイル・サイ ズの分布図(凶1)は縦軸がファイルの分布密度で,サイズが1

KB

変化する区 間に何個のファイノレがあるかを表している。横軸は対数メモリになっている。

4

まとめ ここまでハードディスクの抱える問題点をいくつか考えてきた。大容量ディ ス ク の 基 本 的 問 題 の 解 決 に は

DOS5

表3 7 7イルサイズ基本統計 を使わなければならないけれども,い! ファイル数

2

8

6

7

個 ,..,.J..-!-.:u---;

I

サイズの合計

8

5

6

3

3

K

B

くつかは

ICM

の ハ ー ト ア イ ス ク 拡 張 │ 最小

O

l

最大

2

9

4

6

フォーマットプログフム ~~FORM

I

平均

299

(24)

EXE

を使うことで改善できる。 I メディアン

5

.

9

(

2

4

)

EXFORM EXE

は未だにパーティションサイズが

64MB

のとき,セクタが

2

KB

になるというパグがある。

(15)

ファイルサイズの度数分布 階級(KB) ファイル数 累積数 累積割合 l以下 565 565 19.7% 2 329 894 3L2% 4 347 1241 43.3% 8 360 1601 558% 16 383 1984 692% 32 344 2328 81“2% 64 275 2603 90.8% 128 133 2736 95.4% 129以上 131 2867 100.0% 表4 クラスターサイズと必要容量 表5 クラスターサイズ 必要容量 (KB) 無駄になる容量 利用効率(%) メモリスイッチでBOOT装置を標準にしたままでハードディスクから['1 シフトキーを押しながら立ち上げれば起動メニューが (1) 動立ち上げできる。 表示される。 これはSASIのハード、ディスクでもクラ クラスタサイズを選択できる。

(

2

)

スタサイズを

d

、さくできる。 (3) ルートディレクトリのためのセクタ数を指定できる。 (3)については今まで説明していないが,表2にあるように40MB以 上 の 領 域 のときは,ルートディレクトリのスロット数が3072になっている。通常はこん なに多くは使わないので減らすことができる。 MS-Windows3.. 0 W T P l f } i i i t f i l i -s i } t l j i t -i i l i s f -舎 MS-DOSの操作環境を改善するためにMS-Windows3.. 0を利用することを捉 マニコアルには, Windowsアプリケーションだけを実行するときは, スタンダードモードの方が速いと書いてある[8]が,本論はDOSの利用環境を論 案する。 Z ンハンスドモードについてのみ言及する。すなわ ずるのが目的であるので,

(16)

-296- 香川大学経済論議 370 ち,エンハンスドモードの下で DOSのアプリケーションプログラムを使用する ことにより,従来とは異なる新しい操作環境が得られることを紹介したいので ある。 L 386エンハンストモードにする 説明書19]によれば, 80386以上のCPUを も っ マ シ ン の 場 合 , ノ ー マ ル レ ゾ リューションモードでは3072KB以 上 , ハ イ レ ゾ リ ュ ー シ ョ ン モ ー ド で は 4096KB以上の

XMS

メモリが必要であると書いてある一方で,

XMS

が1024KB 以上あれば,ウインドウ起動時のオプションにより,エンハンスドモードにす ることができるとなっている。実際にはどうなのか確かめてみた。 まずWindowsをエンハンスドモードを指定して立ち上げる場合は (/3のオ 図1 ファイルサイズの分布 600 ファイルサイズlKB当たりに分布するファイル数 500 400 300 200 100

O

1

2

4

8 16 32 64 128 256

(17)

プションをつけて立ち上げる), XMSが1024KBあれば確かにエンハンスト モードにはなるが,一太郎, Lotusどちらも起動できなかったので問題になら ない。 2048KBの時は一応一太郎, Lotusともに起動できたが, EMSを使う Lotus はシートの読み込み時間がかなり遅くなってしまう(筆者のシステムで は約5倍)0XMSメモリが3MBのときは2倍程度で収まるので,これはメモリ 不足が原因と思われる。また何かの拍子にシステムが停止してしまうこともあ る。そういう訳で

/3

で強制的にエンハンスドモードにするのは勧められない。 次にWindowsシステムにモードを選ばせる方で試してみた。説明書にはfiles の値は30以上が必要であること, buffersの値はSmartDriveを使用した場合は 10に設定するように指示されているので,リスト13のようなCONFIG SYSを 用意し,中のMINの値をいくつか変えて起動させてみた。 2048は標準サイズの 指定であるが,これはWindowsのときは自動的に調整されるの1で意味がない。 その結果, MINの値が768では確かにエンハンスドモードになるが, 896では スタンタードモードになる。システム側では,ヱンハンスドモードにするため には, Smart Driveの制御領域を含めて最低2.3MB程度のXMSメモリーが必要 と判断しているようである。

device=

windows

smartdrv sys 1024 256

あたりに設定しておく方がよいようだ。 ハイレゾリューションモードではXMSメモリが3MBではMINをOにしても 確かにエンハンソドモードにはならない。実際には少なくともあと256KB程 度 必要であった。さらにSmartDriveを使ってスピードアップを図るためには,説 明書どおり 4MBのXMSメモリが必要ということになる。 2.. フ。ログラムスイッチャーとしてのWindows3..0 386エンハンスドモードを利用すると,複数のウインドウプログラムを同時 に起動させておき,それらを切り替えながら使用できることはもちろんである が,非ウインドウアプリケーションも同時に複数個使用できる。これは, 80386の仮想、86モードを利用しているからである。この機能は以前のWindows /386においてもある程度は実現されていたが, 3..0ではさらに強化された。

(18)

-298- 香川大学経済論議 372

(

1

)

基本メモリによる制約が事実上なくなった。 (2) 仮想86マシンごとに,仮想のEMSメモリが割り当てられるようになっ た。 (1)に関しては,以前はウインドウプログラムであろうとなかろうと,ひとつ のプログラムが起動されれば必ずなにがしかの基本メモリーが消費されていた ので,同時に起動できるプログラムの数は結局基本メモリの大きさに制約され ていたが, 3..0ではこの制約が,スワップファイルの大きさにまで拡大された。 また, Windows/386では, EMSの領域は全体として固定されて、いたため,一太 郎43やPARADOXのように,使用可能なEMSメモリーを全て占有してしまう アプリケーションを先に起動してしまうと,後から起動したアプリケーション はもはやEMSを利用することができなかった。 (2)に よ り 個 々 の プ ロ グ ラ ム ご とに,実装メモリーを越えて任意のサイスhのEMSメモリを割り付けておくこ とができるようになり,この問題が解決された。以

F

に具体的な使用例とセッ トアップ。の手IJ闘を紹介しておく。

例として,一太郎4..3,Lotus123, PARADOX, COMMAND COMを同時に 使えるような環境を作成してみよう。これら

4

つのプログラムを同時に起動し ておき, NoWinAppという名前でグループとしてプログラムマネージャに登録 しておく。それぞれのプログラムは日本語FEP,マウス,プリンタ等のドライ ノえーが必要であるから,単に目的のプログラムを起動するだけではいけないの で,以下の手順が必要である。 (1) DOSプログ!ラムを起動するためのバッチファイルを作成する。 (2) Windowsの中での実行のさせ方を指定する*..PIFファイノレを作成す る。 (3) プログラムマネージャに登録する。 例としてLotus123用のノミッチファイル(リスト14)とPIFファイルのl部を 示しておく(図

2

,図

3)

。バッチファイル!で町は,プロセスが終了したときには 当該の仮想86マシンが消えてしまうので,後始末はしなくても良い。 PIFファ イルでは使用したL

EMSのサイズを指定する(図3)。

(19)

図 2 Lotus123のための PIFファイル 1

│圏一

-

ι

…凶云尚子ぶ耐..川

γ---

一…け園田

I

ファイル(日 モード(M) ヘルプ(H) ‘L

層 圏

プログラム司令lP) プログラム題名(T) lLotusjn_Windows プログラムパラメータ(Q) 初期ディレクトリ

(

S

)

l

E

L

7

1 必要メモリ 困 問 必 要

ω

四 郎 潤 ま し い

ω

画面の使用方法⑥アルかリ・ン(u) 。ウイントーウ

(

W

)

図終了時ウインドウを閉じる巴) 実行方法 口/¥','17グラ吹けれでも新子(s) 図単独で新子(E)

l

高度(主)...".

I

図 3 Lotus123のための PIFファイル 2

高度なオプション .?!VfタMオプション フォアグラウンドの優先度但)

E口

図入力待ちの検出(旦)

巳!J

V

グラウンドの優先度但) 医 コ

│取消│

メモリオプション

E

M

S

メモリ

E

コ 阻 必 要 也 )

題日KB~賦(υ

ロロック(K) 部

1

S

メモリ 区 コ 阻 必 要 但 )

~間隙(1)

ロロック(0) 図ハイメモリ領域を使用(旦) ロ 酬 を 沼 守 支 棚 田

I

I

「画面表示オフ。ション ビデオメモリ

c

v

⑥テキスト 。グラフィック 図グラフ描画の高速処理

C

D

毛ニタ禁止ポート(M) 1. 手順(3)は ア プ リ ケ ー シ ョ ン を プ ロ グ ラ ム マ ネ ー ジ ャ ま た は フ ァ イ ル マ ネ ー ジ ャ か ら 直 接

P

I

F

フ ァ イ ル を 起 動 さ せ る こ と に す れ ば , 必 ず し も 必 要 で は な い が , そ れ ぞ れ に 好 み の ア イ コ ン を 割 り 付 け て デ ス ク ト ッ プ に 表 示 し て お き , マ

(20)

-300- 香川大学経済論叢 374 ウスで選択することによって起動できるようにするために行Lうものである。プ ログラムを登録する画面を図4に,アイコンを登録している画面を図5に示し ておく。最後に出来上がったデスクトップ画面が図6である。なお,アイコン はWindows付属のペイントブラシとシェアウエアIconManagerを使用した。 図4 プログラムの登録 │ー プログラムの情報 .

(

1

2

)

:

圃 園

図5 アイコンの登録

子凶作局選訳

寸│

ファイル名

C

E

)

:

U

E

凶 剛 畑 棚 田

次のアイコン倒)

I

現在のアイコン:

取消

Icon Managerには多くのアイコンが付録としてついているので気に入ったも のがあればそれをそのまま使用できる。 (25) Windows3.0のアイコンを管理するコーティリティプログラム。作者 Impact Software(米国),シェアウェア

(21)

実際にこれら4つのDOSアプリケーションな起動させてみると,割り付けら れているEMSだけで 8MBになった(表

6

)

。各アプリケーションにはPIFファ イルで指定された大きさ+512KBのEMSメモリが割り付けられていた。 図6 プロゲラム登録後のデスクトップ 表6 EMSの使用量 フ。ログフム EMS (MB) COMMAND COM 1 5 LOTUS123 25 PARADOX 2 5 一太郎 1.5 合計 8.0 3.. Windows3.. 0の実行速度 Windowsの下で実行される DOSアプリケーションの実行速度を測定したも のが表

7

である。 SysCaIlというのは, MS-DOSの簡単なシステムコーノレの呼びh

出し DhryはDhrystoneベンチマーク, NortonはNortonユーティリティの SIに よる比較であり,通常の仮想86モードでの速度をIとして表した。 fuIlという のはWindowsのフノレスクリーンモード, winはアフリケーションをウインドウ

(22)

7

-302ー モード SysCall Dhry Norton 表7 香川大学経済論議 WINDOWS3,,0の実行速度 V86 full 1 0 0,,67 1 0 0,92 1.0 0.93 376 wm 。,,39

58 0.46 の中で実行するモードである。 Windows十ではシステムコールがかなり遅くなっ ているのがわかる。 次 にEMSの基本性能を測定してみた(表 8)0 Windowsで

'

v

:

主ノミックグランド プロセスの影響で測定値(にばらつきがでるので, Windowsに関する測定値は 10 凹の測定の平均値を用いた。メモリアクセスを除く E M M機 能 の 速 度 は , フ ル ス ク リ ー ン の 場 合 で さ え も , 最 も 速 い MEMORY-PROの 5倍 か ら 10倍遅く なっているが,これはWindowsのE M Mがもともと MEMORY-PROに較べて約

2

倍遅いことを考慮する必要がある。 表 8 EMSのベンチマーク PC-98XL 2

PR0386 INECEMM [WINEMM FULL

(1) 209 350 400 1905 ( 訪 110 233 229 1073 (3) 133 217 278 1083 (4) 202 312 362 1153 (5) 1730 1720 1720 1969 (1) 論理ページの物理ベージへの割当 (μ秒〕

(

2

)

ページマップのセーブ&リストア (μ秒〕 (3) 複数の論理/物理ページの割当 (μ秒) は) 部分ページマップの取得/設定 (μ秒) WIN 3705 2110 2069 2263 3767 (5) EMSメモリアクセス速度 (65536*100バイト) (m秒) PR0386 MEMORY -PR0386verl 50

NECEMM NECのMS-DOS3,3C付属の EMM386SYS WIINEMM NECのWINDOWS3,,0付属のEMM386,SYS FULL WINDOWS3 0のフルスクリーンモード WIN WINDOWS3,,0のウインドウモード

/NA アイオーデータ EMM4 J SYS /NA /A 1 アイオーデータ EMM4

J

SYS / A 1 /A 2 アイオーデータ EMM4 J SYS / A 2 PC-98VM 2 IODATA /NA /A 1 /A 2 727 494 805 455 370 526 714 481 784 506 536 596 3970 3960 3960

(23)

これらの

EMS

基本性能の差が実際のアプリケーションでどの程度でてくる のかを測定したものが表

9

である。

EMS

の影響が出易いものとして

L

o

t

u

s

1

2

3

テストはまず

A

列全体

(A1

"

-

'

A

8

1

9

2

)

に整数データを埋め込んだ 後,それを

B

列から

I

列までコピーする時間と,それを消去する時聞を測定し た。整数データを用いたのは,

L

o

t

u

s

の拡張メモリマネージャを内部+拡張に したときには,整数データは

EMS

を使用しないので

EMS

の影響が推定しやす いからである。

D

h

r

y

s

t

o

n

e

1

i

直の減少はある程度納得できる値であるが,

L

o

t

u

s

の を用いた。 クロック

10MHz

9

8

0

1

コピ一時間の速度低下は大きすぎるように思われる。 V Mよりも遅くなっている。 とのように汎

T

i

n

d

o

w

s

3

.

.

0

では,

EMS

の速度が遅すぎる欠点はあるものの,

DOS

アプリケーションはほぼ完全に同時起動可能である。 エディタでデータを 編 集 , 修 正 作 業 を し な が ら

L

o

t

u

s

PARADOX

に 読 み 込 ま せ る と か ,

PARADOX

で必要なデータの検索・抽出を行い,それを

L

o

t

u

s

で計算してから また

PARADOX

に戻すことなどが可能になった。また,クリップボードを利用 してアプリケーション間でデータの転送が可能になるなど,

DOS

の操作環境改 善という面では評価できる。

L

o

t

u

s

1 -

2

-

3のベンチマークテスト 表9 単 位 秒 コピー

A

列全体

(

A1

"

-

'

A

8

1

9

2

)

B

"

-

'

I

までコピー 消去

B

1

"

-

'

1

8

1

9

2

までを消去 内部 内部+拡張メモリ 拡張 拡張メモリのみ

i

l

i

-一

iit むすび

MS-DOS

マシンを

NEC

MS-DOS3.3C

用に最適化するための試みをいくつ

(24)

-304- 香川大学経済論議

3

7

8

か紹介した。実行速度をあまり犠牲にすることなく,基本メモリを大きく空け ることには一定の成果が得られた。その結果,従来よりメモリに常駐するデバ イスドライパや

TSR

プログラムを利用しやすくなるであろう。また,ひとつの アプリケーションを起動したままでも,エディタなどの小型のプログラムは十 分に使用できる環境が得られた。

W

i

n

d

o

w

s

3

.

.

0

3

8

6

エ ン ハ ン ス ド モ ー ド は 複 数 の 非 ウ イ ン ド ウ ア プ リ ケ ー ションを同時に起動し,それを切り換えながら使用できる環境を与えてくれる ことがわかったが,

EMS

の速度低下が大きいことがわかった。 本論で検討した問題は

MS-DOS5..0

が使用可能になればある程度解決される はずであるが,それまではここで述べた技法が役に立つものと信ずる。また

D

O

S

5

.

.

0

の恩恵を受けられない古い機種については,ここで紹介した方法が大 切なものとなるであろう。 参考文献

[

1

J

中村邦彦,

rMS-DOS

のパッチプログラムの技法j,香川大学経済論叢第

6

2

2

号,

1

9

8

8

[2J

藤田窓治,

rMS-DOS

の生きる道j,日経バイト, N.o

8

7

1

9

9

1

[

3

J

内田暁, rE

MS

のベンチマークテストj,

TheBASIC

, N.o

9

,1

1

9

9

0

1

2

月号

[

4

]

中島信行,

rMS-DOS

メモリ管理ソフト技法j,

CQ

出版社,

1

9

9

0

年,

1

9

9

'

"

'

-

'

2

0

0

ベ ー ジ

[

5

]パソコン周辺機器・関連製品総覧j,日経バイト N.o

8

8

特別増刊号,

1

9

9

1

7

[6J

山崎福馬,

rMS-DOS

の道具箱j,

J

I

C

C

出版局,

1

9

8

9

年,

1

8

8

ページ [7] アイ・オー・データ機器,

r

I

O

S

-

1

0

S

T

D

リファレンスガイドj,

1

9

9

0

年,

3

0

ベー 、 ン

[

8

J NEC

rMS-DOS3 3

C

ユーザ、ーズリファレンスマニュアノレj,

1

9

9

0

[

9

J NEC

r

M

S

-

WINDOWS3 0

ユーザーズリファレンスマニュアルj,

1

9

9

1

(25)

付 録 リス卜 1 仮想86モードにするconfig.. sys buffers=l files=20 device 'fSYS干vems" d"rv / e /u /b10 /x device 干Sys干ludrv'fSys干mx1star5drv/v /b10 device 'fSYS干1u伽drv'fSYS干1135d“sys device 'fSYS干luゎdrv'fSys干pr1川 sYS/u she 11 干commandcom

j

p

/e:640 リスト2 リスト 1のconfigsysのときに使用するautoexec凶bat echo of f set sd=b"" set td=b: 干etc干envdrv if not"児rd1児==""set rd=児rd1児 if not"児rd%"=="" set td=児rd児 set tmp=見td%干 for %%i in (hd1 hd2 hd3 hd4 fd1 fd2 fd3 fd4 rdl)do set

%

1= prompt $e[36m$l$p$g$e[33m path %tmp%:児sd児干usr;%sdお干bin;%sd児干etc:児sd児干nor Iku帥 /1 addbuf 30 load autoland load crtshut 180

180 load ezkey -b3 -c7-干+ set comspec=児sd%干command" c" om set vzdef=児sd児干usr干vz干 set vzbak=干vzbak break on リヌト

3

リスト

l

とリスト

2

を使用したときのメモリマップ i

fi slze 3696 4144 581808 196608 8016 1184 160 496 owner/parameters config she 11 くfree> {VRAM} {config} autoland <free> CRT SHUTter ver2 1 (C)N1S addr PSP blks 1007 0008 1 10EF

l

O

EF 2

l

1

F4 1 AOOO FFFF 1 D001 FF02 3 D1F9 D204 2 D245 1 D250 D250 1

(26)

-306- 香川│大学経済論叢 380

D

2

7

0

D

2

7

0

D

2

D

A

F

F

F

F

D

A

3

9

h

a

n

d

l

e

p

a

g

e

1 1

6

8

0

e

z

k

e

y

-

b

3

-

c

7

-干+

1 3

0

1

7

6

{

b

u

f

f

e

r

s

*

2

9

}

1 2

3

6

4

8

f

r

e

e

>

s

i

z

e

n

a

m

e

(

E

M

S

f

r

a

m

e

:

C

O

O

O

h

)

f

r

e

e

1

1

6

1

8

5

6

k

t

o

t

a

l

1

1

6

1

8

5

6

k

リスト

4

何も組み込まない

c

o

n

fi

g

s

y

s

b

u

f

f

e

r

s

=

2

0

f

i

l

e

s

=

2

0

s

h

e

1

1

=

c

o

m

r

r

d

c

o

m/

p

リス卜

5

リスト

5

を使用したときのメモリマップ

a

d

d

r

P

S

P

b

l

k

s

s

i

z

e

o

w

n

e

r

/

p

a

r

a

m

e

t

e

r

s

1

0

0

9

0

0

0

8

1

5

9

4

1

5

9

4

1

6

8

0

σ b

/

・ 1 ‘ 1 ・

e

p f a , E E 易 ︽ ド ν n e I A U ' h u p r -p i v q u ノ¥ n 6 n δ 凋 4 00qLQO 氏 U 司 1 1 i n L n J q u qL 氏 U F h u -q d 1 i リスト

6 PC-9801VM

のための

C

O

N

F

I

G

.

S

Y

S

f

i

l

e

s

=

2

0

b

u

f

f

e

r

s

=

l

d

e

v

i

c

e

=

V

s

y

s

V

e

m

m

4

i

s

y

s

/

i

/

w

=

c

O

c

4

c

8

c

c

d

O

d

8

d

c

/

a

2

/

b

d

e

v

i

c

e

=

V

S

Y

S

干引

l

u

r

r

r

r

帥I

d

e

v

i

c

e

=

V

S

Y

S

干引

l

u

n

帥••

s

y

s

/

i

/

m

V

s

y

S

p

r

i

n

t

s

y

s

/

U

s

h

e

1

1

=

c

o

m

m

a

n

d

.

c

o

m/

p

/

e

'

5

1

2

一 一 P T i 町 A A 門 町 冷

c

n b t れ 4 L o u f u e v T P U S W A V A A u n ι w b o s n u -A U W A T -d w A 刷 , 引 U ' H A U 1 ノ n m A 凡 WA--ょ ・ l o ﹁ ノ = w A A U 弘 U P M O -d = I ¥ 且 川 、 う s , G W A ・ d u α h φ L h F b , パ u n u こ t , d s a J L f e 十 -f i 町 b m 、 , J c o o l v t , m 刷 A V S 唱 i I O U T 、3 " ・ d s c f d t " " f l u o b U + A C U i -= " U T @ R V W A U -一 一 一 一 1 A 町 h N D -A U ¥ T R " = , G A U φ A W S V A F 町 A " ' H S 1 1 W A A U Y ' W A 1 ム W A f t ¥ W A

。 。

= s ! v l d d ' = c z 1 2 q ' n I R E B t e = , d ・ 、 " わ -W A V A -V A P P 4 1 7 n r v a a v A " " ・ d m s e -F a n -一 -一 -一 一 一 p t o m , G

-A U e A u , d , d t t 町 A W A I O z -U T s t I 0 0 町 A p c v ' K ハH V e n n h μ 目 JHH4L+L+L+LI+L+L+ し 4 L E E ' 円 a u o u o l v ρ i v o し ' ? i F T 且 n U 9 u ρ し v o i w ρ しV 1 1 E U ¥ 且 s s s ・l ・ -P I p s s s

(27)

s

e

t

v

z

b

a

k

=

v

zb

a

k

s

e

t

t

m

p

=

t

d

見干

b

r

e

a

k

o

n

l

u

m

b

e

t

c

a

u

t

o

l

a

n

d

c

o

m

l

u

m

b

e

t

c

c

r

t

s

h

u

t 1

8

0

1

2

0

l

u

m

b

e

t

c

e

z

k

e

y-

b

2

b

e

x

/

a

9

9

b

e

x

/

a

7

I

k

u

m

b

/

1

リスト 6とリスト 7を使用したときのメモリマップ

円 、

U M 円 、l ノ 、 3 ノ 円 a u ' h u / K A U n u 市 B 晶 h H upu

s

-つ 山 -t r a -J f e e

-、

J e e m + L -V 1 l v a o し 一 n u t n u r 且 m -e a -f r i

a

/LI--e

つ 山 - 一 1 f 7 1 t 2 1 s a 一 v h A u * a A U 中 i'b*Mm p

U 1 I n f v n u u

I / / 一 g ﹀ l J I l 中 l a e ﹀ A 凡 a H n e ﹀ / { 、

- 一

l ' l e M m n u M n t l , I e

-円 、

U Y E t -e

U e 一 fιlaeAAMmI1041etoeile 一 V A n 一 n e f n R A A n R 4 L U I O + t 中 1 ・Kura 一 V A W 一 O 私 H 4 l v v n 民 P A U L u t I 町 円 unEZLus--VA O 一 C S く J i -i l a i t く ita 円 し e r t く e 一 V A

m-MB

a -M M M m e 一 6 6 4 8 2 2 0 0 4 4 4 6 0 0 8 n 一

E

U

Z 一 G u -P O A U 戸 h U F b R U Q U つ白白 u ワ ω Q υ o O Q u n u -一 2 0 4 6 1 i 1 2 氏 U 3 0 4 6 4 6 S 一 司 U A 官つ山氏 U 1 i p h u ワ s つ山氏 U 1 ょ 1 ょ っ 山 e 一 守 K L A ' K L A -Q u o d -A 1 i z 一つ山つ中 A 叫 A n o 一 F D T i -q d つ d Q U 1 ょ S 一 n u d n U S 一 一 1 2 L 民 A -1 -q L t i 噌i t i 噌i 1 i ' i 可i 1 i ' i 可i 1 1 噌i 1 i 一 h υ 一 e 一 つ 白 つ ﹄ 凋 斗 A P O σ 。 一 円 ノ 臼 円 ノ 臼 一 口 6 n H U n F t i A 凡 1 1 つ 白 n F 噌i n L ワ 臼 n D a 一 唱 I τ i D l 一 n U 円 し p a n u A a n u n u F a n u A より円し P 一

。 、

u

U n u n F n u n u n δ 噌i p A A x u n δ n 6 n 6 D 1 -n u -n r n u n u n u n u p a n υ n u n u n υ e 一 1 i つ ム e ' l t -一 ρ し 内 a f -p a p u n D n u -A 円 n u q u n u n u -9 “ q L 円 し n u , d -I t , d 一 F -p u p u n u n u A A Q U Q u p h d n u n U A 官 氏 U 円 し n u n -β I 0 ・ A U 一 P A n U 噌1 n u n u n u -噌 i n d 凋 4 n 6 0 6 n δ n 6 n D a -a 一 n u -1 i A 凡 n u n u n u n u n u n u n u n u n u n u n u ' H 一 リスト 8 f i t i t h -1 1 1 1 l i l i -i 1 1 i B i s -i i

EXT TPA

のための

C

O

N

F

I

G

,SYS

f

i

l

e

s

=

2

0

b

u

f

f

e

r

s

=

l

d

e

v

i

c

e

=

V

s

y

s

e

m

m

4

j

"s

y

s

/

i

/

w

=

c

O

c

4

c

8

c

c

d

O

d

4

d

8

d

c

/

a

2

d

e

v

i

c

e

=

V

s

y

s

r

a

m

d

s

l

ι

S

y

s/

0

/

0

/

B

s

h

e

l

l

=

c

o

m

m

a

n

d

c

o

m/

p

/

e

:

5

1

2

リスト

9

(28)

-308- 香 川 大 学 経 済 論 叢 382 リスト

1

0

リスト

9

のための

AUTOEXECBAT

E

C

H

O

O

F

F

干etc干envdrv set sd=a: set td=a:: set rd=見rd1児 if not"児hd1%"=="" set sd=児hd1児 if not"児rd%"=="" set td=出rd児 for児児p in (hd1 fd1 fd2 rd1) do set児児p= path見td%干;%sd児!fus r 児;sd児干bin;%sd%干etc set prompt=$!$p$g set comspec=児sd児干command引com set vzdef=児sd児干usr干 set vzbak=干vz_bak set tmp=児td%干 ext_tpa addbuf 20 loaddev"干sys干print“sys/u load干etc!fautoland load干etc干crtshut 180,120 load干etc干ezkey-b2 break on リスト

1

1

リスト

9

とリスト10を使用したときのメモリマップ

U 一 町 円

22 ノ 一

O

h

-/ k n u n u

1

O

F し

s

2

・ r 且 -v 且 ρ し v e -E 1 ノ

m

4 L 一

v

v

a

o u 一 nuTA m 一 沼 山 け

'

e

-f

a -E C も f k

I

-t

2

1

s

a

d

T

b

*

d

M

P 一 、 ト Jnnu 一 I n p u / / 一 g ﹀ 1 I T l a H n e ﹀ 1 f a ﹀ / k e M m M 円 1lquvdSIe--1le-nu e-ti--eA 凡 T l o e F I e 円 b o e 一 V A A 凡 n -n e I R R t T k u T A t -一

x

p

w

一 O 守b n I U V P A U D n u Z L U P I 円 b u r l -V A 中 l o 一 C S ︿ f1itarue--、 く f i a く e 一 V A 一 m 一 M m T A a -M V A e 一 史 U 氏 U

R U つ b A 品 氏 u n u R U R U R u n u つ ム n 一 E u p u

z-8170529871969

一 つ 山 口 U 凋 叫 円 。 噌 i n u n 告 白 U 可In 叫 n U 噌i 1 i s -n 叫 a q 唱i n h u R U 噌ii n u n 叫 noe 一 L 臥 L A L 比 0 6 n M 1 i 可i z 一 q L o o n δ 一

5

1

i

3

4

焔 S 一 ︿ ‘ QU

1 1 -L 民A -1 -n L ' i 可ii t i 噌 i t i t i -t i 噌1 1 1 ム 一

e

一 つ 山 q d q d b -g 一

2

一 凸 6 円 し 円 円 且 噌 i A ‘ p h U F h u P A P A A q a -ム P A 一 nunUPAnUA 叫凸 XUAAPAPAAAP 一 q u -n u -n r n U 1 i ' i 可i p A p z 1 ム

P

0

1

F

D

D

D

D

F

F

D

K

1

2

凹 一

FC901455F401cd

一 I A u -P A n u n u n u n u n q n x U A 円 U n H u n u n u n u n 一 , d 一 P 且 1 ょ q L n u n u -1 a 1 i n L n b 司 1000oa-a-nU 唱i 可 iA 八 n u n u n u n u n u n u n υ n u n u ' n 一

(29)

total 126 2016k

リスト

12 ParadoxからDOSに抜けたときのメモリマップ addr PSP blks size owner/parameters 1007 0008 1 3696 config 10EF 10EF 2 4144 shell 11F4 11F4 1 12688 AS$VJE 150E 150E 2 92000 vz-z 2B86 2B86 1 1120 paradoxr 2BCD 2BCD 2 3744 command 2CB9 1 471888 <free> 9FEF 2B86 1 256 paradoxr (env) AOOO FFFF 1 196608 {VRAM} D001 FF02 3 8016 D1F9 FFFF 1 30176 D958 D963 2 1184 autoland D9A4 1 160 <free> D9AF D9AF 1 496 CRT SHUTter ver2..1 (C)N1S D9CF D9CF 1 1680 巴zkey-b3

-

c

7

-干+ DA3910EF 1 48 shell DA3D 2B86 1 240 paradoxr DA4D 2BCD 1 256 command (env) DA5E 1 23056 くfree> handle page size name (EMS frame:COOOh) 1 4 64k VJE-MAIN 2 4 64k VJE-LIB 3 20 320k VZ 4 4 64k 5 84 1344k free 0 Ok total 116 1856k

1

山 13 WI叩削酬O側W胞3..0のためMの

ω

伽卿州N附附F引I叩G訂 buffers 10 files

=

30 device 干windows干himem.sys device 干windows1fsmartdrv..sys 2048 min shell 干command..com a..干/p/e:640

(30)

-310ー 香川大学経済論叢 384

リスト

1

3 Windows

から

L

o

t

u

s

1

2

3

を起動するバッチプログラム

。 。

命 、 m w 命 、 ψ v v ρ し p i v , n u -w A z n u n y m l a t s マ t w m o

命 み L 瓜 ﹀ 命 品

"

@ @ 4 L A U V 気 u n H U O L V V U 4 a n U A u e w A n u w m ・ d A u = p wAS+bm p 町 A//t m = w m & L 2 G 噌1 ﹀ W A / / J = ﹀ ﹀ S F b , f ' J o b s v d v d y S 1 ム S C M

リ =

M a u -n u e 7 / / 7 C M - b a

ν a n u n v A u n v n U + L P ' 1 4 1 m a u a ¥ A 誕 a 州 ¥ 且 府 内 w n b ・ ' J n b v d v t l v d e A W s s a s s U T U T P O U T A る W A V A r i 町 A

J U J u -1 d z q v o a s s ¥ aseo@ 町 刈 W A W 町 h N A U 均 一 一 一 一 s = v A V e e -e p e ccuTcmzG ・I ・ -町 A-1-wA flVVAUV 町品川 D -p y -o u o i v q u o i w m 山 内 ベ U 0 ・ dJU 町 A , d v t q L = I 町品川 1 i o o o g b o , G 町 A a u ¥ 且 h u ‘n ' n / f ' n A u t l , G o q J c e c a C J u e S & L J U 内 L e e ρ M e a -d 町 A ワ 1C1i

参照

関連したドキュメント

東北大学大学院医学系研究科の運動学分野門間陽樹講師、早稲田大学の川上

200 インチのハイビジョンシステムを備えたハ イビジョン映像シアターやイベントホール,会 議室など用途に合わせて様々に活用できる施設

関谷 直也 東京大学大学院情報学環総合防災情報研究センター准教授 小宮山 庄一 危機管理室⻑. 岩田 直子

[r]

˜™Dには、'方の MOSFET で接温fが 昇すると、 PTC が‘で R DS がきくなり MOSFET を 流れる流が減šします。この結果、 MOSFET