2006-02-01から1ヶ月間の記事一覧

Tomcatのライフサイクルに合わせて任意の処理を実行する

ちょっと調べて動かして、手順をまとめてみました.http://ikda.net/fswiki/wiki.cgi?page=Tomcat#p2

数とかデータとか

n進数表記方法 2進数は後ろにBをつける 10B 8進数は前に0(数字)をつける、あるいは後ろにO(アルファベット)かQをつける 010 10o 10Q 10進数は後ろにDをつける 10D 16進数は前に$か0xをつける、あるいは後ろにHをつける $10 0x10 10h 2進化10進数(Binary-Cod…

PUSHとPOP

ソースコード.無意味に32bitレジスタ使ってます. ; PushPop.asm mov eax, 0x00000200 mov edx, 0x00000065 ; char='e' push edx mov edx, 0x00000067 ; char='g' push edx mov edx, 0x0000006F ; char='o' push edx mov edx, 0x00000068 ; char='h' int 0x…

jump命令による無限ループ

; jmp.ams bits 16 org 0x100 mov ax, 0x0200 mov dx, 0x0040 ; char='@' int 0x21 jmp 0x100アセンブルして実行すると"@@@@@@@@@@....@@@"の嵐.ctrl+cで強制終了可.不思議なのは,バイナリコードを見ても先頭にあると思われた"bits 16"や"org 0x100"と思…

カウンタを使ったループ処理

今年のNFLスーパーボールは,ピッツバーグの勝ち.Seattle SeaHowksは残念ながら負けてしまいました.スコアは21-10かな. アセンブリコード ;loop.asm bits 16 org 0x100 mov ah, 0x09 mov dx, msg mov cx, 0x3 doit: int 21h loop doit mov ax, 0x4C00 int…

スタックを用いたサブルーチンへの引数渡し

アセンブリコード ; subcall.asm ; ; サブルーチンにスタックを使用してパラメータを渡す ; void subRoutine(char, char)といったところか bits 16 org 0x100 mov ax, 0x0200 ; これはグローバルにアクセス可能とする mov bx, 0x41 ; パラメータその1 mov cx…

日本PostgreSQLユーザ会がNPO法人に「企業との連携による新事業展開も」

http://itpro.nikkeibp.co.jp/article/NEWS/20060203/228521/ソフトウェアのユーザ会としてはかなりハイクオリティな活動内容・活動実績を誇る日本PostgreSQLユーザ会の方々でありますが、このたびNPO法人化なさったそうです。たしかに法人化するだけのバリ…

アセンブラはじめました

Java→Cときてさらにアセンブラ始めちゃうことにしました.完全素人ですが.Cもまだまだ素人なんですが,まあそれは置いといてと.いまどきアセンブラを教えてくれるセミナーなんて無いですからね.あっても会社は受講料払ってくれないですからね.JBoss Clus…

はじめてのアセンブラ

とりあえず『独習アセンブラ』にあったコードを書く.書かなきゃ始まらん. ; dispchar.asm mov ah, 02 mov dl, 31h int 21h mov ah, 4Ch mov al, 0 int 21hでもってアセンブル. D:\asmwork>nasm -f bin dispchar.asm -o dispchar.comわけが分からなくとも…

意外と早くできたアセンブラで"Hello World!"

CのHelloWorldプログラムのgccによるアセンブリ言語版を見て,アセンブラで"Hello World!"を出すとこまで行くのはかなり時間を要するかと思ったけれどもいきなり次がこれだった. ; dispstr.asm bits 16 org 0x100 mov ah, 9 mov dx, msg int 0x21 mov ah, 0…

数値演算と思いきや文字コード(Ascii)の演算でしょうこれは

addというのは加算命令らしい.レジスタDLに1を入れて,それからaddを使って5を足すというサンプルコードがあったのだけれども,出力させるためにさらに0x30を足せというのになんか違和感を感じたので代わりに0x35を足してみた. ; OnePlusFive.asm bits 16 …

PreparedStatement.execute()を使ったクエリ送信のまとめ

Client-SideのPreparedStatementを実行する際,C/Jでは以下のような順に内部処理を行っていきます. 解析済みSQL文および設定済みパラメータ値を用いてBufferオブジェクトを作成. Connection.getMutex()によりSynchronizedを実行. タイムアウト処理を行う…

サーバへの送信が可能なクエリの最大サイズ

とみたまさひろ氏によるMySQL Protocol解説に拠れば パケットカウンタ。read/write の度に +1 される。255 までいったら 0 に戻る。コマンド発行の前に 0 にリセットされる。 つまり16MBのPacketを無限回送ることが可能ということでしょうか.とすれば4GB以…

HEAPテーブルにおけるインデックスの使用状況をEXPLAINで見る

MyNAのMLにこの話が出ていたので調べてドキュメントにまとめてみたよー.http://ikda.net/fswiki/wiki.cgi?page=MySQL#p17最近,ドキュメントを書くのが趣味になりつつあるな.仕事せな・・w

C/JがMySQLサーバへ送ったPacketのダンプ の続き

昨夜のエントリの続き.というかもう一昨日か.昨夜は夕方から寝て今日は早朝から活動中.とみたまさひろさんによるMySQLプロトコル解説 http://tmtm.org/hiki/hiki.cgi?MysqlProtocolこちらを拝見させていただくに、 16777215(0xFFFFFF)の場合は、継続パケ…

C/JがMySQLサーバへ送ったPacketのダンプ の続き2

毎度お騒がせしてますが,やっとこC/J側からもServer側と同じPacket Headerダンプ取れました.50MB送信した際のPreparedStatement.execute()実行時のもの. HEADER:[-1][-1][-1][0] HEADER:[-1][-1][-1][1] HEADER:[-80][-16][-6][2]MysqlIO.sendSplitPacket…

MySQLの開発元が日本法人を設立

http://itpro.nikkeibp.co.jp/article/NEWS/20060201/228397/ MySQLの開発元が日本法人を設立──「機能追加や改善要望に迅速に対応していく」と代表取締役が語る オープンソースのRDBMS「MySQL」の開発元であるスウェーデンMySQL ABは100%出資の日本法人「My…

ajaxMyTop

http://sourceforge.net/projects/ajaxmytop/AJAXで作ったMySQLモニタリングツールだそうです.

Might Oracle Buy JBoss?

OracleはJBossへ買収を申し込み?という噂. http://jdj.sys-con.com/read/175923.htmこれは想定の範囲外ですよ.JBugのキックオフでBenさんに誰か聞いてみてくれないですかね・・・.うちはクラスタ講座の時に聞いてみます.

Connectionインタフェース

あー,createBlob他ってJDBC 4.0で追加されたんか.

16MB超のデータ送信時の複数Packet送信

以下はmysql-5.0.18/sql/net_serv.ccのmy_net_read関数をいろいろ端折って読みやすくしたもの(Compressの部分を割愛、および整形) #define MAX_PACKET_LENGTH (256L*256L*256L-1) ulong my_net_read(NET *net) { ulong len,complen; len = my_real_read(ne…

サーバ側 Packet Headerの処理

勢いだけで調べてみた.以下はmysql-5.0.18/sql/net_serv.ccのmy_real_read関数の抜粋 uint32 remain= (net->compress ? NET_HEADER_SIZE+COMP_HEADER_SIZE : NET_HEADER_SIZE);compress(zlib形式圧縮によるデータの送受信)を使用していなければremainに4が…

C/JがMySQLサーバへ送ったPacketのダンプ

アプリケーションコードがDriverManager.getConnection()を呼び出し.ユーザ名/パスワード無し. normal size=59, HEADER:[39][0][0][1] = 27 00 00 01 / BODY: 27 00 00 01 8f a2 02 00 ' . . . . . . . ff ff ff 00 08 00 00 00 . . . . . . . . 00 00 00 …

client-serverプロトコル for MySQL 4.1++

相変わらずJDBC 4.0でのlong型引数対応で悩んでいるのだけれども,client-sideのPreparedStatementの場合に2^31以上のサイズのパラメータをPreparedStatementオブジェクトで引き受けることができると仮定した場合,MySQLのclient-serverプロトコル的にはどう…

client-server プロトコルとは

MySQL ABによる公式コネクタ製品として The C API is included with the server Connector/ODBC - MySQL ODBC driver MySQL Connector/J -- for connecting to MySQL from Java MySQL Connector/Net -- for connecting to MySQL from .NET MySQL Connector/M…

max_allowed_packet、巨大なデータをサーバへ送る場合

現在のMySQLのプロトコル仕様により定められた,クライアントからサーバへ送ることができるPacketの最大サイズは16MBです(パケットの長さをサーバへ伝えるためのフィールドが24bitであるため).しかしデフォルトでは,MySQLサーバ側が受信を許可するPacket…