2008年9月18日木曜日

toyblog - livedoor Blog(ブログ)

toyblog - livedoor Blog(ブログ)

toyblog:ドラゴンボールAF漫画 page1~page20 - livedoor Blog(ブログ)

toyblog:ドラゴンボールAF漫画 page1~page20 - livedoor Blog(ブログ)

Gmail IMAP Account Setup

Gmail IMAP Account Setup

Thunderbird 用拡張機能のGmail IMAP Account Setupの使い方を説明します。

GmailにメールクライアントからIMAPアクセスしようとすると、メールクライアント側で、いろいろと細かい設定をする必要があります。この拡張 機能は、Thunderbirdでのこれらの設定を自動でやってくれるものです。ですので、設定に挑戦してみたけど断念した方や設定がめんどくさいという 方は ぜひ使ってみてください。

Gmail IMAP Account Setup

窓の杜 - 【NEWS】「Thunderbird」でIMAP接続によるGmailのアカウント設定を簡単に追加

 「Gmail IMAP Account Setup」は、ユーザー名やパスワードなどを指定するだけでIMAP接続によるGmailのアカウント設定を「Thunderbird」へ追加できる拡 張機能。インストールするとアカウントの新規作成ウィザードに“Gmail IMAP”が追加され、POP/SMTP接続によるGmailアカウントと同様の操作でIMAP接続のアカウント設定を作成可能。

Thunderbirdを究極のGmail IMAPクライアントにする

Lifehacker:Thunderbirdを究極のGmail IMAPクライアントにする (1/6) - ITmedia Biz.ID

なぜPOPよりIMAPなのか

 POPは、ローカルPCの受信ボックスに新着メッセージをダウンロードする。メッセージをダウンロードしたら、サーバへの接続を切ることができる。これはPOPの利点の1つだ。

 しかし、Gmailで既にアーカイブされていたり、ラベルが付けられているメッセージはPOP経由でダウンロードすることはできない。それに新しいメッセージを入手するために、クライアントソフトはサーバに何度も問い合わせをしなければならない。

 POPアクセスの場合、デスクトップクライアントでメッセージをフォルダに移動したり、フラグを付けたりすると、その変更はGmailに反映され ない。つまりメッセージが同期されなくなる。あるマシンのPOPクライアントでルールやフィルターを設定したら、別のマシンでそれをあらためて設定し、処 理しなければならない。

 POPは、サーバから自分のコンピュータにファイルをコピーして、それをHDD上で操作するようなものだと考えていい。IMAPはリモートサーバにアクセスして、そこに保存されているファイルを操作するようなものだ。

プロセスとスレッド

プロセスとは、プログラム(実行バイナリ)がOS上に実体を持ち、実行できる状態になったもののことです。プログラムそのものは、ファイルです。

プロセスはプログラムがメモリにロードされて実行できる状態になったものを指します。

スレッドとは、プロセスの中での実行単位のことです。

ひとつのプロセスには、必ず、ひとつ以上のスレッドを持ちます。

ひとつのプロセスに、複数のスレッドを持たせることができます。

ひとつのプロセスに複数のスレッドがあれば、複数のCPUで同時に処理を実行することができます。このことを、並列処理とかマルチスレッドと言います。

プロセスかスレッドのどちらかを複数にすることにより、マルチスレッド処理を実現することができます。

Javaでは、比較的、簡単に、マルチスレッド処理を実現できます。Javaでは、JavaVMがOSに対して、マルチスレッドで処理を実行するように制御してくれます。

たいていのDBMSは、複数プロセスや複数スレッドでの構成になっているため、複数の処理を同時に実行することができます。

プロセスは、「生成」されてから処理が行われるまでに、「実行」、「スリープ」、「実行可能」の状態に変化します。

「生成」とは、プロセスの誕生に相当します。次に、「実行可能」な状態になります。実行可能な状態とは、実行する準備が整ったということを意味します。その後、CPUが使用できるようになれば、「実行」状態となり、処理が行われます。ただ、どんなプロセスでも、ずっと処理が実行され続けることはありません。それは、途中で、データの読み込みや、書き込みをしたり、自ら、処理を一時的に停止したりするためです。これを、「スリープ」の状態と言います。WindowsやUNIX、LinuxのOSで、プロセスの一覧を確認すると、多数のプロセスが表示されますが、ほとんどが、何も処理をしていない「スリープ」の状態です。スリープ状態のプロセスは、たいていは、要求していた入出力が与えられると、目を覚まします。目が覚めたプロセスは、「実行可能」な状態になり、CPUが利用できるようになると「実行」状態になります。

UNIXやLinuxのvmstatコマンドを例に、プロセスとリソースの関係性について、説明します。

ひとつのプロセス(または、スレッド)が「実行中」の場合は、ひとつのCPU(または、コア)を利用していることになります。

「実行可能」な状態の場合は、CPUの使用率には現れず、run queue(procsのr列)に現れます(Windowsの場合は、Processor Queue)。

「スリープ」の状態の場合は、I/O待ちとなりますが、I/O待ちには、2種類あります。ディスクI/O待ちとネットワークI/Oです。ディスクI/O待ちであれば、wait I/OとしてCPU使用率に現れる(cpuのwa列)のと同時に、ブロックされているプロセス数として現れます(procsのb列)。ネットワークI/O待ちの場合は、wait I/Oには現れません。

ちなみに、プロセスがすべてスリープ状態であれば、CPUのアイドル(idle)として表示されます。(cpuのid列)