タグ

2021年4月26日のブックマーク (5件)

  • Pythonのthreadingとmultiprocessingを完全理解 - Qiita

    現代の主なOSと言ったら、Mac OS,UNIX,LinuxWindowsなどがあります。これらのOSは「マルチタスク」機能をサポートしています。 マルチタスクとは?と思うかもしれませんが、例えばブラウザーを立ち上げて、音楽聴きながら、Wordでレポートを書くというシチュエーションでは、少なくとも3つのタスクが同時進行しています。そして、表のタスク以外に、裏ではOS関連の様々なタスクがこっそり動いています。 マルチコアのCPUで、マルチタスクが処理できるのは理解しやすいですが、シングルコアのCPUでもマルチタスクが可能です。OSはそれぞれのタスクを交替に実行しています。例えば、タスク1を0.01秒、タスク2を0.01秒、タスク3を0.01秒、タスク1を0.01秒......繰り返して実行していきます。CPUは速いので、ほぼ同時進行のように感じます。この交替実行のことをしばしば「並行処理(

    Pythonのthreadingとmultiprocessingを完全理解 - Qiita
    toenobu
    toenobu 2021/04/26
  • Cでサーバー監視のプログラムを作ってみよう その3

    ついにDaemon化だけど、意外な事実が待っていた前々回くらいの「たらこ鱈の子」の回で、親プロセスがなくなった時に子プロセスがinitの子になる現象があって、それでinitのプログラムが作れるんかな?いやぁ、そんなまさかなぁと思ってたんだけど、それほど遠くもなかったのだったのだった。 Daemon化するプログラムのサンプルの説明を見てみるとこう書かれていた。 1.forkして親プロセスを終了、自動的にinitの子となる。 2.setsid()で制御端末を切り離す。 3.カレントディレクトリを/ ルートへ。 4.標準入出力、エラー出力をnull、厳密にはcloseする。 という事らしい。 先入観というのはほんとに感覚を狂わせるというか、Daemonに対してこんな簡単にできるのかという認識がなかったのでびっくりした。そんなキョンシーみたいなやり方でいいのか。 とはいうものの第一印象というのは大

    toenobu
    toenobu 2021/04/26
  • Creating daemon process Python example explanation | Junchao's blog

    toenobu
    toenobu 2021/04/26
  • UNIX/Linuxの「デーモン」はこうやって作る

    by Jeff Hitchcock WindowsAndroidを搭載したデバイスの動作を軽快にする方法を調べると「タスク」や「プロセス」「デーモン」といった言葉が目に入ります。特にデーモンはUNIX/Linuxにおいて、ユーザーとの対話を行うための制御端末を持たないバックグラウンドプロセスとして、ウェブサーバーやメールサーバーの役割を担う存在。そのデーモンの生成方法について、エンジニアのAryaman Sharda氏が説明しています。 Understanding Daemons (in Unix) - Digital Bunker https://blog.digitalbunker.dev/2020/09/03/understanding-daemons-unix/ デーモンとは、バックグラウンドで動作し特定のイベント発生を待機しているプロセスのこと。代表的なデーモンとしてはウェブサ

    UNIX/Linuxの「デーモン」はこうやって作る
    toenobu
    toenobu 2021/04/26
  • Linuxでデーモンプロセスを作ってみた

    最近デーモンについて学んだのでメモ代わりに書いてみました。 デーモンって?? デーモン (daemon)とはLinuxやUNIXにおいてメモリ上に常駐してるプロセス。 デーモンの意味は,悪魔の「demon」ではなく守護神の「daemon」。ここ大事 詳しくはwikiを読むのがベストだと思います。 デーモン (ソフトウェア) ぶっちゃけて言えば無限ループのプログラム。 ループ中に要求があればそれに答えるといったイメージです。 ちょっと細かく書くと (通常は)親プロセスのプロセスID (PID) が 1 (init) 制御端末 (tty) を持たない 寄り道 ちょっと横道に反れます。 プロセスの話になるとよく聞くゾンビプロセスと孤児プロセスについてちょっと解説 孤児プロセス 子プロセスよりも先に親プロセスが死んだとき、その子プロセスは道連れにはされません。 孤児となった子プロセスは init

    Linuxでデーモンプロセスを作ってみた
    toenobu
    toenobu 2021/04/26