タグ

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

  • ルーター自作でわかるパケットの流れ ~ソースコードで体感するネットワークのしくみ

    2011年7月8日紙版発売 小俣光之 著 A5判/192ページ 定価2,068円(体1,880円+税10%) ISBN 978-4-7741-4745-1 Gihyo Direct Amazon 楽天ブックス ヨドバシ.com 書のサポートページサンプルファイルのダウンロードや正誤表など このの概要 ネットワークはどのようにつながるのか,「パケットの気持ちになって」考えてみたことはありますか? 書では,パケットキャプチャ,ブリッジ,ルーターを「プログラムとして」作りながら,パケットの流れを体感理解。ネットワークの理解がより深まるうえ,「低レイヤーでのネットワークプログラミングのテクニック」「ネットワークで実現したいことを幅広く考えられる力」「障害発生時に問題を切り分ける力」も身につきます。 こんな方におすすめ ネットワークの仕組みを頭ではなく体で覚えてみたい方 ネットワーク機器を自

    ルーター自作でわかるパケットの流れ ~ソースコードで体感するネットワークのしくみ
  • [試して理解]Linuxのしくみ ~実験と図解で学ぶOSとハードウェアの基礎知識 | Gihyo Digital Publishing … 技術評論社の電子書籍

    [試して理解]Linuxのしくみ ~実験と図解で学ぶOSとハードウェアの基礎知識 著者 武内覚 著 発売日 2018年2月23日 更新日 2019年7月1日

    [試して理解]Linuxのしくみ ~実験と図解で学ぶOSとハードウェアの基礎知識 | Gihyo Digital Publishing … 技術評論社の電子書籍
    hi_igu
    hi_igu 2018/02/26
  • 第2回 IkaLogの基本的なしくみ | gihyo.jp

    今回は、IkaLogの開発をふりかえりながら、IkaLogの画像処理の基的な考え方、そしてその背景などについて説明します。 はじめての画面認識の検討 第1回で紹介したとおり、まずはゲームの画像に対してどのような処理をすれば画像認識を達成できるかを検討し始めました。 最初に、スプラトゥーンのプレイ動画を録画してみて、録画を何度か眺めてみました。幸いなことに、スプラトゥーンゲーム中では、多くのメッセージはたいてい白色で、いつも画面上の同じ位置に表示されます。このため、白色の部分だけを抜き出して、OpenCVのテンプレートマッチング機能を利用して表示内容を検出すればいいのではないかと考えました。 スプラトゥーンのシステムメッセージが真っ白な色で表示されるということは、256階調のグレースケール画像として処理したときに、文字に近いところは255に近い値であり、つまりは非常に高いスレッショルド(

    第2回 IkaLogの基本的なしくみ | gihyo.jp
    hi_igu
    hi_igu 2017/04/29
  • 第5章 パーサコンビネータ―小さなパーサを組み合わせて大きなパーサを作る | gihyo.jp

    この章では、関数型の至宝であるコンビネータライブラリについて説明します。 コンビネータとは何か? この章でいうコンビネータとは、ある型の部品と部品を組み合わせて、同じ型のより大きな部品を作るための関数のことです。たとえば、パーサのコンビネータライブラリは、パーサを組み合わせるための各種コンビネータを提供しており、簡単にパーサを作成できます。コンビネータライブラリは、言語内DSL(Domain Specific Language)と表現してもよいでしょう。 関数型では、パーサに加えて、データを文字列でわかりやすく表示するプリティプリンタ、SQL、XML、ハードウェア記述、そしてデリバティブ(金融商品)記述、楽譜記述など多様なコンビネータライブラリが作られ、実際に使われています。この章では、パーサのコンビネータライブラリを取り上げます。 CSVのパーサ たとえ簡潔でも、実用的でないパーサの例だ

    第5章 パーサコンビネータ―小さなパーサを組み合わせて大きなパーサを作る | gihyo.jp
    hi_igu
    hi_igu 2016/04/21
  • 第1回 自動文書検査ツールRedPenとは? | gihyo.jp

    はじめに 連載ではRedPenという自動文書検査ツールの紹介とRedPenを利用した技術文書の校正方法について説明します。RedPenはオープンソースプロジェクトで、現在もゆっくりと開発が続いています。RedPenのホームページは次のとおりです。 http://redpen.cc RedPenは技術文書をターゲットにした文書の自動検査ツールです。技術文書にはマニュアルやチュートリアル、論文、仕様書等が含まれます。この記事のようなソフトウェアツールの紹介文書はもちろん技術文書の一つといえます。第1回の今回は、はじめに技術文書の特徴を解説し、その後RedPenを開発した動機について紹介します。記事の後半では、RedPenの特徴と利用方法について解説します。 技術文書の特徴 RedPenが対象とする技術文書ですが、作文や日記、文学作品等とは大きく異なる特徴をもちます。 最大の違いは、技術文書に

    第1回 自動文書検査ツールRedPenとは? | gihyo.jp
  • 第4回 わずか1週間程度でBashが大幅な進化を遂げた ~Shellshock大暴れ~ | gihyo.jp

    10月に入り、9月までに起こったことをざっと振り返るというお題がどこかから聞こえてきたので、「⁠じゃあ……」という感じで振り返ってみることとします。 わずか1週間程度でBashが大幅な進化を遂げた ~Shellshock大暴れ~ まだ現在進行形の事案ではありますが、9月下旬に発覚したBashの脆弱性に起因して、10月上旬までまだ収束していないShellshock。 Bash 4.3の例で説明すると、Patchlevel 25~30までは以下のような軌跡をたどっています。 9月24日にPatchlevel 25 9月26日にPatchlevel 26 9月27日にPatchlevel 27 10月1日にPatchlevel 28 10月2日にPatchlevel 29 10月5日にPatchlevel 30 この間に発見、修正された脆弱性は、CVE-2014-6271、CVE-2014-71

    第4回 わずか1週間程度でBashが大幅な進化を遂げた ~Shellshock大暴れ~ | gihyo.jp
  • 連載:オープンソースなシステム自動管理ツール Puppet|gihyo.jp … 技術評論社

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

    連載:オープンソースなシステム自動管理ツール Puppet|gihyo.jp … 技術評論社
  • 2011年1月14日 JavaScript、Java、Flashのマルウェア解析も! UbuntuベースのREMnux | gihyo.jp

    Linux Daily Topics 2011年1月14日JavaScriptJava、Flashのマルウェア解析も! UbuntuベースのREMnux いまさらながらだが、世の中にはSQLインジェクション対策を取っていないWebサイトがけっこう多い。SQLインジェクションの危険性はもうずっと前から指摘されているのだが、被害は減る気配を見せない。サイトを見ただけでウイルスに感染するなんて、ホントに勘弁してくれと言いたくなる。 このWebサイトは大丈夫なのか、悪意あるコードやファイルを含んでいたりはしないのか ─そんな疑問をもつユーザの要望に応えてくれるのが、リバースエンジニアリングでマルウェアを解析するUbuntuベースのディストリビューション「REMnux」だ。 REMnuxのREMは"Reverse Engineering Malware"を表している。その名の通り、リバースエンジニ

    2011年1月14日 JavaScript、Java、Flashのマルウェア解析も! UbuntuベースのREMnux | gihyo.jp
    hi_igu
    hi_igu 2012/01/26
  • 第205回 LibreOfficeのPDFエクスポート機能を活用する | gihyo.jp

    新年あけましておめでとうございます。今年もよろしくお願いします。 この連載も5年目に突入しました。ひとえに皆様のご支持のおかげです。年も役に立つこと、どう役に立てるのかさっぱりわからないけど面白いことをお届けできればと思っています。 UbuntuとLibreOfficeの1年間 実は昨年の最初(2011年1月5日)の記事『第153回 LibreOfficeを使用する』も、筆者(いくや)の担当でした。今読み返しても1年前のものとは思えず、もっと遠い昔のような気がしています。そのぐらい当時と今ではLibreOfficeをめぐる状況は全く違います[1]⁠。 例えば、昨年の記事ではCanonicalがLibreOfficeを担当する社員を探していると言及しましたが、Bjorn Michaelsenさんが2月にOracleからCanonicalに転職しました(このブログの日付は21日ですが、実際に

    第205回 LibreOfficeのPDFエクスポート機能を活用する | gihyo.jp
  • 連載:Ruby Freaks Lounge|gihyo.jp … 技術評論社

    第40回RVM(Ruby Version Manager)による環境構築(2) 三村益隆 2010-04-27

    連載:Ruby Freaks Lounge|gihyo.jp … 技術評論社
    hi_igu
    hi_igu 2011/10/09
  • 第20回 ネットワークまわりの落穂ひろい | gihyo.jp

    この連載では主にTwitter APIの利用についてしかWebへのアクセスについて解説してきませんでした。今回はTwitter API以外でのネットワークアクセスについて解説していきます。Ti.Network.HTTPClientの解説のほか、Web APIを持たない情報源からの情報の取得、つまりはhtmlでのみ提供されている情報を取得し必要な部分だけ利用する方法として、YQLの利用についても解説します。 Ti.Network.HTTPClient詳細 Ti.Network.HTTPClientについては連載第2回で解説したあと、tm_twitter_apiを経由した利用しか解説しませんでした。しかしTi.Network.HTTPClientは単体でも非常に高機能なオブジェクトです。jsonの取得だけでなく、XMLの取得や画像の取得も可能です。 XMLの取得 HTTPアクセスのレスポンスは

    第20回 ネットワークまわりの落穂ひろい | gihyo.jp
    hi_igu
    hi_igu 2011/08/30
  • 第5回 KVM仮想マシンの操作 | gihyo.jp

    virt-managerによる仮想マシンの操作 今回は、仮想マシンの運用・管理に伴う次の操作方法を説明します。 仮想マシンの作成(ゲストOSのインストール) 仮想マシンの起動/停止 仮想マシンのバックアップ(クローニング) これらの操作はGUIツールのvirt-managerから行う方法に加えて、virshコマンドなどのコマンドラインツールを利用する方法があります。また、libvirtが提供するAPIを用いて、Pythonスクリプトから仮想マシンの起動/停止を行うことも可能です。これは、仮想マシンの起動/停止を自動化する場合に利用できます。 virt-managerでは、これらの操作をGUIを利用して直感的に行うことができます。新規の仮想マシンを作成する際は、virt-managerの起動画面(仮想マシン一覧画面)で対象のホストLinux(通常は「localhost(QEMU)⁠」⁠)を右

    第5回 KVM仮想マシンの操作 | gihyo.jp
    hi_igu
    hi_igu 2011/08/21
  • 第185回 Taskwarriorでターミナルからタスクを管理する(2) | gihyo.jp

    第182回で紹介したTaskwarriorは、ターミナル上で動作する、BTSやチケットシステムに似たタスク管理ツールです。テキストベースのデータ構造とコマンドにより、非常に柔軟なカスタマイズが行えるのがポイントです。今回はそうした、Taskwarriorをより「使いこなす」ためのテクニックを紹介します。 Dropbox/Ubuntu Oneと連携する Taskwarriorのようなタスク管理ツールを利用する場合、もっとも重要なのは「利用するためのコストを下げる」ことです。こうしたタスク管理を行うには、「⁠何か思いついたら即座にタスク登録、手持ちぶさたになったらタスク一覧の確認、一日の仕事の始めと終わりにタスクを確認……」と、とにかくこまめにタスクを確認する必要がありますから、確認のための操作はできるだけ手軽である必要があります。 一方で、Taskwarriorのデータディレクトリは、原則と

    第185回 Taskwarriorでターミナルからタスクを管理する(2) | gihyo.jp
    hi_igu
    hi_igu 2011/08/17
  • 第175回 SKKで快適な日本語入力を体験しよう | gihyo.jp

    Ubuntuの日本語入力には、インプットメソッドにIBus、かな漢字変換にAnthyが採用されています。また最近人気のMozcもUniverseリポジトリから簡単にインストールできるようになっていますので、利用されているユーザも多いのではないでしょうか。 しかし今週のレシピはそんな時流に逆らって、Emacs上で快適な日本語入力を実現するSKKを紹介します。 SKKとは SKKはSimple Kana to Kanji conversion programの略で、Emacs上で動作する日語インプットメソッドです。Elispによって実装されているためEmacsが動くなら、UbuntuでもWindowsでもMacでも、はたまた他のOSであっても同じ日本語入力環境を構築することができます。 SKKの最大の特徴であり、他のインプットメソッドと大きく異なる部分が、プログラムによる形態素解析を行なわな

    第175回 SKKで快適な日本語入力を体験しよう | gihyo.jp
  • Ubuntu Weekly Recipe: 第18回 あえてターミナルを使う(1) : ターミナルに関する設定

    Ubuntuでは、ほとんどの操作をGUIから行えるように配慮されていますが、中身はLinuxですので、各種コマンドを直接利用することもできます。何回かに分けてターミナル(端末)を利用したレシピをお届けします。 今回はまず第一回として、端末を頻繁に使う場合のノウハウを中心にお伝えします。 Ubuntuでのターミナル Ubuntuでは、ターミナル(gnome-terminal)は、[⁠アプリケーション⁠]⁠→[⁠アクセサリ⁠]⁠→[⁠端末]からアクセスできます。積極的に利用する場合、やや問題になる点が幾つかありますので、必要に応じて設定を行ってください。 まず、gnome-terminalは、デフォルトでは一部の文字の文字幅を正しく扱えません。問題になりうるのは、多くの場合は■や△、○などといった記号です。 図1 文字幅が正しく扱われていないターミナル このような問題に遭遇した場合、環境変数と

    Ubuntu Weekly Recipe: 第18回 あえてターミナルを使う(1) : ターミナルに関する設定
  • 第4回 データモデルとデータアクセスのサンプル(Java、Ruby) | gihyo.jp

    前回は、Evernote APIのデータモデルやデータアクセスのについて解説しました。今回は具体的にJavaRubyのサンプルコードを見ることで、その理解を深めたいと思います。 UserStoreサービスに接続するためのクライアント まずはユーザ認証をするために、Thriftを通してUserStoreサービスに接続するためのクライアントを作成します。JavaRubyのコードは以下の通りです。 UserStoreクライアントの作成(Java) String userStoreUrl = "https://sandbox.evernote.com/edam/user"; THttpClient userStoreTrans = new THttpClient(userStoreUrl); TBinaryProtocol userStoreProt = new TBinaryProtocol

    第4回 データモデルとデータアクセスのサンプル(Java、Ruby) | gihyo.jp
  • 第171回 Ubuntu 11.04で快適メモ生活 | gihyo.jp

    第25回では、Ubuntu上で手軽にメモを取る方法を紹介しました。ですが、この記事はもう3年近く前に執筆されたもので[1]⁠、今現在とは少し事情が異なっている部分もあります。そこで今週はUbuntu 11.04の事情にあわせた、メモの活用方法を紹介します[2]⁠。 Tomboyでメモを取る Ubuntu 11.04でも、標準のメモアプリはTomboyです。Tomboyを起動するには、UnityのDashにtomboyと入力して検索するか、Launcherの"アプリケーション"を右クリックして"アクセサリ"を選択すると表示される、Tomboyのアイコンをクリックしてください。 図1 UnityのDashからTomboyメモを起動する メモの作成 Tomboyが起動すると、パネル右上のインジケータにメモ帳の意匠をしたTomboyのアイコンが表示されます。ここからメモの作成や検索、既存のメモを開

    第171回 Ubuntu 11.04で快適メモ生活 | gihyo.jp
    hi_igu
    hi_igu 2011/05/12
    C-c , , で起動した…
  • 第3回 Evernote APIの基礎:データモデルとデータアクセス | gihyo.jp

    Evernoteと連携するには 前回、Evernoteと連携をするアプリケーションのアイデアについて話しましたが、Evernoteと連携するための方法は大きく分けて2つあります。1つは各プラットフォーム上のEvernoteクライアントが提供する仕組みを使う方法、もう1つはEvernote APIを使う方法です。どちらを使うかは開発者の自由です。 各プラットフォーム上のEvernoteクライアントには、Evernoteと連携するための仕組みが備わっています。WindowsではEvernote.exeやENScript.exeにコマンドを指定することで、ノートを作成するなどの簡単な操作を行えるようになっています。Mac OS XではAppleScript、AndroidではIntentで同様のことが可能です。単純な連携であれば、これらの仕組みを使うのが簡単です。たとえば、pomeraで作成した

    第3回 Evernote APIの基礎:データモデルとデータアクセス | gihyo.jp
  • 1