Cygwin: Verskil tussen weergawes

in Wikipedia, die vrye ensiklopedie
Content deleted Content added
RAM (besprekings | bydraes)
RAM (besprekings | bydraes)
Lyn 26: Lyn 26:
'n Mens kan by vele poslyste aansluit wat verband hou met Cygwin by die [http://cygwin.com/lists.html Cygwin Poslys] blad.
'n Mens kan by vele poslyste aansluit wat verband hou met Cygwin by die [http://cygwin.com/lists.html Cygwin Poslys] blad.


== Geskiedenis ==
Cygwin het in [[1995]] begin as 'n projek van [[Steve Chamberlain]], 'n ingenieur by [[Cygnus Solutions|Cygnus]] wat opgemerk het dat Windows NT en 95 [[COFF]] gebruik as hulle [[objeklêerformaat]] en dat GNU reeds ondersteuning vir [[x86]] en [[COFF]] asook die C funksieversameling, [[newlib]], gebied het; wat dit dus teoreties nie baie moeilik sou maak om die [[GCC]] te verander om 'n samesteller te skep wat uitvoerbare programme vir Windows te skep nie. Die vermoede is toe in die praktyk bevestig en is 'n prototipe vinnig ontwikkel.


<!-- Moet nog vertaal word
==History==
Cygwin began in [[1995]] as a project of [[Steve Chamberlain]], a [[Cygnus Solutions|Cygnus]] engineer who observed that Windows NT and 95 used [[COFF]] as their [[object file format]], and that GNU already included support for [[x86]] and COFF, and the C library [[newlib]]; so at least in theory it should not be difficult to retarget [[GNU Compiler Collection|GCC]] and get a [[cross compiler]] producing executables that would run on Windows. This proved to be so in practice, and a prototype came up quickly.


<!-- Moet nog vertaal word
The next step was to attempt to bootstrap the compiler on a Windows system, but this required enough emulation of Unix to let the [[Autoconf|GNU configure]] [[shell script]] run, which requires a shell like [[bash]], which in turn requires [[Fork (computing)|fork]] and [[Standard streams|standard I/O]]. Windows includes similar functionality, so the Cygwin library proper just needs to translate calls and manage private versions of data, such as [[file descriptor]]s.
The next step was to attempt to bootstrap the compiler on a Windows system, but this required enough emulation of Unix to let the [[Autoconf|GNU configure]] [[shell script]] run, which requires a shell like [[bash]], which in turn requires [[Fork (computing)|fork]] and [[Standard streams|standard I/O]]. Windows includes similar functionality, so the Cygwin library proper just needs to translate calls and manage private versions of data, such as [[file descriptor]]s.



Wysiging soos op 08:00, 18 Februarie 2007

Cygwin - is 'n versameling vrye programmatuur-hulpmiddele wat oorspronklik deur Cygnus Solutions ontwikkel is om verskeie weergawes van Microsoft Windows in staat te stel om soortgelyk as 'n Unix-stelsel op te tree. Dit hoofdoel is om programmatuur wat vir POSIX-versoenbare stelsels (soos Linux, BSD en Unix) ontwikkel is, oordraagbaar te maak tot die Windows platform sonder om veel meer te doen as dit weer op Windows saam te stel. Programme wat met Cywin oorgedra word werk die beste op Windows NT, Windows 2001, Windows XP en Windows Server 2003, maar sommiges kan bevredigend uitgevoer word op Windows 95 en Windows 98. Cygwin word tans onderhou deur die werknemers van Red Hat, Netapp en andere. Dit is belangrik om kennis te neem dat alhoewel Cygwin header lêers en kodeversamelings gebruik wat dit makliker maak om *nix toepassings vir gebruik op Windows her saam te stel, dit nie Windows binêre programme direk versoenbaar maak met *nix binêre programme nie.

Beskrywing

