タグ

プロセスに関するnikuyoshiのブックマーク (15)

  • The Linux Kernel: カーネルメカニズム

    次のページ 前のページ 目次へ 12. カーネルメカニズム この章では、Linux カーネルが提供しなければならない汎用的なタスクとメカニズム のいくつかについて解説する。それらは、カーネルの他の部分(すなわちこの章で述べら れるいくつかのタスクやメカニズム以外の部分)が効率よく協調動作するために必要なも のである。 12.1 ボトムハーフハンドラ 図表(11.1) ボトムハーフハンドラのデータ構造 カーネルにタスク処理をさせる場合、この時点では処理をさせたくない、という時が しばしばある。割り込みを処理させる場合は、特にそうである。割り込みが起こると、 プロセッサは実行中の処理を停止し、オペレーティングシステムがその割り込みを適切 なデバイスドライバに伝達する。しかし、デバイスドライバに割り込みを処理させる 場合、割り込み処理中には、システム上で他の処理を実行できない。したがって、デバ

    The Linux Kernel: カーネルメカニズム
  • あるプロセスが利用しているメモリサイズを procfs 経由で調べる - naoyaのはてなダイアリー

    お題は「あるプロセスがどの程度の物理メモリを利用したかを知りたい」です。 手っとりばやく知りたいときは top や ps などで調べると良いでしょうか。例えば手元の coLinuxtop して M キーでソートすると emacs のプロセスが最もメモリを使っているようです。 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1923 naoya 18 0 23120 19m 3096 S 0.0 2.0 0:55.40 emacsメモリサイズは VIRT と RES がありますが、VIRT は Virtual の略で仮想メモリ領域のサイズ、RES が Resident の略で、実際に使用している物理メモリ領域のサイズ。19MB ほど使っているようです。この emacs のプロセスが利用するメモリ領域はざっくり 20MB 程度と

    あるプロセスが利用しているメモリサイズを procfs 経由で調べる - naoyaのはてなダイアリー
  • message

    블로그가 존재하지 않습니다 이글루스 홈으로 이동 >> www.egloos.com

    message
  • [2]NFS、Apache、PHPの設定を修正するも惨敗

    リクルートの中古車情報サイト「カーセンサーnet」を全面リニューアルした体験を基に、大規模サイトの性能改善作業の実態をレポートする。新システムはオープン2カ月前の時点で、目標性能に遠く及ばないことが判明。入社3年目の筆者をリーダーに性能改善プロジェクトがスタートした。第1回は「改善1」としてNFSマウントオプションを修正したが効果は見られなかった。 改善2 Apache 設定パラメーターを修正 明けて7月28日。昨日NFSオプションを修正した後も、CPU使用率が95%と高かったため、負荷を25PV/秒に抑えて試験した。レスポンスタイムは1.6秒と短くなり、スループットは、かけた負荷と同じ25PV/秒になった。 しかしWeb/APサーバーのCPU使用率が80%と高いままだった。内訳は、OSが利用するSYS*1が25%、ユーザープロセスが利用するUSRが55%である(図4)。特にSYSが想定よ

    [2]NFS、Apache、PHPの設定を修正するも惨敗
  • Apacheパフォーマンス・チューニングの実践

    セッションのチューニング ここまでのチューニングは、必要か必要でないかを判断すればよく、手探りで最適な値を探し出すというものではなかった。しかし、これから紹介する「セッションのチューニング」はそうもいかない。ある程度の見通しは立てられても、最適な答えを見つけるのには手間がかかってしまう。 KeepAliveとセッションの切断 セッションのチューニングの手始めとして、「KeepAlive」について考えることにしよう。KeepAliveはHTTP/1.1から用意されたもので、クライアントとの接続を保持する仕組みである。HTTPは「ステートレス・プロトコル」と呼ばれるとおり、1回の要求(リクエスト)ごとに接続が切断される。しかし、今日では1つのWebページを表示するために複数のファイルが必要となる場合がほとんどなので、1リクエストごとに接続を切っていたのでは効率が悪い。そこで考え出されたのがKe

    Apacheパフォーマンス・チューニングの実践
  • MPM(Multi-Proccessing Module)の設定

    9.6. MPM(Multi-Proccessing Module)の設定Apache2.0 以降の大きな特徴の 1 つに、サーバーデーモンの実行部分を司るプログラムが MPM(Multi-Proccessing Module) としてモジュール化され、使用する MPM を選択できるようになったことがあげられます。Apache には動作の異なるいくつかの MPM が用意されており、構築する Web サイトの規模や OS によって、最適な MPM を選択することが可能です。Aapche2.2 からは event MPM が追加されています。Linux で選択可能な MPM には、以下の種類があります。 Apache 1.3 の動作モデルと同様の方法でクライアントからのリクエストを処理します。prefork は、あらかじめ複数のプロセスを用意しておき、クライアントからのリクエストを待ち受けます

  • Web2.0の先にあるC10K問題 ― @IT

    個々のクライアントがサーバに要求する処理量は小さなものでハードウェアの性能上は問題がなくても、あまりにもクライアントの数が多くなるとサーバがパンクする――。これが最近Web開発者の間で話題となっている「C10K問題」(クライアント1万台問題)だ。 プロセス番号が足りなくなる パンクするのは例えばプロセス番号だ。 Ajaxの実装として最近注目されている技術に“Comet”(コメット)と呼ばれるものがある。HTTPのセッションをあえて切断せずに、サーバとクライアント間でつなぎっぱなしにするテクニックだ。Cometを使えばクライアントからのリクエストに応えるだけでなく、サーバ側からも不定期に情報を送り出すことができる。例えば、Web上でチャットサービスを実装するには、通常はクライアント側からサーバに一定間隔でポーリングすることで、ほかのユーザーの発言分をサーバから取得して表示するが、Cometの

  • @IT:/procによるLinuxチューニング [前編](1/2)

    /procによるLinuxチューニング [前編] ~ /procで理解するOSの状態 ~ Linuxの状態確認や挙動の変更で重要な役割を担うのが/procファイルシステムである。前編では/procの概念や/procを利用したOSの状態確認方法を理解していただきたい。(編集局) 遠田 耕平 2002/12/10 稿では、/procファイルシステムによるカーネルチューニングを紹介します。カーネル2.4.19をベースに説明していきますが、カーネルのバージョンによって内容が異なる場合があります。また、ディストリビュータが独自の拡張を施しているものもあります。従って、これから説明する内容がすべて当てはまるとは限りません(端的にいうと説明の対象が存在しなかったり、説明されていない機能が追加されていることがあります)。 /procファイルシステムとは /procは、Linuxシステムの/(ルート)に「

  • 意味の違いがわかる? タスクとプロセスとスレッド (1/4)

    「マルチタスク」という言葉を目にしたことのない人は、ASCII.jp読者にはまずいないだろう。また、最近ではあまり聞かないが、「タスク」と似たような用語に「ジョブ」がある。そのため、かつては「マルチジョブ」といった表現がされていたこともある。さらに似たような用語として「プロセス」もあり、やはり「マルチプロセス」という用語がある。また、マルチタスクと同じ意味で使われる言葉に、「マルチプログラミング」というものもある。 いずれも意味としては、「複数のアプリケーションを同時に実行できること」を示しているが、どうしてこんなに複数の用語があるのだろう? 理由のひとつは、かつてコンピューターメーカーがOSを作ってたときに、それぞれのメーカーで異なる用語を使っていたことにある。あるメーカーは、アプリケーションを実行することを「タスクを起動」と言い、別のメーカーでは「ジョブを起動」と呼んだわけだ。 今回は

    意味の違いがわかる? タスクとプロセスとスレッド (1/4)
  • Linuxサーバ運用マニュアル

    Linuxサーバ運用マニュアル 第6話「リソースをチェックしよう!」 サーバ運用について,リソースのチェックは重要です。マシンそのものがトラブルをかかえていては,どんな優秀なアプリケーションも役にははたちません。また,運用していく上でマシンのスペックが不足しているなら,対応する必要がありますし,普段からチェックしていれば,マシンの異常を早期発見することもできます。 ここでは,サーバマシンの何をチェックするべきなのか,また,それにはどのようなコマンドを用いるのかを紹介していきます。 CPUのチェック CPUはコンピューターの心臓部であり,性能に関係するため,重要なチェック対象です。CPUそのものと,プロセスの状態についてチェックします。チェックしたいのは次の項目です。 CPU使用率 CPUがどれだけ使われているかを%で表わしたものです。IDLE(待機)の値をチェックします。 IDLE(待機)

  • システム思考と逆算思考を活用できる表現技法「プロセスフローダイアグラム」

    インフロー/アウトフローという考え方に基づく「システム思考」と、ゴールから現在地に向かってプロセスを描く「逆算思考」の二つを活用してプロセスを設計するためには、優れた“表現技法”が必要となります。そのための有用なツールが「プロセスフローダイアグラム」(Process Flow Diagram、PFD)です。今回はこれについて解説します。 PFDは、システムクリエイツの清水吉男氏によって、 ソフトウエア構造化設計の技法である「データフローダイアグラム」(DFD)をヒントに開発されました。表記法がシンプルであるため扱いやすく、汎用性が高いのが特徴です。例えば、「ビジネス書出版プロセス」をプロセスフローダイアグラムを使って実際に描いてみると図1のようになります。

    システム思考と逆算思考を活用できる表現技法「プロセスフローダイアグラム」
  • バックグラウンドプロセス(ジョブ)の管理 - satake7’s memo

    ログインして対話的に使う分にはなんら問題はないのですが、ずっと動かしっぱなしのプロセスはどうするのかな、という疑問が出てきました。動かしてるプロセス分ターミナルを立ち上げてるというのも現実的じゃないし、screen で複数プロセス動かすのもありかもしれないけど、ちょっと違うような気がするし、そもそもログアウトしてプロセスがなくなっちゃったらまずいし。ということで、自分のやりたいことを念頭において調べてみました。 ※ 以下の説明では、バックグラウンドプロセスのことを「ジョブ」と書くことがあります。 まとめ &    コマンドラインの最後に'&'を付けるとバックグラウンドで起動 jobs  いま動いているバックグラウンドプロセスの一覧を表示 fg   バックグラウンドプロセスをフォアグラウンドへ移す bg   バックグラウンドプロセスを実行する kill  バックグラウンドプロセスを強制終了さ

    バックグラウンドプロセス(ジョブ)の管理 - satake7’s memo
  • プロセス、スレッド、ファイバ、タスク、ジョブ、違いを整理してみよう - Schi Heil と叫ぶために

    まずは分かりやすいプロセスとスレッドから。 WindowsLinux などの汎用 OS 上のアプリケーションは一般にプロセスとして動作している。プロセスはプログラムの実行単位である。プロセスは1つ以上のスレッドと、ファイル、ヒープメモリなどのリソースで構成される。一方、スレッドは CPU 利用の単位である。スレッドはそれぞれが専用のスタックと CPU レジスタのコピーを保持するが、ファイルやヒープメモリは同一プロセス内の全てのスレッドで共有する。 スレッドのさらにサブセットがファイバである。スレッドとの違いは切り替え動作にありファイバのほうが軽いというメリットがある。プロセス、スレッド、ファイバの関係はこちらの説明が分かりやすかった。 プロセスはプログラム実行のための固有のメモリ空間を持っており、最も独立性の高い実行単位である反面、起動や切り替えに時間がかかるという特性を持っています

    プロセス、スレッド、ファイバ、タスク、ジョブ、違いを整理してみよう - Schi Heil と叫ぶために
  • ソフトウェア開発プロセス残酷物語 - give IT a try

    昔々、あるところにジェイソンという、大変真面目な開発者がおりました。 彼がとある会社の情報システム部にやってきたとき、彼は社内システムのクオリティのひどさに衝撃を受けました。 情報システム部といっても、その会社では外注はせず、社内の開発メンバーがシステムを作っていました。 ジェイソンがそこで最初に担当したシステムは、見事なまでのスパゲッティコードでバグだらけ、データ設計も素人レベルでパフォーマンスも最悪、エラー処理もずさん、おまけにまともなドキュメントもなく、ちょっとした障害を調査したり、小さな改造を実施したりするのにも、大変な苦痛を伴うという、それはそれは大変なシロモノでした。 このシステムは元々エセーグルという、ちょっと変わった名前の開発者によって作られていました。 しかし彼はすでに別の開発チームに異動していて、こちらの質問には答えてくれますが、もはや人が直接手を動かすことはありませ

  • Linux リテラシ - 第4回 デーモン

    今回はデーモンと呼ばれるものについて取り上げます。デーモンはユーザーが意識することがないような裏の部分で動いており、システムを維持したりユーザーにサービスを提供したりといったことを行っています。ちなみにこのデーモンとは悪魔の事を指すdemonではなくdaemon(守護神)です。 後期のサーバーリテラシで実際に立ち上げるWebサーバーなどもデーモンの一種です。この講義の中で取り上げるのはそういったアピール性の高い便利なサービスを提供する類のものではなく、地味ですがシステムに欠かすことのできないものです。 プロセス デーモンはシステムの維持にあたっているといいましたが、もちろんあなたが動かしているLinux上でもデーモンは動いています。 psコマンドにauxというオプションをつけて実行することで、現在システム上に存在するすべてのプロセスを確認できます。ここで出力されるプロセスがすべてデーモンと

    Linux リテラシ - 第4回 デーモン
  • 1