IT Junk Box
- August, 2007 -
2007.08.01(水)
■ Google のページランク表示 [Net]
K.Kodama's page: ruby script to get Google PageRank 日本語の説明
Google の PageRank を表示する gprank.rb が更新されてました。
早速、使わせてもらうと
> gprank.rb -u http://www.yahoo.co.jp/
gprank.rb:113: undefined local variable or method `opt_uri' for main:Object (NameError)
といったエラーが出ます。調べてみると 86, 113 行が、まずいようです。
86: proxy="10.1.4.1"; proxy_port=8080 # with proxy port 8080/HTTP-Alternate
113: uri=opt_uri
この2行の行頭に # を付けてコメントにすると下記のように動作するように
なりました。
> gprank.rb -u http://www.yahoo.co.jp/
PageRank: 8 : http://www.yahoo.co.jp/
■ MASM の入手 [Windows] [DOS]
MASM 8.0 の MASMsetup.EXE から ml.exe を取り出すのが面倒なようですが、
Windows 2000/XP だと下記のおまじないが使えるようです。一時的な C:\tmp は,
好みの場所を指定します。
rem masm8set.bat
SET TMPPATH=C:\tmp
MASMsetup.EXE /Q /C /T:%TMPPATH%
move %TMPPATH%\setup.exe .
setup.exe /Q /C /T:%TMPPATH%
move %TMPPATH%\vc_masm.msi .
move %TMPPATH%\vc_masm1.cab .
expand.exe vc_masm1.cab ml.exe
■ TASM32 の入手 [Windows]
Turbo Explorer の Turbo C++ に入っています。ファイルが大きくインストール
に時間がかかるのて余裕があるときでないと敬遠したくなるほどです。
下記のように Inprise の頃のバージョンです。
Turbo Assembler Version 5.3 Copyright (c) 1988, 2000 Inprise Corporation
以前、配布されていた C++BuilderX Personal (cbx1_personal_windows.zip) も
同じバージョンの TASM32 が入っていました。
2007.08.06(月)
■ RTC の方のタイマを使ってみる [PC] [DOS]
RTC の使用例がなかなか見付からないので作ってみました。 PC/AT 互換機
の DOS で実行すると下記のように表示します。
> clkcnt
PIT & RTC count (5500ms)
PIT 100 : RTC 697 (8ms)
PIT 100 : RTC 1405 (4ms)
PIT 100 : RTC 2811 (2ms)
PIT 100 : RTC 5622 (1ms)
PIT 100 : RTC 5623 (0.976ms)
PIT 100 : RTC 11245 (0.488ms)
PIT 100 : RTC 22489 (0.244ms)
PIT 100 : RTC 44976 (0.122ms)
PIT が 100 回割り込んでいる間(5.5秒)に RTC は、697 から 44976 回の割り込みを
しているという表示です。ファイル clkcnt.lzh にソースも入れてますので、マニア
の方(?)は活用して下さい。
人気の無いシングルタスク OS のメリットは、こんなところでしょうか。
PC/AT 互換機のタイマ
・CMOS RTC (CMOS Real-Time Clock) : 設定した時間毎の割り込み
設定可能な時間: 122, 244, 488, 976 マイクロ秒 (microsecond)
2, 4, 8, 16, 32, 62, 125, 250, 500 ミリ秒 (ms)
モトローラ社 MC146818 相当
・PIT (Programmable Interval Timer) : 55ms の割り込み
インテル社 i8254 相当
2007.08.20(月)
■ いまどきのウイルス対策ソフト [Net] [Windows]
マイコミジャーナル : OSSのアンチウイルスソフト「ClamAV」をSourcefireが買収
しばらく前に AVG Anti-Virus Free Edition の日本語対応版が、公開されて
アクセス過多になっていたようですが、ウイルス対策ソフトも売り上げが大きく
変わりそうな感じです。
■ Novell と SCO の裁判 [Unix]
ITpro: 米SCOが敗訴,「UNIXの著作権は米Novellが保有」
何の売り買いをしたのかわからないというお話にも結論が出たようです。
大きな金額が動いてるはずなんですが、信じられないことです。
■ DOS のプロテクトモードでタイマー割り込み [DOS]
HX DOS Extender のプロテクトモードでも RTC と PIT の割り込みをやってみよう
と MinGW でコードを書いてみました。
で、動かしてみると PIT と RTC 単独の割り込みだとうまくいってるようなんですが、
PIT と RTC の両方に割り込みさせるとあと一歩というところで command.com に戻ら
ないという状況です。
何か見落としてるんだろうけど見付けるのが大変かも。
2007.08.23(木)
■ DOS のプロテクトモードでタイマー割り込み [DOS]
続きです。メモリマネージャーを EMM386.EXE に変更したらあっさり動きました。
EMM386.EXE は、IBM PC-DOS J7.0/V に付属のものです。試しにフォントドライバー
やディスプレイドライバー、VZ エディタ等を常駐させても動きました。
動かなかったのは、UMBPCI.SYS と JEMM386.EXE です。常駐ソフトを減らすために
フォントドライバーやディスプレイドライバー、VZ エディタ等を常駐させないよ
うにして動かしてみましたがリ、DOS の command.com に戻ってきませんでした。
そんなわけで、DOS Extender のプロテクトモードで割り込み処理をする場合、
メモリマネージャーの影響が大きいようです。
これで、MinGW を使う機会が増えそうです。
■ いまどきの PC-98 [DOS]
NECファブサーブ: PC-9801用フロッピーディスクインターフェース回路を開発
「お問い合わせ」という扱いになってますが、その都度見積りなんでしょうか?
近寄り難いっす。
互換機も曲り角のようで、
エルミック・ウェスコム: iNHERITORに関する重要なお知らせ
486DX が製造中止だから生産できないとか。中古だったらいっぱいあるのに
再利用できないというのも業務用だからなんでしょうね。
ロムウィン: NEC PC-9801互換デスクトップ型パソコン、ボード
ここは、まだ続けるみたいだけど CPU は在庫があるんでしょうね?
2007.08.25(土)
■ ruby の Winsock 対応 [ruby] [Windows]
Ruby って何で Winsock2 対応じゃないのかと調べてみると ruby メーリングリスト
の [ruby-dev:26809] Re: ruby 1.8.3 preview が見つかりました。
>> > とするならmswin32のほうもwinsock2を使うことも検討したほうがいい?
>>
>> できればwinsock2でWSAWaitForMultipleEvents()を使うようにしたほ
>> うがいいかも知れません。
>機能的にはそのほうが良いと思いますが、IEのバージョンアップとかしていない
>素のWindows95(なんとなくそういう人ってRuby界隈だと多いような気がするだ
>けで、杞憂なら良いんですが−ってそういう人はCygwin版を使うことが多そうだ
>から平気かな?)だと、Winsock2が入ってない可能性があります。なので、あま
>り望ましくないのではないかと思います。
>#本音を言えば、Win9x系自体を見捨ててNT専用にしてしまうってのが良いかも。
>
>このへんしか見つかんなかった。
>http://support.microsoft.com/default.aspx?scid=kb;JA;q177719
>http://support.microsoft.com/default.aspx?scid=kb;en-us;Q182108
にゃるほど Windows95 に対応するために Winsock を使ってたんだ。
で、Winsock2 を使いたいときは、ソースから作った方がいいと。
2007.08.29(水)
■ ne エディタには ncurses を使う [FreeBSD]
VZ エディタ風の ne を FreeBSD で使うときは、termcap より ncurses が
いいようです。FreeBSD の ports を使ってコンパイルすると termcap が選択
されますが、
# cd /usr/ports/japanese/ne/
# make configure
で、一旦中断して work/ne/src/Makefile を下記のように修正して
LIBS = -lele -ltermcap <--- 修正前
LIBS = -lele -lncurses <--- 修正後
コンパイルしてインストールします。
# make && make install
こんな感じでまともな表示になりました。
このまま VZ エディタ風の操作に慣れてしまうと vi に戻れないような気がするなぁ。