タグ

kernelに関するf99aqのブックマーク (19)

  • 『Linuxカーネル解読室』輪講 #1「プロセススケジューリング」 - Kentaro Kuribayashi's blog

    Linuxカーネルの話を知りたいなーってんで、『Linuxカーネル解読室』の輪講を始めました。とりあえず、カーネルのソースをがりがり読み込むというよりは、ざっくりと動作を把握しようという感じで。今日の初回は、第1章「プロセススケジューリング」を読みました。この分野にまったくもって不案内なので、難しい……。少しづつでも理解を進めたいです。 以下に資料を貼り付けておきます。実際には、id:naoyaをはじめとした参加者によるフォローに助けられて進めた感じなので、資料だけだといろいろとアレな面もあるとは思います。 Linuxカーネル2.6解読室 作者: 高橋浩和,小田逸郎,山幡為佐久出版社/メーカー: ソフトバンククリエイティブ発売日: 2006/11/18メディア: 単行購入: 13人 クリック: 189回この商品を含むブログ (116件) を見る [24時間365日] サーバ/インフラを支

    『Linuxカーネル解読室』輪講 #1「プロセススケジューリング」 - Kentaro Kuribayashi's blog
  • Linux Storage Filesystem/MM Summit 2014からの便り

    Linux Storage Filesystem/MM Summit 2014からの便り:Linux Kernel Watch(1/2 ページ) お久しぶりです、Linux Kernel Watchが帰ってきました。3月に行われた「Linux Storage Filesystem/MM Summit 2014」の主なトピックを紹介します。 皆さん、お久しぶりです。私は今ボストンで、米レッドハット常駐という立場でRed Hat Enterprise Linux(RHEL)開発に携わっています。 今回はサンフランシスコ近郊のナパバレーで2014年3月24~25日に行われた「Linux Storage Filesystem/MM Summit 2014」(以下LSF/MM)の中から面白かったトピックをピックアップしてお届けしたいと思います。 LSF/MMはLinux Foundation主催で行

    Linux Storage Filesystem/MM Summit 2014からの便り
  • 無視できないフラグメンテーション問題への解答は?(1/2) - @IT

    1月版 無視できないフラグメンテーション問題への解答は? 小崎資広 2010/2/10 当初、今回はmemory compactionとtransparent hugepageという2つのトピックを取り上げ「Hugepage大特集」にしようと思っていたのですが、並列プログラミングカンファレンスに触発され(正確には、そのカンファレンスに参加できなくて悔しかったことに触発され)、後者を急きょ、ロックレスネタに差し替えて紹介します。 でもこれが大失敗で、調査が大変過ぎて泣けたうえに、スケジュールがとんでもないことに。人間、思い付きで行動してはいけないといういい見ですね。 Melの悲願なるか? Memory Compactionチャレンジ Mel Gormanは、Memory Compaction v1パッチシリーズを投稿しました。これは「Linuxメモリ管理の最先端を探る」で説明したAnti

  • @IT:TOMOYO Linux カーネルマージまでの道のり(1/2)

    そもそもTOMOYO Linuxとは何か そもそもTOMOYO Linuxとはいかなるものなのか。「たまに勘違いする人がいるのですが、TOMOYO Linuxはディストリビューションではありません。Linuxセキュリティを強化するための拡張の一種です」(原田氏) Linuxも含めた汎用的なOSでは、root権限さえ持っていれば、たとえアクセス制御を設定していてもそれを無視してあらゆるファイルにアクセスし、上書きや削除といった操作を行えてしまう。また、プロセスが乗っ取られてしまうと、システム全体に大きな被害が及ぶ可能性がある。 これに対し、たとえroot権限を持っていたとしてもアクセスに制限を加える「強制アクセス制御(MAC:Mandatory Access Control)」と呼ばれる機構を備えることで、セキュリティを強化する仕組みが登場してきた。いわゆる「セキュアOS」だ。セキュアOS

  • Linux Kernel Watch 5月版 Firefoxのプチフリーズ問題から始まった大論争(1/2) − @IT

    5月版 Firefoxのプチフリーズ問題から始まった大論争 小崎資広 2009/6/1 今回メインのネタとして取り上げたFirefoxの「プチフリーズ問題」ですが、その後調べたところ、WindowsMacでも問題になっているようですね。「firefox sqlite」で検索するといっぱいヒットしました。 今回の件は、アプリケーションのミスでもカーネル側で無理やり何とかしてしまうLinuxの実利主義の真骨頂が表れたんじゃないかと僕は思っています。皆さんはどう思いますか? それでは、どうぞ! それはFirefoxのプチフリーズ問題から始まった すでに各方面で話題になっていますが、2.6.30のマージウィンドウでext3のトピックが荒れに荒れ、とんでもない騒ぎが起こっていました。 問題の発端は、あるFirefoxのbugzillaエントリから始まりました(注1)。「Linux版Firefoxを

  • RCUの全面書き直しも! 2.6.29は何が変わった?(1/2) - @IT

    4月版 RCUの全面書き直しも! 2.6.29は何が変わった? 小崎資広 2009/5/8 いやあ、文字数の都合で書けませんでしたが、4月最終週はIngoがいい出した「カーネル専用コンパイラを作ろうぜ!」スレッドが大盛り上がり。おバカな話題ほどスレッドが伸びるのは、全世界共通ですね。 それでは予告どおり、今回はカーネル2.6.29についてのよもやま話をお送りいたします。どうぞ。 カーネル2.6.29の主な変更点 ■ランダムシード受け渡し方法の変更によるアプリケーション起動の高速化 最近のgccには、glibcと連携してスタック破壊を検知するSSP(Stack Smashing Protector)という機構が実装されています(-fstack-protectorオプション)。これはスタックに「カナリア値」と呼ばれる特殊な値を埋め込み、関数リターン時に、その値が無変更であることを確認することで

  • トレーサ関連に大きな進展、ftraceがデファクトに?(1/2) - @IT

    3月版 トレーサ関連に大きな進展、ftraceがデファクトに? 小崎資広 2009/4/8 お久しぶりです。先月はThe Linux Foundation Japan Symposiumの発表や何やらで急きょ休んでしまいました。関係各位に迷惑を掛けてしまい、若干肩身が狭い筆者です。 さて、最近の一大ニュースといえば、Linuxの起動ロゴがTuxからTuz(1月のlinux.conf.auのマスコット)に変更されたことでしょう。何げなく最新カーネルをビルドしようとして、ロゴ変更にビックリした人も多いんじゃないでしょうか? どんなロゴか興味がある人は、Linusのブログから見ることができます。 執筆時点ではあと数日もしたら2.6.29がリリースされそうな雰囲気なのですが、残念ながら締め切りに間に合いそうにないので、今月は通常のKernel Watchでお送りします。それでは、どうぞ。 編注:米

  • スケジューラの挙動は三巨頭会談で決まるのだ?(1/2) - @IT

    1月版 スケジューラの挙動は三巨頭会談で決まるのだ? 小崎資広 2009/1/30 お久しぶりです。筆者は今月、オーストラリアはタスマニア島で開催されたlinux.conf.au 2009に参加してきました。おかげで原稿の締め切りが大幅に前倒しになって大変だったのですが、なかなか貴重な体験ができました。 まず、言葉が全然通じません。彼らの発音だと「name」が「ナメ」なんですよ。パブとかでフランクな人に話しかけてこられたりすると超ピンチ、冷や汗出まくりです。もう1つ面白かったことがあります。タスマニア島というとタスマニア・デビルぐらいしか知らなかったのですが、現地の方の間では宮崎アニメの「魔女の宅急便」の舞台となった場所だと認識されていることです。主人公が働いていた「ぐーちょきパン屋」の元になったとされるパン屋さんが、州都から北に1~2時間ほど走った郊外にあるのだとか。意外なところで文化

  • 12月版 カーネルゆく年くる年、2009年に来る機能はどれだ?(1/2) - @IT

    小崎資広 2009/1/5 あけましておめでとうございます。読者の皆さまは年末年始、いかがお過ごしでしたか? 筆者は正月休みの間、stapgames(Systemtap Game Collection、注1)にハマっていました。半分ジョークソフトのようなものですが、SystemTapの上にさまざまなゲームを構築しています。 SystemTapは「input(キーボードとかマウスとか)のサポートがない」「outputがprintfだけ」「スクリプト長に厳しい制限」と、およそゲームに向いているとはいい難い環境なのですが、ダメといわれるとやりたくなるのがハッカー魂のようです。 筆者の一番のオススメは、ショートコーダー版テトリス(tetris_sort.stp)。わずか7行にまで縮められたテトリス・ルールの美しさと、キーボードドライバにprobeを打ち込んで無理やり入力を乗っ取るという強引さとが相

  • 9月版 タイマにまつわるエトセトラ(1/2) - @IT

    小崎資広 2008/10/9 linux-kernelメーリングリストかいわいで起きるイベントを毎月お伝えする、Linux Kernel Watch。2008年9月のカーネル関係の状況について見てみましょう。 ある意味「予想どおり」のカーネルサミット 最近いきなり寒くなったので体調を崩している筆者です。皆さま、いかがお過ごしでしょうか。 年に1度の大イベント、カーネルサミットが終わり、あちこちで速報が流れているようです。 Alan CoxのLinux 3.0(注1)が否決されたほか、I/O周りをSSDに最適化しようという提案も否決(注2)、カーネルトレース機能(注3)もLinusの「オレ、イラネー」発言で否決と、予想どおりというか、あまり意外性のない結果になったようです。記事を書く立場としては、ネタを拾えなくて少し残念です。 では、最近のLKMLで起きたトピックを追ってみましょう。どうぞ!

  • Linux Kernel Watch 6月版 新機能のバトルフィールド「linux-staging」登場 (1/2) − @IT

    小崎資広 2008/6/30 linux-kernelメーリングリスト(以下LKML)かいわいで起きるイベントを毎月お伝えする、Linux Kernel Watch。2008年5~6月のLinuxカーネルメーリングリストでどんなことが起きたのか見てみましょう。 新ツリー「linux-staging」発進! 6月11日、Greg K-Hが新しい開発ツリー「linux-staging」を作成したことをアナウンスしました。これは主に、新しいドライバやファイルシステムを開発初期段階で集約しておく目的のものです。これにより、開発者は新しい機能を簡単にテストできるようになり、品質改善が加速されることを狙っています。 気になるのは、既存のlinux-nextや-mmツリーとの違いです。linux-stagingは、次回のマージウィンドウではマージ候補対象外であるような、開発初期段階のコードを対象にしてい

  • Linuxメモリ管理の最先端を探る(1/2) - @IT

    小崎 資広 2008/5/22 この記事では、Linux Kernel Watchの番外編として、Linuxの最近のメモリ管理周りの動きと、その背景のモチベーションについてお伝えしたいと思います。 メモリ管理は変更時のインパクトが大きいため、通常、Stable Tree(安定ツリー)ではあまり変更はなされません。しかし、Linuxカーネルメーリングリスト(LKML)の議論では「もうカーネル2.7は出ない」ともいわれており、十分なテストがなされたものであれば、アグレッシブなパッチでも受け入れられるようになっています。 また、メモリの急速な大容量化により、いままで問題にならなかった部分にスケーラビリティ上の問題が発生したという報告もちらほら出てきました。それを解消するためのさまざまな改善が提案されています。 こうした背景により、2007年から2008年にかけては相当面白いパッチが出てきました。

  • Linux 2.6.22 released | スラド

    7月8日(国内では9日)、最新の安定版カーネル 2.6.22 がアナウンスされました。 kernelnewbies.org によると、今回の主要な強化点は以下の通り。 新しい SLAB アロケータ「SLUB」 Devicescape が寄贈した新ワイヤレススタック 新しい IEEE1394 スタック ファイルディスクリプタを介したシグナル/タイマ/イベント通知 Blackfin アーキテクチャサポート フラッシュデバイス用 LVM「UBI」 RxRPC プロトコルのサポート プロセスのフットプリント情報追加 utimensat() システムコール追加 大量のドライバ追加・更新

  • linux 2.6.23リリース | スラド

    linuxカーネル2.6.23がリリースされました。 今回もいろいろ機能が追加されたり、修正/改善(改悪もか?)が入っております。 スケジューラとしてCFSという新しいものが入りました 仮想化機能のひとつとしてlguestが追加されました(rc時代だと実験コードという感じだったけどどうなったかな…) 同様にXenのサポートも入りましたが、こちらはdomUのみです、他にも制限がいくつかある模様 UIO(userspace I/O)の導入でユーザランド空間で動くドライバの開発ができるようになった x86ベースのアセンブラ(起動時に使ってる部分)をよりまともにした 各種ハードウェアのドライバ追加/改良 より細かい情報については、 KernelNewbiesにあるサマリなどをごらんください。各地のミラーでソースはダウンロードできると思います。

  • ユメのチカラ: カーネルにおけるリグレッションの特定

    例えば、2.6.17では問題ないのに、2.6.18だとなぜか問題が発生するとする。linux kernel は git というソースコード管理システムによって、全ての変更が管理されているので、その機能を利用して問題を発生させたパッチを特定する事ができる。 基的な考え方は、コミットしたパッチを問題を発生させた組と、発生しない組にわけていって、問題を絞り込む。2分検索だ。 例えば、1000個分の変更がコミットされていたとする。これを問題が発生しない状況から一個一個順ぐりにあてていき、問題が発生したら、最後にあてたパッチが原因だということがわかる。この順ぐりにあてていく場合、最悪1000回試行錯誤しなくてはいけない。 2分検索の場合、まづ、500個分あてた状態で(gitで簡単にそのような状況をつくれる)試験をし、仮に問題が発生しなければ、残りの500個に問題があるので、さらに、その半分250個

  • Linux カーネルのコンテキストスイッチ処理を読み解く - naoyaのはてなダイアリー

    Linux カーネルのプロセススケジューラの核である kernel/sched.c の schedule() を読み進めていくと、タスク切り替え(実行コンテキスト切り替え)はその名も context_switch() という関数に集約されていることが分かります。2.6.20 の kernel/sched.c だと以下のコードです。 1839 static inline struct task_struct * 1840 context_switch(struct rq *rq, struct task_struct *prev, 1841 struct task_struct *next) 1842 { 1843 struct mm_struct *mm = next->mm; 1844 struct mm_struct *oldmm = prev->active_mm; 1845 184

    Linux カーネルのコンテキストスイッチ処理を読み解く - naoyaのはてなダイアリー
    f99aq
    f99aq 2007/09/30
    binary hacks もう一回読もうかな。
  • Linux I/O のお話 write 編 - naoyaのはてなダイアリー

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

    Linux I/O のお話 write 編 - naoyaのはてなダイアリー
  • マルチコア時代のロードアベレージの見方 - naoyaのはてなダイアリー

    ちょっと煽り気味のタイトルですが、CPU がマルチコアになり 2個、4個と増えていく中 Linux の負荷の指針になるロードアベレージをどう読むべきか、という話です。気になったところを少し調べたのでそのまとめを。 http://d.hatena.ne.jp/naoya/20070222/1172116665 でも書いたとおり、Linux のロードアベレージは「ロードアベレージは過去1分、5分、15分の間の実行待ちプロセス数の平均数 = 実行したくても他のプロセスが実行中で実行できないプロセスが平均で何個ぐらい存在してるか」を示す値です。ボトルネックが CPU、メモリ、ディスク等々どこにあるかは関係なく、仕事の実行までにどれぐらい待たされているかを示す値なので、システムのスループットを計測する指標の入り口になる値です。 このロードアベレージですが、実装を見るとランキュー(待ち行列)に溜まった

    マルチコア時代のロードアベレージの見方 - naoyaのはてなダイアリー
    f99aq
    f99aq 2007/05/19
    高負荷時は、均等に振ってくれるらしいというお話し
  • naoyaのはてなダイアリー - 負荷とは何か

    調べごとをしたので blog に書いて理解を深めようのコーナーです。長文です。 Linux でシステム負荷を見る場合にお世話になるのが top や sar (sysstat パッケージに同梱されてるコマンド) などのツールです。 top ではシステム統計のスナップショットを見ることができます。今システムがどういう状態かなーというときは top が便利。 top - 08:16:54 up 3 days, 14:43, 6 users, load average: 0.18, 0.07, 0.03 Tasks: 43 total, 2 running, 41 sleeping, 0 stopped, 0 zombie Cpu(s): 18.2% us, 0.0% sy, 0.0% ni, 81.8% id, 0.0% wa, 0.0% hi, 0.0% si一方の sar では10分ごとのシ

    naoyaのはてなダイアリー - 負荷とは何か
    f99aq
    f99aq 2007/03/18
    load average を深追い
  • 1