Windows hala MS-DOS'a güveniyor mu?


71

Bir işletim sistemi kursu başlatmak üzereyim ve bir Apple kullanıcısı olarak Windows işletim sisteminin temel ayrıntılarına pek aşina değilim. Merak ediyorum, MS DOS hala üstünde çalışan Windows ile birlikte kullanılıyor mu yoksa SADECE Windows şimdi işletim sistemi olarak mı kullanılıyor? Biraz kafam karıştı, çünkü bir yerde MS-DOS'un önyükleme için kullanıldığını okudum, ancak Windows tüm işletim sistemi yeteneklerine sahip ve bu nedenle diğer işletim sistemleri işlemlerinde kullanılıyor ...


Bu tartışmanın sonu ilginç görünüyor.
user2284570,

Hayır, değil. MS-DOS'a dayanan son tüketici işletim sistemi Windows Me idi. Windows XP, Vista, 7 ve sonraki sürümlerin tümü Windows NT mimarisine dayanmaktadır.
bwDraco

Yanıtlar:


140

Konu Microsoft Windows'a geldiğinde iki farklı soy vardır ve insanlar bir soy hakkında diğerini öğrendikleri bir şeyler yazdıklarında hiçbir işe yaramaz.

  • DOS + Windows soy sürümü 3.11 kadar DOS + Windows tüm sürümlerini kapsar, DOS + Windows 95, DOS + Windows 98 ve DOS + Windows Millennium Edition. Windows'un DOS üzerine katmanlı olması. Kitapların tamamı bu katmanla ilgili olarak yazılmıştır ve en azından 1990'ların ortalarından ortalarına kadar dünyanın DOS'un gittiğine ve Windows'un olduğuna inanmasını istediği için pek çok insanın adil olduğu için bazı çekişmelere konu olmuştur. isletim sistemi.

    Bu DOS + Windows önyükleme işlemidir.

  • Windows NT soy Windows NT 3.x içermektedir, Windows NT 4.0, Windows NT 5.0 ( "Windows 2000"), Windows NT 5.1 ( "Windows XP"), Windows NT, Windows XP 5.2 (bazı sürümleri ve "Windows Server 2003" ), Windows NT 6.0 ("Windows Vista") ve Windows NT 6.1 ("Windows 7"). DOS'un üzerine katmanlı değildir, DOS'a tamamen farklı bir şekilde çalışır ve DOS uygulamalarını diğer yerine Windows NT üstünde çalışan sanal bir makine olan NT Sanal DOS Makinesi (NTVDM) ile çalıştırabilir buralarda.

    Bu, Windows NT 6.x önyükleme işlemidir.

Ayrıca, yardım etmeyenler, yanlış bir şekilde cevaplarda olduğu gibi, insanların yanlışlıkla Windows NT'de bir "DOS" isteminden bahsetmeleridir. Kenara olmasından bu istemi değil, işletim sistemlerinin komuta tercüman olduğu , bu DOS ile eşanlamlı gerçekte olan ikisi de "metinsel kullanıcı arayüzü" ve "komut yorumlayıcısı" ile "DOS" conflates. DOS, bir işletim sistemi ailesidir: MS-DOS, PC-DOS, DR-DOS, FreeDOS, OpenDOS, vb.

Windows NT'de açık bir komut istemi penceresi varsa, biri neredeyse her zaman çalışıyordur CMD; bu, Microsoft'un varsayılan komut yorumlayıcısı olan ve sıradan, metinsel bir kullanıcı arabirimi olan Win32 programıdır. Ne "DOS" ne de NTVDM. Win32 konsol nesnesine konuşan bir Win32 programı var. Ve aslında Microsoft’un çeşitli Kaynak Kitlerindeki tüm araçlar dahil olmak üzere Windows NT’de çalıştırabileceğiniz birçok TUI programı için , resim üzerinde herhangi bir yerde hala DOS kokusu yok, çünkü bunların hepsi Win32 konsolunu yapan sıradan Win32 programları. / O da.

İronik olarak, Windows NT 3.1’in 1993’de piyasaya sürüldüğü göz önüne alındığında, Windows NT sohbeti aslında DOS’a dayanmayan Windows tabanlı bir sistemdir ve 1990’ların ortalarında bütün insanların inandırmaya çalıştığı bir sistemdir. Dünyada DOS + Windows 95 idi.

