LINUX
Where do you want to go tomorrow?
Es wurden Grafiken aufgrund ihrer Größe entfernt
Linux - eine kurze Geschichte
UNIX ist wegen der weitgefächerten Unterstützung und seiner enormen Verbreitung weltweit eines der beliebtesten Betriebssysteme. Es wurde ursprünglich Mitte der 70er Jahre als Multitasking-Betriebssystem für Minicomputer und Großrechner entwickelt. Seitdem ist es zu einem der am häufigsten eingesetzten Betriebssysteme überhaupt geworden - trotz seiner manchmal verwirrenden Bedienung und der fehlenden Standardisierung.
Und was ist der wahre Grund für die Popularität von UNIX? Viele Hacker betrachten UNIX einfach als "The Real Thing" - Das Einzig Wahre Betriebssystem. Daraus ergab sich die Entwicklung von Linux durch eine wachsende Schar von UNIX-Hackern, die sich die Hände an ihrem eigenen Betriebssystem schmutzig machen wollten.
Es gibt Versionen von UNIX für viele Rechnertypen - das reicht vom PC bis zu Supercomputern wie dem Gray Y-MP. Die meisten Versionen von UNIX für PCs sind ziemlich teuer und unhandlich. Zum Zeitpunkt des Schreibens kostete eine Einzellizenz von AT&T System V für den 386er mehr als 2000,- DM.
Linux ist ein frei erhältliche Version von UNIX, die in erster Linie von Linus Torvals an der Universität von Helsinki entwickelt wurde. Linux entstand unter Mithilfe von vielen UNIX-Programmierern und -Freaks überall im Internet, und jeder, der genug Know-how und Grips besaß, durfte das System weiterentwickeln und verändern. Der Linux-Kernel enthält keinen Programmcode von AT&T oder von anderen Firmen, und ein Großteil der Software für Linux wurde innerhalb des GNU-Projektes bei der Free Software Foundation in Cambrdige, Massachusetts geschrieben. Gleichzeitig haben Programmierer aus der ganzen Welt ihren Beitrag zum größer werdenden Pool an Linux-Software beigetragen.
Linux wurde ursprünglich als ein Hobbyprojekt von Linus entwickelt. Es wurde von Minix inspiriert, einem kleinen UNIX-System von Andy Tanenbaum, und die ersten Beiträge zu Linux tauchten in der Usenet-Newsgruppe comp.os.minix auf. In diesen Beiträgen ging es meistens um die Entwicklung eines kleinen akademischen UNIX-Systems für Benutzer, die mit Minix nicht mehr zufrieden waren.
Die ersten Arbeiten an Linux befaßten sich in der Hauptsache mit den Task-Switching-Möglichkeiten im Protected Mode der 80386er CPU und waren vollständig in Assembler geschrieben.
Linus sagt dazu:
Danach ging es zügig voran: immer noch schwierig zu programmieren, aber ich hatte schon Gerätetreiber und das Debuggen war einfacher. Zu dieser Zeit begann ich, mit C zu arbeiten, und damit ging alles schneller. Etwa gleichzeitig wurde es mir auch mit der größenwahnsinnigen Idee ernst, "ein besseres Minix als Minix" zu schaffen. Ich hoffte, daß ich eines Tages in der Lage sein würde, gcc unter Linux zu kompilieren
Ich brauchte zwei Monate für ein Grundsystem, aber danach nur etwas länger für einen Festplattentreiber (voller Fehler, aber zufälligerweise funktionierte er auf meinem Rechner) und ein kleines Dateisystem. Etwa zu der Zeit stellte ich die Version 0.01 zur Verfügung (Ende August 1991): Sie war nicht schön, sie hatte keinen Treiber für Diskettenlaufwerke, und sie konnte kaum etwas Sinnvolles tun. Ich glaube nicht, daß irgend jemand diese Version jemals kompiliert hat. Aber ich hatte Feuer gefangen und wollte nicht aufhören, bevor ich Minix rausschmeißen konnte.
Die Version 0.01 von Linux wurde niemals öffentlich angekündigt. Der Code war noch nicht einmal ausführbar, er enthielt nur die allernotwendigsten Bestandteile des Kernels und setzte voraus, daß zum Kompilieren und Testen ein Minix-System vorhanden war.
Am 5. Oktober 1991 kündigte Linux die erste "offizielle" Version von Linux an: die Version 0.02. Zu diesem Zeitpunkt war er in der Lage, mit bash (GNUs Bournce Again Shell) und gcc zu arbeiten, aber viel mehr war noch nicht lauffähig. Allerdings handelte es sich immer noch um ein System für Hacker. Höchste Priorität hatte die Entwicklung des Kernels - keines der Themen Benutzersupport, Dokumentation, Distribution usw. war auch nur angedacht worden. Auch heute noch scheint die Gemeinde der Linux-Entwickler solche benutzerfreundlichen Themen als zweitrangig gegenüber der "wahren Programmierung" zu betrachten - der Entwicklung des Kernels.
Linus schrieb dazu in comp.os.minix:
Sehnt Ihr Euch nach den schönen Zeiten von Minix-1.1 zurück, als Männer noch Männer waren und ihre eigenen Gerätetreiber schrieben? Fehlt Euch ein Projekt und verlangt es Euch danach, Eure Zähne an einem Betriebssystem zu wetzen, das Ihr nach Euren Vorstellungen modifizieren könnt? Seid Ihr frustriert, wenn unter Minix alles funktioniert? Keine durchwachten Nächte mehr, um ein nettes Programm zum Laufen zu bringen? Dann könnte diese Mail genau für Euch bestimmt sein.
Wie ich vor einem Monat bereits erwähnte, arbeite ich an einer freien Version eines Minix-ähnlichen Systems für AT-386er. Das System ist so weit gediehen, daß man damit arbeiten kann (oder auch nicht, je nachdem, was Ihr haben wollt), und ich bin bereit, den Quellcode zwecks weiterer Verbreitung zur Verfügung zu stellen. Es handelt sich erst um die Version 0.02 aber ich habe bereits bash, gcc, GNU make, GNU sed, compress usw. zum Laufen gebracht.
Nach der Version 0.03 setzte Linus die Versionsnummer auf 0.10, da mehr Leute am System mitarbeiteten. Nach einigen weiteren Anderungen erhöhte Linux die Versionsnummer auf 0.95, um anzudeuten, daß das System bald reif für einen "offizielle" Freigabe sein würde. (Im allgemeinen wird Software erst dann mit der Versionsnummer 1.0 bedacht, wenn sie theoretisch komplett oder fehlerfrei ist.) Das war im März 1992. Noch einmal anderthalb Jahre später, Ende Dezember 1993, trug der Linux-Kernel die Versionsnummer 0.99pl14 - und näherte sich asymptotisch der 1.0 an.
Heute ist Linux ein komplettes UNIX, das in der Lage ist, mit dem X Window System, TCP/IP, Emacs, UUCP, Mail- und News-Software (und was Ihnen sonst noch einfällt) zu laufen. Fast alle wichtigen freien Softwarepakete sind nach Linux portiert worden, und kommerzielle Software erscheint gerade auf dem Markt. Linux unterstützt heute viel mehr Hardware als frühe Versionen des Kernels. Viele Leute haben Benchmarks auf 486er Linux-Systemen durchgeführt und festgestellt, daß Linux vergleichbar ist mit mittleren Workstations von Sun Microsystems und Digital Equipment. Wer hätte je gedacht, daß dieses "kleine" UNIX einmal so groß werden würde, daß es gegen die gesamte Welt des Personal Computing bestehen könnte?
Warum in alles in der Welt sollten Sie mit Linux arbeiten? Eine gute Frage. Was sie derzeit installiert haben, läuft doch - nicht wahr? Vielleicht läuft es aber auch nicht. Vielleicht wollen Sie einfach nur etwas Neues ausprobieren, oder Sie haben die Nase voll von der Speichergrenze bei 640K, wenn sie doch 128 MB RAM installiert haben. Hier sind einige Gründe, warum die Leute zu Linux wechseln:
Es ist kostenlos. Das heißt, daß Linux ein UNIX-Betriebssystem ist, das problemlos weitergegeben werden kann. Sie können Linux kostenlos von jemandem beziehen, der es schon hat, Sie können es aus dem Internet oder von einem Bulletin Board System (BBS) herunterladen, oder Sie können es zu vertretbaren Preisen von einem Händler beziehen, der die Software zu einem Paket zusammengestellt hat (wahrscheinlich mit einigen Extras) und der eventuell auch Support leisten.
Es ist beliebt. Linux läuft auf den preiswerten Rechnern mit Intels 286/486/Pentium-CPU und unterstützt eine große Zahl von Video- und Audiokarten, CD-ROM-Laufwerken, Festplatten und anderer Peripherie. Linux kann auf EISA-, VLB- und PCI-Systemen eingesetzt werden. Linux wird gerade auf andere Rechnerplattformen portiert, darunter Motorola 680x0, DEC ALPHA, PowerPC und SPARC-Rechner. Weitere Rechnerarchitekturen sind bereits vorgesehen, und die Entwicklung hat erst begonnen.
Es ist mächtig. Sie werden erfreut feststellen, wie schnell das System ist - auch wenn viele Prozesse laufen und viele Fenster geöffnet sind. Linux nutzt die Hardware in optimaler Weise aus. Viele kommerzielle Betriebssysteme (insbesondere MS-DOS) machen dagegen kaum Gebrauch von den Multitasking-Fähigkeiten der 80x86-Prozessoren. Linux wurde für diese CPUs entwickelt und nutzt alle ihre Fähigkeiten. Ein Linux-System mit einem ausreichend schnellen Prozessor und genug RAM kann ebenso gut wie, wenn nicht sogar besser als eine teure Workstation unter UNIX arbeiten.
Es ist von hoher Qualität und arbeitet mit hochwertigen Anwendungen zusammen. Linux wird als öffentliches System von Hunderten von Programmierern und Benutzern entwickelt, aber es behält die ursprüngliche Vision und Ausrichtung seines Schöpfers bei: Linux Torvalds. Linux beinhaltet die Arbeit von Universitäten, Firmen und Einzelpersonen in Form von hochwertigen Compilern, Editoren, Utilities und Skripten, die in den letzten 25 Jahren entstanden sind. Anders als bei anderen neuen Betriebssystemen steht unter Linux schon jetzt eine gewaltige Anzahl von frei verfügbaren Anwendungen für Sie bereit, von wichtigen wissenschaftlichen Programmen über Multimedia-Werkzeuge bis hin zu Spielen.
Es ist ein komplettes UNIX. Linux ist ein echtes Multiuser- und Multitasking-Betriebssystem, das auf manchen Systemen sogar mehrere Prozessoren unterstützt. Es benutzt das X Window System als graphische Benutzerschnittstelle (GUI, Graphical User Interface) und enthält mehrere einfach zu bedienende, konfigurierbare Fenstermanager. Ebenso verfügt Linux über volle Netzwerkunterstützung (unter anderem TCP/IP, SLIP, PPP, UUCP usw.).
Es ist in hohem Maße kompatibel zu MS-DOS und Windows. Sie können Linux neben anderen Festplattenpartitionen installieren, die DOS oder andere Betriebssysteme enthalten. Linux kann direkt auf DOS-Dateien auf Disketten oder Festplatten zugreifen. Derzeit werden Emulatoren für MS-DOS und Windows entwickelt, so daß Sie in Zukunft Ihre bevorzugten kommerziellen Anwendungen von Linux aus starten können. Linux läuft nicht unter DOS, Windows oder einem anderen Betriebssystem - es arbeitet völlig unabhängig von diesen -, aber es bietet die Möglichkeit, mit den verschiedenen Systemen zusammenzuarbeiten.
Es gibt keinen "Blue Screen of Death".
Es ist einfach ein Abenteuer.
Eine Linux Distribution wird von sogenannten Distrubtoren zusammengestellt, darin enthalten ist das Linux Grundsystem und verschiedene Extras die je nach Distrubtor unterschiedlich ist.
Einige von diesen Distrubtoren sind:
Suse
Red Hat
Mandrake
Caldera
'Warum soll ich eine Distribution kaufen, wenn Linux kostenlos ist?'
Erstens sind Linux Distributionen sehr günstig (< 50 Euro) im Gegensatz zu anderen Betriebssystemen wie z.B. Windows 98/NT (>100 Euro). Aber es gibt noch mehr Gründe: Je nach Distribution kann man sein gekauftes Linux frei kopieren und auf beliebig vielen Rechnern installieren - es handelt sich also nicht um eine Einzelplatz - Lizenz. Dazu kommt ein kostenloser Linux Installations - Support per Fax, Mail oder Telefon. Das schönste an den Distributionen ist aber, dass ein solches Linux Paket eine geballte Ladung von hunderten Megabytes kostenloser Software beinhaltet - unzählige Linux Programme für jeden Geschmack. Also, warum sich herumärgern mit langen Download - Zeiten, Strapazierung der Festplatte und umständlichen Installationsverfahren? Linux Distributionen sind teilweise so günstig, dass man wirklich nur die Arbeit für das Benutzer - Handbuch und das Brennen der CD's bezahlt.
Einsatzgebiete
Linux ist eines der am flexibelsten einsetzbaren Betriebssysteme überhaupt. Die Einsatzgebiete reichen von kleinen Developmentsystemen bis hin zum ausgewachsenen Supercomputer. Nachfolgend sollen nur ein paar der wichtigsten Gebiete aufgezeigt werden.
Linux als Schulungsrechner
Aufgrund der offenen Struktur des Betriebssystems und der zahlreich vorhandenen Dokumentation bietet sich Linux als System sowohl für UNIX Anfängerkurse als auch für Systemadministrations- oder Programmierkurse an
Linux als Web Server
Als wohl eines der preiswertesten und zudem noch leistungsfähigsten Web Server Systeme befindet sich Linux unter den Top 5 der meistverwendeten Betriebs systeme im Web Server Einsatz. Als 'LAMP'-System (Linux, Apache, MySQL, PHP) ist es für die meisten Internet/Intranet Server mehr als geeignet. Für größere Lösungen bietet sich beispielsweise Adabas D der Software AG als Datenbank an.
Linux als Internet Router
Aufgrund seiner Flexibilität und der vielfach vorhandenen Treiber für Netzwerk- und ISDN-Hardware ist Linux ein ideales System, um das eigene Netzwerk ans Internet zu bringen oder Telearbeitsplätze preisgünstig an die eigene Firma anzubinden.
Linux als Firewall
In vielen Fällen wird der Linux-Rechner gleichzeitig als Router und Firewall eingesetzt. Die Netzwerkmöglichkeiten und Konfigurationsoptionen ergänzen sich hier zu einer der preisgünstigsten und flexibelsten Firewalls. Freie Firewall-Software wie das sinus Firewall-Toolkit tun neben den schon vorhandenen leistungsfdähigen Kernel-Optionen ihr übriges.
Linux als Development System
Viele Firmen gehen mittlerweile dazu über, ihre kommerziellen Applikationen zuerst auf Linux zu entwickeln und später auf andere Betriebssysteme zu portieren.
Linux als Hochleistungsrechner
Firmen wie Digital Domain und die NASA machen es vor: Linux hat auch in der Oberliga seinen Platz verdient. So wurden die Animationen im Film 'Titanic' mit Linux-Rechnern berechnet, Linux cluster mit dem bei der NASA entwickelten Beowulf system befinden sich mittlerweile unter der Top 500 der schnellsten Rechner der Welt
Und vieles mehr.
Linux ist mittlerweile von einem kleinen, unscheinbaren Betriebssystem, was oftmals als Studentenspielzeug bezeichnet wurde, zu einem professionellen System gewachsen, welches kommerziellen Betriebssystemen sehr leicht das Wasser reichen kann.
Bekannte Firmen wie Sixt, Cisco Systems Inc., Corel, Software AG und viele andere setzen heute erfolgreich Linux ein.
Linux in Firmen
Im Vergleich zu kommerziellen Systemen wie beispielsweise Windows NT, ist Linux größtenteils kostenlos. Es stehen hier also ca. 90 DM gegenüber ca 2.000 DM bei Windows NT. Gibt es also noch irgendeinen Grund dafür, Windows NT gegenüber Linux zu bevorzugen?
Einige der Hauptgründe, die von IT Beratern immer wieder herangezogen werden, ist das angebliche Fehlen von kommerziellem Support, dem immer noch vorherrschenden Hacker- und Bastlerstatus (Gerne wird hier der altbewährte Spruch 'Never change a running system' zu 'Never run a changing system' umgedreht), die durch den offenen Quellcode entstehenden Sicherheitsrisiken und last but not least das Fehlen von kommerziellen Applikationen wie Lotus Domino oder Microsoft Backoffice herangezogen.
Bis auf den letzten Punkt können alle genannten Punkte mit ruhigem Gewissen widerlegt werden.
Es gibt mittlerweile eine ganze Reihe von Firmen, die Linux-bezogene Dienstleistungen anbieten. Von der Installation, über Schulungen, bis hin zur kompletten Systemadministration ist eigentlich alles abgedeckt. Firmen wie SuSE, ID Pro, Innominate und viele mehr bieten neben bundesweiten Schulungsreihen Distributionen mit Business Support Lösungen.
Die Firma Innominate bietet übrigens auf http://linux-biz.de/ eine Liste von Firmen, die kommerziellen Support bieten, an.
Weiterhin gibt es unzählige Supportmöglichkeiten im Internet. In IRC-Kanälen wie #LinuxGer und #Linux.de, bzw. in unzahligen USENET Newsgroups, Mailinglisten und WWW Servern bieten hochqualifizierte Antworten und in vielen Fällen sofortige Problemlösungen zu den meisten Fragen, und zwar ohne teuren Supportvertrag, der bei den meisten kommerziellen Betriebssystemen notwendig wird.
Es stimmt: Linux entwickelt sich schnell. Bei der Masse an Entwicklern, die am Linux-Projekt beteiligt sind, ist das Interval bei Neuerscheinungen relativ kurz. Aber: man ist keinesfalls gezwungen, jeden kleinen Schritt mitzumachen. Innerhalb der Kernelentwicklung gibt es zwei verschiedene Hauptlinien, den stabilen und den Entwicklerkernel.
Beim stabilen Systemkern bestehen die eventuellen Anderungen hauptsächlich aus dem Eliminieren von Sicherheitslöchern oder anderen Fehlern. Neue Funktionalitäten, Treiber und grundlegende Veränderungen werden ausschließlich im Entwicklerkernel durchgeführt. Dieser durchläuft eine langwierige und intensive Testphase ('kernel freeze'), bis er zum nächsten stabilen Kernel wird. Dem Benutzer steht also frei, ob er ein stabiles System verwenden oder die neuesten Funktionen und Treiber ausreizen will.
Aufgrund der offenen Entwicklungsstruktur kann man Linux als eines der sichersten und auch stabilsten Betriebssysteme bezeichnen. Fehler und Systemlücken können dadurch von jedem, der Einblick in den Quellcode hat (also jedem!) erkannt, analysiert und auch behoben werden. Wer die Security-Mailinglisten verfolgt, stellt schnell fest, daß zu einem festgestellten Fehler zumeist innerhalb von Stunden eine Fehlerlösung und ein Patch zur entsprechenden Lücke bekanntgegeben werden.
Kommerzielle Betriebssysteme wie Windows NT, Solaris oder HP-UX stehen in der Anzahl der bekanntgegebenen Sicherheitslücken in nichts nach. Der Benutzer muß hier jedoch auf die vom Hersteller herausgegebenen Patches warten, und muß zudem noch sehr oft einen teuren Supportvertrag abschließen, damit er diese überhaupt beziehen kann.
Es stimmt: es gibt bis jetzt noch kein Lotus Domino oder Microsoft Backoffice Produkte für Linux. Diese Firmen sehen in Linux einfach noch keinen Markt bzw. haben kein Interesse daran, für ein freies Beriebssystem Produkte herauszugeben. Hier ist noch einiges an Überzeugungsarbeit gegenüber den Herstellern zu leisten, obwohl Linux oftmals schon erfolgreich in ebendiesen Unternehmen eingesetzt wird, und sei es nur als Web Server. So bieten viele Firmen schon ihre Produkte für Linux an, bzw. haben erfolgreiche Testläufe hinter sich, bieten jedoch keinen kommerziellen Support für ihr Produkt auf Linux an. So entscheiden sich viele Kunden für den Einsatz von Windows NT anstatt für Linux, obwohl letzteres geringere Kosten, eine höhere Betriebsstabilität und Flexibilität gebracht hätte.
Oftmals, vielleicht sogar bei den meisten Anforderungen, kann man dieses Manko jedoch auch durch freie Software vollkommen ausmerzen. So bieten Datenbank-systeme wie MySQL in Verbindung mit PHP und dem weltweit erfolgreichsten Web Server Apache eine Flexibilitat und Leistungsfähigkeit, die seinesgleichen sucht. Im Vergleich zu Windows NT und Active Server Pages haben Entwickler bei letzterem System schon des öfteren graue Haare bekommen und sich die Nächte um die Ohren geschlagen.
Auch im Desktop Einsatz bietet Linux vielfältige Möglichkeiten. Es gibt zwar kein Microsoft Office für Linux (und es wird wohl auch nie verfügbar sein), aber dafür andere Alternativen. Durch Star Office und ApplixWare stehen dem Linux Anwender leistungsfähige Office Suiten zur Verfügung, die auch dem System von Bill Gates Sekretärin das Wasser reichen können. Freie Desktop-entwicklungen wie KDE (K Desktop Environment) tun ihr übriges, um Linux als Desktopsystem attraktiv zu machen. So arbeiten mittlerweile sogar Anwaltskanzleien mit Linux sowohl als Server- als auch als Desktopsystem.
Es sind also schon einige Firmen auf dem Linux Markt vertreten, und es werden stetig mehr.
Firmen wie Corel, Oracle, Sybase, Informix und Netscape haben offiziell Produkte und Support für Linux angekündigt, viele weitere folgen. Es gehen sogar Gerüchte um, dass Microsoft intern einige seiner Produkte auf Linux testet. Ob eine Linux Version von Microsoft Office doch nicht ausgeschlossen ist? Das wird die Zeit zeigen.
Linux, der Nachfolger von Windows NT?
Linux hat seid seiner 'Geburt' 1991 einen fast kometenhaften Aufstieg erleben können. Es scheint, daß Linus Torvalds sein Ziel 'World Domination, fast' doch noch erleben könnte. Wird Linux den Markt von Microsoft Windows NT übernehmen können? Wohl kaum. Bei einer momentanen Benutzerzahl von 5 gegenüber weit über 200 Millionen wäre es doch etwas überheblich so etwas zu behaupten. Als Fernziel ist ein solcher Marktanteil jedoch durchaus im Bereich des möglichen. Firmen wie SUN und IBM gehen mittlerweile dazu über, Linux zumindest als alternatives Betriebssystem anzubieten. Apple, Digital, SUN und unzählige Hardware-Hersteller sind mittlerweile aktiv an der Linux-Entwicklung bzw. Portierung beteiligt und beschäftigen sogar dediziert abgestellte Mitarbeiter.
Wenn man vergleicht, welchen Benutzerstamm Microsoft in den ersten sieben Jahren entwickelt hat (1981 wurde MS-DOS vorgestellt) und wie Linux momentan vom Weltmarkt akzeptiert wird, kann man nur gespannt sein. Die notwendigen Vorraussetzungen wie qualitativ hochwertiger Support, ein einheitliches und leistungsfähiges Desktop System, sowie kommerzielle Produkte, die den Markt abdecken, sind in vollem Gange oder schon verfügbar.
Im internationalen Vergleich liegt Linux mittlerweile mit 14 % auf Platz 4 der Beliebtheitsskala für UNIX Systeme, hinter HP-UX, AIX und SunOS/Solaris.
Es wird sich zeigen, ob sich die Revolution im Softwarebereich, ausgelöst durch freie Entwicklungen und letztendlich auch das Internet sich in den nächsten Jahren weiter ausweiten und gegen die Marketingmaschinen der großen Riesen ankämpfen kann.
Der Kernel ist das "Herz" des gesamten Systems. Im Kernel laufen alle Fäden zusammen: die Speicherverwaltung, die Führung der Prozeßtabellen, Management von Multitasking- und -user-Fähigkeit, die Verwaltung der und die Zugriffe auf die Dateisysteme, die Treiber für die Zugriffe auf die jeweilige Hardware, etc.
X Window System
Linux unterstützt auch mehrere Windowing (Fenster-basierte)-Systeme, von denen das populärste das X Window System (kurz X) vom MIT (Massachusetts Institute of Technology) ist.
Im Jahre 1984 gründeten Forscher am MIT das Projekt Athena, dessen Hintergrund die Entwicklung einer grafischen Schnittstelle war, die auf Workstations oder in Netzwerken unterschiedlicher Art laufen würde. In frühen Phasen der Forschung zu X wurde sofort klar, daß X Hardware-unabhängig sein müsse, um diese Aufgabe zu erfüllen. Ebenso mußte es transparenten Netzwerkzugang zur Verfügung stellen. Daher wurde X nicht nur als ein Window-System, sondern auch als ein auf das Client-/Server-Modell basierendes Netzwerkprotokoll entwickelt.
X wurde von Robert Scheifler und Ron Newman, beide vom MIT, und Jim Gettys von DEC entwickelt. X unterscheidet sich erheblich von anderen Windowing-Systemen (z.B. Microsoft Windows), auch in Hinsicht auf das Anwender-Interface. Dieser Unterschied basiert hauptsächlich auf einem Konzept, das als "Werkzeugbank"- oder "Werkzeugkasten"-Funktion bezeichnet wird. Das heißt, X läßt Sie jeden Aspekt seines Verhaltens durch ein umfangreiches Sortiment von Programmierhilfen kontrollieren.
Generell stellt X hochauflösende Grafiken über Netzwerkverbindungen mit hoher Geschwindigkeit und hohem Durchsatz zur Verfügung. Kurz, X baut auf die modernste zur Zeit verfügbare Window-Technologie auf. Einige Anwender werten die Komplexität von X als einen Nachteil und haben wahrscheinlich recht. Es gibt einfach so viele Optionen, von denen der normale Anwender sehr schnell überwältigt werden kann.
Mit Microsoft Windows vertraute Anwender werden die Arbeitsweise von X besser verstehen, wenn Sie sie mit der Beziehung zwischen DOS und Microsoft Windows 3.11 vergleichen. Das grundliegende Linux-System ist als Befehlszeilen-Interface immer vorhanden und bleibt aktiv und zugänglich, auch wenn der Anwender die X-Umgebung benutzt. X läuft insofern über dem zugrundeliegenden Linux-System. In der X-Umgebung kann ein Anwender über ein Shell-Fenster auf das Linux-Befehlszeilen-Interface zugreifen. (Dies scheint zumindest ebenso zu funktionieren wie in Microsoft Windows, in dem ein MS-DOS-Eingabefenster verfügbar ist.) Von diesem Shell-Fenster aus kann der Anwender Befehle ausführen und den Arbeitsablauf von Systemprozessen beobachten.
X ermöglicht den Benutzern einer ganzen Reihe von Window-Managern. Jeder dieser Manager schaut anders aus und wirkt anders. Einige (wie twm) wirken recht nackt und technisch, während andere durchaus attraktiv und sehr modern sind. Es gibt sogar einen X-Window-Manager, der dem Windows-95-Look nacheifert. Andere Plattformen werden ebenso nachgebildet, z.B. das NeXT Window System und das Amiga Workbench-System.
Und hier noch einmal die wichtigsten Eigenschaften im Überblick:
Multitasking: Mehrere Programme laufen gleichzeitig ab.
Multiuserbetrieb: Mehrere Benutzer können gleichzeitig auf der selben Maschine arbeiten. (Sie brauchen keine Mehrbenutzer-Lizenz!)
Läuft im 386-Protected-Mode mit Speicherschutz für die Prozesse: d.h. ein hängender Prozeß kann nicht den ganzen Computer zum Absturz bringen.
'demand loads executables': Linux lädt nur die Programmteile in den Speicher, die gerade benötigt werden.
'shared copy-on-write pages': Mehrere Prozesse können sich denselben Speicher teilen. Wenn einer der Prozesse versucht in diesen Speicher zu schreiben, wird der Inhalt dieses 4KB großen Blockes in einen anderen Speicherbereich kopiert. 'Copy-on-write' hat zwei Vorteile: höhere Geschwindigkeit und geringeren Speicherbedarf.
Virtueller Speicher durch Paging: Auslagern einzelner Speicherseiten (nicht Prozesse) auf die Festplatte. Dabei koönnen die Daten entweder auf eine separate Partition oder in einer Datei ausgelagert werden. Man spricht hier im allgemeinen von 'swapping areas' auch wenn es sich eigentlich um 'pageing' handelt. Der große Vorteil von Linux ist dabei, die Möglichkeit zur Laufzeit neue Bereiche hinzuzufügen. Theoretisch wäre es Möglich 16 Blöcke mit je 128 MB Größe (Gesamt 2GB) als 'swapping area' zu benutzen.
Freie Speicherverfügbarkeit für Programme und Cache: Freier Speicher wird solange als Cache genutzt, bis ein Anwendungsprogramm mehr Speicher anfordert, in diesem Fall wird der zuvor durch den Cache belegte Speicher sofort wieder freigegeben.
Dynamische (DLL's) und statische Libraries.
Core-Dump für eine Programmanalyse und zum Debugging nach einem Programmabsturz.
Quellcode-kompatibel zu POSIX, System V und BSD. Durch den iBCS2-Emulator können die meisten SCO-Binärdateien (SVR3 und SVR4) ausgeführt werden.
POSIX Job-Kontrolle.
Vollständig verfügbarer, freier Quellcode des Kernels, aller Treiber und nahezu aller Programme rund um das Linux Systems.
Pseudoterminals (pty's)
Virtuelle Consolen: Dadurch paralleles Arbeiten mit unabhängigen Login-Sessions möglich (unabhängig von der Video-Hardware).
Coprozessor-Emulation im Kernel. Wenn kein Mathematischer Coprozessor im System verfügbar ist, wird dieser emuliert. Besitzt der Rechner einen Coprozessor, wird dieser vollständig genutzt.
Unterstützung vieler nationaler und anwenderdefinierter Tastaturen. Eine Anpassung an spezielle Tastaturen ist sehr einfach möglich.
Zugriff auf MS/DR-DOS (schreiben und lesen) und OS/2 Partitionen (nur lesen) ist möglich (bisher nur unkomprimierte Partitionen).
CD-ROM Dateisystem Unterstützung: Alle standard CDROM-Formate können gelesen werden.
Netzwerk-Unterstützung einschließlich TCP/IP, ftp, telnet, NFS, etc. sowohl über Netzwerk-Karten als auch über serielle (SLIP,PPP) und parallele (PLIP) Schnittstellen.
Unterstützung der meisten landesspezifischen Tastaturbelegungen und
Mehrere virtuelle Konsolen: Mit Hot-Keys können bis zu 64 virtuelle Konsolen ausgewählt werden. Auf jeder dieser Konsolen kann sich der Benutzer einloggen und dort Programme starten.
Mit einem speziellen Dateisystem (UMSDOS) ist sogar eine Installation auf einer MS-DOS Partition möglich.
Linux verfügt über ein erweitertes Dateisystem mit dem theoretisch bis zu 4 TB adressiert werden können. Dateinamen können bis zu 255 Zeichen lang sein. Ausserdem unterstützt Linux die Dateisysteme minix-1, Xenix und System V.
Haupt | Fügen Sie Referat | Kontakt | Impressum | Nutzungsbedingungen