- 62 名前:login:Penguin mailto:sage [2016/04/01(金) 01:57:36.36 ID:gtpVpLrd.net]
- 2ヶ月前にlxcore.sysとlxss.sysのファイルがInsider Previewに追加されたことを踏まえ、
ttps://channel9.msdn.com/Events/Build/2016/P488 の14分からのスライドを見ると、Interix(SFU)ともUMLともcygwinとも全く別物のようだよ Windows NT系OSでは、*.sysはカーネル内部で特権モードで動作するローダブルモジュール NT 4.0でGUIをカーネルモードで動かすようになったという話があるけど、NT 3.51までWin32 APIの GUIを処理するgdi32.dllはcsrss.exeへのメッセージ通信を行い、ユーザモードで動作するcsrss.exeが GUIを処理する形だったのを、NT 4.0以降は特権モードで動作するwin32k.sysに対して直接gdi32.dllが win32k.sysが追加したシステムコールを使って呼び出すという構造になっている 今回のUbuntuバイナリ実行機能の実体がlxcore.sysとlxss.sysであり、スライドで示されているように kernel内でWindows subsystem for Linuxとして動作してLinuxのシステムコールを処理しているなら、 Win32 APIのkernel32.dllやgdi32.dll、user32.dllどころかntdll.dll(NTのネイティブシステムコールを 呼び出すAPIを提供するdll)もすっ飛ばして、カーネルに直接Linux互換機能を入れたということに なるので、想像以上に豪快なことをやっていると言わざるを得ない
|

|