2010 年 11 月のよしだむメモ


[最近] [トップ]

2010 年 11 月の事

<< < 2010/11 > >>
Sun Mon Tue Wed Thu Fri Sat
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30

2010-11-01 (Mon)

無為な一日

_ ビデオの消化とか。


2010-11-02 (Tue)

無為な一日

_ 散歩とか。


2010-11-03 (Wed)

無為な一日

_ 散歩とか。


2010-11-04 (Thu)

無為な一日

_ 散歩とか。


2010-11-05 (Fri)

無為な一日

_ ビデオの消化とか。


2010-11-06 (Sat)

Mirah

_ Mirah で iアプリを作れるかどうか試してみた。

_ Java ソース出力はコンパイルできないコードを生成してしまうので駄目。 .class ファイルもバイトコードのバージョンがあわなくて動かなかったが, Mirah のコードを一部変更したら動いた。 lib/mirah/jvm/compiler.rb の BiteScript.bytecode_version = BiteScript::JAVA1_5 の JAVA1_5 を JAVA1_4 に変更すればよい。

_ 以下のようなプログラムで動作確認。 Mirah にはまだ結構バグが多いし,日本語が通らなかったりするので, 実用にはちょっと厳しいかも。


import "java.io.*"
import "java.util.*"
import "com.nttdocomo.ui.*"
import "com.nttdocomo.io.*"
import "javax.microedition.io.*"
 
class HogeTest < IApplication
  def start(): void
    hoge = HogeCanvas.new
    Display.setCurrent(hoge)
    st = ShortTimer.getShortTimer(hoge, 1, 1*1000, true)
    st.start()
  end
 
  class HogeCanvas < Canvas
    implements Runnable
 
    def init_backbuffer(): void
      gr = @buffer.getGraphics()
      gr.lock()
      gr.drawScaledImage(@im, 0, 0, @dw, @dh, 0, 0, @iw, @ih);
      gr.unlock(true)
    end
 
    def initialize()
      @str = "Hello, Mirah"
      @font = Font.getFont(Font.FACE_PROPORTIONAL|
                           Font.SIZE_LARGE|
                           Font.STYLE_BOLD)
      @sh = @font.getHeight()
      @sw = @font.stringWidth(@str)
      @dw = Display.getWidth()
      @dh = Display.getHeight()
      @rnd = Random.new
      setSoftLabel(Frame.SOFT_KEY_1, "EXIT")
      setSoftLabel(Frame.SOFT_KEY_2, "CLEAR")
      mi = MediaManager.getImage("resource:///hoge.jpg");
      begin
        mi.use();
      rescue Exception=> e
        Dialog.new(Dialog.DIALOG_INFO, "MediaImage Open Error").show()
        IApplication.getCurrentApp().terminate()
      end
      @im = mi.getImage()
      @ih = @im.getHeight()
      @iw = @im.getWidth()
      if @dw > @dh
        @ih = @iw*@dh/@dw
      else
        @iw = @ih*@dw/@dh
      end
      @buffer = Image.createImage(@dw, @dh);
      init_backbuffer()
    end
 
    def paint(g: Graphics): void
      x = (@rnd.nextInt() &0x7fffffff) % (@dw + @sw) - @sw
      y = (@rnd.nextInt() &0x7fffffff) % (@dh + @sh)
      gr = @buffer.getGraphics()
      gr.lock()
      gr.setFont(@font);
      gr.setColor(Graphics.getColorOfName(Graphics.GRAY))
      gr.drawString(@str, x-1, y-1);
      gr.drawString(@str, x-1, y);
      gr.drawString(@str, x-1, y+1);
      gr.drawString(@str, x, y-1);
      gr.drawString(@str, x, y);
      gr.drawString(@str, x, y+1);
      gr.drawString(@str, x+1, y-1);
      gr.drawString(@str, x+1, y);
      gr.drawString(@str, x+1, y+1);
      gr.setColor(Graphics.getColorOfName(Graphics.WHITE))
      gr.drawString(@str, x, y);
      gr.unlock(true)
      g.lock()
      g.drawImage(@buffer, 0, 0)
      g.unlock(true)
    end
 
    def processEvent(type: int, param: int): void
      if type == Display.KEY_RELEASED_EVENT
        if param == Display.KEY_SOFT1
          IApplication.getCurrentApp().terminate()
          nil
        elsif param == Display.KEY_SOFT2
          th = Thread.new(self)
          th.start()
          nil
        end
        nil
      elsif type == Display.TIMER_EXPIRED_EVENT
        repaint()
        nil
      end
    end
 
    def run(): void
      setSoftLabel(Frame.SOFT_KEY_2, "WAIT")
      init_backbuffer()
      setSoftLabel(Frame.SOFT_KEY_2, "CLEAR")
    end
  end
