[#10793] 今度こそ (patch of the ruby-1.4.6 for NT4.0&VC4.0 on DEC Alpha.) — kou@...1609.sip.eee.yamaguchi-u.ac.jp (Koichi Okada)

岡田です。

10 messages 2000/09/01

[#10920] SIGINT on windows — "Nobuyoshi.Nakada" <nobu.nakada@...>

なかだです。

17 messages 2000/09/14
[#11077] Re: SIGINT on windows — matz@... (Yukihiro Matsumoto) 2000/09/27

まつもと ゆきひろです

[#10944] dummy DLL on Windows — "Nobuyoshi.Nakada" <nobu.nakada@...>

なかだです。

19 messages 2000/09/18
[#10955] Re: dummy DLL on Windows — WATANABE Hirofumi <eban@...> 2000/09/19

わたなべです.

[#10963] Re: dummy DLL on Windows — "Nobuyoshi.Nakada" <nobu.nakada@...> 2000/09/19

なかだです。

[#10964] Re: dummy DLL on Windows — WATANABE Hirofumi <eban@...> 2000/09/19

わたなべです.

[#10978] [PATCH] require in require — "Nobuyoshi.Nakada" <nobu.nakada@...>

なかだです。

15 messages 2000/09/20

[#10985] httphead.rb proxy version problem — Katsuyuki Komatsu <komatsu@...>

小松です.

16 messages 2000/09/20
[#10989] Re: httphead.rb proxy version problem — Minero Aoki <aamine@...> 2000/09/20

あおきです。

[ruby-dev:10862] Re: Ctrl+C on win32 console <- Re: ruby-1.6.0-20000901.i586-mswin32.lzh

From: arton <arton@...>
Date: 2000-09-07 15:28:27 UTC
List: ruby-dev #10862
arton

すみません、またまた私のミスリードらしいです。

+    con.ContextFlags = CONTEXT_CONTROL;
+    GetThreadContext(rb_MainThreadHandle, &con);

のCONTEXT_CONTROLでは、制御レジスタしか取れませんでした。僕が使ったとき
は、それだけあればコト足りたので(汗)
WinNT.hでは、

#define CONTEXT_CONTROL         (CONTEXT_i386 | 0x00000001L) // SS:SP,
CS:IP, FL
AGS, BP
#define CONTEXT_INTEGER         (CONTEXT_i386 | 0x00000002L) // AX, BX,
CX, DX,
SI, DI
#define CONTEXT_SEGMENTS        (CONTEXT_i386 | 0x00000004L) // DS, ES,
FS, GS
#define CONTEXT_FLOATING_POINT  (CONTEXT_i386 | 0x00000008L) // 387
state
#define CONTEXT_DEBUG_REGISTERS (CONTEXT_i386 | 0x00000010L) // DB
0-3,6,7
#define CONTEXT_EXTENDED_REGISTERS  (CONTEXT_i386 | 0x00000020L) // cpu
specific
 extensions

#define CONTEXT_FULL (CONTEXT_CONTROL | CONTEXT_INTEGER |\
                      CONTEXT_SEGMENTS)

なので、
con.ContextFlags = CONTEXT_FULL | CONTEXT_FLOATING_POINT;
 は、最低、設定しないとだめでした。申し訳ない。
> 
>   あと、InfoViewer で signal() のとこを読むと、「システムコールすんな」
> と書いてあるような気がしてならないんですが…SetThreadContext() でうまく
> いかないのはこのためでしょうか。

NTはわかりませんが、9xではカーネルが16ビットで再入ができない仕組みなの
で、カーネル関数呼び出し中に入ろうとするとデッドロックするとかが理由じゃ
ないでしょうか?

In This Thread