BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース Diablo IV:Visual StudioでLinuxのデバッグ

Diablo IV:Visual StudioでLinuxのデバッグ

ブックマーク

原文(投稿日:2021/02/28)へのリンク

Blizzardは、Diablo IVチームがWindows Subsystem for Linux(WSL)を使用してVisual StudioでリモートLinuxバイナリをデバッグする方法について説明しているブログを公開している。

BlizzardのシニアソフトウェアエンジニアであるBill Randolph氏が、チームがこの構造に従う理由とともに、この手法について説明している。

...私たちのチームのコアコンピテンシーはWindowsです。サーバプログラマでさえWindows開発に最も精通しており、チームのすべてのプログラマが共通のツールセットとナレッジベースを使用できることを高く評価しています。

Windowsで開発するもう1つの最も重要な理由は、Visual Studioによって提供される機能と堅牢なツールセットです。Linuxでネイティブに開発するとしても、Linuxの世界には匹敵するものはありません。

Windows Subsystem for LinuxはWindows10で使用でき、ユーザは1台のコンピューターで完全なシェルと分離された環境で複数のLinuxディストリビューションを実行できる。エクスペリエンスは仮想マシンに似ているが、セットアップや、VMのオンとオフを切り替えるために同じレベルのオーバーヘッドを必要としない。同様に、各Linuxディストリビューションを直接ダウンロードする代わりに、ユーザはMicrosoftのAppStoreからUbuntuまたはその他のディストリビューションを直接インストールできる。

WSLでLinuxコアダンプをデバッグする機能は、Mac/Windowsとコンソールで実行されるフロントエンドゲームではなく、Diablo IVのバックエンドサービスをサポートする。バックエンドサービスは、BlizzardのBattle.netプラットフォームをサポートする。そして、オンラインマルチプレーヤー、メッセージング、トーナメントの機能、および、どのようにしてユーザがゲームや他のプレーヤーと対話するかに関する機能を備えている。

Randolph氏は、ビルドがどのように発生し、デプロイされ、そして予期しないエラーが発生したときにコアダンプがどのように使われるかについてのデプロイメント構造について説明している。ビルドはLinuxシステム(WSLではなくネイティブ)で行われ、コテンナを介してデプロイされる。自動監視システムは、コアダンプが発生したことを検出し、チームのメンバーが調査できるように、ダンプをバイナリとともに戻す。

チームは、Parallel Stacksと呼ばれるネイティブのVisual Studio分析ツールを使うことができる。このツールは、スタック間の視覚的なウォークスルーとマッピング、およびスレッド間の通信を提供する。Java開発者向けのJDK Mission Controlと同様に、これによって、スタックまたは各スレッドに関連するさまざまなスレッドで何が起こっていたかを視覚的に表現することができる。

このタイプのクロスプラットフォームビルド分析は多くのチームで行われているが、すべての場合に適しているわけではない。Randolph氏はその機能を称賛している。

私たちのチームは、Visual Studioの本番環境からLinuxコアをデバッグできることに非常に胸を躍らせています。これは私たちにとっての変革であり、より多くの開発者が「実際の」問題を積極的に診断できるようにし、Visual Studioデバッグの強力なツールセットをすべての人が利用できるようにしています。

ネイティブLinuxを支持している、JRuby開発者のCharles Nutter氏は、ラップトップメーカーのSystem76によって作成された仮想Linux環境での「微妙なジャブ」に注目した。「第11世代Intel Core i7 CPUと最大40GBのRAMを使用してコードをすばやくコンパイルしよう。お気に入りの開発ツールをすべてネイティブ環境で使用して、デプロイ後の予期しない驚きを大幅に減らそう。」

すべての開発チームは、スキルセットに基づいて使用されるツールチェーンと手法について独自の決定を自由に行うことができる。Diablo IVのリリース日はまだ発表されていないが、Linuxコアダンプのデバッグに必要なVisual Studioツールが利用可能になった。

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

コミュニティコメント

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

BT