オペレーティングシステム

1. URL

  講義ページ (単一ページ版)
  http://www.lsnl.jp/l/os

  講義ページ (複数ページ版 (モバイル端末向け))
  http://www.lsnl.jp/~ohsaki/lecture/os/2020/toc.html

  受講者専用ページのパスワード (以下のページに書かれています)
  http://ist.ksc.kwansei.ac.jp/~ohsaki/lecture/os/2020/

  レポート課題提出フォーム (パスワードが必要です)
  http://www.lsnl.jp/cgi-bin/lecture/os-report

  質問送信フォーム (パスワードが必要です)
  http://www.lsnl.jp/cgi-bin/lecture/os-qa

  講義ビデオ (パスワードが必要です)
  http://www.lsnl.jp/video/os/2020/

  関西学院大学 オンライン授業 関連情報 Wiki
  http://kg-ict.info/wiki/

2. 担当教員

    (105KB)
  大崎 博之
  関西学院大学 理工学部 情報科学科
  E-mail: os-staff[atmark]lsnl.jp
    (110KB)
  オフィスアワー
  毎週水曜日 1:30pm-3:00pm @ 理工学部 IV 号館 教授室44
  (Zoom を使ったオンライン面談も可能です)

3. 講義目的

コンピュータの基本ソフトウェアであるオペレーティングシステムの概念と、その原理 を学ぶ。オペレーティングシステムの歴史、プロセスとスレッド、デッドロック、メモ リ管理、入出力、ファイルシステムなど基本的な概念に加えて、マルチメディア処理、 マルチプロセッサシステム、セキュリティなど最近のトピックについても学ぶ。

4. 到達目標

オペレーティングシステムの基本的な概念が理解できるようになる。

5. 授業方法

講義形式で行うが、単に、「教科書の内容を抜粋して説明する」という講義は行わない。

まず、教科書のエッセンスを説明する。その後、各回のトピックが、現在広く利用され ているオペレーティングシステム (Debian GNU/Linux) にどのように実現されている (もしくは実現されていない) かを解説する。オペレーティングシステムを、学術的な 観点と、実践的な観点の両方から学ぶため、非常に興味を持って取り組めるであろう。

6. 教科書

Andrew S. Tanenbaum 『モダンオペレーティングシステム第 2 版』 (ピアソン・エデュ ケーション・ジャパン、2004 年)

→ 絶版のため参考図書扱いとする

7. 成績評価

授業中試験 40 %、平常リポート 60% → 平常リポート 100% (変更あり)

8. スケジュール

  2020 年度 オペレーティングシステム講義スケジュール (予定)
  
  2020/ 4/ 8 休講
  2020/ 4/15 休講
  2020/ 4/22 オペレーティングシステムの概要 
  2020/ 4/29 CPU の原理 
  2020/ 5/ 6 プロセスとスレッド ※
  2020/ 5/13 プロセス間通信               
  2020/ 5/20 スケジューリング              
  2020/ 5/27 スケジューリング              
  2020/ 6/ 3 OS の実例
  2020/ 6/10 メモリ管理(1)              
  2020/ 6/17 メモリ管理(2)              
  2020/ 6/24 入出力 (外部 I/O)
  2020/ 7/ 1 入出力 (ユーザインターフェース)
  2020/ 7/ 8 ファイルシステム)             
  2020/ 7/15 マルチメディア処理            

9. 大学の講義・演習とは

  教育基本法
  http://www.mext.go.jp/b_menu/houan/an/06042712/003.htm

  (学校教育)
  第六条の 2
  前項の学校においては、教育の目標が達成されるよう、教育を受ける者の心身
  の発達に応じて、体系的な教育が組織的に行われなければならない。この場合
  において、教育を受ける者が、学校生活を営む上で必要な規律を重んずるとと
  もに、自ら進んで学習に取り組む意欲を高めることを重視して行われなければ
  ならない。
  
  (大学)
  第七条
  大学は、学術の中心として、高い教養と専門的能力を培うとともに、深く真理
  を探究して新たな知見を創造し、これらの成果を広く社会に提供することによ
  り、社会の発展に寄与するものとする。

→ 必要な規律を重んずること、自ら進んで学習に取り組むことが大切。大学は、専門 的能力を培うとともに、深く真理を探究する場所である。

  大学設置基準
  http://www.mext.go.jp/b_menu/shingi/chousa/koutou/053/gijiroku/__icsFiles/afieldfile/2012/10/30/1325943_02_3_1.pdf
  
  (単位)
  第二十一条の 2
  前項の単位数を定めるに当たつては、一単位の授業科目を四十五時間の学修を
  必要とする内容をもつて構成することを標準とし、授業の方法に応じ、当該授
  業による教育効果、授業時間外に必要な学修等を考慮して、次の基準により単
  位数を計算するものとする。
  一 講義及び演習については、十五時間から三十時間までの範囲で大学が定める
  時間の授業をもつて一単位とする。
  二 実験、実習及び実技については、三十時間から四十五時間までの範囲で大学
  が定める時間の授業をもつて一単位とする。ただし、芸術等の分野における個
  人指導による実技の授業については、大学が定める時間の授業をもつて一単位
  とすることができる。

→ 2 単位の講義・演習では、90 時間の学修を必要とするので、67.5 時間の予習・復 習が必要になる。

10. 教育方針

  × 単位を取るコツを教える
  ○ 知的好奇心を刺激する

  × ツールの使い方を教える
  ○ 概念を教える

  × 知識を伝える
  ○ 自分で学ぶ方法を教える

  × 教員が主役
  ○ 受講生が主役

  本当にこの授業を受講したいか? 自分自身で考えて決めてほしい。
  
  受講する場合
  → すべての授業に遅刻せず出席し、主体的に学習する
     学習共同体なので、他の人に対しても責任を負う
     出席するに値する授業になっていなければ大崎に知らせる

11. オペレーティングシステムの概要

到達目標

1. オペレーティングシステムとは何かを他人に説明できるようになる。

2. 「拡張マシンとしてのオペレーティングシステム」および「リソースマネー ジャとしてのオペレーティングシステム」という二つの観点を理解できるよう になる。

ミニテスト 2020/04/22

講義ビデオを視聴した後、以下のミニテストのフォームから回答せよ。各設問に対する 回答は簡潔 (一行程度) でよい。

  オペレーティングシステム ミニテスト 2020/04/22
  https://forms.office.com/Pages/ResponsePage.aspx?id=MATZn9TuPk6aWibNlNnIswnrqKJs1rhIjHXZ6ebIPnZURTVMVlBKTlpSNTRXU0k2OUVPNlVYNUlKWS4u

Office 365 のアカウント → 関西学院システム利用者 ID での認証 (例: abc12345@nuc.kwansei.ac.jp で認証 → abc12345 で認証) が必要です。

提出期限: 次回の講義日の前日の正午 (通常、火曜日の 12:00:00)。

レポート課題 2020/04/22

設問 1 (60 分): 講義内容を復習し、「到達目標」まで到達できていない (十分に理解 できていない) と考える点について、信頼できる資料を用いて学び、理解を深めよ。学 習に用いた資料、理解した内容を報告せよ。ただし、資料として、Wikipedia 日本語版 および個人ブログを用いることは禁ずる。

設問 2: なし

設問 3: 自由記述。感想、教員へのメッセージ、記録用のメモなど自由に記述して構わ ない。空白でも良い。ただし、質問は質問フォームから送ること。

提出方法: 「レポート課題提出フォーム」から送信せよ。レポートが再提出された場合 は、新しいほうを採点対象とする。

提出期限: 次回の講義日の前日の正午 (通常、火曜日の 12:00:00)。

注意事項: 提出されたレポートは、匿名にした上で、他の受講者および来年度以降に大 崎が担当する講義の受講者に閲覧させる場合がある。他の受講者に閲覧されて困る内容 はレポートに含めないこと。

質問・要望・コメント 2020/04/22

質問・要望・コメントのいずれかを送信せよ。質問は、「講義内容や、情報科学、コン ピュータ、ネットワーク、大学生活、キャリア設計等に関するもの」を、要望・コメン トは「講義内容や講義手法に関するもの」とする。

対象者: 学生番号末尾が 0 または 5 の人は必須。それ以外の人は任意とする。

提出方法: 「質問送信フォーム」から送信せよ。質問・要望・コメントが複数あれば、 複数回送信してよい。

提出期限: 次回の講義日の前日の正午 (通常、火曜日の 12:00:00)。

注意事項: 提出された質問は、匿名にした上で、次回以降の講義ビデオ中または講義ペー ジ上で提示する。公開されて困る内容 (個人情報など) は質問に含めないこと。個人的 な質問は os-staff[atmark]lsnl.jp 宛に電子メールで送ること。

質問

- 世間でよく知られているPCのOSに、Windows、Mac、Linuxと最近はChromeがありますがそれぞれここが一番の魅力だと思う特徴はありますか?

- 著作権法や大学設置基準の条件を詳しく知らなったのでとても勉強になりました。また、OSという言葉はよく耳にしますが、詳しい意味を知らなかったのでこの授業で深く学んでいきたいと思います。

- 授業についての質問: 4/29も休講になっているが授業の実施はあるのか。また、5/6の授業は本来月曜授業となっているがここでも補講を実施するのか。

- キャリアについての質問: 私はプログラムの専門学校と大学で情報科学科で勉強することの違いが知りたいので大崎先生の考え方でいいので聞きたいです。 また、学部ではなく院進学を考えた時に普段の授業を受ける際に考えておいたほうが良いことはありますか。

- オペレーティングシステムを自分で作成することは出来ますか。

- 課題レポートについての質問です。課題に取り組む際にネットを用いて調べることが多いのですが、参考にしてはいけないサイト(個人ブログなど)がほとんどなのですが、参考にするべきサイトはどのようなサイトですか?

- プログラマーになるために最も重要な能力は何だと思いますか?

- 自分は大学卒業後大学院に進学せず就職する予定です。そこで大学卒業までに大学院レベルとまでは行かなくても社会で通用するための知識、技術を習得することは可能でしょうか。情報系について学んでいるので社会に出てもその強みを利用したいと考えています。

- オンデマンド型での講義はとてもありがたいです。ですが、講義ビデオの内容をパワーポイントなどでの資料として説明して頂けると読みやすく、わかりやすいと思います。また、マイクの音量をもう少し大きくして頂けると助かります。お手数をお掛け致しますがご検討いただけますと幸いです。よろしくお願いいたします。

- 拙い質問で申し訳ないのですが、ミニテストの担当教員とはオペレーティングシステムの担当教員でよろしいでしょうか。

- この授業単位を修得するために何かの基礎知識は必要ですか?

- 先日のオペレーティングシステムの2つのシステムの違いがよく理解できなかったので、どう違うのかを理解したいので詳しく教えてください.

- OSには標準ライブラリがあると知ったのですが、これはC言語で使っている標準ライブラリと同じなのでしょうか。もしそうだとしたら新しい言語が開発された際は標準ライブラリを新たにOSに組み込む必要があるのでしょうか。よろしくお願いします。

- オペレーティングシステムにおける二つの観点(拡張マシンとリソースマネージャ)がありましたが,そのうちの拡張マシンについて質問です.今,参考となる書物の文献が手元にないため,パソコンで文献を探しているのですが,「拡張マシンとは」と調べると,ほぼ仮想マシンについて検索結果が出てきました.講義では拡張マシンは実際のハードウェアをより抽象化させた形という説明をされていたので,私は拡張マシンも仮想マシンも別物と考えていたのですが,この考えは間違えているのでしょうか.拡張マシンと仮想マシンの関係性について教えていただけると幸いです.

- オペレーティングシステムについて講義を受けていますが、この知識は就活においてどのような職で具体的に役に立つのか知りたいです。また、今後この分野をさらに理解していくには家でどのような勉強をすればよいのか知りたいです。 よろしくお願いいたします。

- OSを自分で作成しようと思ったら、何から始めるべきでしょうか。

- キャリア設計について、私は大学院に進学しようと思っています。プログラミングや実習などが得意ではないのですが、そういう人でも大学院に進学する人は多いですか。

- 難しい講義が多く、集中力を切らさずに勉強することが難しくなってしまったのですが、先生は学生時代、どのようにして集中力を保って勉強していたのでしょうか。

- 課題の参考文献をネット上で探している際、下のようなプログラミングスクールの解説サイトを発見しました。 今回は参考文献にしようしませんでしたが、このような会社の解説サイトは信用に足ると判断してもいいものなのでしょうか? https://www.sejuku.net/blog/?cid=menu

- 遠隔授業という慣れない形式の中で、考える時間が増えることはいいことだとポジティブに捉え、学生が教授から"手取り足取り"教えてもらうことを卒業するきっかけになればと思う。

要望

- 画面で文字を入力しその文章や文が表示しているウィンドウに収まらないとき、その文の初めのほうが見えなくなってしまったり、単語が途切れて読みづらいので適当なところで改行してほしいです。

12. CPU の原理

到達目標

- 機械語レベルでの CPU の動作の概要を、他人に説明できるようになる。

- 簡単な機械語プログラムに対する CPU の処理をトレースできるようになる。

講義資料

  http://www.lsnl.jp/~ohsaki/lecture/os/2020/mini-cpu.pdf

ミニテスト 2020/04/29

