1  |  2  |  3  |  4  |  5  |  6  |  7  | ALL page

2007年03月15日

コンピュータの構成と設計(上)を読了

コンピュータの構成と設計~ハードウエアとソフトウエアのインタフェース第3版(上)

コンピュータの構成と設計~ハードウエアとソフトウエアのインタフェース 第3版 (上)

第4章は、コンピュータの性能に関するお話。性能には様々な指標があるけど、最終的には処理の実行時間が絶対的な指標になります。ベースとなるのは、「CPU実行時間 = 命令数 * CPI(1命令の平均クロック数) * クロックサイクル時間」といった式です。CPU実行時間を小さくするには、どの要素をどう下げたらよいかが、性能に関する考察になります。各要素が互いに関係し合うので、複雑です。

ここで、上巻は終了です。現在下巻を読んでいますが、プロセッサ内部の理論になり、個人的には難しく感じています。それに、上巻に書いた内容をベースとして話を展開しているため、理解があやふやなままのうちには辛いです^-^;

投稿者 bokupi : 23:32 | コメント (0) | トラックバック

2007年03月02日

コンピュータの構成と設計(上)を第3章まで読了

コンピュータの構成と設計~ハードウエアとソフトウエアのインタフェース第3版(上)

コンピュータの構成と設計~ハードウエアとソフトウエアのインタフェース 第3版 (上)

パターソン&ヘネシー著の「コンピュータの構成と設計」、通称パタヘネ本を読んでいます。うちが買ったのは第3版で、これまでのものと比べてだいぶ薄くなっています(削られた部分は、付属のCD-ROMにPDFファイルとして収録)。なので、幾分か読みやすくなっていると思います。第2版では上下巻合わせて1000ページ以上だったものが、第3版では600ページ程度に納められています。

第1章では、コンピュータのハードウェアの構成について説明されています。CPU内部の写真もあり、へえといった感じです。半導体関連の部分はほとんど知らなかったので、勉強になりました。ウェハーやダイ、トランジスタ、歩留りの原因など、これまで漠然と言葉だけを聞いてきたものが、繋がっていく感じがよかったです。

第2章では、MIPSを例にしたアセンブラの説明です。加算などの単純な命令から始まり、条件分岐や繰り返し文など徐々に追加されていきます。そのなかで、メモリ領域の扱いやレジスタの役割など、学ぶことができます。トップダウンに列挙するのではなく、なぜその命令やレジスタが必要か、そうしたボトムアップなアプローチが、とてもわかりやすかったです。このあたりの知識に乏しかったうちでも、かなりの内容を修得することができました。さすがは、教科書と言われる本だと思います。

第3章では、整数演算と浮動小数点演算に関する内容です。内容自体は、大学での講義や情報処理技術者試験で学んだものです。当然、それらより深く掘り下げていますが。浮動小数点演算には、専用のレジスタを用意しているんですね。

てな感じで、まだ半分も読み終えていませんが、なかなか面白いです。簡単ではないですが、難しくて読めないということもないです。

投稿者 bokupi : 21:50 | コメント (0) | トラックバック

2007年02月28日

ShockwavePlayerがクラッシュ

