タグ

ブックマーク / gihyo.jp (22)

  • Javaはどのように動くのか~図解でわかるJVMの仕組み 記事一覧 | gihyo.jp

    運営元のロゴ Copyright © 2007-2024 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

    Javaはどのように動くのか~図解でわかるJVMの仕組み 記事一覧 | gihyo.jp
    pasela
    pasela 2015/01/13
  • 2015年のLinuxのコンテナ技術 | gihyo.jp

    2014年は非常にDockerが盛り上がった1年でしたね。 Dockerは2013年の夏ごろから注目を集めはじめました。その後バージョンが0.9となった2014年の春ごろからさらに注目を集めるようになり、それ以降はさまざまなサービスやベンダーがDockerをサポートしたり、Docker関連のプロダクトを出したりするニュースが駆け巡った気がします。 Dockerに関係する勉強会が数多く開催されるようになり、Docker Meetup Tokyoなどは募集が始まった途端に定員に達するという活況ぶりでした。 Dockerは「コンテナ技術」そのものではなく、Dockerがやりたいことを実現するための技術要素の1つとしてコンテナを使っています。このDockerの盛り上がりと共にそれまでどちらかというとマイナーな技術であった「コンテナ」も2014年には非常に注目される技術となりました。 実際、筆者が主

    2015年のLinuxのコンテナ技術 | gihyo.jp
  • LXCで学ぶコンテナ入門 -軽量仮想化環境を実現する技術 記事一覧 | gihyo.jp

    第54回Linuxカーネルのコンテナ機能 ―cgroup v2から使うCPUの帯域幅制限(2) 加藤泰文 2023-11-08

    LXCで学ぶコンテナ入門 -軽量仮想化環境を実現する技術 記事一覧 | gihyo.jp
  • 第3回 ブランチvs.フラグ | gihyo.jp

    とっておきの変更 ソフトウェアをいつでもリリースできるようにしろと求める継続的デリバリの広まりにより、毎日のようにソフトウェアがリリースされるようになりました。早いうちからコードを野にさらせば、隠れた問題を前もって見つけることができるからです。 短いリリース間隔に身を置くと気づくことがあります。「⁠リリースできること」と「リリースしたいこと」は、必ずしも一致しないのです。たとえば大規模なビジュアルデザインの変更やとっておきの新機能を想像してみましょう。こうした粒度の大きい変更は、たとえ動作する、つまりリリース可能な状態でも、そのまま衆目にさらしたいとは限りません。期待を裏切らない形でお披露目したい、とっておきの変更があります。息を飲む新しい体験がもたらすユーザの驚きや喜びも、ソフトウェアにとっては大切な財産だからです。 とっておきの変更を仕上げるには時間がかかります。一方で、その仕上げが終

    第3回 ブランチvs.フラグ | gihyo.jp
  • [動画で解説]和田卓人の“テスト駆動開発”講座 記事一覧 | gihyo.jp

    第16回プログラミング言語とTDDは、どちらを先にマスターすべきか? 和田卓人 2007-12-21

    [動画で解説]和田卓人の“テスト駆動開発”講座 記事一覧 | gihyo.jp
  • 2012年注目のモバイル向けJavaScriptフレームワーク・ライブラリあれこれ | gihyo.jp

    昨年は、スマートフォンが急速に普及した年でした。それに伴って、モバイルサイトの重要性が増し、多くのモバイル向けJavaScriptフレームワークやライブラリが産まれました。稿では、それらのモバイル向けのJavaScriptフレームやライブラリの中から、ピックアップして紹介していきたいと思います。 豊富な機能やリッチなインターフェースが多く用意されているフレームワーク まずは、モバイルサイトの構築を一から行えるフレームワークを紹介します。jQuery MobileやSencha Touchといった著名なフレームワークを始めとして、jQTouchやiUIなど比較的軽量なフレームワークまで簡単に解説します。 jQuery Mobile jQuery Mobileは、有名なJavaScriptライブラリであるjQueryをベースとしたモバイル向けのフレームワークです。ネイティブアプリのようなUI

    2012年注目のモバイル向けJavaScriptフレームワーク・ライブラリあれこれ | gihyo.jp
  • 第40回 RVM(Ruby Version Manager)による環境構築(2) | gihyo.jp

    前回は、RVMのインストール、RVMで Rubyをインストールして使う方法を紹介しました。今回は、以下の3つを紹介していきます。 RVMを最新版にアップデートする RVMを使って複数のバージョンのRubyでスクリプトを実行する GemSetsについて RVMを最新版にアップデートする RVMは、Bugfixや機能追加が毎日行なわれている活発なプロジェクトです。開発者の方は、なるべく最新のバージョンを使うことを推奨しています。ここでは、RVMを最新版にする方法をみてみましょう。 "rvm update --head"を使用すると開発リポジトリであるhttp://github.com/wayneeseguin/rvmから最新版を取得します。githubから取得するため、環境にgitがインストールされている必要があります。 % rvm update --head アップデートされたRVMを使うた

    第40回 RVM(Ruby Version Manager)による環境構築(2) | gihyo.jp
    pasela
    pasela 2011/07/01
  • 第39回 RVM(Ruby Version Manager)による環境構築 | gihyo.jp

    はじめに Rubyの普及にともない、Rubyの生みの親である、まつもとゆきひろ氏がC言語で作成したRubyインタプリタ(CRuby)以外にも、JVMで実行されるJRuby、Objective-Cで実装されMacアプリケーションのプログラミングのできるMacRuby、CRubyベースにメモリ管理に改良を加えているRuby Enterprise Edition等、プログラミング言語Rubyを実行できる環境が増えてきました。またCRubyに関しても、現在最も使われているバージョンである1.8系以外にも、最新の安定版である1.9系も普及期にはいってきました。 今回は、複数のRuby実行環境の管理を簡単にするRVM(Ruby Version Magager)を紹介します。 RVMとは RVMはUNIX系の環境で、複数のRuby処理系をインストール、共存させることができるツールです。 ひとつの環境に対

    第39回 RVM(Ruby Version Manager)による環境構築 | gihyo.jp
    pasela
    pasela 2011/07/01
  • 第33回 enc2xs:標準の文字コード表にはない文字を変換する | gihyo.jp

    Encodeを使っても文字化けするとき Encodeは特定のエンコーディングにしたがって配列されたバイナリを「文字列」に置き換えるためのモジュールですが、かならずしもすべてのエンコーディングがあらゆるバイナリの組み合わせに対応しているわけではありません。 たとえば、「⁠シフトJIS」環境における機種依存文字の例としてよく取り上げられる丸付き数字をEncodeのお作法通りにdecode、encodeする場合、「⁠シフトJIS」だからと思って安易にshiftjis系列のエンコーディングでdecodeしてしまうと、丸付き数字のマッピングデータがないため「?@」のように文字化けを起こしてしまいます。 use strict; use warnings; use Encode; my $binary = pack('C*', 0x87, 0x40); # ①; my $string = decode(

    第33回 enc2xs:標準の文字コード表にはない文字を変換する | gihyo.jp
  • 第25回 Module::Starter:モジュールを書くためのテンプレート | gihyo.jp

    モジュールを再利用可能にするためのツールたち Perl 4の時代まではいざ知らず、いまどきPerlのモジュールやアプリケーションを再配布しようと思ったら、CPANモジュールと同じ形式にしておくのがベタープラクティスです。たとえ一般には公開しない社外秘のモジュールであっても、Makefile.PLやBuild.PLを用意して、テストも書いて、できればREADMEやChangesなどの更新履歴もつけておけば、別のプロジェクトを立ち上げたときにコピー&ペーストする必要もなくなりますし、業務の引き継ぎなども簡単になります。 とはいえ、モジュールを書くたびにMakefile.PLなどを一から書きおこすのは面倒な話。メタ情報の部分はモジュールごとに異なるとはいえ、それ以外の部分は(特にひな形の時点では)大差ないのがふつうですから、できれば省力化したいところです。 今回はそんなときに使われるひな形作成ツ

    第25回 Module::Starter:モジュールを書くためのテンプレート | gihyo.jp
    pasela
    pasela 2010/02/09
  • 第20回 Email::Sender:メールを送信する | gihyo.jp

    メール送信のあれこれ たとえばウェブアプリケーションでなにかの注文を受け取ったとき、あるいはシステム管理ツールでなにか異常を発見したとき、ユーザや管理者にメールを送れるようにしたい、というのはよくある要件です。昔はヒアドキュメントやテンプレートエンジンなどを使って送信したいメールを用意したあと、sendmailへのパイプを開いてメールを流し込んでいたものですが、いまはメールの作成から送信まで、すべてモジュールを使って実現できるようになっています。 とはいえ、需要が大きいだけにメール関係のモジュールは山のようにあります。ディストリビューション(パッケージ)の数だけで500を数えますし、メール関係の名前がついたモジュールは現在CPANにアップロードされている7万以上ものモジュールのほぼ1割を占めるほどです。これではどれを使えばよいのかわからないという声があがるのも当然でしょう。 そこで今回はP

    第20回 Email::Sender:メールを送信する | gihyo.jp
  • ついに出た!最新Perlフレームワーク「Ark」徹底解剖:第1回 Arkって何だ? -Ark が生まれるまで|gihyo.jp ... 技術評論社

    はじめまして。面白法人カヤックの村瀬と申します。ArkというWebアプリケーション作成用のフレームワークを開発しました。今回から4回にわたって、このリリースしたばかりの「Ark」について紹介させていただきます。 Ark(アーク)とは Arkは、Perlで作られたWebアプリケーションフレームワーク(WAF)です。 Arkの特徴としては Catalystに似たインターフェース CGI/FCGI/mod_perlなどさまざまな環境で実用的に動作する CGI用モードの存在 日製であり、日語ドキュメントが充実している などが挙げられます。 Catalystに似たインターフェース Catalystは、Arkと同様にPerl製のWebアプリケーションフレームワークで、現在、Perlのフレームワークでは標準となりつつあるものです。 Arkは開発動機の1つが「CGIでも実用的に動作するCatalyst

    ついに出た!最新Perlフレームワーク「Ark」徹底解剖:第1回 Arkって何だ? -Ark が生まれるまで|gihyo.jp ... 技術評論社
  • 第4回 UTF-8の冗長なエンコード | gihyo.jp

    今回は、文字コードに関連するセキュリティの話題では古参ともいえるUTF-8の冗長なエンコードというテーマについて紹介します。 UTF-8とは UTF-8は、各文字を1~4バイトの可変長で表現するUnicodeの符号化方式のひとつです。 U+0000からU+007Fの範囲の文字を0x00から0x7Fの1バイトで表現しているため、US-ASCIIと互換性がある、バイト列の途中からでも文字の先頭バイトを簡単に検出できる、多バイト文字の途中に0x00や0x5C(\⁠)⁠、0x2F(/)などが現れない、などの特徴があります。 UTF-8での文字のビットパターンは表1のようになります。 表1 UTF-8でのビットパターン

    第4回 UTF-8の冗長なエンコード | gihyo.jp
  • 第66回 「Ubuntuらしく」仮想マシンを使う(2):ubuntu-vm-builderをターミナルで動かす | gihyo.jp

    Ubuntu Weekly Recipe 第66回「Ubuntuらしく」仮想マシンを使う(2):ubuntu-vm-builderをターミナルで動かす 今回は61回で紹介したubuntu-vm-builderで構成した仮想マシンを、「⁠ターミナル内で」動作させる方法を紹介します。 サーバーにおけるビデオカードの必然性(仮想マシンに限らない話) 仮想マシンを「ターミナルで」動作させる前に、少しだけ「ビデオカードの存在しないマシン」の話について触れてみましょう。 一般的なPCの利用形態では、ビデオカード(もしくはノースブリッジ等に内蔵されたビデオチップ機能)の存在は欠かせません。モニタに画面を表示するためにはこれらのチップを用いてアナログ、ないしはデジタルで出力する必要があります。 しかし、ほとんどのサーバーはネットワーク越しに利用されるものですし、管理者が行うべき作業のほとんどもSSH越しに

    第66回 「Ubuntuらしく」仮想マシンを使う(2):ubuntu-vm-builderをターミナルで動かす | gihyo.jp
  • 第3回 US-ASCIIによるクロスサイトスクリプティング | gihyo.jp

    今回は、US-ASCIIによるクロスサイトスクリプティング(XSS)という話題について紹介します。 前回までで説明したUTF-7によるXSSと同様に、攻撃者はUS-ASCIIという文字コードを巧みに利用することで、IEを対象にXSSを発生させることができます。US-ASCIIによるXSSは、UTF-7によるXSSと類似点も多いため、前回までの説明も併せて読んでおくとよいでしょう。 US-ASCIIによるXSSについても先に対策を書いてしまうと、UTF-7のときと同様にHTTPレスポンスヘッダにて Content-Type: text/html; charset=UTF-8 Content-Type: text/html; charset=Shift_JIS Content-Type: text/html; charset=EUC-JP のいずれかを出力するという原則を守ることで、完全に攻撃

    第3回 US-ASCIIによるクロスサイトスクリプティング | gihyo.jp
  • 第0回 認証統合の概要とSamba | gihyo.jp

    最近の企業ネットワークにおいて、Active Directoryが存在していない環境というのは、まず考えられません。Active Directoryにより、Windowsサーバにアクセスする際のユーザ名やパスワードについての一元管理が実現されます。一般のユーザはあたりまえのように、この恩恵を享受していることが多いと思います。一方、Linuxも企業ネットワークの中で着実に地歩を固めつつあると言えます。結果として、大半の企業ネットワークはWindowsLinuxの混在環境になっているというのが昨今の実状と思われます。 こうした場合に管理者が直面する課題の1つは、せっかくActive Directory(以下ADと呼びます)によりWindows環境では認証の一元管理が実現しているにもかかわらず、Linuxマシンは個々に認証を行わざるを得ないという点です。 年第一弾として始まる連載では、この

    第0回 認証統合の概要とSamba | gihyo.jp
  • 第45回 Ubuntu 8.10を使い始める | gihyo.jp

    Ubuntu 8.10がリリースされ、2週間強が過ぎました。今回は8.04から8.10への移行に関するいくつかのレシピと、8.10で追加された新機能の使いこなし方について説明します。 Ubuntu 8.10の新機能 10/30にリリースされたUbuntu 8.10ではゲストセッションやpython-vm-builder・ゲストセッションや、37回、42回やUbuntu Mobile(Ubuntu UMPC)などのいくつかの機能が追加されました。一方で、リリースノートには注意すべき点も記載されています。これらのうち、特に注意すべき事柄について確認していきましょう。 8.10で注意すべき点 8.04から8.10へアップデートした場合・8.10から初めてUbuntuを利用する場合ともに、以下の点に特に注意する必要があります。 一部の無線LANデバイスの利用に設定が必要 リリースノートにもある通り

    第45回 Ubuntu 8.10を使い始める | gihyo.jp
    pasela
    pasela 2008/11/19
  • 第1回 5分でわかるUnbound | gihyo.jp

    特集では、次世代DNSサーバソフトウェア「Unbound」にフォーカスし、機能や特徴を解説しながら、実際の運用ノウハウについてお届けします。第1回目はUnboundの基礎知識について解説します。 Unboundの概要 UnboundはBINDの代替を目指したDNSキャッシュサーバです。2008年5月20日に正式版1.0がリリースされました。オープンソースのソフトウェアとして公開されており、ライセンスはBSDライセンスです。 UnboundはNLnet Labsにより開発と保守が行われています。UnboundはVerisign labs、Nominet、Kirei、ep.netによりJavaで開発したプロトタイプを、NLnet LabsがCで実装し直したものです。ちなみに、NLnet Labsはルートサーバとしても利用されているDNSコンテンツサーバのNSDも開発しています。リリースされた

    第1回 5分でわかるUnbound | gihyo.jp
  • 2008年4月23日 NVIDIAドライバの性能をアップさせる方法 Compiz Fusion編 | gihyo.jp

    heads-up NVIDIA + Compiz NVIDIAドライバ(x11/nvidia-driver)とCompiz Fusion(x11-wm/compiz-fusion)を使っている場合、次のようにCompiz起動時にオプション“⁠--loose-binding⁠”を指定することで動作速度を改善できます。NVIDIAドライバはテクスチャのバインディング処理が遅いところがあるため、このオプションを指定することでCompizの動作が改善されることになります。 この結果、Xorgサーバが消費するCPU時間が短縮され、他の処理にCPUパワーをまわせるようになります。NVIDIAドライバを使っている場合はほとんどの場合で推奨できるオプションです。NVIDIAドライバを使っている場合には試してみてください。 compiz --loose-binding --replace 最近のNVIDIA

    2008年4月23日 NVIDIAドライバの性能をアップさせる方法 Compiz Fusion編 | gihyo.jp
  • 特集:Firefox 3とFirebugで始めるJavaScript開発|gihyo.jp … 技術評論社

    第3回Command Line APIとその活用、各タブからのデバッグ方法 堀邦明 2008-05-21

    特集:Firefox 3とFirebugで始めるJavaScript開発|gihyo.jp … 技術評論社