This domain may be for sale!
Articles in this series Part I. Iterative ServersPart II. Forking ServersPart III. Pre-forking ServersPart IV. Threaded ServersPart V. Pre-threaded ServersPart VI: poll-based serverPart VII: epoll-based server On HackerNews There are several interesting takeaways from the HackerNews thread for this article series. Do check it out. Web apps are the staple of consumers and enterprises. Among the man
結論(ショートカット) ディスクのマウントに失敗してもブートしてほしいときには、/etc/fstabでnofailオプションを付けます。 何をしたかったか サーバ運用を行っていると、OS用とは別にデータディスクを追加することがあると思います。アプリケーションサーバやサービスが使用するデータとOSを分けておくためです。データディスクはRAIDだったり、エンクロージャだったり、AWSでEBSだったりします。 ところがRAIDは崩壊したり、エンクロージャは線が抜けていたり、EBSは別のインスタンスを立ち上げるときにつけ忘れたりします。そのため、CentOS6ではデータディスクは/etc/fstabで第5オプションと第6オプションを0 0にしていたのでした。(正確には起動時に無視するかどうかは第6オプション) /dev/system/root / ext3 defaults 1 1 /dev/sy
仮想マシンに追加した複数領域をLVMで1つのディスクにし、自動mountさせるまで。 今回大容量領域が必要だったので、最大値で確保したハードディスク領域2つをLVMで一つのディスクにする必要がありました。作業時の手順メモ。 作業手順 仮想マシンの設定でハードディスク領域を追加(sdb, sdc) 追加したデバイスをパーティションに登録 PV(Physical Volume、物理ボリューム)を作成 VG(Volume Group、ボリュームグループ)を作成 LV(Logical Volume、論理ボリューム)作成 ファイルシステム構築 マウント reboot時にマウントされるように設定 手順詳細 仮想マシンの設定でハードディスク領域を追加(sdb, sdc) 仮想マシンの設定画面などからハードディスクを追加。 rebootすると新しいデバイスが認識されている。 # fdisk -l Disk
← ファイアウォールの設定方法について こんにちは。システム担当のナマイです。 本ブログはBIGLOBEクラウドホスティング提供・サポート範囲外の内容に触れておりますので、参考情報としてご覧ください。 突然ですが、クラウドホスティングでは、追加ディスクとして、 ・標準タイプ(ディスクD1):250GB×4本=1TB ・大容量タイプ(ディスクD2):1.5TB×4本=6TB 合計すると、1サーバに最大7TBの ディスクを接続することができます。 ただ、単純にこの追加ディスクをそれぞれマウントしていくと、最大8本のマウントポイントが出来ることになりますので、アプリケーションがデータを格納する際に、個々のディレクトリを意識する必要が出てきてしまいます。 アプリケーションから見ると、データディレクトリは1つになっていた方が、余計な実装を考慮する必要が無くなる場合もあるでしょう。 ということで、 今
こんにちは。今回のテーマはパーティションの区切り方です。これは用途によっても異なるし人によって流儀があるのでこの記事はあくまで筆者の方針を書いているだけですので、そこはご了承ください。更に、ブートパーティションの話になるとMBRとGPTにも言及する必要がでてきますので、省略します。 初心者を戸惑わせるパーティショニング Linuxのインストールを何回もやっている方はパーティショニングで戸惑うことは無いと思うのですが、初めてLinuxを入れる方は正直ピンとこないのではないのでしょうか? もちろん、WindowsにもCドライブやDドライブがあってパーティショニングぐらい知ってるわという声は耳にします。しかしいざインストール時に設定画面をみると「SWAP領域?マウントポジション?ルート?」とクエスチョンマークが浮かんでいる方も多いようです。 はじめに完成のイメージを では、最初に目指すべきパーテ
@ITに以下のような記事が出て、 今回からしばらくの間は、まったく逆の例、つまり使うとプログラムの処理性能が上がるというシステムコールを紹介していく。システムコールを呼ぶ回数は少ない方が処理性能は高くなるという原則は変わらないが、呼び出しておくと処理性能が向上するシステムコールというものが存在するのだ。こうしたシステムコールを使わないでいることは、とてももったいない。 今回紹介するシステムコールは「mmap(2)」だ。ここでは詳しく仕組みを解説しないが、mmap(2)は、プログラムの処理性能に必ず良い影響を与える。 やはりあった? 高速化に効くシステムコール (1/2):知ってトクするシステムコール(3) - @IT それを真に受けたのか、「Go言語でmmapシステムコールを使ったファイル読み込みの高速化検討とC言語のコンパイラの話 - ryochack.blog」のようなブログエントリも
Linux には複数のファイルシステムがあります.これらには,仕様としての機能差の他に,品質・安定度に関して大きな差があると考えられています. 今回は,そのあたりを定量的に分析した論文をご紹介. A Study of Linux File System Evolution [キャッシュ] https://www.usenix.org/conference/fast13/study-linux-file-system-evolution 調査の対象は,XFS/Ext4/Btrfs/Ext3/Reiser/JFS の 6 つのファイルシステム.これらについて,Linux 2.6.0 (Dec ’03) から 2.6.39 (May ’11) の間に取り込まれた 5,079 個のパッチを分析しています. パッチの種類 まず,パッチを次の 5 種類に分類しています. Bug バグの修正. Reli
30 週に渡り多彩な Linux カーネル開発者を紹介していくシリーズの第 8 弾は Alan Cox です。彼が Linux に関わることになった経緯や、なぜ今でもこの仕事が重要だと感じているのかを聞きました。音楽についても色々と教えてくれました。 お名前をお願いします。 え~と、パスします。他の質問もこんなに難しいんですか? Linuxコミュニティでのあなたの役割や、担当のサブシステムについて教えてください。 カーネルにはさまざまなタイミングで大きな仕事に関わってきました。現在はターミナル レイヤーの再開発を完成させようとしています。この領域に残っているロックの問題の解消やバグの修正を行っています。基本的には、気にする人が少ない扱いにくい技術問題に携わっています。 他にも現在 Intel が出荷している各種のグラフィックデバイス (Imagination 社技術を採用) の 2D グラ
ls -lで表示されるモードの11桁目 Linuxでファイル情報の詳細を見る時には“ls -l”コマンドを使うと思います。ただ、最近のLinuxだとこれで表示されるファイルのモードが11桁になっているのに気が付いていますか? $ ls -l 合計 96 -rw-------. 1 root root 1614 2009-11-19 10:32 anaconda-ks.cfg -rw-r--r--. 1 root root 76858 2009-11-19 10:32 install.log -rw-r--r--. 1 root root 9865 2009-11-19 10:31 install.log.syslog 以前は10桁でした。つまり11桁目が増えたわけですが、その意味を調べるのは手間がかかる場合があります。何故ならlsのマン・ページが古かったり、ネット上で検索しても
( The newbie's guide to hacking the Linux kernelがとても素晴らしい記事だったので翻訳しました。 ) ( 2010-09-28 LinuxCon Japan にて、口頭ですが、Greg K-H から翻訳・公開の許可をもらいました。Thanks! ) カーネルをハックするのに、コンピュータサイエンスの博士号や下積み期間は必要ないよ。もちろんそういうことは役には立つ。でもLinux開発の重要な点は、誰にでもオープンだってことだ。とにかく取り組むことが必要。あなたは毎日何らかの形でLinuxカーネルを使ってるでしょ? どんな小さいことでもいいから、カーネル開発を少しでも手伝えば、それを誇りに思えるはずだ。 多くの貢献をしていて (そして Linux Format の読者でもある) Greg Kroah-Hartman に聞いてみた。初心者が Linu
Linux カーネル開発への参加方法 カーネル開発プロセスへの手引き Jonathan Corbet、corbet@lwn.net 本書は、開発者(およびその上司)が開発コミュニティと一緒に作業する際のフラストレーションを最小限にすることを目 的としています。ここでは、Linux カーネル(または一般のフリーソフトウェア)の開発に特に深い知識を持たない人でも 理解できる形で、このコミュニティの仕組みを文書化しようとしています。一部には技術的な内容もありますが、本書の多 くはプロセス志向の議論であり、その内容を理解する上でカーネルのプログラミングに関する深い知識は不要です。 1 1. カーネル開発プロセスへの手引き 本書は、開発者(およびその上司)が開発コミュニティと一緒に 作業する際のフラストレーションを最小限にすることを目的とし ています。ここでは、Linux カーネル(または一般のフリ
�$B%U%l!<%`?d>)$G$9$,!"�(B<A HREF="index_jp.html">�$B0l1~8+$k$3$H$O$G$-$^$9�(B</A>�$B!#�(B
2009/6/23 更新( Debian5 での準備追加) 2008/4/29 更新(ブロックデバイス追加) 2008/3/18 作成 目次 [1] はじめに [2] 準備 [3] 簡単なモジュール [4] モジュールパラメータ [5] procファイルシステム [6] キャラクタデバイス [7] ブロックデバイス [1] はじめに Linux(kernel-2.6系)のカーネルモジュール(ドライバ)を作成する。 テストした環境は次の通りである。 OS: Fedora7 カーネル: kernel-2.6.23.15-80.fc7 OS: Debian5 カーネル: kernel-2.6.26-2-686 [2] 準備 (2-1) Fedora7,Fedora8 の場合 Fedoraでカーネルモジュールを作成するにあたり、まず fedora wikiを参考にしながら カーネルモジュールをコン
みんなの大好きなe1000のドライバから、ポーリング処理を追ってみようと思う。 カーネルのバージョンは、fxr.watson.orgに現時点で上がっている2.6.36-rc2。 但し、何故かnet/core/dev.cのページが破損してるので、その部分は配布ソースコードから。 252 module_init(e1000_init_module); ここでe1000_init_module()がモジュールロード時に実行されるよう指定。 ※資料: カーネルモジュール作成メモ e1000_init_moduleでは 241 ret = pci_register_driver(&e1000_driver); ここでe1000_driverを登録、e1000_driver.probeを呼ぶ。 193 static struct pci_driver e1000_driver = { 194 .nam
1. 受信処理 1.1 従来の受信処理 ネットワークインタフェースで受信したパケットは、デバイスドライバのH/W割り込み処理処理で刈り取られる。デバイスドライバは受信したパケットをカーネルの受信キューに積み、ソフトウェア割り込みを発生させる。 受信ソフトウェア割り込みのハンドラは、受信キューに積まれているパケットを取りだし該当プロトコルの受信ハンドラを呼び出す。 デバイスドライバの受信処理が受信キューにパケットを積むだけで、受信処理のメインはソフトウェア割り込み処理で実装しているのは、H/W割り込みの処理を極力短くしてシステムのレスポンスを向上させるため。 受信処理の流れを図1に示す。 1. 従来の受信処理ではデバイスドライバがネットワーク層にパケットを渡す際、netif_rx()を使用する。 2. ソフトウェア割込みを発生させる際、poll_listには仮想的なnet_device(ba
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く