ゲーム作りも終盤にさしかかっている最中、ふと開発マシン以外のPCで動かしてみようと思いました。さっそく実行環境をコピーして実行。すると、3Dの描画を含むメイン部分にさしかかると、クラッシュするではありませんか(汗。利用したのがFirefoxだったので、IEでも試してみましたが、結局駄目でした。果たして、このマシン特有の現象なのでしょうか。それを確かめるために、ノートPCを引っ張り出して同じように試してみました。こういうとき、複数のPCを持ち合わせていると、いいですね^-^;。しかし結果は変わらずということで、マシン特有というわけではなさそうです。

で、デバッグをしていくわけですが、ブラウザ上のShockwavePlayer実行時のデバッグツールは知りません。なので、ちまちまコードを削りながら犯人探し。2時間ほどかけてようやく見つけたのは、3Dキャストメンバにオーバレイ表示させていたテキストキャストメンバでした。ここに書かれている"タッチダウン"という文字列がよくないみたいです。この文字列に空白を加えたりすると、症状は解決しました。

文字列、クラッシュ、となると、メモリ関連のバグが思い浮かびそうですが…。この問題がオーサリングツール側にあるのか、プレイヤー側にあるのかも、気になります。ただ、開発マシンでは普通に動くという点が、不思議です。

投稿者 bokupi : 21:59 | コメント (0) | トラックバック

2007年01月30日

Perlの改行コード

少し久しぶりにPerlのコーディング。今作っているゲームのランキング登録および閲覧用のcgiです。合計200ステップ足らずの小さなコードですが、久々に触ると思わぬところで躓いてしまいます。

極々単純な20ステップくらいのコードを書いて実行したら、500エラー。あれ?と思い、どんどん削っていき、3ステップくらいになったのに、エラー。Apacheのログを見ると、"No such file or directory"のメッセージ。以前もこんなメッセージに悩まされていたような…。Perlの実行パスを調べたけど正常だし、八方塞になりかけたとき、ネット上に答えが。犯人は改行コードでした^-^;。最初SJISで作成して、途中でEUC-JPに変換したのですが、そのさいに改行コードはCRLFのままだったため、このような事態に。Perlの実行パスは正常に見えて、実は余分なCRが付いていたのです><)

