CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。
![Visitorパターンで遊んでみたよ](https://cdn-ak-scissors.b.st-hatena.com/image/square/106c7e478be88bc515873fc79870c7b92dd94618/height=288;version=1;width=512/https%3A%2F%2Fcodezine.jp%2Fstatic%2Fcommon%2Fimages%2Fczlogo4fb_ogp.png)
DUMA (Detect Unintended Memory Access)は、マルチプラットフォームのメモリデバッグライブラリです。メモリリーク、malloc()/新しいメモリバッファ内のバッファオーバーラン(またはアンダーラン)を検出することができます。DUMAは、Bruce Perensが書いたElectric Fenceライブラリのフォークです。 ダウンロード 最新ダウンロードファイル duma_2_5_15.tar.gz (日付: 2009-04-12, サイズ: 234.84 KB) duma_2_5_15.zip (日付: 2009-04-12, サイズ: 509.30 KB) duma_2_5_14.tar.gz (日付: 2008-04-28, サイズ: 232.20 KB) duma_2_5_14.zip (日付: 2008-04-28, サイズ: 502.20 KB)
ITpro EXPO AWARD 2011で優秀賞に輝いたのは、EMCジャパンのビッグデータ処理ミドルウエア「EMC Greenplum HD」である。OSS(オープンソース)の「Apache Hadoop」とのアプリケーション開発互換性を保ちつつ、同社が一から企業向けに作り直し、性能、可用性、使い勝手を向上させている。 国内の第一号ユーザーはリクルート(Webのログ解析などに利用)。2011年内は、ユーザー数社に対して限定的にGreenplum HDを導入する。2012年の年明け以降、広く一般への販売を開始する。料金はサブスクリプション(購読)形式とし、データ処理ノード1台あたり年額50万円前後としている。 ITpro EXPO 2011の展示ブース(写真1)では、実機(3台のデスクトップPC)を用いたデモンストレーションやシアター上映を通し、Apahce Hadoopと比べたGreen
こんなのを読み込んで適当な処理を施して欲しい、と。Excelのシートから各セルの値を拾い出すのはさほどに難しくはないのですが、いかんせん時間がなかったのでいったんはお断りしたところ、「Excelシートを直接読むのが面倒ならCSVからでもかまわん」とのこと。CSVならフツーにテキストファイルを読めばいいから小一時間で作れそう、昼メシ奢ってもらうのを報酬に引き受けることにしました。 CSVのフォーマット CSV(Comma Separated Values)はMS-DOSあるいはその以前からスプレッドシートのデータ・フォーマットとして使われています。CSVの規格/標準としてはRFC4180がありますが、こいつは2005年に作られたものでそれ以前のアプリケーションがRFC4180に準拠していることは期待できるはずもありません。とはいえ、まずはRFC4180に従って作られたCSVなら正しく読めるこ
Boost C++ Libraries ...one of the most highly regarded and expertly designed C++ library projects in the world. — Herb Sutter and Andrei Alexandrescu, C++ Coding Standards Welcome to Boost.org! Boost provides free peer-reviewed portable C++ source libraries. We emphasize libraries that work well with the C++ Standard Library. Boost libraries are intended to be widely useful, and usable across a br
はじめに この記事は、インドリ氏による『スレッドセーフとインテルTBBのコンテナ』に記載されている誤りを訂正することを目的としています。インドリ氏の記事では、TBBコンテナの紹介に注意するあまり、マルチスレッドプログラミングに潜む危険、その危険を取り除く方法についての記述が正しくありません。本記事では、マルチスレッドプログラミングを安全に設計する方法を説明することを目的とします。 本記事で用いるコードは、C言語に類似していますが、C言語ではありません。振る舞いを理解していただきやすくするための仮想言語です。実行できる環境はありません。 「競合」という問題 ここに、1つのリンゴがあります。そして、2人の人が、そのリンゴの前にいます。ここで2人に向かって「リンゴを食べて良いですよ」とだけ言うと、どうなるでしょうか。お互いに譲り合うか、もしくは取り合いをするでしょう。ここで2人が仲良くリンゴにあ
はじめに CPUは、コンピューターの頭脳です。単純に考えると、頭脳が2つあれば、1つの時と比べて、同じ時間でたくさんのことを考えることができそうです。10年ほど前、Intel製プロセッサーPentium IIの頃から、1枚のボードに複数のCPUを載せて高速化する試みがなされました。Intel製CPUでは2ユニットまででしたが、SUN Microsystems製のコンピューターでは、もっとたくさんのユニットを載せることができていました。今では、CPU自体に複数の「コア」を載せ、1ユニットで同時に別々のことを実行できるようになっています。 ハードウェアが、同時に複数のことを実行できるようになったため、ソフトウェアもそれに対応する必要が出てきました。本記事では、昨今あちらこちらで声高に繰り返される、「並列処理化すれば速くなる」に疑問を持ったため、それを検証することにします。 対象読者 なんといっ
はじめに Javaプログラミング言語の初期のころから、Javaはインタープリタ言語なのでパフォーマンスの点でCやC++に劣る、と主張している人たちがいました。もちろん、C++の信奉者たちは、そもそもJavaを「真の」言語だと思っていないでしょうし、Javaの連中はC++プログラマに向かっていつも「一度書けば、どこでも実行できる」と唱えています。 まず重要なことから取り上げましょう。Javaは基本的な整数演算をどれほどうまくやってのけるでしょうか。私が誰かに「2×3は?」と尋ねたら、おそらくすぐに答が返ってくることでしょう。では、相手がプログラムならどうなるでしょうか。これを調べるために、基本的なテストを行ってみましょう。テストの内容は次のとおりです。 最初にX個のランダムな整数を生成する それらの数に、2からYまでのすべての数を掛ける 全体集合の計算に要する時間を計算する 乱数の生成に要す
攻撃対象として狙われやすい文字列処理 文字列は、プログラムとユーザ、プログラムとプログラム間のインタフェースとして利用されるのをはじめ、XMLなどテキスト形式で表現された情報を処理する際にも利用されます。データのみならず、プログラムの挙動に直接影響する動作パラメタや設定情報など様々な情報がテキスト形式で表現されるにつれ、文字列を処理する機会が増加すると共に、文字列を処理すること自体の重要性が高まっています。 攻撃者にしてみれば、プログラムの挙動を操作しうる文字列処理の不備を突く機会も多く存在することになるため、文字列操作エラーを作り込まないことが求められます。文字列操作に関するプログラミングエラーはいくつかありますが、今回は基本的であるが間違いを犯しやすい文字列のNULL終端エラーについて解説します。 NULL終端エラー 文字列型を持たないC言語において、文字列は文字型の配列で表現されます
はじめに 皆さんこんにちは。JPCERTコーディネーションセンターという組織でセキュアコーディングに関する取り組みに携わる筆者らが、これからこの連載を担当させていただくことになりました。どうぞよろしくお願いします。なお、JPCERTコーディネーションセンターは、情報セキュリティインシデントへの対応支援や、ソフトウエアの脆弱性(いわゆるセキュリティホール)に関する製品開発者間における公開日の調整や関連情報の公開なども行っています。 この連載では、バッファーオーバーフロー等の脆弱性をうっかり作り込んでしまったがために、数千万円ものコストをかけて、ユーザに告知し、製品を回収して、工場でファームウェアをアップデートする事態に陥ったり、あるいは脆弱性を放置してユーザを危険にさらし、それが明るみに出て「世間を騒がす」ことになったりしなくても済むように、そもそもの製品開発時からセキュアなプログラムを書く
AIST CCFinderX 旧バージョン ライセンス (誤解を招くとのご指摘を受け、2006/10/17に表現を改訂いたしました。旧ライセンスについては、こちらをご覧ください。) CCFinderXフリーウェアライセンス 本ソフトウェアは修正せず、他のソフトウェアに組み込まない限りにおいて自由 に再配布することができます。 ライセンスキーや解凍パスワードを他人に渡すことを禁止します。 使用目的が、教育、研究、(商用・非商用を問わず)組織内での利用、本 ソフトウェアの評価のいずれかであれば、本ソフトウェアを無料で利用でき ます。 コンサルティングや不特定多数へのネットワークサービスを使用目的として、 本ソフトウェアを利用することを禁止します。(そのような目的には 商用ライセンスが必要です。) 本ソフトウェアは”現状のまま” 提供されるものとします。本ソフトウェア については、明示黙示を問わ
ソースコード・ドキュメンテーション・ツール Doxygen は、C++、C、Java、Objective-C、Python、IDL (Corba、Microsoft 風)、Fortran、VHDL、PHP、C# 向けのドキュメンテーション・システムです。 D にもある程度対応しています。 Doxygen には、次の3つの利点があります。 文書化されたソースファイルのセットから、 オンライン・ドキュメント・ブラウザ (HTML形式) やオフラインのリファレンス・マニュアル (形式) を生成することができます。 RTF (MS-Word)、PostScript、ハイパーリンク PDF、圧縮 HTML、Unix man ページ形式の出力もサポートされています。ドキュメントは、ソースから直接抽出されます。これにより、ドキュメントとソースコードの一貫性を保つことがとても容易になります。 Doxyge
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く