授業科目: システムプログラム (2単位) System Program |
対象:3・4学年 | |
---|---|---|
第1学期 | 曜・時:月2・3 | 担当教官: 新城靖、加藤和彦 |
週別授業計画
教材:
プリントを配布する。WWWで教材を提示する。
概要:
UnixのシステムコールやJavaのAPIを主な題材としてシステムプログラ ミング、ネットワーク・プログラミング、および、オブジェクト指向プログラ ミングについて講義する。計算機を用いた実習を課す。
学習・教育目標:
授業計画:
週 | 講義内容/理解すべき項目 |
---|---|
1〜2 | プロセスの概念、ライブラリとシステムコール
標準入出力、文字列操作、ファイル記述子、メモリマップ、時刻の扱い |
3〜4 | ネットワーク・プログラミング
TCP/IPの概念、ソケットAPI、プロトコルスタック、クライアントとサーバ |
5 | WWWプログラミングとアクセス制御
ファイルの属性、アクセス権、CGIの仕組み、Basic認証、IPアドレスによる制御 |
6 | 並行プログラミング基礎
排他制御問題,セマフォ,条件付きクリティカルリージョン,モニタ |
7 | Java言語における並行プログラミング機能
スレッド,同期型メソッド/ブロック,wait/notify/notifyAll |
8 | 並行プログラミングのデザインパターン1
単一スレッド実行,条件付き同期,生産者-消費者,リーダ-ライタ型ロック |
9 | 並行プログラミングのデザインパターン2
メッセージ毎スレッド,ワーカースレッド,Future,アクティブオブジェクト |
10 | スクリプト・プログラミング
Python言語:基本データ型,リスト型,辞書型,関数,入出力,オブジェクト指向,並行プログラミング |
参考書等:
予備知識・前提条件:
データ構造とアルゴリズムに関する知識があることを前提とする。また、ソフトウェア構成論や機械語序論を受講していることが望ましい。
オフィスアワー:
新城:木4・5 3F829/3E302
加藤:月4・5 総合研究B棟B905/B923
成績評価:
レポートにより評価を行う。基準を満たさなかったレポートは、再提出を求めることがある。毎回出席をとり、最終的な評価の際に考慮に入れる。
講義のホームページ:
http://www.coins.tsukuba.ac.jp/~yas/coins/syspro-2004/
教官メールアドレス: