[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

タグ

linux_kernelに関するmoozのブックマーク (21)

  • (writeboost report) LinuxCon Europeにおけるwriteboostへのコメント - テストステ論

    mooz
    mooz 2013/10/28
    writeboost, 永続メモリ
  • sk_buff - Linuxカーネルメモ

    3. その他のデータ構造 3.1 frags配列 skb_shared_info内のfrags配列がある。この配列を使用することで、パケットデータを非連続な領域に分断して保持することができる。fragsを使用した状態のsk_buffを図3.1に示す。 ただし、このようにfragsパケットデータを分断して持つ形式はネットワークカード(とそのドライバ)がScatter/gather I/O(*1)に対応していないと使えない。Scatter/gather I/Oに対応しているとデバイスにNETIF_F_SGフラグが設定されているので、送信デバイスにこのフラグが立っている場合のみ、このような形式を使う。 frags配列の要素はskb_frag_structとなっており(ポインタではなくそのもの)、これは、分断されたデータがどこにあるかを管理する。 skb_frag_structはデータが置かれてい

    mooz
    mooz 2013/05/27
    NIC が scatter/gather 入出力に対応している場合は NETIF_F_SG が設定され、非連続なメモリ領域を直接転送可能に。skb_frag_struct が非連続なページ情報。
  • Zero Copy I: User-Mode Perspective | Linux Journal

    By now almost everyone has heard of so-called zero-copy functionality under Linux, but I often run into people who don't have a full understanding of the subject. Because of this, I decided to write a few articles that dig into the matter a bit deeper, in the hope of unraveling this useful feature. In this article, we take a look at zero copy from a user-mode application point of view, so gory ker

    mooz
    mooz 2013/05/24
    ゼロコピーなネットワーク・ソケット通信
  • 七転び八起きのLinuxカーネルコミュニティ開発体験記

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

    七転び八起きのLinuxカーネルコミュニティ開発体験記
    mooz
    mooz 2013/01/21
    メモリのホットプラグ.稼動時にメモリの追加と削減.
  • http://teaching.idallen.com/cst8129/05f/notes/shell_script_execution.txt

    mooz
    mooz 2012/07/25
    Linux がどのように #! を扱っているか.#! がない場合はカーネルがエラーを投げるので,それをシェルが捕捉してよしなに補完をおこない実行を試みることが多いらしい.
  • 最近のLinuxで有効になっているI/Oバリア機能と、RDBへの影響 | Unofficial DB2 BLOG

    比較的新しいカーネルを採用したLinuxディストリビューションでは、ファイルシステムのI/Oバリア (I/O barrier)機能がデフォルトで有効になっています。例えばRedhat Enterprise Linux (RHEL) 6やSUSE Linux Enterprise Server (SLES) 11等はインストール直後の状態でext4ファイルシステムのI/Oバリアが有効になっているようです。 I/Oバリアは簡単にいうと、「バリア命令」の後で発行されたI/Oは、バリア命令の前に発行されたI/Oの後に必ず実行されるようにする仕組みです。つまりI/Oの順序(物理ディスクに反映される順番)をまもらせる仕組みといえます。 ファイルシステムにI/Oバリア機能が追加されたのは、ファイルシステムが不整合な状態になる可能性を減らすためです。 そもそも、急な電源断でもファイルシステムの不整合が起こ

    最近のLinuxで有効になっているI/Oバリア機能と、RDBへの影響 | Unofficial DB2 BLOG
  • Japanese Linux hacker - 詳解ファイルシステム

    詳解ファイルシステム Linuxのファイルシステムを詳解します トップページページ一覧メンバー編集 Japanese Linux hacker 最終更新: linuxfs 2009年10月27日(火) 22:30:49履歴 Tweet FrontPage > Japanese Linux hacker Linux hackerとして活躍している方たちのプロフィールを詳解します。~ #include構文が使用できませんで、Personal_information_policyを ~ 読んでからこのページをご利用ください。 [page include error] ~ 企業別 長らく更新しておりませんでした。m(_ _)m Kernel 2.6.12-rc2 〜 2.6.29-rc6までの集計(2009/03/03) 日人が出しているpatchをgit+Perlスクリプトで集計しました。 順

    Japanese Linux hacker - 詳解ファイルシステム
  • mmap (メモリマップトファイル) : kei@sodan

    Linux/Unixのメモリ周りで大活躍のシステムコール、mmapの解説です。 スライド(pdf), (pptx), (ppt) 上記スライド及びこのページの内容の大部分は、(僕が受けた) 田浦先生 の授業オペレーティングシステムの6回目のスライドと同じです。 あと、malloc中のmmap()まわりを調べてくれてありがとう>研究室のkennyくん ファイルとメモリ mmap()のAPI・使い方 (mallocの中身の話題) mmap()の実装

  • VOYAGE GROUP エンジニアブログ : blktraceによるI/Oトレース

    2010年06月02日11:28 カテゴリperformancetool blktraceによるI/Oトレース こんにちは. adingoで検索周りの仕事をしているHと申します. 検索エンジンやデータベースなどのディスクI/Oが多いアプリケーションでは, いかにI/Oを抑えるかがパフォーマンスの決め手になります. 今回はアプリケーションが出したI/Oリクエスト一つ一つがどのようにデバイスドライバに渡るかをトレースするblktraceというツールを簡単に紹介します. blktraceはlinux kernel 2.6におけるツールとなっており, 2.6.17-rc1以降ではカーネルにパッチを当てることなく利用可能です. (ツール自体はインストールする必要があります.) 何がトレースされる?linuxカーネルではI/Oリクエストは多数のレイヤーを通じて実際にデバイスに要求が出されます. ざっく

    mooz
    mooz 2012/03/11
    Block I/O Layer Tracing
  • The design of preemptible read-copy-update [LWN.net]

    October 8, 2007 This article was contributed by Paul McKenney This document walks through the design of preemptible RCU. Introduction Read-copy update (RCU) is a synchronization API that is sometimes used in place of reader-writer locks. RCU's read-side primitives offer extremely low overhead and deterministic execution time. The downside of this deterministic read-side execution time is that RCU

    mooz
    mooz 2012/02/04
    Linux Kernel における RCU 実装
  • Charming Python: Functional programming in Python, Part 3

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    Charming Python: Functional programming in Python, Part 3
    mooz
    mooz 2011/12/12
    Linux Kernel で使われている GCC 拡張を使ったテクニック
  • レッドハット マガジン 64ビットコンピューティング: 32ビット環境での共存

    Guilt is usually considered a negative emotion, but by steering it well, you can achieve surprising success.

    mooz
    mooz 2011/12/07
    transparent hugepage について.1 page = 2 MB. hugetlbfs.
  • 割り込み

    2011年02月08日 情報科学類 オペレーティングシステム II 筑波大学 システム情報工学研究科 コンピュータサイエンス専攻, 電子・情報工学系 新城 靖 <yas@is.tsukuba.ac.jp> このページは、次の URL にあります。 http://www.coins.tsukuba.ac.jp/~yas/coins/os2-2010/2011-02-08 あるいは、次のページから手繰っていくこともできます。 http://www.coins.tsukuba.ac.jp/~yas/ http://www.cs.tsukuba.ac.jp/~yas/ ■今日の大事な話 割り込みコントローラ(ハードウェア) IRQ 割り込みの前半部分と後半部分 ■割り込み ◆割り込みの必要性 デバイス(ディスク、ネットワーク、キーボード、マウス、)は、CPU と比 較すると遅い。 デバイスに要求を

    mooz
    mooz 2011/12/01
    interrupt
  • エンタープライズ向けに刷新されたカーネル・コア

    カーネル2.6はスケーラビリティの向上を大きな目標として、カーネルの内部仕様に大幅かつ意欲的な変更が加えられている。また、JFSやXFSといったファイルシステムの追加、USAGIやUML(User Mode Linux)の統合、新デバイスのサポートなども行われた。 第1章となる今回は、カーネル2.6の最大の目標であるスケーラビリティの強化に注目して、主に内部仕様を解説する。次回以降では、主にユーザーから見たカーネルの新機能について紹介する予定だ。 マルチプロセッサシステム対応の強化 ■RCU(Read-Copy Update) カーネル2.6では、RCU(Read-Copy Update)と呼ばれる新しい同期機構が追加された。 カーネルには、複数のプロセッサからの同時アクセスからデータ構造を保護するため、スピンロックをはじめとする同期機構が用意されている。しかし、従来の同期機構ではロック/

    エンタープライズ向けに刷新されたカーネル・コア
    mooz
    mooz 2011/11/29
    RCU, O(1) scheduler, ...
  • Ticklessカーネルとクロックソースに関するお話 - めもめも

    「詳解 Linuxカーネル 第3版」や「Linuxカーネル2.6解読室」などのLinuxカーネルでは、Linuxカーネルの時刻管理について、超絶に要約すると次のように説明されています。 一定の時間間隔(1000Hz)でタイマ割り込みが入る。 タイマ割り込みごとにjiffies変数を1増やす(つまり、jiffiesは、システム起動後にタイマ割り込みが入った回数を表す。) jiffiesの増加分に合わせて、システム時刻(変数xtime)をアップデートする。 しかしながら、RHEL6では、定期的なタイマ割り込みを行わない「Ticklessカーネル」が採用されており、jiffiesやxtimeが変更される仕組みがごっそり変わっています。 ※ Ticklessカーネルの何が嬉しいのかというと。。。。 これまでのカーネルでは、定期的にタイマ割り込み処理を行う必要があったので、実行するプロセスが無いア

    Ticklessカーネルとクロックソースに関するお話 - めもめも
  • Lseek implementation

    Hi everybody, i've been googling for ages now and gotten kinda desperate... The question, however, might be rather trivial for the experts: What is it exactly, i.e. physically, the POSIX function (for a file) "lseek" does? Does it trigger some kind of synchronization on disk? Is it just for the file system? Rationale: I'm am running some benchmarks to get an idea, how our system (ext4@Debian5) wor

    Lseek implementation
    mooz
    mooz 2011/11/07
    Linux の ext4 における lseek の実装.generic_file_llseek を呼ぶが,この中ではファイルのオフセットを単に変更するだけ.
  • 第87回カーネル読書会「Linux Network Stack

    mooz
    mooz 2011/11/06
    Linux Network Stack 〜UDPメモリ管理の改善とNetworkSubsystemの現状と課題~
  • [rk10][28M06] Unix修正主義

    Tanaka Akira (National Institute of Advanced Industrial Science and Technology (AIST))

    [rk10][28M06] Unix修正主義
    mooz
    mooz 2011/10/30
    Ruby がどのようにデザインされてきたか
  • Direct I/O で入出力 - kagamihogeの日記

    CでDirect I/O を行う場合、open 呼び出しの引数にO_DIRECTを指定する。インクルードするヘッダーはfcntl.hで、実際に定義されているのは bits/fcntl.h。今のところ一番新しいcygwin gccだと、fcntl.hだけでコンパイルできるけど、linux上だとこれだけではダメ。gccの-Dオプションに_GNU_SOURCEをいれるか、下みたいに_GNU_SOURCEのdefineを行う。 #ifndef _GNU_SOURCE #define _GNU_SOURCE 〜なんかソースコード〜 #endif/* ifndef _GNU_SOURCE */ O_DIRECTで入出力を行う場合、ヘンな制限がある。linux kernel 2.4までは入出力を行うバッファの大きさをファイルシステムのブロックサイズでアラインメントを取る必要がある。linux kerne

    Direct I/O で入出力 - kagamihogeの日記
    mooz
    mooz 2011/10/21
    Direct I/O. open のフラグに O_DIRECT を指定.
  • 社内サーバインフラ勉強会(DB)

    2. 今回の目的 1. 「データを保存する」ということが、実際にど ういうことなのかを知る。 2. 中の動作を踏まえることで、効率のよいアプ リを書けるようになる。 3. 問題が起きたときに、その原因を突き止めら れるようになる。 一般論をメインとし、MySQL等の細かい 個別ノウハウは取り上げません。 3. おしながき 1. 「データを保存する」とはどういうことか 2. MySQLがディスクに書くまで 3. 仮想メモリとページキャッシュ 4. とっても複雑なストレージの動作 5. MySQLのインデックスとメモリの関係

    社内サーバインフラ勉強会(DB)