Freie Software

GISWiki - Das freie Portal für Geoinformatik (GIS)
Version vom 9. November 2005, 18:01 Uhr von HeinzJ (Diskussion | Beiträge) (Freie Software war und ist kontrovers)

Wechseln zu: Navigation, Suche

Freie Software ist Software, die beliebig benutzt, kopiert, studiert, verändert und weiterverteilt werden kann. Der Quellcode ist frei zugänglich. Werden diese Freiheiten (vor allem lizenzrechtlich) eingeschränkt, so wird die Software als proprietär oder unfrei bezeichnet.

Frei heißt dabei nicht kostenlos. Richard Stallman prägte den Ausspruch: Free as in freedom, not as in free beer (frei wie in Freiheit, nicht wie in Freibier). Freie Software ist daher deutlich zu unterscheiden vom Begriff Freeware, dem „Freibier“ der Softwareindustrie.



Lizenzen

Richard Stallman und die Free Software Foundation (FSF) definieren Software als frei, wenn ihre Lizenz folgende Freiheitsrechte einräumt:

  1. Freiheit 0: das Programm zu jedem Zweck auszuführen.
  2. Freiheit 1: das Programm zu studieren und zu verändern.
  3. Freiheit 2: das Programm zu kopieren.
  4. Freiheit 3: das Programm zu verbessern und zu verbreiten, um damit einen Nutzen für die Gemeinschaft zu erzeugen.

Für Freiheit 1 und 3 ist der Zugang zum Quellcode Voraussetzung, sonst wird das Verändern eines Programms schwer bis unmöglich.

Sind diese Bedingungen nicht erfüllt, wird die Software als proprietär oder unfrei bezeichnet.

Es gibt verschiedene Typen von Lizenzen, die die Kriterien freier Software erfüllen:

  • Copyleft Lizenzen, die GNU General Public License (GPL) ist die am häufigsten verwendete. Der Autor behält das Copyright und es sind Klauseln enthalten, dass veränderte und weitergegebene Software frei bleibt. Auch der Quellcode muss zur Verfügung gestellt werden.
  • Public Domain Lizenzen. Der Autor verzichtet auf das Copyright. Damit kann jeder alles mit der Software machen, z. B. in eigene Programme einbauen und verkaufen.
  • Bei BSD-artigen Lizenzen behält der Autor das Copyright. Diese „Ehre, wem Ehre gebührt“ Lizenz enthält den Autor und oft auch einen Haftungsausschluss. Veränderung und Weitergabe in jeder Form ist erlaubt, d.h. sie darf auch in proprietäre Software eingebaut werden. In diese Klasse fallen die Apache-Lizenz und die MIT-Lizenz.

Freie-Software-Bewegung und Open Source

Der Ausdruck „freie Software“ wird allgemein als Synonym für „Open-Source-Software (OSS)“ verwendet, wenn auch die Verfechter der jeweiligen Begriffe verschiedene Schwerpunkte setzen. Obwohl weitgehende Einigkeit herrscht, kritisiert die FSF an der jüngeren Open-Source-Bewegung unter anderem, dass der Begriff Open Source Unklarheiten schafft und sich nur an technischen, nicht aber an sozialethischen Fragen orientiert.


Beispiele freier Software

Die Liste freier Software wird immer länger, siehe FSF/UNESCO Free Software Directory (englisch). Einige der wichtigsten Projekte sind:



Vor- und Nachteile freier Software

Vorteile

Einige Vorteile für die Endbenutzer sind:

  • keine engen Lizenzbindungen: Die Software kann genutzt werden, ohne dass lizenzrechtliche Beschränkungen bezüglich der Nutzung oder der Vervielfältigung bestehen.
  • kostengünstig: Freie Software ist in fast allen Fällen kostenlos verfügbar.
  • höheres Vertrauen ist möglich: Es gibt viele interessierte Leute die Quellcode lesen. Dadurch werden kaum unerwünschte Funktionalitäten hineinprogrammiert.
  • herstellerunabhängig: Man kann – die nötige Fachkenntnis vorausgesetzt – das Programm ausbessern, studieren, für seinen Rechner optimiert übersetzen oder es auf eine andere Rechnerarchitektur portieren, ohne auf einen Softwarehersteller warten zu müssen oder eine Erlaubnis vom Hersteller einholen zu müssen.
  • höhere Qualität: Es gibt keinen wirklichen Fertigstellungsdruck. Das verstehen einige Projekte zu nutzen, um mit unterschiedlichen Techniken herausragende Qualität zu liefern.

Nachteile

Es gibt jedoch auch Nachteile:

  • Der Hauptnachteil ist bei Softwareprojekten im Anfangsstadium häufig die mangelnde Benutzerfreundlichkeit. Am Projektbeginn wird weniger in Benutzerakzeptanztests investiert, was die Benutzung erschwert.
  • Projekt-Spaltung: Da jedem die Veränderung der Software offen steht, führt ein Streit unter den Entwicklern in seltenen Fällen zu einer Spaltung (englisch: fork). Dadurch entstehen zwei ähnliche Programme, was viele Anwender verwirren kann.
  • Unterstützung der Hardwarehersteller: Noch immer stellen einige Hersteller Treiber erst verspätet oder unvollständig oder in nur rudimentärer Weise zur Verfügung, was dazu führt, dass die Hardwareunterstützung vieler freier Betriebssysteme nicht so umfangreich ist, wie dies z.B. bei Windows der Fall ist. Es muss aber dazu gesagt werden, dass dies auch mit der deutlich geringeren Verbreitung der entsprechenden Systeme zu tun hat. Dieses Schicksal trifft andere proprietäre Systeme, die nicht so weit verbreitet sind, ebenso.

