マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。

目次

概要

エミュレーション環境(互換レイヤ)には、

などがある。

詳細

POSIX, OS/2サブシステム

  • Windowsには、POSIXやOS/2といったサブシステムが提供されていた。
    • サブシステムに準拠したアプリケーションを実行することができた
      (POSIXは再コンパイルが必要、OS/2は16bit版のCUIアプリがそのまま実行可)。
    • これらのサブシステムはWindows XPで廃止された。
  • その後、UNIX環境との相互運用サブシステムが提供されたが、現在では提供されていない。
    • Services for UNIX、Subsystem for UNIX-based Applications
    • また、その上で動作するアプリーションが提供されていた(NFSサーバ、ゲートウェイなど)。

Cygwin/MinGW/MSYS2

  • POSIX互換レイヤーがオーバーヘッドを生じる
  • ディレクトリ構造がWindowsともUNIXとも異なってしまう
  • オリジナルのMSYS2はほぼ開発が止まっているので、
    代わりに、下記の「Git for Windows」を利用する。

Cygwin

  • Windows上に、LinuxやUNIXの完全なPOSIX層を提供することを目標にしている。
  • 互換性のために必要であれば性能も犠牲にしている。

MinGW

  • Cygwin 1.3.3からフォークした。
  • フリーのコンパイラと各種ツールのみを提供し、性能を重視している。
  • Microsoftから直接提供されるライブラリmsvcrt.dllを用いている。
  • このため、POSIX APIを提供していない。
    • プラットフォーム非依存のライブラリを使用してアプリケーションを作成する必要がある。
    • ネットワークプログラミングの read/write を、recv/send に置き換える必要がある。

MSYS2

  • MinGWを補う目的で作られた。
  • プログラム開発の用途に限定的。
  • ツールを統合したパッケージ
    • Unixシェル(Bash)
    • テキスト操作ユーティリティ(gawk, sed, findutil)
    • ソースコードパッチ用ツール(diffutil)
    • アーカイブツール(tar, bzip2, zlib)

Git for Windows

  • MSYSに最新のセキュリティパッチを適用した上で、Windows向けのGitツールを追加したもの

Windows Subsystem for Linux

参考


Tags: :Windows, :Linuxサブシステム


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2019-08-21 (水) 11:38:40 (30d)