タグ

kernelに関するlax34のブックマーク (14)

  • Linuxカーネルビルド大全 - Qiita

    はじめに (記事は Linux Advent Calendar 2020 および 東京大学 品川研究室 Advent Calendar 2020の11日目の記事として書かれました。) カーネルのビルドについての情報はググると色々と出てきますが、「ここを見ればOK」と思えるサイトに巡り会えていないので、自分で書いてみることにしたのが記事です。 いずれLinuxカーネルをビルドする必要にかられるであろう研究室・学科の後輩や、忘れっぽい将来の自分のためにも、改めてLinuxカーネルのビルド方法についてまとめてみたいと思います。 概要 さて、「カーネルをビルドしよう」という状況に置かれた場合、実際にすべきことは主に以下の4点だと思います。 ソースコードの取得 ビルド環境の構築 カーネルコンフィグの準備 ビルド及びインストール そこで記事では、カーネル体のビルド上記の4点の他、関連して以下の

    Linuxカーネルビルド大全 - Qiita
  • プロセスとスレッド - Linux Kernel - FreeBSDいちゃらぶ日記

    研究室内で行われている、Linux Kernel勉強会で発表を行いました。勉強会でスピーカーを行うのは初めてでしたので、なかなか番はスムーズに進まなくて残念でしたが、その一方で非常に良い経験となるものでした。 そして今回、この資料を眠らせておくのは勿体ない、ということでこれを当ブログにて公開したいと思います。 なお、オライリー・ジャパンより発行されている「詳解Linuxカーネル 第三版」を元にしています。今回担当したのは3章の前半である3.1「プロセス、軽量プロセス、スレッド」と3.2「ファイルディスクリプタ」です。 スライド配布ページ でも、 ただ単にスライドのファイルを置いておくのもねということで、以下に今回の内容(3章)のさわりの部分について書いていきたいと思います。 まず始めに プロセスとスレッドについて、ユーザ側、つまりシステム利用者(アプリケーションプログラマなど)から見たこ

    プロセスとスレッド - Linux Kernel - FreeBSDいちゃらぶ日記
  • MeltdownとSpectreにどう対応したらよいのか? – はるかの休日

    誰が何をしなければならないのか? 対応しないといけないのは個人とクラウド事業者。 自分で実施しないといけないこと CentOSで個人ユーザーなら サーバーにログインして以下の手順を実施 現在のkernelバージョンをチェック コマンド:uname -r バージョンがOSバージョンごとに異なるのでチェック CentOS6系なら「kernel-2.6.32-696.18.7.el6.x86_64」より前のバージョンであることを確認 CentOS7系なら「kernel-3.10.0-693.11.6.el7.x86_64」より前のバージョンであることを確認 アップデートコマンドを実施:yum update kernel OSを再起動して、再度確認コマンドを実施:uname -r バージョンがそれぞれ以下であることを確認 CentOS6系なら「kernel-2.6.32-696.18.7.el6.

    MeltdownとSpectreにどう対応したらよいのか? – はるかの休日
  • Introduction · Linux Inside

    linux-insides A book-in-progress about the linux kernel and its insides. The goal is simple - to share my modest knowledge about the insides of the linux kernel and help people who are interested in linux kernel insides, and other low-level subject matter. Feel free to go through the book Start here Questions/Suggestions: Feel free about any questions or suggestions by pinging me at twitter @0xAX,

  • Linux Insides : カーネル起動プロセス part1 | POSTD

    ブートローダからカーネルまで これまでの私の ブログ投稿 を読まれた方はご存じかと思いますが、しばらく前から低水準言語を使うようになりました。Linux用x8664アセンブリ言語プログラミングについても書いています。また、同時にLinuxのソースコードにも触れるようになりました。下層がどのように機能しているのか、コンピュータでプログラムがどのように実行されるのか、どのようにメモリに配置されるのか、カーネルがどのように処理や記憶をするのか、下層でネットワークスタックがどのように動くのかなどなど、多くのことを理解しようと意欲が湧いています。これをきっかけに、 **x8664** 版Linuxカーネルについてシリーズを書いてみようと思いました。 私はプロのカーネルプログラマではないことと、仕事でもカーネルのコードを書いていないことをご了承ください。個人的な趣味です。私は下層で何が起きているのかと

    Linux Insides : カーネル起動プロセス part1 | POSTD
  • 閏秒を迎えるにあたってLinuxでは何を対策すべきか? | Act as Professional

    2016/12/27 更新Googleなどの大手IT企業がうるう秒対策済のNTPサーバが公開したため、これを利用する内容などを以下にまとめました。 元旦に実施される うるう秒の対策 まとめ2016/07/08 更新2017/1/1に閏秒の実施が決定されました。対応はこの記事のとおりで問題なさそうです。 2015/06/24 情報追加(2015/06/29 更新)下記の対応に関わるntpdの比較的新しいバージョンにSLEWモードで動作していても、うるう秒が挿入されるバグが発見されました。[redhat] これによりntp-4.2.8p3-RC1以降のバージョンでないとSLEWモードで動作していてもうるう秒が挿入されます。RedHatはntp-4.2.6p5-3.el6_6という対応済みのバージョンを提供しています。Ubuntuでは今日現在12.04LTS, 14.04LTSの2バージョンはパ

    閏秒を迎えるにあたってLinuxでは何を対策すべきか? | Act as Professional
  • 30日でできない 自作Linuxクローン開発 - るくすの日記 ~ Out_Of_Range ~

    この記事は 自作OS Advent Calendar 2014 - Adventar 12/25の記事です。 一ヶ月程前からLinuxカーネルのコードを読み始めたので、解読ついでに自分でもカーネルを作ってみました。 とはいっても、まだ半分も完成してないです() 当初は、30日でできる 自作Linuxクローン開発 を予定していたのですが、 予想以上の規模で、解読とフルスクラッチ開発を併行するのは結構大変でした... という訳で、現在実装できている所まで紹介します。 開発レポジトリはこちらです。 RKX1209/Abyon · GitHub (インストール方法や実行方法はここに書いてます) 実装した機能 プロセススケジューラー Runキュー ハードウェア割り込み(PIC 8259A) 遅延割り込み Tasklet グローバルタイマー(PIT) タイマーリスト 仮想ページング(IA-32 MMU

    30日でできない 自作Linuxクローン開発 - るくすの日記 ~ Out_Of_Range ~
  • CISCOISM Ⅱ : centosのkernel再構築 2.6.18→2.6.37(stable)

    January 16, 201101:44 カテゴリlinux centosのkernel再構築 2.6.18→2.6.37(stable) centosのkernelを再構築した。 1.ソースの入手 #cd /usr/src #wget http://www.kernel.org/~/linux-2.6.37.tar.bz2 2.ソースの解凍 #bzip2 -dc linux-2.6.37.tar.bz2 | tar xvf - #cd ./linux-2.6.37 3.カーネルの設定引き継ぎ #cp /boot/config-2.6.18 ./.config ・既存2.6.18のカーネル設定ファイルをコピー #make oldconfig | tee oldconfig.log ・oldconfigにて新しいカーネル設定のみ確認を実施←全てEnterキーでデフォルト設定を適用 4.カー

  • CentOSに最新カーネルを導入する(カーネル再構築) - Let's Try It!

    CentOS 5.5を新しくする CentOSは安定性を重視したOSであるため、カーネルはいつまで経ってもバージョンアップされません。(CentOSでは、独自のパッチをカーネルに当てることによって新機能に対応させています。) それで今回は、最新カーネルをCentOS 5.5に導入してみました。 構築環境 CentOS 5.5 x86_64 旧カーネルバージョン: 2.6.18-194.11.3.el5 新カーネルバージョン: 2.6.35.4 VirtualBox仮想環境で構築。i386でも同じようにできると思いますが、確認していないので注意してください。 このバージョンで行いましたが、適宜環境に応じて読み替えてください。 ホストPCの性能 CPU: Core 2 Duo P8600 2.40GHz MEM: 4GB(512MBをゲストに割り当て) Storage: Windows Ser

  • 2012 年 7 月 1 日のうるう秒挿入時に発生した Linux カーネルの不具合に関する情報

    更新履歴 2012-08-28: URL 公開 2012-08-29: futex、hrtimer、MySQL の発生条件、NTP SLEW モードに関する @odhrfm さんからの情報、キーワード更新、その他いろいろ細かい修正 2012-08-30: 参考リンク追加 2012-09-01: LKML まとめシートの thread#50 を追加 2012-09-03: SLES カーネルの更新情報、per-cpu についての記述、blockdiag によるブロック図を追加 2012-09-11: LKML まとめシートの thread#52, #53 を追加 2012-09-12: LKML まとめシートの thread#54 〜 #58 を追加 はじめに 日時間 2012 年 7 月 1 日 9:00 にうるう秒が挿入されましたが、その際 Linux カーネルに起因する不具合により、

  • GIGAZINEで使っているWebサーバ「PowerEdge T310」障害の一部始終

    GIGAZINEの中核になるWebサーバ PowerEdge T310がここ最近頻繁にKernel Panicを起こし、サーバダウンする事態が発生、複数台構成なので閲覧しているGIGAZINE読者には何も影響がないのですが、内部的にこのまま放置することもできず、DELLのメーカーサポートに問い合わせなどを行うもののなかなか原因が特定できず、謎の現象となっていたものの、ようやくその原因が特定され、やっとこさなんとか回復しました。 同様のことで悩んでいる場合には問題特定のために役立つかもしれない、意外に悪戦苦闘した一部始終の記録は以下から。 ・2011年5月16日 GIGAZINEの3台存在するWebサーバのうち1台がが停止しているのを発見。画面上では「Kernel Panic」の文字が出て、動作不能状態に陥っていたため、強制的に再起動を行うことに。 コンソールに表示された「Kernel Pa

    GIGAZINEで使っているWebサーバ「PowerEdge T310」障害の一部始終
  • [3]Linuxカーネルの“巨大なロック”が原因と判明

    大規模サイトの性能改善作業とは、どういうものなのか――。リクルートの中古車情報サイト「カーセンサーnet」を全面リニューアルした体験を基に、その実態をレポートする。第1回、第2回はミドルウエアのチューニングを行った。後半はLinuxカーネルに原因があると判明するまでの調査に進む。様々なツールを組み合わせて追跡していった。 中古車情報サイト「カーセンサーnet」の性能試験が格的に始まって10日目。試験の開始当初は、ブラウザーの表示に10秒もかかるなど目標性能に遠く及ばなかった。しかし前回までで紹介したように、ファイル共有システム「NFS」の設定変更、Webサーバー「Apache」のパラメーター修正、PHPアプリケーションの見直しによって、性能は劇的に向上した。 リクルート入社3年目の私は、今回の性能検証プロジェクトのリーダーとして、得意分野を持つチームメンバーと一緒に対策を進めていた。カッ

    [3]Linuxカーネルの“巨大なロック”が原因と判明
  • CentOSのカーネルの再構築をしてみる - adsaria mood

    追記:Ubuntu(Debian系)のカーネル再構築は「Ubuntuのカーネル再構築」を参照。 Linuxのカーネルの再構築はしたことがなかったのでやってみた。 主に参考にしたWebページは、「CentOS 5 カーネルの再構築方法」と「How To Compile A Kernel - The CentOS Way」。 2〜3回やってみると結構簡単な作業である。要約すると次のようになる。 環境の整備(開発環境パッケージなどの追加) ソースコード・パッケージのダウンロード ソースコードの展開 カーネルの構成設定ファイル(.config)の作成 make ファイルの設置 それぞのステップは大体1つか2つのコマンドで実行できるので、作業としては単純である。 環境の整備(開発環境パッケージなどの追加) 「ソフトウェアの追加と削除」などを使って開発環境を整える。必要なのは、「開発ツール」「開発ライ

    CentOSのカーネルの再構築をしてみる - adsaria mood
  • Linuxのサーバをリモートから強制的にOSリブートする - 元RX-7乗りの適当な日々

    先日、諸々の都合で遠隔にあるテスト環境のサーバ(Linux)のカーネルパラメータを弄っていたのですが、ちょっと設定(メモリまわり)がイキすぎてしまいw、コマンド実行というかforkできなくなってしまった(Cannot allocate memory...)。 んで、shutdownコマンドも実行できなくなったので、直そうと思ったのですが、色々弄った&時間がなかったこともあり、一旦OSを再起動しちゃいたいな、と(汗 が、遠隔にあるサーバなので、物理的な電源スイッチON/OFFができない(厳密には出来る環境ではあったのですが、このサーバはそこに入ってなかったw)。ので、SysRqキーを送ることにした。 やり方 少し無理矢理感はありますが、 # echo b > /proc/sysrq-triggerを実行すると、強制的にリブートがかかります。 ただし、ファイルシステムのsyncとかumount

    Linuxのサーバをリモートから強制的にOSリブートする - 元RX-7乗りの適当な日々
  • 1