タグ

linuxに関するkkobayashiのブックマーク (39)

  • いますぐWindowsを捨ててデスクトップでGNU/Linuxを使う10+の理由

    言及するのが既に周回遅れ気味だが、いますぐコマンドプロンプトを捨てて、Cygwinを使うべき10+の理由という記事がとても人気だったようだ。 Cygwinはご存知の方も多いだろうが、元々はCygnus Support(後にCygnus Solutionsに改名)という会社が開発した、Windows向けのGNU関連のツール群だ。Cygnusという名前にはGNUの3文字が含まれているが、これは「GNUのシノニム」というのが名前の由来だからだ。Cygnusが開発したWindows向けのGNUツール群=Cygwinというわけだ。CygwinはまさにGNUオペレーティングシステムの一部のWindows移植版なのである。このへんのことはCygwinのFAQにも書いてある。余談だが、Cygwinの対抗馬としてはMinGWが出てくるが、こちらは「Minimalist GNU for Windows」の略だ

    いますぐWindowsを捨ててデスクトップでGNU/Linuxを使う10+の理由
    kkobayashi
    kkobayashi 2011/12/06
    DRMつきストリーミング再生できるんだっけ/レジストリがない代わりにウンコみたいなconfが山ほどある/一般ユーザーは別にソース見たりしないでしょ/GNUが自由とかねーわ
  • 授業に使える「Linuxサーバー構築標準教科書」,LPI-JapanがPDFで無償公開

    LPI-Japanは「Linuxサーバー構築標準教科書」の無償公開を開始した。教育機関が授業で実習に利用できる教科書で,PDF形式で公開している。LPI-JapanはLinux技術者認定試験LPIC(Linux Professional Institute Certification)を運営している特定非営利活動法人。「Linux 技術者の育成と技術力向上,およびOSS環境の利用推進」(理事長の成井弦氏)を目的として無償公開した。 「Linuxサーバー構築標準教科書」は120ページ。Linuxをインストールしサーバーを構築,DNS,Webサーバー,メール・サーバーを設定し動作させる実習を行う。想定学習時間は12時間で,6時間×2日または90分間×8コマ。LinuxディストリビューションとしてはCentOSを使用している。 LPI-Japanではすでに2008年9月,基礎編にあたる「Linu

    授業に使える「Linuxサーバー構築標準教科書」,LPI-JapanがPDFで無償公開
  • IBM Developer

    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.

    IBM Developer
    kkobayashi
    kkobayashi 2009/03/23
    ext4なんてあるのか。
  • Linux スラブ・アロケーターの徹底調査

    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.

    Linux スラブ・アロケーターの徹底調査
  • Kernel/Internal/プロセス管理/スレッド - PukiWiki

    LinuxThreads glibcに実装されているスレッド Kernel2.0からサポートされるようになった__clone() システムコールを利用することによって、カーネルレベルスレッドが利用可能になった。 実際に、この __clone() を利用して作成されたPthread ライブラリである linuxthreads (glibc版)のソースコードには、以下のような記述を見つけることができる。 /* Do the cloning */ pid = __clone(pthread_start_thread, (void **) new_thread, CLONE_VM | CLONE_FS | CLONE_FILES | CLONE_SIGHAND | __pthread_sig_cancel, new_thread); このシステムコールは Linux に固有であり、べったりと Li

    kkobayashi
    kkobayashi 2008/06/17
    「LinuxのJavaではスレッドをプロセスとして実装している」な、なんだってー
  • Linuxメモリ管理の最先端を探る(1/2) - @IT

    小崎 資広 2008/5/22 この記事では、Linux Kernel Watchの番外編として、Linuxの最近のメモリ管理周りの動きと、その背景のモチベーションについてお伝えしたいと思います。 メモリ管理は変更時のインパクトが大きいため、通常、Stable Tree(安定ツリー)ではあまり変更はなされません。しかし、Linuxカーネルメーリングリスト(LKML)の議論では「もうカーネル2.7は出ない」ともいわれており、十分なテストがなされたものであれば、アグレッシブなパッチでも受け入れられるようになっています。 また、メモリの急速な大容量化により、いままで問題にならなかった部分にスケーラビリティ上の問題が発生したという報告もちらほら出てきました。それを解消するためのさまざまな改善が提案されています。 こうした背景により、2007年から2008年にかけては相当面白いパッチが出てきました。

    kkobayashi
    kkobayashi 2008/05/22
    なるほど。色々やってるのね・・・
  • 削除したファイルを復活するには

    Linuxで一度削除してしまったファイルを復活するには、いろいろと困難な問題がある。最も大きな要因は、Linuxがマルチユーザー、マルチタスクシステムである点だ。削除したファイルを復活させようと思っても、別のプロセスが削除したファイルの領域を使ってしまう可能性があるのだ。従って、ここで紹介する方法で復活を試みても、元に戻すことができない場合もある。 ここでは、「Hello!!!」という内容のhello.txt(11bytes)を削除して、復活してみる。 誤ってファイルを削除した場合は、速やかにランレベル1に移行する。以下のように、suコマンドでrootユーザーになり、telinitコマンドを実行する。 $ su - ←rootになる Password: ←rootのパスワードを入力 # telinit 1 ←ランレベル1に移行 (省略) sh-2.04 # ←ランレベル1でのプロンプト

  • ダンプされたcoreを元にエラー原因を解析する方法 - Hello, world! - s21g

    Railsアプリを書いてる場合はあまり関係ないですが、 セグメンテーションエラー(SEGV)などに遭遇した場合に、 原因を調査する方法を紹介します。 まずは、coreを吐かせるためにulimitの設定をします。

    kkobayashi
    kkobayashi 2008/03/15
    -gオプション付きという恵まれた条件でのみ有効な方法。開発者向け。-gなしのcoredumpでインストラクションとレジスターからcoredumpを見る方法をIAアーキテクチャーでどうするのか見てみたい/alignmentならSIGBUSかとおもた
  • KDEアプリがWindows、Macに移植 − @IT

    2008/01/25 KDE Windows Projectは1月22日、X Window向けのデスクトップ環境「KDE」で提供されているWebブラウザなどのアプリケーションをWindows環境で動作させることができるインストーラをWebサイトで公開した。KDEはクロスプラットフォームを指向していて、ほかにMac OS X上でKDEアプリケーションを動かすことを検討しているプロジェクトもある。 インストール方法を説明するWebサイトとインストールファイルを公開した。現在、Windowsで利用できるKDEアプリケーションは、Webブラウザの「Konqueror」、ファイルマネージャの「Dolphin」、カレンダー・スケジュールソフトの「KOrganizer」、各種ゲームなど。同プロジェクトはオフィススイートの「KOffice」の移植も進めている。

    kkobayashi
    kkobayashi 2008/01/26
    WMそのものならともかく、アプリを移植してもあまりうれしくないような
  • フィボナッチ数列を計算するデバイスドライバ - naoyaのはてなダイアリー

    Amazon から プログラミング言語Erlang入門 が届きました。 どんな構成だろうね、と会社で同僚数人とわいわいやっていたら、「フィボナッチ数列を計算するサーバー」という例があって、みんなのツボに入りました。Erlang の並列計算処理能力とネットワークプログラミングのしやすさを示すという上で良い例だと思うのですが、「フィボナッチ数列を計算する」というのと「ネットワークサーバーを書く」、という二つのテーマの不思議なギャップが面白いのでしょう。 そういえば関数型言語が得意な id:maoe は、はてなの採用面接の際に、はてなのボーナス計算を計算するシステムを作ってきたのですが、なぜかクライアント/サーバシステム、ネットワークサーバーを Haskell で、クライアントを Scheme で書き、プロトコルが S 式という実装をみんなの前で披露して、周囲の笑いを誘っていました。 ちょっとし

    フィボナッチ数列を計算するデバイスドライバ - naoyaのはてなダイアリー
    kkobayashi
    kkobayashi 2007/12/02
    www/ioctlはなんでもできる子!
  • IBM Developer

    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.

    IBM Developer
  • Linuxサーバの成長鈍化、UNIXからの“燃料投下”なくなる - @IT

    米国のx86サーバ市場におけるLinuxの成長は過去6四半期を通じて鈍化傾向にあり、対Windows Serverおよび市場全体での成長率がマイナスに転じ始めた。 IDCの「Quarterly Server Tracker」リポートによると、x86サーバ市場におけるLinuxの年間成長率は、2003年の約53%から2006年にはマイナス4%にダウンした。2003年のWindows Serverの成長率は20%半ばだった。 この期間中、Windows Serverはプラス成長を続け、2006年はx86市場全体の成長率を4ポイント以上、上回った。これは、同年にLinuxWindows Serverに市場シェアを奪われたことを意味する。 全世界でのLinux x86サーバの出荷数でも同じ傾向となっており、IDCのリポートによると2003年には約45%という高い年間成長率だったが、2006年には

    kkobayashi
    kkobayashi 2007/10/31
    UNIXサーバーが成長してるってわけでもないよね。どこが成長してるんだろ
  • マルチスレッドのコンテキスト切り替えに伴うコスト - naoyaのはてなダイアリー

    また Linux カーネルの話です。 Linux では fork によるマルチプロセスと、pthread によるマルチスレッドでの並行処理を比較した場合、後者の方がコストが低く高速と言われます。「スレッドはメモリ空間を共有するので、マルチプロセスとは異なりコンテキストスイッチ時にメモリ空間の切り替えを省略できる。切り替えに伴うオーバーヘッドが少ない。」というのが FAQ の答えかと思います。 が「オーバーヘッドが少ない」と一言にいわれても具体的にどういうことなのかがイメージできません。そこで Linux のスレッド周りの実装を見て見ようじゃないか、というのが今回のテーマです。 3分でわかる(?) マルチプロセスとマルチスレッド まずはうんちく。マルチプロセスとマルチスレッドの違いの図。以前に社内で勉強会をしたときに作った資料にちょうど良いのがあったので掲載します。Pthreadsプログラミ

    マルチスレッドのコンテキスト切り替えに伴うコスト - naoyaのはてなダイアリー
    kkobayashi
    kkobayashi 2007/10/11
    値渡しと参照渡し的なオーバーヘッド/それでもコンテキストは保存しないといけないからスイッチのコストは変わらないような/はてなでカーネル系の話は珍しいなあ。もっと聞きたい。
  • x86 Linux のメモリモデル、プロセス空間切り替え、カーネルスタック - naoyaのはてなダイアリー

    ひとつ前のエントリ id:naoya:20070924:1190653790 では Linux のコンテキストスイッチにおける、主にハードウェアコンテキストの退避/復帰の処理を追ってみました。その中で カーネルスタック (switch_to() 内で pushl %ebp とかして値が積まれるスタック)とはそのときの実行コンテキストに紐づくカーネルプロセススタックという理解でよいか。 という疑問がもやもや湧いて出てきました。ここ数日 はじめて読む486―32ビットコンピュータをやさしく語る を読んでいたのですが、その中にこの疑問への答えへの入り口が載っていまして、そこを糸口に調べてみました。で、結果としては 答え: 良い でした。 x86 は特権レベルの移行と連動してスタックポインタを切り替える仕組みを持っています。Linux の場合モードはカーネルモード(特権レベル0) とユーザーモード

    x86 Linux のメモリモデル、プロセス空間切り替え、カーネルスタック - naoyaのはてなダイアリー
    kkobayashi
    kkobayashi 2007/10/08
    「Linux カーネルは割り込みスタックを用意していない」!!!そうなんだ
  • Linux カーネルのコンテキストスイッチ処理を読み解く - naoyaのはてなダイアリー

    Linux カーネルのプロセススケジューラの核である kernel/sched.c の schedule() を読み進めていくと、タスク切り替え(実行コンテキスト切り替え)はその名も context_switch() という関数に集約されていることが分かります。2.6.20 の kernel/sched.c だと以下のコードです。 1839 static inline struct task_struct * 1840 context_switch(struct rq *rq, struct task_struct *prev, 1841 struct task_struct *next) 1842 { 1843 struct mm_struct *mm = next->mm; 1844 struct mm_struct *oldmm = prev->active_mm; 1845 184

    Linux カーネルのコンテキストスイッチ処理を読み解く - naoyaのはてなダイアリー
    kkobayashi
    kkobayashi 2007/09/25
    "x86の"コンテキストスイッチ。csはCPUがやってくれるんだと思ってた
  • IBM リダイレクト - Japan

    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.

    IBM リダイレクト - Japan
  • Debian GNU/Solarisという選択肢 - @IT

    サン・マイクロシステムズのCEO、ジョナサン・シュワルツ氏は6月13日のブログエントリで、Linuxの生みの親リーナス・トーバルス氏を自邸のディナーに招待している。「私が料理しよう、君はワインを持ってくること。これぞ当の意味でマッシュアップだ」。 この招待は、リーナスがメーリングリスト上でサンに対して強い不信感を表明したのに即座に反応して、シュワルツ氏が提案したものだ。リーナスは、サンのオープンソースへのコミットメントは信用できないという。 リーナスの熱烈なラブコール 6月12付けのLinuxカーネルメーリングリスト宛てポストでリーナスは、サンのスタンスを非難している。「サンはLinuxのリソース(特にドライバ類)を使いたいというわけだ。でも、彼らは何ひとつとして見返りを与えたりはしないだろう(中でも非常に非常に数少ない彼らの輝かしい成果であるZFSについては)」。リーナスは、よほどSo

    kkobayashi
    kkobayashi 2007/07/03
    リーナスはツンデレ
  • Linux Kernel 2.4 Internals

    Tigran Aivazian tigran@veritas.com7 August 2002 (29 av 6001) 訳: Hiroshi Miura miura@da-cha.org22 May 2003 この文書はLinux 2.4カーネルの手引きです。原文の最新版は、以下のURLからダウンロードできます。 http://www.moses.uklinux.net/patches/lki.sgml また、訳文の最新版は、 http://www.da-cha.org/ にて配布されます。 このガイドは、現在では、LDP (Linux Documentation Project)の一部となっており、 http://www.linuxdoc.org/guides.html から様々なフォーマットでダウンロードできます。 また、最新版は http://www.moses.uklinux.n

  • naoyaのはてなダイアリー - Linuxのページキャッシュ

    世間では PHP が、Perl が、と盛り上がっているようですが空気を読まずまたカーネルの話です。今回はページキャッシュについて。 /dev/shm に参照系DBを持っていくと I/O 負荷が激減した件(当たり前だけど) - drk7jp で、ディスク上にあったファイルを /dev/shm (tmpfs) に移したら I/O 待ちがなくなって負荷がさがった、ということなんですがおそらくこれは tmpfs に置く必要はないかなと思います。Linux (に限らず他の OS もそうですが) にはディスクの内容を一度読んだらそれはカーネルがキャッシュして、二度目以降はメモリから読む機構 = ページキャッシュがあります。tmpfs にデータを載せることができた、ということは物理メモリの容量に収まるだけのデータサイズかと思うので、放っておけば該当のファイルの内容すべてがメモリ上にキャッシュされて io

    naoyaのはてなダイアリー - Linuxのページキャッシュ
  • HDDのアクセスが妙に遅く感じるときは

    最近のHDDはDMAをサポートしているので、DMAに対応したマザーボードと組み合わせればCPUを介さずに直接デバイス-メモリ間のデータ転送が可能だ。しかし、DMAがオフになっているとI/Oによるアクセスになってしまうので、HDDのアクセスが遅くなってしまう。 HDDのアクセスが遅く感じられるときは、DMAがオンになっているかどうか確認しよう。DMAのオン/オフは、hdparmコマンドで確認できる。rootでログインし、調べたいデバイス名を指定してhdparmコマンドを実行する。 # hdparm /dev/hda ←/dev/hdaを調べる /dev/hda: multcount    = 16 (on) I/O support  =  0 (default 16-bit)  ←I/Oが16bitsになっている unmaskirq    =  0 (off) using_dma    =