LinuxのLoadable Kernel Moduleの作り方のHowTo。対象のカーネルバージョンは2.6。 1. SourceとMakefile カーネルにLoad/Unloadできるだけの小モジュールを作ってみる。何処か適当なディレクトリに以下のようにソースとMakefileを作る。ソースとMakefileの中身は以下を参照。.tar.gzにまとめたファイルはこちらから。 xxxxxx/ Makefile - Makefile small.c - モジュールのソース 1.1 Source モジュールのソースコードのサンプルを以下に示す。 最低限必要なのは、モジュールがLoadされた時に呼び出される初期化ルーチン(smallmod_init_module())とモジュールがUnloadされる時に呼び出される後処理用ルーチン(smallmod_init_module())。これらのルー
Linux Kernel(2.6)の実装に関するメモ書き 書き殴っているので書き方/内容にムラあり。 3.6系に関する記述は【3.6】と記載。 カーネル プロセス プロセスのBlockとWakeup プロセスの優先度 コンテキストスイッチ プリエンプション スケジューラ RunQueue WaitQueue WorkQueue 例外処理 割り込み処理 ページフォルト ページフォルト - 個々のハンドラ ソフト割り込み システムコール 排他制御関連 モジュール 64bit環境での32bitプロセスの動作 メモリ管理 アドレス空間 アドレス空間の管理 カーネル空間のメモリマップ 64bitでのアドレス空間 HighMemory kmalloc,vmalloc 物理ページ管理 スラブアロケータ Rmap proc/meminfo 空きページの確保 kswapd Swap Swap - Swap領
上川純一 日本ヒューレット・パッカード株式会社 コンサルティング・インテグレーション統括本部 2008/2/29 linux-kernelメーリングリスト(以下LKML)かいわいで起きるイベントを毎月お伝えする、Linux Kernel Watch。2008年1月のLKMLでどんなことが起きたのか見てみましょう。 リリースサイクルを気にしてる? 1月24日にLinux Kernel 2.6.24がリリースされました。Linusはこのリリースについては「特筆することはないだろう」というコメントを残しています。 ただ、リリースの直後にLinux Conference Australia(LCA)があり、リリースサイクルについては補足をしていました。通常の-rcのリリースサイクルは2週間なのですが、それを少し(数日程度)延ばすというのです。ただし、LCAの開催中だから、あまり影響させないようには
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 のスリープを行
情報学類 オペレーティングシステムII 2007年01月23日 筑波大学システム情報工学研究科 コンピュータサイエンス専攻, 電子・情報工学系 新城 靖 <yas@is.tsukuba.ac.jp> このページは、次の URL にあります。 http://www.coins.tsukuba.ac.jp/~yas/coins/os2-2006/2007-01-23 あるいは、次のページから手繰っていくこともできます。 http://www.coins.tsukuba.ac.jp/~yas/ http://www.cs.tsukuba.ac.jp/~yas/ ■復習 システムプログラム gettimeofday(), time(), struct timeval, time_t t asctime(), ctime(), gmtime(), localtime(), mktime(), str
MIRACLE LINUX V4.0にはシステムクラッシュ時にカーネルのメモリダンプをディスクに作成するdiskdumpという機能を実装しています。 これによりシステムクラッシュ時の解析が可能となります。 diskdumpの出力先が下記のドライバを使用するデバイスであることが必要です。 megaraid aic7xxx aic79xx ide-disk sym53c8xx mptfusion ipr sata_promise sata_sx4 ata_piix usb-storage cciss (注1) また、上記のデバイスに搭載メモリより大きいサイズの専用パーティションが必要になります。 マシンに搭載メモリより大きいサイズの専用パーティションが作成できない場合は、usb-storageを使用するUSB-HDDなどでも代用できます。 (注1) diskdumpにccissを使用する場合は
ネットで検索してよく出てくるエミナルクリニックの富山院がめっちゃ気になるなぁ。 医療脱毛なのにすごい安くていい評判も聞くけど、ほんとに痛くないのかな? 通っている人の口コミをみてみたいなぁー。 なんて気になったので、エミナルクリニックの富山院についてSNSやネットで調べてみました。 そう思ってSNSを中心に調べてみたら、、、口コミや評判も良いじゃない♪ ちなみに、似たようなサービスや商品があるかも?なので、今回調べてみたのはこちらになります。 オープンしました! エミナルクリニックの富山院ですが、すでにオープンしています!(2020年10月2日オープン済) もちろんですが、オープンしたてなんでめっちゃ予約が取りやすいです。 人気のある医療脱毛院なので早めの予約が良いかも?!
まず,結論から言おう。 「エンジニアがOSのソース・コードを読めるようになると,活躍の場が一気に広がる」。そして,「コツさえ分かれば,OSのソース・コードはびっくりするほど簡単に読める」。 ここでいうOSとは,Linuxのカーネル(OSの“核”となるソフト)のことである。筆者が上の2点を強く感じたのは,つい最近の,ある人物とのやり取りがきっかけだった。 「カーネルのソースが読めると,たいそう儲かるってことが,分かってしもうたから」。「もうすぐ大学の仕事は定年や,でも定年後の収入の方が多いんとちゃうかな」---。 筆者の耳に,迫力ある関西弁が突き刺さった。声の主は1949年生まれの57歳。神戸情報大学院大学助教授の赤松徹氏その人である。 打ち合わせを兼ねた取材の後の会話だったので,メモは取っていない。赤松氏がはっきりとこの通りに発言したかどうかは覚えていないが,筆者の脳裏には,そのような発言
tamo曰く、"ITpro は「誰も読まないOSのソース・コード」という記事で、 Linux のソース全体を把握している人がほとんどいない現状を伝えている。 それは「(少しでもソースをのぞけば,誰にでもすぐに見つけられるほど簡単なバグなのに) 誰もがよく使うソフトでさえバグが大量にある」ことからも明らかだという。 この記事で例として挙げられているような問題はコード検査ツールで見付けることができそうだが (参考: Linux カーネル 2.6.16 リリース)、 だからといって、コア開発者と悪意を持っている人たちばかりがコードを読んでいる状態は不健全だろう。 記事によれば「現時点では,詳細にソースを読んでいる人はほとんどいないので,今から読み始めても決して遅くはない」 そうだ。新年度は自分の関心のある部分からソースコードを読むことを始めてみてはいかがだろうか。 ……膨大だけど。"
TheC10kProblem - 「C10K問題」(クライアント1万台問題)とは、ハードウェアの性能上は問題がなくても、あまりにもクライアントの数が多くなるとサーバがパンクする問題のこと 目次 この文書について C10K 問題 関連サイト まず読むべき本 I/O フレームワーク I/O 戦略 1. 各スレッドが複数のクライアントを受け付ける. そしてノンブロッキング I/O と レベル・トリガ型の完了通知を利用する. 伝統的な select() 伝統的な poll() /dev/poll kqueue() 2. 各スレッドが複数のクライアントを受け付ける. そしてノンブロッキング I/O と 変更型の完了通知(readiness change notification)を利用する. kqueue() epoll リアルタイム・シグナル fd 単位のシグナル (Signal-per-fd)
起動オプションとは † 起動オプションを入力する起動画面 起動オプションについての解説であるknoppix-cheatcodes.txtは稼働中のKnoppixなら/cdrom/KNOPPIXディレクトリを探すと見つかる。 最新のknoppix-cheatcodes.txt KNOPPIX.netのCheat Codes解説ページ 起動オプションの移り変わり --> CheatCodes ↑
Jeremy founded Tag1 Consulting in 2007. He has been a contributing core Drupal developer since 2002, and helped establish Drupal as a successful CMS through the early popularity of his personal blog, KernelTrap.org. Over the years, he authored and maintained the core statistics module and throttle module, as well as the pager logic and the initial Drupal 5 installer. He continues to contribute to
Web Page History CONTENTS (click to jump below): Pending development: Resizable Hash Tables: v2 release candidate Linux Advanced Routing: Routing and NAT extensions for Linux (2.2, 2.4, 2.6/3.x, Nano-HOWTO from Christoph Simon) medium_id - IPv4 Bridging for Linux rp_filter_mask - Extending the Reverse Path Protection for mediums Bridging Extensions - IP Mode Send-To_Self - Send traffic to self ext
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く