C言語システムプログラミング C Language System Programming http://software.ed.sie.dendai.ac.jp/csystem/ 情報環境学部 紫合 治 [email protected] 担当 紫合 (302教室) JK科 教授 Professor 専門: ソフトウェア工学 Software engineering 他の担当科目 ソフトウェア工学 計算機数学 等 Cについて What is 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) 講義について About this course 計算機環境を効率的に活用するために, C言語を用いたOSのシステムコールプロ グラミング技術の習得を目標とする. Student is required to make C programs with OS system calls. 講義について http://software.ed.sie.dendai.ac.jp/ csystem/ に講義資料を提示します. 普段の演習課題,中間テスト及び最終 課題で評価します.(昨年は,中間テス トの結果により,追試を行いました.) プログラミング環境は,Cygwinを使用 します.次回インストールします. 講義について 前半ではC言語による基本プログラミング技法に ついて実施し,基本ステートメント,関数について 習得する (中間テストの範囲). 後半では,ポインタ,構造体,線形リストによる データ構造の構築法について習得する. また,UNIXによるシステムコールプログラミング 技法について実施し,ファイル処理,並行プロセ ス,プロセス間通信,シグナル等についても習得 する. 講義について 環境構築 Install 演算,入出力 I/O, operators 制御構造 Control structures 配列 Array 関数 Function 中間テスト Exam ポインタ Pointer データ構造 Struct ファイル File ソケット Socket 並行プロセス Concurrent processes 期末テストは実施せず, 最終課題を課します. 講義について 別途,講義資料を用意しますが,なるべく教科書 を用意して下さい.用意しない場合は,課題や試 験で不利になる場合があります.講義の順序は, 教科書通りとは限りません. カーニハン / リッチー著, 石田晴久訳「プログラミング言語C」, 共立出版,ISBN4-320-02692-6 講義の時間配分 以下の時間配分での実施を検討しています ニ限目 Second hour 演習/課題 Exercise 時間は綺麗に切れるとは 限りません 一限目 First hour 火曜日 Tuesday 一限目 First hour 木曜日 Thursday 講義 (座学メイン) Lecture C-learningの講義ID 紫合クラス (302教室) 講義ID:8315660319 今回,ログイン出来ない場合でも,次回に説明致 します. C-learningについて C-learningというシステムを用いて課題提出を行 ってもらいます.URLは以下になります.資料にリ ンクがあります. ログインID メールアドレス (例 [email protected]) パスワード https://sie.c-learning.jp/sp/ 忘れた場合は再発行して下さい. 初めての場合は,IDの始めの4文字+生年月日の月 日 (7月27日なら 11jk0727) 講義ID:8315660319 今週のこれからの予定 次回Cygwinのインストールをやります. We install Cygwin in this Thursday. ネットワーク経由で行うので,LANケーブル を使用して下さい. Bring LAN cable.
© Copyright 2024 ExpyDoc