マジセミドライブ

ウェビナー関連のニュースやITサービス&ツールの最新情報を随時配信します。

OSS情報

2020.01.01

【OSS情報アーカイブ】Cygwin

【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以外のボランティアによって行われています。

→Cygwin →Who are we?

■経緯

・1995年:初版リリース

■オフィシャルサイト情報

オフィシャルサイト

→cygwin.com

ライセンス情報

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 / X

「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

 

参考元サイト

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

この記事のタグ一覧

おすすめの記事

【デジタル寺田の3分用語解説】「 2029年問題 」とは?📅

デジタル寺田の3分用語解説

2024.11.18

【デジタル寺田の3分用語解説】「 2029年問題 」とは?📅

「 2029年問題 」とは、高校でのデジタル教育改革により、新入社員と既存社員間でデジタルスキル格差が拡大する懸念を指します。企業は早急に対応が求められています。この格差は、企業競争力や業務効率にも、影響を及ぼす可能性があります。

【デジタル寺田の3分用語解説】「 VMWare 問題 」とは?🖥️

デジタル寺田の3分用語解説

2024.11.18

【デジタル寺田の3分用語解説】「 VMWare 問題 」とは?🖥️

「 VMWare 」の仮想化技術は、「ITインフラの効率化」に大きく貢献する技術ですが、Broadcomによる買収後のライセンス変更が大きな問題として注目されています。柔軟で慎重な契約見直しが今後の鍵となります。

【デジタル寺田の3分用語解説】「 経済産業省:コンテンツ制作のための 生成AI 利活用ガイドブック 」とは?📘

デジタル寺田の3分用語解説

2024.11.18

【デジタル寺田の3分用語解説】「 経済産業省:コンテンツ制作のための 生成AI 利活用ガイドブック 」とは?📘

経済産業省による「 生成AI 利活用ガイドブック 」は、企業やクリエイター向けに、安心して「生成AI」を利用するための、「指針」「実例」「注意点」を明示しています。「業務効率化」や「新しいアイデア創出」の支援を目的としています。