メインメニューを開く

Cygwin(シグウィン)は、Windowsオペレーティングシステム上にUNIXライクな環境を提供する互換レイヤーである。フリーソフトウェアである。

Cygwin
Logo of Cygwin
Cygwin X11 rootless WinXP.png
Windows XP上でのCygwin
作者 シグナスソリューションズ
開発元 シグナスソリューションズレッドハットなど
初版 1995
最新版 2.11.2-1 / 2018年11月8日(9か月前) (2018-11-08
リポジトリ git://sourceware.org/git/newlib-cygwin.git, https://cygwin.com/git/gitweb.cgi?p=newlib-cygwin.git
プログラミング言語 C/C++
対応OS Windows
種別 互換レイヤー
ライセンス GNU GPL v3
公式サイト www.cygwin.com
テンプレートを表示

目次

特徴編集

UNIX的な操作体系を持つが、エミュレータではなく互換レイヤーである。POSIXに準拠するシステムコール と Windows API の間のAPI互換を行っている。その結果として、UNIX環境上のツール群をWindows上に再コンパイルのみで移植することを可能にしている。API互換機能はランタイムライブラリ「Cygwin1.dll」が担っている。

Cygwin1.dllランタイムライブラリが、POSIXシステムコールと同等の機能を提供しており、それぞれのプログラムはこれを動的にリンクすることでUNIX上とほぼ同じ動作が可能になる。また、このライブラリの存在により、Cygwin用として提供されていない他のUNIX用プログラムのソースコードも、従来の様な大幅な変更無しにWindows用にコンパイルすることが可能である。

ランタイムライブラリにて、Unix System V由来のIPCを利用するアプリケーションのために、サービス(NTサービス)を用意している。現在Cygwinに付属しているPostgreSQLは、このサービスが提供する共有バッファセマフォを利用して動作する。PostgreSQL自身は、バージョン8.0以降ではCygwin依存から脱却し、全面的にWin32ネイティブにソースの書き換えが行われている。

XサーバとしてCygwin/Xが提供されている。

マイクロソフトはWindows Server 2012よりUNIXベースアプリケーション用サブシステムを非推奨とし、代替手段の一つとしてCygwinのPOSIXエミュレーションモードを紹介している[1]

脚注編集

関連項目編集

外部リンク編集