タグ

forkに関するItisangoのブックマーク (4)

  • システムコールを経由する生のLinuxスレッド | POSTD

    Linuxのスレッドは、洗練された美しい設計です。スレッドは仮想アドレス空間とファイルディスクリプタテーブルを共有するプロセスに過ぎません。プロセスによって生成されたスレッドは、メイン”スレッドの”親プロセスに追加された子プロセスです。これらは同じプロセス管理のシステムコールを通して処理されるので、スレッドに関するシステムコールのセットを分ける必要性を取り除きます。これはファイルディスクリプタと同様に洗練された方法です。 一般的に、UNIX系のシステムではfork()を使ってプロセスを生成します。新しいプロセスは、オリジナルのコピーとして独自のアドレス空間とファイルディスクリプタテーブルを取得します。(Linuxではコピーオンライトを使用して、この部分を効率的に処理します。)しかし、これは非常に高度なスレッドの生成方法なので、Linuxでは別の clone() システムコールを使用します。

    システムコールを経由する生のLinuxスレッド | POSTD
  • fork()は失敗するんだぜ、覚えときな

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

  • Linuxディストリビューションから消えてもMySQLが進化するワケ

    昨年末から、代表的なオープンソースDBMSであるMySQLを巡る話題が、Linux関連のニュースサイトをにぎわせている。MySQLといえば、拡張性や保守容易性、参照性能などが優れるという特徴を持ち、Yahoo!Twitter、モバゲーといった巨大サイトをはじめとする各種Webシステムに利用されている。約2年半ぶりにバージョンアップが行われ、新版(5.6)が2013年2月にリリースされたわけだが、それがにぎわいを呼んでいるわけではない。 Linuxカーネルが1991年に登場してから既に20年以上が経過し、いまではそれを使いやすくするために各種オープンソースのソフトウエアを組み合わせたLinuxディストリビューションが数百種類も開発されている。その中でも、開発コミュニティーの活動が活発で、他ディストリビューションに大きな影響を及ぼしているFedoraやArch LinuxSlackware

    Linuxディストリビューションから消えてもMySQLが進化するワケ
    Itisango
    Itisango 2013/04/11
    #Oracle が #Sun を買ったせいで #MySQL から離れる #distribution が増えているとの事。 #FLOSS の世界は集合離散が激しいから開発者や #user は追いかけるのが大変だ。
  • Android NDKでfork, execは使ってはダメ - 組み込みの人。

    Android NDKでfork, execのシステムコールは使ってはダメという話。 Google グループ NDKの中でforkとexecを使って子プロセスを起動してデーモン的なプログラムを動かした。しばらくうまく動いていたけど、突然SEGVで落ちて、クラッシュダンプもログに出てないので原因がわからない。なんで? という質問。 fork, execはNDKのヘッダファイルに含まれているけど、それらはシステム用であり、アプリケーションから使ったときの振る舞いは保障できない。将来それを保障することもない。(さらに言えば、ある日fork, execをアプリケーションから使用することを禁止するかも。) バックグランドで長期間動くプログラムはandroid.app.Serviceを使うのが正しい方法。 今までのAndroidの内部構造に関する知識でこれを補足すると、 Androidのアプリケーショ

    Android NDKでfork, execは使ってはダメ - 組み込みの人。
    Itisango
    Itisango 2011/06/05
    LinuxのようでLinuxじゃない、ベンベン!
  • 1