Ve on sekiz yıl sonra, hala Windows NT'nin DOS gibi çalışmadığını ve hiç kullanmadığı bazı insanlara ulaşmaya çalışıyoruz . ☺

daha fazla okuma

  • Jonathan de Boyne Pollard (2006). İşletim sistemi çekirdeği geliştiricileri ve aygıt sürücüsü yazarları için bir kitap listesi . Sıkça Verilen Cevaplar.
  • Mark E. Russinovich, David A. Solomon, Alex Ionescu (2009). Windows Internals (5. Baskı) . Microsoft Press. ISBN 9780735625303.
  • Walter Oney (1996). Windows 95 için Sistem Programlama . Microsoft Press. ISBN 1 55615 949 8.
  • Matt Pietrek (Kasım 1995). Windows 95 Sistem Programlama Sırları . IDG Kitapları. ISBN 1-56884-318-6.
  • Andrew Schulman (1994). Yetkisiz Windows 95 . Dünya Çapında IDG Kitapları. ISBN 9781568841694.
  • Matt Pietrek (1993). Windows internals: Windows işletim ortamının uygulanması . Addison-Wesley. ISBN 9780201622171.
  • Andrew Schulman, David Maxey, Matt Pietrek (1992). Belgelenmemiş Windows: Ayrılmış Microsoft Windows Api İşlevleri için Programcı Kılavuzu . Addison-Wesley. ISBN 9780201608342.

11
Sadece daha iyi olur. Hala insanlara uygulamalar arasında Alt-Tab yapabileceğini öğretiyorum. . .
surfasb

2
DOS, Windows 95+ işletim sistemi katmanından ziyade önyükleyici olarak kullanılmakta olduğu doğru değil mi? yani, Windows 95+ önyükleme işlemi dışında DOS servislerini çağırmaz.
Winston Ewert

3
@Winston Ewert, bildiğim kadarıyla windows programları hala windows 95'te dos INT 21h'e dayanıyordu. Örneğin, INT 21h başlatma için 55h ve sonlandırma için INT 21h fonksiyonu 4Ch ile çalışmaktadır. 98 ve ME'ye cevap veremem. Ancak 95 yaptı.
artifex,

6
Ancak yine de Windows 7'de explorer.exe altında ayrılmış DOS aygıtı adlarını kullanamazsınız!
LawrenceC

5
İnsanlar! Bu sitenin nasıl çalıştığını biliyorsunuz. İsterseniz soru sormak DOS modunda msdos.sys seçeneklerin anlamları ve neden kimse Win32 dosya adları gibi çeşitli isimler kullanamazsınız hakkında, daha sonra kullanmak Soru Sor Bu sayfanın en üstündeki köprüyü . Dahası, zaten sahip olan insanlardan gelen soruları okuyarak başlayın .
JdeBP

23

Ayrıca, Windows 95 DOS'un üstünde tamamen bir GUI değildi. Daha fazlasını buradan okuyun:

http://blogs.msdn.com/b/oldnewthing/archive/2007/12/24/6849530.aspx


1
Bunu, bütün VxD arayüzünü ve VMM değiştiriciyi hatırlıyorum. Bir işletim sistemi üzerinde bir şekilde ilerlemenin ilginç bir yoluydu ve hala çok fazla geriye dönük uyumluluğu var.
Rich Homolka,

Windows 95 olsa da MS-DOS 7 ile geldi ve biri yalnızca DOS bölümünü yalnızca DOS önyükleme diski yapmak için kullandı ve MS-DOS 6'nın biraz bozuk bir baskısı gibi hissettiren bir şeye sahipti. özellikleri).
Randolf Richardson

4
En doğru cevap: Windows, Windows 95'ten bu yana DOS'a güvenmedi. Ancak 3.11 bir önyükleyici ile gelmedi; bu yüzden başlangıç ​​noktasına ulaşmak için DOS gerekiyordu.
Ian Boyd,

1
Bu blog oldukça iyi bir okuma, bağlantı için teşekkürler
crasic

20

Hayır . "NT çekirdeğine" sahip olanlardan önceki tüm Windows sürümleri DOS'un üstünde bir GUI'ye benziyordu. Özellikle Windows XP'nin (Windows Vista ve Windows 7'nin de NT çekirdeğini kullanmasıyla birlikte) tanıtımıyla yaygın hale gelen NT ile , temel işletim sistemi olarak DOS kullanma ihtiyacı ortadan kalktı .