Cygwin bestaan uit 'n versameling kode wat die POSIX stelselbevele omskakel na Win32 stelselbevele, 'n GNU ontwikkelingsketting (soos die GNU Compiler Collection en die GDB om basiese programmatuurontwikkeling moontlik te maak asook 'n groot versameling toepassingsprogramme soortgelyk aan dié wat algemeen op Unix stelsel gevind kan word. Op hierdie stadium is bykans alle bekende vrye programmatuur op Unix na Cygwin omgeskakel, insluitende die X Windows-stelsel, KDE, Gnome, Apache, TeX en verskeie andere. 'n Meganisme wat geskep is vir die installering van inetd, syslogd, sshd, Apache en andere daemone sodat hulle as standaard Windows dienste kan optree, wat 'n Microsoft Windows stelsel in staat stel om baie soos 'n Unix of 'n Linux-bediener op te tree. Al hierdie programme word geïnstalleer deur die standaard Cygwin opstelprogram, wat die nodige pakette vanaf die Internet aflaai. Die opstelprogram kan weer gehardloop word om programme na hulle nuutste weergawes op te dateer soos benodig of hulle dan by te voeg of te verwyder. Verskeie ander kenmerke word ook deur die opstelprogram verskaf, soos onder ander die vermoë om die bronkode saam met die binêre weergawe te installeer.

'n Groot klomp moeite is gedoen om koppelvlakke te verskaf om konsepte wat in Unix en Windows van mekaar verskil met mekaar in verband te bring. Voorbeelde sluit in:

  • 'n Cygwin spesifieke weergawe van Unix se mount-bevel is geskep, wat dit moontlik maak om arbitrêre Windows gidsroetes te laai as "lêerstelsels" in 'n Unix lêerruimte. Die mount inligting word gewoonlik in die registry gestoor. Lêerstelsels kan gelaai word as binêre (by verstek) of as teks, wat outomatiese omskakelings tussen LF en CRLF lynafsluitings doen (Die beïnvloed slegs programme wat die open() en fopen() funksies oproep sonder om die teks- of binêre modus te spesifiseer. Al die omgeskakelde Unix programme wat deur die Cygwin opstelprogram beskikbaar is, maak lêers in binêre modus oop indien geskik en vermei sodoende die korrupsie van data). Alle DOS skyfaandrywers (C:, D: ens.) is ook beskikbaar onder /cygdrive/c, /cygdrive/d, ens. Windows netwerkroetes in die vorm van \\HOST\SHARE\FILE word omgeskakel na die vorm //HOST/SHARE/FILE.
  • Die /dev en /proc met alle kenmerke word outomaties verskaf. /proc/registry verskaf direkte toegang tot lêerstelseltoegang tot die Windows registry.
  • Simboliese skakels word verskaf en maak gebruik van .LNK lêers (Windows shortcuts), met sommige Cygwin-spesifieke inligting daarin vervat en met die system attribute ingestel om verwerking te versnel.
  • Die Solaris API vir die hanteer van toegangsbeheerlyste word ondersteun en word in verband gebring met die Windows NT toegangstelsel.
  • Spesiale formate van die etc/passwd en /etc/group word verskaf wat aanwysers insluit na die SID's wat die Windows eweknieë is, wat dit moontlik maak om die Unix en Windows gebruikers en groepe met mekaar in verband te bring.
  • Verskeie nutsprogramme word verskaf vir die omskakeling tussen Windows en Unix lêerstelsels, vir die hantering van (CRLF/LF) lynafsluitingskwessies, vir die vertoon van DLL'e wat met 'n program gekoppel is ens.

Die weergawe van die gcc wat saam met Cygwin verskaf word het verskeie uitbreidings vir die skep van Windows DLL'e, vir die spesifiseer van 'n program as 'n windows- of konsolemodus program, die byvoeging van hulpbronne ens.

Ondersteuning vir die saamstel van MinGW-versoenbare programme (d.w.s, programme wat nie vereis dat Cygwin geïnstalleer moet wees om te hardloop nie, of meer spesifiek, programme wat nie Cygwin se CYGWIN1.DLL wat die POSIX versoenbaarheidslaag verskaf, benodig nie).

Red Hat versprei normaalweg die Cygwin kodeversameling onder die GNU General Public License met die uitsondering wat die skakeling met enige vrye programmatuur waarvan die lisensie aan die Oopbron Definisie voldoen, toe te laat. (Red Hat verkoop ook kommersiële lisensies aan diegene wat programme wil versprei onder voorwaardes van uitsluitlike besitreg).

'n Mens kan by vele poslyste aansluit wat verband hou met Cygwin by die Cygwin Poslys blad.

Geskiedenis

Cygwin het in 1995 begin as 'n projek van Steve Chamberlain, 'n ingenieur by Cygnus wat opgemerk het dat Windows NT en 95 COFF gebruik as hulle objeklêerformaat en dat GNU reeds ondersteuning vir x86 en COFF asook die C funksieversameling, newlib, gebied het; wat dit dus teoreties nie baie moeilik sou maak om die GCC te verander om 'n samesteller te skep wat uitvoerbare programme vir Windows te skep nie. Die vermoede is toe in die praktyk bevestig en is 'n prototipe vinnig ontwikkel.