MS-DOS

'운영 체제 '목록
WindowsMicrosoft Windows(Windows 9x, Windows NT)
리눅스데비안데비안 GNU/리눅스 · 우분투 · 리눅스 민트 · 칼리 리눅스 · 크런치뱅 · 하모니카 리눅스 · 기린 · Damn Small Linux · elementary OS · 스팀 OS
레드햇레드햇 엔터프라이즈 리눅스 · 페도라 · MeeGo · 붉은별 · 센트OS · 아시아눅스 · 타이젠
슬랙웨어슬랙웨어 리눅스 · 오픈수세 · Slax
맨드리바Mandriva · Open Mandriva Lx · 마제야 · PCLinuxOS · no.1Linux
안드로이드안드로이드 · 크롬 OS · Remix OS · Polaris OS
아치 리눅스아치 리눅스 · Manjaro Linux · Antergos · ArchBang Linux
기타젠투 리눅스 · Nix OS
유닉스BSDBSD · FreeBSD · NetBSD · OpenBSD · TrueOS · GhostBSD · DragonFly BSD · TmaxOS
XNUiOS · macOS · tvOS · watchOS
기타솔라리스(SmartOS) · IBM AIX · HP-UX
DOSDR-DOS · MS-DOS · FreeDOS · K-DOS
기타ReactOS · Mac OS · OS/2(eComStation)

1 개요

마이크로소프트에서 사서 개발한 OS.
Windows_3.1-2015-08-07-00-22-38.png
한글 MS-DOS 6.2 구동화면.

150px
Windows XP의 WINDOWS 폴더에서도 볼 수 있는 MS DOS 로고(또는 아이콘).

2 상세

'시애틀 컴퓨터' 社의 한 프로그래머였던 팀 패터슨이 제작한 CP/M의 클론 OS, Q-DOS(Quick and Dirty Operating System)로, 게리 킬달IBM의 계약이 결렬된 것을 알아챈 빌 게이츠는 잽싸게 팀 패터슨으로부터 Q-DOS를 75,000달러에 구입하여 이름만 MS-DOS로 바꿔달고[1] IBM과 계약을 체결했다...는 게 정설이었는데, 최근 세 OS의 소스코드를 분석하여 연구한 결과, Q-DOS는 CP/M를 베낀 것이 아니며, MS-DOS도 Q-DOS와는 다른 것이었다고 한다. 관련 글 하지만 이 결과는 저자의 사업을 홍보하기 위한 수단이라고 비난받고 있으며 편집자 역시 저자가 마이크로소프트사의 지원을 받고 있음을 명시하고 있다. 링크된 글의 댓글을 참고.참고로 빌게이츠도 자신의 저서인 미래로 가는길에 MS-DOS를 사서 개발했다고 써놨다.

이 과정에서 IBM에서 OEM으로 내놓는 버전은 PC-DOS, 마이크로소프트에서 리테일로 내놓는 버전은 MS-DOS라고 이름을 붙였고 몇몇 시스템 파일의 이름이 달랐지만 같은 버전의 PC-DOS와 MS-DOS는 기본적으로 같은 물건이라고 생각해도 무방하다. 다만 6.0 버전 이후로는 개별적으로 개발을 진행하면서 내용이 서로 달라졌다. MS-DOS의 최종버전은 6.22지만, Windows 9x 계열이 도스 기반이었기 때문에 기반으로 돌릴 도스가 필요하였고 이에 따라 Windows 95에 7.0, 95 OSR2와 Windows 98, 98SE에는 7.1, Windows Me에 8.0 버전의 MS-DOS가 들어갔다. 소비자가 마지막으로 (독립적으로) 본 최종판은 6.22였지만, 진짜 최종판은 Me에 포함된 8.0인 셈.

이후 IBM이 PC 관련 기술을 공개하면서 우후죽순처럼 생겨난 PC 제조사들이 전부 MS-DOS를 사용하게 되면서 마이크로소프트를 지금의 공룡기업으로 성장시켜준 1등 공신. 윈도우에게 자리를 물려주기 전까지 IBM계열 OS 시장을 가히 점령하고 있었다. 초기에는 CP/M 86, 나중에는 DR-DOS 같은 경쟁자가 있기는 했지만 큰 의미는 없었다.

