2011-03-01から1ヶ月間の記事一覧

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

はじめに Lions本読書会#5に参加してきました。そのときのメモを残しておきます。今回は12章「トラップとシステムコール」を読みました。当初は13章も読む予定だったのですが、12章があまりにボリュームがあったため12章だけを詳細に追うことになりました。…

UNIX 6th code reading - トレース

はじめに 今回はトレースを見ていきます。 トレースとは トレースとは子プロセスがソフトウェア割り込みを受け付けるたびに、親プロセスが介入する機会が与えられる機構のことです。ptraceというシステムコールを使って、別のプロセスのデータなどを操作でき…

UNIX 6th code reading - signalシステムコール続き

はじめに 今回は第13章の続きを見ていきます。 grow grow( )は引数で渡されたspを含むようにスタックを拡張します。既にスタックがspを含んでいたら拡張はしません。絵で描くとこんな感じです。 4141-4142 : 既にスタックが十分大きければreturn. 拡張しない…

UNIX 6th code reading - signalシステムコール

はじめに 今回は13章の続きを見ていきます。ソフトウェア割り込み周りのソースコードを追っていきます。今回は本当に単なるメモ状態です。 ssig ssigはsignalシステムコールを実現します。u.u_signal[n]に値を設定します(u.u_signal[arg1]=arg2)。 3618 : si…

UNIX 6th code reading - ソフトウェア割り込み(シグナル)

はじめに 今回から13章を見ていきます。量が多いので数回に分けてメモを書いていくつもりです。今回はソフトウェア割り込み(シグナル)の概要を確認します。 ソフトウェア割り込み(シグナル)とは シグナルとは以下のようなことを実現する機構です。 ユーザプ…

UNIX 6th code reading - fork, exec, breakシステムコール

はじめに 今回は12章の続きを追います。システムコールのfork, exec, breakを見ていきます。Lions本ではexec, fork, breakの順に扱っていますが、fork, exec, breakの順に見ていきます。こちらの方が理解しやすいと思います。 fork & exec system call fork…

自炊したデータのバックアップにはSkyDriveがいいかもしれない

はじめに ScanSnap 1500を使用して書籍の電子化を進めています。いわゆる自炊というやつです。自炊には「データのバックアップ」が重要になってきます。色々検討した末、Micro SoftのSky Driveというサービスを使用することにしました。なかなか良さげなサー…

UNIX 6th code reading - システムコール

初めての方はこちらを参照 http://d.hatena.ne.jp/takahirox/20101024/1287923014 はじめに 今回はunix v6のシステムコールについてまとめました。システムコールの詳細を知らずに12章の内容を追うのが大変だったため、まずはシステムコールについてまとめて…