オペレーティングシステム
ファイルシステム 2次記憶:データをためておくための装置メモリ→小容量高速 2次記憶→大容量低速トレードオフの関係になっている ハードディスクの仕組み 区画がそれぞれ分かれていて読み書きができる →1区画512B~4KBくらいの大きさ(現在の技術力で区画…
効率化のためのテクニック プロセス間のページ共有 多量のプロセスから使われるファイルがある(例えばlibcとか) →それぞれをプロセスごとに入れていてはメモリの無駄になる. →実態は一つで、プロセス間で共有できればうれしい しかし、メモリは分離だった…
仮想記憶 メモリには揮発性(RAM)と不揮発性(ROM)がある. メモリは大きく分けて、コード、データ、ヒープ、スタック領域に分かれている メモリの抽象化 アドレス変換について CPUから仮想アドレスを取得し、それを変換表で物理アドレスに変換するという…
相互排除についてもう少し詳しく ロックの見直し ロックは①ロックされているかの確認、②ロックをかけるための値を書く.この二つをアトミックに処理する必要がある. ビジーループをかけるスピンロックについてもやったが、これだと長い処理の時CPUの無駄遣…
並行プログラミング 並行でないプログラミングのことを逐次プログラミングという. →処理の流れが一つしかない.通常のプログラミング言語はこっちのほうを想定している. 並行にして何がいいのか ・ブロック状態にあるプロセスを別の処理の流れで出来たらう…
CPUスケジューリング 簡単に言うと、仕事に優先度をつけ、やる順番をつけて実行するということ.これをCPUがやるってだけ. プロセスの選び方を理解するためにはプロセスの性質を理解する必要がある. ・CPU-boundプロセス →CPUをたくさん要求する.数値計算…
スレッドについて(スレッドとはプロセス内の処理の流れ) 写真を挿入 ブロックされると困ってしまうプログラムがある場合、スレッドという概念が力を発揮する. 困ってしまう例① ユーザーの入力待ちの間、アニメーションが止まってしまう. →この場合、入力…
システムコールについて少し プロセス切り替え:タイマー割り込みで切り替えを行う. この時の割り込みハンドラの役割は退避実行プロセスの決定復帰の3種類. スケジューリングのイメージ これについては図で説明したほうがわかりやすい.下の図の説明として…
指定教科書で言うとp18~p28、p36~p39あたりだそうです. マルチタスク プロセスを高速で切り替えることにより同時に複数のプロセスを実行しているように見せる.また、このことを「平行に実行する」といい、通常並列でないものを並列のように実行させること…
DMA(Direct Memory Access) どっさりデータを扱うデバイスがほしくなる時がある →このやり取りはメモリとハードディスク間で行われ、2種類の方法がある ①プログラムI/O方式 CPUを介してメモリとハードディスクのデータ伝送をする →CPUが忙しくなってほかのこ…
追試は無しだそうです コンピュータアーキテクチャの復習 メモリ ・揮発性:電源offでデータが飛ぶ。途中結果を一時的に入れておく。この講義でのメモリはこっちのことを指す ・不揮発性:USBメモリなどの類。電源offでもデータが保存されている。 →ハードデ…
電卓程度のアセンブリ言語(わかりにくい) ↓ ここのギャップをOSが埋めている 普段使っているPCのスペック(簡単) OS:ハードウェアを抽象化してソフトウェア開発をしやすい形にする OSを学ぶとは ①コンピュータの低レイヤを学ぶ ②OSが提供する環境を学ぶ この…