Windows'un 32 bit sürümlerinde hala command.comçalıştır iletişim kutusuna girerek çalıştırılabilen ve eski DOS programlarının çoğunu çalıştırabilen bir DOS bilgi istemi vardır . Windows'un tüm sürümlerinde, toplu iş dosyalarını ve DOS benzeri komutları çalıştırmak için kullanılabilecek bir komut istemi vardır (bunlar genellikle DOS tarzı konsolla etkileşimde bulunmak için tasarlanmış yerel Windows uygulamalarıdır). 64-bit Windows, DOS uygulamalarını çalıştıramaz çünkü 16 bitlik işlemleri desteklemez.

Komut istemini DOS programlarını çalıştırmak ve / veya Windows programlarını komut satırından başlatmak için kullanılabilecek özel bir uygulama gibi görmeniz en iyi yol olabilir.

Not: "DOS bilgi istemi" terminolojisi, NT çekirdeğinin girişinden önce "komut istemini" tanımlamak için yaygın olarak kullanılmıştır. Birçok kişi bugün hala "DOS komut istemi" terimini kullanmasına rağmen (bunu genellikle aynı DOS komutları çalıştırmak için kullandıkları için, aslında "DOS komutları" olarak da adlandırılırlar) bilgi istemi ", teknik olarak Windows NT değişkenlerinde doğrudur.


13
Eski (eski, 16 bit) DOS uygulamaları, komut istemi alt sisteminde taklit edilen NTVDM'de çalıştırılır. NTVDM, 64 bit Windows sistemlerinde kullanılamaz, bu nedenle DOSBox veya VirtualBox gibi 16 bit DOS uygulamalarını çalıştırmak için bir 3. taraf emülatörüne ihtiyacınız vardır.
afrazier

11
NTVDM'nin 64-bit Windows'ta bulunmamasının nedeni, kodu çalıştırmadan önce CPU'yu 16-bit moduna geçiren ince bir sarıcı olmasıdır. 64 bit modunda, CPU 32 bit kodunu çalıştırmak için geçici olarak yalnızca 32 bit moduna geçebilir; Soğuk bir yeniden başlatma olmadan 16-bit kodu çalıştıramaz.
Merhaba71

2
Herkese not: Yorumlar bu yazıdan temizlendi. İlgili olanlar için: Lütfen medeni olun ve mümkün olduğunca uzun tartışmaların sohbete taşınması gerektiğini unutmayın - bir gönderideki aşırı yorumlar diğer ziyaretçiler için çok gürültülü olur.
DMA57361

İnsanlar bu yayın hakkında şiddetle tartışmaya devam ettiklerinden, şimdilik onu kilitliyoruz. Yorumlar yine kaldırıldı.
nhinkle

@ Merhaba71 yanlış. Mesela Linux'ta olabilir. Ayrıca 64 bit Linux'ta 16 bit DOS ve Win 3.1 uygulamaları çalıştırabilirsiniz.
Anixx

5

Randolf'a bir cevap olarak, ancak komut satırı arayüzleri ile DOS'u sürekli karıştıran tek kişi o değil .

[DOS] ve [MS-DOS] etiketlerinin çoğunun aynı hatadan muzdarip olduğuna dikkat edin : MS-DOS başlangıçta yalnızca bir metin modu, command.comçoğumuz için + norton komutanı adı verilen bir komut satırı arabirimi ve çerçeveli bir homegrown metin modu penceresi içeriyordu. , ansi.sys ile çizilmiş, ancak yalnızca klavye ile değil, fare tarafından da kontrol edilebilir, ancak ok tuşları ve kısayol tuşları ile daha kolay kontrol edilebilir.

Daha sonra pencereler DOS'un (2.0, 3.0, 3.1, 3.11) üzerine inşa edildi , burada DOS-Box için bir ikon, pencerelerdeki komut arayüzünün adı olarak pencerelerin içinde yeniden belirdi.

Ancak Windows-NT ve Windows-95 veya -98'de MS-DOS terk edildi, fakat cmd.exeaynı veya neredeyse aynı sözdizimi ve anahtar kelimelerle birlikte bir komut yorumlayıcısı (cmd32.exe) vardı. Fakat bu, BASIC, irb (Ruby), scala-repl, psql (Postgresql), sqlplus (oracle), bc, R, rhino ve benzeri gibi diğer metin tarzı komut tercümanları gibi Windows içinde çalışan bir programdı. ve diğerleri, birkaç platformda çalışıyor.

