マジセミドライブ

ウェビナー関連のニュースや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

 

参考元サイト

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

この記事のタグ一覧

おすすめの記事

【IT用語解説】「 デジタルヒューマン 」とは😊

IT用語解説

2024.01.26

【IT用語解説】「 デジタルヒューマン 」とは😊

【IT用語解説】「 デジタルヒューマン 」として、「デジタルヒューマンとは何か?」「どのようにして作成できるのか?」「私たちの世界にどのような影響を与えているのか?」などについて、まとめています。

【AIツール実験室】チャットAI対抗「添削能力」選手権🏆

AIツール実験室

2023.12.27

【AIツール実験室】チャットAI対抗「添削能力」選手権🏆

各チャットAIの「添削能力」について比較確認をしています。 「ChatGPT4と同等の添削能力を発揮した無料チャットAI」にご注目ください。 また、 ChatGPTカスタマイズ機能「GPTs」を利用して作成した GPTs文章添削機能「添削師匠さん✍️」を紹介しています。 課金勢は試しに使ってみてください。

AIツール関連 記事リストポータル

AIツール

2023.10.05

AIツール関連 記事リストポータル

AI 関連の記事をまとめたポータルページです。