タグ

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

  • 「問題・課題・打ち手」 - puttinpuddinのブログ

    経営コンサルティングの仕事は、クライアントの置かれている固有文脈に根差した問題解決をサービスとして提供する。この仕事は、カスタマイゼーションの程度を高めることで得られる効用の非線形な伸びをバックボーンとしており、それゆえに、一品モノ生産の性格を色濃く残している。一品モノ生産であるにも拘らず安定的に高い生産性を誇るには、共通項である「問題解決」が技術として修められていなければならない。 しかしながら、この「問題解決」の作法は、咀嚼しやすい大きさにパッケージングされた断片的な知識として市場で流通しており、それぞれで用いられている概念/表現にも揺れが存在するため、根幹にあたる知識体系を習得しにくくなっているように感じている。また、有力な体系として7 Stepsのような強力なツールもあるものの、実際に運用しようとしてみると、依然ハイコンテクストだと感じる。 そのような問題意識から、僕のチームでは以

    「問題・課題・打ち手」 - puttinpuddinのブログ
  • strace でプログラムの動きを追ってみよう | SIOS Tech. Lab

    エンジニア業務環境アンケート結果 ◆ エンジニアが自分の働き方にどういったことで満足していて、不満を感じているのか、働きたい会社像として何を求めているのか、業務環境調査を実施しました。ぜひご覧ください。 ⇒ アンケート結果はこちらから こんにちは。サイオステクノロジーの貝野です。 プログラム (特定のプロセス) があるひとつの処理を実行する際、内部的にどのような処理がどのような順序で実行されているのか確認したい場合があると思います。 しかし、ログファイルからは詳細な処理内容が確認できない場合も多いです。 このような時、strace というデバッグツールを使用する方法があります。 strace は、特定プロセスのシステムコールレベルでの処理をトレースできるツールです。 今回は、strace コマンドの実行例を元に、実行結果の見方や主なシステムコールについてご紹介します。 strace

    strace でプログラムの動きを追ってみよう | SIOS Tech. Lab
    higed
    higed 2021/02/07
    straceの使い方
  • 必見!業務改善を効率化するフレームワーク5選!

    世の中には、ビジネスマンの思考整理などをサポートするさまざまなフレームワークが存在します。しかしフレームワークの種類が多いこともあり使い方がいまいち分からず、上手く活用できていない方も多いのではないでしょうか。 業務改善に関しても、さまざまなフレームワークが提供されています。各フレームワークの意味や使い方が分かれば、今すぐにでもフレームワークで業務改善が可能です。 今回は業務改善を効率化できるフレームワークを、5つご紹介していきます。 BPMN ロジックツリー KPT バリューチェーン分析 ECRS まとめ BPMN 「BPMN(Business Process Model and Notation)」は、「ビジネスプロセスモデリング表記法」と訳されるフレームワークです。コンピュータ業界に関する団体である「OMG(Object Management Group)」が標準化を進め、「ISO1

    必見!業務改善を効率化するフレームワーク5選!
  • [試して理解] Linuxのプロセススケジューラのしくみ - Speaker Deck

    成長は小さな失敗の積み重ね 事業を支えるCARTAのフルサイクルエンジニアリング / growth-for-small-fail-fast-carta-fullcycle

    [試して理解] Linuxのプロセススケジューラのしくみ - Speaker Deck
  • プロセスのリソース制限をさせる『rcon』 - Qiita

    概要 どうも。はにです。あまり専門ではないのでわかりませんが、双極性障害なんじゃないかと思いこむこの頃です。 さて、私はあるサービスを運用しています。ところが、現在はサービスのプロセスが仮想マシン上でぐちゃぐちゃして稼動しているのでいろいろな意味でよくないです。だから整理する方法を考えています。 んで、見つけたのが『rcon』。 プロセスのi/oやCPUを制限できるらしいです。メンテされておらず、動くか怪しいので検証してみます。 環境 Ubuntu 16.04 導入 apt install rake bison flex libpam-dev git clone https://github.com/matsumotory/rcon cd rcon #ビルド rake

    プロセスのリソース制限をさせる『rcon』 - Qiita
  • #きょうのsystemd: (翻訳)PID 1 を考え直す - ぽぽの備忘録

    レナートがsystemdの構想について語ったブログエントリーの翻訳。 原文はこちら: Rethinking PID 1 投稿は2010年4月30日とかなり古いものではあるが、この時点で現在に至るまでのsystemdの設計思想がしっかり示されており、いまもなお色あせていないと思う。 レナートからブログエントリーの翻訳の許可を取り付けたので、せっかくだから一番最初に訳すのはこの記事にしたい。 一気に訳すだけの気力と時間はないので、何回かに分けて訳す。 記事を分割すると検索性が落ちるので、この記事に加筆修正していく。 最初からきちんと訳せるという気はしておらず、誤字・脱字・誤訳がたぶんいっぱいある。 なので、見つけた方はご指摘ください。徐々にいいものにしていきたい。 *1 PID 1 を考え直す 十分な関わりがあったり、行間を読むのが得意であったりすれば、このブログ投稿が何に関することかはもう察

    #きょうのsystemd: (翻訳)PID 1 を考え直す - ぽぽの備忘録
  • ptraceシステムコール入門 ― プロセスの出力を覗き見してみよう! - プログラムモグモグ

    他のプロセスを中断せずに、その出力をミラーリングして新しくパイプで繋ぐ、そんなことはできるのでしょうか。 straceやgdbといったコマンドは一体どういう仕組みで動いているのでしょうか。 ptraceシステムコールを使い、プロセスが呼ぶシステムコールを調べて出力を覗き見するコマンドを実装してみたいと思います。 ptraceシステムコール Linuxを触っていると、いかにプロセスを組み合わせるか、組み合わせる方法をどれだけ知っているかが重要になってきます。 パイプやリダイレクトを使ってプロセスの出力結果を制御したり、コードの中からコマンドを実行して、終了ステータスを取得したりします。 プロセスツリーやプロセスグループを理解し、シグナルやnohupコマンドを使ったりします。 プロセスの扱いに慣れると疑問に持つのがstraceやgdbの仕組みです。 プロセスの実行しているシステムコールを出力し

    ptraceシステムコール入門 ― プロセスの出力を覗き見してみよう! - プログラムモグモグ
  • サンフランシスコで転職活動をしました - Jeffsuke is not a pen.

    要約 サンフランシスコで hired.com を主に用い、ニューヨークの会社から、転職しました。RedditのHere’s How to Prepare for Tech Interviewsという記事を参考に、技術面接への準備をし、大小様々な企業20社程を受けて、自分のミッションとマッチする会社を見つけました。 背景 ニューヨークにある会社で働いていたのですが、諸々の事情があり転職活動をすることになりました。*1 アメリカでの一般的なソフトウェアエンジニア採用プロセス アメリカでの一般的な採用プロセスは以下の通りです。 レジュメのスクリーニング 人事との電話面談 技術者との電話面接(1~2回) オンサイト面接 人事との電話面談は、志望動機や過去の経験を聞かれます。会社の求める人材との最低限のマッチングを確認している場合が多いです。 技術者との電話面接は、電話で会話しながらオンラインのコー

    サンフランシスコで転職活動をしました - Jeffsuke is not a pen.
  • Linuxのパッケージをアップデートしたあとrestartが必要なプロセスを見つける方法 - Qiita

    はじめに 脆弱性対応のためのアップデート作業というものは頻繁に発生するものですが、番運用しているシステムではサービスへの影響を最小限にしたいものです。 アップデートした後、出来ることなら必要なプロセスだけリスタートさせることで済ませたいのですが、どのプロセスをリスタートすれば良いのか、そもそもOS再起動しないと反映されないものなのか、判断が付かない場合が少なくありません。 そのような場合のため、再起動が必要なプロセスを見つけたり、OS再起動が必要かどうかアドバイスしてくれるコマンドがあります。 Redhat系 「yum-utils」パッケージに入っている「needs-restarting」コマンドを使います。 # needs-restarting -h Usage: needs-restarting: Report a list of process ids of programs th

    Linuxのパッケージをアップデートしたあとrestartが必要なプロセスを見つける方法 - Qiita
  • Linux スケジューラーのコア実装とシステムコール - Qiita

    はじめに これは Linux Advent Calendar 2016 の第 11 日目の記事です。Linux のタスクスケジューラーのソースコードや関連するドキュメントなどを読んで分かったことをまとめました。とても長いです・・・ はじめにスケジューラーのアーキテクチャと重要な概念を紹介し、その後はスケジューラーコアとシステムコールの実装について分かったことを延々と述べます。調べきれなかったことや分からなかったことは TODO に残したので、コメント欄とかツイッターで教えてもらえると嬉しいです。間違いの指摘も大歓迎です。 ちなみに私が読み始めたきっかけは、スケジューラーのアーキテクチャ、スケジューリングアルゴリズム、スケジューリングアルゴリズムの切り替え方、nice 値やプロセッサアフィニティがスケジューリングに及ぼす影響、プリエンプションの流れ、マルチプロセッサにおけるタスクのロードバラ

    Linux スケジューラーのコア実装とシステムコール - Qiita
  • https://syuu1228.github.io/process_management_and_process_schedule/process_management_and_process_schedule.pdf

  • メモリを食いまくるプロセスがメモリ使用量に与える影響をtopで追う

    暴走してどんどんメモリをうスクリプトが OS全体のメモリ使用量(CentOS5 ... カーネルは2.6系になる)の動作にどんな影響を与えるのか ってのを見るために以下のようなテストをしてみました。仕組みはだいたい理解してるけど、細かい数値を追ったことはなかったのでやってみました。 sshでログインして、topを立ち上げる。プロセスを見張る用意をしておく 別のsshをたちあげて、 Perlワンライナーで以下のようなプロセスを走らせる(このプロセスをtopで見張る) # 1秒ごとに5MB単位でメモリをうプロセス # 数値はお好みで perl -e "while(1){ sleep 1; push @h , 1 x 1024 x 1024 x 5 } " ちなみにtopで見張るときは メモリ使用量でソートされるようにして top起動中に shift + o を押して n を押すと 実メモリ

    メモリを食いまくるプロセスがメモリ使用量に与える影響をtopで追う
  • Linuxプロセスの起動時刻を調べる方法 - Qiita

    Help us understand the problem. What is going on with this article?

    Linuxプロセスの起動時刻を調べる方法 - Qiita
  • Linuxの性能関連のまとめ · GitHub

    command_tips.md Linuxの性能関連のまとめ 性能測定コマンド sar :システム稼動状況 mpstat:CPU稼働状況 vmstat:仮想メモリ稼働状況 free :メモリ情報 iostat:ハードディスク,CPU使用状況 ps :プロセス情報 top :プロセス情報 目安 CPU CPU使用率:90%以上 CPU待ちプロセス数:2より大きい(1CPUあたり) メモリ メモリ使用量:ページングの発生回数 ディスク ディスク使用率:80%以上 ネットワーク ネットワーク使用率:80%以上 パケット衝突回数:送信パケットの10%以上 sarコマンド # sar [オプション] [-o ファイル名] 取得間隔 取得回数 -u:CPUCPU使用状況 -q:CPU:プロセスキュー、システム稼動負荷 -r:メモリ:メモリ,スワップ領域使用状況 -R:メモリ:メモリ動作状況 -B:メ

    Linuxの性能関連のまとめ · GitHub
  • IO Accounting 機能で I/O 負荷の高いプロセスを特定

    随分久々の Linux ネタです。以前にロードアベレージに関する考察などの記事も書きましたが、多くのサーバーサイドエンジニアはサーバ負荷と日々戦っていることかと思います。過去多くの場合、負荷の原因特定はおおよそ下記のような手順で分析をしていたことかと思います。※詳しい手順は別エントリとして記載予定。 top をみて上位に張り付いているプロセスを確認しつつ CPU or I/O のどちらが原因か判別 ps を使ってプロセスの状態を確認して(T),(D)の状態から CPU or I/O のどちらが原因か判別 vmstat で procs の r, b の数、swap の si, so の状態、I/O の bi, bo の状態を確認 iostat を使って disk の read/write の状態をさらに詳しく確認 sar を使って os の状態をさらに詳しく確認 おおよその原因特定から設定を

  • 【資料公開】カイゼンの基本

    みなさんこんにちは。@ryuzeeです。 2016年9月16日に行われたDevelopers Summit 関西で表題のテーマで登壇してきましたので資料を公開します。 カイゼンについては1日のトレーニングコース(バリューストリームマップ作成含む)を[@haradakiro](https://twitter.com/haradakiro)と提供していますのでご興味のある方は[ご連絡](https://www.ryuzee.com/contact.php)ください。 アジャイルコーチングやトレーニングを提供しています株式会社アトラクタでは、アジャイル開発に取り組むチーム向けのコーチングや、認定スクラムマスター研修などの各種トレーニングを提供しています。ぜひお気軽にご相談ください。 詳細はこちら

    【資料公開】カイゼンの基本
  • 特定条件下のclone(2)を4倍速くする - 人間とウェブの未来

    とあるサーバで妙にシステムCPUの使用率が高い現象が置きておりました。 そこで、まずはざっくりとperf topでプロファイルをとってみると、以下のようになっていました。 22.38% [kernel] [k] copy_pte_range 18.44% [kernel] [k] zap_pte_range 11.13% [kernel] [k] change_pte_range 3.58% [kernel] [k] page_fault 3.32% [kernel] [k] page_remove_rmap また、各プロセスのstraceを眺めていると、cloneで0.05秒とかなり時間がかかっているようです。これだと単純計算で1コアで秒間20回のcloneでコア100%占有してしまう程度の非常に低速な処理しかできないことになります。 sudo strace -T -o/dev/stdo

    特定条件下のclone(2)を4倍速くする - 人間とウェブの未来
  • カーネルスレッドとは - Linuxの備忘録とか・・・(目次へ)

    カーネルスレッドで代表的ななものとして、プロセスIDが1のすべての親となるinitです。これはカーネル起動時作成されます。他にkeventd(ワークキュ)、kswapd(メモリー回収)、ksoftoirqd(ソフト割り込み)等があり、必要に応じて作成されたりいたします。 カーネルスレッドはカーネルの補助的な処理を行うものだと推測できても、ユーザプロセスとどう違うのでしょうか? 実はカーネルとしては、スケージューリングにおいてユーザプロセスと同じ物だということです。カーネルスレッドの作成は、ユーザプロセス作成と同じようにCLONE_VM属性でdo_fork関数で作成されます。すなわちカーネルとして1プロセスディスクリプターとして、処理しているに過ぎません。そうすることで、スケージューリングの中で、カーネルスレッドが動作することになり、全体的なパフォーマンスの効率化がはかられるわけです。 CL

  • Linux I/O のお話 write 編 - naoyaのはてなダイアリー

    write はページに dirty フラグを立てるだけなので決してユーザープロセスを待たせない って、当にそうなんでしょうか?(否定しているわけではなく、純粋な疑問です。) と質問をもらったので、最近追ったことをここでまとめます。かなり長文です、すいません。また、まだまだ不勉強なので間違っているところもあるかもしれません。ツッコミ大歓迎です。 まず、オライリーのカーネルの 15章 ページキャッシュ 15.3 汚れたページのディスクへの書き込み から引用。 ご存知のように、カーネルは、ブロック型デバイスのデータを含むページをページキャッシュに蓄えています。プロセスが何らかのデータを更新した場合は、必ず対応するページに汚れている印をつけます。すなわち、PG_dirty フラグを設定します。 UNIX システムでは、汚れたページのブロック型デバイスへの書き込みを遅延することができます。この方

    Linux I/O のお話 write 編 - naoyaのはてなダイアリー
  • マルチスレッドのコンテキスト切り替えに伴うコスト - naoyaのはてなダイアリー

    また Linux カーネルの話です。 Linux では fork によるマルチプロセスと、pthread によるマルチスレッドでの並行処理を比較した場合、後者の方がコストが低く高速と言われます。「スレッドはメモリ空間を共有するので、マルチプロセスとは異なりコンテキストスイッチ時にメモリ空間の切り替えを省略できる。切り替えに伴うオーバーヘッドが少ない。」というのが FAQ の答えかと思います。 が「オーバーヘッドが少ない」と一言にいわれても具体的にどういうことなのかがイメージできません。そこで Linux のスレッド周りの実装を見て見ようじゃないか、というのが今回のテーマです。 3分でわかる(?) マルチプロセスとマルチスレッド まずはうんちく。マルチプロセスとマルチスレッドの違いの図。以前に社内で勉強会をしたときに作った資料にちょうど良いのがあったので掲載します。Pthreadsプログラミ

    マルチスレッドのコンテキスト切り替えに伴うコスト - naoyaのはてなダイアリー