Ich bin gerade dabei, einen OS-Kurs zu beginnen, und als Apple-Benutzer bin ich mit den grundlegenden Details des Windows-Betriebssystems nicht sehr vertraut. Ich habe mich gefragt, ob MS DOS immer noch unter Windows ausgeführt wird oder ob NUR Windows jetzt als Betriebssystem verwendet wird. Ich war ein wenig verwirrt, weil ich irgendwo gelesen habe, dass MS-DOS zum Booten verwendet wird, aber Windows alle anderen Betriebssystemfunktionen enthält und daher für alle anderen Betriebssystemvorgänge verwendet wird ...
71
Antworten:
Bei Microsoft Windows gibt es zwei unterschiedliche Abstammungslinien, und es hilft nichts, wenn Leute Dinge über eine Abstammungslinie schreiben, die sie über die andere gelernt haben.
Dies ist der DOS + Windows-Bootstrap-Prozess.
Dies ist der Windows NT 6.x-Bootstrap-Prozess.
Was auch nicht hilft, ist, wenn man fälschlicherweise von einer "DOS-Eingabeaufforderung" in Windows NT spricht, wie es hier sogar in Antworten vorkommt. Abgesehen von der Tatsache, dass es Befehlsinterpreter sind, die nicht Betriebssysteme auffordern , verschmilzt dies "DOS" mit "textueller Benutzerschnittstelle" und "Befehlsinterpreter", von denen keines in Wirklichkeit mit DOS synonym ist. DOS ist eine Familie von Betriebssystemen: MS-DOS, PC-DOS, DR-DOS, FreeDOS, OpenDOS usw.
Wenn unter Windows NT ein Eingabeaufforderungsfenster geöffnet ist, wird fast immer eines ausgeführt. Hierbei handelt es sich um den im
CMD
Lieferumfang enthaltenen Standardbefehlsinterpreter von Microsoft und um ein normales Win32-Programm mit textueller Benutzeroberfläche. Es gibt weder "DOS" noch NTVDM. Es gibt nur ein Win32-Programm, das mit seinem Win32-Konsolenobjekt spricht. Und tatsächlich gibt es für viele TUI-Programme, die man unter Windows NT ausführen kann, einschließlich aller Tools in den verschiedenen Resource Kits von Microsoft, immer noch keinen Hauch von DOS im Bild, da dies alles gewöhnliche Win32-Programme sind, die Win32 Console I ausführen / O auch.Ironischerweise gegeben , dass Windows NT 3.1 im Jahr 1993 veröffentlicht wurde, die Windows NT - Linie tatsächlich ist das nicht-basierte-upon-DOS von Windows-is-the-Betriebssystem - System , das alle Menschen in der Mitte der 1990er Jahre zu überzeugen versuchten , die Welt, die DOS + Windows 95 war.
Und achtzehn Jahre später versuchen wir immer noch, einigen Leuten mitzuteilen, dass Windows NT nicht wie DOS funktioniert und dies auch nie getan hat . ☺
Weitere Lektüre
quelle
Außerdem war Windows 95 nicht nur eine grafische Benutzeroberfläche unter DOS. Lesen Sie hier mehr:
http://blogs.msdn.com/b/oldnewthing/archive/2007/12/24/6849530.aspx
quelle
Nein. Alle Windows-Versionen vor denen mit dem "NT-Kernel" waren eher eine GUI über DOS. Mit NT, das mit der Einführung von Windows XP besonders verbreitet wurde (und Windows Vista und Windows 7 verwenden ebenfalls den NT-Kernel), wurde die Notwendigkeit, DOS als zugrunde liegendes Betriebssystem zu verwenden, beseitigt .
32-Bit-Versionen von Windows verfügen weiterhin über eine DOS-Eingabeaufforderung, die über
command.com
den Startdialog ausgeführt werden kann. Außerdem können die meisten alten DOS-Programme ausgeführt werden. Alle Windows-Versionen verfügen über eine Eingabeaufforderung, mit der Batchdateien und DOS-ähnliche Befehle ausgeführt werden können (normalerweise native Windows-Anwendungen, die für die Interaktion mit der DOS-Konsole konzipiert sind). 64-Bit-Windows kann keine DOS-Anwendungen ausführen, da 16-Bit-Prozesse nicht unterstützt werden.Am besten sehen Sie die Eingabeaufforderung als eine spezielle Anwendung an, mit der DOS-Programme ausgeführt und / oder Windows-Programme über die Befehlszeile gestartet werden können.
Hinweis: Die Terminologie "DOS-Eingabeaufforderung" wurde häufig verwendet, um die "Eingabeaufforderung" vor der Einführung des NT-Kernels zu beschreiben. Obwohl viele Leute heute noch den Begriff "DOS-Eingabeaufforderung" verwenden (weil sie damit viele der gleichen Befehle ausführen, die ursprünglich als "DOS-Befehle" bezeichnet wurden, die normalerweise in einer DOS-Umgebung verfügbar sind), wird der Begriff "Befehl" verwendet prompt "ist in NT-Varianten von Windows technisch korrekt.
quelle
Mehr als eine Antwort auf Randolf, aber er ist nicht der einzige, der wiederholt Kommandozeilenschnittstellen und DOS verwirrt .
Beachten Sie, dass viele der [DOS] - und [MS-DOS] -Tags denselben Fehler aufweisen: MS-DOS hatte anfangs nur einen Textmodus, eine Befehlszeilenschnittstelle mit dem Namen
command.com
+ norton commander für viele von uns und ein eigenes Textmodusfenster mit Frames , mit ansi.sys gezeichnet, aber nicht nur per Tastatur, sondern auch per Maus steuerbar, sondern auch einfacher mit den Pfeiltasten und Hotkeys.Dann wurde Windows auf DOS (2.0, 3.0, 3.1, 3.11) aufgebaut, wobei ein Symbol für DOS-Box in Windows als Name für die Befehlsoberfläche in Windows wieder erschien.
Aber in Windows-NT und Windows-95 oder -98 wurde MS-DOS aufgegeben, aber es gab noch einen Befehlsinterpreter
cmd.exe
(cmd32.exe) mit derselben oder nahezu derselben Syntax und denselben Schlüsselwörtern. Dies war jedoch ein Programm, das in Windows ausgeführt wurde, wie andere textartige Befehlsinterpreter wie BASIC, irb (Ruby), scala-repl, psql (Postgresql), sqlplus (Orakel), bc, R, Rhino usw. und so weiter, läuft auf mehreren Plattformen.Das Aufrufen dieses MS-DOS-Stils ist irreführend, da DOS oder MS-DOS nicht die ersten sind, die darauf gekommen sind. Es ist viel älter.
Sogar unter Windows war es nicht beschränkt, DOS-Befehle auszuführen - eine übliche Praxis beim Schreiben von Stapeldateien bestand darin, einige Parameter anzugeben, bevor ein Windows-Programm gestartet wurde. Zum Beispiel CLASSPATH, JAVA_HOME, Java-Parameter wie -Xmx und so weiter für ein Java-Programm.
Viele Leute denken, Befehlszeilenschnittstellen seien ein Relikt früherer Zeiten - sie kennen die Leistung der Verarbeitung von Tausenden von Dateien mit wenigen Tastendrücken nicht. Sie wissen auch nichts über wsh und monad. Für Profis ist ein Befehlsinterpreter unter Windows fast so nützlich wie unter Unix oder Linux. Es ist nicht so bekannt, aber für viele Administratoren von wesentlicher Bedeutung.
Es gibt sogar einen Port der Gnu-Toolchain, mit einer sh.exe und sed, awk, bc, tail, rev, cat und all dem als native Win32-Apps.
Vielleicht können Sie alte DOS-Programme unter cmd.exe ausführen, aber Sie können nicht Windows - Programme im DOS - Modus ausgeführt werden , so bleiben die Leute nicht sagen, dass cmd.exe ist DOS - es ist nicht. Und es ist nicht DOS-artig . Was du meinst, ist ein
interactive command-line program
, eincommand-line interface
.ist fast immer eine irreführende Terminologie . Es mag für einen Amateur geeignet sein, aber wenn Sie möchten, dass Ihr Publikum versteht, wovon Sie sprechen, sollten Sie sich fragen: Ist es auf ein spezielles Betriebssystem, auf DOS beschränkt? Wird der CLI-Stil am besten als "DOS-Stil" bezeichnet? Ist das historisch korrekt? Kennt Ihr Publikum DOS überhaupt? Ist es hilfreich für das Verständnis? Laufen diese Programme wirklich unter DOS?
Sie brauchen den richtigen Ausdruck, scharf wie das Messer eines Chirurgen, um komplizierte Dinge zu erklären. Falsche Ausdrücke provozieren falsche Eindrücke im Gehirn Ihres Publikums. Schlampige Ausdrücke sind schlimmer als nichts. Vermeide sie. Verwenden Sie
CLI
diese Option, wenn die Befehlszeilenschnittstelle für die Eingabe zu lang ist.Korrigieren Sie irreführende Tags auf SU, SE und anderen Seiten.
quelle
In der Windows NT-Familie (NT, 2000, XP, 2003, Vista, 2008, 7) ist es DOS-unabhängig. Es gibt nur DOS-Emulatoren für die Abwärtskompatibilität.
Es gibt jedoch noch einige Einschränkungen, die sich aus der Kompatibilität mit DOS in frühen NT-Tagen ergeben. Beispielsweise können Sie keine Datei oder kein Verzeichnis mit dem Namen "CON" oder "PRN" erstellen, da dies reservierte Namen für Geräte unter DOS sind.
quelle
Eigentlich benutzt Windows jetzt kein DOS mehr. Eingabeaufforderung zu DOS (oder Cmd) wird über Windows XP, Vista oder Seven emuliert. Windows startet von seinen eigenen Ressourcen.
quelle
to DOS (or cmd)
. Es gibt einen Befehlsinterpreter, cmd.exe, aber das ist nicht DOS. DOS hatte auch einen Befehlsinterpreter, command.com, der in Syntax, Schlüsselwörtern und Verwendung sehr ähnlich ist, aber die Befehlsschnittstelle ist nur ein Teil von DOS; es ist nicht DOS.console
Typ im PE-Header ist Teil des Win32 / Win64-Subsystems. Es ist überhaupt nicht 16-Bit.