|
Vergleich
DOS mit Linux zu vergleichen ist etwa so haarsträubend wie der Vergleich zwischen einem Trabbi
und einem Porsche...
Aber
Beide haben einen Motor, vier Räder und stinken....
| Hersteller |
Der Hersteller des Betriebssystems DOS dürfte allgemein bekannt sein.
Linux dagegen läßt sich nicht so ohne weiteres irgend einem Hersteller zuordnen.
Vielmehr ist mit Linux eigentlich nur der Betriebssystemkern gemeint, dessen Ursprünge auf
der von dem Finnen Linus Benedict Thorvalds 1992 entwickelten Kernelversion 0.12 zurückgehen.
Seit dieser Zeit wird Linux weltweit (!) ständig getestet und weiterentwickelt
(man stelle sich mal diese Manpower vor!!!) und hat sich inzwischen mit den 2.4.xx -er Versionen
zu einem sehr ausgereiften und äußerst stabilen Betriebssystem gemausert.
Zu allem Überfluß ist Linux auch noch Freeware!!!
Und es kommt noch besser! Der gesamte Quellcode (Programmiersprache C) ist frei erhältlich;
diesen kann man auf eine recht bequeme Weise auf seinem Rechner neu kompilieren und somit die
Eigenschaften der verwendeten CPU voll ausreizen.
Noch Fragen?
|
| Distributionen |
Aber eine Schwalbe macht noch keinen Frühling, und genauso wenig kann man mit einem
"nackten" Betriebssystemkern (der übrigens gerade mal ca. 500 KB groß ist) irgendwas
brauchbares anfangen.
Daher gibt es mittlerweile recht viele "Linux-Distributionen", Pakete, die neben dem
eigentlichen Betriebssystemkern noch eine Fülle von Anwendungsprogrammen enthalten
(so 4-5 vollgepackte CD's, komprimiert!!!), die in aller Regel Freeware sind.
Und diese Distributionen kosten natürlich was - ist ja eine Dienstleistung - in der Regel
so knapp 100 €. Dafür erhält man mittlerweile einen Setup-Komfort, der den
Windows-Setup ziemlich blaß aussehen läßt.
Bekanntester Distributor in Deutschland ist S.u.S.E.
Auch RedHat und
Debian haben international ziemlich hohe
Marktanteile, die Installation ist jedoch bei diesen Distributionen weniger komfortabel. |
| Knoppix - Linux On CD |
Warum überhaupt installieren? Linux läßt sich mit mehr oder weniger Aufwand
auch direkt von der CD booten. Klaus Knopper macht es mit seiner eleganten CD-Lösung
"Knoppix-CD" vor: CD einlegen -
booten - und schon hat man mit KDE 3.x eine der modernsten grafischen Benutzeroberflächen
auf dem Schirm. Mit Browser, Email, Office und was man sonst so braucht. |
| Privates Linux |
Doch damit nicht genug. Wer sich mit Linux gut auskennt, der kann sich seine eigene
"Distribution" ganz individuell selbst "stricken". Denn alles, was man dazu braucht kann
man sich vom freundlichen GNU herunterladen.
Und immer auf dem neuesten Stand halten |
| Oberfläche |
Das ist auch schon die größte Gemeinsamkeit zwischen DOS und Linux - die
kommandozeilenorientierte Oberfläche.
Während aber DOS direkt nach dem Booten betriebsbereit ist, muß man sich unter Linux
erst mal in eine sogenannte "virtuelle Konsole" einloggen. Und das hat ganz triftige Gründe:
- Gibt das einen gewissen Schutz vor unberechtigtem Zugriff, denn das Einloggen auf so eine
Konsole kann über die Tastatur, die serielle Schnittstelle, von einem anderen Rechner im
lokalen Netzwerk oder, ISDN-Karte oder Modem vorausgesetzt, von irgendeinem Rechner irgendwo auf
der weiten Welt aus erfolgen.
- Es gibt bis zu 64 Konsolen, die völlig unabhängig voneinander arbeiten - ganz grob
vergleichbar mit den Fenstern von Windows. Sollte sich also mal ein Programm "aufhängen",
einfach mit <ALT>+F2 auf die 2. Konsole umschalten und das Proggi einfach mit
kill <pidnummer> "entsorgen".
Wie man die PID-Nummer rauskriegt - später....
- Gut für Programmierer: Auf der ersten Konsole editieren, auf der 2. kompilieren, auf
der 3. das Proggi testen und auf der 4. entsorgen, falls was schief geht.
Selbstverständlich gibt's unter Linux auch eine grafische Oberfläche
(X-Window, meist "Konsole" Nr.7), aber dazu später mehr.
|
| Netzwerke |
Eine der herausragenden Stärken von Linux ist seine Netzwerkfähigkeit.
Während DOS praktisch keinerlei Netzwerkunterstützung bietet, hat Linux alles, was man
sich an Netzwerkunterstützung nur vorstellen kann, bereits "unter der Haube". Egal, ob es
nur um ein lokales Netz geht oder den Betrieb im Internet, als stinknormaler "Stand-alone-Rechner"
oder als File-, Web-, FTP- oder weiß der Geier was für ein Server.
Die eingebaute Hardware erkennt Linux dabei beim Systemstart vollautomatisch und äußerst
zuverlässig, also kein "Plug and Pray"
|
Stapelverarbeitung "Batch" |
Batchdateien sind unter DOS ein beliebtes Mittel, um gewisse Dinge, die sich öfter
wiederholen, zu automatisieren. Diese Dateien werden ausführbar gemacht, in dem man ihnen
die Dateiendung BAT (="Batch") verleiht.
Auch Linux beherrscht die Stapelverarbeitung, nur, wie sollte es auch anders sein, noch viel
perfekter!
Die "Spielregeln":
- In der ersten Zeile muß #!/bin/sh stehen.
- Leerzeilen werden ignoriert.
- Kommentare werden nicht mit "rem" oder ":" eingeleitet, sondern mit einem #
- Die Parameter heißen nicht "%1, %2" usw., sondern "$1, $2" usw.
- Anschließend muß diese Datei mit chmod 755 batchdatei
ausführbar gemacht werden.
Im Gegensatz zu DOS-Batch's kann man unter Linux auch rechnen:
c=1
c=$((c+1))
Oder Kommandos bedingt ausführen lassen und dieses noch sauber verschachteln:
(man beachte die Leerzeichen in den eckigen Klammern)
if [ ! f xyz.txt ] ; then
echo "Inhalt von xyz.txt" > xyz.txt
if [ ! f xyz.txt ] ; then
echo "Dumm gelaufen..."
fi
fi
Kleine Schleife gefällig?
c=0
while test $c != "10" ; do
c=$((c+1))
echo "Bla Bla Bla"
done
Oder mal auf die Schnelle einen Super-Simpel-Counter als CGI/SSI-Programm?
read z < z
z=$((z+1))
echo $z | tee z
Einbinden in die Webseite an passender Stelle mit
<!--#exec cmd="./z.cgi"-->
Sieht dann im Browser so aus: 2737
(Lade diese Seite mal neu...)
Wenn Du Dir dann noch den Referenzteil genau zur Brust nimmst, dann kommt spätestens hier
so richtig Freude auf...
|
| Speicherverwaltung |
Während DOS nur die untersten 640 KB des Arbeitsspeichers für Anwendungen nutzen
kann und diesen Speicher zu allem Elend auch noch segmentiert, das heißt,
in 10 64-KB-Häppchen zerlegt, nutzt Linux den kompletten Arbeitsspeicher "am
Stück", also ohne die sehr nachteilige Segmentierung. Genauer gesagt, wird unter Linux nur
auf einen "virtuellen" Speicher zugegriffen, der sich aus dem Arbeitsspeicher und einer
Auslagerungsdatei (oder noch effizienter: Auslagerungspartition!) zusammensetzt.
Diese Speicherverwaltung integriert das Caching, Buffering und das Auslagern (swap) und
verwendet nach Möglichkeit nur Arbeitsspeicher für die aktuellen Prozesse.
Für das Caching braucht DOS den SMARTDRV, der aber ein "festes Stück" Speicher
für sich beansprucht und daher wenig flexibel ist.
Kein Wunder also, daß Linux selbst auf einem 386-er noch erstaunlich schnell ist.
|
| Beenden |
Wenn pures DOS auf dem Rechner läuft, kann man, sofern keine Anwendung läuft, den Rechner einfach ausschalten.
Tu das bloß nicht mit Linux - und sei die Versuchung noch so groß. Ähnlich wie Windows, muß auch
Linux "'runtergefahren" werden, bevor der Finger zum Netzschalter zuckt.
Mit reboot wird der Rechner neu gebootet, auch die
berühmten "Drei Musketiere" <Strg>+<Alt>+<Entf> fahren den Rechner korrekt 'runter.
Das Kommando halt bewirkt das gleiche, nur daß der
anschließende Bootvorgang unterbleibt.
|
Und hier ist noch eine tabellarische Zusammenfassung für fortgeschrittene DOS-ler:
| Betriebssystem |
Im Gegensatz zu DOS besitzt Linux keinen ausführbaren Bootsektor, der das Betriebssystem
in den Speicher lädt.
Vielmehr wird Linux über den "LILO" im MBR (das ist nicht der Bootsektor, sondern der
1. Sektor der Platte, der auch die Partitionstabelle enthält) oder direkt aus DOS heraus mit dem
"LOADLIN" gestartet.
Die Shell kann man frei wählen, meist wird das wohl die "bash" sein.
|
| | DOS | Linux |
| Kern | IO.SYS MSDOS.SYS (nur bis 6.22) | vmlinuz |
| Shell | COMMAND.COM | sh, bash, ksh,... |
| Systemstart |
Während DOS gleich nach dem Booten betriebsbereit ist, muß man sich unter Linux erst
mal in eine "virtuelle Konsole" einloggen. Dafür stehen hier bis zu 64 solcher völlig
unabhängiger Konsolen zur Verfügung zwischen denen jederzeit umgeschaltet werden kann.
|
| | DOS | Linux |
| Booten | Ein Programm im MBR führt den Bootsektor der aktiven Partition aus. Dieser lädt und startet den Betriebssystemkern (IO.SYS), der daraufhin die Dateien CONFIG.SYS und AUTOEXEC.BAT ausführt. | Der Betriebssystemkern wird in den Speicher geladen und ausgeführt. Ein Teil der Treiber ist normalerweise direkt im Kern integriert; diese erkennen die Hardware automatisch. |
| Treiber | Die meisten Treiber werden mit der CONFIG.SYS geladen. Die AUTOEXEC.BAT hat meist vorbereitende Aufgaben. | Einige Treiber, die nicht im Kern enthalten sind, werden über eine Vielzahl von Konfigurationsdateien als "Module" nachgeladen. |
| Befehle |
Manchmal ist ein direkter Vergleich etwas schwierig. In dieser Liste kommen also nur die
Befehle vor, die einen direkteren Vergleich zulassen. Mehr dazu im Referenzteil.
|
| Aktion | DOS | Linux |
Bildschirm löschen
Dateiliste
Ordner wechseln
Ordner erstellen
Dateien / Ordner löschen
Kopieren
Verschieben
Dateien anzeigen
Seitenweise
Sortiert
Textteile suchen
|
CLS
DIR
CD
MD
DEL / DELTREE
COPY
MOVE / REN
TYPE
MORE
SORT
FIND
|
clear
ls -l
cd
mkdir
rm
cp
mv
cat
more
sort
grep
|
| Batch |
Text ausgeben
Leerzeile
Bedingung
|
echo Kleiner Spruch
echo.
if exist datei del datei
|
echo "Kleiner Spruch"
echo
if [ -f datei ]
then
rm datei
fi
|
|
|