• R/O
  • HTTP
  • SSH
  • HTTPS

website: 提交

HTML source code, style-sheets, scripts, and images for deployment on mingw.osdn.io


Commit MetaInfo

修订版346e50fd696d650a2aa27c0499dac9407602ae18 (tree)
时间2022-01-08 23:59:52
作者Keith Marshall <keith@user...>
CommiterKeith Marshall

Log Message

Add "What is Cygwin?" reference to FAQ.

* faq.html (General Enquiries): Add question, and answer incorporating
JonY's original MinGWiki description of Cygwin.

更改概述

差异

--- a/faq.html
+++ b/faq.html
@@ -110,6 +110,50 @@ of native MS&#8209;Windows applications, with no implicit dependency on any
110110 3rd&#8209;party C&#8209;Runtime DLL.
111111 </p>
112112 </div><!-- answer -->
113+<button>What is Cygwin, and how does it differ from MinGW?</button>
114+<div class="answer">
115+<p>Originated by Steve Chamberlain, in 1995, like MinGW,
116+Cygwin is a system which aims to make (primarily) GNU tools
117+available on the MS&#8209;Windows platform;
118+however, the two systems adopt <em>entirely different</em>&hairsp;
119+methodologies to achieve this objective.
120+</p>
121+<p>Both systems are based on GNU tooling,
122+and both use the GNU Compiler Collection (GCC) as the means
123+of production for their respective application suites.
124+Since GNU is fundamentally a POSIX system,
125+both MinGW and Cygwin tools exhibit a POSIX feel;
126+however, whereas MinGW strives to minimize its POSIX influence,
127+using the MS&#8209;Windows API <em>directly</em>,&hairsp;
128+and thus,
129+MinGW applications may be classified as <em>native</em>&hairsp;
130+MS&#8209;Windows applications,
131+Cygwin has a much loftier objective ... it aims to provide a complete
132+emulation of the <em>entire</em>&hairsp; POSIX.1 API!
133+This emulation is encapsulated within a single <code>cygwin1.dll</code>
134+shared object library, which serves as a bridge between the POSIX.1 API
135+and the MS&#8209;Windows API, and upon which <em>all</em>&hairsp;
136+Cygwin applications are dependent; consequently,
137+Cygwin applications are <em>not</em>&hairsp; classified
138+as <em>native</em>&hairsp; MS&#8209;Windows applications.
139+</p>
140+<p>The availability of the POSIX.1 API,
141+furnished by <code>cygwin1.dll</code>, does generally reduce
142+the effort required to port GNU applications to Cygwin,
143+(for example, POSIX functions such as <code>fork()</code>,
144+<code>mmap()</code>, and <code>ioctl()</code> may not be
145+<em>readily</em>&hairsp; implemented in terms of the MS&#8209;Windows API,
146+and would require <em>significant</em>&hairsp; porting
147+effort&#8239;&mdash;&#8239;if indeed it is even
148+feasible&#8239;&mdash;&#8239;to
149+support them in MinGW applications);
150+however, the reduced porting burden of Cygwin <em>does</em>&hairsp;
151+incur the cost of the dependency on <code>cygwin1.dll</code>,
152+and its attendant commercial,
153+or strict &#8220;<em>copyleft</em>&hairsp;&#8221; (GPL),
154+licensing requirement.
155+</p>
156+</div><!-- answer -->
113157 <button>What is MSYS?</button>
114158 <div class="answer">
115159 <p>A contraction of &#8220;Minimal SYStem&#8221;,
Show on old repository browser