タグ

kernelに関するMukeのブックマーク (7)

  • Linuxのsystem call fuzzer「syzkaller」めも - φ(・・*)ゞ ウーン カーネルとか弄ったりのメモ

    Linuxのシステムコールのファジングツールとしてsyzkallerというのがあって、これはコードカバレッジを見つつ入力を変えていってくれるというファジングするツールです。 試してみたのでどんな感じなのかを簡単にめも。 まず、ツール自体はgolangで書かれているのでgoの実行環境が必要です。あとテスト対象のカーネル側でコードカバレッジを利用可能になっている必要があります。この辺はsyzkallerのドキュメントに書かれています。 ツールはビルドして行います。make一発で良いのですが、デフォルトだとstatic linkなバイナリを作ります。うちだと-lpthreadと-lcのところでそんなライブラリはないとか怒られてしまったので、動的リンクにしました。ホストとゲストのディストリビューションが同じならライブラリのABIの違いとかないですし、これで良いでしょう。 ファジングはVMを使って行

    Linuxのsystem call fuzzer「syzkaller」めも - φ(・・*)ゞ ウーン カーネルとか弄ったりのメモ
  • Linuxカーネルのコードを読んで勉強になったこと - φ(・・*)ゞ ウーン カーネルとか弄ったりのメモ

    Linuxカーネルのコードを読んでて、なるほど〜と思うことはよくあるけど、その中でも特に今までの考え方をぶち壊してくれたのはなんだっけと思ったところ、やっぱりリスト構造かなと言うところ。 c言語でリスト構造を作る場合、一般的な教科書方式だと↓のようにデータとnextポインタは密結合になってると思います。これの場合、struct foobarのポインタをnext要素に使っているので、他の構造体(例えば、struct hogehoge)で同じことをしようとすると、その構造体ではstruct hogehoge *nextというメンバ変数を持つ必要があります。 ヘッド要素はstruct foobarです。 struct foobar { int n; char s[64]; struct foobar *next; }; struct foobar head; Linuxカーネルの場合、データとリ

    Linuxカーネルのコードを読んで勉強になったこと - φ(・・*)ゞ ウーン カーネルとか弄ったりのメモ
  • 無名関数を生成する - Ruby Tips!

    Rubyにおける無名関数の正体はProcオブジェクトである。Procオブジェクトの生成には、kernel#.lambda、Kernel#.procまたはProc.newを使う。ProcオブジェクトはProc#callで呼び出して使うことができる。以下は2つの引数を取り、それらを加算する無名関数を生成して、計算を行う例である。 func = lambda{|a, b| a + b } p func #=> #<Proc:0x0000000180d8a0@/tmp/vCWIAge/49:1 (lambda)> p func.call(1, 2) #=> 3 func = proc{|a, b| a + b } p func #=> #<Proc:0x00000001a72898@/tmp/vCWIAge/51:1> p func.call(1, 2) #=> 3 func = Proc.new

    無名関数を生成する - Ruby Tips!
  • Linux Kernel Hack入門編 - φ(・・*)ゞ ウーン カーネルとか弄ったりのメモ

    この記事はLinux Advent Calendar 2014の25日目ですヽ(=´▽`=)ノ 今回はLinux Kernel Hack入門編ということで入門的なことを書いてみたいと思います。 まず使用する環境ですけど最近出たばっかのFedora 21のWorkstationにしました。まあ、今回の内容的にはディストリビューションは問わないんですが、多くの人が馴染んでいるであろうfedora系というかパッケージマネージャがyumということでこれにしてみました。 自分は普段Arch Linuxなんですけど、こっちだとkernelのmake install時にちょっとしたスクリプトを書く必要があったりするのもあって、fedoraのほうが手軽かなというのもあります。 カーネルコード・リーディング ブラウザベースでコード・リーディング 読めるソースは大概メインラインのカーネルということになりますが

    Linux Kernel Hack入門編 - φ(・・*)ゞ ウーン カーネルとか弄ったりのメモ
  • Using LXC on Production

    1. Using LXC on Production 第4回 コンテナ型仮想化の情報交換会@東京 2014.9.6 Isao SHIMIZU @isaoshimizu 3. 自己紹介 清水 勲 (Isao SHIMIZU) ! 株式会社ミクシィ モンストスタジオ所属 ! 現在4年目(2011年入社) mixiのインフラ運用 モンスターストライクのインフラ・サーバ運用(現在) エンジニアブログ執筆(Fedora、systemd、OpenStack、LXCなど) ! 前職: 2003~2011年 SIerで企画、開発、インフラ運用 組み込み、Web、スマフォアプリ、動画配信など ! 最近気になっていること ・Golang、CoreOS、AWS 3

    Using LXC on Production
  • 30人のLinuxカーネル開発者:Greg Kroah-Hartman

    30週に渡り多彩な Linux カーネル開発者を紹介していくシリーズの第5弾は、Linux ステーブル (安定版) カーネルのメンテナーで、Linux Foundation フェローでもある Greg Kroah-Hartman です。 これまでに紹介した開発者のプロフィールは、こちらに掲載されています。 お名前をお願いします。 Greg Kroah-Hartman です。もっぱら Greg K-H として知られています。発音できないからでしょうね。 Linuxコミュニティでのあなたの役割や、担当のサブシステムについて教えてください。 私は Linux カーネルの ステーブル カーネル リリースを管理しています。また、USB、ドライバー コア、ステージング ドライバー、シリアル、tty、char、その他マイナーなドライバーのサブシステム メンテナーでもあります。 報酬はどこから得ていますか

  • 第5回 Linux Kernelメモリ管理最新動向[その1] | gihyo.jp

    2012年6月6日~8日にLinuxCon Japan 2012が開催されます。ここではLinux Kernelの最新技術の発表や議論がいろいろ行われるのですが、カンファレンスを楽しむ手助けとなる記事を…ということで、最近のLinux Kernelのメモリ管理の以下のトピックについて、2回に分けて紹介したいと思います。 今回は、 NUMA対応 組込みシステム向けの新機能 次回は ファイルシステム、デバイスと連携したエンハンス メモリ資源管理機能(cgroup) CleanCache を取り上げます。 それぞれ、LKMLでどのような提案があって、提案の理由は何か? 現在はどうなっているのか? ということを簡単に紹介したいと思います。 NUMA対応 性能エンハンス機能として現在議論されているのが、NUMAマシン上のアプリケーションのチューニング機能です。現在、全く別の方式が有名ハッカー2人から

    第5回 Linux Kernelメモリ管理最新動向[その1] | gihyo.jp
  • 1