윈도우 같은 GUI OS부터 컴퓨터를 접하기 시작한 세대는 프로그래머가 아닌 이상 볼 일이 거의 없고 엄청나게 생소한 화면이다. 한글은 커녕 아이콘은 1개도 안 보이고 칠흑의 우주 같은 화면에 투박한 영문 글씨만 떠서 커서 하나만 깜박이니 마치 진짜 우주에 내던져진 막막한 기분일 것이다. 최신 하드웨어의 스펙을 줄줄 외우고 자칭 컴고수를 자처하는 사람들도 이 암흑의 화면을 마주하면... 몰라 뭐야 그거 무서워하면서 벌벌 떨기 시작한다. 본격 아재 테스트

윈도우 3.x까지는 MS-DOS 응용프로그램으로 동작하며,[2] 윈도우 95, 98, Me 또한 부트업 후 자동으로 윈도우가 실행되고, 윈도우를 종료하면 셧다운이 되는 것일 뿐 MS-DOS 기반으로 작동한다. NT 기반인 2000, XP로 넘어오면서 윈도우는 독립된 온전한 OS로 탈바꿈하게 된다.

NT 기반의 윈도우에서는 명령 프롬프트로 MS-DOS 비슷한 환경을 사용할 수 있다. 다만 그럴듯하게 흉내낸 프로그램이지 DOS는 아니기 때문에 프로그램 호환성은 많이 떨어지는 편이다. 윈도우 9x 시절에는 16비트 호환이었지만 이젠 그런 거 없다. 물론 명령어는 호환성을 고려해서인지 DOS 명령어가 상당수 먹힌다.[3] NTVDM(Virutal DOS Machine)이라는 가상머신과 x86 CPU의 기능인 가상 8086모드를 이용한 기능인데, Windows Vista부터는 명령 프롬프트는 존재하지만 x86-64의 롱 모드에서는 가상 8086 모드를 사용할 수 없는 고로 NTVDM도 잘려나가 MS-DOS를 비롯한 16비트 응용프로그램을 사용할 수 없다. 이후에 PowerShell이라는 것도 나왔는데 이건 POSIX 호환에 가까운 것이지 MS-DOS에 가까운 것은 아니다. 명령 프롬프트에서만 먹히는 각종 고급 기능 때문에 아직도 사용하는 사람은 있는 편.

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

전술하였듯 IBM에 납품된 MS-DOS의 이름은 PC-DOS로, 말하자면 OEM으로 공급되었다. 구조나 몇 가지 다른 점이 있다고 하지만 거의 같다. 물론 여기에도 Copyright는 Microsoft라고 적혀져 있었다.

MS-DOS와 비슷한 오픈소스 OS인 OpenDOS[4]FreeDOS가 있으며, MS-DOS 환경을 소프트웨어적으로 흉내내는 에뮬레이터가 바로 DOSBox이다.

MSX에서 사용된 운영체제인 MSX-DOS는 이 MS-DOS를 베이스로 마이크로소프트가 제작한 것. 명령어나 기본 인터페이스, 파일시스템 등은 MS-DOS에 준하지만 내부 시스템 콜은 CP/M과 호환성이 있어서 MS-DOS와는 소프트웨어 호환성이 없고 CP/M과 호환성이 있는 특이한 물건. 요컨대 껍데기는 MS-DOS이고 알맹이는 CP/M이라는 이야기. 당시 8비트 PC 운영체제 중에서 절대적인 위치를 점하고 있던 CP/M의 응용 프로그램을 그대로 사용하기 위한 조치였다고 한다.

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

3 관련 문서

  1. 몇몇 버그를 고쳐서 내놓았다는 얘기도 있다.
  2. 그래서 사람에 따라서는 윈도우95 이전의 윈도우를 OS보다는 일종의 프로그램으로 간주하기도 한다.
  3. 어차피 리눅스나 유닉스의 쉘에서도 커스터마이징을 하면 DOS 명령어를 쓸 수 있다. 예를 들어 리눅스에서 'dir'을 치면 'ls-l'를 실행한 것과 같게 만들 수 있다는 이야기.
  4. MS-DOS의 클론이 아닌, DR-DOS의 오픈소스 버전이다. DR-DOS가 7.01을 마지막으로 개발이 중지되면서 소스가 공개되었다.
  5. 해석하면 드라이브 A 플로피 디스크에 들어 있는 확장자 EXE를 가진 파일을 전부 드라이브 B의 플로피 디스크로 복사하면서 드라이브 B의 플로피 디스크에 동일한 이름의 읽기전용 속성 파일이 있어도 덮어쓰기를 할 것.