タグ:PC ( 4 ) タグの人気記事

windiwsブートマネージャーを使ってvistaとUbuntuのデュアルブート

日常使っているPCにDISK500GB 7200rpmを増設。気休めだけど、増設DISKの最外周にパーティション切って、WindowsのPagefile.sysをサイズ固定値で設定。
通常、Ubuntu10.10をインストールするとプライマリDISKのMBRを乗っ取ってしまう。
まあ、それでもいいんだけど、Windows純正のブートマネージャを使用しようとすると、何故かエラーが起こる。
いままでは、CentOSのブートレコードを「/boot」にインストールして先頭512バイトをc:\にコピーしてboot.iniで設定すればいいのだったが。
最後に根拠無しに「/boot」を「ext3」でフォーマットしたた直った。

「Windowsブートメニュー」→Ubuntuを選択するとGrubが起動→めでたくCentOSの起動ができました。
ああ、しんど。
しかし、32bit版CentOSfreeやvmstatで見ると、Windowsよりも有効メモリ量が増えている感じ。なぜだ?
[PR]
by nora1962 | 2011-03-22 04:50

CDOにバグ?

http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_800_080.html
にあるようにwindows2000以降のwindowsには「CDO」という機能があります。
(環境がないので、VISTA,office2007で検証していません)

ところがwindows2000、office2000の環境でこの機能使うと起動元のプログラム(EXCEL、ACCESS)
のプロセスが残ってしまった。
いろいろためしたが、残念ながら解決しない。

「basp21」使えばこんな苦労しなくてもいいんだけど。
[PR]
by nora1962 | 2009-11-10 03:47 | PC

postgresql8.3.6にplperlを追加

centos5.2上のpostgresql8.3.6にplperlを追加。
ちと古いが
http://ml.postgresql.jp/pipermail/pgsql-jp/2002-November/011581.html
の記述に沿って作業を進める。
$./configure
$make
#make install

しかし
$createlangが通らない。「$libdir/plperlが存在しない」というようなエラーメッセージだ。
すったもんだやっているうちに「plpgsql」は「createlang」で通ることが分かった。

そこで、plpgsql.soの存在チェックをやったらひっそりと「/usr/lib/pgsql」にも隠れているではないか。
失敗覚悟で「usr/local/pgsql/lib/plperl.so」を上記のディレクトリにコピー。
「createlang plperl template1」で成功しました。
[PR]
by nora1962 | 2009-02-26 00:31 | PC

かな文字の小文字→大文字変換

tr/ァィゥェォャュョッァィゥェォッャュョヮヵヶぁぃぅぇぉ/アイウエオヤユヨツアイウエオツヤユヨワカケあいうえお/を実行するのにどのようにすれば速いか。(VBAで)

ネットで
http://pxp.seesaa.net/article/7500794.html
を見つけた。文字列サーチして変換する王道だろう。

一方、思いついたのはBASP21を使う手抜き。

Function Z(S)
Dim BOBJ As Object
dim i as long
Set BOBJ = CreateObject("basp21")
I = BOBJ.TRANSLATE("tr/ァィゥェォャュョッァィゥェォッャュョヮヵヶぁぃぅぇぉ/アイウエオヤユヨツアイウエオツヤユヨワカケあいうえお/k", S, Z)
End Function

これで比較したところ面白いことが分かった。
変換する文字列が短いうちは文字列サーチのほうが速い。
しかし、文字列長が長くなっていくと、その差は縮まり、20文字程度で逆転してしまう。
ネイティブコンパイル、中間コードに落とせる環境ならば違った結果が出るのだろうが、VBAではループ、文字列サーチは結構荷が重い処理なのだろう。

しかし、逆転するとはいえ20文字程度の変換ならば百万回のループ処理で15~30秒程度だから、実質上ボトルネックになることはないと思われる。
[PR]
by nora1962 | 2009-02-25 07:48 | PC