0121名無しさん@1周年
2018/11/07(水) 02:06:22.08ID:Z9zY8cGb0Linuxを実装するのが難しいからOSをコーディングできないと決めつけるものがたまにいるが、
OSのコースでは、OS内でのページ・(仮想)アドレス・キャッシュ管理・ファイルシステムが中心であり
少し学べば分かる程度のものだ
Linuxと同等なOSを実装する講座は知らないが
アメリカのCS学部で実装する場合の目安は、最小機能を使って5000行〜20000行ぐらいだろう
知識としてはパターソン・ヘネシーCODの第5章を理解すること、独学ならOS系の本(Tanenbaum)を読むことだが
講義を受ければその時間は節約できる
コンパイラは計算理論やインタプリタは避けるべきで、エイホのCPTT(ドラゴンブック)を参考にしたコーディングをするのが
多いようだ
ドラゴンブックの後半の章は最適化で知っておくべき技法が詰まっており、安易に処理系の実装と
を作ろうとするのではなく、アセンブラのコード生成(第8章)あたりを忠実に再現しないと本来学ぶべき
スキルが身につかないので気を付けるべきだ
データベースはウルマンのDSCBを読めばコーディングは難しくない
https://www.amazon.co.jp/Database-Systems-Complete-Hector-Garcia-Molina/dp/0131873253
ストレージ管理とインデックス、ロック、スケジューリングは、付け加えていけば良い
ネットの情報としては、SQLiteが参考になるだろう