 |
 |
 |
 |
 |
 |
次世代 Linux ファイルシステム: NiLFS(2) と exofs ファイルシステムの分野で革新を続ける Linux は、オペレーティング・システムを問わずに多種多様なファイルシステムをサポートしているだけでなく、最先端のファイルシステム技術を提供しています。そんな Linux に新たに登場してきた 2 つのファイルシステムが、NiLFS(2) というログ構造化ファイルシステムと exofs というオブジェクト・ベースのストレージ・システムです。この記事では、この 2 つの新しいファイルシステムが目指しているもの、そしてそれぞれのファイルシステムがもたらす利点を説明します。 |
|
|
|
2009/10/31 |
|
| |
Linux の 101 試験対策: ストリーム、パイプ、リダイレクト ストリーム、パイプと聞いて、Linux のエキスパートはまるで配管工のようだと思っているのなら、これを機会にストリームとパイプについて学んでください。今回の記事ではストリームをリダイレクトする方法と複数の出力に分割する方法、さらにストリームをコマンドの引数として使えるようにする方法も説明します。この記事の内容は、Linux のシステム管理者として認定するための LPI 101 試験に備えるためにも、自ら活用するために学ぶ上でも役に立ちます。 |
|
|
|
2009/10/14 |
|
| |
Linux の仮想化と PCI パススルー プロセッサーが進化し、仮想化環境のパフォーマンスが向上していますが、I/O のパフォーマンスはどうなのでしょう。この記事では、I/O パフォーマンスを向上させるための、デバイス (または PCI) パススルーと呼ばれる技術を調べてみましょう。この革新的な技術のおかげで、Intel (VT-d) または AMD (IOMMU) によるハードウェア・サポートを利用して PCI デバイスのパフォーマンスを向上させることができます。 |
|
|
|
2009/10/13 |
|
| |
Linux の 101 試験対策: ファイルとディレクトリーの管理 皆さんもご存知だと思いますが、Linux では何もかもがファイルです。そこで、ファイルとディレクトリーの検索や表示、移動、コピー、アーカイブなど、管理の基礎をしっかり身に付けることが正しい道に踏み出すための一歩となります。この記事の内容は、Linux のシステム管理者として認定するための LPI 101 試験に備えるためにも、自ら活用するために学ぶ上でも役に立ちます。 |
|
|
|
2009/10/06 |
|
| |
Linux 仮想ファイルシステム・スイッチの徹底調査 Linux が持つ柔軟性と拡張性は、まさに柔軟性と拡張性の定義そのものです。仮想ファイルシステム・スイッチ (VFS) を例に取っても、従来のディスクから USB フラッシュ・ドライブ、そしてメモリーやその他のストレージ・デバイスに至るまで、多種多様なデバイスでファイルシステムを作成することができます。さらに、ファイルシステムを別のファイルシステムのコンテキストに組み込むことさえ可能です。この記事を読んで、何が VFS をそれほど強力にしているのかを知り、その主要なインターフェースとプロセスについて学びましょう。 |
|
|
|
2009/08/31 |
|
| |
Linux の 101 試験対策: Linux コマンドライン GUI も確かに優れてはいるものの、Linux の真の実力を発揮させるのにコマンドラインに代わるものはありません。この記事では、Ian Shields が LPI 認定のための重要な機能を中心に、bash シェルの主要な機能の一部を紹介します。記事を読み終わる頃には、echo や exit などの基本的な Linux コマンドを使いこなせるだけでなく、環境変数の設定やシステム情報の収集も難なく行えるようになっているはずです。[リスト 8 に続く「注:」の最初の 2 つに記載されている ID (PID) を正しい ID に更新しました (編集者より)] |
|
|
|
2009/08/31 |
|
| |
Linux の 101 試験対策: テキスト・ストリームとフィルター テキストの操作には、カット・アンド・ペースト以外にもたくさんありますが、特に GUI を使用していないとなれば、テキスト操作の数の多さは尚更のことです。テキスト操作について、Linux Professional Institute Certification (LPIC) 101 試験に備えるため、または自ら活用するために学んでください。この記事では、Ian Shields が GNU テキスト・ユーティリティー・パッケージに含まれるフィルターを使用して Linux でテキストを操作する方法を手ほどきします。この記事を読み終わる頃には、エキスパートのごとくテキストを操作できるようになっているはずです。 |
|
|
|
2009/08/26 |
|
| |
分散型の Web 開発の様相を変える Git アプリケーション、Web サイト、オペレーティング・システムのどれを作成する場合であれ、バージョン管理システムは大部分の開発プロジェクトのコア・コンポーネントです。ほとんどのプロジェクトには複数の開発者が関係し、また多くの場合、そうした人達は物理的に遠く離れた場所で作業を行います。分散型のバージョン管理システムは決して新しいものではありませんが、Git バージョン管理システムは開発者同士のやり取りや共同作業をサポートする独特の機能を持っています。 |
|
|
|
2009/08/25 |
|
| |
Beagle Board で Linux をブートする Beagle Board はオープン・ハードウェアによるシングルボード・コンピューターであり、安価であると同時に、満足できる程度の速さで Linux を実行することができます。この記事では、Beagle Board について学ぶと同時に、Linux 開発環境を安価で手に入れる方法も学びましょう。 |
|
|
|
2009/08/18 |
|
| |
Subversion ユーザーのための Git: 第 1 回 Git 入門 DVCS (分散バージョン管理システム) には、集中型の VCS に勝るメリットがいくつもあります。そして DVCS モデルを検討しようとしている Subversion ユーザーにとっては、Git が出発点として最適です。2 回からなる連載の第 1 回である今回は、Subversion を基準に、Git のインストール方法、リモート・リポジトリーのセットアップ方法、そして Git の基本的なコマンドの使い方について説明します。 |
|
|
|
2009/08/04 |
|
| |
Linux のヒント: コマンドラインからピクセル定規を作成する Linux のコマンドラインと基本的な Bash スクリプトの手法、そして ImageMagick を使って画像上に線を引いたり、テキストを追加したりする方法を学びましょう。またそれを学ぶ中で、ピクセル定規を作成しましょう。 |
|
|
|
2009/07/23 |
|
| |
Linux KVM をベースとした ooRexx ビルド環境を構築する パフォーマンス改善のために Linux KVM (Kernel Virtual Machine) を利用するようになった ooRexx を使用して、オンデマンド・ソフトウェア・ビルド・サービスを作成してください。KVM は、ユーザーのターゲット・ソフトウェアをビルドするゲスト・オペレーティング・システムに対し、ホストとして機能します。このビルドを管理し、その結果をユーザーが後で取得できるように保存するのは、Apache Web サーバーです。この記事を読んで、ビルド・サーバーをセットアップしてゲストを作成する方法、ビルド・リクエストをカスタマイズする方法、そしてビルド結果を編成し、それにアクセスする方法を学んでください。 |
|
|
|
2009/07/14 |
|
| |
Vim エディターのスクリプトの作成: 第 2 回 ユーザー定義関数 実際のプログラミング・タスクの複雑さを管理するために、アプリケーションを保守可能なコンポーネントへと適切に分解するには、ユーザー定義関数は欠かせないツールです。連載第 2 回目となるこの記事では、Vim スクリプト言語で新しい関数を作成してデプロイする方法を、なぜその関数が必要になるかを説明する実際的な例と併せて説明します。 |
|
|
|
2009/07/07 |
|
| |
XML での文書生成と情報の再利用: 第 1 回 XML を使用した文書のパブリッシング XML は、あらゆる構造化データ・セットに含まれるデータ項目とサブコンポーネントを識別する手段となりますが、XML の根本は文書を作成してその出力を生成するところにあります。XML 文書マークアップのための明確なオープン・スタンダード、そして XML 文書の構文解析およびフォーマット変換に使用できる無料のツールの数々のおかげで、文書の作成とフォーマット設定用の完全な環境を UNIX や Linux システムに簡単にインストールして構成することができます。 |
|
|
|
2009/07/07 |
|
| |
洗練されたPerl: Perl と Amazon クラウド、第 5 回 この 5 回からなる連載では、Amazon の S3 (Simple Storage Service) と SimpleDB を利用した単純な写真共有 Web サイトを、Perl と Apache を使用して構築します。この第 5 回目では、mod_perl を利用したサイト全体のテンプレートを検証します。検証する対象は、索引用のテンプレート、アップロード用の 3 つのテンプレート (汎用、S3 フォーム用、URL 追加用)、画像とコメントの閲覧用のテンプレート、そしてある画像へのコメントを再帰的に閲覧する (つまりスレッドを順に追っていく) ためのテンプレートです。 |
|
|
|
2009/06/23 |
|
| |
洗練されたPerl: Perl と Amazon クラウド、第 4 回 この 5 回からなる連載では、Amazon の S3 (Simple Storage Service) と SimpleDB を利用した単純な写真共有 Web サイトを、Perl と Apache を使用して構築します。この第 4 回目では、mod_perl を利用したサイト全体のコード・ベースを検証し、最上位レベルの構成方法、それぞれのハンドラーで行っている内容、外部依存関係の設定方法などについて説明します。 |
|
|
|
2009/06/14 |
|
| |
洗練されたPerl: Perl と Amazon クラウド、第 3 回 この 5 回からなる連載では、Amazon の S3 (Simple Storage Service) と SimpleDB を利用した単純な写真共有 Web サイトを、Perl と Apache を使用して構築します。この第 3 回目では、この写真共有 Web サイトと SimpleDB とのやり取りを説明し、アップロードされるファイルの SimpleDB レコードを URL を使って作成する方法を学びます。また、ある写真に特定のユーザーが書き込んだコメントを SimpleDB レコードとして作成、編集、削除する方法も学びます。 |
|
|
|
2009/06/14 |
|
| |
KDE 4 Plasmoid 入門 KDE 4 では数多くの画期的な新技術を導入しています。そのうちの 1 つが、KDE 4 のデスクトップ・シェルを形作る機能 Plasma です。この記事では、デスクトップ・エクスペリエンスを大幅に改善する単純な Plasma アプレット (Plasmoid) を作成する方法、そして Plasmoid を単純なメモリー・モニターに変身させる方法を紹介します。 |
|
|
|
2009/06/14 |
|
| |
Blue Gene/L によるタンパク質モデリング Blue Gene/L スーパーコンピューターは、最先端を行く計算処理能力と複雑なデータの可視化ツールを科学者たちに提供します。科学者たちは、それぞれの専門分野の第一線で活躍するためにこの技術を必要としています。この記事では、分子生物学者がタンパク質の複雑な分子構造についてよりよく理解する手段として、コンピューターでタンパク質のフォールディングおよびミスフォールディングのシミュレーションを行う上で、どのようにこの技術を利用しているかを学びます。 |
|
|
|
2009/06/09 |
|
| |
Linux ハイパーバイザーの徹底調査 最近 Linux に対して行われた革新のなかで最も重要なものの 1 つとして挙げられるのは、Linux がハイパーバイザー (他のオペレーティング・システムのためのオペレーティング・システム) へ変身したことです。この革新により、Linux をコアに使用した多くのハイパーバイザー・ソリューションが登場しています。この記事では、ハイパーバイザーの背後にある概念と、Linux をプラットフォームとして使用する具体的なハイパーバイザーとして KVM と Lguest の 2 つを探ります。 |
|
|
|
2009/05/31 |
|
| |
Linux に GNU ARM ツールチェーンをインストールする ARM コアのさまざまなバージョンをプログラミングするためのツールは数多くありますが、特によく使われるツール・セットが GNU ARM ツールチェーンです。ARM コアを使った組み込みシステムの開発について、また GNU ツールのインストール方法と使い方について学びましょう。 |
|
|
|
2009/05/20 |
|
| |
Vim エディターのスクリプトの作成: 第 1 回 変数、値、式 Vim スクリプトは、Vim エディターを新たに作り直して拡張するためのメカニズムです。スクリプトを組むことによって、新しいツールを作成したり、共通のタスクを単純化したり、さらにはエディターの既存の機能を再設計して置き換えることさえできます。連載 1 回目のこの記事では、Vim スクリプト・プログラミング言語の基本構成要素である値、変数、式、文、関数、コマンドについて紹介します。これらの機能を単純な一連の例で実際に使用しながら説明します。 |
|
|
|
2009/05/06 |
|
| |
Linux シン・クライアントによるクラウド・コンピューティング Linux の観点からクラウド・コンピューティングについて調べ、最も革新的で一般的な Linux ベースのソリューションのいくつかについて、特に環境面でのメリットという視点で見ていきます。 |
|
|
|
2009/04/28 |
|
| |
Clonezilla を使って仮想 Linux 環境に移行する この記事では、オープンソースのクローニング・ソフトウェア Clonezilla Live を使って物理サーバーを仮想サーバーに変換する方法を学びます。具体的には、イメージ・ベースの手法を使って物理システムから仮想システムへ移行する方法を学びます。 |
|
|
|
2009/04/21 |
|
| |
アジャイル・プランニングの実際 皆さんはアジャイル・プランニングの時流に乗ろうとしているチームの一員ですか?反復型開発を行っているというのに、まだ変更を重ねざるを得ない状況ですか?この記事では、IBM 製品チームを支援および教育してきた著者がその経験を生かし、「アジャイル・プランニングによるリリース開発を始めるにはどうすればよいか」という質問の答となるロードマップを紹介します。アジャイル・プランニングの基本を概説し、何が有効で何が有効でないかについての著者の見解を説明します。編集者からの注記: 著者の要望により、図 1 と図 4 を更新した他、いくつかの修正を追加しています。 |
|
|
|
2009/04/15 |
|
| |
洗練されたPerl: Perl と Amazon クラウド、第 2 回 この 5 回からなる連載では、Amazon の S3 (Simple Storage Service) と SimpleDB を利用した単純な写真共有 Web サイトを、Perl と Apache を使用して構築します。この第 2 回目では、HTML フォームを使って Web ページから S3 へファイルをアップロードする方法を説明します。これにより、サーバーの負荷を最小限にとどめることができ、また強固なセキュリティー・ポリシーを維持することができます。 |
|
|
|
2009/04/08 |
|
| |
洗練されたPerl: Perl と Amazon クラウド、第 1 回 この 5 回からなる連載では、Amazon の S3 (Simple Storage Service) と SimpleDB を利用した単純な写真共有 Web サイトを、Perl と Apache を使用して構築します。この第 1 回目では、S3 と SimpleDB のアーキテクチャーについて調べ、写真共有サイトの設計を行うことで、S3 と SimpleDB の長所と短所を説明します。 |
|
|
|
2009/03/31 |
|
| |
魅力的な Python: RPyC による分散コンピューティング RPyC (Remote Python Call) は多くのマシンやプロセスに Python のプロセスを統合するためのシームレスなライブラリーです。この記事では、RPyC を XML-RPC や Pyro といった他の Python の分散フレームワークと比較した場合の利点と欠点について調べます。また RPyC ライブラリーとはどのようなものか感覚をつかめるように、RPyC を使用した簡単な例もいくつか紹介します。 |
|
|
|
2009/03/31 |
|
| |
Ganglia と Nagios: 第 2 回 Nagios でエンタープライズ・クラスターを監視する 2 回の記事からなるこの連載では、オープンソースのツール、Ganglia と Nagios を使ってデータ・センターを監視する実践的な方法を取り上げます。第 2 回のこの記事で説明するのは、Nagios をインストールして構成する方法です。Nagios は、よく使われているオープンソースのコンピューター・システムおよびネットワーク監視アプリケーション・ソフトウェアで、ホストとサービスを監視し、問題が発生するとユーザーにアラートを出します。この記事ではまた、第 1 回で説明した Ganglia に Nagios を統合し、標準クラスター、グリッド、そしてクラウドに対応するための 2 つの機能を Nagios に追加して、ネットワーク・スイッチとリソース・マネージャーの監視を支援する方法についても説明します。 |
|
|
|
2009/03/25 |
|
| |
進歩する Linux カーネル 人生において、死が訪れたり、税金の支払いをしたりするのが確実であるように、GNU/Linux オペレーティング・システムも確実に進歩しています。そして最近の 2 つのカーネル・リリースも、期待を裏切るものではありません。2.6.28 リリースと 2.6.29 リリースには驚くほど大量の新機能が含まれています (例えば、最先端のエンタープライズ・ストレージ・プロトコル、2 つの新しいファイルシステム、WiMAX ブロードバンド・ネットワークのサポート、ストレージ完全性のチェックなど)。なぜ今アップグレードする必要があるのかを学びましょう。 |
|
|
|
2009/03/24 |
|
| |
UNIX について語る: Squirrel という移植可能なシェル・スクリプト言語 特定のプラットフォームで特定のシェルを実行するという特異性に縛られたくなかったら、Squirrel Shell を試してください。Squirrel Shell は、UNIX、Linux、Mac OS X、そして Windows のどのシステムでも同じように有効に機能する高度なオブジェクt ト指向のスクリプト言語を提供します。つまり、一度スクリプトを作成すれば、そのスクリプトをどのシステムでも実行できるということです。 |
|
|
|
2009/03/17 |
|
| |
Linux のヒント: ブート時に rootfs を見つける 皆さんは Linux 管理者として、外部ストレージのボリュームを追加した後や、新しい Linux オペレーティング・システムをインストールした後でさえ、サーバーをリブートしようとすると「cannot mount rootfs」や「kernel panic」などの rootfs に関するエラーが起きた経験があるのではないでしょうか。この記事では、x86 プラットフォームでの Linux のブート・プロセスの概要と、この問題が起こる原因、そしてこの問題を回避あるいは修復するための 4 つのヒントを説明します。 |
|
|
|
2009/03/11 |
|
| |
PAM を理解し、構成する PAM (Pluggable Authentication Module) API は、アプリケーションのプログラミングに使用するセキュリティー関連の一連の関数 (ユーザー認証、データの暗号化、LDAP など) を公開しています。この記事では Linux での PAM モデルの基本と PAM の構成方法を紹介し、また PAM を使ったサンプル・ログイン・アプリケーションを簡単な 10 段階のステップで設計する方法を学びます。 |
|
|
|
2009/03/10 |
|
| |
Informix Dynamic Server MACH 11 のための Linux 共有ディスクを構成する IBM Informix Dynamic Server (IDS) Version 11.50 用の真の共有ディスクを構成する方法を学びましょう。この記事では IDS の SD (Shared Disk) セカンダリー・サーバーを Ubuntu Linux 上にセットアップして稼働させる方法を説明します。ここで説明する方法は他の Linux ディストリビューションにも容易に応用することができます。 |
|
|
|
2009/03/05 |
|
| |
仮想マシンのデプロイメントを自動化する いくつもの仮想マシン (VM: Virtual Machine) の構成を同時に行わなければならない場合がありますが、大量の複製作業や構成作業を手動で行うことは楽ではありません。この記事では VM のデプロイメントを自動的に行うソリューションを作成する方法を説明します。このソリューションを利用すると、自己構成を行える大量の VM を迅速に起動してアクティブにすることができます。さらに、システムの起動後、デプロイされた VM それぞれに、カスタマイズされたアプリケーションを個別に実行する方法も学びます。 |
|
|
|
2009/03/04 |
|
| |
Ganglia と Nagios: 第 1 回 Ganglia でエンタープライズ・クラスターを監視する 2 回の記事からなるこの連載では、オープンソースのツール、Ganglia と Nagios を使ってデータ・センターを監視する実践的な方法を取り上げます。第 1 回のこの記事で説明するのは、階層型設計に基づくハイパフォーマンス・クラスターを対象としたスケーラブルな分散監視システム、Ganglia をインストールして構成する方法です。また、Ganglia プラグインを作成したり、外部ソースのスプーフィングを有効にしたりすることで、監視機能をさらに追加する方法も学んでください。 |
|
|
|
2009/03/04 |
|
| |
Linux の汎用 SCSI ドライバー コンピューターでは、SCSI デバイスを制御するために SCSI コマンドを使用し、また SCSI コマンドを使用して SCSI デバイスにデータを転送します。この記事では、SCSI コマンドをいくつか紹介するとともに、Linux で SCSI API を使用して SCSI コマンドを実行する方法について説明します。最初に SCSI のクライアント/サーバー・モデルとストレージ用の SCSI コマンドに関する背景を説明します。次に Linux の汎用 SCSI ドライバーの API について説明し、汎用のドライバーを使って inquiry コマンドのみを実行するシステムの例を説明します。 |
|
|
|
2009/02/25 |
|
| |
ext4 の徹底調査 第 4 世代拡張ファイルシステム、ext4 は、その前世代のファイルシステム ext3 との後方互換性を有する次世代のジャーナリング・ファイルシステムです。現時点ではまだ標準になっていませんが、ほとんどの Linux ディストリビューションでは、ext4 が次のデフォルト・ファイルシステムとなる予定です。この記事で ext4 について学び、なぜこれがユーザーお気に入りの新たなファイルシステムになるのかを理解してください。 |
|
|
|
2009/02/17 |
|
| |
汎用の NFS を使って統一的なマウントを行う 複数の NFS バージョンのエクスポートが同時に存在する場合、統一的なマウントを効率的に行うためには汎用の NFS マウント・ユーティリティーが必要です。汎用の NFS マウント・ユーティリティーを利用することで、複数の NFS バージョンを扱う際の煩雑さを軽減し、またそれらのバージョンの管理を単純化する方法を学びましょう。この記事では、汎用 NFS マウントの概念、このシステムの利点と応用に関する概要、そして全体的な設計の詳細について説明します。 |
|
|
|
2009/02/11 |
|
| |
Linux クラウドの自動インストール クラウド・コンピューティングとストレージは、物理リソース (プロセッサー、ストレージなど) をインターネットで拡張可能かつ共有可能なリソース (「サービス」としてのコンピューティングとストレージ) に変身させます。この物理リソースのサービスへの変換は、仮想化によって一段とスケーラブルかつ効率的になります。ここで言っている仮想化は新しい概念というわけではなく、サーバーを仮想化して物理システムを共有できるようにするということです。クラウド・コンピューティングでは、ユーザーは実際のリソースがどこにあるのか、そしてリソースがどのように構成されているのかを知らなくても、大量のコンピューティング・リソースやストレージ・リソースにアクセスすることができます。ここで大きな役割を果たすのは、ご想像のとおり Linux です。この記事を読んで、クラウド・コンピューティングについて、そして雲の向こうにどうしてペンギンがいるのか (インターネットの向こうになぜ Linux が必要なのか) を理解してください。 |
|
|
|
2009/02/11 |
|
| |
Linux によるクラウド・コンピューティング クラウド・コンピューティングとストレージは、物理リソース (プロセッサー、ストレージなど) をインターネットで拡張可能かつ共有可能なリソース (「サービス」としてのコンピューティングとストレージ) に変身させます。この物理リソースのサービスへの変換は、仮想化によって一段とスケーラブルかつ効率的になります。ここで言っている仮想化は新しい概念というわけではなく、サーバーを仮想化して物理システムを共有できるようにするということです。クラウド・コンピューティングでは、ユーザーは実際のリソースがどこにあるのか、そしてリソースがどのように構成されているのかを知らなくても、大量のコンピューティング・リソースやストレージ・リソースにアクセスすることができます。ここで大きな役割を果たすのは、ご想像のとおり Linux です。この記事を読んで、クラウド・コンピューティングについて、そして雲の向こうにどうしてペンギンがいるのか (インターネットの向こうになぜ Linux が必要なのか) を理解してくだい。 |
|
|
|
2009/02/11 |
|
| |
LXC: Linux コンテナー・ツール コンテナーを利用すると、完全仮想化の命令解釈メカニズムやその他の複雑なメカニズムを用意しなくても軽量な仮想化を実現することができ、プロセスやリソースを分離することができます。LXC (Linux Containers) と呼ばれるコンテナー・ツールを紹介するこの記事では、このツールの設定方法と実行方法を、順を追って説明します。 |
|
|
|
2009/02/03 |
|
| |
セキュアな Linux コンテナーのためのマニュアル またの名を VPS (Virtual Private Server)、Jail としても知られる軽量コンテナーは、信頼できないアプリケーションやユーザーを制限するために設計されたセキュリティー・ツールであると思われがちですが、現状のように構成されていたのでは十分なセキュリティーの保証になりません。これらの軽量コンテナーを SELinux または Smack ポリシーを使って強化することによって、遙かにセキュアなコンテナーを Linux に実装することができます。この記事では、Linux Security Module で保護された一層セキュアなコンテナーを作成する方法を紹介します。SELinux ポリシーと Smack ポリシーはどちらも現在進行中の作業であり、それぞれのコミュニティーの支援による改善が見込まれています。 |
|
|
|
2009/02/03 |
|
| |
Python 3: 第 2 回: 高度な話題 Python 3 は Guido van Rossum による強力な汎用プログラミング言語の最新バージョンです。Python 3 は 2.x シリーズとの後方互換性をなくし、その代わり構文に関するいくつかの問題を解決しています。この記事は前回の記事の続きです。今回はこの 2 回シリーズの記事の第 2 回目として、Python の新しい機能に関する説明を続けるとともに、抽象基底クラス、メタクラス、修飾子における変更点などの、より高度なトピックの詳細について説明します。 |
|
|
|
2009/01/30 |
|
| |
スクリプト化可能なアプリケーションに Lua を組み込む Lua プログラミング言語は他のプログラムに組み込むために専用に設計された簡単なスクリプト言語です。Lua の C 言語用 API を利用すると、C から Lua を呼び出すためのコードも Lua から C を呼び出すためのコードも、非常にすっきりした単純なコードになります。これにより、開発者は便利なランタイム・スクリプト言語が必要な場合に、その言語に必要な基本 API 要素を容易に実装し、アプリケーションから Lua コードを呼び出すことができます。この記事では、一般的な開発作業を単純化する手段として使用できる Lua 言語を紹介し、また、そもそもなぜスクリプト言語を埋め込むのかについて説明します。 |
|
|
|
2009/01/27 |
|
| |
Guile によるスクリプティング Scheme はプログラミング言語ですが、Scheme のインタープリターおよびライブラリーである Guile は Scheme を組み込みスクリプト言語に変身させます。そんな Guile は、静的アプリケーションに動的な新しい機能をもたらすには理想的な手段です。Guile の概要を紹介するこの記事で、拡張可能なアプリケーションを構築する Guile の強力な機能を学んでください。 |
|
|
|
2009/01/20 |
|
| |
Linux プロセス管理の徹底調査 Linux でのユーザー空間プロセスの作成と管理には、UNIX と共通する原則が数多くありますが、それと同時に、Linux ならではの独特な最適化もいくつかあります。この記事では、Linux プロセスのライフサイクルに焦点を当て、ユーザー・プロセスの作成、メモリー管理、スケジューリング、そしてユーザー・プロセスの消滅といったカーネル内部での動作について詳しく説明します。 |
|
|
|
2008/12/20 |
|
| |
Python 3: 第 1 回 何が新しいのか Python 3 は Guido van Rossumによる強力な汎用プログラミング言語の最新バージョンです。Python 3 は 2.x シリーズとの後方互換性をなくし、その代わり構文に関するいくつかの問題を解決しています。この記事ではシリーズの第 1 回の記事として、Python 言語と後方互換性に影響する変更点について説明し、また新しい機能の例を紹介します。 |
|
|
|
2008/12/19 |
|
| |
Linux と Hadoop による分散コンピューティング 人々は毎日、検索エンジンを使ってインターネット上にあるテラバイトをはるかに超えるデータの中から特定のコンテンツを見つけていますが、皆さんはこの検索が実際にどのように実行されているのかを考えたことがあるでしょうか。その検索を実行する 1 つの方法として、Apache の Hadoop を使用する方法があります。Hadoop は膨大な量のデータを分散操作することができるソフトウェア・フレームワークで、その 1 つの応用として、インターネットの Web ページの索引付けを並列処理するための使い方があります。Hadoop は Apache のプロジェクトであり、Yahoo!、Google、IBM などによってサポートされています。この記事では Hadoop フレームワークを紹介し、Hadoop が Linux ベースの最も重要な分散コンピューティング・フレームワークの 1 つである理由を説明します。 |
|
|
|
2008/12/09 |
|
| |
Parallel NFS を使ってファイルシステムのスケーリングを行う NFS (Network File System) は最近のほとんどの LAN (Local Area Network) で使われているコンポーネントです。しかし NFS は、ハイパフォーマンス・コンピューティング全般に見られる、入出力操作が頻繁に要求されるようなアプリケーションには向いていません。少なくとも、最近まではそうでした。NFS 標準の最新バージョンには pNFS (Parallel NFS) が含まれています。pNFS はファイル共有を並列に実装したものであり、転送レートを何桁も向上させることができます。この入門記事では pNFS を紹介します。[注: この記事は、pNFS の起源および開発に関わったベンダーに関する記述を更新しました (編集者より)] |
|
|
|
2008/11/26 |
|
| |
IBM System p での SLES (SUSE) と RHEL (Red Hat) の比較 大半のシステム管理者は、IBM System p に Linux をインストールしようと計画すると重要な問題に突き当たります。それは、どの Linux ディストリビューションをインストールするべきかという問題です。そこで、この記事では Red Hat と Novell による 2 つのディストリビューションを比較し、それぞれの利点と欠点を検討します。さらに、LoP (Linux on POWER) について取り上げ、2 つのディストリビューションの歴史とその IBM との関わり、そして決定プロセスのなかで考慮しなければならない要素について説明します。そして最後に、論理ボリュームを作成する際に欠かせない SLES (SuSE Linux Enterprise Server) と RHEL (Red Hat Enterprise Linux) の比較検討を行います。 |
|
|
|
2008/11/18 |
|
| |
Linux カーネルのなかに入り込む GCC Linux カーネルは GCC (GNU Compiler Collection) スイートの特殊な機能を使用します。これらの機能は、ショートカットを提供したり単純化を実現したりするものから、コンパイラーに最適化のヒントを提供するものまでさまざまです。この記事では特殊な GCC 機能のいくつかを取り上げ、Linux カーネルでその機能をどのように活用するかを説明します。 |
|
|
|
2008/11/18 |
|
| |
Linux プロジェクトの公開資料: セキュリティー このページに示す資料は、IBM Linux Technology Center のメンバーが Linux のセキュリティーの話題に関して開発コミュニティーに提供したものです。 |
|
|
|
2008/11/08 |
|
| |
Linux のコマンドラインから Twitter と FriendFeed の更新を行う GNU Wget と cURL を使ってステータスの更新情報を Twitter と FriendFeed に送信する方法を学びましょう。ここでは Twitter のデスクトップ・アプリケーションを使わずに Linux のコマンドラインから直接 Twitter と FriendFeed の両方のフィードを追跡する方法を学びます。この記事は「GNU Wget と cURL を使って tweet を追加する」セクションの wget コマンドにコーディングの誤りがあったものを修正して 2008年10月31日に更新されました (編集者より)。 |
|
|
|
2008/10/31 |
|
| |
GCC 4 について学ぶ この 2、3 年の間に、GCC (GNU Compiler Collection) は GCC バージョン 3 からバージョン 4 へと大きな変化を遂げました。GCC 4 には新しい最適化フレームワーク (そして新たな中間コード表現)、新しいターゲットおよび言語サポート、そして新しいさまざまな属性とオプションが備わっています。この記事を読んで、GCC 4 の新たな機能とそれぞれの利点について学んでください。 |
|
|
|
2008/10/28 |
|
| |
怠惰な Linux: 怠け者のクラスター管理者のための 11 の秘訣 「クラスター」の意味は人それぞれに違います。この記事のコンテキストで言うと、クラスターに最適な定義はスケールアウトです。通常、スケールアウト構成のクラスターには Web ファーム、レンダー・ファーム、ハイパフォーマンス・コンピューティング (HPC) システムなど、同じタイプのコンポーネントがいくつもあります。管理者たちは、スケールアウト・クラスターで変更を行うとなると、それがどんなに小さな変更であれ何十万回と変更を繰り返さなければならないと言うでしょう。その一方、極めて怠惰な管理者たちはスケールアウトの管理技術をマスターしているため、ノードがいくつあろうと作業量は変わりません。この記事の著者たちが、そんな極めつけの怠け者である Linux 管理者の頭の中を覗き込み、彼らが作業を減らす秘訣を解き明かします。 |
|
|
|
2008/10/22 |
|
| |
プログラムの容易性: 第 1 回 Cell/B.E. プラットフォームでのプログラミング手法を探る Cell Broadband Engine で柔軟にプログラミングを行えることがマルチコアのコミュニティーでホットな話題となっています。この記事では、皆さんの既存のスキルを Cell/B.E. でのプログラムに活用する方法と Cell/B.E. システムのための 3 つのプログラミング手法、そしてこのプラットフォームで利用可能なさまざまなツールやソフトウェア、ハードウェアについて説明します。 |
|
|
|
2008/10/14 |
|
| |
TASK_KILLABLE: Linux での新しいプロセスの状態 Linux のカーネル 2.6.25 では、プロセスをスリープさせるための TASK_KILLABLE という新しいプロセスの状態が導入されています。TASK_KILLABLE は、効率的ではあっても kill できなくなる恐れのある TASK_UNINTERRUPTIBLE や、頻繁に起こされる代わりに安全な TASK_INTERRUPTIBLE に代わるものです。TASK_KILLABLE は、2002年に提起された問題、つまり OpenAFS ファイルシステム・ドライバーがすべてのシグナルをブロックした後、割り込み可能な状態でイベントを待ち続けるという問題に対応するために作られたものです。この新しいスリープ状態は TASK_UNINTERRUPTIBLE に重大なシグナルに応答できる機能を追加したものです。この記事ではこの領域に焦点を当て、2.6.26 や以前の2.6.18 の例を使いながら、TASK_KILLABLE に関連した Linux カーネルの変更と、こうした変更の結果による新しい API について説明します。 |
|
|
|
2008/09/30 |
|
| |
inotify を使ってファイルシステムのアクティビティーを監視する inotify は Linux の機能であり、読み取りや書き込み、作成など、ファイルシステムによる操作を監視します。inotify は受動型であり、驚くほど使い方が簡単であり、例えば cron ジョブで頻繁にポーリングするよりもはるかに効率的です。独自のアプリケーションの中に inotify を統合する方法と、システム管理を自動化するための一連のコマンドライン・ツールについて学びましょう。 |
|
|
|
2008/09/16 |
|
| |
Linux 動的ライブラリーの徹底調査 動的にリンクされる共有ライブラリーは、GNU/Linux の重要な側面です。なぜなら、実行可能プログラムが実行時にこれらのライブラリーを使って動的に外部機能にアクセスすることによって、メモリーの全体的なフットプリントを縮小できるからです (つまり、必要に応じて機能を取り込むという手段です)。この記事では、動的ライブラリーの作成および使用プロセスを調査し、動的ライブラリーを利用する各種ツールの詳細を説明するとともに、これらのライブラリーが内部ではどのように機能しているのかを探ります。 |
|
|
|
2008/08/20 |
|
| |
Java ランタイムの監視: 第 3 回 アプリケーションのエコシステムのパフォーマンスと可用性を監視する Java アプリケーションのランタイムの監視に関する 3 回連載の最終回では、アプリケーションがサポートしているサービスやアプリケーションの従属サービスのパフォーマンスと可用性を監視するためのストラテジーと手法に目を向けます。この場合の監視対象に含まれるのは、アプリケーション実行のベースとなるホスト・オペレーティング・システム、運用データベース、メッセージング・インフラストラクチャーです。最後に、パフォーマンス・データを管理する上での問題、そしてデータのレポートおよび視覚化について説明して記事を締めくくります。 |
|
|
|
2008/08/12 |
|
| |
管理対象オブジェクトとしての Linux オペレーティング・システム 今日の組織は 2 つの大きな課題に直面しています。それは、より一層リッチになりつつあるさまざまなサービスを配備するという課題と、それに関連する大規模なコンピューティング・プラットフォーム・ベースを管理するという課題です。この記事では、組織のコンピューティング・アーキテクチャーの重要コンポーネントを扱うための (やや) 新しい手段として、オペレーティング・システム自体を個々の管理対象オブジェクトとして扱う方法を紹介します。 |
|
|
|
2008/07/29 |
|
| |
怠惰な Linux: 管理者に必須の 10 の秘訣 この記事で紹介する 10 の秘訣を学ぶと、宇宙で最も強力な Linux 管理者になることができます・・・。いや、それほど大げさではないかもしれませんが、大規模な環境で作業する場合には、こうした秘訣が必要なのです。SSH トンネルや VNC、パスワードの回復、コンソール出力を盗み見る方法などについて学びましょう。それぞれの秘訣には例を挙げてあるため、皆さんが自分のシステムでそうした秘訣を試してみることができます。 |
|
|
|
2008/07/20 |
|
| |
Xen ハイパーバイザー上の Linux で Informix Dynamic Server を実行する IBM Informix Dynamic Server (IDS) は Xen ハイパーバイザー VM (virtual machine) の Linux 上で実行できるのでしょうか。IDS が持つ OS 専用の機能はすべて Xen VM で利用できるのでしょうか。この記事は、Xen が管理する仮想マシン上の Linux で IDS を実行するという初めての経験の詳細をまとめたものです。この記事ではまず、Xen ハイパーバイザーの利点について学び、Xen ハイパーバイザーがどのような動作をするか調べます。そして順を追った説明に従って、Xen 仮想化レイヤーを含めて実際のテスト・システムをセットアップします。最後に、著者らが自分たちの IDS 環境で実行したテストの結果について説明します。 |
|
|
|
2008/07/17 |
|
| |
Linux ローダブル・カーネル・モジュールの徹底調査 バージョン 1.2 のカーネルで導入された Linux ローダブル・カーネル・モジュールは、Linux カーネルで最も重要な革新技術の 1 つで、カーネルはローダブル・カーネル・モジュールによって拡張可能かつ動的になります。この記事を読んで、このローダブル・カーネル・モジュールの背後にある概念を知り、この独立したオブジェクトを動的に Linux カーネルに組み込む方法を学んでください。 |
|
|
|
2008/07/16 |
|
| |
Firefox 拡張機能を利用して Google カレンダーに暗号化機能を組み込む 最近の Web アプリケーションは、オンライン・ストレージ、オンライン・アクセス、オンライン・コラボレーションにさまざまなメリットをもたらしています。しかし、一部のアプリケーションは別としても、ユーザー・データを暗号化するアプリケーションはほとんどありません。この記事では、よく使われるオンライン・カレンダー・アプリケーションのユーザー・データに基本的な暗号化サポートを追加するために必要なツールとコードを紹介します。Firefox 拡張機能の非常に優れた柔軟性と Gnu Privacy Guard を利用して、Google のカレンダー・アプリケーションに暗号化された予定に関する記述のみを保存し、適切な復号化キーを持つユーザーには、この記述をプレーン・テキストで表示する方法を説明します。 |
|
|
|
2008/07/15 |
|
| |
XLC で行こう!: 第 1 回 Cell/B.E.用 XLC は2種類あるよ XLC/C++ コンパイラは Power 系プロセッサに最適化されたコードを生成してくれる IBM 製の C/C++ 言語コンパイラです。Cell/B.E. アーキテクチャ用には、現在 2 種類の XLC/C++ コンパイラが用意されています。一つは標準ソフトウエア製品として販売されている "XL C/C++ Multi-core Acceleration for Linux version 9.0"、もう一つは Cell/B.E. SDK3.0 Extra Package にアルファ版として収録されている "XL C/C++ Alpha Edition Single Source Compiler version 0.9" です。この記事では、両コンパイラの違いについて説明し、効率よく開発を進める上でのヒントを紹介します。 |
|
|
|
2008/07/04 |
|
| |
Linux でのバックアップを自動化する 重要なデータの損失は壊滅的な結果をもたらす可能性があります。にもかかわらず何百万人もの専門家が、自分たちのデータをバックアップしていません。個々の理由は異なりますが、最も一般的な理由として、日常的にバックアップを行うのは大仕事になってしまうことが挙げられます。バックアップにつきものの単調作業と先延ばしにしたがる人間の性向を回避するための鍵は、無味乾燥な繰り返し作業に優れた機械を使ってバックアップを自動化することです。 |
|
|
|
2008/07/03 |
|
| |
共通テーマ: 実例でわかる awk: 第 1 回 awk は、なんとも不思議な名前を持つすばらしい言語です。3 回の連載記事の第 1 回目で、Daniel Robbins 氏は、読者の awk プログラミング・スキルを急速に向上させてくれます。連載を進めるにつれ、より高度なトピックに触れ、最後には高度で実用的な awk アプリケーションのデモをご覧に入れます。 |
|
|
|
2008/07/03 |
|
| |
デバイス制御アプリケーションを Windows から Linux へ移植する デバイス制御アプリケーションを Microsoft Windows から Linux へ移植する際の苦労を軽減するために、この 2 つのオペレーティング・システムでのデバイス制御の動作を理解しましょう。この記事では、両方のオペレーティング・システムでのデバイス制御の違いを概説し、C/C++ のアプリケーションを移植する例を説明します。 |
|
|
|
2008/06/24 |
|
| |
コア・パートナー: 第 4 回 PlayStation 3 Wi-Fi ネットワークを管理する Terra Soft Solutions 社の IT マネージャーである Aaron Johnson が、Cell Broadband Engine をベースとした Sony PlayStation 3に組み込まれた Wi-Fi ネットワークを構成し、暗号化する方法をステップバイステップで紹介します。さらに、PS3 で無線ネットワークを有線ネットワークに切り替える方法を説明する簡単な 16 のステップも学んでください。 |
|
|
|
2008/06/17 |
|
| |
Linux ジャーナリング・ファイルシステムの徹底調査 最近まで、ジャーナリング・ファイルシステムは特異なものであり、主にファイルシステムに関する研究という側面から考えられていました。しかし今では、そのジャーナリング・ファイルシステム (ext3) が Linux のデフォルトとなっています。この記事では、ジャーナリング・ファイルシステムの背後にある概念、そしてこのファイルシステムが電源断やシステムのクラッシュにもかかわらず整合性を維持する方法を説明します。現在使用されているさまざまなジャーナリング・ファイルシステムについて学ぶとともに、次世代のジャーナリング・ファイルシステムを覗いてみてください。 |
|
|
|
2008/06/04 |
|
| |
Linux フラッシュ・ファイルシステムの徹底調査 読者のみなさんは、JFFS (Journaling Flash File System) や YAFFS (Yet Another Flash File System) という言葉は耳にしたことがあると思いますが、ファイルシステムの基礎をフラッシュ・デバイスに置くということが何を意味するのかおわかりでしょうか?この記事では、Linux 向けフラッシュ・ファイルシステムの概要を説明し、基礎となる消耗デバイス (フラッシュ・メモリー) の管理をウェア・レベリングによって行う方法、そして利用できる各種のフラッシュ・ファイルシステムをその基本的設計と併せて紹介します。 |
|
|
|
2008/05/20 |
|
| |
PyGTK を使ってウィジェットの形状を処理する GTK+ にはいくつかのコンテナー・ウィジェットが存在しますが、この GTK ツールキットの API を利用すると、ユーザー定義のコンテナーを作成することができます。また、この API は PyGTK でも利用することができます。この記事では PyGTK で「重み付けテーブル」コンテナーを作成する方法を学びます。実装の中では GTK+ の形状処理の基本的なモデルを紹介し、コンテナー・ウィジェットを実装する際に何を考慮し、何を想定する必要があるかの感覚をつかめるようにします。 |
|
|
|
2008/05/20 |
|
| |
IBM Open Collaboration Client Solution: デスクトップをマイグレートするための組織的な計画とユーザーの分類 環境を Linux クライアントの環境に移行するために必要なステップを、組織的な計画やユーザーの分類を含めて学びましょう。この記事は、これまでさまざまなユーザーに対して行われた経験を元に、ユーザーにとっての混乱を最小限にとどめながらマイグレーションを計画し、実行するための包括的な指針を提供します。 |
|
|
|
2008/05/07 |
|
| |
IBM Open Collaboration Client Solution: 技術的な計画 環境を Linux クライアントの環境に移行するために必要なステップを、技術的な計画を含めて学びましょう。この記事は、これまでさまざまなユーザーに対して行われた経験を元に、ユーザーにとっての混乱を最小限にとどめながらマイグレーションを計画し、実行するための包括的な指針を提供します。 |
|
|
|
2008/05/07 |
|
| |
ext4 へのマイグレーション 歴代の Linux ファイルシステムのなかで最新の Ext4 は、今までのファイルシステムと同じように重要かつ人気のファイルシステムになりそうです。Linux システム管理者としては、その利点と欠点、そして ext4 にマイグレーションする際の基本手順を認識しておかなければなりません。この記事では、ext4 を導入するタイミング、従来のファイルシステム・メンテナンス・ツールの使い方を ext4 に適応させる方法、さらにこのファイルシステムを最大限利用する方法を説明します。 |
|
|
|
2008/04/30 |
|
| |
リアルタイム Linux アーキテクチャーの徹底調査 Linux は遅いわけでも効率性に欠けるわけでもありませんが、速いだけでは十分でない場合もあります。速さの代わりに必要となるのは、特定の許容範囲内で所定のスケジュールを確実にこなす能力です。この記事を読んで、仮想化ソリューションによく似た初期のアーキテクチャーから標準 2.6 カーネルに現在用意されているオプションに至るまで、多様なリアルタイム Linux の手法とそれぞれがリアルタイムを実現する仕組みを理解してください。 |
|
|
|
2008/04/15 |
|
| |
PlayStation 3 での Linux 開発: 第 3 回 簡単な方法で X11 をスリムにする ソニーの PlayStation 3 (PS3) は Linux を実行することができます。しかし Linux を適切に実行させるためには少し調整が必要です。シリーズ最終回であるこの第 3 回では、Peter Seebach が、より小さなメモリー範囲に収まるように X11 をスリムにする方法について説明します。 |
|
|
|
2008/04/08 |
|
| |
tput を理解する UNIX が持つ最も強力な資産の 1 つは、ユーザーにとって便利なようにシェル・スクリプトを作成できることです。シェル・スクリプトは、単純な 1 行のものから数千行に及ぶものまであり、多くの場合にメニュー・ベースのスクリプトへと進化し、スクリプトの作成者は単純にスクロールして表示するテキスト以上のものをユーザーに表示しようとします。また場合によると、単純な 1 行か 2 行の出力しかユーザーに表示されないシェル・スクリプトを作成することで、警告メッセージを強調したいと考えることもあります。 |
|
|
|
2008/04/01 |
|
| |
TCP 選択的確認応答に伴うパフォーマンス上のトレードオフ 選択的確認応答 (SACK) は、ネットワークで利用可能な全帯域幅を効果的に使用するには欠かせない TCP のオプション機能です。SACK はスループットに対する効果はあるものの、このような確認応答を処理するには TCP 送信側の CPU に負担がかかることが証明されています。この欠点は、商品として提供されているネットワーク上であっても、悪意のある相手に不正に利用される可能性があります。この記事では、Linux TCP スタック内でのこの問題の程度を明らかにする実験の測定結果を紹介します。ほとんどのディストリビューションでは、SACK はデフォルトで有効に設定されます。 |
|
|
|
2008/03/31 |
|
| |
PlayStation 3 での Linux 開発: 第 2 回 メモリーを有効に利用する ソニーの PlayStation 3 (PS3) は Linux を実行することができます。しかし Linux を適切に実行させるためには少し調整が必要です。このシリーズの 2 回目である今回は Peter Seebach が、メモリーは一体どこに使われているのかを調べ、そうしたメモリーを有効に利用する方法について説明します。 |
|
|
|
2008/03/31 |
|
| |
PlayStation 3 での Linux 開発: 第 1 回 単なるゲーム機を超える ソニーの PlayStation 3 (PS3) は Linux を実行することができます。しかし Linux を適切に実行させるためには少し調整が必要です。この記事はシリーズの第 1 回として、Peter Seebach が PS3 Linux の特徴や利点を紹介し、また少し調整するだけでメリットが得られる問題をいくつか説明します。 |
|
|
|
2008/03/18 |
|
| |
システム管理ツールキット: ログ・ファイルの基本 典型的な UNIX マシンあるいは Linux マシンは動作中に数多くのログ・ファイルを作成します。これらのログ・ファイルには有用な情報が含まれているものもあれば、容量やリソースの計画を作成する際に役立てられるものもあります。この記事では、さまざまなログ・ファイルの中に記録されている基本的な情報や、ログ・ファイルの場所について調べ、またシステム内で起きている問題を解決するためにそうした情報を利用する方法について学びます。 |
|
|
|
2008/02/26 |
|
| |
OLPC ラップトップ向けデスクトップ開発 XO ラップトップ (OLPC (One-Laptop-Per-Child) イニシアチブの一環) は、世界中の子供たちの教育支援を目的とした低価格のラップトップ・プロジェクトです。このラップトップには、低価格で耐久性に優れた今までにないハードウェア設計、そして基礎となるオペレーティング・システムに GNU/Linux を採用するなど、数多くの革新が盛り込まれています。また、XO には Python で作成されたアプリケーション環境も組み込まれており、この環境は Sugar というヒューマン・インターフェースを使って子供を含めた誰もが使用できるようになっています。developerWorks のチュートリアル「Application development for the OLPC laptop」から抜粋したこの記事では、Sugar の API を取り上げ、 Python を使用した Sugar でのグラフィックによるアクティビティーの開発およびデバッグ方法を紹介します。 |
|
|
|
2008/02/26 |
|
| |
多重インスタンス化によるセキュリティーの強化 /tmp や /var/tmp など、誰でも書き込みできる共有ディレクトリーを不正に使用されないように保護したいのであれば、Linux PAM (Pluggable Authentication Module) を役立ててください。pam_namespace モジュールはユーザーがログインすると、ユーザー用に隔離した名前空間をシステム上に作成します。この隔離は Linux オペレーティング・システムによって行われるため、ユーザーはさまざまなタイプのセキュリティー攻撃から保護されるというわけです。Linux システム管理者を対象としたこの記事では、PAM を使って名前空間を有効にする方法を手順に沿って説明します。 |
|
|
|
2008/02/26 |
|
| |
SELinux でのロール・ベースのアクセス制御 RBAC (role-based access control: ロール・ベースのアクセス制御) は、ユーザーにロールを割り当て、そのロールにパーミッションを割り当てることで管理を単純化する一般的なセキュリティー・モデルです。SELinux (Security-Enhanced Linux) における RBAC は、ユーザーと、その下にある TE (type-enforcement: タイプ強制) モデルとの間の抽象化レイヤーとして動作します。TE モデルでは非常に粒度の細かいアクセス制御が可能ですが、このモデルは管理を容易にする目的には適していません。RBAC を行い、また Linux ユーザーを TE ポリシーに結びつけるために、SELinux のコンテキストにおける 3 つの部分 (ポリシー、カーネル、ユーザー空間) がどのように協調動作するのかを学びましょう。 |
|
|
|
2008/02/13 |
|
| |
GPFS クラスターを対象とした SNMP ベースの監視 IBM GPFS (General Parallel File System) for Linux のバージョン 3.2 では新たに SNMP (Simple Network Management Protocol) サービスが導入されており、管理者は GPFS クラスターのヘルスに関する SNMP データを収集し、ディスク障害などの問題を素早く特定することができます。GPFS ではコレクター・ノードにトラップ情報を集めさせ、別の管理ノードにいる管理者がその情報をリモートで監視、解析することができます。この記事では、GPFS クラスター内で基本的な SNMP 検証を行う方法を説明します。 |
|
|
|
2008/01/29 |
|
| |
Cell/B.E. コンテナーの仮想化: 第 2 回 実装の問題 この 3 回連載の記事では、コンテナー仮想化 (オペレーティング・システム仮想化) として知られる、ハードウェア・リソースを中心としたソフトウェア仮想化について説明し、オープンソースのプロジェクトである OpenVZ を介してコンテナー仮想化の例を示します。ソフトウェアによる手法を使った Cell/B.E. プロセッサーの仮想化に必要なコンポーネントと手法のすべてを包括的に概説する連載の第 2 回目では、第 1 回で説明した専用仮想化とパーティショニングの実装について詳しく説明します。 |
|
|
|
2008/01/08 |
|
| |
Completely Fair Scheduler によるマルチプロセッシング Linux 2.6.23 カーネルには、モジュール構成のスケジューラー・コアと、スケジューリング・モジュールとして実装される CFS (Completely Fair Scheduler) が付属しています。この記事では CFS の主な機能を紹介し、その動作を調べ、また少し先回りし、2.6.24 リリースで予定されている変更のいくつかを紹介します。 |
|
|
|
2008/01/08 |
|
| |
Cell/B.E. コンテナーの仮想化: 第 1 回 概念とアーキテクチャー、そしてツール この 3 回連載の記事では、コンテナー仮想化 (オペレーティング・システム仮想化) として知られる、ハードウェア・リソースを中心としたソフトウェア仮想化について説明し、オープンソースのプロジェクトである OpenVZ を介してコンテナー仮想化の例を示します。ソフトウェアによる手法を使った Cell/B.E. プロセッサーの仮想化に必要なコンポーネントと手法のすべてを包括的に概説する連載の第 1 回目では、Cell/B.E. プロセッサーの仮想化に関連する基本概念、そして OpenVZ および Cell/B.E. アーキテクチャーの特徴と Cell/B.E. 上で OpenVZ がどのようにして動作するかを説明するとともに、OpenVZ ツールの一部を紹介します。 |
|
|
|
2007/12/11 |
|
| |
Linux on board: Nokia N800 のカメラにアクセスする 今回の「Linux on board」の 3 回からなるシリーズでは、カメラ機能を使ってウェブカメラを作成する実際の例をとおして、アプリケーションの作成をどのように始めればよいかを説明します。今回の記事では、Nokia N800 に搭載されているウェブカメラに GStreamer を使ってアクセスし、カメラ・アプリケーションの作成を始める手順を説明します。(この作業は皆さんが想像するほど大変なものではありません。その理由は何といっても既存のアプリケーションを利用しているためです。) |
|
|
|
2007/11/27 |
|
| |
Linux on board: Nokia N800 用に開発する インターネット電話の使えるインターネット・タブレットであり、ウェブカメラを搭載している Nokia N800 の心臓部を調べ、scratchbox をベースにしたビルド環境を詳細に調べましょう。 |
|
|
|
2007/11/20 |
|
| |
Linux SCSI サブシステムの徹底調査 SCSI (Small Computer Systems Interface) は多数のデバイス (主にストレージ関連のデバイス) と通信するためのインターフェースおよびプロトコルを定義する標準の集合で、Linux では SCSI サブシステムを提供し、これらのデバイスとの通信を可能にしています。Linux はディスク、CD-ROM ドライバーなどの上位レベルのドライバーを、Fibre Channel や SAS (Serial Attached SCSI) などの物理インターフェースに結び付ける階層化アーキテクチャーの格好の例です。この記事では、Linux の SCSI サブシステムを紹介し、このサブシステムの将来について検討します。 |
|
|
|
2007/11/14 |
|
| |
Linux での同期方式の徹底調査 読者のみなさんは Linux の教育を受けるなかで並行性やクリティカル・セクション、そしてロックについて学んだことと思いますが、これらの概念をカーネル内でどのように使っていますか? この記事ではアトミック演算子、スピンロック、リーダー/ライター・ロック、カーネルのセマフォーを含め、2.6 カーネルで使用できる数々のロック機構について概要を説明します。さらに、安全かつ効率的なカーネルのコードを作成する上で、どこにそれぞれの機構を適用するのが最もふさわしいかを探ります。 |
|
|
|
2007/10/31 |
|
| |
Linux ファイルシステムの徹底調査 ファイルシステムという点では、Linux はまさにスイス・アーミー・ナイフのようなオペレーティング・システムです。Linux がサポートするファイルシステムは、ジャーナリング・ファイルシステムからクラスター・ファイルシステム、さらには暗号化ファイルシステムに至るまで多数に及びます。そんな Linux は、標準ファイルシステムと非標準型ファイルシステムのどちらを使用するのにも素晴らしいプラットフォームであるだけでなく、ファイルシステムの開発プラットフォームとしてもうってつけです。この記事では、仮想ファイルシステム・スイッチとしても知られる Linux カーネルの仮想ファイルシステム (VFS: Virtual File System) の詳細を掘り下げ、複数のファイルシステムを 1 つに束ねる主要な構造体をいくつか紹介します。 |
|
|
|
2007/10/30 |
|
| |
Linux のアセンブラー: GAS と NASM を比較する この記事では、Linux で最も一般的な 2 つのアセンブラーである GAS (GNU Assembler) と NASM (Netwide Assembler) の間での、構文や意味体系の重要な違いについて説明します。比較する項目は、基本的な構文や、変数やメモリー・アクセスの方法、マクロの処理、関数や外部ルーチン、スタックの処理、コード・ブロックを容易に繰り返すための手法などです。 |
|
|
|
2007/10/17 |
|
| |
記録の影響を最小限に食い止める、第 2 回: 迅速なパフォーマンスへの障害を取り除く 連載第 1 回では、Cell Broadband Engine プロセスへの基本的な移植方法を説明しました。この 2 回目の記事ではさらに詳細に踏み込んで、DMA 転送サイズに基づく制約をなくす方法、プログラムを複数の SPE で実行できるように分割する方法、そしてプログラムの処理速度を一層向上させる方法を説明します。 |
|
|
|
2007/10/16 |
|
| |
POSIX ファイル・ケイパビリティー root の権限を分配する Linux は長年、ケイパビリティーを使用してきましたが、POSIX ファイル・ケイパビリティーが備わったのは最近のことです。POSIX ファイル・ケイパビリティーは root ユーザーの権限を、例えばファイルを読み取る機能や、別のユーザーが所有するプロセスをトレースする機能などの特権に分割します。このようなケイパビリティーをファイルに割り当てることで、特権を持たないユーザーでも、指定されたこれらの特権によってファイルを実行できるようにすることができます。この記事で、ケイパビリティーを使ったプログラミングの手法、そしてシステムの setuid root バイナリーがファイル・ケイパビリティーを使用できるようにする方法を学んでください。 |
|
|
|
2007/10/16 |
|
| |
IBM Installation Toolkit: Linux on POWER をロードする IBM Installation Toolkit for Linux on POWER によって、仮想化された Power マシンでも仮想化されていない Power マシンでも Linux のインストールを簡単なものにすることができ、ブート可能なレスキュー DVD を作成することができます。そしてこのツールキットは Power プラットフォームのすべてを活用するために必要なソフトウェアを提供しています。このツールキットを使って、Red Hat Enterprise Linux と SUSE Linux Enterprise Server を IBM System p マシンと System i5 マシンにインストールする方法を学びましょう。 |
|
|
|
2007/09/26 |
|
| |
Python でのメタクラス・プログラミング、第 3 回 プログラミングが技巧的になりすぎると、設計が複雑になり、コードが脆弱になり、学習曲線がなだらかになり、そして何よりも困ったことに、デバッグが困難になります。著者の Michele と David は、彼らが以前に執筆した記事「Python でのメタクラス・プログラミング」が熱狂的に受け入れられたため、その後必要以上に技巧的になってしまったことに責任を感じています。この記事では、プログラマーが技巧的なプログラミングを避けるための支援をすることで、その修正を図ります。 |
|
|
|
2007/09/25 |
|
| |
QEMU によるシステムのエミュレーション QEMU は、PC システム全体を対象としたオープンソースのエミュレーターです。QEMU ではプロセッサーをエミュレートするだけでなく、必要なすべてのサブシステム (ネットワーク用ハードウェアやビデオ・ハードウェアなど) もエミュレートすることができます。さらに、対称型マルチプロセッシング・システム (最大 255 基の CPU) やその他のプロセッサー・アーキテクチャー (ARM、PowerPC など) といった高度なシステムをエミュレートすることも可能です。この記事では、QEMU とそのアーキテクチャーについて探り、Linux ホストでゲスト・オペレーティング・システムをエミュレートする方法を紹介します。 |
|
|
|
2007/09/25 |
|
| |
論理ボリュームの管理 ボリューム管理は -ix の世界 (UNIX、AIX など) では目新しいものではありません。論理ボリューム管理 (LVM) にしても、すでに Linux カーネル 2.4v1 および 2.6.9v2 から導入されています。この記事で紹介する LVM2 は、論理ボリューム管理機能を提供する比較的新しいユーザー空間のツール・セットです。ここではとりわけ役に立つ LVM2 の機能を紹介するとともに、システム管理タスクを容易にする方法をいくつか提案します。読者からのフィードバックを基に、著者によりリスト 10、14、15、および 16 が更新されています (編集者より)。 |
|
|
|
2007/09/20 |
|
| |
マウント名前空間を適用する ユーザーがシステム管理者の決めた構造に制約されることなく、独自のファイルシステムをセットアップできるようにすれば、ユーザーが自分のファイルシステムのツリーを部分的にエクスポートしたり、他のユーザーがエクスポートしたファイルシステムのツリーを自分のツリーにインポートしたりできるようになります。この記事では、マウント・プロパゲーションという手法を使って、Linux システム管理者がユーザーによるこのようなエクスポートとインポート操作を可能にする方法を順を追って説明します。 |
|
|
|
2007/09/17 |
|
| |
cairo を使ったクロスプラットフォーム・グラフィックス cairo はプリンターと画面の両方でまったく同じ出力を、しかもプラットフォームに依存しない方法で生成することにこだわって作成されました。そんな cairo は、Linux グラフィックスの世界で中心的な存在となってきています。GNOME、GTK+、Pango やその他多くで使用されている 2D の威力を活用してください。 |
|
|
|
2007/09/05 |
|
| |
Web サーバーのクラスターをセットアップする 5 つの簡単なステップ Linux Virtual Server と Heartbeat v2 を使用した 5 つの簡単なステップで、複数の物理または仮想 Linux サーバーにまたがる高可用性 Apache Web サーバー・クラスターを構成してください。 |
|
|
|
2007/08/22 |
|
| |
Linux のヒント: スケジュール・ジョブの持続時間をコントロールする 例えば皆さんが、真夜中に 30 分間、いくつかのトレースを実行することで面倒な問題をデバッグしなければならない、あるいは単純に、Linux システムを目覚まし時計として使いたいとしましょう。このヒントは、cron や at の機能を使って開始したジョブを、一定時間実行した後に、あるいは他の判断基準を満たした時に、停止する方法について説明します。このヒントは AppleTalk ネットワーキング・パッケージ (Netatalk) での timeout コマンドに関する情報を含むように変更されました (編集者より)。 |
|
|
|
2007/08/02 |
|
| |
gperf を使って効率的に C/C++ コマンド・ラインを処理する GNU ツール、gperf は「完全」ハッシュ関数であり、ユーザーが提供する一連のストリングに対して、ハッシュ・テーブル用の C/C++ コードとハッシュ関数、そして参照関数を生成します。C/C++ コードでの効果的なコマンド・ライン処理のために、gperf の使い方を学びましょう。 |
|
|
|
2007/07/25 |
|
| |
Linux のヒント: cron と at を使ったジョブ・スケジューリング 皆さんはシステム使用率が低い真夜中にジョブを実行しなければなりません。あるいは毎日、あるいは毎週ジョブを実行しなければならないかもしれません。しかし皆さんは、そんなことをするよりも眠りたい、あるいは他の方法で人生を楽しみたいと思うはずです。そういうときにジョブをスケジューリングすると役立ちますが、ジョブをスケジューリングすると、ルーチン・タスクを自動的に行わせることができたり、またタスクを必ず毎回同じ方法で処理することができます。このヒントでは、定期的に、あるいは将来のある時点で、ジョブが実行されるようにスケジューリングするために、cron 機能と at 機能を使う方法について説明します。 |
|
|
|
2007/07/18 |
|
| |
libspe の変更内容: libspe2 が Cell Broadband Engine プログラミングに与える影響 PPE (Power Processor Element) プログラムが SPE (Synergistic Processor Element) のアクセスと管理に使用する標準ライブラリー、libspe に大幅な改訂が行われ、Cell/B.E. (Cell Broadband Engine) SDK 2.1 ではライブラリー・インターフェースを libspe1 から libspe2 に正式に変更しています。この記事では、Jonathan Bartlett が libspe2 のコンセプトを紹介し、libspe2 で基本 SPE プロセスの管理と通信を行う方法を説明します。 |
|
|
|
2007/07/17 |
|
| |
軽量 Web サーバー 最近では、lighttpd や litespeed、mongrel など、興味深い Web サーバー実装が全盛です。これらの Web サーバーは、パフォーマンスや管理の容易さ、移植性、セキュリティー、その他関連する価値をさまざまに組み合わせ、独特の機能を誇っています。これから述べる工学研究では、軽量 Web サーバーの領域について調査し、皆さんの次期プロジェクトの技術要件を満足できそうな 1 台を見つけるために役立てたいと思います。 |
|
|
|
2007/07/10 |
|
| |
Linux ネットワーク・スタックの徹底調査 Linux オペレーティング・システムでとりわけ優れた特徴の 1 つとなっているのは、そのネットワーク・スタックです。当初、BSD スタックの派生的なものだったネットワーク・スタックは、今では明確な一連のインターフェースで整然と編成されています。インターフェースには、共通ソケット層インターフェースやデバイス層といったプロトコルに依存しないインターフェースから、それぞれのネットワーク・プロトコルに固有のインターフェースまであります。この記事では、層という観点から Linux ネットワーク・スタックの構造を説明するとともに、そこに含まれる主要な構造をいくつか取り上げます。 |
|
|
|
2007/06/27 |
|
| |
ActiveScaffold を使って Ruby on Rails を機能アップする Ruby on Rails の ActiveScaffold プラグインを使うことで、時間を節約して、頭痛の種を解消し、もっと管理のしやすいページを作成しましょう。ActiveScaffold はユーザー・インターフェースの CRUD (create, read, update, delete) に必要なことをすべて処理してくれるため、開発者はより多くの時間を、難しい (そして興味深い) 問題に集中して費やせるようになります。 |
|
|
|
2007/06/08 |
|
| |
LAMP システムを調整する: 第 3 回 MySQL サーバーを調整する LAMP (Linux、Apache、MySQL、PHP/Perl) アーキテクチャーを使ったアプリケーションは次々と開発され、デプロイされています。しかし多くの場合、アプリケーションはサーバー管理者以外の人が作成したものであるため、サーバー管理者はアプリケーション自体をほとんど制御することができません。この 3 回シリーズの記事では、アプリケーションのパフォーマンスを向上させる、あるいは低下させる、サーバー構成上のさまざまな項目について説明します。シリーズ最終回の今回は、最大の効率を実現するためにデータベース・レイヤーを調整する方法について説明します。 |
|
|
|
2007/06/07 |
|
| |
Linux カーネルの徹底調査 Linux カーネルは大規模で複雑なオペレーティング・システムのコアですが、その大きさのわりには、サブシステムおよび層構造に関してよく整理されています。この記事では Linux カーネルの一般的な構造を調べ、主要なサブシステムとコア・インターフェースを説明します。該当する箇所では、さらに詳しく掘り下げられるように、他の IBM の記事へのリンクも記載しています。 |
|
|
|
2007/06/06 |
|
| |
わかりやすいコードを作成するための 6 つの方法 開発者にとって最も貴重なリソースは時間です。時間の節約、それにフラストレーションの解消を望むなら、管理しやすいコードを作成する方法について、ここで説明する
6 つのヒントを参考にしてください。コメントの作成に費やす 1 分につき、1 時間分の苦しみを取り除けるはずです。 |
|
|
|
2007/05/29 |
|
| |
1日5分のXen理解: 第3回 Xen導入のメリット 仮想マシン環境を導入すると、どんなメリットがあるのでしょうか? すでに幾つかの点について触れてきましたが、もう一度ここで仮想マシン環境の利点を考えてみましょう。 |
|
|
|
2007/05/18 |
|
| |
1日5分のXen理解: 第2回 仮想マシンモニタXenの特徴 ここでは、仮想マシンモニタ「Xen」を取り上げ、その特徴を見ていくことにしましょう。 |
|
|
|
2007/05/18 |
|
| |
1日5分のXen理解: 第1回 仮想マシンとは何か? 2005年12月5日に仮想マシンモニタXen 3.0がリリースされました。読者の中には、すでに利用されている方もいるのはないでしょうか? 2004年ごろから仮想化環境はホットな話題です。MicrosoftによるVirtual PCの買収、無償利用できるVMware Playerの登場など、仮想化というトピックに大きな話題が集まっているのでご存じの方も多いでしょう。本稿では、まず仮想マシン環境とは何であるのかを説明します。仮想マシンモニタとはどういうもので、Xenを使うと何ができるのかを眺めてみましょう。 |
|
|
|
2007/05/18 |
|
| |
Linux スラブ・アロケーターの徹底調査 オペレーティング・システムのパフォーマンスの良し悪しは、オペレーティング・システムがどれだけ効率的にリソースを管理できるかによってある程度決まります。かつてはヒープ・メモリー・マネージャーがメモリー管理の標準でしたが、フラグメント化、それにメモリーを再利用しなければならないということがパフォーマンスの弱点になっていました。現在 Linux カーネルで使用されているのは、メモリーをサイズに応じたオブジェクトとして割り当てるという方法です。元々この方法が生まれたのは Solaris でしたが、だいぶ前から組み込みシステムで使用されています。この記事ではそんなスラブ・アロケーターの背後にある概念を探り、スラブ・アロケーターのインターフェースとその使用方法を検討します。 |
|
|
|
2007/05/15 |
|
| |
PS3 を既製品から実験装置に、第 1 回: Sony PLAYSTATION 3 から Linux 実験装置を構築する
既製の Sony PLAYSTATION 3 (PS3) の Cell Broadband Engine (Cell/B.E.) プロセッサーを利用して、Linux ベースの実験装置を構成する方法 (要するに、Cell/B.E. を既製品から実験装置に転用する方法) をご存知ですか。この連載では、Lewin Edwards がゲーム・コンソールを簡易オーディオ帯域スペクトラム・アナライザー兼ファンクション・ジェネレーターに変身させる方法を披露します。まず初めにこのプロジェクトの設計意図を明らかにした後 Cell/B.E. プロセッサーで信号を生成、分析する過程の出発点としてユーザー・インターフェース実装の詳細を詳しく説明します。 |
|
|
|
2007/05/15 |
|
| |
新入学生/新社会人応援企画: 第3回 あるWebプログラマーの作業環境 春は出会いと別れの季節。入学や就職で、新しい生活を始める人も多いでしょう。それを機にPC環境もそろそろ大人への階段を上ってもいいかもしません。ここでは、はてなという企業でプログラマーとして働くあの人の開発環境を紹介することで、プロが好む作業環境を考えてみます。 |
|
|
|
2007/05/11 |
|
| |
新入学生/新社会人応援企画: 第4回 あるWebプログラマーの作業環境 はてなという企業でプログラマーとして働くあの人の開発環境には欠かすことのできない三種の神器が存在します。後編となる今回は、前回紹介できなかった神器を紹介するとともに、意外と知られていないWebプログラマーの生態についてもみてみましょう。 |
|
|
|
2007/05/11 |
|
| |
新入学生/新社会人応援企画: 第2回 Windows上でLinuxを走らせてみよう Linuxを使ってみたいとは思っても、Windowsから完全に移行するのはまだ早いかな、とお考えのあなた。Windows上でLinuxを動作させることができるcoLinuxを使って、まずはLinuxに触れてみてはいかがでしょうか。 |
|
|
|
2007/05/11 |
|
| |
Second Life クライアント、第 3 回: Second Life に単純な変換機能を追加する Second Life ソフトウェアを探るシリーズ最終回の今回は、言語変換機能を持つ単純なコマンド・ライン・プログラムを Second Life に組み込むための方法を学びます。 |
|
|
|
2007/04/30 |
|
| |
Second Life クライアント、第 2 回: ドキュメンテーションを掘り下げる Second Life クライアントの開発者用ドキュメンテーションは、ウィキの形式をとっています。この、Second Life ソフトウェアについて探るシリーズの第 2 回目の今回は、ドキュメンテーションについて調べ、それを利用して早速クライアントに一部変更を加えます。 |
|
|
|
2007/04/30 |
|
| |
LAMP システムを調整する: 第 2 回 Apache と PHP を最適化する LAMP (Linux、Apache、MySQL、PHP/Perl) アーキテクチャーを使ったアプリケーションは次々と開発され、デプロイされています。しかし多くの場合、アプリケーションはサーバー管理者以外の人が作成したものであるため、サーバー管理者はアプリケーション自体をほとんどコントロールできません。この 3 回シリーズの記事では、アプリケーションのパフォーマンスを向上させる、あるいは低下させる、サーバー構成上のさまざまな項目について説明します。今回の第 2 回は、Apache と PHP を最適化するために必要なステップに焦点を当てます。 |
|
|
|
2007/04/30 |
|
| |
Linux PD-障害発生時の金科玉条: 第6回 PDツールでシステムの内部情報に迫れ(後編) 過負荷状態となったとき、OSの内部ではどのような動作が行われているのでしょうか。ここでは、幾つかのツールを使用して、ステータスの解釈やデータ分析を行ってみましょう。問題を解決するには、まず問題を知れ、です。 |
|
|
|
2007/04/27 |
|
| |
新入学生/新社会人応援企画: 第1回 ディストリビューションの選び方、試し方 春は出会いと別れの季節。入学や就職で、新しい生活を始める人も多いでしょう。そこで本連載では、新入学生/新社会人応援企画として、オープンソースで作る環境構築を解説していきます。また、デスクトップ環境のほか、新しくプログラミングを始める人のために、Web/Java開発の第一線でいまどのように環境が使われているかを紹介します。 |
|
|
|
2007/04/27 |
|
| |
Linux通へのステップバイステップ: 第2回 ちょっぴりLinuxの開発/配布体制が語れるようになる基礎知識 インストールが楽になるように、と始まったディストリビューションですが、その開発/配布体制にも発展の流れがありました。ライセンスの話も整理しながら、ポイントをまとめていきましょう。 |
|
|
|
2007/04/27 |
|
| |
障害発生時の金科玉条: 第5回 PDツールでシステムの内部情報に迫れ(前編) PDを行う際に心強い味方となってくれるのがさまざまなツール類です。ツールを利用することで、ログや設定ファイルからだけでは分からない、システムの内部情報についても知ることができます。そこで今回は、過負荷状態となったときOSの内部ではどのような動作が行われているのか、幾つかのツールを使用して探ってみましょう。 |
|
|
|
2007/04/27 |
|
| |
Linux通へのステップバイステップ: 第1回 ちょっぴりLinuxが語れるようになる基礎知識 Linuxディストリビューションは数多く、どれを選ぶか悩むところです。特にここ最近で各ディストリビューターやプロジェクトに動きがあり、数年前とは状況が変わってきています。ディストリビューション選びのポイントとなる部分を整理し、Linuxディストリビューションのいまを掌握していきましょう。 |
|
|
|
2007/04/27 |
|
| |
Sugar と XO ラップトップで、子供たち一人ずつに 1 台のラップトップを One Laptop per Child (OLPC) は、世界中の子供たちにコンピューター技能を広めるために、ソフトウェアが付属した低コストのラップトップ (USD100) を開発するという使命を掲げた組織です。そのコンピューターの対象は子供たちであるため、今までにないユーザー・インターフェースとアプリケーションを提供して、子供が表現や学習用のツールを試せるようにしなければなりません。OLPC のオペレーティング・システムは Linux カーネルの移植版ですが、Sugar という独特なインターフェースを備えています。この記事では、Sugar ヒューマン・インターフェースの概要、標準的な PC でQEMU を使って OLPC ラップトップを仮想化する方法、そして Sugar と OLPC の機能を紹介します。 |
|
|
|
2007/04/24 |
|
| |
障害発生時の金科玉条 第4回 ハードウェアかOSか、それが問題だ 障害発生時にPDに必要なハードウェア関連情報の収集方法を解説する本稿。今回は、ハードウェアRAIDの監視について解説します。 |
|
|
|
2007/04/20 |
|
| |
障害発生時の金科玉条: 第3回 ハードウェアかOSか、それが問題だ I/O関連のトラブルやカーネルパニックなどの原因にハードウェアがかかわっているのは多々あることです。しかし、実際にそのような状況に直面した場合、どのように原因を探れば良いのでしょうか。今回から2回に分けて、PDに必要なハードウェア関連情報の収集方法について解説していきましょう。
|
|
|
|
2007/04/20 |
|
| |
Linux カーネル仮想マシンを探る Linux と柔軟性は切り離せないものですが、仮想化のオプションにしてもそれは同じことです。しかし最近では、カーネル仮想マシン (KVM) の登場によって Linux 仮想化の全体像が変わってきています。KVM は主流の Linux カーネル (V2.6.20) に統合される初の仮想化ソリューションです。Linux ゲスト・オペレーティング・システムの仮想化をサポートする KVM は、Windows でさえも仮想化を認識するハードウェアでサポートします。この記事で、Linux KVM のアーキテクチャーについて、そして Linux KVM と Linux カーネルとの統合が Linux の使い方を変えるかもしれない理由について学んでください。 |
|
|
|
2007/04/18 |
|
| |
SoC ドロワー: Cell Broadband Engine チップ: 大衆のための高速オフロード 世界規模の接続性と帯域幅によって私たちの住む世界が変化するなか、コンピューティングのブロードバンド革命を推進し、スーパーコンピューティングや医用画像処理、そして続々と登場している新たなアプリケーションのシリコン DNA のコアとなっているのが Cell Broadband Engine (Cell/B.E.) チップです。この記事では、Yellow Dog Linux を実行する Sony PLAYSTATION 3 の Cell/B.E. システムにおけるアプリケーション・コードのパフォーマンスを検討します。単純なプログラムを例に、マルチスレッド・アプリケーションで Synergistic Processing Element (SPE) に作業を負担させると、どれだけ大幅な高速化を実現できるかを説明します。 |
|
|
|
2007/04/17 |
|
| |
Linux on POWER でのアプリケーション開発 IBM のPOWER プラットフォーム、System p(TM) と System i(TM) で Linux(R) アプリケーションを開発し、デプロイするための方法は、他の Linux システムでデプロイや開発を行う場合と同様です。この記事では、Linux on POWER システムで開発やデプロイを行う場合の類似点と相違点について、知っておくべき事項を解説します。(2007年4月更新。) |
|
|
|
2007/04/16 |
|
| |
Linux 鍵保存サービス入門 Linux 鍵保存サービスは、Linux 2.6 から導入されました。これは、Linux プラットフォームで認証、暗号化方式、ドメイン間のユーザー・マッピングなどのセキュリティー関連項目を扱う、これまでにないすばらしい方法です。この記事で、Linux 鍵保存サービスのコンポーネントについて学習し、実稼動サンプル・アプリケーションを通じてコンポーネントの使用方法について理解してください。 |
|
|
|
2007/04/11 |
|
| |
64 ビット Linux での Power Architecture の Time Base Register Power Architecture 技術の Time Base Register を使用し、PowerPC および Cell/B.E. (Cell Broadband Engine) マイクロプロセッサーで動作する Linux で、ナノ秒レベルの時刻を測定してください。この精度の高い時刻測定が役に立つアプリケーションとしては、トランザクション (通常は暗号化されるか、またはデジタル署名が付いた 1 回だけ使用されるメッセージ) へのタイムスタンプ付与、コードのプロファイル作成、そして微小時間の正確なソフトウェア遅延の実装などがあります。 |
|
|
|
2007/04/04 |
|
| |
Cell BE プロセッサーでのハイパフォーマンス・アプリケーションのプログラミング、第 6 回: DMA 転送での賢いバッファー管理 今回紹介するのは、ダブルバッファー方式およびマルチバッファー方式の概念です。これらの方式では、処理とデータ転送を並列化し、SPE のメモリー・フロー・コントローラー (MFC) が最適な順序でロードと保存の操作を行えるようにして、コードの処理速度を改善します。 |
|
|
|
2007/04/03 |
|
| |
coLinux による仮想化 最近の仮想化には、VmWare、Xen、そして KVM (Kernel-based Virtual Machine) が盛んに使われていますが、Linux と Microsoft Windows を連携させて実行できることをご存知でしたか? この記事では Cooperative Linux (coLinux) に焦点を当て、仮想化の簡単な紹介から始めて、coLinux による仮想化の手法、そして Windows 上で coLinux を起動して動作させる方法を説明していきます。 |
|
|
|
2007/03/31 |
|
| |
LAMP システムを調整する: 第 1 回 LAMP アーキテクチャーを理解する LAMP (Linux, Apache, MySQL, PHP/Perl) アーキテクチャーを使ったアプリケーションは次々と開発され、デプロイされています。しかし多くの場合、アプリケーションはサーバー管理者以外の人が作成したものであるため、サーバー管理者はアプリケーション自体をほとんどコントロールできません。この 3 回シリーズの記事では、アプリケーションのパフォーマンスを向上させる、あるいは低下させる、サーバー構成上のさまざまな項目について説明します。今回の第 1 回は、LAMP のアーキテクチャーと、測定を行うための方法、そして Linux のカーネルやディスク、ファイル・システムなどの基本的な調整方法について説明します。今後の記事では、Apache と MySQL、PHP のコンポーネントの調整方法について調べます。 |
|
|
|
2007/03/31 |
|
| |
仮想マシンモニタ Xen 3.0解読室:第1回 Xenのモデルと構造 複数の仮想マシン環境を作り上げ、制御するために、仮想マシンモニタであるXenが具体的に何をやっているのか、興味がある方に向け、Xenの設計思想と実装について連載で解説していく。 |
|
|
|
2007/03/30 |
|
| |
developerWorksの歩き方 第1回 現場で使える技術を求めて日々Webサイトを巡回する技術者は多い。国内ではコアな情報を扱うサイトや雑誌が少ないが、developerWorksには多くの有益な情報が存在している。本連載では、developerWorksを徹底的に活用するためのガイドを提供します。 |
|
|
|
2007/03/30 |
|
| |
developerWorksの歩き方: 第2回 ゾーンを巡る 前回は、日本語による技術情報が集約された「IBM developerWorks」を紹介しました。今回は、developerWorksにはどういったコンテンツがどのように配置されているのかを紹介します。 |
|
|
|
2007/03/30 |
|
| |
仮想マシンモニタ Xen 3.0解読室:第3回 Xenの内部設計(後篇) 前回に引き続き、Xenが仮想マシン環境を実現するために行っていることの全体を眺めてみましょう。 |
|
|
|
2007/03/30 |
|
| |
作って学ぶ、今どきのWebサービス: 第2回 RSSフィードの料理はLWPとXML::RSSにおまかせ 今回から、いよいよPerlプログラミングの世界に入っていきましょう。手始めに、PerlにおけるWebプログラミングの要ともいえるLWPを用いた、HTTPコンテンツをPerlでHackする手法を解説します。 |
|
|
|
2007/03/30 |
|
| |
developerWorksの歩き方: 第3回 トレンドをつかむ developerWorksのコンテンツを十分に味わうには、外部のサービスなども活用した方がいいでしょう。今回は、RSSやソーシャルブックマークを活用してdeveloperWorksの人気記事をチェックしていきます。 |
|
|
|
2007/03/30 |
|
| |
仮想マシンモニタ Xen 3.0解読室:第2回 Xenの内部設計(前篇) Xenが仮想マシン環境を実現するために行っていることの全体を眺めてみましょう |
|
|
|
2007/03/30 |
|
| |
作って学ぶ、今どきのWebサービス: 第3回 XML::SimpleであらゆるXML文書を料理する RSSにおけるXML::RSSのように、専用のモジュールがある場合にはそれを使えばよいのですが、そうでない場合は汎用のXMLパーサーモジュールを使ってパースすることになります。今回は、XML::Simpleを使ってあらゆるXML文書を料理できるようにしてみます。 |
|
|
|
2007/03/30 |
|
| |
作って学ぶ、今どきのWebサービス: 第1回 何はなくともCPANを知ろう
最近のWebかいわいでは、Webアプリケーション同士が連携してどんどん面白いサービスが生まれています。しかし、Web上のサービスは手元にソフトウェアも何も残らないので、どうしても雲をつかむような分かりにくさがあります。そこで本連載では、Webサービスを実際に利用/作成しながら、そういった「今どき」のテクノロジーを学んでみたいと思います。
|
|
|
|
2007/03/30 |
|
| |
Second Life クライアント、第 1 回: Second Life の詳細を調べる Second Life を開発した Linden Lab が Second Life のビューアー・プログラムをオープン・ソースでリリースしたことによって、クローズド・ソースの開発モデルとオープン・ソースの開発モデルそれぞれの強みを比較できる稀な機会が得られました。シリーズ第 1 回の今回は、両者の開発スタイルの違いの概要と、皆さんが独自のビルド環境を設定するために必要な事項を解説します。 |
|
|
|
2007/03/27 |
|
| |
Linux システム・コールを使用したカーネル・コマンド
Linux
システム・コールは私たちが毎日使っているものですが、システム・コールはどのようにしてユーザー空間からカーネスに対して行われるかをご存知ですか。そこで、この記事では
Linux システム・コール・インターフェース (SCI) の詳細を説明します。新しいシステム・コールを追加する方法
(そしてその代わりとなる手段)、そして SCI 関連のユーティリティーについて学んでください。
|
|
|
|
2007/03/21 |
|
| |
Cell BE プロセッサーでのハイパフォーマンス・アプリケーションのプログラミング、第 5 回: C/C++ での SPU のプログラミング 連載「Cell BE プロセッサーでのハイパフォーマンス・アプリケーションのプログラミング」の第 5 回では、これまでに学んだ相乗演算処理装置 (SPU) の知識を、Cell BE (Cell Broadband Engine) プロセッサーの C/C++ プログラミングに応用します。ベクトル拡張機能を使用する方法、コンパイラーに分岐を予測するよう指示する方法、そして DMA 転送を C/C++ で実行する方法を学んでください。 |
|
|
|
2007/03/20 |
|
| |
Linux と対称型マルチプロセッシング 代表的な中央演算処理装置 (CPU) ベンダーの数々を見ても明らかなように、マルチコア・プロセッサーがデスクトップ市場と組み込み市場を独占しようとしています。マルチプロセッシングによって確かにパフォーマンスは向上しますが、新たな問題も伴います。この記事ではマルチプロセッシングの背後にある概念、そして SMP を活用する Linux 対応アプリケーションを開発する方法を検討します。 |
|
|
|
2007/03/14 |
|
| |
VMware ESX Server を使用して Linux 仮想マシンで DB2 Enterprise 9 をセットアップする この記事では VMware Infrastructure コンポーネントを紹介し、VMware ESX Server 製品を使って 64 ビットの
Linux 仮想マシン上に DB2 Enterprise 9 をセットアップする手順を説明します。 |
|
|
|
2007/03/08 |
|
| |
アプリケーションの並列化で Linux のブートをより高速に行う Linux について特に開発者たちが持っている一番大きな不満の 1 つは、Linux がブートする際の速度です。Linux は、細かい設定をしなくてもデフォルトでクライアント・デスクトップまたはサーバーとしてすぐに機能する汎用オペレーティング・システムです。このような柔軟性を持つ Linux は幅広い用途に向いてはいるものの、特定の構成に対応するのに最適とは言えません。この記事では、初期化プロセスを並列化するための 2 つのオプションをはじめ、Linux のブート速度を向上するための方法を説明します。また、ブート・プロセスのパフォーマンスをグラフを使って視覚的に表示する方法についても紹介します。 |
|
|
|
2007/03/06 |
|
| |
Fedora Live CD を作成する Fedora Linux は一般的で成熟した Linux ディストリビューションであり、多くの人が Fedora をベースとした Live CD ディストリビューションを作成していますが、Fedora プロジェクト自体は 2006年の12月まで、最初の正式な Live CD をリリースしませんでした。Fedora Live CD 作成ツールである Pilgrim をリライトしたものを使って、使いやすい、独自のカスタム Live CD を作る方法を学びましょう。 |
|
|
|
2007/02/28 |
|
| |
Power アーキテクチャーのためのアセンブリー言語 第 4 回: 関数コールと PowerPC の 64-ビット ABI ABI (Application Binary Interface) とは、作成した言語やコンパイルしたコンパイラーが異なるプログラム同士がそれぞれの関数を互いに呼び出せるようにするための一連の規則のことです。4 回からなる連載の最終回となるこの記事では、64-ビットのELF システム (UNIX ライクなシステム) に対応した PowerPC ABI について説明し、PowerPC ABI を使用して関数を作成し、呼び出す方法についても取り上げます。64-ビットの PowerPC ABI がどのように機能するかを詳しく知ることで、アセンブリー言語でプログラミングしているかどうかに関わらず、POWER5 や他の PowerPC ベースのプロセッサーに対応した 64-ビットのプログラムを一層効率的に作成できるようになります。この記事では取り上げていませんが、32-ビット ABI もあります。 |
|
|
|
2007/02/28 |
|
| |
Cell BE プロセッサーでのハイパフォーマンス・アプリケーションのプログラミング、第 3 回: 相乗演算処理装置の紹介 この連載では、Cell BE (Cell Broadband Engine) プロセッサーの相乗演算処理要素 (SPE) の詳細と最低限の基本レベルでのその動作方法を説明しています。今回の記事で取り上げるのは、ストレージ・アラインメントの問題と SPE の通信機能です。 |
|
|
|
2007/02/22 |
|
| |
Linux のヒント: Bash のテスト関数と比較関数 皆さんは、Bash シェルの膨大なテスト・オプションや比較オプションで混乱していないでしょうか。このヒントでは、さまざまなタイプのファイル・テストや算術テスト、文字列テストの神秘を解き明かします。このヒントによって、どういう場合に test や [ ]、[[ ]]、(( ))、あるいは if-then-else といった構成体を使うべきかを理解できるはずです。 |
|
|
|
2007/02/20 |
|
| |
Linux のヒント: CUPS を使って DVI ファイルを印刷する 皆さんは、Linux で DVI ファイルや他のファイルを印刷しようとして「unsupported format」メッセージを受け取ったことはないでしょうか。このヒントでは、既存のツールを組み合わせて DVI ファイル印刷用の CUPS プリント・フィルターを作成する方法を説明します。 |
|
|
|
2007/02/07 |
|
| |
Linux のメモリー・フットプリントを削減する 物理的なメモリーが不足すると、Linux のパフォーマンスが大きく制限されます。この記事では、Linux システムが使用するメモリーの量を正確に測るための方法を学びます。また Ubuntu システムを例として使用しながら、メモリー要求を削減するための実際的なアドバイスを示します。 |
|
|
|
2007/01/31 |
|
| |
Power アーキテクチャーのためのアセンブリー言語: 第 3 回: PowerPC 分岐プロセッサーでのプログラミング これまでの 2 回の記事では、POWER5 プロセッサー上で 64-ビットの PowerPC 命令セットを使用してプログラムがどのように動作するか、また PowerPC 命令セットがどのようにしてメモリーをアドレス指定するか、そして位置に依存しないコードを作成する方法について説明してきました。今回の記事では、PowerPC 命令セットに用意されている非常に効果的な条件命令および分岐命令の使い方に焦点を当てます。 |
|
|
|
2007/01/17 |
|
| |
仕事中に口笛を吹いて、コンピューターにコマンドを実行させる Linux あるいは Microsoft Windows とオープンソースの sndpeek プログラム、そして単純な Perl スクリプトを使って、特定のトーン・イベント・シーケンスを読み取らせ (つまり文字どおりコンピューターに向かって口笛を吹いたり、ハミングしたり、そして歌を歌ったりし)、こうしたトーンに基づいてコマンドを実行しましょう。コンピューターに向かって、ベートーベンの交響曲第 5 番の最初の数小節を、短くて低いトーンの口笛で吹くことで、E メールをチェックしたり、スクリーンセーバーのロックを解除したりすることができます。口笛を吹いて、作業効率を高めましょう。 |
|
|
|
2007/01/09 |
|
| |
Cell BE プロセッサーでのハイパフォーマンス・アプリケーションのプログラミング、第 1 回: PLAYSTATION 3 での Linux 入門 プログラマーが新たな Cell Broadband Engine? (Cell BE) プロセッサーを体験して使いこなせるようになるには、SonyR PLAYSTATIONR 3 (PS3) が最も簡単で最も安上がりな方法になります。この記事を読んで、話題の全容、そして PS3 に LinuxR をインストールして PS3 の Cell BE プロセッサーを対象とした開発に着手する方法を学んでください。 |
|
|
|
2007/01/03 |
|
| |
魅力的な Python: デコレーターで魔法を身近に Python はメタプログラミングを可能にしましたが、メタプログラミングを実現する方法は、Python のバージョンごとに多少異なる (そして完全に互換するわけではない) 趣向が加えられています。Python の魔法に手を伸ばす手法として長いことあれこれ操作されてきたのは、ファースト・クラスの関数オブジェクトです。バージョン 2.2 では、Python はカスタム・メタクラスのメカニズムを拡張しました。これは効果を発揮しましたが、ユーザーの頭を混乱させるという犠牲を伴いました。最近ではバージョン 2.4 で「デコレーター (修飾子)」が拡張されています。デコレーターは、大抵のメタプログラミングを行う際の最新かつ、とびきりユーザー・フレンドリーな手段になります。 |
|
|
|
2006/12/29 |
|
| |
仮想 Linux
仮想化の意味は、人によってさまざまです。目下、仮想化で大きな焦点となっているのは、サーバーの仮想化、つまり複数の独立したオペレーティング・システムを単一のホスト・コンピューターでホストすることです。この記事では、仮想化の背後にある意図を説明した後、仮想化を実装する方法をいくつか取り上げます。さらに、Linux
でのオペレーティング・システムの仮想化など、世間に出回っている仮想化技術についても目を向けてみます。
|
|
|
|
2006/12/29 |
|
| |
IP エイリアスを使って 1 枚のネットワーク・カードで複数の SSL サイトをホストする SSL と名前ベースの仮想ホストの併用への関心が高まっています。そんなことは不可能だと言う人もいますが、Apache では IP ベースの仮想ホストを使って仮想ホストを実装できます。John Liao と Jim Miles がこの記事でその方法を伝授します。 |
|
|
|
2006/12/19 |
|
| |
遅延プログラミングと遅延評価 遅延プログラミング (lazy programming) は、結果が必要になるまで関数あるいはリクエストの処理を遅らせるという、一般的な概念です。この概念には、さまざまな用途があり、用途が明らかなものから、それほど目立たないものまであります。遅延プログラミングの観点から考えることによって、不必要な計算を避けることができ、またプログラムを問題指向の構成に変更することができます。 |
|
|
|
2006/12/18 |
|
| |
Linux 対応のデータ可視化ツール Linux 上でデータをグラフィカルに表示するアプリケーションは、単純な二次元グラフから三次元曲面、そしてサイエンティフィック・グラフィックス・プログラミング、グラフィカル・シミュレーションまで多岐にわたります。幸いにも、可視化ツールには gnuplot、GNU Octave、Scilab、MayaVi、Maxima、OpenDX など、多数のオープン・ソースが揃っています。ツールのそれぞれには利点と欠点があり、対象となるアプリケーションも異なるため、さまざまなオープン・ソース・グラフィカル表示ツールを学んで、そのなかからご使用のアプリケーションに最適なものを選択できるようにしてください。[この記事は OpenDX を追加記載するために更新されています (編集者)。] |
|
|
|
2006/11/30 |
|
| |
Apache Proxy のディレクティブ (mod_proxy) を使って LAMP セキュリティーを改善する この記事では Nick Maynard が、Apache の mod_proxy モジュールを使って LAMP セットアップのセキュリティーを改善する方法の概要を説明します。この記事は Linux のみを対象としますが、ここで説明する原則のいくつかは、他のオペレーティング・システムにも適用することができます。 |
|
|
|
2006/11/29 |
|
| |
Linux で Web スパイダーをビルドする Web スパイダーとは、ユーザーに代わってインターネットを巡回して情報を収集、フィルタリング、そして場合によっては集約するソフトウェア・エージェントのことです。Web スパイダーは、一般的なスクリプト言語とそれぞれの一連の Web モジュールを使って簡単に開発できます。この記事では、Web サイトを巡回して情報 (この記事の場合は株価データ) を集める Linux® 対応のスパイダーとスクレイパーをビルドする方法を紹介します。 |
|
|
|
2006/11/14 |
|
| |
Linux ThinkPad の振動検出を活用する カーネルを修正することによって最先端のカタルシス・インターフェースをコンピューターに実装しましょう。カーネル・パニックが起きた際に Linux ラップトップに振動を与えると、自動的にリセットすることができます。 |
|
|
|
2006/11/07 |
|
| |
Make をデバッグする GNU make や System V make、Berkeley make などの make ユーティリティーは、アプリケーションのビルド・プロセスを効率化するための基本的なツールですが、お互いに少しずつ異なっています。この記事では、makefile の構造や makefile を作る際に犯しがちな誤りを防ぐ方法、移植性に関する問題への対処などについて学びます。また、その他の問題が発生した場合のための解決のヒントも解説します。 |
|
|
|
2006/10/24 |
|
| |
m17n を使って世界中にコードを移植する Linuxアプリケーションを世界中で使えるようにするためには、しかも西欧の言語と世界各国の多くの言語との間に不公平を生じさせないためには、どんなに複雑な言語であっても任意の言語を入力でき、また保存、取得、描画できる、ローカライズしたアプリケーションを提供できなければなりません。多言語化ライブラリー、つまり
m17n は、UNIX ライクのプラットフォームのあらゆる言語に対して、単一の国際化ソリューションを提供します。
|
|
|
|
2006/10/17 |
|
| |
Linux のためのバージョン・コントロール バージョン・コントロール・システム、またはソース管理システムは、最近のソフトウェア開発にとって非常に重要です。これを使わないと、まるでスピードを出しすぎて車を運転するような羽目になります。つまり、楽しく、早く目的地に着けるかもしれませんが、事故は避けられません。この記事では、CVS や Subversion、Arch、Git などを含めた SCM (Software Configuration Management) システムとその利点について、概要を説明します。また、一般的な SCM のアーキテクチャーについても解説します。そして最後に、新しい手法にはどんなものがあるか、従来のものとの違いについて説明します。(編集者より: Git の構文が改善されたのを反映して、リスト 4 を更新しました。) |
|
|
|
2006/10/10 |
|
| |
OpenSSL API によるセキュア・プログラミング 第 3 回: セキュアなサービスを提供する セキュアなサーバー・アプリケーションがなければ、セキュアなクライアント・アプリケーションが必要になることもありません。OpenSSL では、セキュアなサーバー・アプリケーションを作成できます。文書の上では手ごわそうに見えますが、実際は難しいことではありません。この 3 回シリーズの第 1 回で説明したコンセプトに基づいて、セキュアなサーバー・アプリケーションを構築する方法を学んでください。 |
|
|
|
2006/09/27 |
|
| |
オープンソースのロボット・ツールキット
ロボットを作るためには、組み込みのファームウェアやハードウェア設計、センサーの選択、コントロール・システムの設計、そして機械設計など、様々な分野でのスキルが必要です。しかしシミュレーション環境を利用すれば、開発に高いコスト
(そして時間)
をかけなくても、テストや測定、ロボット・アルゴリズムの視覚化などのための仮想的な場を作ることができます。この記事では、Linux
用のオープンソースのロボット技術ツールキットをいくつか紹介し、それらの機能を実際に使ってみながら、皆さんが最適なものを選ぶ際の参考にしたいと思います。
|
|
|
|
2006/09/05 |
|
| |
Linux のためのオープン BIOS 多くのシステムでは、ブート時間の大部分を MS-DOS に対するレガシー・サポートに費やされています。LinuxBIOS や Open Firmware など様々なプロジェクトでは、特定のシステム専用に作られた BIOS システムを、Linux カーネルをロードし、実行するために必要なことのみを行う、整理されたコードで置き換えようとしています。この記事では、こうした分野の概要を説明します。 |
|
|
|
2006/08/31 |
|
| |
developerWorks のトライアルへのパッチ: IBM Rational Systems Developer V6.0.1 trial for Linux の互換性パッチをインストールする Rational Systems Developer V6.0.1 for Linux のトライアル・バージョンをインストールしたら、それを実行する前に、一部のコンフィギュレーション・ファイルをアップデートするためのパッチを適用する必要があります。この記事では、パッチの適用方法やワークスペースのアップデートについて、またトライアル製品のアップデート方法などについて詳細に説明します。 |
|
|
|
2006/08/31 |
|
| |
developerWorks のトライアルへのパッチ: IBM Rational Functional Tester V6.1 trial for Linux の互換性パッチをインストールする Rational Functional Tester V6.1 for Linux のトライアル・バージョンをインストールしたら、それを実行する前に、一部のコンフィギュレーション・ファイルをアップデートするためのパッチを適用する必要があります。この記事では、パッチの適用方法やワークスペースのアップデートについて、またトライアル製品のアップデート方法などについて詳細に説明します。 |
|
|
|
2006/08/31 |
|
| |
Bluetooth と Serendipity サーバーを使ったモバイル・ロケーション・アウェアネス ワイヤレス技術によって、私達 1 人 1 人のつながりは増えました。それと同時に、どこででも携帯電話が鳴るおかげで、私達の注意はそがれてしまうようになりました。もし、ワイヤレス技術によって、注意がそがれる程度を軽減できるとしたらどうでしょう。Bluetooth ベースの WPAN (wireless personal area network) と、Serendipity サーバーのようなソーシャル・ネットワーキング技術を使えば、それが可能なのです。 |
|
|
|
2006/08/29 |
|
| |
developerWorks のトライアルへのパッチ: IBM Rational Data Architect V6.1 trial for Linux の互換性パッチをインストールする Rational Data Architect V6.1 for Linux のトライアル・バージョンをインストールしたら、それを実行する前に、一部のコンフィギュレーション・ファイルを更新するためのパッチを適用する必要があります。この記事では、パッチの適用方法やワークスペースの更新について、またトライアル製品の更新方法などについて詳細に説明します。 |
|
|
|
2006/08/29 |
|
| |
developerWorks のトライアルへのパッチ: IBM Rational Application Developer V6.0 trial for Linux の互換性パッチをインストールする Rational Application Developer V6.0 for Linux のトライアル・バージョンをインストールしたら、それを実行する前に、一部のコンフィギュレーション・ファイルをアップデートするためのパッチを適用する必要があります。この記事では、パッチの適用方法やワークスペースのアップデートについて、またトライアル製品のアップデート方法などについて詳細に説明します。 |
|
|
|
2006/08/29 |
|
| |
IBM BusyBox を使って組み込み Linux システムを単純化する BusyBox は、多くの標準的な Linux® ユーティリティーを 1 つの実行可能プログラムとして実装したものです。BusyBox
には、cat や echo のような単純なユーティリティーの他、grep や find、mount、telnet
など、もっと大がかりで複雑なツールも含まれています (ただし、従来のバージョンよりもオプションは少なくなっています)。 |
|
|
|
2006/08/15 |
|
| |
Linux テキスト・ユーティティーでデータ抽出を簡易化する Linux には UNIX で生成されたデータ抽出ユーティリティーが豊富に用意されています。例えば、head、tail、grep、egrep などです。この記事では実環境の例を用いて、これらの単純なコマンドライン・プログラムでシステム管理者としての手腕を上げる方法を紹介します。 |
|
|
|
2006/08/09 |
|
| |
GNU Linear Programming Kit 第 1 回: 線形最適化の紹介 複数の制約がある数値問題を解決する上で、GNU Linear Programming Kit は強力で実績のあるツールとなります。この記事では、glpsol クライアント・ユーティリティーである GLPK、そして、架空の玩具製造会社、Giapetto's Woodcarving, Inc. の運用最適化の問題を解決する GNU MathProg 言語について紹介します。 |
|
|
|
2006/08/08 |
|
| |
セブン・ミニッツ: AIDE を機能強化する アップデートされた AIDE ツールキット (Autonomic Integrated Development Environment toolkit) が提供する新機能について調べましょう。また developerWorks のフォーラムに立ち寄り、PMAC (Policy Management for Autonomic Computing) 技術を使う上での必要な情報を得ましょう。 |
|
|
|
2006/08/08 |
|
| |
Linux 初期 RAM ディスク (initrd) の概要 Linux® 初期 RAM ディスク (initrd) は、2 段階のブート・プロセスをサポートするためにシステムのブート中にマウントされる一時ルート・ファイル・システムです。initrd
には、実際のルート・ファイル・システムをマウントするための各種実行可能ファイルとドライバーが含まれています。実際のルート・ファイル・システムがマウントされると、initrd
RAM ディスクはアンマウントされ、そのメモリーが解放されます。 |
|
|
|
2006/07/31 |
|
| |
Linux ラップトップのためのノックによるコマンド コンピューターをたたくと意味のある反応が返ってくる - そんなことが初めて可能になります!この記事では新しい展開、つまりノック・コードと、特定のノック・コードが検出されたときにコマンドを実行する単純なプログラムを紹介します。 |
|
|
|
2006/07/25 |
|
| |
Python Web フレームワーク、第 2 回: TurboGears と Python を使って Web 開発を行う TurboGears は、Python をベースにしたもう 1 つのオープン・ソースで、MVC スタイルの Web アプリケーション・フレームワークです。この記事では、TurboGears を使った Web ベースのショッピング・アプリケーションの作成方法を説明し、最後に Turbogears と Django を比較します。 |
|
|
|
2006/07/11 |
|
| |
Git を使ってソース・コードを管理する Git は、Linus Torvalds が開発した、Linux カーネルの開発を管理する上で役立つオープン・ソースのリビジョン・コントロール・ソフトウェアです。ダウンロードして、独自のカーネル・ハッキング、または自分自身のソフトウェア開発プロジェクトのために使うことができます。 |
|
|
|
2006/07/06 |
|
| |
Linux スケジューラーの内側 Linux 2.6 カーネルの最も重要な機能の 1 つが、Ingo Molnar によって実装されたスケジューラーです。このスケジューラーは、動的であり、ロード・バランシングをサポートし、また一定時間内の動作をします・・・つまり O(1) です。Linux 2.6 のスケジューラーの持つ特徴などについて解説します。 |
|
|
|
2006/06/30 |
|
| |
Python Webフレームワーク、第1回: DjangoとPythonを使ってWeb開発 この記事は2回シリーズの第1回として、Djangoを紹介します。Djangoを使うと、高品質で維持管理の容易なデータベース・ドリブンのWebアプリケーションを、数分で作成することができます。 |
|
|
|
2006/06/06 |
|
| |
魅力的なPython: XMLとPythonのあれこれ Python において XML の処理を開始する主なエレメントは、使用可能なすべてのモジュールの比較機能を分類することにあります。Python についての新しいコラムの最初の記事である、この 魅力的な Python で、David Mertz 氏は、最もポピュラーで有用な XML 関連の Python モジュールについて簡単に説明し、それぞれのモジュールのダウンロード先や、それらについて説明している参考資料を取り上げています。 |
|
|
|
2006/06/01 |
|
| |
Linux on POWERにEclipseをインストールし、使用する この記事では、Eclipseのインストールと使い方の解説として、特にIBM POWERプロセッサー・ベースのシステムで実行するLinuxにEclipseをインストールし、使用する方法を学びます。また、サンプルのJava プログラムとCプログラムを通して、Eclipseを使ってアプリケーションをコンパイルし、実行する方法も学びます。 |
|
|
|
2006/05/05 |
|
| |
XMLの論考: マイクロフォーマットのパイプストリーム コンピューティングにおける最もエレガントな概念の1つは、UNIXのパイプ構造です。パイプを使用すると、あることをうまく処理できる小さなプログラムを再利用し、そのプログラムを接続して、あるプログラムからの出力を別のプログラムへの入力として送ることができます。あいにく、UNIXのパイプは、ほとんどが行指向なので、XML処理に簡単に応用することはできませんでした。この記事では、これを解決するために試されたいくつかの既存ツールをレビューします。 |
|
|
|
2006/04/25 |
|
| |
洗練されたPerl: Perl新刊ブック・レビュー パート2 今回は、システム管理に関する2冊をご紹介します。Shelley Powers、Jerry Peek、Tim O'Reilly、Mike Loukides著「Unix Power Tools」は、基本的なことをわかりやすく解説したシステム管理の必携書です。Mark Burgess著「Analytical Network and System Administration」は、理論計算機科学と数学の基礎ができている人を対象としたシステム管理の上級書です。 |
|
|
|
2006/04/13 |
|
| |
Linuxアプリケーションの64ビット・システムへの移植 64ビット・アーキテクチャーの普及に伴い、Linux ソフトウェアを64ビット対応にすることが今まで以上に重要となってきました。宣言と代入、ビット・シフト、型定義、文字列の書式設定などの際に移植性を阻む落とし穴を避ける方法を学びましょう。 |
|
|
|
2006/04/12 |
|
| |
GNUプロファイラーによるコード処理速度の向上 アプリケーション性能の向上が無駄な作業に終わることはまずありませんが、プログラム実行時にどの部分で最も時間を費やしているのかは、常に明確になっているわけではありません。gprofを使用して、ユーザー空間およびLinux のシステム呼び出しの双方において、性能のボトルネックになっている部分を突き止める方法を説明します。 |
|
|
|
2006/04/03 |
|
| |
Opensource:LinuxとXdmxを使用した分散型マルチヘッド・サポート この記事ではXdmxと簡単な構成情報を使用して、1台のデスクトップ・コンピューターと3台のラップトップPCが4つのモニターを共有するコンピューティング環境を設定していきます。また、Chromiumとギガビットのネットワーク速度を利用し、複数のマルチメガピクセル画面に対してリアルタイムの3-D画像を送信する高性能の表示構成を紹介します。 |
|
|
|
2006/03/28 |
|
| |
インタビュー: Eric Raymond基本に戻る 「The Cathedral and the Bazaar」の著者であり、今話題のHalloween Documentsを発表した人でもあるEric S. Raymondが、彼の最近の計画について語り、なぜUNIX開発者がIDEを好まないのかについて光を当てます。 |
|
|
|
2006/03/26 |
|
| |
DSL Linux: 小さな distro に詰められた大きな威力 このクイック・レビューでは極小サイズの オペレーティング・システム、DSL Linux の使用方法を説明します。また、組み込まれているアプリケーションの概要、DSL Linux のロードと起動手順、ブート可能 CD の使用時にセッション間の設定データを保存する方法についても説明します。 |
|
|
|
2006/03/22 |
|
| |
洗練されたPerl: Perl新刊ブック・レビュー パート1 今回は、Perl の解説書としてお薦めしたい優れた新刊を 2 冊ご紹介します。1 冊は、ビギナー向けに書かれた Randal Schwartz 著「Randal Schwartz's Perls of Wisdom」、そしてもう 1 冊は上級者向けの Mark Jason Dominus 著「Higher-Order Perl」です。 |
|
|
|
2006/03/15 |
|
| |
/procファイルシステムを使用したLinuxカーネルへのアクセス /procファイルシステムは、Linux のカーネル空間とユーザー空間の間での新しい通信アプローチを可能にする仮想ファイルシステムです。この記事では、/proc仮想ファイルシステムの概要と、その使用例を紹介します。 |
|
|
|
2006/03/14 |
|
| |
デュアル・ブートのLinuxシステム上でOSの切り替えを自動化する この記事で紹介するスクリプトを使用して、今お使いのマシン上でLinux とWindows の両方のOSを実行する手順を試してみてください。たとえば、複数のOSプラットフォーム上でソフトウェアをテストする場合、OSを自動的に切り替えることができれば大変便利です。 |
|
|
|
2006/03/08 |
|
| |
DB2とオープン・ソース: Google Maps API、DB2/Informix、LinuxのPHPで地図の上を歩く Google Maps APIをDB2、Informix、PHP、JavaScript、XMLとともに使用することにより、個人のデータを取り込んだ、使いやすい地図を作成することができます。自分の住んでいる地域の郵便番号を指定して、その地域のデータを見てみましょう。地図形式の変更やサイドバーの作成をしたり、カスタム・アイコンやイベント・ハンドラーを使用してみましょう。 |
|
|
|
2006/03/02 |
|
| |
DB2とオープン・ソースを使用して地図に自分の街を追加してみよう! Google Maps API を DB2、Informix、PHP、JavaScript、および XML と一緒に使用すると、独自のデータを取り込んで、使いやすい地図を作成できます。自分の郵便番号に画面をズームすると、地域固有のデータが表示されます。カスタム・アイコンを使用し、地図の種類を変え、サイドバーを作成し、イベント処理機能を使用してみましょう。 |
|
|
|
2006/03/02 |
|
| |
SCTPによるネットワーキングの向上 この記事では、Linux 2.6カーネルのSCTPの主な機能を学び、このプロトコルによるマルチストリーミング機能を実現するサーバーおよびクライアントのソース・コードを見てみます。 |
|
|
|
2006/02/28 |
|
| |
FUSEによる独自ファイルシステムの開発
FUSEを使用すると、フル機能のファイルシステムを開発することができます。そのファイルシステムでは、シンプルなAPIライブラリーを備え、非特権ユーザーもアクセスでき、セキュア実装を提供できます。また、なにより、FUSEは安定性に実績があります。
|
|
|
|
2006/02/28 |
|
| |
サービス・ロケーション・プロトコルによるクライアント管理自動化 ここでは、SLPとそのアーキテクチャーについて紹介した後、オープン・ソースの実装でこのプロトコルを使用した場合のデモンストレーションを示します。 |
|
|
|
2006/02/22 |
|
| |
「Linux on Power」用にデバイス・ドライバーを変換 ドライバーをPowerアーキテクチャーに変換する際には、いくつかの考慮事項があります。ここでは、既存のデバイス・ドライバーを「Linux on Power」用に変換する際に必要となるいくつかの詳細情報について説明します。 |
|
|
|
2006/02/13 |
|
| |
Linuxにおけるソケット機能の向上 この記事では、ソケット APIを使用してアプリケーションの機能を最大限に引き出し、GNU/Linux 環境を調整して最適な結果を得るための4つの方法について見ていきます。この記事で紹介する4つのヒントを実行すれば、最適なソケット・アプリケーションを最初から設計・開発することができます。 |
|
|
|
2006/02/03 |
|
| |
メタプログラミング技法 第2回:Schemeを使用したメタプログラミング この記事では、Schemeプログラミング言語でのメタプログラミングの技法と応用について学び、マクロのプログラミング方法と、それによって大規模なプログラミング・タスクを大幅に容易にする方法を説明します。 |
|
|
|
2006/01/26 |
|
| |
データ解析言語Rによる統計的プログラミング: 第 3 回 再利用可能なオブジェクト指向プログラミング Rは、フリー・ソフトウェアとしてリリースされている機能豊富な統計環境であり、プログラミング言語、対話型シェル、充実したグラフ機能などが含まれています。この記事では、Davidによる以前の2回の記事(Brad Hunttingとの共著)に続いて、Rのオブジェクト指向とRのその他の一般的なプログラミング概念を考察します。 |
|
|
|
2006/01/26 |
|
| |
Linuxメモリー・モデルの探究 これはLinux メモリー・モデルの概要についてのガイドです。ここでは、メモリーの構成方法と管理方法についての基礎を学習します。このガイドでは、セグメント制御ユニットとページング・モデルについて説明するとともに、物理メモリー・ゾーンについても詳しく見ていきます。Linuxで使われているメモリー・モデルを理解することは、Linuxの設計と実装について把握するための第1ステップです。 |
|
|
|
2006/01/24 |
|
| |
MD5 cryptによるLinuxでのJavaアプリの保護 UNIX/Linux PAM互換システムは、crypt()システム・コールに対するGNU MD5拡張に基づく認証を使用します。この記事では、これらの拡張を説明し、UNIX/Linuxシステムと互換性のあるMD5 cryptのJava実装を示します。 |
|
|
|
2006/01/10 |
|
| |
Windows用Linuxスクリーンセーバー Microsoft Windowsの標準的なインストール手順でインストールできて、Windowsの標準的なスクリーンセーバーとして動作するLinux LiveCDを構成し、パッケージにしてみます。この記事では、オープン・ソース・ソフトウェアについての最大の関心事に答えて、Linuxが、そう、Windowsの環境下で走ることを実証します。 |
|
|
|
2005/12/20 |
|
| |
WebSphere Application ServerV6.0 for Linux on POWERをインストールする IBM WebSphere Application Server V6.0 for Linux on POWERのインストールと構成を行い、確認します。この記事のステップでは、管理コンソールとサンプル・プログラムの使用法も説明します。また、WebSphere Application Serverに含まれている「Plants by WebSphere」という名前のJ2EETM e-コマース・アプリケーションについても調べます。 |
|
|
|
2005/12/16 |
|
| |
Linux on board:Zaurusは組み込みLinuxのパイオニア Sharp Zaurusハンドヘルドは、組み込みLinux のパイオニアであり、Linux版はすでに存在しないものの、Peter Seebachは、この初期に採用されたテクノロジーに敬意を払うのは良いアイデアであると考えています。Linux on boardシリーズの今回の記事では、PeterがZaurus SL-5600を解体して、その歴史を探ります。 |
|
|
|
2005/12/13 |
|
| |
Linux用タッチスクリーンをインストールする タッチスクリーンがカスタム・デジタル・メディア・センター(家庭用または車載用)、DVR、PVRなどのデバイス、そして家事ロボットの制御インターフェースに加わることで、バックエンドのLinuxアプリケーションが非常に使いやすくなります。この記事では、Sony PSOneのLCDのインストール、モードラインの作成、およびタッチスクリーンのインストールについて概要を述べます。すべてLinux向けです。 |
|
|
|
2005/12/06 |
|
| |
Linuxデバッギング・ツールとしてのシグナル シグナル・ハンドラーを使用してキャプチャーしたデータの解析に集中することで、デバッグで最も時間のかかる部分、すなわちバグの発見をスピードアップすることができます。この記事では、特にPPC Linuxでテストした例を交えて、Linux シグナルの背景を解説します。 |
|
|
|
2005/11/29 |
|
| |
Linux on POWERアーキテクチャー向けJava環境 この記事では、現時点で利用可能なLinux on POWER向けJava開発キット(JDK)とJavaランタイム環境(JRE)の概要を述べます。IBM eServer iSeries(eServer i5を含む)、eServer pSeries(eServer p5を含む)、eServer BladeCenter JS20、およびeServer OpenPower 上で動作するLinuxディストリビューションについて解説します。 |
|
|
|
2005/11/22 |
|
| |
Linuxをセキュアにする 第3回: システムを強化する Linuxシステムを攻撃に強くする方法を学びましょう。これには、ブート・プロセスとローカル・ファイルシステムのセキュリティー保護、サービスとデーモンのロックアップ、クォータと制限の実施、強制アクセス制御の有効化、および新しいソフトウェアでセキュリティーを更新するときに取り込まれる恐れがあるセキュリティー脆弱性の認識が含まれます。 |
|
|
|
2005/11/22 |
|
| |
オープン・ソース・ライセンシング、第2回 オープン・ソース・ライセンスは、オープン・ソース・コード普及のための法的根拠となっています。この記事では、最も人気のある2つの形式、アカデミック・ライセンスと相互(reciprocal)ライセンスについて解説し、それぞれの条件を受け入れたライセンシーの義務について述べます。 |
|
|
|
2005/11/15 |
|
| |
Linuxにおける共有オブジェクトからの同期イベントの処理 : Linux この記事では、Linuxの共有メモリーを興味深い方法で使用して、より効率的なプロセス間通信への扉を開く2つのC++設計パターンをサンプル・コードも含めて説明します。 |
|
|
|
2005/11/10 |
|
| |
Linuxでのハードウェア シミュレーションのデバッグ、第1回:割り込みと割り込みサービス・ルーチン デバイス・ドライバーを開発するとき、なぜハードウェアをシミュレートしたいのでしょうか。この記事では、この問題を解説し、それを解決するためのアプローチを提案します。 |
|
|
|
2005/11/02 |
|
| |
メタプログラミング技法 第1回: メタプログラミングとは この記事では、なぜメタプログラミングが必要なのかを説明し、メタプログラミング技法のコンポーネントについてもいくつか説明します。さらにテキスト・マクロ言語や特定コード・ジェネレータまで踏み込んで説明し、こうした言語やジェネレータの作成方法を説明します。 |
|
|
|
2005/10/20 |
|
| |
オープン・ソース・ライセンシング、第1回:目的 「オープン・ソース・ライセンス」という用語は、ソフトウェアに固有の著作権を広く、公平に、可能な限り少ない制限で許諾する多数の取り決めを指しています。2回シリーズの第1回にあたるこの記事では、著作権についての見解を述べ、オープン・ソース・ライセンスの目的を説明します。 |
|
|
|
2005/10/04 |
|
| |
Linux on POWERの動的論理パーティショニング この記事は、Linux on Powerシステム管理者またはアプリケーション開発者を対象として、Linuxで動的LPARを有効にする方法、動的LPARを使用してパーティションのリソースを制御する方法、およびこれらのリソースの変化を調べる方法を解説します。 |
|
|
|
2005/09/29 |
|
| |
プロセッサー・アフィニティーの管理 この記事では、現在のアフィニティー・メカニズムについて述べ、ハード・アフィニティーを使用する理由と方法を説明し、使用可能な機能の使い方を示すサンプル・コードを示します。 |
|
|
|
2005/09/29 |
|
| |
高性能Linuxクラスタリング、第1回:クラスタリングの基本 この2回シリーズの記事では、Linuxクラスター技術によるハイ・パフォーマンス・コンピューティング(HPC)の概念を紹介し、クラスターのセットアップ方法と並列プログラムの作成方法を示します。この第1回では、クラスターのさまざまなタイプ、クラスターの用途、HPCの基本、Linuxの役割、クラスタリング技術の成長の理由について述べます。 |
|
|
|
2005/09/27 |
|
| |
Linuxソケット・プログラミングの5つの落とし穴 Sockets APIは、ネットワーキング・アプリケーション開発のためのデファクト・スタンダードなAPIです。このAPIはシンプルですが、開発初心者が共通して経験する問題がいくつかあります。この記事では、このような最も一般的な落とし穴を説明して、それらを克服する方法を示します。 |
|
|
|
2005/09/20 |
|
| |
.NETアプリをLinux対応にするMono この記事では、Monoをシステムにインストールする手順と、LinuxとMicrosoft(R) Windows(R)の両方で動作する、Monoによってコンパイルされた初めてのサンプルC#アプリケーションを開発する手順を説明します。 |
|
|
|
2005/09/19 |
|
| |
機能強化されたPerl: PerlがUnicodeサポートを強化する : Linux Unicodeサポートを約束するPerl 6のリリースが間近に迫っていますが、Perl 5.8.6のUnicode組込機能でも、ローカル対応アプリケーションの作成を開始するには十分です。この記事では、使いなれたエディタのYuditを使用して、PerlがUTF-8エンコード方式Unicodeを読み込み、解釈、操作する仕組みを具体的に説明します。 |
|
|
|
2005/09/15 |
|
| |
Linux on board:小さなカレンダーが大きなグループウェアに挑む 今回、ピーターは彼の古いLinuxボックスを使用して、Webベースの小さな家事カレンダーを作ります。このLinux on boardシリーズで、ピーターはさまざまな種類のハードウェアでLinuxを走らせます。それには、PDAや組み込みデバイスのほか、誰もがもう使えないと思うような古びたハードウェアも含まれます。 |
|
|
|
2005/08/26 |
|
| |
ブート・ローダー対決: LILO と GRUB について ここでは、一般的なブート・ローダーの中から LILO と GRUB の 2 つの長所と短所について説明するとともに、お使いのマシンを最大限に活用するための各種設定について提案します。 |
|
|
|
2005/08/24 |
|
| |
Linux LiveCDを使用してシステムのセキュリティーを評価する 時間のかかるインストールや構成作業なしにLinux システムのセキュリティー脆弱性を評価できたら、と思いませんか?LiveCDのマジックを通じてそれを可能にする4つのパッケージ、すなわち、Auditor、Whoppix、Knoppix-STD、およびPHLAKを紹介します。 |
|
|
|
2005/07/27 |
|
| |
Linuxスクリプトで無線管理を簡単に 自社オフィスや地区の無線インターネット・サービス・プロバイダー(WISP)をセットアップするには、面倒で費用のかかる作業は必要ありません。手ごろな価格の機器でネットワークを組み、Linuxを使用すれば、シェル・スクリプトのパワーを使用してネットワーク管理を容易にできます。この記事では、必要なヒントとスクリプトについて解説します。 |
|
|
|
2005/07/19 |
|
| |
なぜFreeBSDか FreeBSDオペレーティング・システムは、フリー・オペレーティング・システムの未知の巨人です。386BSDプロジェクトから始まり、Intelチップとそのクローンを主な用途とした、きわめて高速なUNIXライクなオペレーティング・システムです。 |
|
|
|
2005/07/19 |
|
| |
Linuxでの高可用性ミドルウェア、第5回:IBM DB2 Universal Database この記事では、Linux High Availability solution for IBM DB2 Universal Databaseのセットアップと実装について解説します。これは、堅牢なオンデマンド・ビジネス・アプリケーションを構築するための柔軟で費用効果の高いデータベース・プラットフォームを提供するデータベース管理システムです。 |
|
|
|
2005/07/14 |
|
| |
Zend Core for IBM - PHP開発者のためのガイド・ツアー この記事では、IBM Cloudscape データベース・サーバーを含む業界初の統合PHP環境を使用したPHP 5環境のインストール手順を解説します。 |
|
|
|
2005/07/14 |
|
| |
Linux on board:TiVoの素顔 TiVoが「Linuxで動く」ということは、皆さん、聞いたことがあると思います。このLinux on boardシリーズでは、ピーターがTiVoにインストールされているLinuxシステムについて解説します。 |
|
|
|
2005/07/06 |
|
| |
Ruby on RailsによるWebアプリケーションの高速開発 この記事では、統合化されたすばらしいツール・セットが含まれており、あらゆる局面に対応できるRuby on Railsをご紹介しています。 |
|
|
|
2005/06/24 |
|
| |
Graphvizによるファンクション・コールの視覚化 この記事では、オープン・ソース・ソフトウェアと少量のカスタム・グルー・コードを使用して、動的でグラフィカルなファンクション・コール・ジェネレーターを作成する方法を説明します。 |
|
|
|
2005/06/21 |
|
| |
高性能なコモディティー・コンピューティングが主流に この記事では、LinuxWorld New York Summit を取材した記者が、金融サービスでの垂直市場におけるグリッドの利用の急増に関するテクノロジー・リーダーのディスカッションをレポートします。金融サービス会社がグリッドで開拓しようとしている戦略上の価値について、IBM、Novell、Globus Consortium の 3 者が論じています。 |
|
|
|
2005/06/07 |
|
| |
Perl/CGI投票システムを作る
この記事では、最小限の外部モジュールの使用を中心とし、クライアント・ベースのクッキーの使用を控え、CGI属性を利用したWebベースの投票アプリケーションという実例を紹介します。
|
|
|
|
2005/05/31 |
|
| |
x86の枠を越えた Linux 非x86で Linuxを採用すると、仮想化を手頃で簡単に実現できる、信頼性、電力消費、拡張メモリーのサポートが向上する、ローレンジとハイレンジのマシンにも対応するため、ユーザーにミドルレンジ以外の選択肢も提供できる、古いハードウェアを再活用できる、新技術を導入しやすいなどの利点があります。 |
|
|
|
2005/05/24 |
|
| |
独自のLinuxディストリビューションを作成する方法 この記事では、ソースでLinuxの基本を学び、自分専用のLinuxを作成する方法を学びます。 |
|
|
|
2005/05/24 |
|
| |
洗練されたPerl: PerlでIMAPを使う 第2回 今回は、トンネリング(「ポート転送」とも呼ばれます)とMaildirメール格納形式へのスクリプトの適用を紹介します。 |
|
|
|
2005/05/19 |
|
| |
PLAM の使用による分散トランザクションの高速化 この記事では、クライアントとサーバーの間でやり取りされる冗長なオーソリゼーション情報を PLAM を使って削減する方法について説明します。 |
|
|
|
2005/05/18 |
|
| |
囲い込まれた分散データを支援するOpenAFS 次世代のNFSライクなファイル・システムが、頭の痛いデータ問題の解答となるかもしれない |
|
|
|
2005/05/17 |
|
| |
Solarisからx86の Linuxへの移植ガイド この移植ガイドでは、Linux/x86への移行計画に関するアドバイスのほか、開発環境やアーキテクチャの違いについても説明します。 |
|
|
|
2005/04/29 |
|
| |
Irving Wladawsky-Berger:IT におけるオポチュニティーと課題 IBM のバイス・プレジデントである Irving Wladawsky-Berger 氏は、コンピューティングの未来に対する自分のビジョンを推し進めてきました。サンフランシスコで開催された「2005 年 Open Source Business Conference」から、Wladawsky-Berger 氏の基調講演をレポートします。 |
|
|
|
2005/04/26 |
|
| |
災害がVMwareを襲うとき この記事では、問題を探す場所と解釈の方法など、システム障害についていくつかのガイドを述べ、修正に関する疑問に答えます。 |
|
|
|
2005/04/14 |
|
| |
inotify で Linux ファイル・システムのイベントを監視 inotify は、近々発表される Linux カーネルに組み込むためのファイル・システム・イベント監視メカニズムで、dnotify に代わる効果的なメカニズムとして設計されたものです。 |
|
|
|
2005/04/12 |
|
| |
グリッドの視点 : 企業におけるオープン・ソース・グリッドの方向性 Tuecke 氏は、IBM developerWorks の読者にとって興味深い見解の一端を披露してくれました。その内容は、グリッド・デベロッパーのための技術的アドバイスから、グリッドの用途を e-サイエンスから企業の領域へと広げる際に生じる特有の問題点に関する広範なテーマに至るまでの、多岐にわたっています。 |
|
|
|
2005/04/05 |
|
| |
高階関数 この記事では、実行時にテンプレートに基づいて新しい関数を作成する方法、関数パラメーターを使用して実行時に構成可能な関数を作成する方法、および関数によってScheme言語を貴重なツールにする方法を学びます。 |
|
|
|
2005/03/31 |
|
| |
洗練されたPerl: 複雑にレイヤー化した構成とAppConfig
XMLやYAMLのようなデータ・フォーマットを使う代わりに、少し手間をかけ、AppConfigを変えるだけで、マルチレベルのハッシュを作る複雑なコマンドライン・スイッチを処理できるのです。
|
|
|
|
2005/03/31 |
|
| |
Linux での Bugzilla を使用したバグの追跡 この記事では、Linux システムに Bugzilla をインストールするための段階的なガイドを示します。 |
|
|
|
2005/03/18 |
|
| |
Xenでのひととき: 仮想化したLinuxでアプリケーションをテストする この記事では、Fedora Coreを使ってXenをインストールする方法を説明します。 |
|
|
|
2005/03/15 |
|
| |
Linuxでの高可用性ミドルウェア、第4回:IBM WebSphere Application Server この記事では、WebSphere Application Serverの高可用性構成を構築するためのステップ・バイ・ステップの手順を説明します。 |
|
|
|
2005/03/10 |
|
| |
洗練されたPerl: データベース・テーブルにPerlを埋め込む 今回の記事では、Class::DBI CPANモジュールとMySQLを使って、データベース・テーブルにPerlを埋め込む方法を紹介します。 |
|
|
|
2005/03/09 |
|
| |
Linuxでの高可用性ミドルウェア、第3回: IBM LoadLeveler
ここではLoadLevelerに組み込みの高可用性機能を使ってLoadLevelerクラスターの高可用性を実現する方法、そしてオープン・ソースの高可用性ソフトウェアを使って、それをさらに強化する方法について学びます。
|
|
|
|
2005/02/28 |
|
| |
coLinuxとopenMosixで異機種混合のクラスターを構成する この記事では、coLinuxとopenMosixを組み合わせることによって、異機種混合環境においてハイ・パフォーマンスのクラスター・ミドルウェアを構築する方法について学びます。 |
|
|
|
2005/02/01 |
|
| |
eServer OpenPower 710によるクラスタリング
この記事では、64ビット POWER5アーキテクチャーを採用したIBM eServerOpenPower
710上でLinuxクラスターを構築するための、基本的なクラスタリング要素とソフトウェア・ツールを紹介します。
|
|
|
|
2005/01/25 |
|
| |
安全なシグナル処理のために再入可能ファンクションを使う この記事ではコード・サンプルを通じて、特に信号に関して確実に再入可となっていない場合に、どのような異常事態が発生するかを学びます。 |
|
|
|
2005/01/20 |
|
| |
共有ライブラリーを解剖する この記事では、通常のLinuxシステムの /usr/libに、なぜあれほど多くのシンボリック・リンクがあるのか、裏に隠れた真相を探ります。 |
|
|
|
2005/01/11 |
|
| |
効果的なリスト処理でプログラミングを改善する この記事では、リンク・リストを拡張し、任意のデータ型を扱えるようにするといった、データ処理用の強力なツールを作成するプロセスを検証します。 |
|
|
|
2005/01/05 |
|
| |
ClusterKnoppixで負荷分散クラスターを作る この記事では、KnoppixベースのLiveCDを使用して負荷分散Linuxクラスターを構成する方法を解説します。 |
|
|
|
2004/12/22 |
|
| |
エミュレーターで扱いやすいLinuxコードを書く この記事ではエミュレーターとは何をするのかを知り、ハードウェア・エミュレーションやソフトウェア・エミュレーションに関わる問題を詳しく見て行きます。 |
|
|
|
2004/12/21 |
|
| |
セキュアなプログラマー: 安全にコンポーネントを呼ぶ この記事では、他のコンポーネントへのコールを悪用した攻撃から防御する方法を解説します。 |
|
|
|
2004/12/16 |
|
| |
Linuxでの高可用性ミドルウェア、第2回: WebSphere MQ 今回は、システムが動作不良となった場合のフェールオーバー機能を持たせるために、ハートビート・クラスターにIBMWebSphere MQメッセージング・ミドルウェアをインストールし、設定する方法を学びます。 |
|
|
|
2004/12/09 |
|
| |
容易な統合開発のためにXAMPPをインストールする この記事では、Mandrake Linux10.0にXAMPPをインストールし、設定し、バックアップする方法と、XAMPPの設定管理方法、またXAMPP環境に自分のアプリケーションをインストールする方法について学びます。 |
|
|
|
2004/11/30 |
|
| |
メモリー管理の内側 この記事では、Linuxプログラマーに使用可能なメモリー管理手法の概要を理解します。 |
|
|
|
2004/11/16 |
|
| |
Linuxをセキュアにする 第2回: インストールを計画する
第2回目の今回は、インベントリー調査、リスク解析、ユーザー・カテゴリーとアクセス権限の特定などを説明します。
|
|
|
|
2004/11/11 |
|
| |
洗練されたPerl: Perl 6文法と正規表現 この記事では、Perl5で現在使用できるParse::RecDescentモジュールと比較しながら、皆さんをPerl 6の文法と正規表現の案内ツアーにご案内します。 |
|
|
|
2004/11/02 |
|
| |
Perlを最適化する この記事では、最適化の鍵となる領域や、どんなソリューションが有効で、どんなソリューションが無効なのか、最適化とスピードを念頭に置いてアプリケーションの構築と拡張を継続するためにはどうすべきか等を見て行きます。 |
|
|
|
2004/10/19 |
|
| |
洗練されたPerl: 遺伝的アルゴリズムで多細胞の有機体をシミュレート 遺伝的アルゴリズムの第3回である今回は、Tedが前回の続きとして、多細胞の有機体をどのようにシミュレートするかを説明します。 |
|
|
|
2004/10/13 |
|
| |
Linuxでの高可用性ミドルウェア、第1回: HeartbeatとApache Webサーバー 今回はソフトウェアの高可用性とはどのようなものか、またHigh-Availability Linuxプロジェクトのheartbeatソフトウェアを2ノードのシステムにインストール、設定するにはどうすべきかについて学びます。 |
|
|
|
2004/10/12 |
|
| |
データ解析言語Rによる統計的プログラミング: 第 2 回 機能プログラミングとデータ操作 この記事では、3回シリーズの第2回としてRの紹介します。前回の記事でデータが整ったので、今回はこの言語の機能に入り込みます。 |
|
|
|
2004/10/07 |
|
| |
セキュアなプログラマー: 競合状態を防ぐ この記事ではUNIXライクのシステムで起こりがちな競合状態への対処方法として、ロック・ファイルを正しく作る方法やロック・ファイルに代わる方法、そして、/tmpディレクトリーで一時ファイルを正しく作るにはどうすべきか、等について説明します。 |
|
|
|
2004/10/07 |
|
| |
洗練されたPerl: Ionウィンドウ・マネージャーで遊ぶ アプリケーションがデスクトップに開くウィンドウを管理するための、強力で簡単なプログラム、Ionウィンドウ・マネージャーを見てみましょう。 |
|
|
|
2004/09/29 |
|
| |
データ解析言語Rによる統計的プログラミング: 第 1 回 豊富な統計機能で遊ぶ 3回シリーズの第1回として、無料のソフトウェアとしてリリースされており、機能豊富な統計環境であるRを紹介します。 |
|
|
|
2004/09/21 |
|
| |
アプリケーションのビルドと配布のプロセスを自動化する この記事では、アプリケーションのビルドと配布のための構造をいかに構築するか、また手動であれ自動的にであれ、できる限り単純に、何台ものマシンに対してアプリケーションを配布する方法について説明します。 |
|
|
|
2004/09/14 |
|
| |
iPAQでLinuxを実行する この記事ではHP-CompaqのPDAであるiPAQに、ターボチャージャーとしてLinuxを載せる方法を説明します。 |
|
|
|
2004/09/09 |
|
| |
Lexとyaccでコードをビルドする 第2回: 開発とトラブルシューティング 第2回目の今回は、もう少し進んだlex/yacc開発を取り上げ、また基本的なトラブルシューティング手法を紹介します。 |
|
|
|
2004/08/24 |
|
| |
ccacheを使って共同作業のビルド時間を改善する この記事ではccacheのビルド方法とインストール方法、またccacheを既存の環境でどのように使うか、さらにグループでの開発プロジェクトでビルド時間をいかに短縮するかについて説明します。 |
|
|
|
2004/08/24 |
|
| |
Kprobesによるカーネルのデバッグ Kprobesを2.6カーネルと組み合わせることによって軽量で影響を与えない強力な機構ができ、printkを動的に挿入できるようになります。 |
|
|
|
2004/08/19 |
|
| |
Lexとyaccでコードをビルドする 第1回: 導入 この記事は2回構成の第1回として、lexやyaccがどんなことをするものなのかを説明し、またこれらを使って簡単な作業を行う方法を紹介します。 |
|
|
|
2004/08/11 |
|
| |
高度なPerl/Tkウィジェットを使う
GUIプログラミングやプロトタイピングにも、Perlはもっと頻繁に使われてしかるべきだと考えられます。Perl/Tkに用意されている、より複雑なウィジェットの幾つかをこの記事で読んでみると、その理由がわかるでしょう。
|
|
|
|
2004/08/10 |
|
| |
D-BUSを使用してデスクトップ・アプリケーションを接続 この記事では、D-BUSとは、Linux デスクトップに深く関与することが約束されているメッセージ・バスであり活性化のシステムです。その誕生の理由、用途、そして将来性について学べます。 |
|
|
|
2004/07/27 |
|
| |
Linuxをセキュアにする 第1回:序論 今回はシリーズ最初の記事として、Linuxベースのインストールをセキュアかつ強固にする方法について説明します。 |
|
|
|
2004/07/20 |
|
| |
FireWireのデバイスからLinuxをブート 外部ドライブの追加は、老朽化したハードウェアに新たな命を吹き込む妥当な手段であり、内蔵ドライブの変更を出来ないマシン上でのLinuxの利用を可能にします。 |
|
|
|
2004/07/15 |
|
| |
洗練されたPerl: Linuxコンフィギュレーション・ファイルを管理する 平均的な開発者はコンフィギュレーション・ファイルを理解したりデバッグしたり、動くようにしたりするために思った以上に時間を費やしているものですが、CVSツリーでそれらの時間を節約することができるのです。 |
|
|
|
2004/07/10 |
|
| |
Linuxカーネルのストレス・テスト ソフトウェアのテストを自動化することにより、同一のテストを一定期間に渡って行うことができるようになります。また自動化によって同じ種類のテスト結果を比較することで、確実に正確な評価ができるようになります。 |
|
|
|
2004/06/30 |
|
| |
distccでコンパイル時間を削減する
この記事では、distccについて説明します。分散コンパイラーを使えば高速なコンパイルと高速なアプリケーションが同時に得られますが、そのために必要なのがdistccなのです。
|
|
|
|
2004/06/22 |
|
| |
セキュアなプログラマー: 特権を最小限にとどめる この記事では特権の制限のために特権モジュールや許可される特権を最小化する方法、また特権が有効となっている時間を最小限にとどめる方法について説明します。 |
|
|
|
2004/05/20 |
|
| |
洗練されたPerl: Perlに関する重要な3冊の本 今回の記事ではPerlのコーディングに関する3冊の本を取り上げ、それぞれの本がとりあげている重要な情報の要約と、新しい版ではどのように更新されているかを紹介します。 |
|
|
|
2004/05/13 |
|
| |
Linuxで使用する共有オブジェクト この記事では、C++の専門技術について論じ、オブジェクト指向の高い者達が他に類を見ない程に使い勝手の良いプロセス間通信チャネルをどのように活用出来るかを説明します。 |
|
|
|
2004/05/11 |
|
| |
Kexecを使ってLinuxの起動を早める Kexecとは高速リブート機能で、bootloaderを通らずに新しいLinuxカーネルのリブートを可能にしてくれるものです。 |
|
|
|
2004/05/04 |
|
| |
C99を使ったオープンソース開発 この記事では、LinuxやBSDシステムで使用可能な新しい機能に焦点を当てながら、1999年版のISO C標準について説明します。 |
|
|
|
2004/04/24 |
|
| |
POWER アーキテクチャー開発者用ガイド スーパーコンピューター、ゲーム機、サーバー、そして携帯電話などでPOWERプロセッサーは活躍しており、全てが共通のアーキテクチャーから形成されています。 |
|
|
|
2004/03/30 |
|
| |
PowerでLinux開発者を強化する この記事は皆さんのコードとPOWERプラットフォームを最大限に利用するために必要な知識や、ツールの使い方について説明します。 |
|
|
|
2004/03/30 |
|
| |
DSFを使ってデバイスをシミュレートする DSFを使うと他の方法ではシミュレートしたり再生成したりするのが難しいデバイス・コードのデバッグやチェックが簡単になるのです。 |
|
|
|
2004/03/23 |
|
| |
コマンドラインからのグラフィックス操作 第2回 今回は画像のコーナーに丸みをつけたりロゴを追加したり、画像に枠や境界を追加したり、複数ページに渡るファイルを、フォーマット変換する方法について説明します。 |
|
|
|
2004/03/16 |
|
| |
Perlモジュールの展開を自動化する この記事では、最終システムをまとめる前に応用可能な解決手段を提案します。 |
|
|
|
2004/03/08 |
|
| |
カーネル比較: 2.6カーネルでのネットワーク機能の改善 この記事では、新しいLinuxカーネルで行なわれる多くの領域の改善が、Linuxをよりセキュアに、また企業対応にしようとするユーザーの努力に対して、どのような影響を与えるかについて説明します。 |
|
|
|
2004/03/03 |
|
| |
カーネル比較: 2.6カーネルで改善されたメモリ管理 この記事では、2.6 Linuxカーネルのリバース・マッピング、メモリ・ページの大型化、ページテーブル・エントリーを高位メモリに保存する手法、より安定になったメモリ・マネージャなどについて概要を説明します。 |
|
|
|
2004/03/03 |
|
| |
カーネル比較: 2.4から2.6へのカーネル開発における改善
長く待たれていた2.6カーネルが遂に登場しました。2.6カーネルの背後にあるツールやテスト、手法などによって2.6カーネルはそれ以前のどれよりも良いものとなりました。
|
|
|
|
2004/02/17 |
|
| |
カーネル比較: 2.4と2.6でのWeb処理 この記事ではIBM Linux Technology Centerが行ったWeb処理に関するテストの結果を紹介しながら、Linux 2.4と2.6カーネルを様々な面から比較します。 |
|
|
|
2004/02/10 |
|
| |
洗練されたPerl: MP3とPerlで遊ぶ、第2回 今回は前回に続き、PerlやFreeDB、各種CPANモジュールでMP3タグを操作・推測する方法の解説を続けます。 |
|
|
|
2004/01/27 |
|
| |
セキュアなプログラマー: バッファー・オーバーフローに対抗する この記事ではLinux/UNIXシステムでの最大の脆弱性、バッファー・オーバーフローに関して説明します。 |
|
|
|
2004/01/27 |
|
| |
GNOME用の上級UI設計
IBMの開発者Vladimir Silvaが彼の技能と情熱を、また彼が修正したSimpLIstic
sKinインターフェース(またはSLIK)用のコードを読者と共有します。
|
|
|
|
2004/01/20 |
|
| |
セキュアなプログラマー: 入力に目を光らす
この記事では、データがプログラムに到達するまでの各種経路について、どうすればそうした経路を適切に扱えるかに重点を置きながら説明します。
|
|
|
|
2003/12/19 |
|
| |
configureをデバッグする この記事では、自動設定スクリプトが動かなかった時には・・開発者として失敗を最小限にとどめるには・・どうすべきかを説明します。 |
|
|
|
2003/12/04 |
|
| |
WindowsからLinuxへのロードマップ: 第9回 ソフトウェアのインストール 最終回の今回はソフトウェア・パッケージをダウンロードしてコンパイルする方法を学び、自動パッケージ・マネジメントの長所短所について議論します。またRPMシステムについても理解します。 |
|
|
|
2003/11/11 |
|
| |
WindowsからLinuxへのロードマップ: 第2回 コンソール集中コース 今回は各種のシェルと、Linuxコマンドのうち最も重要なもののいくつかを説明します。 |
|
|
|
2003/11/11 |
|
| |
WindowsからLinuxへのロードマップ: 第8回 バックアップと復元 今回は、システムに入っているものを保管します。復元とセキュリティを考慮した定期的なバックアップをどのように計画し、実行するかを説明します。 |
|
|
|
2003/11/11 |
|
| |
WindowsからLinuxへのロードマップ: 第5回 Linuxでのロギング 今回の記事では、セキュリティ面と情報源としての面からログの追跡や操作、置き換えについて説明します。 |
|
|
|
2003/11/11 |
|
| |
WindowsからLinuxへのロードマップ: シリーズの概要 IBM eビジネス・アーキテクトであるChris Waldenが、9回のdeveloperWorksシリーズで読者の運用スキルをWindows環境からLinux環境へ移行する道案内をしていきます。 |
|
|
|
2003/11/11 |
|
| |
WindowsからLinuxへのロードマップ: 第7回 ネットワーキング
今回はLinuxが最高に力を発揮する部分である、ネットワーク関連の機能に関して説明します。
|
|
|
|
2003/11/11 |
|
| |
WindowsからLinuxへのロードマップ: 第1回 Linuxで考える
読者の運用スキルをWindows環境からLinux環境へ移行する道案内をしていきます。今回はまず、LinuxとWindowsの相違点と類似点を調べ、どうしたら何度も再起動を繰りかえさずにすむかを学びます。
|
|
|
|
2003/11/11 |
|
| |
WindowsからLinuxへのロードマップ: 第4回 ユーザー管理
今回はWebminインターフェースとコマンドラインの両方を使って、ユーザーとグループの追加と削除の仕方を見て行きます。
|
|
|
|
2003/11/11 |
|
| |
WindowsからLinuxへのロードマップ: 第3回 Webmin入門
今回はWebminをインストールし、その使い方を紹介します。Webminはブラウザ・ベースの管理ツールで、これを使うことでLinux等のプラットフォームでの管理・運営業務がグラフィカルなインターフェースから行えるようになります。
|
|
|
|
2003/11/11 |
|
| |
WindowsからLinuxへのロードマップ: 第6回 パーティションとファイルシステムを扱う
今回はLinuxの階層ディレクトリ構造について説明し、またデバイスのマウントについて調べます。
|
|
|
|
2003/11/11 |
|
| |
セキュアなプログラマー: 入力を検証する この記事では、セキュアなプログラムにおいての第一防御線の一つ、入力検証をどうすべきかについて説明します。 |
|
|
|
2003/10/23 |
|
| |
洗練されたPerl: PerlでのInversionリスト 今回Ted氏は、彼が作成しCPANネットワークに置いたPerlのinversionリストについて解説をし、さらに、ビット文字や正常なデータの圧縮にinversionリストを使用する方法について説明します。 |
|
|
|
2003/10/08 |
|
| |
Linux 2.6へ ここではコード・サンプルを挙げながら、次期新カーネルの新しくなった部分を大小取り混ぜ、いくつか見ていこうと思います。 |
|
|
|
2003/09/23 |
|
| |
洗練されたPerl: MP3とPerlで遊ぶ、第1回 この記事ではTedがautotag.plアプリケーションを使ってMP3を管理操作(検索、タグ付け、リネーム、コメント付け等)する方法を見て行きます。 |
|
|
|
2003/09/09 |
|
| |
Perl/Tkを利用してのデータのビジュアル化 この記事では、カスタムなプロッティングやグラフ表示ツールを簡単に構築できるPerl向けの標準GUIツールキットであるPerl/Tkの使用方法について説明いたします。 |
|
|
|
2003/08/27 |
|
| |
プログラミング改善への道: 第12回 perledit: sectionによるファイル編集 この連載では、Ted氏がcfengineのインタープリタをPerlで記述するというcfperlプロジェクトの開発を進めてきており、今回は、Perlベースのファイル編集の追加を行います。 |
|
|
|
2003/08/20 |
|
| |
サーバー・クリニック: データとの格闘にはRが便利 Rは統計計算管理のための、高度なオープン・ソース・ソフトウェアです。非常に簡単に使えるので、ごく一部の機能しか必要がない場合でも使うだけの価値があります。 |
|
|
|
2003/07/30 |
|
| |
Linuxでワイヤレス・アクセスポイントを構築する 独自の管理ソフトウェアを書いたり変更したりできるようになるのが目標なら、ワイヤレス・アクセスポイントをカスタム構築するのがお勧めです。 |
|
|
|
2003/07/22 |
|
| |
コマンドラインからのグラフィックス操作
本稿では、1度に1つでも100個でも、たくさんのフォーマットにサイズ設定、回転、変換などのイメージ操作を行うことができるLinuxツールキットであるImageMagickスイートについて解説をいたします。
|
|
|
|
2003/07/16 |
|
| |
サーバー・クリニック: SSHでの安全な接続 みなさんは間違いなくリモートサイトからサーバーで動作するSSHを使用したいと思われることでしょう。しかし、スムーズに進行させていくにはいくつかの秘訣があります。 |
|
|
|
2003/07/10 |
|
| |
Debian Linuxパッケージを作成する この記事は、全ての必要なパッケージのコンポーネントを示し、それらをまとめて最終製品に仕上げる方法を提示します。 |
|
|
|
2003/07/10 |
|
| |
洗練されたPerl:PerlでIMAPを使う 今回Tedが紹介してくれるのは、Mail::IMAPClient CPANモジュールでIMAPにアクセスする方法です。 |
|
|
|
2003/06/19 |
|
| |
魅力的なPython: itertoolsモジュールの中で組み合わせ関数を使う 本稿は、あなたに組み合わせのiteratorsで利用可能な表現力にまつわる斬新なセンスを与えることでしょう。 |
|
|
|
2003/06/12 |
|
| |
プログラミング改善への道: 第11回 cfperlでのCrontab管理 今回の記事では、crontabエントリーを簡単に追加、削除することのできる「cron」セクションについて説明します。 |
|
|
|
2003/06/12 |
|
| |
Linuxカーネル・デバッガー内部 この記事では、KDBによって提供される機能の使用方法、およびLinuxマシンにKDBをインストールしセットアップする方法を学習していくこととします。 |
|
|
|
2003/06/05 |
|
| |
サーバー・クリニック: Linuxでレガシー・オペレーティング・システムをエミュレートする Linux上では、さまざまなオペレーティング・システムのエミュレーションが利用可能になっています。アカデミックな教室の環境にとどまらず、これらの「ホストOS」は企業のサーバー環境においても現実的な投資となります。 |
|
|
|
2003/06/05 |
|
| |
Linux上にLSID認定システムを構築する ここでは、ごくわずかなデータ・セットを用いたシステムやたんぱく質配列データベースSwiss-Protからダウンロードしてきたデータを用いたシステムをLinuxのプラットフォームに構築します。 |
|
|
|
2003/05/27 |
|
| |
サーバー・クリニック: 上手な例外の書き方 この記事では、プログラムで何をスローし、キャッチすべきなのかについてCameron氏が実際的なアドバイスを紹介してくれます。 |
|
|
|
2003/05/22 |
|
| |
プログラミング改善への道: 第10回cfperlでのユーザー管理 IBM, IBM Japan, e-business,日本IBM,e-business on demand,ThinkPad,ホームページビルダー |
|
|
|
2003/05/15 |
|
| |
Linuxを即席で管理する Linuxを即席で管理する,/procファイルシステムを使ってシステムを管理する |
|
|
|
2003/05/14 |
|
| |
サーバークリニック:仮想ファイルシステムを動かす
ファイルシステムでないものをファイルシステムとして表現する。仮想ファイルシステム(VFS)の思いがけない強力な働きについて紹介します。
|
|
|
|
2003/04/29 |
|
| |
LinuxでCDを焼く Linuxには、CDを作成するための強力で柔軟性の高いツールが用意されています。この記事では、mkisofs と cdrecord を紹介します。 |
|
|
|
2003/04/23 |
|
| |
Eclipse Platformを使用したC/C++ 開発 この記事では、Eclipseで使用可能な最も優れたC/C++ ツールキットであるC/C++ Development Toolkit (CDT) の使用方法を学習します。 |
|
|
|
2003/04/22 |
|
| |
インタビュー: SambaをPOSIXより広い世界へ developerWorksでは、IBMでの開発作業、Samba 3.0の現状、およびsmbdの書き換えについての考えをSambaの開発者Andrew Tridgell氏に伺いました。 |
|
|
|
2003/04/16 |
|
| |
Linuxのパフォーマンスをよくしよう 皆さんがアプリケーション開発を行う際に起こりそうなパフォーマンス関係のいろいろな問題について、ちょうど良いお手本となる例をいくつかまとめてご紹介します。 |
|
|
|
2003/04/10 |
|
| |
ヒント: uniqを使って、重複する行を削除する 多くの場合、重複する行があっても問題とならないのですが、ときどきそれが問題となることがあります。uniq コマンドを使って、そのためのフィルターを作成するのに時間と手間を節約する方法を解説します。 |
|
|
|
2003/04/03 |
|
| |
プログラミング改善への道: 第9回 クラスとデフォルト・パーサー cfengineインタープリターをPerlで記述するというcfperlプロジェクトの開発をトップ・ダウン方式で進めていきます。本稿では、グループとクラス、および未知の入力を処理する方法について説明します。 |
|
|
|
2003/04/03 |
|
| |
LinuxのJavaサービスに対する安全性を高める この記事では、Javaサーバー・テクノロジーはLinuxになじむテクノロジーであるという持論を展開した後、LinuxにTomcatのJavaサーブレット・エンジンを「安全に」セットアップするためのヒントを紹介します。 |
|
|
|
2003/04/01 |
|
| |
魅力的なPython: 多重ディスパッチ この記事では、Pythonでの多重ディスパッチの実装方法を紹介するとともに、それによってプログラムを改良できる例をいくつか示します。 |
|
|
|
2003/03/20 |
|
| |
サーバー・クリニック: Fortran、Linux環境でくつろぐ この記事では、LinuxにおけるFortranの重要性の意味や、さらに詳しく研究するための方法を簡単に紹介します。 |
|
|
|
2003/03/19 |
|
| |
洗練されたPerl: ワンライナー102 この記事では、指定した範囲内の行の表示からファイルの中身の逆順表示まで、Perlの簡潔な1行スクリプトを使い、わずかなコードでたくさんのことを行う方法について紹介します。 |
|
|
|
2003/03/12 |
|
| |
ヒント: trを使ってファイルをフィルターにかける sedの一番基本的な機能の多くは、trを使えば、非常に簡単に手に入れることができます。この記事では、その方法を紹介します。 |
|
|
|
2003/03/12 |
|
| |
PythonでGObjectをラップする この記事では、CでコーディングされたGObject をラップして、Pythonのコードから利用できるようにする方法を説明します。 |
|
|
|
2003/03/11 |
|
| |
プログラム改善への道: 第8回 トップ・レベル・パーサーと複合クラス・パーサー 今回解説するのは、cfperlのトップ・レベル・パーサーと複合クラス・パーサーの働きについてです。パーサーの果たす重要な役割をわかりやすく解説します。 |
|
|
|
2003/03/06 |
|
| |
ヒント: sortとtsortを使ってファイルを並べ換える sort と tsort を使って、時間を節約し、頭痛の種を解消しましょう。PerlやAwkを利用した複雑な解決策に頼る必要はありません。この記事では、その方法をお教えします。 |
|
|
|
2003/03/06 |
|
| |
PixieによるPerlの永続性管理 Pixieモジュールは、Perlプロジェクトとリレーショナル・データベースとのインターフェースに独自の手法を採用しています。スキーマを捨て、柔軟性を高めているのです。 |
|
|
|
2003/03/04 |
|
| |
魅力的なPython: 宣言型ミニ言語の作成 この記事では、Pythonコードそのものを一連の宣言型の要素に制限することで有効な使い方ができるという点を解説します。 |
|
|
|
2003/02/27 |
|
| |
Pythonでのメタクラス・プログラミング メタクラスを利用して、いろいろなタイプの「アスペクト指向プログラミング」が可能にし、たとえば、トレース機能、オブジェクトの永続性、例外の記録などなど、いろいろな機能を付加してクラスを拡張しましょう。 |
|
|
|
2003/02/26 |
|
| |
Stowを使ってのパッケージ管理 この記事では、Linux向けソフトウェア・インストール管理ユーティリティーのひとつで、Red HatやDebianの実証済みのパッケージ管理システムに比べても数多くの利点を備えているStowについて解説します。 |
|
|
|
2003/02/20 |
|
| |
QtとPyQt 本稿では、PythonからQtの機能にアクセスできるようにするためのPyQtバインディングに焦点を当てながら、Qtライブラリーについて解説します。 |
|
|
|
2003/02/11 |
|
| |
プログラミング改善への道: 第7回 トップ・レベルの制御フローと構成 この記事では、Perlでcfengineインタープリターを記述するというcfperlプロジェクトのトップ・ダウン型開発の話を続けます。まずは、制御フローと構成処理からです。 |
|
|
|
2003/02/05 |
|
| |
Knoppixがディスク1枚でブート可能なLinuxを実現 Knoppixが、非常に便利な特化したLinuxディストリビューションを、1枚でブート可能なCD-ROMにパッケージ化しました。 |
|
|
|
2003/02/04 |
|
| |
Knoppixがディスク1枚でブート可能なLinuxを実現 Knoppixが、非常に便利な特化したLinuxディストリビューションを、1枚でブート可能なCD-ROMにパッケージ化しました。 |
|
|
|
2003/02/04 |
|
| |
プログラミング改善への道: 第6回 1から始めるcfperlの作成 この記事では、新しいコーディング・プロジェクトに着手します。cfengineのインタープリターcfperlをPerlで記述するというプロジェクトです。 |
|
|
|
2003/01/01 |
|
| |
洗練されたPerl: タイ変数 (Tied variables) この記事では、変数のタイの基礎を解説します。具体的にCPANモジュールを例として取り上げ、その使い方や実装を示しながらの解説です。スカラー変数、配列変数、ハッシュ変数の例を紹介します。 |
|
|
|
2003/01/01 |
|
| |
サーバー・クリニック: アプリケーションのクロス生成のためのXmingwin Xmingwinは、LinuxサーバーでのWindowsプログラムの開発を現実的なものとします。このコラムでは、Xmingwinのセットアップ方法を解説するとともに、そのようにすることの最も重要な理由をいくつかまとめます。 |
|
|
|
2003/01/01 |
|
| |
ハイパー・スレッド処理でLinuxを高速化 IntelのXeonプロセッサーに、ハイパー・スレッド処理 (HT: Hyper-Threading) という新しいテクノロジーが導入されました。Xeonプロセッサーは、それぞれのプロセッサーで同時に並行して複数のスレッドを実行できるようになり、性能を格段に向上させることができます。 |
|
|
|
2003/01/01 |
|
| |
サーバー・クリニック: サーバー上のRTF 豊富にあるオープン・ソースのツールを使えば、Microsoft Wordの .DOC フォーマットの内容の管理も自動化できます。 |
|
|
|
2002/12/01 |
|
| |
魅力的なPython: 複雑なモデルをシンプルにするSimPy 本稿で紹介するのは、離散的事象システムのモデルを非常に簡単に作成するための、SimPyというPythonパッケージについてです。 |
|
|
|
2002/12/01 |
|
| |
Pythonイントロスペクション入門 本稿では、最も基本的な形態であるヘルプから、より高度な形態の調査まで、Pythonのイントロスペクションの数多くの機能を、実例を示しながら紹介します。 |
|
|
|
2002/12/01 |
|
| |
RPMによるソフトウェアのパッケージング: 第2回 今回は、ルートとして実行することなくソフトウェアをパッケージする方法、Linuxでビルドするために一部を変更しなければならないソフトウェアを処理する方法、成果物を配布する方法について説明します。 |
|
|
|
2002/12/01 |
|
| |
生物科学におけるオープン・ソース 生物科学と生物情報科学におけるオープン・ソースの利用は、これから大いに成長する分野です。生物情報科学で最も重要な意味をもつことになる専門的なソフトウェアの開発が、いくつか進められています。 |
|
|
|
2002/11/01 |
|
| |
SashXBがLinuxにミニRADをもたらす 本稿では、SashXBの開発者がその内部的な働きを解説し、アプリケーションの開発、ダウンロード、インストールをSashXBによって簡略化する方法を紹介します。 |
|
|
|
2002/11/01 |
|
| |
ヒント: headとtailを使って、テキスト・ストリームを切り分けて読む 今回の紹介するのは、head と tail の2つのコマンドです。これらのコマンドは、静的なファイルであろうと動的なファイルであろうと、データを一定量に切り分けて処理してくれます。 |
|
|
|
2002/11/01 |
|
| |
UnitedLinuxの紹介 この記事では、新しい統一プラットフォームであるUnitedLinuxについて紹介します。これはLinuxベンダー4社が、その専門的な技術を提供し合って、標準に基づいたコアとなる単一のLinuxオペレーティング・システムを提供するために、共通版を作成したものです。 |
|
|
|
2002/11/01 |
|
| |
Pythonでの永続性管理 この記事では、リレーショナル・データベースからPythonのピクルなどまで、Pythonオブジェクトの永続性のメカニズムについて、また、Pythonのオブジェクト・シリアライゼーション機能についても説明します。 |
|
|
|
2002/11/01 |
|
| |
共通テーマ: アドバンスト・ファイルシステム・インプリメンター・ガイド 第13回 このシリーズも今回で最終回となりました。この記事では、EVMSのncursesベースの管理ツールである evmsn を利用し、新しいハードディスク・ドライブにパーティションを設定して、その上にLVMボリュームを作成する方法を紹介します。 |
|
|
|
2002/11/01 |
|
| |
サーバー・クリニック: Perl/Tkを使ってサーバー・プログラミングにGUIを取り入れる Perl/Tkの新リリースは、高品質で使い方の簡単なGUIもあることを思い出させてくれます。 この記事では、軽量のGUIを使って、現在使われている機能を簡単にラップする方法を紹介します。 |
|
|
|
2002/11/01 |
|
| |
研究室におけるオープン・ソース 科学や工学の研究室では、昔から日常のデータ解析作業に独占的(Proprietary)である製品を利用してきましたが、現在では、数多くの研究室が、従来の製品では得られない技術的な利点を求めて、オープン・ソースの製品や開発言語に目を向けつつあります。 |
|
|
|
2002/10/01 |
|
| |
共通テーマ: アドバンスト・ファイルシステム・インプリメンター・ガイド 第12回 今回紹介するのは、Linux用のエンタープライズ・ボリューム管理システム(EVMS)です。EVMSとはどういうものなのか、EVMSがそれほど必要とされるのはなぜなのか、EVMSがLinuxシステムでのストレージの管理方法を変えてしまいそうなのはなぜなのか、ということを説明します。 |
|
|
|
2002/10/01 |
|
| |
サーバー・クリニック: 実践的Linuxセキュリティー セキュリティーの問題は、手ごわい大きなテーマですが、サーバーサイドの担当者なら基本的な対策を把握しておくべきです。この記事では、ユーザー・アカウントをきれいで安全な状態に保つための、さまざまな方法を整理しています。 |
|
|
|
2002/10/01 |
|
| |
魅力的なPython: PsycoでPythonの実行速度をCと同等にする ほんの少し余計にプログラミングを行うことで、Psycoは、多くの場合、Pythonのコードの速度を桁違いに向上させることができます。本稿では、Psycoについて調査し、いくつかのアプリケーションを使ってPsycoをテストします。 |
|
|
|
2002/10/01 |
|
| |
ヒント: textutilsを知ろう このLinuxユーザー向けの入門ヒント・シリーズでは、GNUのテキスト処理ツールについての簡単な紹介を行います。これらのツールの使い方、落とし穴の避け方、ツールを組み合わせて強力なカスタム・ツールを作成する方法を紹介します。 |
|
|
|
2002/10/01 |
|
| |
LSB認定アプリケーションの開発 Linux標準ベースは、Linuxアプリケーション間のバイナリー互換を確保することを目指しての大きな一歩です。この記事では、5つの簡明な手順によってLSB認定アプリケーションを構築できることを紹介します。 |
|
|
|
2002/10/01 |
|
| |
ヒント: catを使ってファイルを連結する GNUのテキスト・ユーティリティーについての連載第2回目として、catコマンドを取り上げます。UNIXを愛する人からはこよなく愛され、UNIXを嫌いな人からはこよなく嫌われるコマンドです。 |
|
|
|
2002/10/01 |
|
| |
サーバー・クリニック: サーバーでのPDF活用 PDFは、表示用として最高品質の出力が要求されるいろいろな分野で、標準的な仕様とみなされています。今月は、PDFに関する管理やプログラミングを行うために利用できるReportLabライブラリーを紹介します。 |
|
|
|
2002/09/01 |
|
| |
スパムの選り分け手法 Eメールが勝手に送り付けられてくることが年々大きな問題となってきていますが、その防止策の記事が到着しました。無用なEメールを自動的に除去するためのいろいろな手法を比較・検討するとともに、これらの手法に基づく、いくつかの一般的なツールを紹介、テストします。 |
|
|
|
2002/09/01 |
|
| |
freeVSD入門 本稿では、物理的な1台のマシンで複数の仮想サーバーを稼働させるためのfreeVSDというLinux用「仮想サーバー・デーモン」を紹介します。それぞれの仮想サーバーに、独立なWebホスト環境が用意されます。 |
|
|
|
2002/08/01 |
|
| |
Linuxのデバッグ手法をマスターする 本稿では、Linux上で実行されるプログラムをデバッグするための手法をいろいろと紹介します。ここでは、セグメンテーション障害、メモリーのオーバーランとリーク、およびハングアップなどの問題をデバッグするための4つのシナリオについて説明します。 |
|
|
|
2002/08/01 |
|
| |
サーバー・クリニック: 大人のための並行性 並行性(concurrency) -- 多重処理 (multi-processing) -- について、多くの人々は間違った解釈をしています。今月の「サーバー・クリニック」では、サーバーでの仕事を安全にこなしていくために必要な並行性の基本的な考え方を紹介します。 |
|
|
|
2002/08/01 |
|
| |
魅力的なPython: Sparkモジュールを使った構文解析 Sparkというのは、Pythonで記述された強力で汎用的なパーサー/コンパイラー・フレームワークのことです。この記事では、Sparkモジュールを紹介します。コード・サンプルや使い方、さらには、応用できると考えられる分野を説明します。 |
|
|
|
2002/08/01 |
|
| |
オープン・ソースによる人工衛星制御 3つの言語と4つの開発プラットフォームが使われ、複数のクライアント環境に配備される人工衛星管制システムを、どうやって装備すればよいのでしょうか。 もちろん、オープン・ソースを使ってです。 |
|
|
|
2002/08/01 |
|
| |
C、C++ 用行列ライブラリー 本稿では、Linux環境でC/C++ 用に現在出まわっている行列ライブラリーのいくつかを紹介します。Meschach、Cooperware Matrix、Blitzの特徴について紹介し、それぞれのライブラリーが本来備えている機能を詳しく吟味します。 |
|
|
|
2002/07/01 |
|
| |
洗練されたPerl: Perlによるアプリケーションの設定 第2回 本稿では、AppConfigモジュールによるローカル構成記憶域の操作方法を紹介します。妥当性のチェック、自動処理、ハッシュ変数や配列変数の変更、および「ラジオ・ボタン」スタイルの相互に排他的なオプションといった高度な機能を解説します。 |
|
|
|
2002/07/01 |
|
| |
PowerPCアセンブリー この記事では、PowerPCの世界からアセンブリー言語の概要を紹介するとともに、ia32、ppc、およびppc64の3つのアーキテクチャーの例を比較します。 ia32アセンブリーについて知識を広げたいというプログラマーだけでなく、アセンブリーのことをよく知らないPowerPCプログラマーにとっても役に立つことと思います。 |
|
|
|
2002/07/01 |
|
| |
サーバー・クリニック: 軽量Web技法 Webプログラミングのための文献は山ほどありますが、サーバー・フレンドリーなWebアプリケーションを構築するための効果的な技法については、ほとんど知られていません。今回は、サーバー・サイドのどんな言語にでも応用できる2つの効果的な考え方を説明します。 |
|
|
|
2002/07/01 |
|
| |
魅力的なPython: ジェネレーターによるステート・マシン Python 2.2に導入されたシンプルなジェネレーターを利用すれば、ステート・マシンを単純化したり、コルーチンをシミュレートすることができます。本稿では、分かりやすいサンプル・コードを紹介しながら、関係する概念をすべて解説します。 |
|
|
|
2002/07/01 |
|
| |
GNOMEnclature: GNOME 2に備える 第2回 第2回目の今回は、GNOMEを比較的初心者の観点から新たなGlibオブジェクト・システムについて説明しています。この記事が終わるまでには、GNOMEを十分に理解し、熱狂的なCファンであっても、それを自分で使用してみたいかどうかを決めることができるようになるでしょう。 |
|
|
|
2002/06/01 |
|
| |
共通テーマ: アドバンスト・ファイルシステム・インプリメンター・ガイド 第11回 本稿では、XFS、ReiserFS、およびext3 の3つのファイルシステムの現状を紹介します。また、これらのファイルシステムが、今後6ヶ月から1年の間、どんな進化を遂げるのか、大まかな流れを解説します。 |
|
|
|
2002/06/01 |
|
| |
魅力的なPython: Pythonジェネレーターで「無重量スレッド」を実装する 前回は、ジェネレーターや簡単なスケジューラーを使って本格的なコルーチンをシミュレートする方法を紹介しました。今回は、普通の方法で解決しようとすると数多くの協調プロセスを発生させてしまうような問題を、エレガントに解決する方法として、無重量スレッドを紹介します。 |
|
|
|
2002/06/01 |
|
| |
サーバー・クリニック: アプリケーションの配備 一般的に、われわれソフトウェア開発者は出来のよい便利なプログラムを作成することには力を注ぎますが、エンド・ユーザーが使ってみたときに、どんな結果になるのかを軽視しがちです。今月は、この問題に対処するための技術的な解決策を解説します。 |
|
|
|
2002/06/01 |
|
| |
libtiffによるグラフィックス・プログラミング: 第2回 Libtiffは、TIFF仕様を標準的な形で実現したもので、無料で提供され、数多くのオペレーティング・システムで利用できます。この記事では、libtiffでグレースケール画像やカラー画像を扱う方法を紹介します。 |
|
|
|
2002/06/01 |
|
| |
Linuxコマンド・ライン・ユーティリティーの開発
エンド・ユーザーでも簡単に作成できるLinuxコマンド・ライン・ユーティリティーの書き方を学びます。素晴らしいコマンド・ラインにつながるベストプラクティスの概観から始まり、実用的なページ選択ツールを詳細に解説します。
|
|
|
|
2002/06/01 |
|
| |
サーバー・クリニック: Linux開発者必携の書 今回の記事では、「The Practice of System and Network Administration」をご紹介します。この新刊書は、アドミニストレーター向けに書かれたものですが、開発者にとってもためになる教訓に満ちています。 |
|
|
|
2002/05/01 |
|
| |
初心者のためのwxHTML HTMLは、いろいろな用途に使われていますが、とりわけレポートやオンライン・ヘルプに多用されています。アプリケーションにWebブラウザーを組み込んでおけば、クライアントがそのページを閲覧するために使用するブラウザーに気を配る必要がなくなり、また、HTMLページを元のアプリケーションに関係付けるためのカスタム・タグを作成することができます。たとえば、IDEに組み込まれたヘルプ・システムを例に挙げると、ユーザーは、カスタム・タグを仕込んでおいた関数リファレンスをブラウズし、関数名をクリックすると、関数呼び出しをユーザーのコードに追加することも出来るでしょう。 |
|
|
|
2002/05/01 |
|
| |
魅力的なPython: Python関連書籍の最新情報 第3回
「魅力的なPython」のコラムで前回書評を行った以降も、Python関連の面白い書籍が多数出版されています。今回は、最近のPython関連の書籍(および前回取り上げることができなかったもの)を、また新たに比較しながら書評します。
|
|
|
|
2002/05/01 |
|
| |
ヒント: デュアル・ブートLinux 複数のLinuxバージョンをインストールして使えるようにしておくと、同じプログラムでいろいろなライブラリーをテストしたり、プログラム間のやりとりの様子を観察したり、パラメーターをいろいろと変えてみたときにどんなことになるか確認してみたりといったことが簡単に行えます。 |
|
|
|
2002/04/01 |
|
| |
サーバー・クリニック: 期待以上の出来のExpect 新コラム「サーバー・クリニック」をスタートします。今回は人気ツールExpectについての概要を紹介します。この言語は、ほとんどのプログラマーやアドミニストレーターの予想をはるかに上回る機能を備えています。 |
|
|
|
2002/04/01 |
|
| |
GNU Cライブラリーのオーバーライド -- やすやすと行う方法 glibcの関数をデバッグしたいときは、対象となる関数をオーバーライドして自分独自のバージョンに置き換えるのが巧いやり方です。これは、ルート許可がなくても可能ですし、libcのソースを再コンパイルする必要もありません。 |
|
|
|
2002/04/01 |
|
| |
MFCアプリケーションをLinuxに移植する MFCドキュメント/ビュー・フレームワークを利用しているWindowsアプリケーションを、wxWindowsツールキットを使ってLinuxに移植するときの基本的な手法を紹介します。 |
|
|
|
2002/04/01 |
|
| |
共通テーマ: アドバンスト・ファイルシステム・インプリメンター・ガイド 第10回 Linux 2.4のリリースに伴い、Reiserfs、XFS、GFSなど数多くのファイルシステムが利用できるようになりました。今回は、システムにXFSを導入する方法を紹介し、XFSのいくつかの先進的な機能について考察します。 |
|
|
|
2002/04/01 |
|
| |
Linux (または異種混合) ネットワークでのコンピューターの共用: 第2回 遠隔からアプリケーションを実行する手段として、SSH、リモートX、VNCなどのテクノロジーを比較するシリーズの第2回目です。まずVNCの構成の問題を少し取り上げ、次にIBMのDesktopOn-Callに触れ、リモートXを紹介し、最後にセキュリティーについて少し言及しています。 |
|
|
|
2002/03/01 |
|
| |
組み込みデバイスでのLinuxシステム開発 組み込みLinuxの開発は、ブートローダー、Linuxカーネル、GUIの大きく3つの層に分けられます。この記事では、これら3つの層に関する基本的な考え方をいくつかご紹介します。とくに組み込み開発にかかわり始めたばかりの読者なら、利用できるブートローダー、簡易ディストリビューション、あるいはファイルシステムやGUIにさまざまなものがあることから、圧倒されるように思われるかもしれません。しかし、この選択肢の豊富さは、実際のところ、ありがたいことであり、それぞれのニーズに合わせて開発環境やユーザー環境を作り上げていくことができるのです。この記事でLinuxでの組み込み開発を概観することで、これらのことについてよく理解していただけるのではないかと思います。 |
|
|
|
2002/03/01 |
|
| |
libtiffによるグラフィックス・プログラミング TIFF仕様を標準ANSI Cで実現しているLibtiffは、無料で提供されており、数多くのオペレーティング・システムで利用できます。本稿では、libtiffライブラリーの使い方、また、モノクロ画像を処理するときのlibtiffの使い方の例をご紹介します。 |
|
|
|
2002/03/01 |
|
| |
共通テーマ: OpenSSH キー (鍵) の管理: 第 3 回 連載第3回目のこの記事では、OpenSSHエージェント接続転送を利用してセキュリティーを高める方法や、keychainシェル・スクリプトに加えられた最近の改善点についてご紹介します。 |
|
|
|
2002/02/01 |
|
| |
洗練されたPerl: システム管理用cfengine入門 簡単な管理タスクなら自動化し、難しいタスクについては難しさを軽減することを目的としたUNIX管理ツール "cfengine"の簡単な使用法の例をいくつかご紹介します。 |
|
|
|
2002/02/01 |
|
| |
KPartsを用いたコーディング この記事では、KDEに含まれているグラフィック・コンポーネントのアーキテクチャーであるKPartsをご紹介します。KPartsの利用により、同じ機能を必要とするアプリケーション同士がコンポーネントを共有できるようになります。 |
|
|
|
2002/02/01 |
|
| |
プログラミング改善への道: 第4回 今回は、map() 関数やgrep() 関数、さらにSchwartzianトランスフォームやGuttman-Roslerトランスフォームといった、コードにスピードと簡潔さを求めるPerlプログラマーにとって重要となる関数型プログラミング、および必須のPerlイディオムを紹介します。 |
|
|
|
2002/01/01 |
|
| |
プログラミング改善への道: 第5回 このシリーズの第5回となる今回は、オブジェクト指向プログラミングとは何か、それはどのような時に使用すべきなのか、また、Perlにおいてそれはどのように機能するのかという点について解説します。 |
|
|
|
2002/01/01 |
|
| |
魅力的なPython: SimpleParseモジュールを使った構文解析 このコラムでは、Python上に構築された高水準の構文解析言語について解説します。 SimpleParseは、文法を非常に分かりやすい形で表現できるEBNF形式の構文規則をmxTextToolsに付加します。 |
|
|
|
2002/01/01 |
|
| |
GNOMEnclature: GNOME 2 に備える: 第1 回 developerWorks は、Linux ゾーンで好評の GNOMEnclature コラムを再開します。今回のコラムでは、CodeFactory のMikael Hallendal と Richard Hult の両氏が、新たな GNOME 2 プラットフォームを最大限に活用するために必要な内部情報を提供します。このシリーズによって、皆さんは GNOME 2 で使うことのできる改良された新しいライブラリーの使い方を学び、独自の Nautilusビュー、panel アプレット、その他さまざまなものの作成ができるようになるでしょう。今回の記事では、Mikael Hallendal 氏と Richard Hult氏が、GNOME 2 デスクトップ環境の新たな基盤である GTK+ 2 を分かりやすく紹介し、この連載を再開します。この記事を読み終える頃には、皆さんは、GTK+ 2 のサンプル・プログラムを記述し、コンパイルを行い、GTK+ 1 から GTK+ 2 への進化によって追加されたたくさんの機能を十分に理解することができるでしょう。 |
|
|
|
2002/01/01 |
|
| |
共通テーマ: アドバンスト・ファイルシステム・インプリメンター・ガイド 第9回 Linux 2.4のリリースと共に新たに登場したファイルシステムのうち、今回はXFSを紹介します。まずは、XFSとext3およびReiserFSをどのような点で比較するか説明し、XFSの内部で使用される多くのテクノロジーについて解説します。 |
|
|
|
2002/01/01 |
|
| |
共通テーマ: アドバンスト・ファイルシステム・インプリメンター・ガイド 第8回 前回に引き続き、ジャーナリング機能を持つext2の新しいバージョンであるext3について考察します。今回の記事では、皆さんにとって有用と思われるext3に関するいくつかのトピックについて詳しく説明します。 |
|
|
|
2001/12/01 |
|
| |
プログラミング改善への道: 第3回 この第3回では、Perlのループ構文、条件ステートメント、クリーンなコードの作成につい概説します。Perlを日常業務に活用する方法を習得するのに役立ちます。 |
|
|
|
2001/12/01 |
|
| |
Linux (または異種混合) ネットワークでのコンピューターの共用: 第1回 2回シリーズの第1回目です。セキュア・シェル (SSH) とVirtual Network Computing (VNC) を比較して、違いを明らかにします。 |
|
|
|
2001/12/01 |
|
| |
MakeMakerによるPerlプロジェクトのビルド 簡単なタスクを自動化するようなPerlプログラムを、MakeMakerを使用することによって、様々な種類のプラットフォームで広く使うことのできる汎用性を備えた堅固なプログラミング・プロジェクトに変換する方法を示します。 |
|
|
|
2001/11/01 |
|
| |
プログラミング改善への道: 第2回 第2回目では、Perlでのプログラミングの質を高めるために、コードに含められるコメントの重要性について分析します。 |
|
|
|
2001/11/01 |
|
| |
RPMによるソフトウェアのパッケージング: 第1回 シリーズの第1回となる今回は、Red Hat Linux 7.1システムにおけるRPMによる簡単なソフトウェアのパッケージング方法について説明します。 |
|
|
|
2001/11/01 |
|
| |
共通テーマ:アドバンスト・ファイルシステム・インプリメンター・ガイド: 第7回 アドバンスト・ファイルシステムをLinux 2.4環境にセットアップする方法を示すシリーズの7回目です。今回は、ジャーナリング機能が追加されたext2の新しい改良版であるext3について考察します。 |
|
|
|
2001/11/01 |
|
| |
プログラミング改善への道: 序論 よりよいPerlプログラミングのためのガイドラインを示す新連載です。今回は、コーディング・ガイドラインを新たな視点から見つめ直します。 |
|
|
|
2001/11/01 |
|
| |
洗練されたPerl: xinetdプログラムによるシステム管理 xinetdデーモンは、inetdに代わるものであり、さまざまな改善された機能や新機能を備え、構成も容易です。この記事では、inetdの背景となる概念について説明し、xinetdの実際のセットアップ例を示します。 |
|
|
|
2001/11/01 |
|
| |
魅力的なPython: Python関連書籍の最新情報: 第2回 Python関連書籍の書評です。前回の書評で取り上げなかった書籍の比較検討を行います。 |
|
|
|
2001/11/01 |
|
| |
PKCS #11に準拠したLinux版 openCryptoki IBMの暗号製品 (openCryptoki) において、PKCS #11の仕様がどのように実装されているのかを具体的に説明します。なお、この製品はdeveloperWorksからオープン・ソース形式で公開されています。 |
|
|
|
2001/11/01 |
|
| |
共通テーマ: アドバンスト・ファイルシステム・インプリメンター・ガイド: 第5回 今回の記事では、devfsを使用できるようにシステムを準備するプロセスについて説明しています。この記事を最後まで読めば、devfsをすぐに使用できるようになります。 |
|
|
|
2001/10/01 |
|
| |
魅力的なPython: [anygui]プロジェクトのプレビュー Pythonにおいて、数多くの基本グラフィック・ツールキットのためのラッパーAPIの開発を目指す[anygui]プロジェクトの開発が始まっています。現時点における[anygui]の開発状況とこのプロジェクトの目標について説明します。 |
|
|
|
2001/10/01 |
|
| |
共通テーマ: アドバンスト・ファイルシステム・インプリメンター・ガイド: 第6回 Linux 2.4のリリースと共に登場したファイルシステムをLinux 2.4環境にセットアップする方法を説明したシリーズです。第6回目は、initラッパーを使用してシステムを「devfsモード」に変換する方法について説明します。 |
|
|
|
2001/10/01 |
|
| |
共通テーマ: OpenSSH キー (鍵) の管理: 第 2 回 第2回となる今回の記事では、Daniel Robbins氏が ssh-agent (私有鍵キャッシュ)、ならびに鍵ベース認証の利便性と柔軟性の飛躍的向上を目的とした特別なbashスクリプト「keychain」の概要を説明します。 |
|
|
|
2001/09/01 |
|
| |
アドバンスト・ファイルシステム・インプリメンター・ガイド: 第4回 新しいファイルシステムをLinux 2.4環境にセットアップする方法を解説するシリーズです。今回は、デバイス管理用ファイルシステムdevfsの重要性とそのメリットについて説明します。 |
|
|
|
2001/09/01 |
|
| |
アドバンスト・ファイルシステム・インプリメンター・ガイド: 第3回 今回の記事では、VMベースのファイルシステムであるtmpfsについて説明し、カーネル2.4の「バインド」マウント機能によってもたらされる新たな可能性について紹介しています。 |
|
|
|
2001/09/01 |
|
| |
洗練されたPerl: PerlによるExcelファイルの読み取り/書き込み この記事では、WindowsおよびLinuxでのPerlによるExcelファイルの読み取り/書き込み、ならびにいくつかのシンプル・モジュールについて考察します。 |
|
|
|
2001/09/01 |
|
| |
魅力的なPython: イテレーターとシンプル・ジェネレーター Python 2.2は、新たなキーワードを伴う新しい構成要素を導入しました。その構成要素とは「ジェネレーター」であり、キーワードは「yield」です。このジェネレーターは、新しく強力で表現力の高いプログラミング・イディオムを可能としますが、少々理解しにくいところもあります。この記事では、David Mertz氏がジェネレーターとそれに関連するイテレーターについてわかりやすく説明します。 |
|
|
|
2001/09/01 |
|
| |
魅力的なPython : pydocモジュールとdistutilsモジュール 新バージョンのPythonで採用されたいくつかのモジュールおよびツールによって、Pythonは言語としてはそれほどではないものの、ツールとして改良されました。この記事では、Pythonモジュール/パッケージのドキュメンテーションおよびディストリビューションを向上させ、Python開発者の負担を大幅に軽減するこれらのモジュールについてDavid Mertz氏が説明します。 |
|
|
|
2001/08/01 |
|
| |
洗練されたPerl : Perlでの遺伝的アルゴリズムの使用 このコラムでは、Teodor Zlatanov氏がこの遺伝的アルゴリズムについて分かりやすく説明し、一般的な用途への応用が可能なPerlによるいくつかの実例を示します。式への適応度を示す数値の交配、また、英単語を形成するための文字の交配を、遺伝的アルゴリズムの例として示します。 |
|
|
|
2001/08/01 |
|
| |
アドバンスト・ファイルシステム・インプリメンター・ガイド: 第2回 Linux 2.4におけるこれらの新たな高機能ファイルシステムのセットアップ方法を示し、これらの質問に答えます。シリーズの第1回では、ジャーナリングとReiserFSのメリットを紹介しました。今回の記事では、きわめて堅牢なLinux 2.4ベースのReiserFSシステムのセットアップ・プロセスを紹介します。 |
|
|
|
2001/08/01 |
|
| |
CによるPythonとZopeの拡張 CによるPythonの拡張は、それがどのように行われるかを一度理解してしまえば、簡単に行うことができます。また、Zopeの拡張もPythonの拡張と同様に簡単です。大変なのは必要な情報をさまざまなドキュメンテーションから探すことですが、この記事でMichael Roberts氏は、皆さんのためにそうした情報を集めました。 |
|
|
|
2001/08/01 |
|
| |
組み込みLinuxアプリケーション:概要 Addison氏は、組み込みLinuxアプリケーションとその環境について、その概観を紹介し、こうしたアプリケーションの開発に最適なハードウェアおよびソフトウェア環境のセットアップ方法について順を追って説明します。 |
|
|
|
2001/08/01 |
|
| |
洗練されたPerl: JAPHのすばらしさ この記事は、初級、中級のPerlプログラマーを対象として書かれていますが、ここでは経験豊富なPerlファンさえも驚かせ、魅惑してしまうようなJAPHの例をいくつか紹介しています。 |
|
|
|
2001/07/01 |
|
| |
ニューラル・ネットワーク入門 この記事では、ニューラル・ネットの基本的特徴およびその 構築方法について示します。これによって、皆さんは、自分自身のコーディングにニューラル・ ネットを応用することができるようになるでしょう。 |
|
|
|
2001/07/01 |
|
| |
共通テーマ: OpenSSH キー (鍵) の管理: 第 1 回 このシリーズでは、RSA認証およびDSA認証の仕組みについて、また、パスワードレス認証(パスワードを必要としない認証)の正しい設定方法について学びます。このシリーズ第1回目では、Daniel Robbins氏がRSA/DSA認証プロトコルについて紹介し、さらにネットワーク上におけるそれらの使用方法について説明します。 |
|
|
|
2001/07/01 |
|
| |
洗練されたPerl: PerlによるUNIXのシステム管理の自動化 UNIXのシステム管理は常にやっかいな問題ですが、適切なツールを使用すれば簡単に行うことができます。今回、Teodor Zlatanov氏は、Perlを使うことによってシステム管理の効率をアップし、だれでも確実に管理を行えるようにする方法を提案しています。この提案においては、システム構成エンジンであるcfengineがきわめて重要なツールとなります。 |
|
|
|
2001/07/01 |
|
| |
魅力的なPython: PalmOS用Python Pippyは、PythonのPalmOS移植版(Pythonのサブセット)です。Pippyによって、PythonプログラマーはPalmデバイスで稼働するカスタム・アプリケーションの作成が可能となり、また、Pippyを直接Palm上で対話環境として使用することもできます。今回の記事でDavid Mertz氏は、Palmアプリケーションの実装方法としてのPippyの長所、短所に関してその評価を行っています。 |
|
|
|
2001/07/01 |
|
| |
魅力的なPython: Pythonでの関数プログラミング: 第3回 今回は、Xoltar Toolkitに組み込まれているカリー化やその他の高階関数のような追加機能を示しながら、引き続き説明を行います。 |
|
|
|
2001/06/01 |
|
| |
アドバンスト・ファイルシステム・インプリメンター・ガイド この連載では、ReiserFS、XFS、JFS、GFS、ext3など、Linuxのさまざまな新ファイルシステムについて、実用的知識を提供します。連載第1回目である今回の記事では、ジャーナリングとReiserFSの利点について説明します。 |
|
|
|
2001/06/01 |
|
| |
Palm-LinuxのPyriteとの統合 Pyrite Projectは、PythonプログラマーがPalmOSのハンドヘルド・デバイスにアクセスしてコントロールできるように、関連ツールをいくつか開発しました。PyriteはPalmデバイスにあるデータ・ヘルプと通信し、管理するのに対して、Pyrite PublisherはDocフォーマットのe-bookを作成してPalmデバイスに配布します。 |
|
|
|
2001/06/01 |
|
| |
Perlを使用して再利用可能なWebアプリケーションを作成 Perlは、複雑なWebアプリケーション開発に便利で効果的なツールです。しかし、その習得と使用が難しいと思われるため、熟練したプログラマーでもPerlには抵抗を覚えます。この記事では、Perlのオブジェクト指向実装は作業を簡単にし、特に個々の設計とアプリケーション機能に関して、他のWebテクノロジーよりもはるかに効果的であることを明らかにしています。 |
|
|
|
2001/06/01 |
|
| |
魅力的なPython: Python用XMLツールの再考 David Mertzによる「魅力的なPython」 の第1回と第2回で、PythonにおけるXML処理の概要を説明しました。しかし、当初の記事から1年経過する間に、Python用XMLツールの状況は大きく進歩しました。残念ながら、こうした進歩のほとんどには下位互換性がありません。今回の特別号の記事で、著者はXMLツールに関する以前の説明を再考し、最新のコード例を紹介しています。 |
|
|
|
2001/06/01 |
|
| |
便利なCGIスクリプト作成のためのヒント CPANから受け継いだCGIモジュールが、効果的かつスムーズに作業を進める上で役立つばかりでなく、優れたコードと参考ライブラリーを提供してくれます。 |
|
|
|
2001/06/01 |
|
| |
魅力的なPython: Pythonによる全文検索システムの開発 情報量が増えるにつれて、特定の情報を検索する効果的な手段がますます重要になっています。このコラムでは、著者のパブリック・ドメインindexer(索引づけ)モジュールにスポットをあて、全文検索の分野について説明します。 |
|
|
|
2001/05/01 |
|
| |
データ圧縮入門 この論文は基本的なデータ圧縮についての啓蒙記事で、圧縮技術に関する数学とアルゴリズムについて初心者向けに説明しています。どのタイプの圧縮ツールと技術が自分のアプリケーションに適しているか評価できるように、簡単な考察と例題が示されています。さらに進んだ理論的検討および簡単に使える圧縮ツールとライブラリーの所在を示す情報を提供しています。 |
|
|
|
2001/05/01 |
|
| |
BeOSでのWeb開発 Web開発のプラットフォームを選ぶときに、選択肢として BeOSを見落とすユーザーがあまりにも多いようです。BeOS Release 5は、Web開発者がオペレーティング・システムに望むもの、つまりユーザー・フレンドリーで、心地良く、高速で信頼できる環境に望むものをほぼすべて提供しています。 |
|
|
|
2001/05/01 |
|
| |
Linuxが組み込み市場を席捲する3つの理由 Linuxが組み込み市場で勝利する理由についてJudy DeMockerが説明します。Judy DeMockerは、オープン・ソース・ライセンスの便利さと、それが組み込みLinuxにとってどういう意味を持つのかに注目し、Linuxで組み込みシステム(およびデバイス・ドライバー)の保守を行うという点、およびシングル・プラットフォームをサポートできるという点にも注目しています。 |
|
|
|
2001/05/01 |
|
| |
KDE入門
この記事では、KDEをどのようにして立ち上げたかを説明し、マルチメディアやゲームなど、私が見つけた強力な機能をいくつか紹介することにします。最新の安定したバージョン2.1を中心に話を進めます。
|
|
|
|
2001/05/01 |
|
| |
共通のスレッド:Samba入門 Samba は、Unix と Windows を併用しているユーザーにとって貴重なツールです。Unix システムで Samba を活用し、Unix 用の SMB/CIFS プロトコルをインプリメントすれば、Unix システムのリソースを標準的な Windows クライアントと共有できるのです。今回の入門編は、Daniel Robbins 氏による developerWorks の新連載コラムの初回の記事であり、Samba によって何が可能になるのかがやさしく解説されています。特に取り上げられているのは、いくつかの重要な概念です。(次回の記事では、セットアップ・プロセスの段階的な説明が掲載される予定です。) 本稿を最後まで読み通せば、Samba で何ができるのか、またそうした機能がどのように実現されるのかについてしっかり理解していただけるに違いありません。 |
|
|
|
2001/04/01 |
|
| |
Pythonでの関数プログラミング: 第2回 Pythonによる関数プログラミングの概念についてさらに掘り下げてみましょう。 |
|
|
|
2001/04/01 |
|
| |
Pangoの接続: 第2回 Pangoは、国際化されたテキストをレイアウトおよびレンダリングするためのオープン・ソースのフレームワークです。次世代のGTK+ とGNOMEに組み込まれることになっています。2回連載のこの第2回でTony Grahamは、Pangoおよび開発バージョンのGLibとGTK+ をどこで入手するか、プログラムの構成方法、そしてPangoとGTK+ を使ったプログラムをコンパイルする方法を説明します。 |
|
|
|
2001/04/01 |
|
| |
Samba 2.2の紹介 Daniel Robbinsはこの記事で、Samba 2.2が、もともと素晴らしい出来栄えであったSamba 2.0.8の改良版として、驚くほど強力なエンタープライズ対応のUnix/Windows統合ソリューションを作り上げているようすを説明しています。新しいSamba 2.2は、Windows 2000クライアントやWindows NTドメイン・コントローラー・サポートなどをはじめ、多くの新しい拡張機能を備えています。 |
|
|
|
2001/04/01 |
|
| |
共通テーマ: Linux LVMについて学ぶ: 第2回
今回の記事では、Daniel氏がcvs.gentoo.orgの
/homeファイル・システムをLVM論理ボリュームに移行した経験をお話しします。移行後には、cvs.gentoo.orgの
/homeパーティション・サイズを変更する際、リブートしたり、/homeをアンマウントしたり、実行レベル1に落としたりせずに、リアルタイムで動的に行えるようになります。
|
|
|
|
2001/04/01 |
|
| |
共通テーマ:iptablesダイナミック・ファイアウォール
ファイアウォールはきわめて有用なものです。しかし、ファイアウォールのルールに対して複雑で迅速な変更が必要な場合は、一体どうすればよいのでしょうか。その答えは簡単です。以下に示されるDaniel
Robbinsのダイナミック・ファイアウォール・スクリプトを使えばよいのです。
|
|
|
|
2001/04/01 |
|
| |
共通テーマ: 実例でわかるawk: 第3回
この記事を読み進むにつれ、独自の関数を作成する方法やawkの多次元配列の使い方の理解が深まっていくことと思います。そしてこの記事を終える頃には、皆さんのawkについての知識はさらに高まり、より強力なスクリプトを作成できるようになるでしょう。
|
|
|
|
2001/04/01 |
|
| |
Perl/CGIプログラマーのためのZope
Zope(Z Object Publishing
Environment)は、ますます好評を博しているアプリケーション・サーバーです。しかしその実体は? そもそもアプリケーション・サーバーとは何なのでしょうか。果たしてこれは、CGIのような馴染みのある快適なパラダイムとどう比較されるのでしょうか。
|
|
|
|
2001/04/01 |
|
| |
洗練されたPerl: ワンライナー101
Perlをプログラミング言語として使用している人は、Perlがコマンド行操作に使用する、クイック・アンド・ダーティ・スクリプト記述エンジンと同じように有用であるということを良く忘れます。Perlではコマンド行を使用して、その他のほとんどの言語ではコードに複数ページを必要とするタスクをわずか1行で実行できます。Teodorと一緒に、役に立つ例をいくつか見ていきましょう。
|
|
|
|
2001/04/01 |
|
| |
オブジェクト不指向の共用オブジェクト
Ashish
Bansal氏が、動的にロード可能なライブラリーを作成する方法を解説し、このプロセスで役立つツールを紹介します。コンパイル・プロセスと命名規則を見直し、共用ライブラリーの作成、コンパイル、およびインストールについて説明します。
|
|
|
|
2001/04/01 |
|
| |
魅力的なPython: Pythonでの関数プログラミング: 第1回 関数プログラミングの一般概念について説明し、Pythonで関数技法を実装するための方法を示します。 |
|
|
|
2001/03/01 |
|
| |
SE Linuxの秘密のベールを取る: 第1回 米国のNational Security Agency(NSA) は、それらしからぬ動きなのですが、最近、セキュリティーを拡張したバージョンのLinux (コードを含めたすべて) をオープン・ソース・コミュニティーにリリースしました。この記事は、予想していなかったその開発について、それが何を意味するのか、何が起こるのかという観点で行った初めての調査で、さらにSE Linuxのアーキテクチャーを掘り下げます。これはdWの独占記事です。 |
|
|
|
2001/03/01 |
|
| |
SE Linuxの秘密のベールを取る: 第2回 米国のNational Security Agency (NSA) は、それらしからぬ動きなのですが、最近、セキュリティーを拡張したバージョンのLinux (コードを含めたすべて) をオープン・ソース・コミュニティーにリリースしました。第2回のこの記事では、コードをかなり深く掘り下げて、<code>security_av</code> がどのように計算されるかを分析し、そしてSE Linuxの他のセキュリティー関数がどのように呼び出されるかを調べます。これはdeveloperWorksの独占記事です。 |
|
|
|
2001/03/01 |
|
| |
bashシェル・スクリプトを使用した機能テスト 機能テストは、ソフトウェア開発には不可欠な部分です。すでにLinuxに ロード済み で使用可能なbashを使用すれば、機能テストを迅速かつ簡単に行うことができます。この記事では、Angel Riveraが、行コマンドを使用するLinuxアプリケーションで機能テストを行うための bashシェル・スクリプトの使用方法を説明します。 |
|
|
|
2001/03/01 |
|
| |
Linuxカーネルの性能と拡張性の改善 本稿では、IBM Linuxテクノロジー・センターのスタッフがそれぞれの専門的な知識を出し合い、昨年暮れにLinuxカーネル2.4と2.5で何種類ものベンチマークを実行したときのことを紹介します。 |
|
|
|
2001/03/01 |
|
| |
Linuxハードウェア安定化ガイド: 第1回 この記事で、CPUの異常を診断して修正する方法と、RAMをテストして欠陥を発見する方法を示します。この記事を読み終えると、Linuxシステムが最大限の安定性を持つことを保証するスキルを身に付けることができるでしょう。 |
|
|
|
2001/03/01 |
|
| |
オープン・ソース・ソフトウェアとセキュリティー Natalie Whitlockは、閉じたセキュリティー・システムの不適切さとオープン・ソース・ソリューションについて語ります。彼女は、以下の事に関し検討を加えます。Eric Raymondのアイデア、MicrosoftのFrontPageにおける有名な「裏口」、ピア・レビュー(同業者による検査)の概念、およびすべてのものが検査されることを保証するような、かじ取りをする人がいない、オープン・ソースのジレンマです。その後で、そのテーマを理論面から実践面に移し、安全なオープン・ソース・システムの実行可能性と評判について、先進的なIT担当重役たちと話し合います。 |
|
|
|
2001/03/01 |
|
| |
バグのないBeanを FTP Bean Suiteのプロジェクト・チームは、最近多忙です。FTP Bean Suiteのチーム・リーダーである Werner Zsolt氏とのインタビューをもとに、Maya StodteはBean Suiteの新しい機能のいくつかと最近取り除かれた バグのいくつかについて概説しています。 |
|
|
|
2001/03/01 |
|
| |
Linuxにおけるx86インライン・アセンブラー Bharata B. Raoが、Linuxプラットフォームでのx86のインライン・アセンブラーについて、その使用法と仕組みの全般について説明しています。インライン・アセンブラーの基本とそのさまざまな使用例を示し、いくつかの基本的なインライン・アセンブラー・コーディング指針を提示し、Linuxカーネルのインライン・アセンブラー・コードの実例を説明します。 |
|
|
|
2001/03/01 |
|
| |
共通テーマ: Linux LVMについて学ぶ、第1回
この記事でDanielは、Linux LVM (論理ボリューム管理) の背後にある
概念を紹介し、最新のカーネル・パッチおよびツールをシステムにインストールする方法を示しています。
|
|
|
|
2001/03/01 |
|
| |
洗練されたPerl: あるプログラマーのLinux指向セットアップ
Teodor
Zlatanov氏はtcsh、Enlightenment、Eterm、およびEmacsを、JavaおよびPerl指向プログラミング環境に合うようにカスタマイズした後、彼のLinuxの
デスクトップの構成を紹介します。彼の構成は、JavaおよびPerlプログラミング・セットアップ用に最適化されたものですが、まったく別のプログラマーにも役立つヒントが多数あります。
|
|
|
|
2001/03/01 |
|
| |
Pangoの接続: 第1回
Pangoは、国際化されたテキストをレイアウトおよびレンダリングするためのオープン・ソースのフレームワークです。次世代のGTK+
とGNOMEに組み込まれることになっています。2回シリーズの第1回では、Tony
GrahamがPangoを紹介するとともに、Pangoがテキストを処理する方法、およびフォーマットするテキストに指定できるテキスト属性を説明します。
|
|
|
|
2001/03/01 |
|
| |
Slackware Linux 101
Joe BrockmeierがSlackware
Linuxのinitシーケンスについて考察します。彼は、システムがどのようにサービスを初期化するのか、どのような実行レベルがあるのか、また、システムをカスタマイズするためにデフォルトのインストール状態に対してどのようにサービスを追加または除去するのかを説明します。
|
|
|
|
2001/03/01 |
|
| |
ネイティヴパフォーマンスを使ってのメディアプレイヤーのための外観が変更(skinnable)可能なJave UIsのデザイン 複数のプラットフォームをまたがってコンパイルし、ネイティヴコード同様の速さで動作するJavaコードが書けますか?これはJava開発者には、特に複雑なUIを使ってのアプリケーションとなるとやっかいな問題です。この記事では、開発者であるVladimir Silvaがこの問題に対する興味深い解決法を提示しています。SLIK、つまりWindowsとUNIXの双方でネイティヴパフォーマンスを提供するクロスプラットフォームのC APIへアクセスするためには、どのようにJNIを利用すればよいかを学習します。 |
|
|
|
2001/02/01 |
|
| |
共通テーマ: Linux 2.4 Software RAID、第2回 今回の記事では、Daniel氏は、Software RAID-1、4、および5で実現できる事と、できない事について、および実稼動環境にこれらのRAIDレベルをインプリメントするためのアプローチ方法について解説します。この解説の後半では、RAID-1の障害ドライブを交換するシミュレーションを概説します。 |
|
|
|
2001/02/01 |
|
| |
共通テーマ: 新Linux 2.4カーネルのSoftware RAID、第1回 ついに、新しい2.4カーネルが出ました! さあ、使われていないPCを探し出し、Linuxを入れ、それで何ができるかを見てみましょう。この記事では、Software RAIDのセットアップを説明し、リニア・ボリュームとRAID-0ボリュームの作成方法を示しています。 |
|
|
|
2001/02/01 |
|
| |
データベース・アクセスのLinuxアプリケーションへの統合 この記事では、e-commerceおよびその他のサード・パーティーのデータベースを 使用する複雑かつ動的なWebサイトを開発する際に役立つツールであるMySQLについて 説明します。MySQLは、高速で、マルチ・スレッドの多機能SQLサーバーです。 |
|
|
|
2001/02/01 |
|
| |
ローカル・エリア・ネットワークのセットアップ この記事では、Red Hat Linuxオペレーティング・システムが稼動している複数のコンピューターから成るローカル・エリア・ネットワーク (LAN) を構築する方法を説明します。最初は基本的な点、すなわちTCP/IP (伝送制御プロトコル / インターネット・プロトコル) スイートに関する概要と、LANにおけるIPアドレスの割り当てに関する説明を扱います。 |
|
|
|
2001/02/01 |
|
| |
魅力的なPython: Python関連書籍の最新情報 Pythonの書籍に関しては、ここ1年ほどの間に、探すのに苦労した状態を一挙に抜け出し、おびただしい数の書籍が出版されるようになりました。この記事では、Pythonに関する著名な8冊の書籍について、David氏の書評をお届けいたします。 |
|
|
|
2001/02/01 |
|
| |
魅力的なPython: V2.0の入手 Python 2.0は、以前のPython版の長所を生かして構築されていますが、多くの新しい便利さと機能も追加されています。この記事で著者は、Pythonの最新版の印象と、それを効果的に使用するためのいくつかのヒントを述べています。 |
|
|
|
2001/02/01 |
|
| |
wxWindowsの概要 Markus Neiferが、ポータブルなC++ およびPython GUIツールキットwxWindowsの概要を説明します。彼はライブラリーのアーキテクチャーについて語り、マルチプラットフォーム・ファイル・ハンドルおよびディレクトリー分離文字の使い方を説明し、また、wxHTML、イメージ・ファイル・フォーマット、およびユニコードについても触れています。 |
|
|
|
2001/02/01 |
|
| |
共通テーマ: 実例でわかるawk: 第2回 複数行レコードの処理方法、ループ構成体の使用法、およびawk配列の作成方法と使用法を紹介します。この記事を読めば、awkの幅広い機能に精通し、独自の強力なawkスクリプトを作成できるようになるでしょう。 |
|
|
|
2001/01/01 |
|
| |
Unicodeのキリル文字 本稿では、Thomas Burger氏が、キリル文字フォントを取り上げ、Linuxでキリル文字を表示するためのいろいろな方法 (UTF-8など) について説明します。キリル文字フォントのサポートとインストールをセットアップする方法や、アプリケーションの中でキリル文字をサポートする方法などが、その具体的な内容になります。さらに、UTF-8のキリル文字フォントを使用することによって、本当の意味での最初の国際的なオペレーティング・システムになるのはLinuxであるという自説も展開しています。 |
|
|
|
2001/01/01 |
|
| |
洗練されたPerl: CおよびJavaプログラマーのためのPerl 5.6 Ted Zlatanovは、CおよびJavaプログラマーに対してPerl 5.6が持ついくつかの特性について説明しています。オペレーターのあいまいさの許容、同じことを実行するのに複数の方法が可能であること、句読法、正規表現、変数メカニズムなど、Perl以外のソースから取り入れられたおなじみのフィーチャーに、実際、CおよびJavaプログラマーはうれしい驚きを覚えることでしょう。 |
|
|
|
2001/01/01 |
|
| |
ディストリビューションの作成、第3回 Gentoo Linuxというディストリビューションを、どのように自らの手で作り上げたかというお話は、今回で最後です。Linuxの世界を離れてFreeBSDへ移り、再びLinuxの世界へ舞い戻り、そして新たな展望を持ってGentoo Linuxの開発を再開した経緯をお話しして、この連載を締めくくらせていただきます。 |
|
|
|
2001/01/01 |
|
| |
ディストリビューションの作成: 第2回 今回の記事で彼は、Enoch開発チームが無名の超高速コンパイラーを見つけた後で起こった、不可解な出来事を 語ってくれます。 |
|
|
|
2000/12/01 |
|
| |
オペレーティング・システムの柔軟性 この記事の著者はLinuxが最高だと思っていますが、クライアントからのジョブや古いデータ・フォーマットのために、他のいわゆるオペレーティング・システムを使用しなければならないことが時々あります。解決策は、コンピューターを最初に始動したときに、複数あるオペレーティング・システムからどれでもブートできるようにすることです。 |
|
|
|
2000/12/01 |
|
| |
魅力的なPython: PythonでのTKプログラミング David Mertzが、TKとTkinterラッパー (PythonのGUIライブラリー) を、詳しいコメント付きのソース・コード・サンプルを用いて紹介します。分かりやすいように、例として、今までの記事で使用したTxt2HtmlフロントエンドのGUIポートを用いています。 |
|
|
|
2000/12/01 |
|
| |
魅力的なPython: JPythonとPython for .NETの内幕 David Mertzが、JPythonおよびPython for .NETの開発者であるMark Hammond、Finn Bock、およびBarry Warsawにインタビューしました。DavidはMarkからMicrosoft開発の内情を少し聞き出し、JPythonや彼らの今後のJythonプロジェクトについて、FinnとBarry鋭く迫りました。 |
|
|
|
2000/12/01 |
|
| |
GNOMEnclature: Bonobo 入門 今回から始まるいくつかのコラムでは、Bonobo とそれに関連したコンポーネント・モデル・テクノロジーが説明されることになっています。このシリーズは今回が最初になりますが、CORBA 用の C API のような Bonobo の入門編として、基礎的な事柄をいくらか見てみることにしましょう。 |
|
|
|
2000/11/01 |
|
| |
ディストリビューションの作成: 第1回 これは、Daniel RobbinsのLinuxストーリーです。3回シリーズの第1回目では、Stampede Linuxデベロッパーになった経緯と、結果的にStampedeを離れてEnochという彼独自のディストリビューションを始めた理由について述べています。 |
|
|
|
2000/11/01 |
|
| |
Linuxファイル圧縮ツール・ガイド このガイドをご利用の際は、本文の最初に書かれている著者による内容紹介をご覧の上、索引を利用して、ご希望のツールに関する説明箇所にジャンプしてください。必要に応じて、当記事の全文をお読みください。 |
|
|
|
2000/11/01 |
|
| |
共通テーマ: 実例でわかるsed: 第3回 sedの連載の最後となる今回、Daniel Robbins氏は、sedのパワーの真価を味わせてくれます。はじめに基本的なsedスクリプトをいくつか紹介した後、Quickenで使用される .QIFファイルを判読可能なテキスト・フォーマットへ変換するラジカルなsedスクリプトを解説します。 |
|
|
|
2000/11/01 |
|
| |
洗練されたPerl: 楽々Perlデバッグ Teodor Zlatanovが、組み込み (標準装備の) PerlデバッガーとCPANのDevel::ptkdbの案内をします。この記事では、特定のツールを考察するというより、むしろデバッグの方式と一般的な概念に注意を向けます。 |
|
|
|
2000/11/01 |
|
| |
魅力的なPython: 実行時に再ロードを行なう Pythonが他のプログラミング言語より優れている点は、そのずば抜けた実行時の動的処理能力にあります。便利なreload() 関数のお陰で、継続的に実行でき、かつ、プロセス実行中に変更されたコンポーネントをロードできる機能を持つプログラムを作成することができます。この記事では、David氏の前回の記事で紹介したTxt2Htmlフロントエンドの拡張による実行時プログラム変更について説明します。 |
|
|
|
2000/11/01 |
|
| |
Yacc...そしてLexをよみがえらせる Lex と Yacc は、UNIX の重要かつ強力なツールです。この記事では、正規表現、宣言、マッチング・パターン、変数、Yacc の文法、そしてパーサー・コードについて取り上げます。そして最後に、Lex と Yacc を協働させる方法について説明します。 |
|
|
|
2000/11/01 |
|
| |
DAISY: 大型マシン向けオープン・ソースJITコンパイラー
バイナリー変換研究用のオープン・ソース・ソフトウェアであるDAISYが、IBMのワトソン研究所からリリースされようとしています。DAISYの動的コンパイルと16-wide
VLIWにより、このプロジェクトは、コンパイラー技法およびアーキテクチャー機能の最先端の地位を占めるようになりました。Maya
StodteはDAISYとその開発の中核チームに迫りました。
|
|
|
|
2000/11/01 |
|
| |
魅惑的なPython: Python実装に駆り立てたもの 言語仕様としてのPythonは、Guido van Rossumによる参考実装の進化に伴って、これまでに何回か実装されてきました。この記事は、2つの非標準PythonsであるStacklessおよびVyperの作者とのインタビューに注釈を加えたものです。 |
|
|
|
2000/10/01 |
|
| |
SGMLtools-Liteをインストールして使う 文書化プロジェクトにDocBookを使い始めた読者は、SGMLtools-Liteの便利な出力機能を活用する方法をお知りになりたいことでしょう。この記事では、SGMLtools-Liteのインストールと使用方法について取り上げます。さらに、トラブルシューティング、およびオンライン・メディアおよび印刷メディアの出力に関するカスタマイズ方法についても紹介します。 |
|
|
|
2000/10/01 |
|
| |
洗練されたPerl: Perlでのアプリケーション構成 ファイル・ベースの構成は、手作業の構築方式を使用したのではすぐに行き詰まってしまいます。Teodor Zlatanovは、AppConfigモジュールを使用することによって、Perlプログラム用のローカル構成記憶域をどのように扱うことができるのか、また、そのような構成をデータベースに保管して、ネットワーク上の任意のマシンからそのデータベースにどのようにアクセスすることができるのかを示します。 |
|
|
|
2000/10/01 |
|
| |
宝石たちの語らい developerWorks Japanは、Linux Zone リーダーの富田氏の協力を得て、Linux 開発者のコミュニティにおいて、特にPerlの機能について活発な議論がなされ、その中でRubyとの関連について開発者の方々が興味を持っていることを知りました。
|
|
|
|
2000/10/01 |
|
| |
共通テーマ: 実例でわかるsed: 第2回 Sedは非常にパワフルで、かつコンパクトなテキスト・ストリーム・エディターです。連載2回目のこの記事で、Daniel Robbins氏は、sedを使って文字ストリングを置換する方法、大きなsedスクリプトの作成方法、行の追加、挿入および変更をする行コマンドの使用法を説明します。 |
|
|
|
2000/10/01 |
|
| |
ヒント: ソースからのアプリケーションのアップグレード ソース・コードから最初のアプリケーションをコンパイルし、インストールを終えました。非常に快適に動きます。おめでとう。ところが、ソースの新しいバージョンが利用できるようになったので、アップグレードをしたいと思いますが、すべて問題なく事が運ぶよう手を打ちたいと思います。落とし穴を避けるには具体的にどのようなステップを取ればよいでしょうか。ここでは、それらをいくつか紹介します。 |
|
|
|
2000/09/01 |
|
| |
ヒント: プロンプトの魔術 シェル・プロンプトに少し手を加えるだけで、カラフルで情報満載となるのに、どうして退屈な標準のもので我慢しているのですか? Daniel Robbins は、今回のヒントで、X 端末のタイトル・バーを動的に更新する方法はもとより、自分の好みに合うシェル・プロンプトに手を入れる方法を教えてくれます。 |
|
|
|
2000/09/01 |
|
| |
GNOMEnclature: 複数ドキュメントの処理 ウィジェットに続く今回の連載コラムでは、gnome-libs から 作成する GnomeMDI
(Multiple Documents Interface) について George Lebl が解説します。GnomeMDI を利用すれば、さまざまな種類のドキュメント
(文書) を 1 つのプログラムで同時に処理することができます。 |
|
|
|
2000/09/01 |
|
| |
ヒント: C/C++での総称オブジェクト・リストのコーディング これまでに、いくつあるか分からないさまざまなオブジェクトをメモリーに保管しておかなければならないような プロジェクトを手にしたことはありませんか?目的によっては、バイナリー・ツリーが最良のソリューションですが、通常は、より簡単なリンク・リストがあることが望ましいです。 |
|
|
|
2000/09/01 |
|
| |
DocBookの概要 この記事では、DocBookについてと、DocBookを使用した単純な文書の作成方法について説明します。Joe Brockmeierが、文書を構文解析して、HTML、PostScript、プレーン・テキスト、およびPDFバージョンを作成するための、文書の作成おおよびSGML-tools Liteの使用方法を示します。 |
|
|
|
2000/09/01 |
|
| |
魅力的なPython: cursesプログラミング ここでは、David Mertz が、Python での curses の使用について説明します。フロントエンド・プログラムから Txt2Html プログラムまで、サンプル・ソース・コードを使用して curses 環境を紹介します。 |
|
|
|
2000/09/01 |
|
| |
洗練された Perl: 「Programming Perl, Third Edition」のレビュー Programming Perl 第 3 版のリリースは、Perl コミュニティーにとっての重要な展開です。Teodor Zlatanov は、本書をレビューするだけでなく、Perl の 5.6.0 リリースまで行われた変更を本書がどの程度反映しているかも調べています。 |
|
|
|
2000/09/01 |
|
| |
一般的なスレッド: POSIX スレッドの説明: 第3回 POSIX スレッドについての 3 回シリーズの最後となるこの記事では、条件変数の使用法について Daniel がわかりやすく説明します。Daniel は記事を締めくくるにあたって、すでに学んだ事柄を使ってマルチスレッドの作業班アプリケーションを実装する方法を示します。 |
|
|
|
2000/09/01 |
|
| |
魅惑的な Python: Python におけるテキスト処理
他の人気のある幾つかのスクリプト言語と同様、Python
は、テキスト・データをスキャンしたり、取り扱ったりするのに優れたツールです。この記事は、Python
が初めてというプログラマーのために、Python のテキスト処理機能を要約したものです。
|
|
|
|
2000/09/01 |
|
| |
共通テーマ: 実例でわかるsed: 第1回
この連載の中で、Daniel Robbins 氏は、非常に強力な (しかし、しばしば忘れ去られている) UNIX
ストリーム・エディター sed の使い方を説明します。sed
は、ファイルのバッチ編集や、既存のファイルを効果的な方法で変更するために
シェル・スクリプトを作成する際には、最高のツールです。
|
|
|
|
2000/09/01 |
|
| |
洗練されたPerl : 平易な英語によるPerlプログラムの作成 プログラムのユーザー・インターフェースを設計するのは、難しくて時間のかかる作業となることがあります。本稿では、Parse::RecDescent を使用した平易な英語によるユーザー・インターフェースの文法を作成する方法を説明します。 |
|
|
|
2000/08/01 |
|
| |
魅力的なPython: ステート・マシンの使い方 ステート・マシンは、理論的な意味では、コンピューターおよびプログラミングに関連するほとんどすべてのものの基礎になっています。また、実用的な意味では、ステート・マシンは (特に、Python プログラマーにとって) 多くの通常の問題の解決に役立ちます。David Mertz はこの記事で、ステート・マシンをいつ、どのように Python で書くのかについて、いくつかの実践的な例を挙げて説明しています。 |
|
|
|
2000/08/01 |
|
| |
DEVFS の使い方 カーネルの役割の大部分は、ハードウェア制御に関連しています。というのは、ユーザー・プログラムが必要としているのは、使用したいハードウェア・デバイスを参照する手段だからです。ハードウェア・デバイスによっては、ソケットやファイルシステムのようなインターフェースを通して、暗黙的に使用されるものもあります。しかし、シリアル・ポートやハード・ディスク区画のように、ハードウェア・デバイスを直接参照する必要がある場合も多々あります。このような参照は、通常、/dev ディレクトリーにある特殊なデバイス・ファイルを使用して行われます。本稿では、devfs を紹介します。 |
|
|
|
2000/08/01 |
|
| |
Linux カーネル2.4 の紹介: 第2回 これは 2 回シリーズの第 2 回です。今回は、近々リリースされる Linux カーネル 2.4 のポート、マルチメディア、ファイル・システム、バス・サポートといった特殊ハードウェアに寄せられる期待を現実的な視点から詳しく取り上げます。 |
|
|
|
2000/08/01 |
|
| |
Linux カーネル2.4 の紹介: 第1回 これは 2 回シリーズの第 1 回です。第 1 回で論じられるのは、正式なリリースがいつごろになるのか、新しいリリースの全体的な機能はどんなものになると予想されるか、メインのハードウェア機能に対する拡張機能という観点から何が期待できるのか、といった点です。 |
|
|
|
2000/08/01 |
|
| |
SDLの使用、第5回:Pirates Ho! におけるインターフェース設計の原則 この号の日誌で、著者は、インターフェースの予備設計を開発するときに使用した原則について述べています。著者は、インターフェースの予備設計を開発するときに使用した原則について述べています。 |
|
|
|
2000/08/01 |
|
| |
一般的なスレッド: POSIX スレッドの説明: 第2回 POSIX スレッドは、コードの応答性とパフォーマンスを向上させる優れた方法です。3 回シリーズの第 2 回である今回の記事では、mutex というちょっとした優れた手段により、スレッド化されたコードの整合性を保つ方法について、Daniel Robbins が説明します。 |
|
|
|
2000/08/01 |
|
| |
Sambaのドメイン・コントローラー・サポート
Samba は、ファイルやプリンターの共用に大変適していますが、それ以上のことが可能です。この記事で、Daniel
Robbins が示しているのは、Samba のドメイン・コントローラー機能 の設定の仕方です。これにより、Samba
は Windows NT
ドメインを制御し、ログイン要求をプロセスし、ローミング・ユーザー・プロファイルを保管することができます。
|
|
|
|
2000/08/01 |
|
| |
共通のスレッド: Samba 入門、第2回 前号の記事では、Samba の機能について紹介しました。いよいよ、あなたのシステムで、Samba を動かす時がやってきました。本稿では、Samba (バージョン 2.0.7) のコンパイル、インストール、および初期構成を行って、ユーザー環境で稼働させるためのプロセスを紹介します。 |
|
|
|
2000/07/01 |
|
| |
洗練された Perl: Perl でデータ保管 データの保管は、コンピューター・プログラミングに共通の問題です。CPAN のPersistent クラスを使用すると、データの作成、検索、および管理を単純化する共通インターフェースにより、データ保管が簡単に行えるようになります。 |
|
|
|
2000/07/01 |
|
| |
魅力的なPython: 私の最初のWebベース・フィルター・プロキシー この記事では、Python によるプログラミング手法を説明するために David が作成したパブリック・ドメイン・ワーキング・プロジェクトである、Txt2Html について紹介します。 |
|
|
|
2000/07/01 |
|
| |
魅力的なPython: DOMの動的性 この記事で David Mertz は、前号のコラムで説明した Python の高レベル xml.dom モジュールの使用について詳しく検討しています。xml.dom を使用した作業が図示され、理解しやすくするコード・サンプルと、完全な XML 文書処理システムに入れられる多くのエレメントをコーディングする方法の説明が付けられています。 |
|
|
|
2000/07/01 |
|
| |
Perlによるツリー・ベースXMLのスクリプト作成 XML 文書をツリー構造に解析すると、データのツリー構造を操作できるようになります。文書ツリーにアクセスおよび操作するための機能の使い方を説明すると共に、Perl、DOM、XML、およびデータベースを使用する株取引サンプル・アプリケーションを利用して、取引規則を評価します (Tcl や Python などの他のスクリプト言語で同じテクニックを利用することも可能です)。これは、スクリプト言語を使用した XML 文書の操作および変換についての第 2 回目の記事です。 |
|
|
|
2000/07/01 |
|
| |
共通のスレッド: POSIX スレッドの説明 POSIX (Portable Operating System Interface) のスレッドは、コードの応答性とパフォーマンスを向上させる優れた手段です。本稿では、コードでスレッドを使用する方法を説明します。詳細な背景情報が多数網羅されているため、このシリーズの終わりまでには、独自のマルチスレッド・プログラムを作成する準備が整っていることでしょう。 |
|
|
|
2000/07/01 |
|
| |
GNOMEnclature: GOBによるGTK+ウィジェットの作成 George Lebl はコラムの焦点を、GLib の不思議な世界から、より広範囲なトピックに移しました。この記事では、彼は自分が作成した GOB プリプロセッサー言語を使って新しい GTK+ ウィジェットを作成する方法を説明しています。GOB について少し説明し、オブジェクトを作成する方法とウィジェットを派生させる方法が紹介されています。GTK+ オブジェクト・モデルの詳細な機能が実際に動作する様子を見ることもできます。 |
|
|
|
2000/07/01 |
|
| |
共通のスレッド: Sambaへの招待、第3回 Daniel Robbinsは、前回の記事で、初めて Samba を設定する際の手順を説明しました。さあ、あなたが行いたいことをすべて実行できるように、Samba を構成する時が遂にやって来ました。 |
|
|
|
2000/07/01 |
|
| |
Perl: 全体的な眺望に関する小さな考察 本稿では、コードを分かりやすくすることによって Perl プログラムの信頼性と保守容易性を向上させる技法を説明します。ここで説明するヒントは初級から中級の Perl プログラマーを対象としており、コーディング・スタイルを変えることが目的ではなく、良い基準を確立することにむしろ主眼を置いています。 |
|
|
|
2000/06/01 |
|
| |
GNOMEnclature: GLibの驚異 第2回 George Lebl 氏の GLib に関する 2 回目の記事です。前回よりもさらに詳しい内容になっています。まずハッシュ・テーブルの説明から始まり、テーブルの作成、データの挿入と検索、エントリー間の反復処理の話へと続いてゆきます。さらに、トークンと GScanner の使い方を示したコードやセットアップ例も用意されています。 |
|
|
|
2000/06/01 |
|
| |
Unix プラットフォームで COM テクノロジーを活用 COM/DCOM テクノロジーにより、Windows コンポーネントの開発と配布はかなり容易になりました。 しかし、同じコンポーネントを Unix プラットフォームで開発しなければならない場合、どうしたらよいのでしょうか。 |
|
|
|
2000/06/01 |
|
| |
教育社会への開放
オープン・ソースは、再び教育現場に戻って来ています。ここでは、教育界でのオープン・ソースのメリット、校内で Linux
を使ってネットワークを構築している現行の諸プロジェクト、オープン・ソースの教育ポータルの成長、および教育現場でのオープン・ソース運動を推進している財団などについて説明します。
|
|
|
|
2000/06/01 |
|
| |
bash 例解: 第3回 ebuild システムの探訪 最後の bash 例解 の記事で、Daniel Robbins 氏は Gentoo Linux ebuild システムを取り上げています。これは bash のパワーを示す優れた例となっています。ebuild システムがどのように実装されるかを段階的に示し、数多くの手ごろな bash の技法や設計戦略に触れています。記事の終わりまでには、本格的な bash ベースのアプリケーションの製作に何が関係しているかを十分に把握し、独自の自動ビルド・システムのコーディングを始めることができるでしょう。 |
|
|
|
2000/05/01 |
|
| |
正しいサーバー・サイド・スクリプト記述言語の選び方 この記事では、5 種類の主要なスクリプト記述ツール (Perl、PHP、Python、Tcl、および Java サーブレット) のそれぞれを、6 つの一般的なサーバー・サイド・タスクに適用して、それらの比較を行います。ここでは、構文を見比べて、それぞれの言語が特定のジョブをどのように扱っているのかを評価することができます。サーバー・サイド・スクリプト記述を初めて経験する方や、上記の言語のうち、2、3 しか使用したことがない方は、これらの言語がどのようなものなのかを理解することができるでしょう。現在、特定の言語を使用している場合であっても、他の言語の使い易さ、機能、およびコードの分かりやすさがどの程度のものかを理解することができます。 |
|
|
|
2000/05/01 |
|
| |
パーティションの活用: /home の移動編 この新しいヒント集では、Daniel Robbins が、実行中のシステムで区画のレイアウトを変更する方法を説明しています。また、ダウン時間を最小化し、高価につく間違いを起こさないようにするためのうまいやり方もいくつか紹介します。 |
|
|
|
2000/05/01 |
|
| |
Linuxクラスター化の宝庫 Rawn Shah は、今日 Linux で使用可能になっているオープン・ソース・クラスター化ソリューションと、クローズド・ソース・クラスター化ソリューションの両方の迷路を案内するエキスパート・ガイド役を務めます。 |
|
|
|
2000/05/01 |
|
| |
Brooksの法則とオープン・ソース: 多ければ多いほどいい 20 年ほど前に出た警句ですが、Brooks の法則によれば、プロジェクトのプログラマーを増やしてもプロジェクトを遅らせるだけだ、ということになっています。しかし、もしそうであれば、Linux についてはどう説明するのですか? Paul Jones は、オープン・ソース開発メソッドについての全体像と、その開発メソッドが昔からの知恵を無視しているかどうかについて調べています。 |
|
|
|
2000/05/01 |
|
| |
パーティションの活用: データの統合編 2 回目のコラムでは、実行中のシステム上でパーティションのレイアウトを変更します。ここでは、/tmp および /var を専用の共用パーティションに移動する方法について説明します。また、ダウン時間を可能な限り小さくしたり、大きな誤りを避けたりするための方法についても、いくつかご紹介します。 |
|
|
|
2000/05/01 |
|
| |
Linux Conference 2000 Spring レポート (以下「JLA」)が主催する「Linux Conference」は従来「Internet Week」の中で開催されていたが、今年からは独立して、春と秋の年2回に開催されることになった。この新しい運営形態で、JLAとソフトバンクフォーラム(株) が「Linux Conference 2000 Spring」 (以下「LC2000」)を先日、4月18日から20日までの期間に開催した。 |
|
|
|
2000/05/01 |
|
| |
SDL の使用、第4回: lexおよびyacc
この号では、Linux のすべてのプログラマーが使用している 2 つの有用なツール、lex および yacc
について検討します。これらのツールを使用することにより、われわれは、SDL ベースの Linux ゲーム Pirates
Ho! で使用する、スクリプト言語と GUI フレームワークを容易に構築することができました。
|
|
|
|
2000/05/01 |
|
| |
モジラカンファレンス&パーティ参加報告 米Netscape社は1998年3月31日に「Communicator」のソースコードを公開し、「Mozilla (モジラ)」が誕生した。それ以来、モジラはEric Raymond氏が「伽藍とバザール」 のエッセーで述べた、オープンソースによる開発モデルの代表的なプロジェクトとなり、世界中の注目を浴びている。 |
|
|
|
2000/04/01 |
|
| |
魔法のsys要求 カーネルやデバイス・ドライバーの開発に携わっている読者、またはカーネル・パニックを引き起こしかねないコードをマシンで実行する必要のある読者にとって、役立つヒントを教えましょう。 |
|
|
|
2000/04/01 |
|
| |
bash 例解: 第2回 bashによる初歩のプログラミングの続編 bash に関する初回の記事では、Daniel Robbins 氏が、このスクリプト言語の基本要素を取り上げて、bash を使用するべき理由を示しました。2 番目の記事である今回は、
前回の最後に触れた点から始めて、条件 (if-then) ステートメントやループをはじめとする、bash の基本的な構成体について説明してゆきます。 |
|
|
|
2000/04/01 |
|
| |
VMwareとトークンリング VMware とトークンリングを使用する場合でも、仮想マシンにIP アドレスを与えることができます。 |
|
|
|
2000/04/01 |
|
| |
SDL の使用、第 3 回: グラフィック・デザイン Sam Lantinga と Lauren MacDonell は、現在、Pirates Ho! のストーリーとグラフィック・デザインの開発に当たっています。Pirates Ho! は、スリルと冒険に満ちた Linux 用ロールプレイング・ゲームで、2 人はそれをゼロから作成しています。2 人は今回の記事で、ストーリーの制作プロセスと着想の原点について述べています。また、ゲームで使用するイメージの設計方法についても詳しく述べています。 |
|
|
|
2000/04/01 |
|
| |
Perlモジュールによる構文解析 Perl の主要目標の 1 つはテキストの構文解析です。このチュートリアルでは、テキストの構文解析に使用する CPAN モジュールについて説明し、これらのモジュールをユーザー・プログラムで簡単に使用する方法を示します。 |
|
|
|
2000/04/01 |
|
| |
GNOMEnclature: GLibの驚異 GLib は、C のプログラミングを劇的に容易にする、もう 1 つのユーティリティー・ライブラリーです。George が、その機能の概要を紹介しつつ、GLib の採用をお勧めします。 |
|
|
|
2000/04/01 |
|
| |
SDL の使用、第2回: "Pirates Ho!" のコーディング 冒険とスリルに満ちたロールプレイング・ゲームの今回の作成日誌で、この 2 人の作成者は、c++人の作成者は、C++ や各種のオープン・ソース・ツールを使用して、ゲーム・コーディングの最初のステップを説明しています。 |
|
|
|
2000/03/01 |
|
| |
パーティション計画上のヒント パーティションを正しく編成するのは楽しく、かつやりがいがあります。当ヒント集は、これらのセクターを賢く使用する手助けになります。 |
|
|
|
2000/03/01 |
|
| |
bash 例解: 第1回 Bourneシェルの生まれ変わり(bash)による初歩のプログラミング bash スクリプト言語によるプログラミングを習得すると、Linux での日常的な作業がとても楽しく、一層生産的になるばかりか、これまで愛用してきた標準的な UNIX 構成体 (パイプラインやリダイレクションなど) をさらに拡張することも可能になります。この 3 回シリーズの連載記事では、Daniel Robbins 氏が bash プログラミングについて実例をまじえながら説明します。まずは初心者のために基本中の基本ともいうべき事柄を取り上げてから、少しずつ詳しい機能を織り混ぜてゆくことになるでしょう。 |
|
|
|
2000/03/01 |
|
| |
インタビュー: Linusの新任の副官 Marcelo Tosatti氏はどんな経歴の持ち主なのか、2.4でどんなことを計画しているのか。Linuxカーネルの管理者としての喜び、恐れ、挑戦、報いについて、また、好みのハック(hack)についても語ってくれました。 |
|
|
|
2000/03/01 |
|
| |
GNOMEnclature: 手書きによるコーディングは必要ありません GNOME Canvas の先月のコラムで、George は、アプリケーションのグラフィカル・インターフェース を一から作成する方法を説明しました。今月は Glade というインターフェース設計プログラムと libglade について紹介します。Glade は、ユーザーに代わって C ソース・コードを生成し、ユーザーの負担を大幅に軽減します。また libglade は、実行時に XML ファイル (Glade の保管形式) からインターフェースを構築し、再コンパイルしないでプログラムの見栄えを変更します。George は、簡単な電話帳アプリケーションの設計を例に、これらのツールの使用法をステップバイステップで説明します。 |
|
|
|
2000/03/01 |
|
| |
SDLを使う: "Pirates Ho!"の誕生 Sam Lantinga (Simple DirectMedia Layer (SDL) の作成者) と Lauren MacDonell は、Linux 版ゲーム Pirates Ho! をゼロから設計し構築するプロセスを文書化した論文シリーズの第 1 巻の執筆を開始しました。第 1 巻では、この 2 人の作成者が当ゲームのコンセプト・プロセスを開始した経緯を述べています。 |
|
|
|
2000/02/01 |
|
| |
Python 101 cheat sheet Python コラムニスト Evelyn Mitchell が、この言語について知りたい人のために、クィック・リファレンスと学習ツールを提供します。これを印刷して手元に置き、プログラミングに取りかかりましょう! |
|
|
|
2000/02/01 |
|
| |
最大スワップ・ページ Linux サーバーのスワップ・パフォーマンスを 10 の数乗倍もの規模で改善させる方法を紹介します。サーバーを最大限に活用するためのこのような簡単な手法を著者 Daniel Robbins がくわしく説明します。 |
|
|
|
2000/02/01 |
|
| |
TclPro 1.3はTclヘビー・ユーザーにとって「買い」 Linux オペレーティング・システムや Tcl スクリプト言語のようなフリーのソフトウェア製品の重要性や価値が高まるにつれて、商業ベースの様々なアドオンが開発されてきました。その 1 つが TclPro 開発環境 であり、これはプロフェッショナル・プログラマーの生産性を飛躍的に向上させる可能性を秘めています。 |
|
|
|
2000/01/01 |
|
| |
JFS概説 JFS を使用すると、システム・クラッシュ時のファイル・システムの再始動を高速化することができます。JFS は、データベースのジャーナリング技法を用いて、数秒から数分でファイル・システムを整合性のある状態に復元できますが、これを用いないシステムでは数時間から数日を要します。 |
|
|
|
2000/01/01 |
|
| |
GNOMEnclature: 作業が楽しくなる GNOME キャンバスは、データのプレゼンテーションやゲームの作成などに役立つ強力なグラフィック・ツールです。基本的な系図プログラムのコードと GUI の作成方法を紹介した前回のコラムに引き続き、developerWorks のコラムニストである George Lebl が、このチュートリアルで簡単なグラフィック・ゲームを作成しながら GNOME キャンバスを紹介します。 |
|
|
|
2000/01/01 |
|
| |
ホーム、スマート・ホーム 赤外線センサーが裏庭の侵入者を感知し、自動スプリンクラーを始動、あるいは 911 に通報する。Java ベースの iButton キーで防護された家屋への侵入は不可能であった。1960 年代には MI6 や U.N.C.L.E. が何百万もかけた装備が、今日では Linux コンピューターと MisterHouse で実現することができる。しかも新しく配線を行う必要はないのである。 |
|
|
|
1999/12/01 |
|
| |
GNOMEnclature: GNOMEライブラリーによる簡易アプリケーション・プログラミング:第3回 先月の記事では、GNOME ライブラリーを使用した系図プログラムの作成方法を紹介しました。今月は、記憶域内の XML ツリーを操作するための一連のルーチンおよび構造である libxml ライブラリーを使用してデータのロードと保管を行い、アプリケーションを拡張します。 |
|
|
|
1999/12/01 |
|
| |
Python 101: コードのテスト 今回、著者 Evelyn は、プログラムを書く際に行われるユニット・テストの長所を説明し、簡潔なサンプル・プログラムを用いてPythonUnit テスト・ツールを解説した後、さらに Python を使用したプログラミングを例示します。 |
|
|
|
1999/12/01 |
|
| |
GNOMEnclature: アプリケーションのプログラミングを簡単にする GNOME ライブラリー:第1回 開発者で、GNOME プロジェクトのメンバーでもある George Lebl が、GNOME ライブラリーの機能の概要とアプリケーションの構築法について説明しています。GNOME ライブラリーは、GUI の作成に使用されるだけでなく、ほかの多くのプロジェクトのパーツとしても役立ちます。George Lebl氏 は、簡単な「Hello World」アプリケーションの例によって、GNOME の開発法を使用した開発法を順を追って最後まで説明します。 |
|
|
|
1999/09/01 |
|
| |