講義ビデオを視聴した後、以下のミニテストのフォームから回答せよ。各設問に対する 回答は簡潔 (一行程度) でよい。

  オペレーティングシステム ミニテスト 2020/04/29
  https://forms.office.com/Pages/ResponsePage.aspx?id=MATZn9TuPk6aWibNlNnIswnrqKJs1rhIjHXZ6ebIPnZURTNDODlMNTVVSkhQNUFFSlBYWkQ4QzZMVS4u

提出期限: 次回の講義日の前日の正午 (通常、火曜日の 12:00:00)。

レポート課題 2020/04/29

「レポート課題 2020/04/22」と同じ。 ただし、講義日は 2020/04/29 とすること。

質問・要望・コメント 2020/04/29

対象者を除き、「質問・要望・コメント 2020/04/29」と同じ。 ただし、講義日は 2020/04/29 とすること。

対象者: 学生番号末尾が 1 または 6 の人は必須。それ以外の人は任意とする。

質問

- Windows10を使っています。最近、見覚えのないdriver updateの更新を要求する画面が出てきました。ウイルスだと思います。ウイルスに対する最適な対処法は何をすることですか。また、ウイルスはどのように感染することが多いですか。

- 機械語は1種類だけなのでしょうか?CPUそれぞれに適した機械語を使用するのでしょうか

- プログラミングが得意な人におすすめの職業は何ですか。

- 「モダンオペレーティングシステム」を一回目の講義で紹介していましたが、他にコンピュータサイエンスやプログラミングに関する書籍でおすすめのものがあれば紹介してもらえると嬉しいです。

- 6月3日の実施予定の中間試験について質問があるのですがもし実施されるなら難易度はどれくらいになるのでしょうか?

- 行いたい処理目的にもよりますが、リソースの中でどれか一つのみを上位互換のものに換装できるとしたらどれを換装しますか?

- コア数の大きいCPUはコア数の小さいCPUよりも性能は高いと思います。コア数の大きいCPUのデメリットを教えてください。

- 販売されているCPUのコア数は最近では8コア程度が多いですがコア数を増やすという点で価格の上昇以外にデメリットはありますか?

- 今回の目標にトレースできるようになるとあったのですが、実際に真似事をしながら知識をつけていくほうがコンピュータの場合でも理解が高まりますか。その場合PCの種類などは合わせないといけないでしょうか。

- OSという分野で行われている最新の研究は何ですか。抽象的な質問ですみません。

- FireFoxにて講義ビデオを視聴しようとした際、「ファイルが壊れています」と表示され視聴出来ません。幸い別のブラウザでは視聴可能なのですが、FireFoxでも視聴可能に出来ますでしょうか?

- プログラミングを勉強するときにどの言語を学ぶ時でもできる勉強方法などあれば教えていただきたいです。

- なぜWindowsが多く利用されているのですか?先生はmacの利用者がWindowsを超える時代は来ると思いますか?

要望

- レポート課題をやっていくうえで信頼できる資料を用いて学び、理解を深めよ。と課題には記載されているのですが図書館なども行けなくて参考にできる資料が家にあまりありません。すると、インターネットで調べることになるのですが課題の条件に満たさないのではないかと思い不安になっております。参考資料なども記載して頂けるとありがたいです。ご検討のほど宜しくお願い致します。

コメント

- 講義内で先生が発言された日本語で書かれたWebページへの意見(例えばゴミの山という発言)が辛辣でよかったです。また、講義内で図を多用されるので理解がしやすいです。

12. (2) プロセスとスレッド

到達目標

- プロセスとスレッドのしくみを理解し、他人に説明できるようになる。

- プロセスとスレッドそれぞれの利点・欠点を他人に説明できるようになる。

- プロセスの状態遷移図を描き、他人に説明できるようになる。

ミニテスト 2020/05/06

講義ビデオを視聴した後、以下のミニテストのフォームから回答せよ。各設問に対する 回答は簡潔 (一行程度) でよい。

  オペレーティングシステム ミニテスト 2020/05/06
  https://forms.office.com/Pages/ResponsePage.aspx?id=MATZn9TuPk6aWibNlNnIswnrqKJs1rhIjHXZ6ebIPnZUQTUyNFRDMlkyRVJJWUtSRDVTQk8xS1hCUC4u

Office 365 のアカウント → 関西学院システム利用者 ID での認証 (例: abc12345@nuc.kwansei.ac.jp で認証 → abc12345 で認証) が必要です。

提出期限: 次回の講義日の前日の正午 (通常、火曜日の 12:00:00)。

レポート課題 2020/05/06

「レポート課題 2020/04/22」と同じ。 ただし、講義日は 2020/05/06 とすること。

質問・要望・コメント 2020/05/06

対象者を除き、「質問・要望・コメント 2020/04/22」と同じ。 ただし、講義日は 2020/05/06 とすること。

対象者: 学生番号末尾が 2 または 7 の人は必須。それ以外の人は任意とする。

質問

- あるシステム(A)を作るため一部をオープンソースライブラリを利用して作った場合はそのオープンソースライブラリ(オープンソースライブラリコード)を書いた人がシステム(A)を侵入して書き換えることは可能でしょうか。bloodshot (2020)という動画では侵入して書き換えることで可能だと聞きました。

- もし中間テストが持ち込み可の場合、何を持ち込んだら良いのか教えてください。

- 講義の中でプロセスやスレッドの具体的な動きの解説がありましたが、メモリにPCやレジスタの値をコピーして、違うプログラムのデータを取ってくるという点について質問があります。同時に複数のプログラムを実行しているとして、そこで使われているデータがメモリに書ききれないくらい多い場合はどのような挙動をするのですか? プログラムのどれかが止まるのですか? 全て停止するのですか? それともそうならないように何か工夫がされているのですか?

- 実際のパソコンではプロセスとスレッドをどのように使い分けているのですか

- 大学で学習していくにあたってC言語やJava以外で書けるようになると便利なプログラム言語はありますか。また、具体的にどのような言語でしょうか。

- 情報科学科の教授の方々は色々なプログラミング言語を扱えたり、情報科学分野なら何でも知ってそうですごいなと感じています。学生からみると"頭が良すぎる人"である教授や研究者であっても日々学び続けているのでしょうか。

- 尊敬する人物を教えてください。

- アメリカの高校や大学ではMacが主流なのに対し何故日本ではWindowsが主流なのですか。

- 授業で、語感の働かない専門的な単語は英英辞典によって調べれば良いと習ったのですが、情報系の大学生が利用するとしたとき、先生が一番オススメする英英辞典は何ですか?

- スレッドによる過去の事件を実際に見たことがありますか (?)

- PCではよくコンピュータウイルスに感染したという話がありますが、なぜスマートフォンはこのような話をあまり耳にしないのでしょうか。

- Microsoft Edgeで授業を受けているとき、たまに"ビデオをエンコードできませんでした"と表示され動画が止まってしまい、もう一度Microsoft Edgeを立ち上げないといけなくなってしまうのですが改善方法はありますか。

- 仮想COMポート実装した際に実際のCOMポートと同様にパソコンが認識できるのはなぜか。

- インターネットを用いて参考文献を探す際によく他大学の教授が作った資料を見られますが、参考資料として用いていいのでしょうか。

- 中間テストの合格率は90から95%と言っていましたがその成績評価は絶対評価なのか相対評価のどちらなのですか?もし100人がしっかり勉強したとしても5から10人が落ちるのですか?

- 今回までの授業の中で、「プロセスを実行する」と「プログラムを実行する」という言葉が同じ内容である様に何度か使われていたと思うのですが、「プロセス」と「プログラム」は等価であると考えてよいのか、と疑問に思っていました。今回の授業内でプロセスは「実行中のプログラム」と説明されていました。では、「プロセスを実行する」という言葉は「実行中のプログラムを実行する」という意味になるので、これは少しおかしい気がします。この言葉が間違っていて、正しくは「プログラムを実行する」という言葉を扱うべきなのでしょうか、もしくはこの時の「プロセス」という言葉は違う意味で使われているのでしょうか。混乱してしまったので、解説よろしくお願いします。

- Windows10には仮想デスクトップ機能があるのですが、別のデスクトップ画面で使用しているソフト(excelなど)を違うデスクトップ画面で立ち上げようとした時に、強制的に元々そのソフトを開いていたデスクトップ画面へと移動してしまいます。対してGoogle Chromeなどの別ウィンドウを開くことができるソフトは複数のデスクトップ画面で開くことができるのですが、これは仮想デスクトップはデスクトップとして描写される画面を複製しているだけで別のプロセスを実行しているわけではないからという考えで良いのでしょうか?

- 就職についてなんですけれども現段階で自分がどういう職種につきたいかがわからないんですけれどもどうすれば興味のある仕事を探すことができますか。

- SEになる (?) ためにはこの知識たち (?) は必要ですか?

要望

- メールのアナウンスやLUNAの中での作業 (?) で納めていただきたいです。他の授業もあり、なかなか慣れない状況なので把握が難しく感じます

- 今回のコメントなどが大きく遅れてしまった理由で、ほかの授業のメールなども多くあり統一していただきたいと思いました。簡単な例で挙げるとzoomなどです。(?)

コメント

- ひろゆきって名の付く人ってだいたいインターネットとかコンピュータに詳しいですよね。

- プロセスとプログラムが混同します。

13. (3) プロセス間通信

到達目標

- プロセス間通信とは何かを理解し、他人に説明できるようになる。

- プロセス間通信の 3 つの問題を他人に説明できるようになる。

- セマフォおよび mutex とは何かを理解し、他人に説明できるようになる。

ミニテスト 2020/05/13

講義ビデオを視聴した後、以下のミニテストのフォームから回答せよ。 各設問に対する回答は簡潔 (一行程度) でよい。

  オペレーティングシステム ミニテスト 2020/05/13
  https://forms.office.com/Pages/ResponsePage.aspx?id=MATZn9TuPk6aWibNlNnIswnrqKJs1rhIjHXZ6ebIPnZUQ0JYVktSUUJOWEVZSDRKQVFPSDlQTzVHQi4u

Office 365 のアカウント→関西学院システム利用者 ID での認証 (例: abc12345@nuc.kwansei.ac.jp で認証→ abc12345 で認証) が必要です。

提出期限: 次回の講義日の前日の正午 (通常、火曜日の 12:00:00)

レポート課題 2020/05/13

「レポート課題 2020/04/22」と同じ。 ただし、講義日は 2020/05/13 とすること。

質問・要望・コメント 2020/05/13

対象者を除き、「質問・要望・コメント 2020/04/22」と同じ。 ただし、講義日は 2020/05/13 とすること。

対象者: 学生番号末尾が 3 または 8 の人は必須。それ以外の人は任意とする。

質問

- プログラムのエラーを見つけるには、どういった方法が早く見つけるこつになりますか?

- 授業時間内にmutexはセマフォの単純版であると言われていました。セマフォとmutexを分ける理由はどう言ったものなのでしょうか。もし、こうといった理由がないとすればセマフォ変数の値が0か1でありmutexに当たるものがセマフォと呼ばれることはあるのでしょうか。

- 私の使用しているノートPCのGPUは、CPUに内蔵されているものです。そのような統合型GPUの中では最新型のものなのですが、調べたところ10年近く前の単体GPUよりもGPUとしての性能が劣っているということがわかりました。これから先、この性能差が今よりも埋まる可能性は考えられますか。またそれぞれの利点、欠点も教えていただきたいです。

- プロセス間でデッドロックが起こった場合、PCを使用している私たちから見るとどのような状況になるのでしょうか。また、あるアプリを優先してデバイス割り当てするようなプログラムを書けば、デッドロックは回避できますか。

- 応用編で扱った一部のソースコード・プログラムを身につけることは必要ですか。 試験対策として何かお勧めのことはありませんか。

- 図書館や本屋などで参考資料となる本を見つけるとき、先に教授のおすすめの本やサイトなどで調べてからえらぶほうがいいのでしょうか。それとも実際に手に取ってみて選ぶ方がいいですか。

- 領域実習についての質問です。秋学期にどの研究室に希望を出すか迷っています。どこからの情報なのかはわかりませんが、大崎研はプログラミングがバリバリに得意ではないと厳しいと聞きました。実際のところはやはりそうでないと大崎研での研究についていくことは厳しいのでしょうか?

- プログラムを書くのが趣味な人はゲームなどをやった際にどういう構造でできているのか考えたりするんですか。

- パソコンはアプリなど全てを初期化をすれば買った当初の状態に戻りますか?

- 先生が使っている検索エンジンは何ですか。

- セマフォとmutexの違いはカウント数以外にありますか? 2つの違いがあまり」よくわかりません。

- 画像処理をする上で良い言語はなんでしょうか?

- パソコンのハードディスクの最適化はどのような処理をして高速化していますか?

- レポートに用いる参考文献についてです。今まで大学の講義資料などは信頼できるとして使用してきたのですが、今回の質問への回答で先生は大学の教授によってはよくない資料があるとおっしゃっていました。今まで提出してきたレポートの中でもし信用できないと先生が判断した大学の資料を使っていた場合、原点対象になるのでしょうか。

- 大規模ネットワークの研究などがもの凄く興味があって大崎先生の研究室に入りたいのですが、1,2年の成績がイマイチでした。3年生で頑張ればまだ間に合いますか。

