山梨大学電子シラバス>検索結果一覧>授業データ



授業科目名
担当教官
計算論
岩沼 宏治
時間割番号
単位数
コース
履修年次
期別
曜日
時限
263701 2 G 3 前期 IV
[概要と目標]
 今日の殆どのコンピュータはインターネットに接続している。程度や種類の差こそ有れ、これらのコンピュータは相互に通信し、何らかの分散協調作業をおこなう。本講義では、これらの分散協調的なコンピューティングに焦点をあて、その基礎原理と、実際の技術について学ぶことを目的としている。各講義の前半は座学形式で基礎的知識を習得し、後半はKKIを用いて「ネットワーク・プログラミング」と呼ばれる、通信を伴うシステム・プログラミングの基礎について演習を行う.より具体的には、
  ● インタネットで接続された2つのコンピュータ間の簡単なチャットプログラム。ならびに
  ● ネットワーク対戦形式のボードゲーム
の開発を行う.
[必要知識・準備]
アルゴリズムとデータ構造 I と II、 および C言語のプログラミング技術
[評価基準]
 最終的には、ある基準・仕様を満たすネットワーク対戦形式ゲームを、各人に開発してもらい、提出してもらう。試験官の面前で提出プログラムを make、操作、特徴説明を行ってもらい、次に口頭試問を実施し、最終評価を行う.また講義の進行に合わせて、適宜レポートを課する.
 提出期限を越えたレポートは受理しない.「限られた時間内に達成できた成果」を重視するからである。
[教科書]
  1. N.Matthew&R.Stones著,葛西重夫訳, Linuxプログラミング: 例題で学ぶUNIXプログラミング環境のすべて, ソフトバンク パブリッシング, ISBN:4797308192
    (KKIのWeb上に講義演習資料を開示する.)
[参考書]
[講義項目]
 1.インタネットの基礎
 2.ネットワーク上のプロセス間通信:ソケットの概念
 3.ソケットプログラムその1:簡単なチャットプログラム
 4.対1通信用のセットアップライブラリの作成
 5.端末画面制御用ライブラリ CURSES
 6.1対1非同期通信:追跡ゲームの構築その1
 7.追跡ゲームの改良その1:分散データの一貫性保持その他
 8.追跡ゲームの改良その2:多重コネクション−待ち行列の利用
 9.分散ソフトウエアの構造と開発方法その1
10.分散ソフトウエアの構造と開発方法その2
 
補習1 割り込みとシグナル
補習2 並行プロセスの生成