end

2010-11-07 (Sun)

無為な一日

_ 散歩とか。

メールサーバログ解析

_ 10/31〜11/7 のメールサーバのログ解析。 spam 数は減少中。

状態メール数
非受信ブロック(Spamassassin)1148
隔離(ClamAV)8
切断244
一時的な失敗0
受信hamと判定ham123
false negative176
ham計299
spamと判定spam257
false positive0
spam計257
受信メール計556
1956

_ spam 発信 IP アドレスの国別集計の上位五ヶ国。

国名割合
India12.81%
Russian Federation9.04%
China7.62%
Brazil6.55%
Ukraine4.41%

2010-11-08 (Mon)

無為な一日

_ Mac OS 9 マシンのメンテナンスとか。


2010-11-09 (Tue)

無為な一日

_ ビデオの消化とか。


2010-11-10 (Wed)

無為な一日

_ 表参道で飲み会だったので,散歩がてら行ってきた。

Windows Update

_ 今月の定例アップデートは Office だけだったので楽だった。


2010-11-11 (Thu)

Fedora

_ リリースから一週間以上経っているが,Fedora 14 インストール開始。 まあ,サーバは Ubuntu に移行済みなので Fedora を使う理由はあまりないんだけど。


2010-11-12 (Fri)

Fedora

_ Fedora 14 にアップグレード完了。 vmware-config-tools.pl で vmxnet のビルドに失敗してしまい, ネットワークにつながらなくなってしまった。 困ったな。


2010-11-13 (Sat)

VMware

_ Fedora 14 で vmware-config-tools.pl が失敗するので, 適当に修正。 /usr/lib/vmware-tools/modules/source/{vmxnet.tar,vsock.tar} 内のファイルを入れ換える。 ビルドはできるようになるが,正しく動くかどうかはわからない。