- 就活がもうすぐ始まります。今やっておくと他の就活生と差がつくと思うことは何ですか

- 今話題になっている検察庁法改正案のニュースで疑問に思ったことがあります。https://www3.nhk.or.jp/news/html/20200516/k10012432561000.html 実際にこの法改正案に反対している人がたくさんいるのでしょうか?それとも、ツイッターを利用して情報操作をしようとした、影の加担者がいるのでしょうか?

- プログラミングに対する苦手意識を克服するのに何か良い方法はありますか。

- 私は今のところ大学院に進学したいと考えています。ただし、4年生になってから「研究」を実際に行い、自分の肌で楽しさを感じた後に、大学院進学を最終決定したいと思っています。しかし、最新の就活状況を見ていると、4年生の4月には既に内定を得ている大学生も多いようです。もし、「研究」の楽しさを見いだせず大学院への進学をしないと決心した場合に、就活のピークが終了しているという可能性があるかもしれません。したがって、どのタイミングで大学院進学をするかしないかを決断すればよいのか非常に悩んでいます。ぜひ、大崎教授の見解を教えていただけると幸いです。

- プロセス間通信における問題や面倒さを加味すると、スレッドの方がプロセスよりもかなり優れているように思いました。 スレッドの「1つのスレッドが暴走すると他のスレッドまで巻き添えを喰らう」という欠点に目を瞑れば(スレッドが暴走しないようなプログラムを書ければ)絶対にスレッドを使った方がいいと思うのですがどうでしょうか。

要望

- 05/13のミニテストにおいて項目の一つがブランクになっているようですが確認していただけますでしょうか?

- ミニテストの出題形式がランダムになっているのを授業の流れと同じに戻してほしいです。理由としては、授業の流れでするとフィードバックしやすくなるためで、ランダムにすると授業の流れではないので、何を回答すればよいのか混乱するときが多々あるため授業の流れ順にしてほしいです。

- 動画編集をしてから講義ビデオをアップしてほしいです。説明中の無言時間が長いと気が散ったり、急に咳ばらいをされると(特にイヤホンでは)びっくりして集中力が下がってしまいます。実際に教室で受ける授業では実際の先生本人の姿が見えているのでまだ気にならない方なのですが、動画だと姿が見えないので(聞こえてくる音声にかなり注意を注いでいるので)、不要な無言部分や咳ばらいはなるべくカットしてほしいです。また、画面に打ち込みながらの説明も、用語の予測変換候補の一覧や変換ミスなどが一瞬でも画面に表示されるとその字のイメージが先に頭に入ってきてしまうので混乱してしまいます。そのシーンも編集してカットするか、あらかじめ事前に用意した文章をコピペしていくなどして関係ない言葉をあまり画面に表示しないようにしてほしいです。

コメント

- オンライン授業ということもあり中間テストへの対策ができているのかどうかわからない状況の方がほとんどだと思います。この状況で今までと同じレベルのテストは困難ではないかと感じている人が多いと思います。

- ミニテストの順番だといい感じに頭を使えていい復習になると思います

14. (4) スケジューリング

到達目標

- OS におけるスケジューリングとは何かを他人に説明できるようになる。

- OS におけるスケジューリングの重要性・困難さを他人に説明できるようになる。

- 代表的なスケジューリングアルゴリズムを理解し、その動作をトレースできるようになる。

ミニテスト 2020/05/20

講義ビデオを視聴した後、以下のミニテストのフォームから回答せよ。 各設問に対する回答は簡潔 (一行程度) でよい。

  オペレーティングシステム ミニテスト 2020/05/20
  https://forms.office.com/Pages/ResponsePage.aspx?id=MATZn9TuPk6aWibNlNnIswnrqKJs1rhIjHXZ6ebIPnZURUk5WlhNUUtXWFNSTlZYU1cwMlZHR05DOC4u

Office 365 のアカウント→関西学院システム利用者 ID での認証 (例: abc12345@nuc.kwansei.ac.jp で認証→ abc12345 で認証) が必要です。

提出期限: 次回の講義日の前日の正午 (通常、火曜日の 12:00:00)

レポート課題 2020/05/20

「レポート課題 2020/04/22」と同じ。 ただし、講義日は 2020/05/20 とすること。

質問・要望・コメント 2020/05/20

対象者を除き、「質問・要望・コメント 2020/04/22」と同じ。 ただし、講義日は 2020/05/20 とすること。

対象者: 学生番号末尾が 4 または 9 の人は必須。それ以外の人は任意とする。

質問

- 大崎先生は仮想マシンでLinuxを利用しているのでしょうか。またOSがlinuxの時、Windowsでしかサポートされていないアプリケーションを使いたいときなどはどのようにしていますか?

- 異なったプログラムを二つ起動するとそれぞれプロセスとして起動され処理されるということであっていますでしょうか。

- 就活についてなのですが、大量に応募がある会社は、まず書類選考から入ると思うのですが、その時に人事部の人達に目につくように資格を取っておいた方が良いのでしょうか?

- 授業とは関係ありませんが、なぜ早稲田大学などドメイン名にacを付けないのですか?

- 授業内試験は中間試験のみですか?

- 近年、データサイエンティストの需要が高まっていると聞き、もともとSEを目指していましたが、データサイエンティストを目指そうと考えなおしています。しかしネットで調べていると、データサイエンティストは非常に難度の高い仕事と書いており、もともと院に入るつもりはなかったのですが、院に入って分析学やAIの知識についてより深く学ぶべきでしょうか。

- 過去のプロセス実行時間データなどから予測を立てスケジューリングすることは可能でしょうか、またそのような研究はされているでしょうか

- スケジューリングのnon-preemptiveとpreemptiveの具体例を調べていてある疑問が湧きました.ある資料によると,non-preemptiveの具体例にSPTFが挙がっていました.調べたところによると,SPTFはCPUの割り付け時間の上限を決めた上で,プロセスが切り替わるときに優先順位を計算するというものでした.しかし,これがなぜnon-preemptiveなスケジューリングの例になるのかが述べられていませんでした.もし,私のこの解釈が正しいとすると,優先順位が低いものは結局のところ,他のプロセスに割り込まれるためpreemptiveに含まれるのではないかと思います.実際のところ,SPTFはどちらに当たるのでしょうか.non-preemptiveに含まれているのであれば,SPTFは本当はどういったものなのでしょうか.これらについて教えていただけると幸いです.

- 最近wi-fiの電波の入りが不調だな、と感じたので対策をしました。ルーターの中継器を買うお金もないので、古い規格のケーブルを新しいものへと変えようと思い立ち、CAT6?のLANケーブルを買ってきて取り付けました。心なしか通信速度が上がったような気がしましたが、正直、まだ遅いなと感じます。ケーブルを変える以外で、通信速度を早くさせる方法はあるのでしょうか。

- 関学生協のPCは大崎教授にとって、値段やスペックを考慮すると、どういった人におすすめでどういった人にはおすすめではないと考えますか?

- 現在、情報処理技術演習という基本情報技術者試験合格を到達目標にした講義が行われていますが、この資格は在学中に取るべきなのでしょうか。

- OSを深く勉強することによってパソコンのデバイスの不具合などの原因が分かりますか

- 卒論について全くイメージがわかないのですが、いつテーマを決め、実験や調査などををどのようにし(予算や規模など)、最終的にいつ頃に文章として完成させればいいのでしょうか?先生の研究室の卒論生はどうでしたか?

- 授業でC言語を扱っていますが、プログラミングを扱う仕事をするとしたら他の言語も学んでおいたほうがいいのでしょうか?

- 講義資料をアップロードしましたというメールが届いたのですが、どこに載っているか見つけることができなかったので教えていただけないでしょうか?

- デスクトップパソコンとノートパソコンでは同じWindowsでも異なったOSになるのでしょうか。最近ノートパソコンからバッテリーを抜いて使っているのですが、バッテリーがありません、という風に画面では見れます。つまりOSはバッテリーも認識しているはずです。しかしデスクトップパソコンはバッテリーがないのでデスクトップパソコンとノートパソコンでは異なった振る舞いが必要なのでは?と思ったので疑問に思いました。

- ミニテストを終えて送信ボタンを押すと解答が全て消えてもう一度最初から入力しなければいけなくなったのですが、時間がかかりすぎるとタイムアウトしたりするのでしょうか?iPadで行ったのですが端末によっても変わるのでしょうか。

- スケジューリングにおいて何が重要かは用途によるとあるが、その判断するのは人間かコンピュータかどっちでしょうか。またどちらの判断がより適切になりますか?

要望

- プロセスの切り替えの際に、メモリ空間の切り替えは理解できたのですが、レジスタの切り替え(レジスタを退避してメモリからレジスタを戻す)の部分がわかりませんでした。もう一度説明していただけませんか?

- 最近、Pythonの勉強を始めたのですが、おすすめの教材等教えていただけますか?

- 大崎先生オペレーティングシステムの真理を探究する上でおすすめするコンピュータサイエンスにおける参考書や用語辞典等を知っていたら教えてほしいです。

- プロセス同士の会話の茶番かわいいし分かり易いんでこれからもぜひ続けてください。

- パソコンの動作を軽くするソフトなどがあれば教えてほしいです。

- 本日学んだ内容であるpreemtiveなスケジューリング機能を使いすぎるとパソコンやスマートフォンへの負担はあるのかどうかが知りたいです。

コメント

- ミニテストの問題は、授業中に行った通りの流れで出題することにより、順を追って復習することができ、より理解を深めることができると思います。

- 初めて順番を入れ替えて出題された時も入れ替わっていることに気づかないほど気になりませんでしたが、改めて出題準も気にかけつつミニテストに取り組むと、私自身は一度講義動画を見てから復習がてらミニテストに取り組んでいるのですが、順番に並んでいる方が動画の振り返りもしやすく、学習しやすいと感じました。思い返すと、あくまでも個人的な意見ではありますが、入れ替わっているときは、問題文中の言葉などを頼りに、どこの動画にどの答えがあるのかをカーソルで動画を飛ばし飛ばしで躍起になって探していたように感じました。

- ミニテストの順序ですが、授業の流れにそって復習しやすいようにランダムにしないでいただきたいです。特に質問コメントについての設問は、授業内容と関係ないものもあるので混ざると単に時間がかかって効率が悪くなると思います。

中間試験実施法に対する意見

  オペレーティングシステム中間試験実施方法に対する意見 (閉じました)
  https://kwanseio365-my.sharepoint.com/:x:/g/personal/cta67712_nuc_kwansei_ac_jp/EbyCab_CT5dKiF3clwc69h8B6tlb7KpQ-Vlh2iaPU9-F9Q?e=Vztzml

提出期限: 次回の講義日の前日の正午 (通常、火曜日の 12:00:00)

  オペレーティングシステム中間試験実施方法に対する意見
  http://www.lsnl.jp/~ohsaki/lecture/os/2020/for-students/comments-on-exam.pdf
  http://www.lsnl.jp/~ohsaki/lecture/os/2020/for-students/comments-on-exam.xlsx

ミニテスト 2020/05/27

講義ビデオを視聴した後、以下のミニテストのフォームから回答せよ。 各設問に対する回答は簡潔 (一行程度) でよい。

  オペレーティングシステム ミニテスト 2020/05/27
  https://forms.office.com/Pages/ResponsePage.aspx?id=MATZn9TuPk6aWibNlNnIswnrqKJs1rhIjHXZ6ebIPnZUNU9UN1A4OVVaQ0NMSDFPMTZJOFRLWTVUOC4u

Office 365 のアカウント→関西学院システム利用者 ID での認証 (例: abc12345@nuc.kwansei.ac.jp で認証→ abc12345 で認証) が必要です。

提出期限: 次回の講義日の前日の正午 (通常、火曜日の 12:00:00)

レポート課題 2020/05/27

「レポート課題 2020/04/22」と同じ。 ただし、講義日は 2020/05/27 とすること。

質問・要望・コメント 2020/05/27

対象者を除き、「質問・要望・コメント 2020/04/22」と同じ。 ただし、講義日は 2020/05/27 とすること。

対象者: 学生番号末尾が 0 または 5 の人は必須。それ以外の人は任意とする。

質問

- 中間試験実施法に対する意見を見落としていて記入することを忘れてしまったのですが成績に含まれますか?

- 中間テストを中止するとのことでしたが、出題予定であった問題などはすでに作成しているのでしょうか。もし作成しているのであれば課題としてではなく、知識定着の確認のために公開していただくことは可能でしょうか。

- 様々なOSでラウンドロビンスケジューリングが使われており、最短ジョブ優先方式や最小残り時間優先方式は仮定である「実行時間が既知である」がなかなか満たせないのであまりつかわれないとありましたが、FCFSはOS内で使われるのでしょうか。使われるとしてどんなことに使われているのでしょうか。

- この前の授業でメモリのweb会議アプリとサウンドレコーダーが同時にはマイクとスピーカーを使用できないためどちらも片方のデバイスを獲得して待ち状態になっていましたが、先週ivcamとprocesssingで同時にパソコンのカメラ機能を使用したときにivcamで取得した映像がprocessingでの実行の際に現れたのですがこれはなぜ同時に使用し、同じ出力として出されたのかがよくわかりませんでした。この場合はどちらかが待ち状態になるという事は起こらないのですか?

