タグ

unixとprogrammingに関するat_yasuのブックマーク (8)

  • process-book

    この文書はなんですか? この文書は*nix系のシステムにおけるプロセスやシグナルなどについて説明することを目的に書かれました。「プロセスとかよくわかってないからちゃんと知りたいな」みたいなひとたちが想定読者です。 書いているあいだは gist で管理されていたのですが、ボリュームが大きくなったので github で管理するように変えました。 目次 導入 プロセスの生成 プロセスとファイル入出力 ファイルディスクリプタ preforkサーバーを作ってみよう ゾンビプロセスと孤児プロセス シグナルとkill プロセスグループとフォアグランドプロセス epub と pdf epub化したもの、pdf化したものが release ディレクトリに入っています。thanks to mitukiii & moznion! ライセンス この 作品 は クリエイティブ・コモンズ 表示 - 継承 3.0 非移

  • fork()は失敗するんだぜ、覚えときな

    fork() can fail: this is important あー、fork()のことね。プロセスがもっとプロセス作るためのやつな。いや、他にもプロセス作る方法はあるけどな。ま、面白い話がもうひとつあるから聞かせてやるよ。 forkは失敗するんだぜ。分かってるか? マジで分かってるか? マジだぜ。forkは失敗するもんだ。mallocと同じさ。失敗することもある。そんなに頻繁にってわけじゃないけどさ、でも失敗したら、無視できっこないぜ。ちっとは脳みそ働かせなきゃならん。 forkが0を返したら、そいつは子プロセスで、親なら正数を返すってことは、みんな知ってるよな。その値は子のpidだ。こいつを保存しといて、あとで使うってわけだ。 失敗を確認しない場合どうなるか知ってるか? そうだよ。お前多分、"-1"(forkのエラー通知)をpidとして扱ってるんだろ。 さて、問題の始まりだ。

    at_yasu
    at_yasu 2014/08/21
    そいや kill(-1)は気にしたことなかった。そんな挙動だったのか。へー
  • GitHub - mtoyoda/sl: SL(1): Cure your bad habit of mistyping

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - mtoyoda/sl: SL(1): Cure your bad habit of mistyping
  • プロセスとかスレッドとかプロセス間通信とかについて書く場所

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    プロセスとかスレッドとかプロセス間通信とかについて書く場所
    at_yasu
    at_yasu 2013/02/08
    gistってこういう描き方できるのか。へー
  • 特定のアプリが触ったファイルを監視 - griffin-stewieのブログ

    @norio_nomura さんに教えてもらったことを忘れないための備忘録。 sudo fs_usage -f pathname <プロセスID> とかするとこんな感じで出力される。 20:11:32 stat64 ple.Safari/Webpage Previews/FFEE0AA49397DF9D900BD8B88BA37224.jpeg 0.000003 Safari 20:11:32 stat64 pple.Safari/Webpage Previews/FFEE0AA49397DF9D900BD8B88BA37224.png 0.000003 Safari 20:11:32 statfs64 /Users/Stewie/Library/Caches/com.apple.Safari/Webpage Previews 0.000004 Safari 20:11:32 statfs

    特定のアプリが触ったファイルを監視 - griffin-stewieのブログ
  • 初めてのOS source code reading(UNIX 6th source code readingのススメ) - やる気のないブログ(A boring diary)

    このエントリはhttp://d.hatena.ne.jp/takahirox/20120131/1328006885を和訳したものです。 はじめに 最近UNIX 6thのソースコードの読書メモを書き終えました。 みさなんにもUNIX 6thのソースコードを読むことをオススメします。 その理由をこのエントリで書いていきます。 まとめ UNIX 6thは初めてOSのソースコードを読む人にうってつけ! 今すぐ読み始めましょう! UNIX 6thのソースコードはこちらなどで読むことができます。 http://minnie.tuhs.org/cgi-bin/utree.pl?file=V6 UNIX 6thのソースコードを読むことをオススメする理由 たったの10,000行 最近のLinuxカーネルのソースコードは100万行を超えています。全てを理解するのは至難の業です。 一方、UNIX 6thのカー

    初めてのOS source code reading(UNIX 6th source code readingのススメ) - やる気のないブログ(A boring diary)
    at_yasu
    at_yasu 2012/02/12
    ひと通り目を通したけど、いまいちわからんかったなぁ…ここで読みなおしてみよ。
  • xargs を使ってカジュアルに並列処理 - たごもりすメモ

    シェルからでも重い処理というのはちょこちょこあって、例えば超デカいログファイルを移動して圧縮したりというお仕事は世界中のあらゆる場所で毎日行われていたりする。コマンドラインからでも大量の圧縮済みログファイルをいっぺんに展開したい、とか。 あるディレクトリ以下に存在するたくさんのファイルを(圧縮済みのものを除いて)全部 bzip2 圧縮したい!と思ったら、とりあえずさくっと次のようにコマンドラインで叩けばいい。 $ find . -not -name '*.bz2' | xargs bzip2 これで、まあそんなに問題なく効率的にbzip2圧縮ができる。だがしかし。 最近は複数コアのCPUが普通に転がってるし、あまつさえHyperThreadingが有効になってたりしてOSから見える論理CPU数がハンパない。普通に8とかある。その一方で複数コアを使用してくれるコマンドというのはあんまりなくて

    xargs を使ってカジュアルに並列処理 - たごもりすメモ
  • Aho、Weinberger、Kernighan著の「プログラミング言語AWK」復刊 | スラド デベロッパー

    AWKの開発者であり、その名の由来にもなったAlfred AhoおよびPeter Weinberger、Brian KernighanによるAWK「プログラミング言語AWK」が復刊するそうです(復刊ドットコム)。版元はUSP出版、価格は3,990円。 テキスト処理と演算に絶大な効果を発揮する「AWK」は、開発当時の1970年代から、開発者たちによって「30年後、ハードウェアの性能が向上するころに、その真価がわかるだろう」と予言されていたといいます。事実、インターネットの普及により、テキストで書かれたHTMLが大量に生成され、多くの人がテキストデータに触れるようになった昨今において、軽量で簡単にテキストを処理することができるAWKの良さが見直されつつあります。

    at_yasu
    at_yasu 2010/01/06
    プログラミング言語AWKが復刻。コマンドラインでしか使った事無いよ
  • 1