최근 수정 시각 : 2019-07-27 23:07:58

MS-DOS


운영 체제
{{{#!folding [ 펼치기 · 접기 ]
{{{#!wiki style="border:0;margin:-5px -11px -16px"
Windows Microsoft Windows (Windows 9x, Windows NT)
리눅스 데비안 데비안 · 우분투 · 리눅스 민트 · 칼리 리눅스 · 크런치뱅 · Lubuntu
하모니카 · 구름 OS · 기린 · Damn Small Linux · elementary OS · 스팀 OS · 라즈비안 · Slax · TmaxOS
레드햇 레드햇 엔터프라이즈 리눅스 · 페도라 · MeeGo · 붉은별 · CentOS · 아시아눅스
타이젠 · Open Mandriva Lx · 마제야 · PCLinuxOS
슬랙웨어 슬랙웨어 리눅스 · openSUSE
아치 아치 리눅스 · Manjaro Linux · Antergos · ArchBang Linux · Chakra Linux
안드로이드 안드로이드 · Remix OS · Polaris OS · Phoenix OS
젠투 젠투 리눅스 · 펀투 리눅스 · 크롬 OS
기타 OpenWRT · Endless OS
[[유닉스|{{{#white 유닉스}}}]] BSD BSD · FreeBSD · NetBSD · OpenBSD · TrueOS · GhostBSD · DragonFly BSD
XNU Darwin · iOS · macOS · iPadOS · tvOS · watchOS
System V 솔라리스 (SmartOS) · IBM AIX
DOS DR-DOS · MS-DOS · FreeDOS · K-DOS
기타 실시간 운영 체제 · TempleOS · ReactOS · BeOS · 하이쿠 · Mac OS · OS/2(eCS, ArcaOS) · Redox
}}}}}} ||


1. 개요2. 역사3. 특징4. Windows 시대의 MS-DOS5. 파생/호환 버전
5.1. 영향을 받은 운영 체제
6. 기타7. 관련 문서8. 바깥 고리

1. 개요

Microsoft Disk Operating System
(마이크로소프트 디스크 운영 체제)

파일:external/blogfiles.naver.net/Windows_3.1-2015-08-07-00-22-38.png
한글 MS-DOS 6.2 구동 화면.

파일:LdpDmwx.jpg
MS-DOS 아이콘.[1]

마이크로소프트에서 사서 개발한 운영 체제이자 마이크로소프트의 운영 체제 업계 데뷔작. 일반적으로 '엠에스 도스'라고 읽는다. 'DOS'란 원래 System/360이나 PDP-11 같은 메인프레임 시절부터 일반 명사처럼 사용했고 애플 II의 운영 체제도 DOS라는 이름을 사용하나,[2] 이 MS-DOS가 워낙 대박을 쳐서 DOS라고만 하면 문맥상 이 MS-DOS를 가리키는 경우가 대부분이다. 처음에는 IBM에 납품하기 위해 개발했으나 이후 IBM이 PC 관련 기술을 공개하면서 우후죽순처럼 생겨난 PC 제조사들이 전부 MS-DOS를 사용하면서 마이크로소프트를 지금의 공룡기업으로 성장시켜준 1등 공신. 윈도우에게 자리를 물려주기 전까지 IBM PC와 그 호환 기종의 운영 체제 시장을 점령하고 있었다. 초기에는 CP/M-86, 나중에는 DR-DOS같은 경쟁자가 있기는 했지만 큰 의미는 없었다.

2018년 9월 21일, 마이크로소프트에서 1.25와 2.0의 소스 코드를 깃허브에 공개했다(문서 하단의 링크 참조). 라이선스는 MIT.

2. 역사

1980년, IBM이 최초의 IBM PC Model 5150을 개발하면서 IBM은 이 새로운 16비트 시스템의 운영 체제를 자체개발하는 것이 아닌 외주를 통해 개발하는 것으로 결정했다.[3]

이미 이전에 IBM 방식(관료제)로 개인 목적 컴퓨터를 내놓았다가 시원하게 말아먹은 IBM은 이번엔 독립적인 그룹을 조직해서 아웃소싱과 개방형 구조를 채택하기로 결정했다. IBM 대표단은 마이크로소프트와 처음 접촉했으나[4][5] 당시의 마이크로소프트는 BASIC 인터프리터 및 소프트웨어를 주력으로 하는 회사였고[6], (자사 BASIC 인터프리터를 얹어 돌리기 위한) CP/M 운영 체제 개발사인 디지털 리서치를 IBM 담당자들과 연결시켜 줬다.

그러나 실리콘 밸리 개척자였던 게리 킬달에게 IBM의 제안과 협상에 임하는 딱딱한 태도는 별 흥미를 끌지 못했고, 그래서 처음엔 아내이면서 공동 설립자였던 도로시 맥윈 킬달 부사장에게 맡겼는데 (대기업이 으레 첫 단계로 진행하는) NDA(비밀 보호 계약)에 먼저 사인할 것인지 여부를 두고 시작부터 충돌했다.[7] 심지어는 게리 킬달이 개인용 경비행기 타고 놀러 가느라(!) IBM과의 계약 현장에 안 나타났다는 루머까지 있었는데 이건 사실이 아니라고 한다. 그 이후에도 IBM과 디지털 리서치는 마이크로소프트를 중재자로 해서 수 차례 접촉을 가지긴 했지만 이미 디지털 리서치는 이미 큰 성공을 거두어서 성장 가도를 타고 있는 중이었기 때문에 IBM 측의 요구에 약하게 나갈 필요가 없었다고 판단했던 것 같다.

이때, 8086 기반으로 '시애틀 컴퓨터' 社의 프로그래머였던 팀 패터슨(Tim Paterson)이 제작한 CP/M의 클론 운영 체제인 '86-DOS', 통칭 'Q-DOS'(Quick and Dirty Operating System)라는 운영 체제가 시장에 나와 있었다. IBM PC용으로 나왔던 것은 아니고 8086 기반의 DIY 컴퓨터 키트[8]용으로 나왔던 운영 체제였는데 디지털 리서치와 IBM의 계약이 결렬된 것을 알아챈 빌 게이츠는 잽싸게 팀 패터슨으로부터 Q-DOS 1.10을 75,000달러에 구입하여 이름을 MS-DOS로 바꿔 달고[9] IBM과 계약을 체결했다고. 이 때문에 MS-DOS도 초기 릴리즈 버전이 1.0이 아니라 1.10이다. 최근 세 운영 체제의 소스 코드를 분석하여 연구한 결과, Q-DOS는 CP/M을 베낀 것이 아니며, MS-DOS도 Q-DOS와는 다른 것이었다는 주장이 나오기도 했으나 이는 저자의 사업을 홍보하기 위한 수단이라고 비난받고 있으며 편집자 역시 저자가 마이크로소프트사의 지원을 받고 있음을 명시하고 있다. 링크한 글의 댓글을 참고. MS-DOS를 만든 빌 게이츠가 자신의 저서인 '미래로 가는 길'에 MS-DOS를 사서 개발했다고 써 놨다.[10] 사실 당시 빌 게이츠는 IBM에게 운영 체제 파는 것을 별로 중요하게 생각하지 않았다. 하지만 IBM에게 BASIC 인터프리터를 팔아야만 했으며, 그것을 구동하기 위해서는 CP/M이건 Q-DOS건 해당 운영 체제를 어떻게든 IBM이 쓰게 만들어야 했고, 이에 협상 결렬로 CP/M을 판매하지 않기로 한 이상 Q-DOS를 자신이 사서라도 IBM에 납품해야 했던 것.... 결국 처음 계약했을 때에는 MS-DOS가 별로 중요한 것도 아니었고, MS-DOS는 어디까지나 BASIC 인터프리터를 팔기 위한 도구에 불과했던 것.

그러나 이 Q-DOS의 일부에 CP/M의 지적 재산권을 침해하는 부분이 있음을 파악한 IBM에서는 디지털 리서치와 재접촉, 결국 IBM PC의 공식 운영 체제는 마이크로소프트의 MS-DOS와 디지털 리서치의 CP/M-86을 둘 다 사용하는 것으로 결정했다. 실제로 PC와 운영 체제는 세트가 아니었으며 구매자가 하드웨어와 운영 체제의 조합을 선택하는 방식이었고, IBM에서도 'IBM PC에는 운영 체제가 세 가지나 된다'는 점을 장점으로 내세웠다.[11] 언론과 기술업계 측에서도 완성도 높고 고오급인 CP/M을 높게 쳤으며, 기존 핵심 응용 프로그램을 개발하던 업체들도 CP/M-86용 버전을 앞다퉈서 출시했기에 초반엔 CP/M이 잘 나갔다. 문제는 가격이었는데 CP/M-86의 가격은 250달러, MS-DOS는 40달러였고 결국 CP/M-86은 8비트 시장에서의 대성공과 달리 IBM PC에서는 그다지 팔리지 않았다. 원체 잘 나갔던 CP/M이었던지라 콧대를 좀 세웠던 모양이다. 이후 게리 킬달은 가격 차이를 IBM의 정책 탓으로 돌렸으나 실제로는 자신들의 제품을 '엔터프라이즈' 용으로 여겼으며, 1983년 CP/M 이스트 컨퍼런스에서도 가격 정책에 의문을 제기하는 참석자들에게 게리 킬달이 직접 '제 값이다' 라고 주장한 것으로 볼 때 디지털 리서치는 프리미엄을 놓칠 생각이 없었던 것으로 보인다.

어쨌거나 시애틀 컴퓨터의 Q-DOS 1.10은 MS-DOS 1.10 이라는 이름으로 일반 시장에 공급했고 이는 다시 IBM에 OEM으로 공급하면서 PC-DOS라는 이름으로 들어갔다. 그런데 IBM과의 계약에서 마이크로소프트가 '운영 체제에 관한 모든 권리는 마이크로소프트가 가짐'이라는 조항을 계약서에 집어넣었고, 이 덕분에 IBM의 PC 기술 공개가 PC 산업은 크게 흥하게 했지만 정작 IBM의 하드웨어 매출은 급감시킨 반면 마이크로소프트는 크게 성장시켰고 이로 인한 이익은 IBM에겐 단 한 푼도 돌아가지 않았다. IBM은 그때서 후회했지만 이미 운영 체제 시장은 마이크로소프트에게 점령 당한 상태였고, OS/2를 개발해 운영 체제 시장을 되찾기 위해 노력하였지만 결국 윈도우에게 완전히 밀려 OS/2는 사라지고 말았다. 현재 IBM은 IBM PC 부문을 레노버에게 매각하고 메인프레임 시장 및 기업 컨설팅, 통합 솔루션으로 먹고 살고 있다. 이 아픈 과거 때문에 IBM의 노트북 ThinkPad에는 한때 윈도우 키가 없었다. 일종의 자존심이랄까. 그러나 중국의 레노버에 IBM PC 사업이 팔린 후에는 윈도우 키가 달려 나온다. 두 번 가슴 아픈 일이다.

이후 MS-DOS는 확대하는 IBM PC 시장의 주력 운영 체제로서 계속해서 버전 업데이트를 해 나갔으나, 1994년 버전 6.22를 끝으로 주력 운영 체제의 자리를 이듬해에 나온 Windows 95에 넘겨 주었다. 본래 Microsoft Windows3.1까지는 MS-DOS 상에서 실행하는 일종의 응용 프로그램이었다. 하지만 Windows 3.1을 보급할 즈음이면 Windows가 사실 상 운영 체제에 준하는 존재로 취급하기 시작했다. Windows 9x(95, 98, ME)의 경우 이들을 위해 개조한 MS-DOS 7.x~8.x[12] 위에 Windows를 구동하는 형태였지만, 이 시기부터는 MS-DOS의 존재는 어디까지나 Windows의 VDM(Virtual DOS Machine)이라는 하부 구조일 뿐 실질적으로 MS-DOS 상에서 무언가를 하는 경우는 점차 드물어졌다. Windows NT 계열로 넘어온 현재 NT 커널은 DOS를 포함하지 않았기에 점점 영역이 축소했고 2001년 윈도우 XP를 본격적으로 보급하면서 역사의 뒤안길로 사라졌다. 지금 윈도우에 남아 있는 명령 프롬프트(cmd.exe)는 CLI 인터페이스와 도스와 비슷한 명령 체계를 빼면 근본부터가 다른 물건이다. 여기에서 도스용 프로그램을 돌릴 때에는 NTVDM(NT Virtual DOS Machine)이라는 호환성 계층을 통해서 실행하며, 64비트 윈도우를 사용하고 있다면 NTVDM이 작동하지 않는다. 그리고 PowerShell이 야금야금 명령 처리기의 자리를 갉아먹고 있다.

3. 특징

개인용 컴퓨터의 컴퓨팅 파워가 미약했던 1980년대 초에 등장한 운영 체제이니만큼 멀티태스킹을 지원하지 못하기 때문에 싱글 태스킹 & 싱글 유저로만 작업을 진행하며 현재 실행하는 프로그램이 시스템 자원을 독점하는 형태이다. 나중에 인텔 80286이 나오면서 하드웨어 환경은 멀티태스킹을 지원할 수 있게 되었지만 IBM PC 호환기 시장은 Windows 95가 나오기 직전까지도 MS-DOS를 주로 사용했기 때문에 이를 제대로 활용하지 못했다. 멀티태스크가 불가능한 한계를 극복하기 위해 '램 상주 프로그램(TSR)'이라는 개념이 있었다. 원래 MS-DOS에서는 프로그램을 한번에 하나밖에 실행하지 못하기 때문에 평소에 커맨드 셸인 command.com을 실행하다가 응용 프로그램을 실행하면 제어권을 응용 프로그램에게 넘겨 주고 응용 프로그램을 종료할 때 command.com에 제어권을 되돌려 주는 식으로 운용하는데, 이를 약간 비틀어 프로그램을 종료하지 않고 램의 일부분에 남겨둔 채 command.com으로 제어권을 되돌려 주고[13] 특정한 키를 입력하거나 하는 트리거 조건을 감지하면 원래의 프로그램을 실행하는 방식으로 멀티태스킹을 흉내낸 것이다.

유저 인터페이스는 텍스트를 기반으로 하는 CLI(Command Line Interface)만 지원한다. 프롬프트에 직접 명령어를 기술하여 파일 복사, 삭제, 실행 등등의 작업을 하게 되는데 윈도우 같은 GUI OS부터 컴퓨터를 접하기 시작한 세대는 프로그래머가 아닌 이상 볼 일이 거의 없고 엄청나게 생소한 화면이다. 한글은 커녕 아이콘은 1개도 안 보이고 칠흑의 우주 같은 화면에 투박한 영문 글씨만 떠서 커서 하나만 깜박이니 마치 진짜 우주에 내던져진 막막한 기분일 것이다. 최신 하드웨어의 스펙을 줄줄 외우고 자칭 컴고수를 자처하는 사람들도 이 암흑의 화면을 마주하면... 몰라 뭐야 그거 무서워하면서 벌벌 떨기 시작한다. 어 그럼 화면을 하얀색으로 바꾸면 되지 이러한 어려움을 해결하기 위해 1988년에 나온 MS-DOS 4.0부터는 'DOS Shell'이라는 응용프로그램이 내장되었다. 복잡한 DOS 명령어를 풀다운 메뉴 방식으로 쉽게 실행할 수 있게 만든 프로그램이었는데 이후 서드파티에서도 비슷한 프로그램들을 많이 내놓았다. 국내에서 도스셸 계열로 유명한 프로그램이라면 역시 Mdir.

MS-DOS 본체의 용량은 스탠드 얼론 최종 버전 6.22에서조차 200kb 미만이지만, 기능과 명령어에 대해 해설하는 서적의 두께는 웬만한 윈도우 OS 해설 서적보다 두껍다. 윈도우에서는 보조 프로그램이라고 불리우는 부가 유틸리티에 대한 설명 때문에 그렇고, 21세기에 pc를 접한 세대가 직면하면 이게 대체 무슨 외계어인지 개소리인지 이해 못할 만큼 난해한 명령어가 산적해 있어서 두꺼워질 수밖에 없다. 다만 이런 명령어들은 한가지 장점이 있는데, 도스 명령어만으로도 개발할 수 있는 범위가 넓기 때문. 아예 배치파일을 작성해서 간단한 게임까지도 만들 수 있다.COPY a:\*.exe B:\ /R[14] 물론 리눅스나 유닉스를 흔히 접하는 사람이라면 별 것 아니다

4. Windows 시대의 MS-DOS

윈도우 3.x까지는 MS-DOS 응용 프로그램으로 동작하며,[15] 윈도우 95, 98, Me 또한 부팅 작업 및 MS-DOS 응용 프로그램 호환 레이어로 MS-DOS가 관여한다.[16] MS-DOS에서 독립형 최종 버전은 6.22지만 Windows 9x 계열에 상기의 이유로 MS-DOS가 있었는데, Windows 95에 7.0, 95 OSR2와 Windows 98, 98SE에는 7.1, Windows Me에 8.0 버전의 MS-DOS가 들어갔다. 소비자가 마지막으로 (독립적으로) 본 최종판은 6.22였지만, 진짜 최종판은 Me에 포함한 8.0인 셈.[17]

Windows NT는 첫 버전인 NT 3.1부터 DOS와 무관하게 새로 설계했기 때문에 DOS는 처음부터 들어있지 않았고 이는 NT의 혈통을 잇고 있는 Windows XP는 물론 현재의 Windows 10에 까지 이어지고 있다. 대신 NT 기반의 윈도우에서는 '명령 프롬프트'(cmd.exe)로 MS-DOS 비슷한 환경을 사용할 수 있다. 다만 cmd.exe는 명령어 환경을 MS-DOS처럼 흉내낸 프로그램이지 실제 MS-DOS는 아니다.[18] 명령어는 DOS의 명령어를 거의 그대로 준용하지만 원칙적으로는 DOS용 프로그램도 실행할 수 없다. 윈도 NT는 호환성을 위해 16비트 코드를 남겨준 윈도 9x와 달리 완전한 32비트 운영 체제이기 때문에 16비트 응용 프로그램인 MS-DOS를 실행할 수 있는 환경이 아니기 때문이다. 다만 어느 정도 호환성을 보장하기 위해 윈도 NT는 NTVDM(Virutal DOS Machine)이라는 가상 머신을 내장하고 있어 실제로는 DOS 응용 프로그램을 실행할 수 있었다. x86 CPU의 기능인 가상 8086모드를 이용한 기능인데, 이 덕분에 완전하지는 않지만 어느 정도는 DOS와 16비트 윈도용 응용 프로그램 실행이 가능다. 설정만 잘 만지면 게임도 어느 정도는 돌릴 수 있었을 정도. 그러나 Windows Vista 이후부터는 명령 프롬프트는 존재하지만 AMD64의 롱 모드에서는 가상 8086 모드를 사용할 수 없는 고로 64비트 윈도에서는 NTVDM도 제거할 수 밖에 없었고, 더 이상 MS-DOS를 비롯한 16비트 응용 프로그램을 사용할 수 없게 되었다(32비트 윈도를 깔면 실행이 가능하다). 이후에 PowerShell이라는 것도 나왔는데 이건 POSIX 호환에 가까운 것이지 MS-DOS에 가까운 것은 아니다. 명령 프롬프트에서만 먹히는 각종 고급 기능 때문에 아직도 사용하는 사람은 있는 편. 어쨌거나 아직도 cmd.exe의 존재로 인해 MS-DOS의 영향력은 완전히 사라지지는 않은 셈이다.

MS-DOS에서는 윈도우즈 프로그램들을 실행할 수 없다. 윈도우즈 프로그램을 MS-DOS에 가져다 실행하면 "This program cannot be run in DOS mode."[19][20][21]라고 뜨면서 실행이 안 된다.

5. 파생/호환 버전

  • PC-DOS: MS-DOS의 IBM OEM 버전. 몇몇 시스템 파일의 이름이 일반 MS-DOS와 달랐지만[22] 알맹이는 거의 같다. 그냥 같은 버전의 PC-DOS와 MS-DOS는 기본적으로 같은 물건이라고 생각해도 무방하다. Copyright도 Microsoft라고 적혀져 있었다. 그러나 6.0 버전 이후로는 양사가 개별적으로 개발을 진행하면서 내용과 버전 넘버링이 MS-DOS와 다소 달라졌다.
  • DR-DOS: 디지털 리서치가 1988년 개발한 운영 체제. CP/M-86의 후신이라 할 수 있으나 MS-DOS와 호환성을 가지고 있었다. 나중에 Novell이 인수하면서 노벨 DOS가 되었다가 소스를 공개하면서 openDOS로 이름을 바꾸었다.
  • FreeDOS: 소스를 공개해 개발한 MS-DOS의 호환 운영 체제. 1998년부터 개발했다. 간혹 윈도우를 넣지 않은 저가형 컴퓨터의 기본 운영 체제로 들어가 있기도 하며 DOSBox에도 사용하는 등 의외로 많이 사용하고 있다.
  • DOS/V: 일본 IBM에서 IBM PC 호환 기종에 사용하기 위해 제작한 일본어/VGA 환경 전용 MS-DOS. 국내에도 일본 게임을 위해 많이 사용했던 적이 있다.
  • K-DOS: 1988년부터 과학기술처 주관으로 개발한 한국형 운영 체제. MS-DOS와 호환성을 가지고 있었으나 실패했다.

5.1. 영향을 받은 운영 체제

MS-DOS와 직접적인 호환성은 없지만 MS-DOS의 영향을 받은 것이 명확한 운영 체제들이다. 대체로 일본계 컴퓨터에 많이 채용했다.
  • MSX-DOS: 8비트 컴퓨터였던 MSX의 운영 체제. 마이크로소프트가 MS-DOS 1.10을 바탕으로 제작하였는데 재미있게도 명령어나 기본 인터페이스, 파일 시스템 등은 MS-DOS에 준하지만 내부 시스템 호출은 CP/M과 호환성이 있어서, 응용 프로그램 호환성은 MS-DOS가 아닌 CP/M이 있는 특이한 물건. 요컨대 껍데기는 MS-DOS이고 알맹이는 CP/M이라는 이야기. 당시 8비트 PC 운영 체제 중에서 절대적인 위치를 점하고 있던 CP/M의 응용 프로그램을 그대로 사용하기 위한 조치였다고 한다. 나중에 아스키가 이를 대폭 강화한 MSX-DOS 2를 개발하였으나 2.x대는 직접 지원을 해 주는 MSXturboR 이외에는 별도의 카트리지를 구매해야 해서 그다지 널리 퍼지지 못하였다.
  • Carry C-DOS II: 통칭 'C-DOS II'.[23] NEC PC-8801과 샤프 X1용으로 나온 운영 체제. 개발사는 게임 제작사로 유명...할지도 모르는 Carry Lab.[24] 이쪽 역시 MSX-DOS와 마찬가지로 MS-DOS와 비슷한 명령체계+CP/M 호환성을 갖춘 CP/M 클론이다. 이쪽은 서드파티에서 나온 운영 체제라 그런지 그리 널리 알려지진 못했다.
  • Towns OS: 후지츠의 멀티미디어 컴퓨터 FM Towns용 운영 체제. 기본적으로 MS-DOS를 뼈대로 삼아서 CD-ROM 드라이브를 기본으로 내장하고 있는[25] FM Towns에 맞도록 커스터마이즈한 운영 체제이다. 운영 체제의 일부는 매킨토시처럼 시스템 ROM에 내장했다.
  • Human-68k : 샤프의 컴퓨터 X68000용 운영 체제. 개발사는 허드슨.[26] CPU로 모토로라 68000을 채택한 기기이니만큼 바이너리 호환성은 없고 마이크로소프트가 만든 것도 아니지만 MS-DOS의 영향을 대단히 많이 받아서 구조도 매우 비슷하고 사용하는 명령어도 매우 흡사하다. 다만, 실행 파일의 확장자는 .EXE가 아니라 .X를 사용한다.

6. 기타

  • XMS 규약에 의하면 확장 메모리를 4GB 까지 지원한다.[27]
  • 일반적으로 MS-DOS는 IBM PC 호환 기종에서만 사용했다고 생각하기 쉬우나 의외로 x86 CPU를 사용하는 다른 기종으로 이식한 경우가 좀 있다. 주로 일본계 PC에서 많이 사용했는데, 일본의 국민 컴퓨터였던 PC-9801과 후지츠의 FMR[28]이 대표적. 두 기종 다 CPU가 인텔 x86 계열이었고 운영 체제도 MS-DOS였으나 IBM PC와 바이너리 호환성은 없었다. 다만 이식은 비교적 용이했던 모양.
  • 4.0 버전까지는 프롬프트 기본값이 $n$g라서 A>\식으로 드라이브 이름만 나타났다.
  • 프롬프트 상에서 오류 메시지가 나오면 4가지 선택문이 나오고 그 선택을 단어의 첫 머리로 하고 있다. Abort, Retry, Fail, Ignore?인데 Ignore는 오류에 따라 나오지 않을 때도 있다. 즉 무시 선택지가 있는 오류는 경우에 따라 다르다는 것. 가장 쉽게 이 메세지를 띄울 수 있는 사례는 플로피 디스크 드라이브에 디스크를 넣지 않고 해당 드라이브에 진입할 경우. 이때 올바른 플로피 디스크를 넣고 R을 치면(다시 시도하면) 해당 드라이브에 진입할 수 있다.
  • USB 메모리는 FAT, 2 GB 이하를 인식한다. (재시동 필요)[29]
  • 현재 영문판은 WinWorldPC에서 1.0 - 6.22까지 모두 구할 수 있으며, 한글 MS-DOS 4.0부터는 스크린샷이 남아 있고, 6.0부터 구할 수 있다.[30]

7. 관련 문서

8. 바깥 고리



[1] Windows 3.1에서부터 사용한 아이콘. Windows XP의 WINDOWS 폴더나 windows\\System32\\nlsfunc.exe의 속성에서도 볼 수 있다. Windows 7은 아이콘 변경 창에서 PIFMGR.DLL를 입력하면 볼 수 있다. 왜인지는 몰라도 옆에 한 입 베어 물은 사과가 있다.[2] DOS 3.3, Pro-DOS 등이 유명하다.[3] IBM은 메인프레임으로 먹고사는 회사답게 이전까지 하드웨어와 소프트웨어 모두 자사가 개발하는 정책을 취하고 있었으나 IBM PC에서는 예외로 하드웨어, 소프트웨어 모두 최대한 시장에 나와있는 기술을 이용하는 것으로 정책을 바꾸었다. 일설에는 그다지 성공할 가능성을 높게 보지 않고 비용을 줄이기 위한 수단으로 그랬다는 이야기가 있다.[4] IBM이 먼저 디지털 리서치와 회담을 했지만 대표 게리 킬달의 태도로 돌아섰고, 이 때 마이크로소프트가 낚아챘다는 널리 퍼진 루머가 있지만 사실이 아니다. Chapman, Merrill R. 의 저서 'In Search of Stupidity' 참고. 국내에도 '초난감 기업의 조건'이라는 제목으로 번역해 출간했다.[5] IBM의 John R. Opel이 빌 게이츠의 소개로 디지털 리서치를 찾아갔다는 교차 자료[6] IBM과의 계약 당시의 마이크로소프트가 운영 체제와 인연이 없었던 것은 아니다. 당시 마이크로소프트는 유닉스를 개인용 컴퓨터 기종으로 컨버전한 'Xenix'라는 운영 체제를 개발해서 판매하고 있었다. 하지만 유닉스 파생인 이상 벨 연구소(이후 AT&T)에서 라이선스를 얻어야 했고, 유닉스처럼 Xenix 또한 일반 사용자들을 위한 제품은 아니었기 때문에 IBM PC의 운영 체제로 밀어붙지지 않은 듯 하다. 어쨌든 IBM PC 출시 이후에는 IBM PC용 Xenix도 출시했다.[7] 보통 NDA에는 정보 비밀에 대한 의무를 어겼을 때 몇 배까지 탈탈 털어먹을 것인지에 대한 대기업 측의 무시무시한 계약 사항들이 가득하다.[8] 이 시절엔 이런 게 꽤 많았다. 컴퓨터라는 것이 일반 사용자 지향이 아니었기 때문에 1970년 대까지는 개인용 컴퓨터는 DIY 키트 형태로 나오는 경우가 대부분이었다. 대표적인 경우가 애플 I.[9] 일부 버그를 고쳐서 내놓았다는 얘기도 있다.[10] 정확히는 시애틀 컴퓨터에서 초기 개발 단계였던 소프트웨어를 구입했고 그 회사의 선임 엔지니어 였던 팀 패터슨을 영입해 여러 번 수정한 결과 MS-DOS로 탈바꿈했다 적혀 있어 실 제품들은 큰 차이가 있을 수 있다.[11] CP/M-86, IBM PC DOS, UCSD p System.[12] 이 때문에 MS-DOS 6.x까지 구동하던 프로그램들이 MS-DOS 7.x~8.x에서 돌아가지 않는 일이 허다했다. 일부 소프트웨어는 MS-DOS 7.x~8.x과 Windows의 설정 삽질을 좀 하면 겨우 구동하는 경우도 있긴 했으나, MS-DOS 6.x가 아니면 실행 불가능한 경우가 많아서 과도기 사용자들의 불만이 하늘을 찔렀다. 다행히 Windows 9x의 경우 MS-DOS로 멀티 부팅을 할 수 있는 기능을 제공했으나, 문제는 이 방식을 사용하려면 이용자들이 Windows 95 발매 이전의 MS-DOS 설치 플로피 디스크를 사서 보관하고 있어야 했다. 어쨌든 Windows 95로 넘어가던 시기 컴퓨터 서적을 보면 MS-DOS 응용 프로그램(예를 들면 게임)과의 공존을 위한 온갖 삽질 테크닉(...)을 소개하는 경우가 많다.[13] 일부 게임에서 플로피 디스크로 게임을 하다가 게임을 종료하면 command.com이 없다면서 오류 메시지를 뿜는 이유가 이것이다.[14] 해석하면 드라이브 A 플로피 디스크에 들어 있는 확장자 EXE를 가진 파일을 전부 드라이브 B의 플로피 디스크로 복사하면서 드라이브 B의 플로피 디스크에 동일한 이름의 읽기전용 속성 파일이 있어도 덮어쓰기를 할 것.[15] 그래서 사람에 따라서는 윈도우 95 이전의 윈도우를 운영 체제보다는 일종의 프로그램으로 간주하기도 한다.[16] POST(전원 ON 후 자가 점검) > MS-DOS 구동 > 윈도우 실행 순으로 진행한다. 때문에 윈도우의 시스템 종료 메뉴에서 MS-DOS 모드로 시스템 다시 시작을 선택하면 MS-DOS를 사용할 수도 있었다.[17] 그래서 Windows Me 역시 숨김 속성 해제를 하면 MS-DOS 관련 파일들이 보이며 이 파일들을 잘못 건드리면 Windows 부팅이 불가능했다.[18] 어차피 리눅스나 유닉스의 쉘에서도 커스터마이징을 하면 DOS 명령어를 쓸 수 있다. 예를 들어 리눅스에서 'dir'을 치면 'ls-l'를 실행한 것과 같게 만들 수 있다는 이야기.[19] DOS 모드에서 이 프로그램을 실행할 수 없습니다. 이는 초기 윈도우즈 실행 파일의 확장자가 EXE로 MS-DOS와 동일하였고 윈도우즈에서도 MS-DOS 프로그램 호환성을 위하여 DOS 모드를 지원했기 때문에, 윈도우즈 프로그램을 MS-DOS 또는 DOS 모드에서 실행하는 실수를 대비하여 삽입한 오류 메세지이다. 윈도우즈용 EXE을 헥스 에디터 등으로 열어보면, PE(Portable Executable) 헤더 앞에 짤막한 도스 프로그램이 붙어 있는 것을 볼 수 있는데, 바로 이 오류 메세지를 출력하는 프로그램이다. 여담으로 한글 MS-DOS에서도 이 메시지가 영어로 뜬다.[20] 16비트 윈도우 프로그램들은 This program requires Microsoft Windows. 직역하면 이 프로그램에는 Microsoft Windows가 필요합니다. 라고 뜬다(...) 그리고 16비트 윈도우 프로그램들은 PE 파일 구조체가 아닌 NE(New Executable) 파일 구조체를 쓴다[21] 참고로 EXE 파일의 PE 헤더에는 DOS 헤더 및 스텁을 먼저 포함했으며 크기는 64 바이트(0x40)이다.[22] MSDOS.SYS, IO.SYS를 IBMDOS.COM, IBMBIO.COM으로 바꿨다.[23] 이 이전에 Carry DOS(C-DOS)가 있었다고 한다. 이전 버전임에도 불구하고 호환성은 없다고.[24] 국내에서는 웬만한 올드 게이머들도 기억을 못하는 듣보잡 취급이지만 당대 일본에서는 나름대로 알려진 제작사였다. 당시 유명했던 작품은 와이어프레임으로 3D 슈팅 게임을 구현했던 'JELDA' 시리즈. MSX로도 이 시리즈인 '리턴 오브 젤다'가 나와있긴 하지만 MSX 쪽에선 별 재미를 못봤다.[25] 1989년 당시에는 광학 드라이브를 장착한 컴퓨터가 매우 드물었다.[26] 봄버맨을 만든 게임회사 허드슨 맞다.[27] Windows 98은 1 GB 밖에 지원하지 않는다.[28] FM Towns의 전신격인 모델이다.[29] 최신 대용량 USB도 거기다가 MS-DOS를 깔면 설치 관리자가 USB를 2 GB FAT로 포맷해준다.[30] 인터넷을 계속 찾으면 한글 구버전이 나올 지도 모른다.