到達目標
学習目標:Unixシステムプログラミングの基本概念を学ぶ。
到達目標:
1. プロセスの生成やコマンドの実行の仕組みを理解し、取り扱うことができる。
2. ファイルとディレクトリの仕組みを理解し、取り扱うことができる。
3. 標準入出力とパイプラインについて仕組みを理解し、取り扱うことができる。
4. シグナル処理について理解し、プロセスを管理できる。
5. ジョブ制御の概念について理解し、プロセス間通信を使用できる。
ルーブリック
| 優 | 良 | 可 | 不可 |
評価項目1 | プロセスの生成やコマンドの実行の仕組みを理解し、適切に取り扱うことができる。 | プロセスの生成やコマンドの実行の仕組みを理解し、取り扱うことができる。 | プロセスの生成やコマンドの実行の仕組みを理解している。 | 左記に達していない。 |
評価項目2 | ファイルとディレクトリの仕組みを理解し、適切に取り扱うことができる。 | ファイルとディレクトリの仕組みを理解し、取り扱うことができる。 | ファイルとディレクトリの仕組みを理解している。 | 左記に達していない。 |
評価項目3 | 標準入出力とパイプラインについて仕組みを理解し、適切に取り扱うことができる。 | 標準入出力とパイプラインについて仕組みを理解し、取り扱うことができる。 | 標準入出力とパイプラインについて仕組みを理解している。 | 左記に達していない。 |
評価項目4 | シグナル処理について理解し、適切にプロセスを管理できる。 | シグナル処理について理解し、プロセスを管理できる。 | シグナル処理について理解している。 | 左記に達していない。 |
評価項目5 | ジョブ制御の概念について理解し、適切にプロセス間通信を使用できる。 | ジョブ制御の概念について理解し、プロセス間通信を使用できる。 | ジョブ制御の概念について理解している。 | 左記に達していない。 |
学科の到達目標項目との関係
教育方法等
概要:
一般・専門の別:専門 学習の分野:情報システム・プログラミング・ネットワーク
基礎となる学問分野:情報科学、情報工学およびその関連分野/計算機システム関連
学習教育目標との関連:本科目は総合理工学科学習教育到達目標は「③基盤となる専門性の深化」に相当する科目である。
技術者教育プログラムとの関連:本科目が主体とする学習・教育到達目標は「(A)技術に関する基礎知識の深化、A-2:「電気・電子」、「情報・制御」に関する専門技術分野の地市区を修得し、説明できること」である。
授業の概要:オペレーティングシステムの構築に使用されるC言語を用いて、UNIXシステムプログラミングの基本について取り上げる。
授業の進め方・方法:
授業の方法:本科目は時間割の都合上、前期2単位時間で実施される。スライドの提示や板書により解説を行う。また理解が深まるよう、関連した演習を課す。
成績評価方法:2回の定期試験の平均(70%),演習課題(30%)。原則として再試験は実施しない。定期試験には資料の持ち込みを許可する。
注意点:
履修上の注意:本科目は,学年の課程修了のために履修(欠課時間数が所定授業時間数の3分の1以下)が必須である。また,本科目は「授業時間外の学修を必要とする科目」である。当該授業時間と授業時間外の学修を合わせて,1単位あたり45時間の学修が必要である。授業時間外の学修については,担当教員の指示に従うこと。
履修のアドバイス:
・事前に行う準備学習として,基礎科目となるプログラミング基礎,アルゴリズムとデータ構造,プログラミング応用の内容を復習しておくこと。
・これまで習ったUNIXの基礎について十分復習をしておくこと。
基礎科目:プログラミング基礎(2年),アルゴリズムとデータ構造(3),プログラミング応用(4)
関連科目:制御プログラミング(5年)
受講上のアドバイス:オペレーティングシステムの基礎と能力について解説しながら授業を進める。また各機能の使用方法について例題を挙げて説明するので、積極的にプログラミングに取り組むこと。授業の開始時に出席を確認し,授業開始から 25 分以内に入室すれば遅刻とし,遅刻3回で1欠課とする。
授業の属性・履修上の区分
授業計画
|
|
週 |
授業内容 |
週ごとの到達目標 |
後期 |
3rdQ |
1週 |
ガイダンス、Unixの基礎 |
本授業の到達目標およびUnixの基本的コマンドが使用できる。
|
2週 |
Cプログラミングの基礎(変数、関数、構文) |
Cプログラミングの基礎(変数、関数、構文)を説明できる。
|
3週 |
Cプログラミングの基礎(演算子、ポインタ、構造体) |
Cプログラミングの基礎(演算子、ポインタ、構造体)について説明できる。
|
4週 |
Cプログラミングの基礎(ライブラリ関数、プロトタイプ宣言、プリプロセッサ) |
Cプログラミングの基礎(ライブラリ関数、プロトタイプ宣言、プリプロセッサ)について説明できる。
|
5週 |
プロセスの生成とコマンドの実行 |
プロセスの生成とコマンドの実行について説明できる。
|
6週 |
ファイルシステム |
ファイルシステムについて説明できる。
|
7週 |
標準入出力とパイプライン |
標準入出力とパイプラインについて説明できる。
|
8週 |
前期中間試験 |
|
4thQ |
9週 |
前期中間試験の返却と解説 |
|
10週 |
プロセスとシグナル |
プロセスとシグナルについて説明できる。
|
11週 |
共有メモリを利用したプロセス間通信 |
共有メモリを利用したプロセス間通信について説明できる。
|
12週 |
メッセージを利用したプロセス間通信 |
メッセージを利用したプロセス間通信について説明できる。
|
13週 |
セマフォを利用したプロセス間通信 |
セマフォを利用したプロセス間通信について説明できる。
|
14週 |
スレッド |
スレッドについて説明できる。
|
15週 |
前期末試験 |
|
16週 |
前期末試験の返却と解説 |
|
モデルコアカリキュラムの学習内容と到達目標
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
専門的能力 | 分野別の専門工学 | 情報系分野 | プログラミング | 要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを設計できる。 | 4 | |
要求仕様に従って、いずれかの手法により動作するプログラムを設計することができる。 | 4 | |
要求仕様に従って、いずれかの手法により動作するプログラムを実装することができる。 | 4 | |
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを実装できる。 | 4 | |
システムプログラム | コンピュータシステムにおけるオペレーティングシステムの位置づけを説明できる。 | 4 | |
プロセス管理やスケジューリングなどCPUの仮想化について説明できる。 | 4 | |
排他制御の基本的な考え方について説明できる。 | 4 | |
記憶管理の基本的な考え方について説明できる。 | 4 | |
評価割合
| 試験 | 発表 | 相互評価 | 態度 | ポートフォリオ | 演習課題 | 合計 |
総合評価割合 | 70 | 0 | 0 | 0 | 0 | 30 | 100 |
基礎的能力 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
専門的能力 | 70 | 0 | 0 | 0 | 0 | 30 | 100 |
分野横断的能力 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |