Windows는 여전히 MS-DOS를 사용합니까?


71

OS 과정을 시작하려고하는데 Apple 사용자로서 Windows OS의 기본 세부 사항에 익숙하지 않습니다. 궁금합니다. MS DOS가 여전히 Windows에서 계속 실행되고 있습니까? 아니면 Windows 만 OS로 사용됩니까? MS-DOS가 부팅에 사용되는 곳을 읽었지만 Windows에는 다른 모든 OS 기능이 내장되어 있으므로 다른 모든 OS 작업에 사용되므로 약간 혼란 스러웠습니다 ...


토론 의 끝 은 흥미로워 보입니다.
user2284570

아니 그렇지 않아. MS-DOS에 의존 한 마지막 소비자 OS는 Windows Me였습니다. Windows XP, Vista, 7 이상은 모두 Windows NT 아키텍처를 기반으로합니다.
bwDraco

답변:


140

Microsoft Windows와 관련하여 두 가지 뚜렷한 계보가 있으며 사람들이 한 계보에 대해 배운 내용을 작성할 때 도움이되지 않습니다.

  • DOS + 윈도우 혈통 버전 3.11까지 DOS + 윈도우 모든 버전을 포함, DOS + 윈도우 95, DOS + Windows 98 및 DOS + Windows Millennium 유발. DOS 위에 Windows가 계층화되어 있습니다. 전체 책은이 계층에 관한 주제로 쓰여졌으며, 1990 년대 초반에서 중반까지 많은 사람들이 박람회에 DOS가 사라지고 Windows가 믿어지기를 원했기 때문에 논쟁의 주제입니다. 운영 체제.

    이것은 DOS + Windows 부트 스트랩 프로세스입니다.

  • 윈도우 NT의 혈통은 윈도우 NT 3.x를 구성, 윈도우 NT 4.0, 윈도우 NT 5.0 ( "윈도우 2000"), 윈도우 NT 5.1 ( "윈도우 XP"), 윈도우 NT 윈도우 XP의 5.2 (일부 판과 "Windows Server 2003의" ), Windows NT 6.0 ( "Windows Vista") 및 Windows NT 6.1 ( "Windows 7"). DOS 위에 계층화되어 있지 않으며 DOS와 완전히 다른 방식으로 작동하며 NTVDM (NT Virtual DOS Machine)을 통해 DOS 응용 프로그램을 실행할 수 있습니다. NTVDM (NT Virtual DOS Machine)은 다른 가상 컴퓨터 가 아닌 Windows NT에서 실행 되는 가상 컴퓨터 입니다. 길 주변에.

    이것이 Windows NT 6.x 부트 스트랩 프로세스입니다.

도움이되지 않는 것은 사람들이 Windows NT에서 실수로 "DOS 프롬프트"를 말했을 때에도 대답에서 일어난 것처럼입니다. 운영 체제가 아닌 프롬프트 를 표시 하는 것은 명령 해석기 라는 사실 외에도 "DOS"를 "텍스트 사용자 인터페이스"및 "명령 해석기"와 혼동하며 실제로는 DOS와 동의어가 아닙니다. DOS는 MS-DOS, PC-DOS, DR-DOS, FreeDOS, OpenDOS 등의 운영 체제 제품군입니다.

Windows NT에서 명령 프롬프트 창이 열리면 CMD상자에서 제공되는 Microsoft의 기본 명령 인터프리터이며 일반적인 텍스트 사용자 인터페이스 인 Win32 프로그램 인 거의 항상 실행 중입니다 . "DOS"도없고 NTVDM도 없습니다. Win32 콘솔 개체와 통신하는 Win32 프로그램 만 있습니다. 그리고 실제로 Microsoft의 다양한 Resource Kits의 모든 도구를 포함하여 Windows NT에서 실행할 수있는 많은 TUI 프로그램의 경우 그림의 어느 부분에도 DOS 없습니다. Win32 콘솔을 수행하는 일반적인 Win32 프로그램이기 때문입니다. / O도.

아이러니하게도, Windows NT 3.1이 1993 년에 출시 된 것을 감안할 때, Windows NT 계보는 실제로 1990 년대 중반의 모든 사람들이 DOS + Windows 95의 세계.

그리고 18 년이 지난 후에도 여전히 Windows NT가 DOS처럼 작동하지 않고 전혀없는 사람들에게이 기능을 제공하려고 노력하고 있습니다 . ☺

추가 자료

  • Jonathan de Boyne Pollard (2006). 운영 체제 커널 개발자 및 장치 드라이버 작성자를위한 책 목록 . 자주 답변.
  • Mark E. Russinovich, David A. Solomon, Alex Ionescu (2009). Windows 내부 (5 판) . Microsoft Press. ISBN 9780735625303.
  • 월터 오니 (1996). Windows 95 용 시스템 프로그래밍 . Microsoft Press. ISBN 1 55615 949 8.
  • Matt Pietrek (1995 년 11 월). Windows 95 시스템 프로그래밍 비밀 . IDG 도서. ISBN 1-56884-318-6.
  • 앤드류 슐만 (1994). 무단 Windows 95 . 전세계 IDG 도서. ISBN 9781568841694.
  • 맷 피에 트렉 (1993). 윈도우 내부 : Windows 운영 환경의 구현 . 애디슨 웨슬리 ISBN 9780201622171.
  • Andrew Schulman, David Maxey, Matt Pietrek (1992). 문서화되지 않은 Windows : 예약 된 Microsoft Windows Api 함수에 대한 프로그래머 안내서 . 애디슨 웨슬리 ISBN 9780201608342.

11
더 좋아질뿐입니다. 나는 아직도 사람들에게 응용 프로그램 사이에서 Alt-Tab을 할 수 있다고 가르치고 있습니다. . .
surfasb

2
Windows 95 이상에서 DOS가 운영 체제 계층이 아닌 부트 로더로 사용되고 있다는 것은 사실이 아닙니다. 즉, Windows 95 이상에서는 부팅 프로세스를 제외하고 DOS 서비스를 호출하지 않습니다.
Winston Ewert

3
@ Winston Ewert, 내 지식에 Windows 프로그램은 여전히 ​​Windows 95의 INT 21h에 의존했습니다. 예를 들어, 초기화의 경우 INT 21h 기능 55h 및 종료의 경우 INT 21h 기능 4Ch. 98과 ME에 대해서는 대답 할 수 없습니다. 그러나 95는했다.
artifex

6
그러나 여전히 explorer.exe 아래의 Windows 7에서 예약 된 DOS 장치 이름을 사용할 수 없습니다!
LawrenceC

5
사람들! 이 사이트의 작동 방식을 알고 있습니다. 당신이 할 경우 질문을 물어 DOS 모드, MSDOS.SYS 옵션의 의미, 그리고 왜 하나는 Win32에서 파일 이름 등 여러 가지 이름을 사용할 수없는 약을, 다음 (가) 사용 질문 질문 이 페이지의 상단에있는 하이퍼 링크를 . 또한 이미 가지고있는 사람들의 질문을 읽고 시작하십시오 .
JdeBP

23

또한 Windows 95는 DOS 기반의 GUI가 아닙니다. 여기에서 더 읽으십시오 :

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


1
VxD 인터페이스와 VMM 스위처 전체를 기억합니다. OS에서 다소 발전하고 여전히 많은 하위 호환성을 갖는 흥미로운 방법이었습니다.
Rich Homolka

그러나 Windows 95에는 MS-DOS 7이 포함되어 있으며 DOS 부분 만 사용하여 DOS 전용 부팅 디스크를 만들 수 있으며 약간 손상된 MS-DOS 6 버전과 같은 느낌을 줄 수 있습니다. 풍모).
랜돌프 리차드슨

4
가장 정확한 답은 Windows 95 이후 Windows가 DOS에 의존하지 않았기 때문입니다. 32 비트 드라이버가 인수되면 Windows 3.11에서는 DOS가 필요하지 않습니다. 그러나 3.11에는 부트 로더가 제공되지 않았습니다. 시작점으로 가기 위해서는 DOS가 필요했습니다.
이안 보이드

1
즉, 블로그, 링크에 대한 감사 꽤 좋은 읽기입니다
crasic

20

이전에 "NT 커널"있는 사람에 대한 모든 Windows 버전은 더 DOS의 상단에 GUI 같았다. Windows XP가 도입되면서 특히 흔하게 발생하는 NT (및 Windows Vista 및 Windows 7도 NT 커널도 사용함)에서 DOS를 기본 OS로 사용할 필요가 없어 졌습니다.

Windows의 32 비트 버전에는 여전히 DOS 프롬프트가 있으며,이 command.com대화 상자는 실행 대화 상자 를 입력 하여 실행할 수 있으며 대부분의 이전 DOS 프로그램을 실행할 수 있습니다. 모든 버전의 Windows에는 배치 파일 및 DOS와 유사한 명령 (일반적으로 DOS 스타일 콘솔과 상호 작용하도록 설계된 기본 Windows 응용 프로그램)을 실행하는 데 사용할 수있는 명령 프롬프트가 있습니다. 64 비트 Windows는 16 비트 프로세스를 지원하지 않기 때문에 DOS 응용 프로그램을 실행할 수 없습니다.

DOS 프로그램을 실행하거나 명령 줄에서 Windows 프로그램을 시작하는 데 사용할 수있는 특수 응용 프로그램과 같은 명령 프롬프트를 보는 것이 가장 좋습니다.

참고 : "DOS 프롬프트"라는 용어는 일반적으로 NT 커널을 도입하기 전에 "명령 프롬프트"를 설명하는 데 사용되었습니다. 오늘날에도 많은 사람들이 여전히 "DOS 프롬프트"라는 용어를 사용하지만 (일반적으로 DOS 환경에서 사용할 수있는 "DOS 명령"이라고하는 동일한 명령을 많이 사용하기 때문에) "명령"이라는 용어 prompt "는 Windows의 NT 변형에서 기술적으로 정확합니다.


13
레거시 (고속 16 비트) DOS 응용 프로그램은 NTVDM에서 실행되며 명령 프롬프트 하위 시스템 내에서 에뮬레이션됩니다. NTVDM은 64 비트 Windows 시스템에서 사용할 수 없으므로 DOSBox 또는 VirtualBox와 같은 16 비트 DOS 앱을 실행하려면 타사 에뮬레이터가 필요합니다.
afrazier

11
NTVDM을 64 비트 Windows에서 사용할 수없는 이유는 코드를 실행하기 전에 CPU를 16 비트 모드로 전환하는 얇은 랩퍼이기 때문입니다. 64 비트 모드에서 CPU는 32 비트 코드를 실행하기 위해 일시적으로 32 비트 모드로 전환 할 수 있습니다. 콜드 재부팅 없이는 16 비트 코드를 실행할 수 없습니다.
Hello71

2
참고 사항 :이 게시물에서 의견이 정리되었습니다. 관련자들에게 : 민첩하게 유지하고 가능한 한 언제든지 대화 를 확장하기 위해 대화 를 확장해야한다는 점을 기억하십시오 . 게시물에 대한 과도한 댓글은 다른 방문자들에게 시끄 럽습니다.
DMA57361

사람들이이 게시물에 대해 격렬한 논쟁을 계속했기 때문에 지금은 그 게시물을 잠그고 있습니다. 댓글이 다시 삭제되었습니다.
닌클

@ Hello71 잘못되었습니다. 예를 들어 리눅스에서는 가능합니다. 64 비트 Linux에서 16 비트 DOS 및 Win 3.1 앱을 실행할 수 있습니다.
Anixx

5

Randolf의 답은 더 많지만 명령 행 인터페이스DOS를 반복적으로 혼란시키는 유일한 사람은 아닙니다 .

많은 [DOS]와 [MS-DOS] 태그 는 같은 실수를 겪습니다. MS-DOS는 처음에는 텍스트 모드, command.com많은 사람들을 위해 + norton 커맨더 라는 명령 인터페이스 , 프레임이있는 자체 텍스트 모드 창만 가지고있었습니다. , ansi.sys로 그려 지지만 키보드뿐만 아니라 마우스로도 제어 할 수 있으며, 화살표 키와 핫키로 더 쉽게 제어 할 수 있습니다.

그런 다음 Windows는 DOS (2.0, 3.0, 3.1, 3.11) 위에 구축 되었으며 , DOS-Box 아이콘은 Windows 내부의 명령 인터페이스 이름으로 Windows 내부에 다시 ​​나타납니다.

그러나 Windows-NT와 Windows-95 또는 -98 MS-DOS에서는 포기되었지만 명령 해석기 cmd.exe(cmd32.exe)는 여전히 동일하거나 거의 동일한 구문 및 키워드로 존재했습니다. 그러나 이것은 BASIC, irb (Ruby), scala-repl, psql (Postgresql), sqlplus (oracle), bc, R, rhino 등과 같은 다른 텍스트 스타일 명령 해석기로 Windows에서 실행되는 프로그램이었습니다. 여러 플랫폼에서 실행됩니다.