- インターネットセキュリティーについて質問したいですが、この前の講義に先生が有線Wanでセキュリティーの問題があるかどうかをランプ(<-名前忘れました。すみません。)の点滅状態を見ることで確認できるとおっしゃってました。それから自分はネット回線を確認したところ以下4つの点滅状態が確認されました。なお、バックグラウンドで実行している主なプログラムはGPUドライバとセキュリティーソフト(WinDiffender、Avira、360safeという中国のソフト)があります。自分はデスクトップPCです。無線Lanネットカードはインストールされてませんので外界とのインターネットのやり取りは有線Wanのみです。

  1. PCを起動した状態でChromeなどを使用しているときに一秒に4回ほどランプが点滅する。
  2. PCをスリープモードまたはロックした状態で1と同じ点滅をしていた。
  3. PCをシャットダウンしてしばらくたってもランプの点滅する状態が確認できた。
  4. PCを起動するだけで手動でプログラムを起動することない状態で1と同じ点滅状態が確認できた。

これらが自分の今確認できた現象ですが、これらによりセキュリティーについて問題があるかどうかを確認できますでしょうか?お願いします。

PS:セキュリティーソフトでスキャンもして異常はなし。また、タスクマネージャーでネットワークの占有はほぼなしで、規律的に10Kbいかない通信はしているようです。

- 一つのパソコンに仮想化などは使わずに二つのOSを入れるにはどうしたらいいですか。

- 最短ジョブ優先方式と最小残り時間優先方式の違いは横取りがあるかないかの違いだけですか?そうであれば同じ処理をこの2つのアルゴリズムで行う場合、横取りありの最小残り時間優先方式の方が適応性があって優れていると思うのですが実際はどうなのでしょうか?

- レポート課題の提出完了の通知メールが今回から受信されなくなったのですが,これは今回から送信しない仕様に変更されたのでしょうか.もしくはこちら側になにか原因があるのでしょうか.

- これからの将来もWindowsまたはmacOSが主流となってくると思いますか?

- 普段使っているシェルスクリプトは何ですか?また、いくつかのシェルスクリプトを比較して、優れている点、使いづらい点などあれば教えて欲しいです。

- 就職について質問です。私は将来IT系の仕事がしたいと考えています。しかしプログラムなどが苦手です。同じ言語を使い続ければどんな人でもプログラムは書けるようになりますか?

- 講義の内容とは違いますが、現在困っていることがあり質問します。スマートフォンのように画面を手で触れることができるノートパソコンを使っていて、以前までタッチパッドが機能していたのですが、ここ数か月タッチパッドが操作しません。色々調べてデバイス→タッチパッドの設定をいじましたが、タッチパッドが操作しません。設定をいじる以外に直す方法はありますか。

- FCFSで、仮にプロセスが同時に発生した場合ってどういう処理になるんでしょうか?

- 前回の質問でいま今流行っているものは30年後ぐらいには日陰の職業になっているとおっしゃっていましたが、30年後この職は花形になっているかもしれないという予想はありますか?

- ミニテストとレポートで評価することとなったため、不安に感じたことがあるので質問します。レポート課題に取り組む際に、私は英語版Wikipediaを参考にしているのですが、それで問題はないですか?

- 平均ターンアラウンドタイムを計算するにあたって、プロセス切り替えに要する時間は考慮しなくても大丈夫ですか?

- 最小残り時間優先方式が使われず、最短ジョブ優先方式が使われる場面は具体的にどのような場合が想定されますか?

- 質問: プロセスとジョブの違いがよくわかりません。

要望

- ミニテストの順序はランダムにしないでいただきたいです。もし可能であれば、ランダムにするかしないかを選べるボタンをつけてほしいです。流れに沿って学びたい人は「ランダムにしない」ボタンを、順番を入れ替えて学びたいという人がいればその人のために「ランダムで表示する」ボタンを設置するというのはいかがでしょうか。Microsoftにそのような機能がないのであれば、新たにそのシステムを搭載したオリジナルの臨時ページを制作してほしいです(ここの質問・要望送信フォームのように)。

- 最近、Linuxを使い始めたのですが、おすすめのウイルス対策ソフト等あったら教えてほしいです。

- 前回の質問の際にデータサイエンティストが今後花形ではなくなるだろうとおっしゃっていましたが、大崎先生が考える「今後の花形の職業とは」を教えてほしいです。

- 要望: オペレーティングシステムの講義ページにページトップに戻るボタンを付けていただきたいです。最新の内容がページの一番下にあるので、それを見てからページの上の方の講義ビデオや送信フォームに戻るのは少々面倒だと思うことがあります。(それぐらい我慢しろよって話ですが…)ご検討のほどよろしくお願いいたします。

- 学生からの質問がまとめられている場所についての話なのですが、現段階では受けとった授業日ごとに分けてあると思いますが、見返す際に質問内容は覚えていてもいつ質問されたものなのかが分からず、探すのに時間がかかってしまいます。ですので、質問をジャンル別に分けひとつの場所にまとめていただけると幸いです。

コメント

- リモートで中間テストをする・せずに平常点のみで成績評価を行うにしても、どちらにもカンニングといった問題点には避けては通れないと思っていました。その中で(私の中で)生徒側のリスクが少ないと感じられた方の対応をして頂き、ありがとうございます。

- 中間試験がなくなったので、レポートをやっていく中でより学べたらいいなと思う。

15. OS の実例

到達目標

- UNIX および Linux オペレーティングシステムとは何かを理解し、他人に説明できるようになる

- 講義で学んだオペレーティングシステムの概念 (リソース、デバイス、プロセス、スケジューラ) と現実のシステムとの対応を理解する

レポート課題 2020/06/03

「レポート課題 2020/04/22」と同じ。 ただし、講義日は 2020/06/03 とすること。

質問・要望・コメント 2020/06/03

対象者を除き、「質問・要望・コメント 2020/04/22」と同じ。 ただし、講義日は 2020/06/03 とすること。

対象者: 学生番号末尾が 1 または 6 の人は必須。それ以外の人は任意とする。

質問

- ミニテストやレポート課題などの提出期限に"次回の講義日の前日の正午 (通常、火曜日の 12:00:00)"と書いてありますが、"通常"とはどういった意味でつけているのですか?("通常"の有無での違い) また12:00:00を過ぎて、提出しても評価はもらえるのですか?

- 6/3の講義のミニテストがないのですが不具合でしょうか?

- 今回のテストがないようですが大丈夫でしょうか? ない場合はないと記載してもらいたいです

- 6/3のミニテストへのリンクが表示されないのですが、今回はないということなのでしょうか。もしリンクが消えているのであれば直していただきたいです。

- ミニテストがない件について他の人も困っているのではないかと思い、授業ビデオを視聴する前に要望を出しましたが、授業の最後で今週のミニテストがないと述べられていたため先ほど送信した要望は無視していただいてかまいません。申し訳ありませんでした。

- Linuxには様々なディストリビューションがありますが、先生がDebianを使用しているには何か理由があるのでしょうか(機能など)。

- 私は今動画編集を趣味的にしたいと思っていて、また新しいPCを買おうとしています。そこで、どのようなものを重視して買うか迷っています。CPU、メモリ、SSD、GPUで私はやはりCPUを重視して買おうと思っているのですが、間違っているでしょうか。買ってから後悔したくないので先生の意見を聞かせていただけると幸いです。よろしくお願いします。

- Linux カーネルの説明の動画内でdmesageでカーネルの起動順についてみられていましたが左端に書かれた数字の列は起動後の時間に対応しているのでしょうか。

- 今回のレポート課題に取り組む中で、UNIXはプログラマによって、プログラマのために、比較的進歩したソフトウェア開発プロジェクトに参加するユーザが大部分を占めるような環境で使うことを想定して設計されたことがわかりました。ここから高度な技術を持つプログラマ向けのosなのかなと感じました。大崎先生はUNIXをお薦めされますが、そこまでパソコン経験のない初心者にとって使いづらいといったことは起こらないのでしょうか。

- UNIX上で、新しいソフトウェアを開発することは可能なのでしょうか。

- もし、物理的信号(キーボードを押したときなどにおこる電気信号)が2つ以上同時に起こるならば、それらがCPUで扱うクロック基準の信号(順番が決まった信号)に代わるときに、OSはどのような判断基準でスケジューリングするのでしょうか。

- Windowsでは起動したてにもかかわらずメモリ使用量が1.5GBほどあったのですがこれをできるだけ小さくする場合はどの様なことをすればいいのでしょうか。

- 中間試験がなくなり、成績評価は平常リポート100%になりましたが、授業末試験に代わるようなレポート提出は予定されていますか?

- 質問の仕方についてご指摘いただきましてありがとうございます。危うく社会に出てから恥を晒すところでした。プロセスとジョブの違いがよくわかりません。プロセスとジョブの違いは何ですか?

- ノートPCを処分する際に、PCの操作が可能な状態の場合、専用のソフトを使ってデータを消去する以外に方法はありますか。また、PCが操作不可能な状態の場合、ハードディスクを取る以外の方法はありますか。

- 家にあるパソコンでウイルスバスターのソフトをインストールしたのですがおそらくこのソフトが原因で動作や起動がとても遅くなってしまいました。このようなソフトは必ずインストールする必要があるのかが気になりました。先生はこのようなソフトを使っていますか。

- 今回の講義でもLinuxの良い点と他のOSの悪い点がよく見られたのですが、それでもこれだけ普及しているのがWindowsやMacであるのは、自分でWindows以外のOSをインストールすることが手間であること以外にデメリットはあるのでしょうか。

- 今の時代、理系の学生はプログラミングができて当たり前だと思うのですが、就活の際に「自分はプログラミングが得意です」とアピールするのは意味があるのでしょうか。

- 私はWindowsとMacを両方とも使っています。それぞれの特徴があると思いますが、最大の特徴とはどんなところなんでしょうか?また、Linuxがこの二つに勝っている最大の強みはどんなところでしょうか?

- 各回のミニテストやレポートの点数を知りたいのですが、点数を公開できたりしないですか。(例えばLUNAのツールの成績表を使ったりとか....etc)

- 中々図書館にも行きづらい情勢が続いておりますが、レポート課題で調べ学習が必要な場合にその資料として複数回同じ本を重複して使う事は可能なのでしょうか。

要望

- 成績評価についてですが、すべてレポートで採点するということはわかりました。レポートはどのような基準で点を付けているのか教えていただきたいです。内容や文字数などですか?

- PCを複数所有することに対して、良い点、悪い点が考えられる場合、お聞かせください。

- 「ゲームが好き」、「ソフトやアプリを作成するのに興味がある」という理由でこの学部に入ったことに若干の不安を感じていたのですが、大崎先生の「ゼビウスやグラディウスにはまっていた」という話を聞いて安心しました。

- できたらで大丈夫なんですが、各回の前回のミニテストの解説(答え合わせ)的なことを動画にして、講義の動画ページに乗せてほしいです。(例えばですが5/27の回の講義動画を載せる時に5/20の回のミニテストの解説動画を一緒に載せてほしいということです。)

コメント

- コンピュータウイルスに対する予防原則がすごく印象に残りました。ウイルスに感染してから対応を考えるのでなく、感染しないような堅牢なシステムを構築すべきというお話を聞かせて頂いてすごく納得することができました。一つの問題も少し考え方を変えるだけでより良い対策案を生み出せることも同時に学ぶことができました。

15. (5) メモリ管理(1)

到達目標

- コンピュータにおけるメモリ (主記憶) の構成を理解し、他人に説明できるようになる。

- OS におけるメモリ管理の重要性および困難さを理解し、他人に説明できるようになる。

- スワップおよびページングの概要・利点・欠点を理解し、他人に説明できるようになる。

ミニテスト 2020/6/10

講義ビデオを視聴した後、以下のミニテストのフォームから回答せよ。 各設問に対する回答は簡潔 (一行程度) でよい。

  オペレーティングシステム ミニテスト 2020/06/10
  https://forms.office.com/Pages/ResponsePage.aspx?id=MATZn9TuPk6aWibNlNnIswnrqKJs1rhIjHXZ6ebIPnZUN1hJVTlCVllDUkpUQUw4RjVWSFZNQk1ZUy4u

Office 365 のアカウント→関西学院システム利用者 ID での認証 (例: abc12345@nuc.kwansei.ac.jp で認証→ abc12345 で認証) が必要です。

提出期限: 次回の講義日の前日の正午 (通常、火曜日の 12:00:00)

レポート課題 2020/06/10

「レポート課題 2020/04/22」と同じ。 ただし、講義日は 2020/06/10 とすること。

質問・要望・コメント 2020/06/10

対象者を除き、「質問・要望・コメント 2020/04/22」と同じ。 ただし、講義日は 2020/06/10 とすること。

対象者: 学生番号末尾が 2 または 7 の人は必須。それ以外の人は任意とする。

質問

- 大学生活で最も必要ないと感じた授業は何ですか。

- 今回の課題レポートに取り組む際に、多重プログラミングを実現するにおいてCPUから参照されることのない「未使用領域」が、パーティション内、ジョブ内、プログラム・データ領域内にそれぞれ必然的に生じる、と知りました。パーティション内の未使用領域を極力減らすためには授業内で挙げられていたようにメモリ割り当て方法を変えるなどの対策があると思いますが、ジョブ内、プログラム・データ領域内に生じる未使用領域を極力使うための対策はあるのでしょうか。対策の有無と、それについての解説を聞かせていただきたいです。

