TL; DR
Bir 32 bit konsol programını çalıştırdığınızda, bu program tarafından yürütülür. cmd
; 16 bit konsol program çalıştırdığınızda, bu program tarafından yürütülür. command
.
ayrıntılar
Windows XP, eski 16 bit uygulamaları desteklemek için bir alt sistem içerir.
Eski 16 bit uygulamalar DOS ve Windows programları olarak kullanılabilir. DOS programları, doğası gereği konsol uygulamalarıdır ve komut istemi görünümünde çalışırlar. Ancak 32-bit Windows konsol uygulamaları çok benzer ve aynı görünüyor.
Komut işlemcisi / tercüman cmd
birkaç amacı var:
- 32 bit metin Windows konsol programını yürütmek için
- Çeşitli komut satırı işlevlerini sağlamak ve işlemek için (
dir
, copy
, vb.)
- Toplu iş dosyalarını yorumlama ve yürütme (DOS uyumlu
.bat
dosyalar ve NT uyumlu .cmd
Dosyalar)
Eski bir 16 bit konsol programını çalıştırdığınızda, NTVDM (Windows NT Sanal DOS Makinesi) tarafından yürütülür. Öykünülmüş bir DOS sistemi sağlar (dolayısıyla sanal DOS makinesi özel bir sanal makine yazılımı çalıştırmaya benzer, ancak öykünme katmanı daha basittir. command
gerçek DOS'a çok daha yakın olan komut yorumlayıcısının 16 bitlik bir sürümüdür cmd.exe
hangi aslında bir Windows programı (ve aksine, Windows PE başlığına sahip command.com
DOS MZ başlığına sahip olan).
command
aynı amaçlara sahiptir cmd
sadece 16 bit programları desteklemesi dışında. Ek olarak, desteklemiyor .cmd
dosyalar ve daha az yerleşik komut vardır ve sözdiziminde daha sınırlıdır ( cmd
daha yeni, daha modern, daha gelişmiş bir komut satırı tercümanı, benzer 4DOS ).
Ancak, grafiksel DOS programlarını (eski oyunlar gibi) destekler, ancak bunları çalıştırmanın başarısı, ekran kartı sürücülerine ve programın niteliğine bağlıdır. Sunulan çok sayıda site var çeşitli numaralar DOS oyunlarının Windows'ta çalışmasını sağlamak (Vista ve üstü başarılar genellikle XP'den daha sınırlı olsa da).
Windows'un 64 bit sürümlerinin 16 bit programların desteğini tamamen düşürdüğü ve bu nedenle command
hiç de, ne DOS ne de Windows 16-bit programlar çalışacak ve bunun yerine bir (yanıltıcı) atacak hata mesajı .
Teknik notlar
command.com
bir .com
DOS programlarıyla geriye dönük uyumluluk için uzantı, ancak harici DOS komutlarının diğer Windows sürümlerinin çoğu gibi, dahili olarak, aslında bir Windows PE'si .exe
dosya. Bu, Windows, uzantıyı çoğu dosya türünün nasıl işleneceğini belirten bir gösterge olarak kullanırken, çalıştırılabilir olanlar için uzantıyı görmezden geldiğini ve içeriğine baktığını gösteren ilginç bir gözlem sağlar. .exe
olarak kabul edilirse işe yaramaz .com
). Bu soru Bu etki ile ilgilidir.
command.com
eski 16bit sürümüdür (yalnızca 32bit kurulumlarda kullanılabilir). Windows 7'nin 64bit sürümünde mevcut değil.