DOS 나 MS-DOS가 처음 등장한 것이 아니기 때문에이 MS-DOS 스타일을 호출하는 것은 잘못된 것입니다. 훨씬 나이가 많습니다.

Windows에서도 DOS 명령을 실행하는 데 제한이 없었습니다. 배치 파일 작성 의 일반적인 관행은 Windows 프로그램을 시작하기 전에 일부 매개 변수를 지정하는 것이 었습니다. 예를 들어 Java 프로그램에 대해 CLASSPATH, JAVA_HOME, -Xmx와 같은 java-parameters를 설정하십시오.

많은 사람들이 명령 행 인터페이스가 이전 의 유물 이라고 생각 합니다. 몇 번의 키 조작으로 수천 개의 파일을 처리하는 힘을 모르는 사람들도 있습니다. 그들은 wsh와 monad도 모른다. 그러나 전문가에게는 명령 인터프리터가 Unix 또는 Linux만큼 유용한 창에 있습니다. 잘 알려져 있지는 않지만 많은 관리자에게 필수적입니다.

sh.exe 및 sed, awk, bc, tail, rev, cat 및 기본 win32 앱으로 제공되는 gnu-toolchain의 포트도 있습니다.

어쩌면 cmd.exe에서 오래된 DOS 프로그램을 실행할 수 있지만 DOS 모드에서 Windows 프로그램을 실행할 수 없으므로 사람들에게 cmd.exe DOS 라는 것을 계속 말하지 마십시오. 그리고 DOS와는 다릅니다 . 당신이 의미하는 바 interactive command-line programcommand-line interface입니다.

  • DOS 프롬프트
  • DOS 배치 파일
  • DOS와 같은 명령
  • DOS 스타일 콘솔
  • DOS 응용 프로그램

거의 항상 잘못된 용어 입니다. 아마추어에게는 적합 할 수 있지만, 청중이 이해하기를 원한다면, 당신이 말하는 것을 스스로에게 물어봐야합니다 : 그것은 특별한 OS, DOS로 제한되어 있습니까? CLI 스타일이 'DOS 스타일'입니까? 역사적으로 맞습니까? 청중은 DOS를 전혀 알고 있습니까? 이해하는데 도움이 되나요? 이 프로그램들은 실제로 DOS에서 실행됩니까?

복잡한 것을 설명하기 위해서는 외과 의사의 칼처럼 예리한 표현이 필요합니다. 잘못된 표현은 청중의 두뇌에 잘못된 인상을 유발합니다. 조잡한 표현은 아무것도 아닌 것보다 나쁩니다. 피하십시오. CLI명령 행 인터페이스가 길어질 경우 사용하십시오 .

SU, SE 및 기타 측면의 잘못된 태그를 수정하십시오.


잘했다. 주위에 나쁜 용어가 많이 있습니다.
Milind R

Win95와 Win98에는 cmd.exe가 없었습니다.
Anixx

2

Windows NT 제품군 (NT, 2000, XP, 2003, Vista, 2008, 7)에서는 DOS와 독립적입니다. 이전 버전과의 호환성을 위해 DOS 에뮬레이터 만 있습니다.

그러나 NT 초기 초기에 DOS와의 호환성으로 인해 몇 가지 제한 사항이 있습니다. 예를 들어, 이름이 "CON"또는 "PRN"인 파일 또는 디렉토리는 DOS의 장치를 나타 내기 위해 예약 된 이름이기 때문에 작성할 수 없습니다.


1

실제로 Windows는 더 이상 DOS를 사용하지 않습니다. DOS (또는 cmd) 프롬프트는 Windows XP, Vista 또는 Seven에서 에뮬레이션됩니다. Windows는 자체 리소스에서 부팅됩니다.


9
-1 : 틀렸다. 아닙니다 to DOS (or cmd). 명령 인터프리터 cmd.exe가 있지만 DOS는 아닙니다. DOS에는 command.com도 포함되어 있습니다. command.com은 구문, 키워드 및 사용법이 매우 유사하지만 명령 인터페이스는 DOS의 일부입니다. DOS가 아닙니다.
사용자가 알 수 없음

그러나 consolePE 헤더 의 유형은 Win32 / Win64 하위 시스템의 일부입니다. 전혀 16 비트가 아닙니다.
user2284570
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.