- 大崎教授はゲームを自分で開発したいという気持ちからプログラミングを勉強し、情報系の道を進んだと思いますが、専門学校は検討されなかったのですか?

- 今回の講義で固定パーティションの仕組みに触れられましたが、その内容について質問があります。講義の図では7つのプログラムとOSを分けられていましたが、それら1つ1つの区別はどのようにつけているのですか?64kB毎に目印となるような仕組みを入れているのですか?

- マルチプログラミングの問題点で上げられていた再配置を改善するためにベースレジスタを設定するところで疑問を持ったのですが、ベースレジスタに格納するものはパーティションを指定するためのアドレス?のようなものという解釈で間違えてはいないでしょうか。また、固定パーティションを使用するときのメモリ空間の分割は均等でなくてもよいのでしょうか。

- 家で、20年前のSHARPのノートパソコンが発見されたのですが、何に使えば良いと思いますか? 機種名がPC-BJ300Mで、CPUが「3DNow!テクノロジ モバイルAMD-6-2+プロセッサ 533MHz 64KBキャッシュメモリ内蔵」、セカンドキャッシュが128KBで、メモリが64MBです。

- 大学生になって初めてプログラミングを学習したのですが、最初に学習した言語がCでした。現在私が配属された領域実習の研究室では別の言語を使ってプログラムを書いています。ただ、C言語の書き方 (?) にとらわれ過ぎていて中々今学習している言語が身につきません。これはその言語でプログラムを書く時間を増やして慣れるしかないのでしょうか。先生はいつも新しいプログラム言語を学ぶ際はどのようにして学んでいますか?

- 本を読んでも内容をすぐに忘れてしまうのですが、人はみなそうなのでしょうか。先生はどうですか? 僕はスマホの普及によって、SNSやゲームをする時間が増え、脳に何らかの影響が出ているんじゃないかと考えています。

- UNIX, Linuxについて勉強したいと思ったため本を購入しようと思うのですが何かオススメはありますか。

- 「ファームウェアは、ハードウェアデバイスにプログラムされたソフトウェアプログラムまたは一連の命令です。」ことから自動販売機や賢い洗濯機などに書いていたプログラム(firmware)の中身を見ることが可能でしょうか。見ることができる場合どのような手法がありますか。

- 大崎先生は今の職に就く前に企業に就職して働いていたのですか。

- Ctrl+Zの組み合わせを押すと、打った文字が前の状態に戻りますがこの前の状態の情報はCPUのアドレスに保存されているのでしょうか。またどのくらい前の状態までさかのぼることができるのでしょうか。

- 先生はページ数の多い専門書を用いて勉強するときに,すべてのページに目を通しているのでしょうか.このような専門書の活用法などを教えていただけるとありがたいです.

- 今までOSについて学んできて思ったのですが、もし、IT企業を興そうとするのならばどの分野やシステムがこれから伸びていくと思いますか?

- DuckDuckgo について、いつどうやって知りましたか?

- 大崎先生が考えるプログラミングができるという基準はどのようなものでしょうか。

- 最近自分は Adblock などの Web 上の広告をプロックする機能を持つアドオンの話をよく聞きます。その件で色々と考えさせられているのですが、先生はこうした広告ブロッカーに対して何か意見を持っていたりするのでしょうか? 少し気になったので聞いてみたいです。

要望

- 複数の動画があると集中が切れてしまうので動画を一本にまとめてほしいです。

16. (6) メモリ管理(2)

到達目標

- スワップおよびページングの概要・利点・欠点を理解し、他人に説明できるようになる。

- 代表的なページ置き換えアルゴリズムを理解し、その動作をトレースできるようになる。

ミニテスト 2020/6/17

講義ビデオを視聴した後、以下のミニテストのフォームから回答せよ。 各設問に対する回答は簡潔 (一行程度) でよい。

  オペレーティングシステム ミニテスト 2020/06/17
  https://forms.office.com/Pages/ResponsePage.aspx?id=MATZn9TuPk6aWibNlNnIswnrqKJs1rhIjHXZ6ebIPnZURE9UQjNTTTdOSDlBSFY2SFNHVzgySDM5Ni4u

Office 365 のアカウント→関西学院システム利用者 ID での認証 (例: abc12345@nuc.kwansei.ac.jp で認証→ abc12345 で認証) が必要です。

提出期限: 次回の講義日の前日の正午 (通常、火曜日の 12:00:00)

レポート課題 2020/06/17

「レポート課題 2020/04/22」と同じ。 ただし、講義日は 2020/06/17 とすること。

質問・要望・コメント 2020/06/17

対象者を除き、「質問・要望・コメント 2020/04/22」と同じ。 ただし、講義日は 2020/06/17 とすること。

対象者: 学生番号末尾が 3 または 8 の人は必須。それ以外の人は任意とする。

質問

- この講義に費やしてしまう時間が多いと感じました。他の講義との兼ね合いもあるので、講義ビデオの時間かレポートに費やすべき時間を少し減らしていただきたいです。今回(6/17の講義)は講義ビデオで約120分、ミニテストで約20分、課題レポートで60分と計200分ほど使います。私の容量が悪いということもあると思いますが、検討していただければと思います。

  「2 単位 = 90 時間の学修」が目安ですので、1 コマ 200 分だとやや足りないくらいです。

- 物理アドレスと主記憶装置は同じものですか、また仮想アドレスと補助記憶装置は同じものですか

  ぜんぜん違います。意味を知らなくても、「アドレス = 装置」ですか? は当然 NO であることがわかります。

- ハードウェアに関する問題です。今RAMの一種である主流のDRAMは発展し、DRAMのクロック周波数が上がるとパソコンが速くなることは、OSから見るとどうやって実現しましたでしょうか。パソコンを組み立てる時、容量とクロック性能が異なる数枚のDRAMは同じマザーボードに設置すると、OSは正常に認識しメモリを管理できますか。

  前半は質問がわかりませんでした。後半はマザーボードによります (→ マニュアルを見てください)。

- ページングとは仮想アドレスをMMUを用いて物理メモリアドレスに変換することを指すのですか。

  ページングは「方式」です。アドレス変換はページングの一部ですね。

- 大崎教授がたどり着いたOSの真理を教えてください。

  OS で大事なのは (外見ではなく中身が) 「美しい」こと。

- 情報科学における「並列」と「並行」の違いがあまり理解できていません。どういった違いがあるのでしょうか。

  「コンピュータ用語辞典」より一部抜粋:

  ---- コンピュータ用語辞典4: concurrent
    concurrent
    a.  並行の;コンカレント;並行
    →parallel(平行の)
    →simultaneous(同時の)
    →overlap(オーバーラップする;重複する)
    →sequential(順次の;逐次の)
    →serial(直列;順次;逐次)
    ▼JIS▼(X0003 02.04)
    並行:共通の時間間隔内に生起し,共通の資源を交互に使用しなければならないこともある複数の処理に
    関する用語.〈例〉単一の命令制御装置をもつ計算機上の多重プログラミングにおいては,数個のプ
    ログラムが並行に実行される.
  
  ---- コンピュータ用語辞典4: parallel
    parallel
    n./a.  並列;パラレル;平行
    →serial(直列;順次;逐次)
    →concurrent(並行の;コンカレント)
    各構成要素(例えば,1文字中の各ビット,1語中の各ビットなど)をそれぞれ同時に(パラレルに)処理
    することの形容.複合語として組み合わせが多彩だが,いずれも「並列〜」という意味をもつ.
    ▼JIS▼(X0003 02.01)
    並列:互いに類似した別々の機能単位によって扱われる個々の事象がすべて同じ時間間隔内に生起する
    処理に関する用語.〈例〉内部バスを構成する複数の線によって機械の語を構成する複数のビット
    を並列に転送すること.

- オペレーティングシステムの講義を見る際に動画を再生しようとするとブルースクリーンになり強制的に再起動になるときがあります。NECのパソコンを使っておりwindows10にアップデートしています。原因を調べるとグラフィックドライバ関連のエラーでした。グラフィックに関するドライバの更新をしましたが最新のもので変化がありません。なにか解決策はありますでしょうか。

  私なら Debian GNU/Linux に入れ替えます。どうしても Windows が使いたいなら、
  Windows をクリーンインストールします。

- 講義の仮想メモリーの部分ですが初めから混乱しました。仮想メモリは補助記憶での記憶領域でプロセスが実行中で一部不必要な情報を一時的に物理メモリから外してメモリ空間を改善していることでしょうか?仮想メモリーについてもう一度説明してほしいです。あと、ビットの部分で委託さんの単位が混ざりこんで理解がよくできていません。その部分ももう一度説明お願いします!

  ぜんぜん違います。講義ビデオを何度も繰り返し観てみてください。

要望

- 秋の領域実習の研究室選びに悩んでいます。大崎先生はなぜ人工知能などではなくOSを専門的に学ぼうと決めたのか教えていただきたいです。コメントも質問もありますが要望の重みが大きいので要望を選びました。

  私の専門はネットワークです……。

- ミニテストで問われている問題の回答部分を講義ビデオの画面上に記してほしいです。口答だけでは、問いに対して何が答えなのかあやふやになってしまい、理解することが難しいと感じます。

  おすすめしませんが、先にミニテストの設問を確認してから講義ビデオを観るという
  方法もあります。基本的に、みなさんは自身の技術を高めるために大学に来ているの
  で、技術が足りないと思うなら (技術が足りなくても何とかなるように教員に頼むの
  ではなく) 自分のやり方を工夫しましょう。

- 最近自作PCを組みました。PCI Express×8のスロットが余っていますがおすすめの拡張機能などはあるでしょうか?今考えているのがWi-FiやBluetooth機能を拡張しようと考えています。

  特にありません。私は USB のほうが好きなので、PCI バスの拡張カードにはそれほど興味を持ってないからです。

- 企業の研究職や開発職でもプログラミングなどはできると思うのですが、大学教授を選んだのはなぜですか。

  もともと企業で勤めるつもりでしたが、いろんな条件が重なって結果的に大学に残りました。

- ノートパソコンを使っていたら急に電源が切れて動かなくなりました。車のようにつけっぱなしにしているとバッテリーが上がって使えなくなることがあるのですか?

  どういう意味ですか? 

- 授業内で登場したページフォルトについてです。この割込みが頻繁に起こることでページング処理のCPU使用率が高まり、処理速度が遅くなるスラッシングが起こるそうですが、このスラッシングが終わらずどんどん処理速度が遅くなっていくとアプリケーションの強制終了などが必要になるのでしょうか。また、PCに標準でそのような機能はありますか。

  正しい日本語に直すとこうなります。

  授業内で説明のあったページフォールトについて質問があります。ページフォールト
  が頻繁に起こると、ページ置き換え処理のために CPU や I/O の使用率が高まり、OS
  全体の処理速度が極端に遅くなるという現象 (スラッシング) が起こるようです。ス
  ラッシングという現象がいつまでも続くような状況になった場合、アプリケーション
  の強制終了などが必要になるのでしょうか。また、OS はそのような強制終了の仕組
  みを持っているでしょうか。

  スラッシングから回復させたいなら、利用者が (スラッシングの原因となっている)
  プロセスを停止させる必要があります。OS は普通はプロセスを勝手に停止させませ
  ん。

- 今回の課題で調べ物をしているとスワッピングや仮想記憶を用いた方法以外にオーバレイという主記憶管理の方法があると知ったのですがこの方法はいまではあまり使われていないのでしょうか?

  はい (どんなコンピュータの話をしているかにもよりますが)。

- 作業効率を上げたいです。タイピングが速くなるコツはありますか。

  すべての学習に共通なのは、(1) 興味、(2) 正しい知識、(3) 正しい訓練、です。

- 私は、携帯電話業界において、ガラケーからスマートフォンへの進化ほどスマートフォンが今後進化することはないような気がしているのですが、近い将来スマートフォンは進化するだろうと先生は考えますか。

  「近い」の程度によりますが、もちろんよりよい形に変化するでしょうね。

- やはり来てしまいました。06/22にOSの講義ページにアクセスしてみましたがページの読み込みに時間がかかってきました。(特にビデオのページで)講義ページの読み込み方式を改善することをお願いします!先生が動画のFPSや解像度を落としてなるべくファイルサイズを小さくしているのは自分は見つけましたがビデオは今の時代ではやはり大きいもののようです。XO

  MP4 ファイルを HTTP で送信しているだけなので、これ以上ない計量な方法で配信し
  ています。VPS (サーバ) までのネットワークが混んでいる可能性はあります。

- ビデオの分割の感謝します!自分が復習するときにすぐにどこに行けばよいのかがわかるのでこれからも分割してください。もし統合してしまうと再生バー使った再生は問題が出てきますのでこのままでお願いします!

  はい。

