勉強

UNIX 6th code reading - クロック割り込み

初めての方はこちらを参照 http://d.hatena.ne.jp/takahirox/20101024/1287923014 はじめに 今回は第11章です。クロック割り込みが起きたときの処理を見ていきます。 クロック割り込み時に行われる処理 ディスプレイレジスタの更新(PDP11/40ではno op) 時刻…

UNIX 6th code reading - 割り込み・トラップルーチンその2

初めての方はこちらを参照 http://d.hatena.ne.jp/takahirox/20101024/1287923014 はじめに 今回は10章に出てくるコードの詳細を追っていきます。 fuiword まずは通常動作を見ていきます。 通常動作 845 : この時点でスタックの先頭にはfuiwordを呼んだ命令(…

UNIX 6th code reading - 割り込み・トラップルーチン

初めての方はこちらを参照 http://d.hatena.ne.jp/takahirox/20101024/1287923014 はじめに 今回は10章です。トラップと割り込みルーチンを追っていきます。各トラップ・割り込みの個別処理は次章以降で扱われます。本章では個別処理に入る前・入った後の共…

Lions’ Commentary on UNIX 読書会メモ#3

はじめに Lions本読書会#3に参加してきました。 そのときのメモを残しておきます。本に沿った内容は読書メモの方に反映していきます。このメモでは本の内容の範疇から越えた話題を中心記録しています。今回は8, 9章を読みました。 メモ @oracchaさんのツイー…

UNIX 6th code reading - 割り込みとトラップの概要

初めての方はこちらを参照 http://d.hatena.ne.jp/takahirox/20101024/1287923014 はじめに 今回は9章です。割り込みとトラップについてです。9章では割り込み・トラップの概要のみを扱っており、コードはほとんど出てきません。 割り込みとトラップ 割り込…

UNIX 6th code reading - プロセス管理

初めての方はこちらを参照 http://d.hatena.ne.jp/takahirox/20101024/1287923014 はじめに 今回は8章です。 プロセスの切り替えについてです。 割り込みなどもプロセス切り替えの一種ですが、9章の内容なので今回は扱いません。また、今回の内容にはスワッ…

UNIX 6th code reading - プロセス

初めての方はこちらを参照 http://d.hatena.ne.jp/takahirox/20101024/1287923014 はじめに 今回は7章の内容を扱います。 プロセスとは 1つのプロセスが、シェルやエディタなどの1つのプログラムに対応しています。 プロセスを切り替えることで、実行するプ…

UNIX 6th code reading - sched - /etc/init実行まで

初めての方はこちらを参照 http://d.hatena.ne.jp/takahirox/20101024/1287923014 はじめに 6章の続きです。proc#0がproc#1を生成した後の話です。プロセスを切り替えた後にブートストラッププログラムを起動します。 Lions本に従い、初回起動時にどういう動…

UNIX 6th code reading - 6章まとめ

初めての方はこちらを参照 http://d.hatena.ne.jp/takahirox/20101024/1287923014 はじめに 第6章のまとめです。起動時の流れを絵にしてみました。また、6章の範囲外ですが、savu&retuに関してもまとめてみました。 /etc/init実行までの流れ /etc/init実行ま…

UNIX 6th code reading - main

初めての方はこちらを参照 http://d.hatena.ne.jp/takahirox/20101024/1287923014 はじめに 今回も6章の続きです。startからmainへジャンプした後の話です。 ここからCで書かれた領域に入っていきます。今回の範囲は特に難しい箇所もなかったので、本当に単…

UNIX 6th code reading - boot

初めての方はこちらを参照 http://d.hatena.ne.jp/takahirox/20101024/1287923014 はじめに 今回は6章の続きです。 カーネルAPRの設定や、それに対応する物理メモリ空間の話などです。 boot loader UNIX起動の流れ(307P参照) プロセッサ中のROMのブートスト…

UNIX 6th code reading - virtual address

初めての方はこちらを参照 http://d.hatena.ne.jp/takahirox/20101024/1287923014 はじめに 今回は6章です。内容が重いので2回以上にわけます。 今回は本題に入る前の準備です。 仮想アドレス 本題に入る前に、仮想アドレスと物理アドレスの関係を把握してお…

Lions’ Commentary on UNIX 読書会メモ#2

はじめに 先日、Lions' Commentary on UNIXの読書会#2に参加してきました。 その時に出た話題をメモとして残しておきます。 全ての話題を拾えたわけではないので、不足な点や補足などあればフォローをお願いいたします。本の内容に沿った話は、読書メモの方…

UNIX 6th code reading - prf.c

初めての方はこちらを参照 http://d.hatena.ne.jp/takahirox/20101024/1287923014 はじめに 今回は301p - のprf.cです。 メッセージの表示やpanicなどを扱います。 printf 2340 : printf(fmt,x1,x2,x3,x4,x5,x6,x7,x8,x9,xa,xb,xc) x2以降にはx1からポインタ…

UNIX 6th code reading - mfree

初めての方はこちらを参照 http://d.hatena.ne.jp/takahirox/20101024/1287923014 はじめに 今回は、割り当てられていたメモリ領域を開放するmfreeです。 ロジック イメージはこんな感じ。2564行で、開放するアドレスの、1つ後ろの空き領域までポインタを進…

Lions' Commentary on UNIX 読書会メモ#1

はじめに Lions' Commentary on UNIX 読書会に参加してきました。 忘れないうちに、出た話題をメモしておきます。カフェで話した内容もあり。自分の理解が足りず、うまく表現できていない部分もありますがご了承を。 今日の範囲 第5章 メモ shortの型ないよ…

UNIX 6th code reading - malloc

はじめに 最近Lions' Commentary on UNIXを読み始めました。 読み進めるだけでは理解が浅いと感じたので、メモをこのブログに書いていこうと思います。Lions’ Commentary on UNIX (Ascii books)作者: ジョンライオンズ,John Lions,岩本信一出版社/メーカー: …