タグ

kernelとlinuxに関するstoikheiaのブックマーク (13)

  • Linuxカーネルパラメータのチューニング&設計 - Qiita

    Linuxカーネルパラメータのチューニング&設計 0.目的 【カーネルパラメータのチューニング】を修得する目的は、サーバの特性を理解し、それぞれに合ったカーネルパラメータのチューニングすることでリソースの有効活用をできるようになることを目的とし、私個人の経験を元にした見解を以下の記事に掲載します。 1.最初に サーバには、それぞれ必要なリソース特性があり、それに合わせたカーネルパラメータのチューニングが必要となります。 世の中の流れはオンプレよりクラウドに移行してはいるので、カーネルパラメータのチューニングよりスケールアップなりスケールアウトするなりの対応をすべきなのでしょう。 ですが、カーネルパラメータのチューニングを知らないとどちらを選択すべきかも理解しずらいと思いますので軽率には出来きません。(待ち行列理論もしらないといけませんが) また、最近のLinuxはデフォルト値が大きくなって

    Linuxカーネルパラメータのチューニング&設計 - Qiita
  • Dirty Pipe(CVE-2022-0847)の発見経緯が面白かった - knqyf263's blog

    最初に断っておくと今回は万人向けの記事ではないです。面白かったので自分が忘れないようにまとめているだけです。 記事の位置付け はじめに 発見経緯 CRCのエラー HTTPアクセスログ 壊れたgzipのtrailerを見てみる 壊れたファイルの法則性 月次ログファイルの生成 Linuxカーネルのバグの可能性 バグ混入の歴史 ログ破損の原因 8バイトの謎 PoCの制約 まとめ 記事の位置付け Dirty Pipe(CVE-2022-0847)三部作の最後です。ダークナイト三部作で言うとダークナイト ライジングにあたります。ダーティとダークって似てませんか。 spliceを使って高速・省メモリでGzipからZIPを作る 20分で分かるDirty Pipe(CVE-2022-0847) Dirty Pipe(CVE-2022-0847)の発見経緯が面白かった(記事) 上の1, 2を前提知識と

    Dirty Pipe(CVE-2022-0847)の発見経緯が面白かった - knqyf263's blog
  • 七転び八起きのLinuxカーネルコミュニティ開発体験記

    はじめに 現在のLinuxカーネルはメモリーホットプラグという,一般的にはなじみがない機能をサポートするようになっています。私は長い間その開発にかかわってきました。 コミュニティに参加する方法というのは,今ではノウハウ化が進み,「Linuxカーネル開発への参加方法」という文書も紹介されるようになりました。 しかし,私が活動をはじめた当時は,まだどうやって開発していけばよいのか勝手がわからず,四苦八苦することとなりました。これまでプロプラエタリなソフト開発しかしたことがないエンジニアにとって,コミュニティ開発というのはまったく開発スタイルの違う世界に飛び込むことだったからです。しかし,その苦労によって得られた経験は,その後の他の開発活動に活かされることになりました。ちょうど良い機会をいただいたので,そのときの苦労を振り返りたいと思います。 メモリーホットプラグをサポートしているハードウエアは

    七転び八起きのLinuxカーネルコミュニティ開発体験記
  • Linux スケジューラーのコア実装とシステムコール - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに これは Linux Advent Calendar 2016 の第 11 日目の記事です。Linux のタスクスケジューラーのソースコードや関連するドキュメントなどを読んで分かったことをまとめました。とても長いです・・・ はじめにスケジューラーのアーキテクチャと重要な概念を紹介し、その後はスケジューラーコアとシステムコールの実装について分かったことを延々と述べます。調べきれなかったことや分からなかったことは TODO に残したので、コメント欄とかツイッターで教えてもらえると嬉しいです。間違いの指摘も大歓迎です。 ちなみに私が読

    Linux スケジューラーのコア実装とシステムコール - Qiita
  • OOMKillerに亭主を殺されて一年が経ちました。 - 私が亭主と出会ったのは今からちょうど4年2ヶ月前、私がGentoo... - Yahoo!知恵袋

    OOM Killerに亭主を殺されて一年が経ちました。 私が亭主と出会ったのは今からちょうど4年2ヶ月前、私がGentooをインストールしていたときでした。 亭主はそれなりに経験があるkernel hackerだったので、いとも簡単にGentooをインストールしてくれ、私は一目惚れしてしまいました。 幸い亭主も私も同じVim教だったので、教会で素敵な結婚式を挙げることができました。 少し下品な話ですがmakeに励んだおかげで子宝にも恵まれ、私たちは幸せに暮らしていました。 でも、二人とも気づかなかったのです。 まさか私たちのメモリが限界を迎えていたなんて、思ってもみませんでした。 「メモリ不足な昔の話だからどうせ私たちには関係ない」 - そう思っていたのが間違いだったのです。 亭主は突然、あの悪名高きOOM Killerに殺されてしまったのです。 そこからは悪夢のような日々でした。 毎日毎

    OOMKillerに亭主を殺されて一年が経ちました。 - 私が亭主と出会ったのは今からちょうど4年2ヶ月前、私がGentoo... - Yahoo!知恵袋
  • Linux Performance

    static, benchmarking, tuning: sar, perf-tools, bcc/BPF: bpftrace, BPF book: Images license: creative commons Attribution-ShareAlike 4.0. This page links to various Linux performance material I've created, including the tools maps on the right. These use a large font size to suit slide decks. You can also print them out for your office wall. They show: Linux observability tools, Linux static perfor

  • cgroupsによるIO帯域の制限 - めもめも

    Kernel 2.6.37で導入された表題の機能が、RHEL6.1にバックポートされています。非常に分かりやすい機能ですので、実験結果を書き残しておきます。(RHEL6.0には入っていませんのでご注意を。) パラメータの説明 ・blkio.throttle.read_bps_device ・blkio.throttle.write_bps_device 特定のデバイスに対するアクセス速度の上限をByte/Sec単位で指定。0を指定すると制限を解除。 指定方法は"Major:Minor 設定値"(例"8:0 1048576") ・blkio.throttle.read_iops_device ・blkio.throttle.write_iops_device 特定のデバイスに対するアクセス速度の上限をIO/Sec単位で指定。0を指定すると制限を解除。 指定方法は"Major:Minor 設定

    cgroupsによるIO帯域の制限 - めもめも
  • systemdを本番運用してわかったこと - mixi engineer blog

    こんにちは、運用部 アプリ運用グループの清水です。モンスト仲間募集中です。 以前、Fedora 8からFedora 17への移行のお話を書きました。Fedora 17ではsystemdがデフォルトで使われています。そのsystemd番環境で運用して1年以上が経ち、様々な経験をしてきました。systemdの環境で知っておくと役に立つと思われることについていくつか紹介したいと思います。 まずは、systemdの概要について簡単に紹介します。 systemdの概要と歴史 systemdは、従来のSysVinit/Upstartに代わるもので、Linuxサーバの起動時に初期設定やサービス起動をおこなうことにとどまらず、プロセスやリソースなど様々な管理をおこなうデーモンです。 Fedora 14の頃(2010年11月リリース)にTechnology Previewとして提供され、Fedora 1

    systemdを本番運用してわかったこと - mixi engineer blog
  • TOMOYO Linuxに学ぶ説得術 - 未来のいつか/hyoshiokの日記

    昨日、TOMOYO Linuxメインライン化記念合同勉強会(カーネル読書会、セキュアOSユーザ会、まっちゃ445)に行ってきて、小崎さんが匿名掲示板でガチでレビューしていたお話を聞いたので、早速過去ログを読んでみた。http://tomoyo.sourceforge.jp/2ch/thread-2.txt (追記:2009/7/4 21:03 なぜか後半部分、アスキーアートの後が切れてしまったので、前半部分を若干カットして(略)の部分、その2を追加しました。) LKML (Linux Kernel Mailing List)というのはLinuxカーネルの技術的なことを議論するもっとも権威(?)あるメーリングリストで、ここで議論され合意されたものがLinux体に取り込まれることになる。このLinux元の体(くどいな)のことをメインラインと呼ぶ。Linuxを創ったLinusさんに

    TOMOYO Linuxに学ぶ説得術 - 未来のいつか/hyoshiokの日記
  • どうしてメモリはスワップするのか!?

    こんにちは。斎藤です。 最近、新しいスキー板が欲しいなと思っています。現在使っているOGASAKAの板は5年目に入り、メーカーからこれ以上はチューンナップ(メンテナンス)はできないよ、と言われてしまいました。もし、次に買うなら、スノーボーダーの人と一緒にパウダーに飛び込みやすいセミファットタイプが良いのかなと考えています。皆さんのオススメ、ぜひ教えてください。 さて、今日はLinux Kernel上でのメモリ管理、特にページ回収(Page Reclaim)とスワップに絞り、「スワップの理由」「ページを回収する仕組み」そして「スワップの様子を観察する」の3点に分けてお話しします。「スワップするのが気持ち悪い」と考えている方は少なくないと思いますし、私もそう考えていた時期がありました。しかし、それは当に悪い事なのか、今回掘り下げて行きます。 ※主な対象Kernelは2.6.32(Red Ha

    どうしてメモリはスワップするのか!?
  • はじめてのカーネル・ソース 第1回 どうしたら読めるようになるのか:ITpro

    なかなかハードルが高く,多くの人が踏み出せないでいるカーネルのソース・コードの読解。連載では,今までカーネル・ソースなんて見たことがないという人に,読みこなすコツをお教えします。今回は,どうしたらカーネル・ソースを読みこなせるようになるのか,筆者の経験をお話します。 Linuxユーザーなら誰しもカーネルのソース・コード(カーネル・ソース)を読んで,どのような処理を行っているのかを確認したり,自分なりの変更を加えたりしたくなるのではないでしょうか。しかし,カーネル・ソースの量は膨大な上,C言語で書かれているので,コンピュータ内部やOS(オペレーティング・システム)の仕組みを理解したプログラマでないとなかなか読みこなせません。そのため,カーネルを読むための第一歩を踏み出せない人が数多くいることは事実です。 講座では,プログラマではないごく普通のLinuxユーザーが,カーネルをある程度自力で

    はじめてのカーネル・ソース 第1回 どうしたら読めるようになるのか:ITpro
  • The 67th Yokohama kernel reading party

    Explaining glibc malloc internals. slide: http://www.slideshare.net/kosaki55tea/glibc-malloc

    The 67th Yokohama kernel reading party
  • sched_clock() overflow after 208.5 days in Linux Kernel

    えーっと、久しぶりに Linux Kernel にダメダメなバグが発見されて、よりにもよってうちの製品も影響を受けたので、ここに詳細を書くことにした。 つーか。新しい Kernel を使うなら皆で使おうよ。なんだよその「1つだけ」影響を受けて残りは「影響も受けないぐらい古い」ってのは… 概要 大雑把に 208.5日連続運転した Linux Kernel が突如として reboot する。 実機でなおかつ Time Stamp Counter を内包している必要があるので、Pentium4以降のプロセッサ(が、それはようするに今ある Intel 系CPU全部)か、その互換CPUである必要がある。32bit モード、64bit モードの区別はない。 逆に VMware や Xen など、仮想マシン上で動いている kernel に影響はない。これはそもそもバグを内包したルーチンを、仮想マシンで動

  • 1