マジセミドライブ
ウェビナー関連のニュースやITサービス&ツールの最新情報を随時配信します。
OSS情報
2020.01.01
【OSS情報アーカイブ】Cygwin


※当記事に記載されている情報は、古くなっている場合があります。オフィシャルサイトで最新情報をご確認ください。
コンテンツ
「Cygwin」とは
「Cygwin」基本情報
■概要
Cygwin(シグウィン)とは、Windows上で疑似的なUNIX系OS実行環境を構築するためのソフトウェアパッケージです。Windows上で直接UNIX系アプリケーションを実行できます。
■基本説明
Cygwinは、UNIX(Linux)で利用できるシェル/コマンドなどのアプリケーションプログラムを、Windows上で直接バイナリ動作させる環境を構築できます。
「Windows」と「UNIX(Linux)」をそれぞれ別の領域にインストールして選択起動するマルチブートではなく、Windows上で動くアプリケーションウィンドウ内にUNIX(Linux)環境を再現でき、ユーザーは多くの標準UNIXユーティリティを使用できます。
Cygwinは、UNIX互換OSのAPI「POSIX API」と同等の機能を提供するランタイムライブラリ「cygwin1.dll」がベースとなり、「UNIXライクなルック&フィールを提供するさまざまなツール群」によって構成されています。
■主要開発元
Cygwinは当初「Cygnus Solutions(現在:Red Hat Inc.)」によって開発されました。
Cygwin開発やパッケージメンテナシップの大部分はRed Hat以外のボランティアによって行われています。
■経緯
・1995年:初版リリース
■オフィシャルサイト情報
オフィシャルサイト
ライセンス情報
Cygwinのライセンスは「LGPLv3+他」です。
詳細について、こちらを参照ください。
→Cygwin →What are the licensing terms?
動作環境
Windows用の「64ビットバージョン」と「32ビットバージョン」が提供されています。
ダウンロード
→Cygwin →Installing and Updating Cygwin Packages
■同様製品
同様な機能を提供する製品として、次のようなものがあります。
オープンソース製品:「MSYS2」など。
「Cygwin」の主な特徴
■ランタイムライブラリ「Cygwin DLL」
概要
Cygwin DLL(Cygwin1.dll)が「プロセス間通信」「セマフォ」「共有メモリ」「メッセージキューイング」などを仲介するサービスも提供することにより、UNIX(Linux)系ツールとのソースコードレベルの互換性を実現しています。
動作の仕組み
UNIX(Linux)アプリケーションプログラムは「Cygwin1.dll」と動的にリンクすることにより、Windows上でUNIX(Linux)上とほぼ同じように動作します。
ライブラリに対してリンクされたバイナリが実行されると、Cygwin DLLがアプリケーションのテキストセグメントにロードされます。その下で実行されているすべてのプロセスにアクセスする必要があるUNIXカーネルをエミュレートします。
コンパイルで利用可能に
Cygwin用として提供されていない他のUNIX(Linux)用プログラムであっても、Cygwin上でソースコードをコンパイルすることにより実行できます。
■Windowsネイティブ環境に直接アクセス
VMWare上などで動作するUNIX互換システムとは異なり、CygwinからWindowsネイティブ環境に直接アクセスできることが大きな利点です。
■Cygwinディストリビューション
Cygwinディストリビューションには「ほとんどのGNUツール」「多数のBSDツール」「Xサーバ」「Xアプリケーションのフルセット」などを含む何千ものパッケージが含まれています。
「Cygwin」の主な機能
「Cygwin」の主な機能
■アクセス制御リスト対応機能
Cygwinはデフォルトで「Win32ファイルの所有権とパーミッション」を「ACLをサポートしているファイルシステム(通常はNTFS)」上でACLにマッピングします。
■ファイルアクセス機能
Cygwinは、ディレクトリの区切り文字としてスラッシュまたはバックスラッシュを使用して、POSIXスタイルとWin32スタイルの両方のパスをサポートします。
■Window System「Cygwin / X」
「Cygwin / X」は、Windows用Cygwin API層への「X Window System」の移植版です。
「Cygwin」のユーティリティ
「Cygwin」のユーティリティ
■概要
Cygwinには、Cygwin環境のUNIXエミュレーション部分を管理するために使用される多数のコマンドラインユーティリティが付属しています。
これらの多くはUNIXの対応物を反映していますが、それぞれCygwin専用に書かれています。
■ファイル属性設定「chattr」
chattrによりファイル属性を設定できます。
→Cygwin →Cygwin User”s Guide →Cygwin Utilities →chattr
■診断ユーティリティ「cygcheck」
cygcheckは、Cygwinプログラム用診断ユーティリティです。
→Cygwin →Cygwin User”s Guide →Cygwin Utilities →cygcheck
■ファイル名変換ユーティリティ「cygpath」
cygpathは「CygwinのPOSIXスタイルのパス名」と「Windowsのネイティブファイル名」を変換するユーティリティです。
→Cygwin →Cygwin User”s Guide →Cygwin Utilities →cygpath
■ダンパーユーティリティ「dumper」
dumperにより、実行しているWindowsプロセスのコアダンプを作成できます。
→Cygwin →Cygwin User”s Guide →Cygwin Utilities →dumper
■コンフィグ設定値取得「getconf」
getconfは指定されたコンフィギュレーション変数の値を出力します。
→Cygwin →Cygwin User”s Guide →Cygwin Utilities →getconf
■アクセス制御リスト表示「getfacl」
getfaclは、ファイルおよびディレクトリのアクセス制御リスト(ACL)を表示します。
→Cygwin →Cygwin User”s Guide →Cygwin Utilities →getfacl
■プロセスへシグナル送信「kill」
killプログラムにより他のCygwinプログラムに任意の信号を送信できます。
→Cygwin →Cygwin User”s Guide →Cygwin Utilities →kill
■共有ライブラリ依存関係表示「ldd」
lddは、実行可能ファイルまたはDLLの実行時にロードされた共有ライブラリ(DLL)の依存関係を表示します。
→Cygwin →Cygwin User”s Guide →Cygwin Utilities →ldd
■ロケール環境設定情報取得「locale」
localeは、現在のロケール環境設定に関する情報を出力します。
→Cygwin →Cygwin User”s Guide →Cygwin Utilities →locale
■ファイル属性一覧表示「lsattr」
lsattrはファイル属性を一覧表示します。
→Cygwin →Cygwin User”s Guide →Cygwin Utilities →lsattr
■Windowsプロセスのミニダンプ作成「minidumper」
minidumperは、ユーティリティを実行しているWindowsプロセスのミニダンプを作成します。
→Cygwin →Cygwin User”s Guide →Cygwin Utilities →minidumper
■ローカルグループ設定「mkgroup」
mkgroupのデフォルト動作としては、ローカルマシンとドメインのローカルグループを出力します。
→Cygwin →Cygwin User”s Guide →Cygwin Utilities →mkgroup
■アカウント設定「mkpasswd」
mkpasswdによりアカウント設定できます。
→Cygwin →Cygwin User”s Guide →Cygwin Utilities →mkpasswd
■ファイルマウント「mount」
mountはファイルシステムをマウントします。
→Cygwin →Cygwin User”s Guide →Cygwin Utilities →mount
■パスワード設定「passwd」
passwdはユーザーアカウントのパスワードを変更します。
→Cygwin →Cygwin User”s Guide →Cygwin Utilities →passwd
■ロード済み共有ライブラリ出力「pldd」
plddは、プロセスによってロードされた共有ライブラリ(DLL)を指定されたPIDで出力します。
→Cygwin →Cygwin User”s Guide →Cygwin Utilities →pldd
■プロセス状態出力「ps」
PSは、システム上で実行されているすべてのCygwinプロセスの状態を示します。
→Cygwin →Cygwin User”s Guide →Cygwin Utilities →ps
■Windowsレジストリ操作「regtool」
regtoolは、シェルスクリプトにアクセスし、Windowsレジストリを変更できます。
→Cygwin →Cygwin User”s Guide →Cygwin Utilities →regtool
■アクセス制御リスト変更「setfacl」
setfaclは、ファイルおよびディレクトリのアクセス制御リスト(ACL)を変更します。
→Cygwin →Cygwin User”s Guide →Cygwin Utilities →setfacl
■メタキーコード設定「setmetamode」
setmetamodeは、メタ(Alt)キーによって送信されるキーコードを決定して設定するために使用できます。
→Cygwin →Cygwin User”s Guide →Cygwin Utilities →setmetamode
■ASMプログラム実行「ssp」
sspは、Win32デバッグAPIを使用して、1度に1つのASM命令でプログラムを実行するプログラムです。
→Cygwin →Cygwin User”s Guide →Cygwin Utilities →ssp
■システムコールトレース「strace」
straceは、システムコールおよびシグナルのトレースを実行できます。
→Cygwin →Cygwin User”s Guide →Cygwin Utilities →strace
■Windowsタイムゾーン取得「tzset」
tzsetは、Windowsから現在のタイムゾーンを読み取り、その情報からTZ環境変数のPOSIX互換のタイムゾーン情報を生成します。
→Cygwin →Cygwin User”s Guide →Cygwin Utilities →tzset
■ファイルシステムマウント解除「umount」
umountは、現在のセッションでマウントテーブルからマウントを削除します。
→Cygwin →Cygwin User”s Guide →Cygwin Utilities →umount
参考元サイト
- Cygwin
- Wikipedia →Cygwin
- IT用語辞典バイナリ →Cygwinとは
- IT用語辞典 e-Words →Cygwin
- Weblio →Cygwin
- Hantena Keyword →cygwin
- Hatena Blog →それマグで! →いますぐコマンドプロンプトを捨てて、Cygwinを使うべき10+の理由
- マイナビニュース →【ハウツー】ゼロからはじめる「Cygwin」 – WindowsでUNIXを動かしてみよう!
- いつも隣にITのお仕事 →さよならコマンドプロンプト!UNIXコマンドをWindowsで実行すべくCygwinを導入
- Qiita →Cygwinのターミナルエミュレータminttyの導入
- ProEngineer →Windows上で動くUNIX?Cygwinのインストール&設定方法
※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。
この記事のタグ一覧
フリーワード検索
カテゴリー一覧
アクセスランキング
- 🏆ランク1位🏆
【無料で使える】「 OCR 」ツールまとめ - 🏆ランク2位🏆
【無料で使える】「 プロジェクト管理 」ツールまとめ - 🏆ランク3位🏆
【無料で使える】「 翻訳 」ツールまとめ - 🏆ランク4位🏆
【AIツール実験室】画像生成AIツール「 Emi 」(前編) - 🏆ランク5位🏆
【OSS情報アーカイブ】SonarQube - 🏆ランク6位🏆
【無料で使える】「 ドキュメント管理 」ツールまとめ - 🏆ランク7位🏆
【無料で使える】「 バックアップ 」ツールまとめ - 🏆ランク8位🏆
【ツール紹介】無料オープンソース「 ビデオ監視 ツール 」まとめ3選 - 🏆ランク9位🏆
【ChatGPT使ってみる実験室】 WordPress関数を作って記事リストを出力 - 🏆ランク10位🏆
【無料で使える】「 グループウェア 」まとめ