タグ

kernelに関するTAKESAKOのブックマーク (18)

  • 10月版 2.6.27はLTSに、命名規則の変更案も飛び出した(1/2) - @IT

    小崎資広 2008/11/4 2008年に入ってからずっと手掛けていたSplit LRUパッチ(参考:「Linuxメモリ管理の最先端を探る」)がやっと2.6.28のマージウィンドウにてマージされ、ほっと一息ついてる筆者です。さてさて、10月はカーネル2.6.27がリリースされたので、そちらの紹介をメインにお届けします。それではどうぞ! Linux 2.6.27にマージされた主な機能 2.6.26から約3カ月、10月10日にリリースされたLinux 2.6.27の主な機能や修正点から紹介していきましょう。 ■ext4:Delayed Allocation この機能は、そのまま「遅延アロケーション」ともいいます。従来のext3では、write()システムコールにおいてキャッシュに書き込みを行った時点で、ディスク上のブロックも予約していました。これには、キャッシュをディスクに反映するときに、ディ

    TAKESAKO
    TAKESAKO 2009/09/25
    >事実上、cpumask_t変数をスタックに置くことが全面禁止になってしまったことを意味します(スタックが4Kbytesしかないのに、1変数あたり512bytesの変数を置くなんて……)
  • SSDをめぐる議論に浮かび上がるベンダ模様(1/2) - @IT

    8月版 SSDをめぐる議論に浮かび上がるベンダ模様 小崎資広 2009/9/8 お久しぶりです。先月は「セキュリティ&プログラミングキャンプ2009」の準備があまりにも忙しくて、急きょお休みしてしまった筆者です。 8月は、2.6.31がリリース間近なこともあり、実験的なパッチの投稿は少なかったように思います。唯一、Jens Axboe(blockレイヤのメンテナ)による矢継ぎ早の超大型パッチの投稿が目立っていましたが、多くの開発者がサマーバケーション中なので、反応はイマイチ。そんな中、SSD周りの議論が強烈に面白い展開をみせていたので、大きく取り上げてみました。来月は、Jensパッチか2.6.31リリースの特集になる予定です。 それでは、どうぞ。 混迷深めるdiscardリクエスト ■全面書き直しが必要? 8月15日、Nitin Guptaがswapサブシステムに新しい通知機構の追加を提案

    TAKESAKO
    TAKESAKO 2009/09/09
    >「セキュリティ&プログラミングキャンプ2009」ですが、Linuxカーネル組は豊作で、参加者の中から3人がLKMLにデビューしました。
  • はてなブログ | 無料ブログを作成しよう

    地元と文化活動の思い出(地元でのライブの思い出) 美術手帖の編集長が帰省中に『巨大なイオンモールだけが煌々と明るい地方都市に帰省すると、美術の「美」の字も見つけられないと』ツイートしたことが炎上していた。 調べるとどうやら編集長は私の地元・伊賀市のすぐ近くの鈴鹿市出身らしい。 鈴鹿の事情はあまり知ら…

    はてなブログ | 無料ブログを作成しよう
  • 'Re: [PATCH] mm: make munlock fast when mlock is canceled by sigkill' - MARC

  • OSS開発の新たな流れを予感させたTOMOYO Linuxメインライン化記念勉強会

    印刷する メールで送る テキスト HTML 電子書籍 PDF ダウンロード テキスト 電子書籍 PDF クリップした記事をMyページから読むことができます 注目される3勉強会合同で開催された「メインライン化記念勉強会」 「TOMOYO Linuxメインライン化記念勉強会」が7月3日、東京・恵比寿の日SGIで開催された。 TOMOYO Linuxは、NTTデータが開発したLinuxのセキュアモジュールとして、Linux標準カーネル(メインライン)の「version 2.6.30」に採用され、6月10日にリリースされた。これを記念して企画された勉強会は開催前から多くの関係者の間で注目を集め、当日はTOMOYOのプロジェクトメンバーと知己の人々も含め、120名を越える参加者が会場に集まった。

    OSS開発の新たな流れを予感させたTOMOYO Linuxメインライン化記念勉強会
  • ソースを読む.そのことについて語ろう. l990418.txt

    This domain may be for sale!

  • ThankYou - TOMOYO Wiki - TOMOYO - OSDN

    最近の更新 (Recent Changes)2016-09-21ThankYou 2009-04-23FrontPage HowToRedHat 2009-04-19MakeSplash HowToDebian 2007-07-16Members 最新リリース情報binary-packages-1.6 (Binary packages support discontinued) (INDEX)2011-04-01 15:00binary-packages-1.7 (Binary packages support discontinued) (INDEX)2012-05-05 15:00binary-packages-1.8 (CentOS 6 (End Of Life))2020-09-22 12:00ccs-patch (1.8.9-20231225)2023-12-25 09:00cc

    ThankYou - TOMOYO Wiki - TOMOYO - OSDN
  • select のなかみ - moriyoshiの日記

    一応 select(2) も読んであったので説明しとく。 メインループは非常に短いので抜粋。ここにはビットマップの転送処理は含まれていないので注意。max_select_fd() の前後が rcu_read_lock() と rcu_read_unlock() で囲まれているのは、ドキュメント (Documentation/filesystems/files.txt) によると 2.6.12 から RCU をファイルディスクリプタテーブルで利用するようになったため。以前は単なるロックだった。 int do_select(int n, fd_set_bits *fds, s64 *timeout) { struct poll_wqueues table; poll_table *wait; int retval, i; rcu_read_lock(); retval = max_select

    select のなかみ - moriyoshiの日記
  • linux のシステムコールをフックする : DSAS開発者の部屋

    最近、とあるクローズドソースなデバイス管理ツールの挙動が気になり、その動作について解析してみることにしました。 プログラムをデバッグしたり解析したい時、どんなシステムコールが呼ばれ、どのような引数が渡されているかを、調べることができる strace は非常に有用です。 しかし、strace では ioctl で渡される複雑なデータ構造を表示することはできないため、システムコールをフックして引数を表示するという手段を取ることにしました。 そんな訳で linux でシステムコールをフックする方法について調べて見たところ、意外といろいろな方法が有ることを知りましたので、試してみた方法を幾つか紹介したいと思います。 注)今回の実験に使用した linux kernel のバージョンは 2.6.25.11 です。異なるバージョンではこの実験通りにはならない場合があります。 LD_PRELOAD を使っ

    linux のシステムコールをフックする : DSAS開発者の部屋
  • 第1回ローレイヤー勉強会 - Hello, cruel world

    Linux Kernel Hacking」というタイトルで1時間ほど話しました。資料はこちらからどうぞ。あと小手先の話になりますが、プレゼンする際、「参加者からのスクリーンの見易さ」には気をつけるようにしています。スクリーンを見る見ないは参加者の自由ですが、スクリーンが存在する以上、話す側は観られることを前提にする必要があると思います。具体的には、スライドのフォントサイズスライド中のコマンド、ソース等は、黒バック、黄色文字putty、コマンドプロンプトも同様にフォントサイズを調整、黒バック + 黄色文字必要に応じてZoomitを利用コマンドプロンプトを黒バック + 黄色文字にするのは塩月さんがされているのを見て真似させてもらっています。 以下、例の如く参加者のブログエントリです。id:egggarden - http://d.hatena.ne.jp/egggarden/20081123

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

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

    TAKESAKO
    TAKESAKO 2008/05/25
    この連載は期待できる
  • 革命の日々! MALLOC_TRIM_THRESHOLD_ と MALLOC_MMAP_MAX_ パラメタについて

    どうもあまり有名ではないらしいので、ここで書いてみる。 http://mkosaki.blog46.fc2.com/blog-entry-241.html で書いた事とほぼ同じだけれど。 Linuxにおいて、CPU負荷を測定するベンチマークでは以下の環境変数を設定すると往々にして性能があがる。 % setenv MALLOC_TRIM_THRESHOLD_ -1 % setenv MALLOC_MMAP_MAX_ 0 MALLOC_TRIM_THRESHOLD_ はOSに未使用になったメモリを返却する契機をあらわしていて、-1は決して返却しない事を表す。 MALLOC_MMAP_MAX_ は最大mmap数で0は決してmmapせず、どんなに大きなメモリでもbrkを使ってメモリを取る事を意味する。 で、性能に効くのは(たいてい)MALLOC_MMAP_MAX_のほう。 glibcはアンチフラグ

  • Linux のスリープ処理、タイマ処理の詳細を見る - naoyaのはてなダイアリー

    UNIX でプロセスを一時的にスリープさせるには sleep(3) が使えます。sleep() は引数に秒単位でしか時間を指定できないので、より短い時間を指定したい場合は usleep(3) (マイクロ秒) や nanosleep(2) (ナノ秒) を使うことになります。sleep(), usleep() はライブラリ関数、nanosleep() はシステムコール*1です。 この usleep() や nanosleep() で 1ms 程度の短い時間プロセスを停止したとして、正確にその時間だけ停止させることはできるでしょうか。http://shiroikumo.at.infoseek.co.jp/linux/time/ にあるコードを参考に、実際に動かしてみます。カーネル 2.6.19 x86_64、CentOS 5 で試します。 まず、nanosleep() で 1ms のスリープを行

    Linux のスリープ処理、タイマ処理の詳細を見る - naoyaのはてなダイアリー
    TAKESAKO
    TAKESAKO 2008/01/22
    ストップウォッチ
  • @IT:Linux Kernel Watch 8月版 割り込み頻度変更で消費電力は低下するか?(1/2)

    8月版 割り込み頻度変更で消費電力は低下するか? 上川純一 日ヒューレット・パッカード株式会社 コンサルティング・インテグレーション統括部 2005/8/23 linux-kernelメーリングリスト(以下LKML)かいわいで起きるイベントを毎月お伝えするLinux Kernel Watch。7月はOttawa Linux Symposiumがあった影響か、いつもより心なしかパッチの流れが盛況だったLKML。何か新しい展開が生まれたのでしょうか。 では、7月のLinuxカーネル関連の状況について、見てみましょう。 ついに来た、devfs削除の波紋 /devの管理をdevfsのみに依存していたユーザーは、新バージョンのカーネルをインストールして再起動したら、/devが空になっているのに衝撃を受けたはずです。 そう、devfsを削除したカーネル(2.6.13-rc3)が、Linusから初め

    TAKESAKO
    TAKESAKO 2008/01/17
    デフォルトの値って議論になることが多いよね
  • フィボナッチ数列を計算するデバイスドライバ - naoyaのはてなダイアリー

    Amazon から プログラミング言語Erlang入門 が届きました。 どんな構成だろうね、と会社で同僚数人とわいわいやっていたら、「フィボナッチ数列を計算するサーバー」という例があって、みんなのツボに入りました。Erlang の並列計算処理能力とネットワークプログラミングのしやすさを示すという上で良い例だと思うのですが、「フィボナッチ数列を計算する」というのと「ネットワークサーバーを書く」、という二つのテーマの不思議なギャップが面白いのでしょう。 そういえば関数型言語が得意な id:maoe は、はてなの採用面接の際に、はてなのボーナス計算を計算するシステムを作ってきたのですが、なぜかクライアント/サーバシステム、ネットワークサーバーを Haskell で、クライアントを Scheme で書き、プロトコルが S 式という実装をみんなの前で披露して、周囲の笑いを誘っていました。 ちょっとし

    フィボナッチ数列を計算するデバイスドライバ - naoyaのはてなダイアリー
  • Linux Kernel Module programming (Kernel 2.4, デバイスドライバ)

    ○ はじめに 文書では、筆者が Linux® でデバイスドライバを作成しようとした際に、カーネルに動的に追加機能を組み込むことが出来るカーネルモジュールの書き方について勉強したことを説明していきたいと思います。 筆者は、コンピュータでハードウェアを制御するプログラムを作りたいと思いながら社会人になったのですが、会社でそういう仕事がどんどん減ってしまって全然機会がありませんでした。しかし、雑誌等でデバイスドライバを作成して自作のハードウェアを制御する記事を読む度に、自分もやりたいという気持ちが大きくなっていきました。 そしてある日、「電子工作を勉強して自分のハードウェアを作り、それを動かすためのソフトウェアを書こう!」と決意しました。Linux でデバイスドライバを作成するには、カーネルに最初から組み込んでしまう方法と、動的に追加機能を組み込むことが出来るカーネルモジュールという形式で作成

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

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

    マルチスレッドのコンテキスト切り替えに伴うコスト - naoyaのはてなダイアリー
  • C言語: UNIX最速ファイルコピー

    Created: Kazuki Ohta, 2006/06/14 Last Update: Kazuki Ohta, 2006/06/14 「write(2)の正しい使い方」と同じく、OS演習でやった事の延長線の記事を書いてみる。お題は「UNIX上で大規模ファイルを最速でコピーする方法」だ。一般的に、UNIXでファイルをcopyする際には以下のような方法が有る。 read -> write read -> write with posix_fadvice mmap -> mmap -> memcpy -> fsync mmap -> mmap -> memcpy -> fsync with madvise mmap -> write mmap -> write with madvise read, write, mmap辺りは良いとして、posix_fadviseというシステムコールが有

  • 1