Hindernisse und Bedrohungen für freie Software

Die Vorteile, dass der Herausgeber auf den weiteren Umlauf seiner Software keinen Einfluss mehr hat, und die Funktionsweise offen liegt, werfen eine Reihe von Konflikten zu den gängigen Geschäftspraktiken im Umgang mit Software auf.

Proprietäre Schnittstellen

Die Hardware-Hersteller gehen immer mehr dazu über, die Schnittstellenspezifikationen geheim zu halten, um der Konkurrenz das Kopieren von technischen Lösungsmethoden zu verwehren. Der Grund liegt im zunehmenden Wettbewerbsdruck und in der Einfachheit des Schutzes gegenüber der Patentierung. Wenn nicht öffentlich dokumentiert ist, wie die Geräte anzusteuern sind, erleidet die Hardwareunterstützung freier Betriebssysteme mittels freier Treiber einen schweren Rückschlag.

Andererseits haben die Hersteller die Benutzer größerer freier Plattformen (GNU/Linux, XFree86) als Kundengruppe erkannt. Viele von ihnen stellen proprietäre Treiber zur Verfügung. Diese Treiber stoßen unter den Anhängern freier Software auf höchst geteilte Meinungen: Einige sind glücklich darüber, dass sie die Unterstützung der Hardware-Hersteller errungen haben und ihre Hardware durch ihr präferiertes Betriebssystem nun voll unterstützt wird, andere haben Bedenken, dass man aufgrund der proprietären Treiber nicht mehr von einem freien Betriebssystem sprechen könne.

Sollte der Hersteller keinen entsprechenden Treiber zur Verfügung gestellt haben, gibt es immer noch die Möglichkeit, den Treiber für eine andere Plattform zu verwenden und über die Schnittstellen der Zielplattform darauf zuzugreifen. Dies hat sich jedoch als eine in der Praxis zweitklassige Lösung herausgestellt, insbesondere, wenn Hardware-Treiber in einer hoch privilegierten Ebene im System laufen und somit beim kleinsten Fehler komplette Abstürze verursachen können.

Eine generelle Schnittstellenfreigabe würde die Benutzer freier Softwareplattformen sicherlich entlasten. Neben der philosophischen Sichtweise ist es eine Frage der Systemstabilität, denn sollte beispielsweise ein proprietärer Linux-Netzwerkkartentreiber regelmäßig zu Abstürzen des Systems führen, wären die Linux-Entwickler dagegen machtlos und es würde von der Gnade des Herstellers abhängen, ob der Fehler behoben würde.

Software-Patente

Die regelmäßig in den Schlagzeilen auftauchenden Softwarepatente haben auf freie Software einen besonders schwerwiegenden Einfluss, denn es ist zum Teil rechtlich noch nicht einmal möglich, mit freier Software die Patentauflagen zu erfüllen. Diese bestehen nämlich in einigen Fällen auf eine Gebühr pro in Umlauf gebrachte Kopie, aber freie Software verlangt gerade, dass der Herausgeber darüber keinen Einfluss haben darf. Selbst, wenn er die Lizenzgebühren zum Beispiel durch Spenden zahlen würde, müsste er eine genaue Zahl der Kopien, die im Umlauf sind, vorlegen können, womit es keine freie Software mehr wäre.

TCG, DRM, Kopierschutz, usw.

Trusted Computing und DRM haben das Ziel, die Aktivitäten auf dem eigenen System durch Fremde aus der Ferne zu kontrollieren. Dies ist mit freier Software nur mit Hilfe schwer zu knackender robuster quelloffener Kryptographie möglich und nicht durch simples Verstecken. (siehe auch Kerckhoff-Prinzip)

  • Politisch gesehen muss freie Software immer vom Benutzer ersetz- und veränderbar sein. Software, die in binärer Form zertifiziert sein muss, ist dies nicht.
  • Technisch gesehen kann in freier Software vor dem Benutzer nichts im Binärcode verheimlicht werden, weil der Quellcode für jeden zugänglich ist. Somit kann die Verschlüsselung, mit der die Daten vor dem Benutzer „bewahrt“ werden, einfacher hintergangen werden.

Eine weitere beispielhafte Inkompatibilität tut sich mit dem Kopierschutz bei DVDs auf: Der Kopierschutz ist effektiv kaum wirksam und leicht zu hintergehen, allerdings verhindert er das normale Abspielen. Es wird nun behauptet, Programme, die den Kopierschutz lösen, müssten lizenziert sein, ansonsten wäre schon das reine Abspielen in Deutschland illegal, weil ein Kopierschutz unter keinen Umständen umgangen werden dürfe. Diese Behauptung könnte jedoch als FUD angesehen werden, da das Laden in den Arbeitsspeicher nach der Rechtsprechung keinen Kopiervorgang darstellt.

Falls Hardwarehersteller wie Intel oder AMD funktionseinschränkende Verfahren in Chipsätze oder Prozessoren implementieren sollten, könnte freie Software den vollen Funktionsumfang möglicherweise nur noch auf freier Hardware entfalten.

Siehe auch

Open Source, Debian Free Software Guidelines, Open-Source-Bewegung, Portal:Freie Software

Literatur

Weblinks