オペレーティングシステム 作成 T21R003 荏原 寛太 目的 オペレーティングシステム(OS)を実際に 作ってみて、どのようにしてコンピュー タが動いているかを理解する。 C言語とアセンブリ言語を用いて作成する。 プログラミング技術の上達を目的とする。 日本語表示への対応 このOSではtypeコマンドが使用できる。 typeコマンドとは、ファイル名を指定して実行すると、 そのファイルの内容を表示してくれるものである。 日本語に対応していな いので、日本語で書か れたテキストファイル は文字化けする JISの規格では、日本語の文字コードは点、区、 面という単位で定義されている。一つの点が一 文字に対応しており、一つの区には94の点が、 一つの面には94の区がある。図のような 94 * 94の二次元的な表である 区点を使って日本語を表示するために、まず 1区から47区までの文字のデータが含まれてい るフォントデータを用意して(容量の都合上47区 まで)。これを、OSの起動と同時にメモリ上に展 開しておく。 シフトJISの文字コードでは、1バイト目に区番号 が、2バイト目に点番号が書いてあるので、これ をそれぞれ取り出す。この区、点番号からフォ ントデータが格納されているメモリ番地を計算 するには、以下の式を使う。 番地 = (区番号-1) × 点の個数(94) + (点番号-1) 例えば、2区13点の文字データがある番地 は 1 * 94 + 12 = 106番地となる。 アプリケーションの作成 次に、四則演算・シフト演算・ビット演算が可 能なコンソールで動作する電卓を作成した。 インベーダゲーム テキストビューア まとめ プログラムを作っていく過程で、スタック・ キューなどのデータ構造を理解した。 キーボード・マウスの割り込みハンドラ作成 メモリのセグメント方式による管理 ファイル操作・ウィンドウ作成などの各種API の作成を行った。
© Copyright 2024 ExpyDoc