パブリックプレビューが開始されました SQL Server on Linux ですが、PASS Summit で Drawbridge が使用されているという話が出ていたようです。
ということで、DMV から軽く眺めてみたいと思います。
SQL Server on Linux ですが、プロセスとしては、「/opt/mssql/bin/sqlservr」が実行されています。
「/opt/mssql/bin」ディレクトリの中身を見るとかなりシンプルなファイル構成となっています。
ファイルサイズ的には、「/opt/mssql/lib」がメインのファイルになっているのではと思います。
それでは、SQL Server としてはどのように OS のモジュールをロードしているかを確認してみたいと思います。
select name, description, product_version from sys.dm_os_loaded_modules order by name asc
C:\Windows\System32 のモジュールがロードされていることが確認できますね。
この辺が Drawbridge を使用した、ライブラリ OS として、Linux 上で Windows が動作しているという箇所なのかと思います。
バージョンとしては「6.2:9200.22006」となっています。
6.2 系ということは Windows 8 / 2012 あたりのカーネルを動作させている感じなのでしょうかね。
このバージョンということは 2016/11 の修正プログラムが適用された状態となっていそうです。
ファイルサイズ的には lib のファイルの中にこのライブラリ OS も含まれているのではと思いますが、OS 側の修正が必要になった場合は、このディレクトリ内のファイルを置き換えることで、対応していったりするのでしょうかね。