確かに以前も同じことを、数回やってました(汗。学習能力が…。でも、気づかないとなかなか気づけない、落とし穴的なところかなあ、と思います。

投稿者 bokupi : 23:02 | コメント (0) | トラックバック

2006年12月26日

MTの処理が重かった原因

ここ最近、MTで日記を更新するさい、やけに時間が掛かりました。エントリ数もそれなりに溜まっているし仕方ないかなあ、と思っていました。ところが、5分経っても画面が切り替わらなかったりと、あまりにも重すぎる状態を目の当たりに。すると、普通にエントリ画面を開くだけでも、ずいぶんとモッサリしているではないですか。

おかしいな、と思い、topコマンドを打ってみたら、topコマンドのプロセス名が2つ…。片方のCPU時間がすごいことに(汗。しかも結構CPUを食っています。慌ててkillしたら、無事症状が改善しました。まあ、もともとMTの更新は重いんですけど(苦笑

てか、たまにサーバもリブートしたほうがいいですね。ただ、自動起動スクリプトをサボっているものが何点かあるため、積極的になれなかったり^-^;

投稿者 bokupi : 23:18 | コメント (0) | トラックバック

2006年12月22日

N88-BASIC資産を復活させる試み

うちは中学時代、コンピュータ同好会に入っていました。そして、そこにあったPC88を使い、N88-BASICで拙いSHTやRPG、音楽演奏ソフトなどを作りました。で、その頃作ったものがFDのなかに残っているのですが、これを読み込む手段がないのです。初代PCのPC9821Cb2があった頃は、N88-BASICがROM内蔵されていたので良かったのですが。

で、いろいろトライです。まず当時使っていたFDは、2HDの1.2MBフォーマットと思われます。なので3モードFDDが必要です。以前買った外付けUSBのFDDが3モード対応だったので、試してみました。うーん、他の2HD1.2MBなFDは読めますが、問題のFDは読めません。

見たところ、物理フォーマットから、DOSとは違うようで。そういや、遠い記憶で、FDが1.0MBだった気にします(上で書いた1.2MBは嘘ですね…><)。。せめてDOS-BASICなら良かったのに(DOS-BASICのシステムディスクは読めました)。当時は、ゲームを作りたい一心で、DOS-BASIC?なんだそら、とシステム方面への関心はゼロだったことが、今に悔やまれます--;

う~ん、やはり実機を買うしかないのでしょうか。とりあえず、今回いろいろ調査をして、実機上から現在の環境に移行する方法は、何となくわかったので。

…いや、むしろどこかの変換サービスに頼んだほうが良い気がしてきました。自分でいろいろ試してみたいという技術的好奇心もあるのですが、費やす時間を考えると少々割高な気もします。変換したいFDは高々3枚程度であり、1万円も出せば平気のようですし。まあ、言うほどポーンと出せる金額でもないですが^-^;

先週の土曜はこれの調査で、ほぼ1日潰れました^-^;。そして、今日もついつい半日ほど潰してしまいました。懐かしさというか、古い地図を頼りに、宝探しをしている気分で、少し楽しかったりします。でも、時間が…、他にやるべきことがあるというのに(汗

投稿者 bokupi : 12:57 | コメント (0) | トラックバック

2006年11月24日

ITRONプログラミング入門を読んで

ITRON関連の本(借り物)を半分ほど読了しました。後半はサンプルプログラムの説明や、実践的なテクニックの紹介なので、まだ読まずにおいています。

ITRONプログラミング入門
ITRONプログラミング入門(Amazon)

以下に、自分なりに理解した内容をまとめてみました。あくまで、うち自身の備忘録として書いたものですので、まったく適切な概要ではないことを、ご承知おきください。

ITRONをベースとした、カーネル一般についての話

割り込みの仕組み

割り込みとカーネルとタスクの関係

カーネルの4つの機能

その他、気になったところをメモ

投稿者 bokupi : 18:08 | コメント (0) | トラックバック

2006年09月23日

写真管理システムを作成

既に、少し前のエントリから導入していますが、album.omoshiro-joho.comに写真管理システムを設置しました。撮影日やコメント、タグなどのメタ情報と、サムネイルなどの画像情報を、mysqlで管理しています。フロントエンドはphpを利用しています。

使い勝手はまあまあかと思っています。ただし、画像の追加などは基本的に手作業なので、そこを何とか自動化したいですね。画像をドラッグ&ドロップしたら、EXIF情報を抽出してくれるような仕組みがあったら、便利だと思います。

Flickrのような既存のオンラインサービスを使う手もありますが、やはり自分の融通の利く距離に置きたいので。

ウェブアルバム

投稿者 bokupi : 01:34 | コメント (0) | トラックバック

2006年08月28日

CVSでプロジェクトを管理

プロジェクトに関するあらゆるものをCVSに登録して、一元管理することにしました。ただ、現在CVSクライアントとして利用しているのはEclipseです。ドキュメントを更新するために、わざわざEclipseを立ち上げるのは煩わしいです。そこで、新しくWinCVSを、CVSクライアントとして導入することにしました。

ネット上の情報が古い版のものが多く、少し設定に手間取りましたが、無事使えるようになりました。さっそくkmftとpmsの2プロジェクトをリポジトリ登録。こうすることで、各プロジェクトの成果物が整理されていいですね。

投稿者 bokupi : 01:16 | コメント (0) | トラックバック

2006年08月12日

Linuxサーバマシンの解像度を変更

サーバを新しいCPU切替器に接続するため、一旦停止しました。ファン口を見たら埃が結構溜まっていたので、ついでに分解してお掃除。それからケーブルの接続を済ませて起動です。

そしてさらについでに解像度の変更を行いました。以前もXconfiguratorで解像度の変更を試みたのですが、失敗したのでリトライです。すると前回と同じように、Xconfiguratorで設定して最後のXサーバ起動テストのところでフリーズします。VRAMは古いものとはいえ、8MBあるのでSXGAにも耐えられるはずなのですが。駄目もとでテストをスキップして再起動をしてみました。すると、ちゃんと解像度の変更に成功しているではないですか!

テキストログインにしていると、こういった冒険が気軽にできて便利ですね。何はともあれ、モニタに適した解像度になり、見やすくなってよかったです^-^。

投稿者 bokupi : 12:28 | コメント (0) | トラックバック

ALL page |  1  |  2  |  3  |  4  |  5  |  6  |  7