- Linux consists of about 18 million lines of code - Proving the code of core functions are not so big by deleting non-core code
![Linuxカーネルソースの減量](https://cdn-ak-scissors.b.st-hatena.com/image/square/1ae14c627d3559ba9b4d0e65641ea752cf9bd334/height=288;version=1;width=512/https%3A%2F%2Ffiles.speakerdeck.com%2Fpresentations%2F02938564713d4c1d8187f1092bdcfb6c%2Fslide_0.jpg%3F9698321)
先日netdev 1.2に参加してみたところ,XDP(eXpress Data Path)の話題で持ち切りといった感じだった. というわけで,XDPについて一通り調べつつ,実際に触ってみた. XDPとは何か? 誤解を恐れずに一言で言うと,「Intel DPDKのような高速パケット処理基盤をLinuxカーネル自身が用意したもの」であると理解している.このスライドでは A programmable, high performance, specialized application, packet processor in the Linux networking data path と言っている. DPDKはユーザランドアプリケーションがNICを直接叩く(=カーネルのネットワークスタックをバイパスする)ことで高速処理を実現している.一方XDPは,カーネル内の最もNICドライバに近い場所でフッ
sysctlのカーネルパニックオプション panicの整理 panic系パラメータの関係 それぞれのパラメータの挙動 kernel.panic kernel.panic_on_unrecovered_nmi kernel.unknown_nmi_panic kernel.panic_on_io_nmi kernel.panic_on_warn kernel.softlockup_panic kernel.hung_task_panic kernel.panic_on_stackoverflow vm.panic_on_oom sysctlのカーネルパニックオプション ちょいとカーネルパニックをどう設定すればよいかという話があって、ためしにsyscltをpanicでgrepすると、意外にというかpanicに関するパラメータがバラバラ出てきてどうすればよいかイマイチわからない。 # sysct
Linux Kernelに関する深い知識を提供していることで評判の技術資料「linux-insides」が電子書籍の形式でもダウンロードできるようになりました。現在ここから、ePUB(iPad、iPhone、Mac用)、MOBI (Kindle用)、PDF形式でファイルをダウンロードすることができます。電子書籍版は、GitBookを使って生成されたもので、内容はGitHubで提供されているものと同じみたいですがタブレット等で閲覧する場合には便利そうです。 また上記ファイルだけではなく、オンラインブック形式でも読むことが出来、こちらも直接GitHubで読むよりは読みやすくなっています。 ちなみに、linux-internalsの内容は、先日「Kernel booting process」の解説が完了した後、今は「Kernel initialization」(ブート後のKernelの初期化処理
先日とある ioDrive シリーズのユーザーから、特定のファイルシステムでNANDフラッシュデバイスへの書き込みが行われないという件について相談をいただきました。整理してみると: ファイルシステム上に書き込み可能な状態でファイルをオープンする。 一定ペースで、ファイルへ Buffered I/O で書き込み。 ファイルをクローズする。 このとき、特定条件下のXFSでは、(2)の段階では全然フラッシュが発生せず、(3)の段階でまとまったフラッシュが発生するのだそうです。 ストレージ側からすればI/Oが来ていない段階のお話なのでアプリケーション(ミドルウェア)からシステムコールを通じてカーネル側が原因でI/Oが発生しておらず、まとまったギガバイト級のI/Oが発生すれば、それは高速と言われる ioDrive ですらフラッシュに数秒間かかってしまう、ということでした。よく言われるのは、Linux
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主催で行
きっかけはこのツイート。 基礎的なことなんだろうけど理解できてないこと。 読み取り権限のない実行権限だけのファイルってどういう扱いになるんだろう。— ゑぬぽい改@電探が出(ん)たん? (@NPoi) March 27, 2014 実際にやってみるとわかるけど、実行権限だけついてるファイルは実行可能です。でも、「読み込めないのに実行できる」というのは直感に反するような気もしますね。だって、実行するためにはプログラムをメモリに読み込む必要がありますから!ではなぜ実行権限だけのファイルが実行できるのか、その仕組みを解説します。 実行とはなにか、どういう仕組みなのか Linux において実行とは「forkしてexecする」です(そのへんの詳しい話は プロセスさん を読もう!)。 fork も exec もシステムコール(正確には execve がシステムコールで exec はそのフロントエンドだけ
Post navigation ← Previous Home > Web関連 > 開発 > Linux > Linuxカーネルチューニングのメモ Linuxカーネルチューニングのメモ サーバー向けにLinuxカーネルのチューニングを行った際のメモです。 設定内容 今回行った /etc/sysctl.conf の設定内容は書きの通りです。 各パラメータの説明はコメントとして残しておきます。 # 共有メモリの最大サイズ。サーバーの搭載メモリ(1GB)に合わせて変更 kernel.shmmax = 1073741824 # システム全体の共有メモリ・ページの最大数 kernel.shmall = 262144 # システム全体のプロセス数の上限 kernel.threads-max = 1060863 # システム全体のファイルディスクリプタの上限 fs.file-max = 5242880
昨年の始め頃、 208.5 日以上連続稼働すると動作が停止したり kernel panic が発生したりする可能性があるという TSC 絡みの不具合が話題になりました。 Linux カーネルの sched_clock() が 208.5 日の連続稼働でオーバーフローする現象について https://access.redhat.com/site/solutions/121233 Does Red Hat Enterprise Linux 6 or 5 have a reboot problem which is caused by sched_clock() overflow around 208.5 days? https://access.redhat.com/site/solutions/68466 しかし、上記の不具合を修正したカーネルには落とし穴があったようです。(誰も話題にしない
えーっと、久しぶりに Linux Kernel にダメダメなバグが発見されて、よりにもよってうちの製品も影響を受けたので、ここに詳細を書くことにした。 つーか。新しい Kernel を使うなら皆で使おうよ。なんだよその「1つだけ」影響を受けて残りは「影響も受けないぐらい古い」ってのは… 概要 大雑把に 208.5日連続運転した Linux Kernel が突如として reboot する。 実機でなおかつ Time Stamp Counter を内包している必要があるので、Pentium4以降のプロセッサ(が、それはようするに今ある Intel 系CPU全部)か、その互換CPUである必要がある。32bit モード、64bit モードの区別はない。 逆に VMware や Xen など、仮想マシン上で動いている kernel に影響はない。これはそもそもバグを内包したルーチンを、仮想マシンで動
UbuntuでもRedhatなどと同じようにメインラインのカーネルをいくらか変更したローカルバージョンをメンテナンスしていて、ディストリローカルのバイナリパッケージとしてリリースされているので、単純にmainlineのtar.gzを落としてきてmake && make installしても同じものがビルド出来るわけではない。 今回は、mainlineのカーネルを使ってもkdumpが動かない(vmcoreinfoファイルが作れなかった)ので、Ubuntuバージョンを作ってみた。 #mainlineカーネルでもkdump出来る方法自体はあるはず。あくまでその方法が分かるまでの回避策。 $ git clone git://kernel.ubuntu.com/ubuntu/ubuntu-oneiric.git $ cd ubuntu-oneiric $ uname -r 3.0.0-14-serv
Linus Torvalds氏は5月19日、Linuxカーネル2.6.39を公開した。ファイアウォールの設定と実装が容易になる「IP sets」のサポートやAMDの最新GPUサポート、IntelのGMA500グラフィック機能サポートなどが特徴となる。 2011年3月14日のLinuxカーネル2.6.38公開以来、約2か月ぶりのリリースとなる。Linus Torvalds氏は「これをrc8ではなく正式版としてリリースするかどうかの判断に迷った」とLinux Kernel Mailing Listにて述べているものの、多くの修正点が加えられている。 主要な改善点の1つとしては、ネットワーク管理フレームワーク「IP sets」のサポートがある。「ipset」コマンドを用いてIPアドレスやポート番号、MACアドレスのグループを定義し、グループを使ってiptablesルールを記述できるというもので、
Linux Daily Topics 2010年11月18日"ミラクルパッチ"にLinusも大喜び!Linuxカーネルを高速化させた233行のコード Linus Torvalds氏という人は、少なくともメールの中では、かなりはっきりと感情を表に出す。誰かor何かに対して怒っているときは相手を名指しで批判(というより非難)し、逆にうれしいときはあふれる喜びを隠そうとしない。今回紹介するのは後者のほう。「I'm also very happy」「it is a _huge_ improvement」「Good job.」など、喜びと称賛の表現がたくさん書かれているメールだ。 Linus氏を歓喜させたのは、カーネル開発に携わるMike Galbraith氏が書いた233行のカーネルスケジューリングパッチ。このパッチを適用すると、デスクトップ環境においてパフォーマンスが著しく向上するという。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く