--- vmxnet-only/vmxnet.c.orig   2010-09-21 15:16:44.000000000 +0900
+++ vmxnet-only/vmxnet.c    2010-11-13 12:08:43.000000000 +0900
@@ -2792,7 +2792,7 @@
 {
    struct Vmxnet_Private *lp = netdev_priv(dev);
     volatile u16 *mcast_table = (u16 *)lp->dd->LADRF;
-    struct dev_mc_list *dmi = dev->mc_list;
+    struct netdev_hw_addr *ha;
     char *addrs;
     int i, j, bit, byte;
     u32 crc, poly = CRC_POLYNOMIAL_LE;
@@ -2802,9 +2802,10 @@
     lp->dd->LADRF[1] = 0;
 
     /* Add addresses */
-    for (i = 0; i < dev->mc_count; i++){
-   addrs = dmi->dmi_addr;
-   dmi   = dmi->next;
+    i = 0;
+    netdev_for_each_mc_addr(ha, dev) {
+   addrs = ha->addr;
+   i++;
 
    /* multicast address? */
    if (!(*addrs & 1))
--- vsock-only/linux/af_vsock.c.orig    2010-09-21 15:17:24.000000000 +0900
+++ vsock-only/linux/af_vsock.c 2010-11-13 11:17:23.000000000 +0900
@@ -3230,7 +3230,7 @@
     * a notification of an error.
     */
    timeout = sock_sndtimeo(sk, flags & O_NONBLOCK);
-   compat_init_prepare_to_wait(sk->compat_sk_sleep, &wait, TASK_INTERRUPTIBLE);
+   compat_init_prepare_to_wait(sk_sleep(sk), &wait, TASK_INTERRUPTIBLE);
 
    while (sk->compat_sk_state != SS_CONNECTED && sk->compat_sk_err == 0) {
       if (timeout == 0) {
@@ -3253,7 +3253,7 @@
          goto outWaitError;
       }
 
-      compat_cont_prepare_to_wait(sk->compat_sk_sleep, &wait, TASK_INTERRUPTIBLE);
+      compat_cont_prepare_to_wait(sk_sleep(sk), &wait, TASK_INTERRUPTIBLE);
    }
 
    if (sk->compat_sk_err) {
@@ -3265,7 +3265,7 @@
    }
 
 outWait:
-   compat_finish_wait(sk->compat_sk_sleep, &wait, TASK_RUNNING);
+   compat_finish_wait(sk_sleep(sk), &wait, TASK_RUNNING);
 out:
    release_sock(sk);
    return err;
@@ -3325,7 +3325,7 @@
     * upon connection establishment.
     */
    timeout = sock_sndtimeo(listener, flags & O_NONBLOCK);
-   compat_init_prepare_to_wait(listener->compat_sk_sleep, &wait, TASK_INTERRUPTIBLE);
+   compat_init_prepare_to_wait(sk_sleep(listener), &wait, TASK_INTERRUPTIBLE);
 
    while ((connected = VSockVmciDequeueAccept(listener)) == NULL &&
           listener->compat_sk_err == 0) {
@@ -3341,7 +3341,7 @@
          goto outWait;
       }
 
-      compat_cont_prepare_to_wait(listener->compat_sk_sleep, &wait, TASK_INTERRUPTIBLE);
+      compat_cont_prepare_to_wait(sk_sleep(listener), &wait, TASK_INTERRUPTIBLE);
    }
 
    if (listener->compat_sk_err) {
@@ -3375,7 +3375,7 @@
    }
 
 outWait:
-   compat_finish_wait(listener->compat_sk_sleep, &wait, TASK_RUNNING);
+   compat_finish_wait(sk_sleep(listener), &wait, TASK_RUNNING);
 out:
    release_sock(listener);
    return err;
@@ -3473,7 +3473,7 @@
    sk = sock->sk;
    vsk = vsock_sk(sk);
 
-   poll_wait(file, sk->compat_sk_sleep, wait);
+   poll_wait(file, sk_sleep(sk), wait);
    mask = 0;
 
    if (sk->compat_sk_err) {
@@ -4113,7 +4113,7 @@
       goto out;
    }
 
-   compat_init_prepare_to_wait(sk->compat_sk_sleep, &wait, TASK_INTERRUPTIBLE);
+   compat_init_prepare_to_wait(sk_sleep(sk), &wait, TASK_INTERRUPTIBLE);
 
    while (totalWritten < len) {
       Bool sentWrote;
@@ -4150,7 +4150,7 @@
             goto outWait;
          }
 
-         compat_cont_prepare_to_wait(sk->compat_sk_sleep,
+         compat_cont_prepare_to_wait(sk_sleep(sk),
                                      &wait, TASK_INTERRUPTIBLE);
       }
 
@@ -4203,7 +4203,7 @@
    if (totalWritten > 0) {
       err = totalWritten;
    }
-   compat_finish_wait(sk->compat_sk_sleep, &wait, TASK_RUNNING);
+   compat_finish_wait(sk_sleep(sk), &wait, TASK_RUNNING);
 out:
    release_sock(sk);
    return err;
@@ -4437,7 +4437,7 @@
       goto out;
    }
 
-   compat_init_prepare_to_wait(sk->compat_sk_sleep, &wait, TASK_INTERRUPTIBLE);
+   compat_init_prepare_to_wait(sk_sleep(sk), &wait, TASK_INTERRUPTIBLE);
 
    while ((ready = VSockVmciStreamHasData(vsk)) < target &&
           sk->compat_sk_err == 0 &&
@@ -4477,7 +4477,7 @@
          goto outWait;
       }
 
-      compat_cont_prepare_to_wait(sk->compat_sk_sleep, &wait, TASK_INTERRUPTIBLE);
+      compat_cont_prepare_to_wait(sk_sleep(sk), &wait, TASK_INTERRUPTIBLE);
    }
 
    if (sk->compat_sk_err) {
@@ -4543,7 +4543,7 @@
    err = copied;
 
 outWait:
-   compat_finish_wait(sk->compat_sk_sleep, &wait, TASK_RUNNING);
+   compat_finish_wait(sk_sleep(sk), &wait, TASK_RUNNING);
 out:
    release_sock(sk);
    return err;

2010-11-14 (Sun)

メールサーバログ解析

_ 11/7〜11/14 のメールサーバのログ解析。 spam 数はやや増加。

状態メール数
非受信ブロック(Spamassassin)1500
隔離(ClamAV)2
切断286
一時的な失敗0
受信hamと判定ham111
false negative158
ham計269
spamと判定spam348
false positive0
spam計348
受信メール計617
2405

_ spam 発信 IP アドレスの国別集計の上位五ヶ国。

国名割合
India13.26%
Russian Federation6.93%
Brazil6.49%
Czech Republic5.19%
United States4.82%

2010-11-15 (Mon)

無為な一日

_ ビデオの消化とか。


2010-11-16 (Tue)

無為な一日

_ 散歩とか。


2010-11-17 (Wed)

無為な一日

_ 散歩とか。


2010-11-18 (Thu)

無為な一日

_ 昨日の夕食のホタルイカに当たってしまったみたいで, 深夜に嘔吐,下痢で一日調子が悪かった。


2010-11-19 (Fri)

無為な一日

_ 散歩とか。


2010-11-20 (Sat)

VMware

_ VMware Workstation のバージョンアップで Fedora 14 でもパッチ無しで vmware-config-tools.pl が動くようになった。 修正箇所はだいたい同じみたいだな。


2010-11-21 (Sun)

メールサーバログ解析

_ 11/14〜11/21 のメールサーバのログ解析。 spam 数は増加傾向。

状態メール数
非受信ブロック(Spamassassin)2457
隔離(ClamAV)10
切断247
一時的な失敗0
受信hamと判定ham116
false negative201
ham計317
spamと判定spam492
false positive0
spam計492
受信メール計809
3523

_ spam 発信 IP アドレスの国別集計の上位五ヶ国。 台湾とチェコからの spam が増加中。

国名割合
India9.19%
Taiwan8.00%
Czech Republic7.43%
Brazil6.44%
United States6.00%

2010-11-22 (Mon)

無為な一日

_ サーバのメンテナンスとか。


2010-11-23 (Tue)

無為な一日

_ ビデオの消化とか。


2010-11-24 (Wed)

無為な一日

_ ゲームとか。


2010-11-25 (Thu)

無為な一日

_ 散歩とか。


2010-11-26 (Fri)

無為な一日

_ ビデオの消化とか。


2010-11-27 (Sat)

無為な一日

_ ビデオの消化とか。


2010-11-28 (Sun)

メールサーバログ解析

_ 11/21〜11/28 のメールサーバのログ解析。 spam 数は増加傾向。

状態メール数
非受信ブロック(Spamassassin)2884
隔離(ClamAV)5
切断233
一時的な失敗0
受信hamと判定ham113
false negative122
ham計235
spamと判定spam534
false positive0
spam計534
受信メール計769
3891

_ spam 発信 IP アドレスの国別集計の上位五ヶ国。 台湾とチェコからの spam が増加中。

国名割合
India11.53%
Russian Federation9.95%
Taiwan5.73%
Ukraine5.47%
Brazil4.94%

2010-11-29 (Mon)

無為な一日

_ ビデオの消化とか。


2010-11-30 (Tue)

無為な一日

_ 散歩とか。


Ganerated by nDiary version 0.9.4
Yoshida Masato (yoshidam@yoshidam.net)