- 余談ですが、先生のQ&Aを聞いていてとても楽しいし最もこの講義で楽しみにしているパートです。最近ではネットでLivestreamingが流行ってますがこのQ&AをLivestreamingの形で広めたいつもりはありますか?自分がこう思ったのは自分が一度ネットをいっぱい利用してプログラミングや大学の専門知識を勉強しようと思いましたが知識がしってくるにつれネットで書いている内容はより専門に近づくにつれて内容が雑で問題がある内容が出てきます。(失礼になるかもしれません。申し訳ございません。)そこで先生は教授でネットでより信頼性の高い知識をより知りたい人に広めたらいいなと思いました。先生はLivestreamingで知識普及についてはどう思っていますか?ちなみに中国では李永樂先生という先生はこのことをしています。彼は中学の物理教師ですがビデオを通じて多くの学校にいけない中国の子供たち教育の機会を与えることができました。

  私も基本的に知識や情報はオープンするべきだと思います。ただ、この質問・要望・コメントははそういう用途で集めたものではない (事前に学生さんの了解を取っていない) ので配信するのは難しいですね。

- 最後ですが、講義ビデオの分割についてですがそれの投票を作りましたLinkを以下に張り付けします。先生がGoogle社をあまり使わないとおっしゃってましたが自分はこの投票をしか知らないので良ければ編集者設定は自由にしていますので利用できたうれしいです。https://docs.google.com/forms/... Warnning:これにアクセスするには先生のGoogleアカウントが必要になるかもしれません。 https://docs.google.com/... こちらはログインなしのプレビュー表示でログインなしで済みますので利用できたらうれしいです。自分は本当にこの講義が好きです。素晴らしい講義に感謝します。

  ありがとう。せっかくですが、個人的に Google のサービスは許容できないので使えないです。

- 就活に向けて応用情報技術者試験を受け、資格を取得しようかなと思っています。就活においてこの資格はどのような意味を持つのか教えてほしいです。

  過去の「質問への回答」を観てください。

- 先生は基本情報処理者などの情報系の資格を持っていますか?持っているのなら何の資格を持っていてどういう意図でとったのですか?また、持っていなければなぜ撮らないんですか?

  過去の「質問への回答」を観てください。

コメント

- レポート課題に取り組むために、自分で参考文献を読んだりネットで資料を調べると、難解な言葉や説明が多く大変だと感じる。普段の授業で先生が理解しやすいようにかみ砕いて説明しているかがよくわかる。と同時にきちんとした資料(文献)ほど難しいことが書いてあるのでギャップを感じ、消化が大変だと感じる。

17. (7) 入出力 (外部 I/O)

到達目標

- コンピュータにおける入出力デバイスの構成を理解し、他人に説明できるようになる。

- DMA (Direct Memory Access) と割込み (interrupt) の概要と重要性を理解し、他人に説明できるようになる。

- 入出力ソフトウェアの 3 種類の実現法 (プログラムド I/O、割り込み駆動 I/O、DMA を用いた I/O) を理解し、それぞれの利点・欠点を他人に説明できるようになる。

ミニテスト 2020/6/24

講義ビデオを視聴した後、以下のミニテストのフォームから回答せよ。 各設問に対する回答は簡潔 (一行程度) でよい。

  オペレーティングシステム ミニテスト 2020/06/17
  https://forms.office.com/Pages/ResponsePage.aspx?id=MATZn9TuPk6aWibNlNnIswnrqKJs1rhIjHXZ6ebIPnZUNFAyVUNURjlPTUlHSlUxVjYwTUtES0dHNC4u

Office 365 のアカウント→関西学院システム利用者 ID での認証 (例: abc12345@nuc.kwansei.ac.jp で認証→ abc12345 で認証) が必要です。

提出期限: 次回の講義日の前日の正午 (通常、火曜日の 12:00:00)

レポート課題 2020/06/24

「レポート課題 2020/04/22」と同じ。 ただし、講義日は 2020/06/24 とすること。

質問・要望・コメント 2020/06/24

対象者を除き、「質問・要望・コメント 2020/04/22」と同じ。 ただし、講義日は 2020/06/24 とすること。

対象者: 学生番号末尾が 4 または 9 の人は必須。それ以外の人は任意とする。

質問

- 六月から夏期のインターンシップの募集が始まり、私自身いくつかの企業に応募しました。その中のいくつかの企業のESでプログラミング経験の有無、使える言語、またそれぞれの言語がどの程度の習得度ですか?といった質問がされるのですが、自分の能力をどの程度と説明するのかが妥当かわかりませんでした。プログラミング実習1,2,3を余裕をもって合格している人はどの程度の習得度と説明するのが妥当でしょうか。

  大学のプログラミングの授業を「優」で合格する程度、でしょうね。

- FCFSとFIFOの違いは何ですか.

  非常に似ていますが、観点が違います。FCFS はサービスの話、FIFO はデータ構造の話。

- 大崎先生がオペレーティングシステムを研究し、最も面白いと思ったことは何ですか。

  研究してません (前回の Q&A 参照) が、UNIX の programming workbench という考
  え方に *も* 感銘を受けました。

- 物理メモリ空間には領域に上限があり、物理空間から溢れたプロセスを仮想メモリ空間で扱い、必要に応じて物理メモリ空間に呼び出すことで実際の物理メモリ空間が処理できるプロセスよりも多くのプロセスを処理できることを学びましたが、仮想メモリ空間は無限なのでしょうか、仮想メモリ空間にも上限が存在するのでしょうか。

  理論的には無限でも構いません。実用的には CPU のレジスタのビット長で普通は上限になります。

- 先生がここ数年に開発されたゲームで面白いなと思ったゲームはありますか?

  ほとんどゲームは作ってません (スマホの子供向けアプリくらい?)。その中だと暗算
  ゲームです。

- パソコンを買おうとネットで下調べをした時に「パソコンの寿命は5年程度」という文面をよく目にしたのですが、これには「ハードディスクが大体5年で壊れるから」などの理由が裏付けされているのでしょうか。

  処理能力が日進月歩だからある程度経てば時代遅れになる、消耗が速いするパーツの
  設計寿命なども考慮されているとは思いますが、一番は「たくさん売りたい人がいる
  から」の気がします。

- 今学期は、ほとんどの科目がオンライン授業となっています。家の中でも、キャンパスで講義を受講しているときのように、めりはりをつけて学習を進めるための良い方法はありますか。

  難しいですね。私は「集中して作業する時のスタイル」を決めています。いい方法が
  あれば紹介してください。

- Windows10では64bit版と32bit版がありますが、性能の低い32bit版を使うメリットは何かあるのでしょうか?

  ごめんなさい。Windows の詳しいことは知りません。一般論としてはほとんどないと
  思いますが、ディスクの容量が抑えらえる、問題解決が容易になる、というメリット
  はあるでしょう。

- 本講義の終盤に元から予定していたレポート課題があると前の講義でおっしゃっていましたが、その形式はどのような物なのでしょうか。

- 以前最終レポートを用意しているとおっしゃっていましたが、その詳細はいつ公開される予定ですか。また、提出期間は試験期間中になるのでしょうか。

  今日 (7/1(水)) の講義中に説明します。

- 今回の授業とは関係ないですが、コロナの影響でオンラインでの授業となり、絵を描いたりして分かりやすく説明してますが、今までの授業では板書形式で同じように説明する授業だったのでしょうか。

  ほとんど同じ形式でした。変わったのはまともなマイクで収録するようになったこと、
  Forms のミニテストが追加されたことくらいです。

- ディスクの回転の速度や針(ハードディスクの図に書いてある棒)の位置はOSによって制御されているのですか?それともギア比などによって制御されているのですか?OSによって制御されていると仮定した場合はじめコンピュータを立ち上げる瞬間にはメモリに何もないはずなので動かないはずです。しかしハードディスクもデバイスなのでOSか何者かによって管理しなければ(OSによって制御されていないと仮定すると)番地を指定して読み書きすることが出来ないという矛盾が起きてしまうと考えました。

  ハードディスク単体で動きます (そのためのハードディスクコントローラです)。

- メモリマップド I/Oで、制御レジスタをメモリ空間に割り付ける際に、この番地からこの番地までをvideo controllerに割り付け、この番地からこの番地までをtouchpad controllerに割り付ける、というように、どれに、番地のどこからどこまでを割り当てるのかは決まっているのでしょうか?また、割り当てる範囲の大きさは全て等しいのでしょうか?

  計算機によります。

- オペレーティングシステムの講義で得た知識が実際に役に立ったと思える瞬間はどういった時ですか。

  「コンピュータとは何か、ハードウェアとは何か、ソフトウェアとは何か」といった
  理解が連続的に深まります。ので、「あ、少しわかった気がする」と思える時です。

- レポートを送信した際に表示される送信時刻のことで質問があります.なぜ実際レポートを提出した時刻と表示されている時刻が7時間ほどずれているのでしょうか.

  タイムゾーンが UTC になっていたからです。JST に変更しておきました。

- 先生は質問への回答で正しい日本語、正しい意味など正しさについて話すことがあり、その話を聞いてから確かに言葉遣いや文章などに正しさは重要だなと思い、気をつけるようにしているのですが、どういったものが本当に正しいのかという判断が難しいなと思いました。先生にはなにか「正しい」ということ判断する基準のようなものはありますか?

  「正しさ」の根拠を示せる / 説明できるか、です。

- 自分でプログラムを書きWEBアプリケーションを作るときに気を付けることはありますか?

  漠然としているので一般的なことしか言えません。具体的に質問してくれれば答えら
  れると思います。

- 参考書p287に「プログラムドI/Oは単純ではあるが、全てのI/Oが終了するまでCPUの全ての時間を拘束する」とありますが、これはクォンタムを指しているのでしょうか

  質問がわかりません。「これ」は何を差していますか? クォンタムは量/単位です。

  ---- CALD3: _quantum_ /kwn.tm/ (US) /kwn.tm/plural quanta SPECIALIZED noun [C]
  _quantum_ /kwn.tm/ (US) /kwn.tm/plural quanta SPECIALIZED noun [C]
  the smallest amount or unit of something, especially energy
  - quantum theory
  [SMART thesaurus] → Particular theories and concepts in physics → Weighing and measuring

- どういったことがきっかけでネットワークを専門としていくことを決められたのですか。

  入った研究室がたまたまネットワークの研究室でした。

- ネットワークについての質問です。この夏にあるコンテンツを作ることになりました。そのコンテンツにはネットワークが必要です。いわゆるマルチプレーヤー型のリアルタイムゲームに近いコンテンツで、多くの人が同時にアクセスし、同時進行で動作することのできる、負担の少ない(ネットワークが非常に遅くなったりしない)ネットワークを用意しなければなりません。先生ならばどういったネットワークを用意しますか?

  ネットワークは「網」なので、網のどの部分の話をしているかによります。また、何
  をどの程度したいのかにもよります。具体的に質問してくれれば答えられると思いま
  す。

- 2020年度春学期のOSの講義で使用した動画は、いつまでこのページに残る予定ですか。

  春学期の授業期間中は公開しておく予定です。ダウンロードしておくことをおすすめします。

- 前回のQ&Aで解説されていた、古いノートパソコンをディスプレイの代用として活用する方法を試してみようとしたのですが、あまりやり方がわからず、断念しました。どのようなやり方が存在するのでしょうか。

  いろいろな方法がありますが、例えばこれ↓とか。

  ThinStation
  http://thinstation.org/

- 前回の講義でUSBのこだわりがあるとおっしゃっていましたが、どのようなこだわりがあるか教えていただけませんか。

  USB 接続のシンセサイザ (ハードウェア) を開発して、それを制御するデバイスドラ
  イバを書いたりしています。

要望

- 私個人的には教授がして下さっているように、動画を分割してくださった方が学習しやすいので、有難いです。

- 今回、質問への回答をまとめてくださっていて、とても見やすかったです。できれば今後もこの方法を続けてもらえると嬉しいです。

18. (8) 入出力 (ユーザインターフェース)

到達目標

- 3 種類のユーザインターフェース (キャラクタ端末、GUI、ネットワーク端末) の概要とそれらの特性を理解し、他人に説明できるようになる。

ミニテスト 2020/07/01

講義ビデオを視聴した後、以下のミニテストのフォームから回答せよ。 各設問に対する回答は簡潔 (一行程度) でよい。

  オペレーティングシステム ミニテスト 2020/07/01
  https://forms.office.com/Pages/ResponsePage.aspx?id=MATZn9TuPk6aWibNlNnIswnrqKJs1rhIjHXZ6ebIPnZUMlEwMkY0MjBUMU80VFJaT1NIVTE5V09JNi4u

Office 365 のアカウント→関西学院システム利用者 ID での認証 (例: abc12345@nuc.kwansei.ac.jp で認証→ abc12345 で認証) が必要です。

提出期限: 次回の講義日の前日の正午 (通常、火曜日の 12:00:00)

レポート課題 2020/07/01

「レポート課題 2020/04/22」と同じ。 ただし、講義日は 2020/07/01 とすること。

質問・要望・コメント 2020/07/01

対象者を除き、「質問・要望・コメント 2020/04/22」と同じ。 ただし、講義日は 2020/07/01 とすること。

対象者: 学生番号末尾が 0 または 5 の人は必須。それ以外の人は任意とする。

質問

- 最終レポートはword10ページ分ぐらい絶対に書かないといけないのですか?

- 最終課題レポートは、どれくらいの文字数が適していますか?

  A4 10 ページ程度が目安です。

- 質問・要望・コメントは、学生番号の下1桁が対象になった人を必須で回答するようにされていますが、講義の回数を見ると、一部の方(4週目、5週目に対象となり回答した人)は回答が1度少なくなるように見えます。このことが理由で成績評価等に何か不利益な事が生じるのでしょうか。

  生じません。もっと自分の人生にとって大切なことに興味を向けましょう。

