csystem

C言語システムプログラミング
クラス分け

学籍番号を3で割った余りが、

0の人:冬爪クラス(208教室)

1の人:紫合クラス(302教室)

2の人:酒井クラス(207教室)
C言語システムプログラミング
(紫合クラス)
http://software.ed.sie.dendai.ac.jp/csystem/
情報環境学部 紫合 治
mailto:[email protected]
担当 紫合 (302教室)

JK科 教授
専門: ソフトウェア工学

他の担当科目



計算機数学(3セメスター向け)
ソフトウェア工学(6セメスター向け)
Cについて

1969年,AT&Tベル研のトンプソンにより
Unixが産声をあげました.Unixは,ファイ
ル入出力を基本としたI/Oを持つマルチタ
スクOSで,現在でも広く利用されています
(Solaris,AIX等).当初のUnixの実装は,
アセンブラで行われていました.
Multics (破綻) → Unics → Unix
Cについて

アセンブラの実装では,機能のエンハンス
等に支障が生じてきます.そこでリッチー
は,1971年 にUnixをCで書き直しました.
本来,CはOSを実装するために作られた
言語です.
Cについて

Unixを開発するために生まれたCですが,
基本ステートメントの数は多くありません.
OSの実装という,低水準 (ハードウェアに
近いという意味.程度が低いという意味で
はない.) の処理を行うためです.
C言語 ← 高級言語と低級言語の中間
高級言語 : Java,Pascal,BASIC,COBOL,FORTRAN…….
低級言語 : 機械語,アセンブラ
Cについて


また,I/Oの入出力を行うステートメントは,
用意されていません.
I/Oの入出力等の機能は,関数により拡張
されます. 例えば,Unixのアプリケーショ
ン開発にも,システムコールを発行するた
めのCによる関数ライブラリが用いられま
す.
Cについて

また,Unix互換OSとしてLinuxがあります.
Linuxはオープンソースのカーネルを持つ
フリーのOSであり,サーバ,組み込み等の
多くの分野で利用されています.
Linux →
UnixとAPI(システムコール)レベルの互換性
→ 同じソースコードの利用
Cについて

電機メーカーでは,家電製品の組み込み
システムの開発を行うことが多いと思われ
ます.開発に用いられる組み込みOSの主
流は,Linuxに移行しつつあります.
組み込みプログラミングのトレンド:
μITRON→Linux
アセンブラ→C,(Java)
Cについて

現在使われている多くの言語の元はC
C++:オブジェクト指向言語のはしり
 C#:MicroSoft社の標準言語(Javaに類似)
 Java:汎用のオブジェクト指向言語
 ObjectiveC:iPhoneの標準言語
 Ruby、Python等:スクリプト言語


現在も多く使われている(組込み等)
講義について

計算機環境を効率的に活用するために,
C言語を用いたOSのシステムコールプロ
グラミング技術の習得を目標とする.
講義について




http://software.ed.sie.dendai.ac.jp/
csystem/ に講義資料を提示します.
普段の演習課題,中間テスト及び最終
課題で評価します.(昨年は,中間テス
トの結果により,追試を行いました.)
プログラミング環境は,Cygwinを使用
します.次回インストールします.
講義について



前半ではC言語による基本プログラミング技法に
ついて実施し,基本ステートメント,関数について
習得する (中間テストの範囲).
後半では,ポインタ,構造体,線形リストによる
データ構造の構築法について習得する.
また,UNIXによるシステムコールプログラミング
技法について実施し,ファイル処理,並行プロセ
ス,プロセス間通信,シグナル等についても習得
する.
講義について






環境構築
演算,入出力
制御構造
配列
関数
中間テスト





ポインタ
データ構造
ファイル
ソケット
並行プロセス
期末テストは実施せず,
最終課題を課します.
講義について

別途,講義資料を用意しますが,なるべく教科書
を用意して下さい.用意しない場合は,課題や試
験で不利になる場合があります.講義の順序は,
教科書通りとは限りません.
カーニハン / リッチー著,
石田晴久訳「プログラミング言語C」,
共立出版,ISBN4-320-02692-6
学習サポートセンターの活用




場所: 学習サポートセンター
教育棟1階入口左
日時: 毎週 水曜日と金曜日
16:30~18:10
講師: 佐野香先生
内容: C言語の個別指導
初心者向けの徹底指導などもあり
講義の時間配分

以下の時間配分での実施を検討しています
ニ限目
演習/課題
時間は綺麗に切れるとは
限りません
一限目
一限目
火曜日
木曜日
講義 (座学メイン)
C-learningの講義ID



紫合クラス (302教室)
講義ID:8155993060
今回,ログイン出来ない場合でも,次回に説明致
します.
C-learningについて

C-learningというシステムを用いて課題提出を行
ってもらいます.URLは以下になります.資料にリ
ンクがあります.


ログインID


メールアドレス (例 [email protected])
パスワード



https://sie.c-learning.jp/sp/
忘れた場合は再発行して下さい.
初めての場合は,IDの始めの4文字+生年月日の月
日 (7月7日なら 13jk0707)
講義ID:8155993060
次回の予定


Cygwinのインストールをやります.
ネットワーク経由で行うので,LANケーブル
を使用して下さい.