Betriebssysteme
GUI und Shells ein Widerspruch ?
Zeitschrift UNIX-Open berichtete (gefunden von Walter Jäger):
Originalzitat vom IT-Stammtisch: "Für ein Betriebssystem oder für
obskure
Dinge wie Shell-Scripts interessiert sich in Zeiten von Point-and-Click
niemand mehr. Warum soll ein Experte dann eigentlich noch eine spezielle
Unix-Zeitschrift lesen?" Armer Windows-geschädigter Ignorant! Dabei ist
der
gute Mann wahrscheinlich nur auf die Marketingmasche derjenigen Fraktion
hereingefallen, die nicht hinter die Fensterchen gucken kann.
Graphische Bedienoberflächen und Shells sind zwei grundlegend verschiedene
Sachen, die man nicht gegeneinander ausspielen sollte:
Vorteile der Shell
- Manche Programme wie z.B. Compiler, der UNIX-Werkzeugkasten, Textsatzsysteme brauchen keine Graphische Oberfläche.
- Bei Shell-Konzept kann man sehr einfach die Ausgabe eines Prozesses in
einem weiteren weiterverarbeiten
- Man kann sehr schnell aus kleinen Tools mittels Shellscripte
komplexere Anwendungen schreiben und so gerade
Systemadministrationsaufgaben vereinfachen.
Beispielsweise haben wir in MMIMS
scripte, wo man vollständig für Domains Nameserver, WWW_Server und
E-Mail-Server konfigurieren kann.
- Mit einer GUI kann man schlecht automatisieren. Pfuscher greifen
hier zum Event-Recoder. Dabei haben sie erkannt, daß sie immer die
selben Sachen klicken müssen.
- Dies ist auch eng verbunden mit dem UNIX-Konzept:
Konfigurationen werden in gewöhnlichen Ascii-Dateien verwaltet.
Damit ist das völlig orthogonal zu anderen Konzepten, was man mit Ascii-Dateinen tun kann:
- Man kann Sicherheitskopien machen oder sie in ein Versionsverwaltungssystem übernehmen
- Man kann Komentare dazuschreiben, warum und wieso was so ist
- Man kann sie per E-Mail versenden
- Man kann sie mit diversen Programmen bearbeiten
- ...
MS DOS hat auch eine Shell, die COMMAND.COM (vgl. Geschichte) Übrigens verspotteten die DOSen Freunde die Atari/AMIGA/MAC-Freunde, die damals schon eine GUI hatte als "Analphabethen, die Bildchen brauchen".
Auf MS DOS wurde dann Windows 3.1 aufgesetzt, wobei Windows3.1 eben die Eigenschaften des Intel 80386 ein wenig nutzte um DOS herum. Dies ist konzeptionell
unsauber.
Übrigens hat auch die WindowsNT "MS DOS Eingabeaufforderung" nichts mit MS DOS, sondern eben mit der Shell zu tun.
Die Bill Gates-Jünger sollten eben die Begrifflichkeiten nicht so sehr verwirren.
ca 10 Jahre später gibt es auch bei Windows7 immer noch cmd.com als historische Windows-Shell und die Powershell, die sehr bemerkenswerte Merkmale hat und mit .NET integriert ist.
(Hier sehen wir mal wieder die furchtbare Ignoranz mancher Zeitgenossen und selbsternannter Computerexperten und wie sie sich irren)
Die GUI eignet sich insbesondere
- zu diversen Visualisierungen
- Masken sind leicht ausfüllbar, der Nutzer bestimmt die Eingabereihenfolge
- man kann mehrere Shells simultan sehen :-)
Übrigens ist eine GUI nicht immer einfacher zu benutzen. Wenn man ein Programm
nicht kennt, kann man manches nicht mehr reproduzieren.
Die Erfahrung zeigt, daß viele Neueinsteiger von den vielen bunten Bildchen
verwirrt werden, weil sie noch nicht wissen, welche nun wichtig sind oder nicht.
Viele Leute haben auch Angst, daß sie etwas kaputt machen.
Dann muß man wissen, das (wahrscheinlich nicht nur) in der UNIX-Welt
die Graphische Oberfläche gar nicht zum Betriebssystem im engeren Sinne
gehört. Heute ist das X-Window-System bei UNIX-Systemen weit verbreitet.
(Hier ist zu betonen, das es auch X-Server für MS-Windows... gibt - so kann man z.B. einen Unix-Server von einem MS-Windows aus graphisch administrieren (ganz undogmatisch))
Aber es sind auch andere GUIs denkbar, z.B. hatte die Firma Sun ende der 80er Jahren eine namens "SUNVIEW". Zudem gibt es auch das X-Window System für die Microsoft-betriebssysteme.
Also ist die GUI ein seperates Konzept.
Wozu braucht ein Server auch eine GUI fest eingebaut, die Resourcen kostet ?
Wenn man mal eine braucht, dann nimmt der Server halt die Rolle eines X-Clients
ein und sendet die GUI eben an einen X-Server, sprich eine Arbeitsstation ...
Für Graphische Anwendungen wie CAD-Systeme und Spiele ist das X-Window-System kritisch zu sehen, da der Netzwerksocket der Performance-Engpass darstellt.
In MS Windows NT/Vista/7 ist die GUI ein Executive im Kernaddressraum
Ein Betriebssystem muß Techniken wie Speicherabbildung bieten, damit ein Anwendungsprogramm vom Betriebssystem kontrolliert direkt auf die Hardware zugreifen kann....
Zukunft
Ich denke, daß schon jetzt Synergien da sind, die einfachen Mausklickern noch
nicht bewußt sind:
- die Konfigurationsdateien in UNIX können auch mit GUI-Tools erzeugt und verwaltet werden. Insbesondere TCL/TK eignet sich besonders dafür (natürlich auch Perl/TK Python/TK )
- Komponentenmodelle können sowohl
mit Scriptsprachen
als auch über graphische Präsentationen genutzt werden
- Windows XX hat den COM/OLE - Ansatz, die Scriptsprache ist Visual Basic Script. Natürlich ist die Sicherheit nicht ganz so einfach, wie der I LOVE YOU-Script-Virus im Sommer 2000 gezeigt hat.
Der Anwender oder die Anwenderin entscheidet natürlich aufgrund der Nutzbarkeit der GUI und der Nutzbarkeit der Anwendungsprogramme über ganzes System.
Informatik- und Netzwerkverein Ravensburg e.V
Rudolf Weber