- ゲーム開発をしてみたいと思っているのですが、Unity以外でおすすめのゲームエンジンなど知っていますか。

  何を作りたいのかにもよりますが、「作ってみたい」という段階なら Pygame
  (https://www.pygame.org) をおすすめします。

- 講義ビデオのダウンロードに関して、これまでの分の一括もしくは日付ごとでのダウンロードできるようになればいいなと思いましたができないでしょうか。

  自由にダウンロードしてください。

- オペレーティングシステム以外に担当している科目はありますか?

  学部向けの授業だと、春学期は領域実習です。秋学期はプログラミング実習 III、ネッ
  トワークコンピューティング、ネットワークコンピューティング実習です。秋学期の
  授業もぜひ履修してください。

- GUIについて調べ、グラフィックスを多用して情報を視覚的に表現して、基礎的な操作をマウスなどのポインティングデバイスによって行うことが出来るヒューマンインタフェースという事が理解できたのですが、GUIを構成する要素の例としてテキストボックスが出てきていて、キーボードを用いて指示を与える方法はCUIであるはずと考えていたので、どういうときにGUIとCUIに分類されているのか分からなくなりました。GUIとCUIの違いが何なのか詳しく教えてほしいです。

  キーボードを用いて指示を与えることが「主」であれば CUI です。

  ---- 新辞林: ジーユーアイ【GUI】
  ジーユーアイ【GUI】
  〔graphical user interface〕
    コンピューターのグラフィックス表示とマウスなどのポインティング-デバイスを用いたソフト
    ウエアの操作体系。直観的に理解可能で,操作が容易。

  ---- 新辞林: CUI[character-based user interface]
  CUI[character-based user interface]
    パソコンで,文字や記号を入力することによる操作を基本としたユーザー-インターフェース。

- 最新のオペレーティングシステムに関する技術や論文が紹介されているおススメの雑誌があれば教えてください

  あまり良い雑誌はありませんね。「日経 Linux」はおすすめです。

- ある本を読んで「過去を振り返ったり、未来のことを心配するのではなく、今この瞬間に意識を集中させることの大切さ」を学んだのですが、なかなかできません。コツを教えてください

  すべての学習に共通なのは、(1) 興味、(2) 正しい知識、(3) 正しい訓練、です。

- 実家に誰も使っていないノートパソコンがあったので、前回の質問で説明されていたThinStationを試してみようと思ったのですが、無線と有線のどちらでもネットワークに接続が出来ません。先生はどこに原因があるとおもいますか。

  情報が少なすぎてわかりませんが、勘で答えるなら、単なる設定ミス (質問者の方が
  やり方を知らないだけ) だと思います。

- 大学時代にたまたま入った研究室がネットワークの研究室だったということだったのですが、学生時代興味のある分野などはなかったのでしょうか

  UNIX とプログラミングでした。

- 大崎教授は学生時代インターンシップに参加されましたか? 参加された場合、そこで何を学んだか、参加されていない場合はなぜ参加しなかったか教えていただきたいです。

  参加したことはありません。そういう機会がなかったからです。

- ほとんどのパソコンはGUIを使用していることを知りましたが、GUIが使われていない今日のパソコンはどんなものがあげられますか?またそのパソコンがGUIを使わない理由は何ですか?

  質問が変ですね。パソコン = personal computer (ハードウェア) です。ハードウェ
  アに GUI はありません (GUI はソフトウェアの話)。富士通のパソコンでも、NEC の
  パソコンでも、CUI も GUI も両方使えます (どんなソフトウェアを動作させるのか
  によります)。

- 先生はやたらとGoogleやWindowsなどを嫌っていますが実際GoogleやWindowsが世間的によく使われている(少なくとも自分はDuckduckgoやOSではWindowsやMacOS以外を使っている人を見たことがないです)理由は何だと思いますか。

- この授業を通して、先生はWindowsに対して批判的な言論を多数述べていました。その言論の中で私自身納得できる事も多々ありましたが、世間一般で見ればwindowsが普及しているのは事実だと思われます。何故今世間ではwindowsが普及しているのかの先生の見解が聞きたいです。

  社会は経済の原理で動いているからでしょう。

- 最終レポート課題について質問です。レポートの構成の「1. 課題説明 (「最終レポート課題」の内容をそのまま貼り付ける)」について、講義動画の説明を何度聴いてもよく分からなかったのですが、「『最終レポート課題』の内容をそのまま貼り付ける」とは、 ……の文章の中から自分が選んだものを1つそのままコピペすれば良いということで間違いないでしょうか? もう一度詳しく説明して頂けましたら幸いです。よろしくお願い致します。

  このページの「20. 最終レポート課題」をそのまま貼り付ける、という意味です。

- 後数週間で学生は夏季休業に入りますが、三回の夏季休業期間に勉強や就活に向けてなど何かしておいた方がいいと考えることはあるのか教えてほしいです。

  その人の人生観によりますが、何か (できれば健全なもの) に熱中してください。

- RAMとメモリ、ROMとストレージの違いを教えてください。

  まず、言葉の意味を理解してください。RAM と ROM はメモリの種類 (末尾の M は
  Memory の M)、ストレージは情報が蓄積される場所です。

- 研究論文などを作成ための参考資料などを選ぶ際に重視している点は何ですか。

  基本的に内容です。が、あとは良い資料に記載されている参考文献です。

要望

なし

コメント

- 講義ビデオを分割してくださることでより集中でき、メリハリをつけて楽しく講義を受けることができているので、ありがたいです。

- もう残りも少なくなってきているので、最終課題を含め、しっかりやりたいと思う。

20. 最終レポート課題

自身で選択した「オペレーティングシステムに関する技術」について調査し、 調査結果をレポートにまとめよ。以下から調査する「オペレーティングシステ ムに関する技術」を一つ選び、その技術を、信頼のおける文献に基づいて調査 せよ。

  1. 講義で学んだオペレーティングシステムに関する技術のうち、さらに深く知りたいと思うもの
  2. 最近、メディア等で話題になっているオペレーティングシステムに関する技術のうち、その中身を理解したいと思うもの
  3. 過去 5 年以内に雑誌・論文等で発表されたオペレーティングシステムに関する技術

レポートの構成は以下の通りとせよ。

  表紙 (タイトル、学生番号、氏名、メールアドレス、提出日、授業科目名、担当教員名など)
  1. 課題説明 (「最終レポート課題」の内容をそのまま貼り付ける)
  2. 調査対象のオペレーティングシステムに関する技術
  2.1 「オペレーティングシステムに関する技術」の名称
  2.2 選択したカテゴリ (上記の 1〜3 のどれに該当するか)
  2.3 調査対象として選択した理由
  3. 調査方法
  3.1 文献一覧 (文献の著者・タイトル・雑誌名/書籍名・出版年月・巻・号・ページ数など)
  3.2 文献の選定理由 (なぜ選んだか? 信頼できると判断した理由の説明)
  4. 調査結果
  4.1 調査結果の概要 (調査結果を 1 パラグラフで要約する)
  4.2 XXX の背景 (XXX に「オペレーティングシステムに関する技術」名が入る、その技術が登場した歴史的・社会的背景)
  4.3 XXX の目的 (その技術は何を解決するために生まれたか?)
  4.4 XXX の仕組 (その技術のメカニズムや動作原理など)
  4.5 XXX の利点 (他の技術と比較した時の優位性は?)
  4.6 XXX の限界 (その技術の限界や問題点は?)
  5 感想 (授業、課題、最終レポート課題等に関する感想を自由に)

レポートは PDF 形式で作成し、提出せよ。構成以外の様式は自由とする。

提出方法: 「レポート課題提出フォーム」から添付ファイルとして送信せよ。 講義日は「final_report」を選択せよ。設問1〜設問3 は空白でよい。レポート が再提出された場合は、新しいほうを採点対象とする。

提出期限: 2020/7/31(金) 正午 (期限を過ぎたレポートは受理しない)

注意事項: 提出されたレポートは、今年度の他の受講者に公開する。他の受講者に公開 されて困る内容はレポートに含めないこと。

注意事項: 提出されたレポートは、匿名にした上で、来年度以降に大崎が担当する講義 の受講者に公開する場合がある。他の受講者に公開されて困る内容はレポートに含めな いこと。

19. (9) ファイルシステム

到達目標

- ファイル、ディレクトリ、ファイルシステムの概念を理解し、他人に説明できるようになる。

- OS における典型的なファイル操作、ディレクトリ操作を理解し、他人に説明できるようになる。

ミニテスト 2020/07/08

講義ビデオを視聴した後、以下のミニテストのフォームから回答せよ。 各設問に対する回答は簡潔 (一行程度) でよい。

  オペレーティングシステム ミニテスト 2020/07/08
  https://forms.office.com/Pages/ResponsePage.aspx?id=MATZn9TuPk6aWibNlNnIswnrqKJs1rhIjHXZ6ebIPnZUQjc4VUlKQlU3OVJNUDcyVEJURTEwR01IWS4u

Office 365 のアカウント→関西学院システム利用者 ID での認証 (例: abc12345@nuc.kwansei.ac.jp で認証→ abc12345 で認証) が必要です。

提出期限: 次回の講義日の前日の正午 (通常、火曜日の 12:00:00)

レポート課題 2020/07/08

「レポート課題 2020/04/22」と同じ。 ただし、講義日は 2020/07/08 とすること。

質問・要望・コメント 2020/07/08

対象者を除き、「質問・要望・コメント 2020/04/22」と同じ。 ただし、講義日は 2020/07/08 とすること。

対象者: 学生番号末尾が 1 または 6 の人は必須。それ以外の人は任意とする。

質問

- パスワード認証でループするバグが再び起きました。今回は動画を少し長い間止めていた時に起きました。このウェブサイトのタイムアウトに関する処理について教えて下さい。

  単なる HTTP (HTTPS) なので、タイムアウトする/しないはブラウザ側の実装による
  と思います。

- インターンに参加したことがないということでしたが、もし企業にインターンに行くという機会があったとすれば、どのようなことに注目しどのようなことを得ようと考えるのか、または私たちが意識すべきところなど先生の考えが知りたいです。

  あくまで仮定の話ですが、インターンに参加する機会があっても参加しない気がしま
  す。それよりもっと自分の有意義だと思うことに時間を使うと思います。

- 秋学期の領域実習をどこにするか迷っています。シラバスを見ましたが、改めて大崎先生の領域実習は具体的にどのような実習をするのでしょうか?教えていただけると幸いです。

- 秋の領域実習について迷っています。大崎先生の領域実習はどのような実習をやるのでしょうか。シラバスを見ましたが、改めて具体的に教えていただけないでしょうか?よろしくお願いします

  Debian GNU/Linux をスクラッチからインストールして、すべてキーボードで操作で
  きるような環境を構築します。

- 関西学院大学は情報科学の分野において、どれぐらいの研究業績を残しているのでしょうか。他大学と比較して「ここが強い」といえる研究はありますか。

  そういうデータは見たことがないのでわかりません。大学単位とか、研究者単位のデー
  タなら探せばあると思います。

- 私は院に行こうと思っていますが、最近周りがインターンの話をしていたりすると少し焦りを感じるようになりました。今のところこういう職業に就きたいという具体的な目標もなく、やりたいことも見つけられないままでこのまま就職するのもどうだろうなと思い、学校の勉強もわりと好きなので院に上がって研究する中で何か自分が向いていること、やりたいことを見つけたいと思っています。こういう職に就きたいという具体的な目標はいつまでに持っておくべきでしょうか。

  それで (それが) 良いと思います。50 歳くらいまでに持っていれば十分だと思いま
  す。「自分が何をしたいのかを言わないといけない」というのは悪い風潮だと思いま
  す。

- 今学期の途中から、LUNAをMicrosoft Edgeで開くと、「課題レポートの提出の際などにファイルを開いたまま添付すると、提出しても白紙となる場合があります。」というメッセージが出るようになりました。Microsoft Edgeの不具合と書いてありますが、理由はなにでしょうか。また、オペレーティングシステムの課題に関しても同様に、Microsof Edgeを用いて課題レポートを提出すると、白紙になることはあるのでしょうか。

  Micorsoft Edge の不具合 (バグ?) と聞いています。Edge のバグなら同じように 0
  バイトになってもおかしくないでしょうね。

- 教授視点ではオンライン授業と対面授業を比べた場合、オンライン授業の利点や欠点はどのようなものですか。

  大人数授業 (例えばこのオペレーティングシステムの講義) ではかえってオンライン
  のほうが良いくらいだと思います。少人数授業 (例えば領域実習) は学生同士の議論
  に最も価値があるので、そこが損われていると思います。

- 最終レポートを提出する際、ファイル名に指定はありますか?なければ「学籍番号_名前.pdf」で提出しようと思っているのですが、問題ないでしょうか。不安に思ったので質問させて頂きました。

  問題ありません。前回同様、自分の将来にとってもっと価値のあることにぜひ興味を向けてください。

- 先日、プレゼンテーションをする機会があり、事前に計画していた通りにできませんでした。良かった点、悪かった点、改善点の整理はできました。大崎教授は、どのように整理しますか。

  繰り返しになりますが、すべての学習に共通なのは、(1) 興味、(2) 正しい知識、
  (3) 正しい訓練、です。「できた/できなかった」にはあまり興味がないので、(1)〜
  (3) が実行できているかを考えます。

- 新型コロナウイルスの影響を考えて就職ではなく大学院に進学することについて先生はどう思われますか?

  (新型コロナウイルスの影響に関係なく、特別な事情がない限り) 進学をすすめます。

- 大学生のアルバイトの是非について質問です。私の父は「大学生は社会経験としてアルバイトをすべき」という考えを持っており、一方で、私の学科のある教授は「学生は大学での学びや健全な遊びに時間を費やすべきで、アルバイトに時間を費やしてはならない」と考えています。大崎先生は大学生はバイトをすべきだと考えますか?場合によるとお考えならば、すべき場合とそうでない場合をそれぞれ例を用いて説明してください。

  熱中できる事がないなら (家で YouTube を観てるくらいなら) アルバイトをしたほ
  うがよっぽど有益でしょうね。ただ、アルバイトより、Linux カーネルのソースコー
  ドを読んだり、タネンバウムのオペレーティングシステムに熱中したりするほうが
  (比較にならないくらい)有益でしょう。

- 私は講義動画を倍速で見ているのですが、先生からすると倍速での視聴はおすすめできますか?また、動画での講義とテキストや画像のみでの講義では理解度に差があると思いますか?私はどちらにせよ学習者の意欲によって理解度は変わると思うので授業の形態はあまり関係ないと思います。オンライン授業になって授業形態の差に疑問を感じたので教えてほしいです!

  まったくお勧めしません。(ほぼすべての研究結果が) 講義の重要性を示唆していま
  す。厳しい言い方かもしれませんが、「私は意欲があるので、倍速再生でも、どんな
  授業形態でも学習効率は変わらない」と勘違いしている、に一票。

- 日本の方で、影響を受けた方や尊敬できる方がいれば教えていただきたいです。

  伝記を読むのが好き (だった) ので、いろんな人に影響を受けています。

- 就活で一つの武器になると思いTOECで700点を取りました。しかし英語で話しながら表現する能力はほとんどつきませんでした。先生は英語で論文を発表するための力をどのようにして培いましたか?

  これも、(1) 興味、(2) 正しい知識、(3) 正しい訓練、です。  

- Githubにはどれくらい慣れていたら実践的なレベルと言えますか?

  問いがナンセンスな気がします。自分が言う (自称する) なら「ご自由にどうぞ」、
  他人に言う (伝える) なら「そんな必要はない」と思います。それよりもっと自分の
  有意義だと思うことに興味を向けると…… (以下同文)。

- 最近、私がゲーミングパソコンの購入を考えているのですがゲーミングパソコンを扱っているおすすめの企業さんやおすすめのゲーミングパソコンなどあれば教えて欲しいです。

  Gaming Computer というのはただの宣伝文句なので、騙されないように注意してくだ
  さい。「大学生用文房具の購入を考えているのですが大学生用文房具を扱っているお
  すすめの企業やおすすめの文房具があれば教えて欲しいです。」と同じように聞こえ
  ます。「大学生用文房具と言うぐらいだから、何か大学生にとって有益な文房具なの
  だろう」のように騙されないでください。

コメント

- 前回の講義で作業時の集中力はどのようにすれば上げることができるかというお話がありましたが、ぜひ「水分補給」というものを試してみてください。私は特にジュースやコーヒなどではなくただの水が一番良いと考えています。水は体の約7割を占めているとも言いますし、なかなかに効果が期待できると思います。「Frontiers」にも掲載されたことがあるそうです。

  なるほどね。

- 以前大崎先生は質問への回答としてフリーソフトウェア活動家のリチャード・ストールマンを尊敬しているとおっしゃいました。この人物の持つ思想は関西学院大学の理念「Mastery for Service」に通じるものがあると感じ、とても感銘を受けました。私は学生として単位や成績にこだわってしまう所がどうしてもあったのですが、認識を改め、社会に貢献するためにはいま何をすべきかを考えることが大切だと思えるようになりました。

  重要な一歩を踏み出しましたね。

- 1つのフォルダ内に全く同じ名前のファイルを作成しようとすると(ファイル名 (1))のように最後に数字がつくのはユーザーから見て同じ名前だと判断がつけられないからだと思っていたのですが、そうではなくコンピュータ側から見て判断がつかないからだと分かりました。

- ファイルとフォルダがどっちがどっちかわからなくなる理由がわかりました。

21. (10) マルチメディア処理

到達目標

- マルチメディア処理の困難さを理解し、他人に定量的に説明できるようになる。

- マルチメディアデータの表現方法・規模を理解し、他人に説明できるようになる。

ミニテスト 2020/07/15

講義ビデオを視聴した後、以下のミニテストのフォームから回答せよ。 各設問に対する回答は簡潔 (一行程度) でよい。

  オペレーティングシステム ミニテスト 2020/07/15
  https://forms.office.com/Pages/ResponsePage.aspx?id=MATZn9TuPk6aWibNlNnIswnrqKJs1rhIjHXZ6ebIPnZUMDlPUEFCQUFJM0RNNEw2UDlWSFpERUI3VS4u

Office 365 のアカウント→関西学院システム利用者 ID での認証 (例: abc12345@nuc.kwansei.ac.jp で認証→ abc12345 で認証) が必要です。

提出期限: 次回の講義日の前日の正午 (通常、火曜日の 12:00:00)

レポート課題 2020/07/15

「レポート課題 2020/04/22」と同じ。 ただし、講義日は 2020/07/15 とすること。

質問・要望・コメント 2020/07/15

対象者を除き、「質問・要望・コメント 2020/04/22」と同じ。 ただし、講義日は 2020/07/15 とすること。

対象者: 学生番号末尾が 2 または 7 の人は必須。それ以外の人は任意とする。

質問

- 講義では、マルチメディアとはメディアが複数あるという事を指していましたが、VRやARのような技術はマルチメディアといえるでしょうか?顔に装着したデバイスを動かすと、それに伴って見えているものなどが変わるというものは、音声や静止画が連続したものと考えれば良いのでしょうか?それとも音声メディア、動画メディアのようにVRメディアのような新たな単一のメディアとして考えれば良いのでしょうか?

  「マルチメディア」は「メディアが複数である」ことだけを意味しています。ヘッド
  セットを使った VR の場合、ヘッドセットに何を投影しているかによって「マルチメ
  ディア」かどうかが決まります。

- 音楽を聞きながら勉強することに対して、先生はどのような考えをお持ちでしょうか

  特に強い意見は持っていませんが、私は作業をする時は音楽をかけています。

- 大崎教授は後期もオンライン授業を希望しますか。

  授業形態を自由に選べるなら、ハイブリッド方式が最も教育効果が高いような気がします。

- これからの暮らしについて、注意すべき点があれば教えていただけませんか。

  これまでも、これからも大きな変化はない (大切なことは昔から重要) と思います。

- マルチメディア処理とオペレーティングシステムの関係について疑問が残りました。オペレーティングシステムはアプリケーションとハードウェアの仲介をしている部分なので「マルチメディア処理」をすることに間接的に関係しているのか、オペレーティングシステムが「マルチメディア処理」を行っているのか、どちらに該当しますか。根本的に間違っているならば解説をお願いします。

  どちらでもありません。マルチメディア処理を行っているのはコンピュータ (= ハー
  ドウェア + ソフトウェア) ですので、オペレーティングシステムも主役の一員です。

- C++について勉強しようと考えているのですが参考書が多くどれを購入したらよいか迷っています。先生が勧めるC++についての参考書があれば教えていただきたいです。また、先生が参考書を購入する際にどのような基準を設けているのでしょうか。

  C++ はそれほど真面目に勉強していない (数冊読んだ程度) ので、勧められるほど本
  を読んでいません。基本的に、(1) とりあえず読む (選択に時間をかけない)、(2)
  役立たないと思ったら遠慮なく途中で止める、ようにしています。

- Windowsはよくサポート終了が話題になりますが、他のOSではあまり聞かないのは何故でしょうか?

  社会が経済原理で動いていて、Windows は企業で主に用いられているからでしょう。

- レコードからCD,配信と形を変化するなかでよりコンパクトになってきているが音質は劣化する一方だと聞いたことがあります。やはりCDや配信よりも音質だけを考えるとレコードのほうが良いのでしょうか。

  まったくの誤りですね。常に、正しい情報源から情報を入手するように心掛けてくだ
  さい。さらに、仕組みや原理を理解して、自分の頭でロジックを組み立てられるよう
  になってください。

- 先生はずっと情報科学分野に携わってきて、OSやネットワークとはなにか? という真理にたどり着けましたか? 僕は「生きる意味はなにか」とか「正しいとはどういうことか」とかたまに考えますが答えや真理は見つかりません。この先経験を積んだり知識が増えても真理とやらにたどり着くことはないと考えています。人間は学び続けることで真理や答えに近づくことを試みながら死ぬと思います。

  OS は素人なのでまだです。ネットワークは少し「見えた」気がします (気のせいかもしれませんが)。

- よくある話で海外留学して腕を磨くという話があると思いますが、海外留学で腕を磨くことはいいことだと思いますか? 仮定として例を書くと「一流のパティシエになりたいから本場のフランスに留学しパティシエ学校に通いたい/店で修行したい」のような場合の話です。質問を整理すると、本場(日本よりもその分野で進歩している環境)で活動し揉まれることはスキルアップにつながるのかということになると思います。僕は直観的に「進んでる環境に身を投じることは成長につながるから海外留学は(経済的な面を無視すれば)いいことだ」と安易に考えています。

  その通りだと思います。

- なぜ日本はIT後進国なのですか?

  どこと比較するかによりますね。G20 の中なら先進国でしょうし、アメリカの最先端
  分野と比較すると遅れているでしょうね。

- 先生がおっしゃていた学習に必要な (1)興味, (2)正しい知識, (3)正しい訓練 のうち(3)正しい訓練に関して質問です。私は今まで学習する時にやり方を考えたことがありませんでしたが, 最近は(1)興味, (2)正しい知識, (3)正しい訓練 を意識して取り組むようになりました。この時, (1)興味, (2)正しい知識は書籍を読んで取り入れるようになったのですが, (3)正しい訓練に関してはその方法が自分のレベルに合っているのかの判断が難しいと感じました。先生は様々な方法から正しい訓練の方法を選ぶ際, 何か意識していることはありますか。

  物理で言うところの、変位、速度、加速度のうち、速度と加速度に注意を向けること
  が重要だと思います (大多数の人は「変位」に注意を向けています)。

- 仮にマザーボードやほかのハードウェアの破壊でパソコンが開けなくなる場合壊れた部品の検索や特定出来た時に可能な修理方法など書いてあるおすすめ本などがありますか。教えていただきたいです。

  一般的な「修理の技術」みたいな本はほとんどないと思います。ハードウェアの仕組
  みを理解する、ハードウェアを自分で設計できるようになる……の先に、自分で修理
  *も* できるようにもなる、のだと思います。

- 最終レポートと平常レポートの割合ってどのくらいですか?

  開示していません。

- CDオーディオの1秒間のデータ量は約176KバイトでしたがどんなCDオーディオ(1曲分)でも176400に1曲の再生秒数をかけ合わせたバイト数のデータ量になるということなのでしょうか。

  はい。

- 電源にスリープとシャットダウンがありますが、この2つの使い分けを教えてください。

  何の話なのかによります。まったく挙動が違うので、どう違うのかを理解して使い分
  けてください (何をしたいかによって自動的に決まります)。

- 先生がこれまで学習してきた中で一番使いやすいプログラミング言語はなんですか、理由と共に教えてください

  「使いやすい」の意味によりますが、単純で強力という観点ではシェルスクリプトです。

- 先生の野望やこれからのヴィジョンを教えていただきたいです。

  情報科学を私自身が楽しむこと、その楽しさを他の人に伝えることです。

- オンライン授業を行うにあたって課題や資料などの保存をすべてコンピュータ上で行っていました。自分が整理が苦手な人間ということもあるのですが、講義ごとにフォルダを分けても課題や資料などがごちゃごちゃになってしまってるように感じています。コンピュータ上でのデータの整理などで何かこういったことを心掛けているなどのコツがあればぜひ教えてほしいです。

  ホームディレクトリ以下も、UNIX のファイルシステムの構成に (できるだけ) 合わせています。

要望

- 7/15のミニテストの問題で「44100 の最大公約数はいくつか?」とありますが数値が1つしか与えられていないので最大公約数を求めることができないため修正をお願いします。

  指摘ありがとう。修正しました。

- 自分はいつも講義ページをChrome を使ってみています。先生の講義ページのUIが変化したようです。全体的に文章を読むときに途中で読みづらくなって飛ばし読みしがちでした。先生に講義ページの文章ごとの分割を強調したUI画面に編集することをお願いします。

  具体的にどこをどうすれば読みやすくなるでしょう? CSS に少し手を入れてみました。

コメント

- OSの勉強をしながら質問コーナーで人生観、正しい努力の仕方、正しい日本語の使い方、論理的な考え方などにも触れられたのでPCに向かうのが苦痛になりにくい講義だったと思う


Hiroyuki Ohsaki (ohsaki[atmark]lsnl.jp)