Bu MS-DOS stilini çağırmak yanıltıcıdır, çünkü DOS veya MS-DOS, bununla ilk karşılaşılanlardan değildir. Çok daha yaşlı.

Windows'ta bile DOS komutları çalıştırmak sınırlı değildi - toplu iş dosyası yazma uygulamasının yaygın bir uygulaması, bir Windows programına başlamadan önce bazı parametreleri belirtmekti. Örneğin bir CLASSPATH, JAVA_HOME, bir Java programı için -Xmx gibi java-parametrelerinin ayarlanması.

Birçok insan komut satırı arayüzlerinin eski zamanların bir kalıntısı olduğunu düşünüyor - birkaç tuşa basarak binlerce dosyayı işlemenin gücünü bilmiyor. Wsh ve Monad'ı da bilmiyorlar. Ancak profesyoneller için, bir komut yorumlayıcısı pencerelerde neredeyse Unix veya Linux'taki kadar faydalıdır. O kadar iyi bilinen bir şey değil, ancak birçok yönetici için çok önemlidir.

Bir sh.exe ve sed, awk, bc, tail, rev, cat ve bunların hepsinin yerel win32 uygulamaları olan gnu-toolchain limanı bile var.

Belki cmd.exe olduğunu, cmd.exeye altında eski DOS programları çalıştırmak, ancak DOS modunda Windows programları çalıştırmak edemez, bu yüzden insanlara söylüyor tutmuyorum olan DOS - bu değil. Ve DOS benzeri değil . Demek istediğin interactive command-line program, bir command-line interface.

  • DOS bilgi istemi
  • DOS toplu iş dosyaları
  • DOS benzeri komutlar
  • DOS tarzı konsol
  • DOS uygulamaları

neredeyse her zaman yanıltıcı bir terimdir . Bir amatör için uygun olabilir, ancak izleyicilerinizin ne hakkında konuştuğunu anlamasını istiyorsanız, kendinize sormalısınız: Özel bir işletim sistemi ile, DOS ile mi sınırlı? CLI stili en çok 'DOS stili' olarak adlandırılır mı? Bu tarihsel olarak doğru mu? İzleyicileriniz DOS’u hiç tanıyor mu? Anlayışta yardımcı olur mu? Bu programlar gerçekten DOS üzerinde mi çalışıyor?

Karmaşık şeyleri açıklamak için bir cerrahın bıçağı kadar keskin olan doğru ifadelere ihtiyacınız var. Yanlış ifadeler, izleyicilerinizin beyninde yanlış izlenimlere neden olur. Özensiz ifadeler hiç yoktan daha kötü. Onlardan kaçının. Kullan CLIyazdığınız için komut satırı arayüzü uzun istiyorsa.

SU, SE ve diğer taraflardaki yanıltıcı etiketleri düzeltin.


İyi dedi. Etrafta çok kötü terminoloji var.
Milind R,

Win95 ve Win98'de cmd.exe yoktu.
Anixx 16.06

2

Windows NT ailesinde (NT, 2000, XP, 2003, Vista, 2008, 7) DOS bağımsızdır. Geriye dönük uyumluluk için sadece DOS emülatörleri vardır.

Ancak, NT günlerinin başlarında DOS ile uyumluluğun sonuçları olan bazı sınırlamalar var. Örneğin, "CON" veya "PRN" adlı bir dosya veya dizin oluşturamazsınız, çünkü bunlar DOS'ta aygıtları temsil etmek için ayrılmış adlardır.


1

Aslında, şimdi Windows artık DOS kullanmıyor. DOS (veya cmd) istemi, Windows XP, Vista veya Seven üzerinden öykünüyor. Windows kendi kaynaklarından önyükleme yapar.


9
-1: Yanlış. Değil to DOS (or cmd). Komut yorumlayıcısı, cmd.exe var, ancak bu DOS değil. DOS'un komut yorumcusu da vardı, command.com, sözdiziminde, anahtar kelimelerde ve kullanımda çok benzer, ancak komut arayüzü DOS'un sadece bir kısmıdır; DOS değil.
kullanıcı bilinmeyen

Yep consolePE başlığındaki tip, Win32 / Win64 alt sisteminin bir parçasıdır. Hiç 16-bit değildir.
user2284570
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.