タグ

linuxに関するjksyのブックマーク (19)

  • Linux のメモリー管理(メモリ―が足りない?,メモリーリークの検出-防止)(Kodama's tips page)

    サ−バ等に使っているPC のメモリが十分かどうか気になる事は多いと思う. 調べ出すと フリーメモリーの不足や SWAP にメモリーがはみだしている様子など 心配な事がいろいろでて来る. PC の動作が遅くなる原因は様々な要因が絡み合っているので, 表面に現れた症状だけでは効果的な対策が分からない事もある. 以下では, メモリ−関連にしぼって解説する. メモリの状況を調べる メモリ−は十分なはずなのに 余裕が無い? どのプロセスがメモリを消費しているのか? メモリーのリークを検出する方法? 防止する方法? メモリ−は十分なはずなのに SWAP を使ってる? じゃ, 当のメモリ−不足はどうしたら分かるの? メモリーと SWAP 領域はどのくらい確保すると良いのか メモリの状況を調べる メモリの利用状況を調べる方法は, free, top, ps, vmstat, /proc/meminfo

  • 革命の日々!

    なんかスラドにあげられてしまったので、備忘録てきにちょっとまとめますかね。 きっかけは先月帰国したときに sonots がDeNAをはじめとして、Web企業では広く TCP_TIMEWAIT_LEN を変更してカーネルをリコンパイルして使っているという話を聞いたというもの。以下の様な議論を twitterで行い Togetter: Linuxカーネルの「TCP_TIMEWAIT_LEN」変更は無意味?: http://togetter.com/li/871768 以下のように、スラドに転載されてしまったわけだ。 スラド: Linuxカーネルの「TCP_TIMEWAIT_LEN」変更は無意味?: http://linux.srad.jp/story/15/09/09/0648258/ いつものように、スラド民は元のスレッドなんかまるで読んでいないので、結論だけ書く。 tcp_tw_inter

  • poll/epoll/kqueueを任意に切り替えられるコード - Blog by Sadayuki Furuhashi

    ネットワークで通信するプログラムを書いていると、ファイルディスクリプタ(ネットワークならソケット)をselectやpollで監視して、パケットが届いたら何かする、ということが良くあります。 しかしselectやpollは、*BSD で kqueue・kevent を使ってみようで書かれているように、どうも遅いらしい。C10K問題が取りざたされている昨今、Linuxにはepoll、BSDにはkqueue、Solarisには/dev/pollというより高速な仕組みが用意されているのですが、epollを使ってしまうとLinuxでしか動かないし、kqueueで書くとBSDでしか動かない。 というわけで、epollもkqueueも同じインターフェースで使えて、#defineで簡単に中身を切り替えられると嬉しい、とは誰しも一度は思うはず。そうに違いない。 もちろん先人も同じことを考えており、libev

    poll/epoll/kqueueを任意に切り替えられるコード - Blog by Sadayuki Furuhashi
    jksy
    jksy 2009/06/26
    いろんなplatformで使えるepool/kqueueテンプレート
  • 実行中のアプリケーションを外から観察するコマンド。 - こせきの技術日記

    strace システムコールをトレース。カーネルと何を話しているか。 strace -p PID でプロセスにアタッチ。実行中のプロセスをトレース。 straceを使ったデバッグ - SourceForge.JP Magazine : オープンソースの話題満載 Linuxカーネルの作り出す世界 − @IT自分戦略研究所 - ふつうのLinuxプログラミング 青木峰郎 システムコールとライブラリ関数 − @IT自分戦略研究所 システムコール・ライブラリルーチン - UNIX の部屋 ltrace 共有ライブラリの呼び出しをトレース。*.soと何を話しているか。 ltrace -p PID でプロセスにアタッチ。実行中のプロセスをトレース。 ltrace で共有ライブラリの関数呼び出しをトレースする - bkブログ 404 - エラー: 404 - Linux JF ƒ‰ƒCƒuƒ‰ƒŠ‚ÌŠ

    jksy
    jksy 2009/06/23
    これはすばらしいまとめ
  • ウノウラボ Unoh Labs: シェルの仕組み(前編)

    尾藤正人(a.k.a BTO)です 社内勉強会でシェルの仕組みというのをやってみましたので、資料を公開します。 シェルはUNIXを使う上で、必ず使用される非常に身近なツールです。 毎日使用しているツールにも関わらず、具体的にどのような動作をしているのか知らない方も多いのではないのでしょうか。 シェルの使い方に関する情報はたくさんありますが、シェルの実装についての情報はほとんどないなと思ってシェルを題材に取り上げました。 シェルにはUNIXプログラミングのエッセンスがぎっしりつまっています。 シェルの内部の仕組みが分かるようになると、UNIXプログラミングが分かるようになると言っても過言ではないのかもしれません。 シェルの仕組み(前編) - Upload a Document to Scribd 社内勉強会中にustreamで動画を流していたのですが、動画を保存するのを忘れてしまいました。

  • "make install"したソフトウェアを管理できる超便利ツール「Paco」 - RX-7乗りの適当な日々

    最近、Linuxではaptやyumなど、パッケージ管理ツールで多くのアプリケーションやライブラリが管理されるようになり、普通に利用している限りはソースからコンパイルして"make install"することがほとんどありません。 とはいっても、マイナーなソフトウェアをインストールしたりとか、まだパッケージ管理されていない最新バージョンのものを使いたい場合などは、ソースからコンパイルして"make install"をしたくなる場合も有るかと思います。 しかし、"make install"した場合の最大の欠点は、インストールしたソフトウェアの管理ができないことにあります。そのため、何が入っているのか分からなくなっているとか、アンインストールが出来ない、などのケースが起こりうるわけです。 特にアンインストールする可能性があるソフト(ほとんどのソフトがそうですが・・・)をインストールする場合は、わざ

    "make install"したソフトウェアを管理できる超便利ツール「Paco」 - RX-7乗りの適当な日々
  • 『Linux標準教科書』開発プロジェクト - LPI-Japan - エルピーアイジャパン

  • Vimの使い方―Tips

    検索を行う際に、検索する文字のスペルは分かっているが、先頭が大文字であったかを覚えていない場合に小文字だけで大文字もヒットさせたり、大文字で構成 されている単語ということが分かっているときに、大文字で検索文字を入力して小文字をヒットさせないようにすることができる設定です。 この設定により、全て小文字で検索文字を入力した場合は、大文字、小文字に関わらず検索にヒットするようになります。逆に、検索文字に大文字 を含めると大文字と小文字を区別して検索されるようになるため、検索をするときに、Shiftキーを押したりCapsLockをする必要がなくなります。 この設定の前に「:set ignorecase」により、大文字と小文字の区別を行わないようにする必要があります。このオプションは正確には、検索パターンに大文字が含まれると きに'ignorecase'のオプションをOFFにする設定です。

    jksy
    jksy 2008/07/29
    すばらしいまとめ
  • あるプロセスが利用しているメモリサイズを 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のはてなダイアリー
    jksy
    jksy 2008/07/27
    すばらしい
  • ユメのチカラ: 取締役退任。生涯一プログラマ宣言。

    6月30日臨時株主総会において、ミラクル・リナックス株式会社の新取締役として、児玉崇、伊東達雄を選任し、それに続く、取締役会議により、新しい代表取締役として児玉崇を選任した。佐藤武前代表取締役社長は、取締役会長へ、わたしは取締役を退任した。 ここにご報告する。 さて、ここからが題(?)である。取締役を退任したからといってミラクル・リナックスを辞めるわけではない。今後は経営者という責任ある立場を退き一技術者としてミラクル・リナックスに貢献していく。 2000年6月にミラクル・リナックスを創業以来8年にわたって取締役CTOとしてミラクル・リナックスとともに歩んできたが、取締役というよりも、技術屋としてミラクル・リナックスのV1.0の開発、OSDL (Open Source Development Lab -- The Linux FOundationの前身)への参画、そしてAsianuxプロ

    jksy
    jksy 2008/07/01
    ワシもこの人のようになりたいのう
  • http://www.linux.or.jp/JF/JFdocs/Colour-ls.txt

    Colours with Linux terminals 日語版 Thorbjoern Ravn Andersen, ravn@dit.ou.dk v1.4, 7 August 1997 佐藤亮一, GFG02131@niftyserve.or.jp, 鴨澤 眞夫, JCD00743@niftyserve.or.jp 共訳 13 March 1999 Linux ディストリビューションのほとんどには、ディレクトリの内容を表示す る 'ls' コマンドが同梱されています。様々な色を使うことで ls コマンドの 出力を見やすくすることができるのですが、好みの設定にするのは簡単ではな いかもしれません。この文書では、ls のカラー設定の変更について様々な角 度から解説しており、パッケージに含まれる ls の設定変更の他、 Slackware や RedHat には含まれて

    jksy
    jksy 2008/06/23
    色とか、設定とか
  • [zunda-an] Programming tips

    ソフト作りのこと C programming tips Last updated: 2002.03.19. coreを吐かせる coreを吐かせる 普段使っているソフトが突然落ちて、 そこらじゅうにcoreを吐くのはこまりものですが、 デバッグをしたい時には、coreほど大事なものはありません。 bashでは、ulimitというコマンドでcoreの最大の大きさを制御します。 制限には、二種類あり、ulimit -Hでハード・リミットを、 ulimit -Sでソフト・リミットを操作します。 -Hも-Sも付けない場合は、 両方の制限が同時に操作されてしまいます。 coreの大きさそれ自身は、ソフト・リミットに制限されます。 ハード・リミットは 一度制限してしまうと、それ以上にはできないが、 ソフト・リミットは、ハード・リミットの範囲内で自由に設定できます。 ulimit -Hでハード・リミット

    jksy
    jksy 2008/04/22
    core,プロファイラ,共有ライブラリ
  • I love CUI

    はじめに Linux (Vine Linux) を使って、CUI の便利さに気がつきました。文字情報を扱うときの CUI のきびきびした反応は魅力的です。しかし、Linux の膨大なツールの数や EMACS などのコマンドの数を見ると、何をどの程度習得すれば良いのか戸惑います。このホームページでは、Linux を知的生産の道具として活用するためには、最低限どのツールをどの程度使いこなせば良いかを考えました。また、併せて、lynx, w3m, emacs, namazu などを組み合わせて作る便利な短いスクリプトを紹介します。 このホームページに掲載したスクリプトは、利用、改造、再配布自由です。著作権は著者が保有しますが、利用、再配布等に際し著作権を明記する必要はありません。また、これらのスクリプトは無保証です。これらのスクリプトによって発生したいかなる障害にも著者は責任を負いません。 知的

  • lsofの使い方 - プロセスが使用中のファイルを調べる - うまいぼうぶろぐ

    odz buffer - プロセスが開いているファイルを確認する ls -l /proc/`pgrep -n java`/fd lsofでも調べられます。 lsof - list open files lsof うにょうにょと結果が出てきます。が、多すぎて訳わからん。 -pオプションでプロセスID指定 ### プロセスID指定 lsof -p 12345 ### バッククォート使うとこんな感じ lsof -p `pgrep -n java` -cオプションでプロセス名指定 lsof -c java -uオプションでユーザ指定 lsof -u hoge -iオプション [@IPアドレス:ポート番号] listenしてるポートを出力。指定したポートのみ表示することもできる。 lsof -i # Listenしてるのずらずら表示 lsof -i :22 # ssh lsof -i :22,80

    lsofの使い方 - プロセスが使用中のファイルを調べる - うまいぼうぶろぐ
  • Linux のスリープ処理、タイマ処理の詳細を見る - naoyaのはてなダイアリー

    UNIX でプロセスを一時的にスリープさせるには sleep(3) が使えます。sleep() は引数に秒単位でしか時間を指定できないので、より短い時間を指定したい場合は usleep(3) (マイクロ秒) や nanosleep(2) (ナノ秒) を使うことになります。sleep(), usleep() はライブラリ関数、nanosleep() はシステムコール*1です。 この usleep() や nanosleep() で 1ms 程度の短い時間プロセスを停止したとして、正確にその時間だけ停止させることはできるでしょうか。http://shiroikumo.at.infoseek.co.jp/linux/time/ にあるコードを参考に、実際に動かしてみます。カーネル 2.6.19 x86_64、CentOS 5 で試します。 まず、nanosleep() で 1ms のスリープを行

    Linux のスリープ処理、タイマ処理の詳細を見る - naoyaのはてなダイアリー
  • screenを初めて使うためのチュートリアル - Unix的なアレ

    screenというものすごく便利なアプリケーションがあります。上記写真のように、1つのターミナル内で、仮想的に複数の端末を起動させることができるものです。 ただ慣れるまでは少々使い方がとっつきづらいという話も聞きますので、今回はscreenを基的に使えるまでのチュートリアルを紹介したいと思います。 どんなことができるの? 複数の仮想端末をあげるとどういったメリットがあるのでしょうか?実際に自分はscreenを使うまではターミナルを複数起動させ、Desktop上はターミナルだらけになっていました。 実際はそれでも問題は起きないのですが、個人的にはローカルPC側では極力起動しておくアプリケーションを少なくしたいと思っているため、screenを使うようになりました。 ただそれだけであればWindowsならPoderosa,MacならiTerm,GnomeならGnome端末があるのですが、scr

    screenを初めて使うためのチュートリアル - Unix的なアレ
  • @IT:/procによるLinuxチューニング [後編]

    の4つがあります。kernel配下にはカーネル全般にかかわるパラメータ、fs配下にはファイルシステム関連のパラメータ、vm配下には仮想記憶関連のパラメータ、net配下にはネットワーク関連のパラメータが置かれています。 /proc/sys/kernelディレクトリ まずはkernel配下のパラメータを見ていきましょう。/proc/sys/kernel配下のパラメータを使うと、パフォーマンス・チューニング以外のさまざまな設定も可能です。 ctrl-alt-del、cad_pid ctrl-alt-delは、おなじみの[Ctrl]+[Alt]+[Del]キーシーケンスの有効(1)/無効(0)を設定するファイルです。同時に、cad_pidには[Ctrl]+[Alt]+[Del]キーを押した際にシグナルを送信するプロセスを指定します(注)。 domainname、hostname これらのファイルに

  • Kernel 2.2.x におけるディスクの同期、非同期のパフォーマンス差

    最近、業のデータベースシステムのパフォーマンス劣化で悩む日々が続いております。いろいろ分析をしているのですが、何しろ Miracle Linux 1.0 を使っていて、Kernel が 2.2 系とちょっと古いのが痛い。情報が少ないんですよね・・・。 さて、パフォーマンスの問題は更新型データベースにありがちな、I/O 周りのパフォーマンス問題。 Linux の I/O 関係は Solaris に比べるといろいろと問題が発生しやすいのも事実で、例えば、とあるベンダーでは Ext3 を別名Exorcist3 (エクソシスト3)と皮肉ったりしています。実際、ウチの環境では Kernel 2.2 系のサーバで Ext3 を使ったパーティションは、良く問題を起こします。例えば、 ジャーナルファイル破損 mount を非同期モードの async にすると、メモリ上だけのデータが更新され物理ディスク上

  • naoyaのはてなダイアリー - 負荷とは何か

    調べごとをしたので blog に書いて理解を深めようのコーナーです。長文です。 Linux でシステム負荷を見る場合にお世話になるのが top や sar (sysstat パッケージに同梱されてるコマンド) などのツールです。 top ではシステム統計のスナップショットを見ることができます。今システムがどういう状態かなーというときは top が便利。 top - 08:16:54 up 3 days, 14:43, 6 users, load average: 0.18, 0.07, 0.03 Tasks: 43 total, 2 running, 41 sleeping, 0 stopped, 0 zombie Cpu(s): 18.2% us, 0.0% sy, 0.0% ni, 81.8% id, 0.0% wa, 0.0% hi, 0.0% si一方の sar では10分ごとのシ

    naoyaのはてなダイアリー - 負荷とは何か
  • 1