{{위키데이터 속성 추적}}
{{두 다른 뜻|운영 체제의 한 계열|개념|디스크 운영 체제|||}}
[[파일:FreeDOS Beta 9 pre-release5 (command line interface) on Bochs sshot20040912.png|오른쪽|섬네일|400px|명령 줄 인터페이스, 디렉터리 구조, 버전 정보를 보여주고 있는 [[프리도스]]의 스크린샷.]]
'''도스'''({{llang|en|disk operating system}}<ref>{{서적 인용|last=Murdock|first=Everett|제목=DOS the Easy Way|publisher=EasyWay Downloadable Books|year=1988|isbn=0-923178-00-7}}</ref>, 디스크 오퍼레이팅 시스템, '''DOS''')는 [[디스크 운영 체제]]의 일종으로서<ref>{{서적 인용|author-last=Murdock |author-first=Everett |title=DOS the Easy Way |publisher=EasyWay Downloadable Books |year=1988 |isbn=0-923178-00-7}}</ref> 디스크에 읽고 쓰기 등의 명령을 수행하는 프로그램이다. 명령어를 직접 입력하는 [[명령 줄 인터페이스|명령 줄 기반]]이다.

1981년부터 1995년까지, 또 부분적으로 MS-DOS 기반인 [[마이크로소프트 윈도우]]([[윈도우 95|95]], [[윈도우 98|98]], [[윈도우 미|미]])를 포함한 2000년까지는 [[MS-DOS]]가 [[IBM PC 호환기종]] 시장을 장악하였다. 도스는 [[MS-DOS]], [[PC DOS]], [[DR-DOS]], [[프리도스]], [[ROM-DOS]], [[PTS-DOS]]를 포함한 비슷한 명령 줄 시스템의 계열이다.

이 시스템들 중 어느 것도 간단히 "도스"라고 불리진 않았다. (1960년대의 이와 관련이 없는 [[DOS/360|IBM 메인프레임 운영 체제]]에만 사용되었음) 이와 무관한 수많은 비[[x86]] 마이크로컴퓨터 [[디스크 운영 체제]]는 "도스"라는 이름을 그대로 사용하였으며<ref>[http://www.dictionary.com/browse/dos Dictionary.com] {{webarchive|url=https://web.archive.org/web/20171112185542/http://www.dictionary.com/browse/dos |date=2017-11-12}}</ref> 이들을 사용하는 컴퓨터에 대해 논할 때 단순히 "도스"라고 부르곤 했다. ([[아미가도스]], [[AMSDOS]], [[애플 도스]], [[아타리 도스]], [[코모도어 도스]], [[CSI-DOS]], [[프로도스]], [[TRSDOS]])

== 역사 ==
=== 초기의 도스 ===
[[디지털 리서치]]의 [[CP/M]]이 가장 대표적인 도스의 원형이다. 8비트 개인용 컴퓨터에는 CP/M이 널리 사용되었으나 [[애플 II]]는 독자적인 [[애플 도스]](정식 명칭은 그냥 DOS)를, [[MSX]]는 [[MSX-DOS]]를 썼다. 이들 컴퓨터도 나중에 [[CP/M]]을 지원하지만 디스크의 포맷이 달라서 서로 바꾸어 쓸 수는 없었다. [[IBM-PC]]에서는 이를 모방한 [[QDOS]]로부터 [[PC-DOS]]와 [[MS-DOS]]가 나왔으며, 나중에 CP/M은 16비트 버전인 CP/M-86 바탕으로 [[DR-DOS]]로 나왔다.

현재는 DR-DOS의 후기작인 [[오픈도스]]와, [[NTFS]] 등을 지원하는 공개 도스 프로젝트인 [[프리도스]]가 있다. [[MS-DOS]]는 [[마이크로소프트]]가 만든 가장 보편적으로 쓰인 도스이다. [[PC-DOS]]는 [[IBM]]의 도스이다. 버전 5.0까지는 사실상 MS-DOS와 같은 제품이었으나 그 이후 추가된 내용이 달라졌다. [[DR-DOS]]는 [[디지털 리서치]]사에서 만든 도스이다. 이것은 나중에 [[노벨 도스]](Novell DOS)로 바뀌었다가 다시 [[칼데라 오픈 도스]](Caldera OpenDOS)로 바뀐다.

=== 쇠퇴 ===
{{본문|마이크로소프트 윈도우의 역사}}
[[윈도우 3.1]] 이하의 버전과 같이 초기 버전의 [[마이크로소프트 윈도우]]는 별도 버전의 도스 위에서 실행되었다.<ref name="emulate"/> 1990년대 초에 윈도우의 그래픽 셸은 도스 시스템에서 많이 이용되었다. 1995년에 [[윈도우 95]]가 별도의 도스 라이선스를 요구하지 않은 독립형 운영 체제로 번들되었다. 윈도우 95(및 이를 따랐던 윈도우 95과 ME)는 기본 [[운영 체제 커널|OS 커널]]을 인계 받았지만 MS-DOS 구성 요소는 호환성을 위해 그대로 남겨두었다. 윈도우 미를 제외한 윈도우 95, 98과 더불어 MS-DOS 구성 요소는 윈도우를 시작하지 않고도 구동이 가능하였다.<ref>{{웹 인용|url=http://www.smartcomputing.com/Editorial/article.asp?article=articles/archive/95win/95win21/95win21.asp&guid= |title=Finding The DOS In Windows 95 |work=Smart Computing |date=March 1996 |accessdate=2008-07-12}}{{cbignore|bot=medic}}</ref><ref name="various-77715">{{웹 인용 | url = http://blogs.msdn.com/b/oldnewthing/archive/2007/12/24/6849530.aspx | title = What was the role of MS-DOS in Windows 95? | first = Raymond | last = Chen | work = The Old New Thing - Site Home - MSDN Blogs | date = December 24, 2007 | accessdate = February 5, 2014 | archiveurl = https://web.archive.org/web/20140205100822/http://blogs.msdn.com/b/oldnewthing/archive/2007/12/24/6849530.aspx | archivedate = 2014년 2월 5일 | url-status = live }}</ref><ref name="various-42623">{{웹 인용 | url = http://support.microsoft.com/kb/138996 | title = Description of Restarting Computer in MS-DOS Mode | author = <!--Staff writer(s); no by-line.--> | work = support.microsoft.com | date = January 19, 2007 | accessdate = February 5, 2014 | archiveurl = https://web.archive.org/web/20140205101959/http://support.microsoft.com/kb/138996 | archivedate = 2014년 2월 5일 | url-status = live }}</ref> [[윈도우 NT]] 계열 운영 체제가 널리 사용되면서, 윈도우 사용을 위해 더 이상 도스가 필요없게 되자 PC 사용자들 다수가 도스를 직접 사용하는 일은 중단되었다.

=== 계속된 이용 ===
2012년 기준으로, [[프리도스]], [[DR-DOS]], [[ROM-DOS]], [[PTS-DOS]], [[RxDOS]], [[REAL/32]]와 같은 도스 운영 체제를 이용할 수 있다. [[델]], [[휴렛 패커드|HP]]를 포함한 일부 컴퓨터 제조업체들은 FreeDOS를 [[OEM]] 운영 체제를 포함한 컴퓨터들을 판매한다.<ref>{{웹 인용 |url=http://www.freedos.org/jhall/blog/?yr=2007 |title=Jim Hall's blog - 2007 |date=2007-07-13 |access-date=2008-06-12 |author-last=Hall |author-first=Jim |author-link=James Hall (programmer) |url-status=dead |archiveurl=https://web.archive.org/web/20121025185935/http://www.freedos.org/jhall/blog/?yr=2007 |archivedate=2012-10-25 |df= }}</ref><ref>{{웹 인용 |url=http://www.dell.com/content/topics/segtopic.aspx/e510_nseries?c=us&cs=19&l=en&s=dhs |title=Dell PCs Featuring FreeDOS |access-date=2008-06-14 |url-status=dead |archiveurl=https://web.archive.org/web/20080319090122/http://www.dell.com/content/topics/segtopic.aspx/e510_nseries?c=us&cs=19&l=en&s=dhs |archivedate=2008-03-19 |df= }}</ref>

==== 임베디드 시스템 ====
하드웨어에 직접 접근하는 도스 구조는 임베디드 장치에서 이용할 때 매우 이상적이다. 최신 판의 DR-DOS가 현재에도 이 시장에 초점을 두고 있다.<ref>{{웹 인용|url=http://www.drdos.com/products/drdos703.htm|title=DR-DOS Embedded DOS|accessdate=2008-09-26|archive-date=2008-12-21|archive-url=https://web.archive.org/web/20081221174616/http://www.drdos.com/products/drdos703.htm|url-status=dead}}</ref> ROM-DOS가 [[캐논 파워샷 프로]] 70의 임베디드 시스템에 사용되었다.<ref>{{뉴스 인용|url=http://findarticles.com/p/articles/mi_m0EIN/is_1999_Feb_23/ai_53930374|title=Datalight DOS Selected for Canon's New Line of Digital Still Cameras|publisher=Business Wire|date=1999-08-24|accessdate=2008-09-26}}</ref>

==== 에뮬레이션 ====
[[리눅스]] 하에서 도스 프로그램들을 거의 네이티브 속도로 구동할 수 있는 [[DOSEMU]]라는 리눅스 네이티브 [[가상 머신]]을 이용하여 여러 도스 사본들을 실행할 수 있다. [[도스박스]]를 포함하여 여러 버전의 유닉스에서 도스를 구동하기 위한 다른 수많은 [[에뮬레이터]]들이 있다.<ref name="DOSBox"/><ref>{{웹 인용|url=http://www.dosemu.org/|title=DOSEMU Home|date=2007-05-05|accessdate=2008-07-03|author=}}</ref>

도스 에뮬레이터들은 [[마이크로소프트 윈도우]] 하에서 게임이나 다른 도스용 소프트웨어를 구동하기에 적절한 방법인데, 현대 버전은 도스와의 완전한 호환성이 결여되어 있기 때문이다. 현대의 운영 체제에서 오래된 게임을 즐기도록 고안된 [[도스박스]]가 대표적인 예이다.<ref name="emulate">{{웹 인용|url=http://apcmag.com/how_to_coax_retro_dos_games_to_play_on_vista.htm|title=HOW TO: Coax retro DOS games to play on Vista|date=2006-10-13|accessdate=2008-07-03|first=James|last=Bannan}}</ref><ref name="DOSBox">{{웹 인용|url=http://www.dosbox.com/information.php|title=DOSBox Information|accessdate=2008-05-18}}</ref> 다른 대안으로는 [[:분류:x86 에뮬레이터|PC 에뮬레이터]] 상에서 도스 운영 체제의 사본으로 도스 응용 프로그램들을 구동하는 것이다. 이러한 접근은 오버헤드는 증가되지만 더 나은 호환성을 제공한다.<ref>{{웹 인용|url=http://www.winvistatips.com/dos-games-on-vista-a102.php|title=DOS Games on Vista|date=2008-03-11|accessdate=2008-09-02|보존url=https://web.archive.org/web/20080917134721/http://www.winvistatips.com/dos-games-on-vista-a102.php|보존날짜=2008-09-17|url-status=dead}}</ref>

== 설계 ==
모든 MS-DOS형 운영 체제들은 [[인텔 x86]] 호환 [[중앙 처리 장치|CPU]]를 갖춘 컴퓨터, 주로 [[IBM PC|IBM-PC]] 및 [[IBM PC 호환기종|호환기종]]에서 동작한다. 특정 기계에 의존적인 MS-DOS 버전들은 수많은 비 IBM 호환 [[x86]] 기반 컴퓨터용으로 개발되었으며, 여기에는 제조업체 이름을 딴 [[마이크로소프트]]의 배포판에서부터 비 IBM-PC 호환 하드웨어와 동작하도록 설계된 버전에 이르기까지 다양하다. 응용 프로그램들이 직접 하드웨어 접근 대신 도스 API를 사용하는 한 IBM-PC 비호환 머신들에서도 실행이 가능하다. 1985년, 디지털 리서치는 또한 모토로라 68000 CPU용 [[컨커런트 도스 68K]] 버전 및 1990년대 초에 모토로라 CPU용 [[DOS/NT]] 파생 오리지널 [[프리도스]] 커널 [[DOS-C]]가 있었다. 이 시스템들이 도스 구조와 유사하긴 했지만, 응용 프로그램들은 이러한 x86이 아닌 CPU의 비호환 명령 집합으로 인해 이진 호환성이 없었다. 그러나 고급 언어로 작성된 응용 프로그램들은 쉽게 포팅이 가능했다.

도스는 [[재진입성|재진입성이 없는]] 기본 [[커널]] 기능들을 갖춘 단일 사용자, 싱글태스킹 운영 체제이다. 즉, 한 번에 하나의 프로그램 해당 커널 기능들을 사용할 수 있으며 도스 스스로는 하나 이상의 프로그램을 한 번에 실행할 수 있게 하는 기능이 없다. 도스 커널은 문자 입출력, 파일 관리, 메모리 관리, 프로그램 적재 및 종료와 같이 [[MS-DOS API|프로그램을 위한 다양한 함수]]를 제공한다.

도스는 기본적으로 배치 파일([[파일 확장자]]는 <code>.BAT</code>)을 통해 [[셸 스크립트]]를 위한 기능을 제공한다. 이것들은 텍스트 파일로서, 문서 편집기를 이용해서 작성이 가능하다. 컴파일된 프로그램과 동일한 방식으로 실행되며, 배치 파일의 각 줄을 명령 단위로 실행한다. 배치 파일은 또한 여러 내부 명령을 이용할 수 있는데, 이를테면 [[GOTO]]와 [[조건문]]을 들 수 있다.<ref>{{웹 인용|url=http://www.computerhope.com/batch.htm|title=Batch File Help|accessdate=2008-09-10|publisher=computerhope.com}}</ref> [[GOSUB]] 및 단순 산술은 DR-DOS COMMAND.COM 및 [[4DOS]]와 같은 일부 서드 파티 셸을 통해 지원되지만, 실질적인 형태의 프로그래밍이 지원되는 것은 아니다.

이 운영 체제는 문자 기반 응용 프로그램의 개발을 허용하는 API를 제공하지만 [[그래픽 카드]], [[컴퓨터 프린터|프린터]], [[마우스]]와 같은 [[컴퓨터 하드웨어|하드웨어]] 대부분의 접근을 위한 것은 아니다. 프로그래머들이 직접 하드웨어에 접근하게 하려면 각 프로그램이 개별 하드웨어 주변기기에 맞는 자체 [[장치 드라이버]]를 갖추어야 했다. 하드웨어 제조업체들은 사양을 공개하여 대중화된 응용 프로그램들을 위한 장치 드라이버들을 사용할 수 있도록 보증해야 했다.<ref>{{웹 인용|url=http://www.zingtech.com/features/gamedev/gnewprog.htm|title=ZINGTECH - Guide to the New Game Programmer|accessdate=2008-09-02|last=Matczynski|first=Michael}}</ref>
=== 부트 시퀀스 ===
* PC 호환 컴퓨터의 [[부팅|부트스트랩 로더]]([[마스터 부트 레코드|MBR]] 또는 [[부트 섹터]])는 디스크의 첫 섹터인 [[Track0]]에 위치한다. [[롬 바이오스]]는 이 섹터를 주소 0000h:7C00h의 메모리에 불러들이고 오프셋 +1FEh의 55h AAh 서명을 보통 검사한다.
* 로드된 부트 섹터가 [[마스터 부트 레코드]](MBR)로 간주되면, 그 자신을 메모리의 0000h:0600h에 재할당하며<ref name="dewassoc_com-master_boot_record">{{웹 인용|제목=The Master Boot Record (MBR) and What it Does|url=http://www.dewassoc.com/kbase/hard_drives/master_boot_record.htm|확인날짜=2016-07-09|archive-date=2013-05-27|archive-url=https://web.archive.org/web/20130527211902/http://www.dewassoc.com/kbase/hard_drives/master_boot_record.htm|url-status=dead}} 090912 dewassoc.com</ref>, 그렇지 않다면 이 단계는 무시된다.
* 0000h:7C00h에 위치하는 섹터 콘텐츠는 현재 VBR을 이룬다. VBR은 운영 체제에 특화되어 있으며 구체적인 동작이 도스 버전마다 다르기 때문에 일반적으로 다른 도스 버전끼리 교환할 수 없다.
* VBR이 IO.SYS/IBMBIO.COM 파일의 처음 3개의 섹터만 메모리에 불러들이는 현대의 도스 버전에서는 로드된 부분에는 다른 부트 로더를 포함하며, 이는 0000h:0500h에 저장된 루트 디렉터리 정보를 이용하여 메모리의 나머지 부분을 읽어들인다.
* 도스 시스템 초기화 코드가 내장 장치 드라이버를 초기화한 다음 MS-DOS 시스템의 [[MSDOS.SYS]]에 위치한 도스 커널을 메모리로 불러들인다. 윈도우 9x의 경우 도스 시스템 초기화 코드와 내장 장치 드라이버와 도스 커널은 하나의 IO.SYS 파일에 병합되어 있으며 MSDOS.SYS는 텍스트 구성 파일로 사용된다.
* 그 뒤 [[CONFIG.SYS]] 파일을 읽어들여 구성 매개변수들을 [[구문 분석]]한다. SHELL 변수는 [[COMMAND.COM]]을 기본으로 하는 셸의 위치를 지정한다.
* 셸을 불러들여 실행한다.
* 그 뒤 시작 배치 파일 [[AUTOEXEC.BAT]]이 셸에 의해 실행된다.<ref name="evergreen_edu-config-sys">{{웹 인용|title=CONFIG.SYS Commands|url=http://academic.evergreen.edu/projects/biophysics/technotes/program/config-sys.txt|확인날짜=2016-07-09|archive-date=2009-05-02|archive-url=https://web.archive.org/web/20090502033350/http://academic.evergreen.edu/projects/biophysics/technotes/program/config-sys.txt|url-status=}} 090913 academic.evergreen.edu</ref><ref>{{웹 인용|url=http://www.pcguide.com/ref/hdd/file/structBoot-c.html|title=The DOS Boot Process|work=The PC Guide|last=Kozierok|first=Charles|year=2001|accessdate=2008-09-02}}</ref>
=== 파일 시스템 ===
도스는 [[8.3 파일 이름]]을 지원하는 파일 시스템을 사용하며, 여기에서 파일 이름이 8자, 확장자의 경우 3자를 사용한다는 뜻이다. 도스 2를 기점으로 계층적 디렉터리가 지원된다. 또, 각 디렉터리는 8.3 형식이지만 최대 디렉터리 경로 길이는 64자인데, 이는 도스가 관리하는 내부적인 현재 디렉터리 구조(CDs) 테이블 때문이다. 드라이브 이름을 포함하여, 도스가 온전히 지원하는 최대 길이는 마지막의 널 바이트를 포함, "드라이브:\경로\파일명.확장자"를 이용하여 80자이다.

도스는 [[파일 할당 테이블]](FAT) 파일 시스템을 사용한다. 본래 드라이브 당 최대 4078개의 클러스터를 지원하는 [[FAT12]]였다. 도스 3.0에는 16비트 할당 엔트리를 사용하여 드라이브 당 최대 65517개의 클러스터를 지원하는 [[FAT16]] 지원을 추가하였다. 도스 3.31은 32 MB 드라이브 제한을 제거하고 최대 2 GB까지 지원하는 FAT16B의 지원을 추가하였다. 마지막으로 MS-DOS 7.1(윈도우 9x의 도스 구성 요소)은 32비트 핟랑 엔트리를 사용하는 [[FAT32]]의 지원을 추가함으로써 하드 드라이브를 최대 137 GB 이상 지원할 수 있게 되었다.

도스 3.1을 시작으로 파일 리다이렉터 지원이 도스에 추가되었다. 초기에 네트워킹 지원을 위해 사용되었으나 나중에는 [[MSCDEX]]를 이용한 CD-ROM 드라이브 지원에 사용되었다. IBM PC DOS 4.0 또한 IFS(installable file system)를 지원했으나 사용되지 않아 도스 5.0에서 제거되었다.
==== 드라이브 명명 계획 ====
{{본문|드라이브 문자 할당}}
도스에서 드라이브들은 식별 가능한 문자들을 가리킨다. 표준화된 관습으로, "A'와 "B"는 [[플로피 디스크|플로피 드라이브]]를 위해 할당한다. 오직 하나의 플로피 드라이브를 가진 시스템에서 도스는 이 드라이브에 두 개의 문자를 할당하며, 프로그램들이 이들을 교체할 때 사용자에게 디스크를 스왑할 것인지 묻게 된다. 플로피에서 플로피로 복사하거나 다른 곳에서 데이터를 접근하는 동안 특정 플로피로부터 프로그램을 실행하고자 할 때 이용된다. [[하드 디스크|하드 드라이브]]들은 본래 문자 "C"와 "D'로 할당되었다. 도스는 드라이브 당 하나의 활성 파티션만 지원할 수 있었다.

==== 예약된 장치 이름 ====
{{본문|장치 파일}}
도스에는 내부 문자 장치로 점유하고 있는 까닭에 파일 이름을 사용할 수 없는 예약 장치명이 있다. 또, 이러한 제한은 여러 윈도우 버전에도 영향을 미치면서 어떠한 경우에는 충돌이나 보안 취약성을 야기하기도 한다.<ref>{{웹 인용|url=http://www.juniper.net/security/auto/vulnerabilities/vuln1043.html|title=Microsoft Windows MS-DOS Device Name DoS Vulnerability|accessdate=2008-09-02|보존url=https://web.archive.org/web/20110725163840/http://www.juniper.net/security/auto/vulnerabilities/vuln1043.html|보존날짜=2011-07-25|url-status=dead}}</ref>

예약어는 다음과 같다:

* <code>COM1</code>, <code>COM2</code>, <code>COM3</code>, <code>COM4</code>, <code>COM5</code>, <code>COM6</code>, <code>COM7</code>, <code>COM8</code>, <code>COM9</code> (직렬 통신 포트)
* <code>CON</code>, 콘솔용
* <code>LPT1</code>, <code>LPT2</code>, <code>LPT3</code>, <code>LPT4</code>, <code>LPT5</code>, <code>LPT6</code>, <code>LPT7</code>, <code>LPT8</code>, <code>LPT9</code> (라인 프린터)
* <code>AUX</code>, 보조용
* <code>PRN</code>, 프린터용<ref>{{웹 인용|url=https://www.pcmag.com/encyclopedia_term/0,2542,t=DOS+device+names&i=41766,00.asp|title=DOS device names definition|publisher=[[PC Magazine]]|url-status=live|archive-url=https://web.archive.org/web/20080929150356/http://www.pcmag.com/encyclopedia_term/0%2C2542%2Ct%3DDOS+device+names%26i%3D41766%2C00.asp|archive-date=2008-09-29|access-date=2008-09-02}}</ref>
* <code>NUL</code>, [[널 장치]]용. [[86-DOS]] 1.10 및 [[IBM PC DOS|PC DOS]] 1.0에 추가.

=== 메모리 관리 ===
{{본문|도스 메모리 관리}}
도스는 원래 인텔 8086/8088 프로세서용으로 설계되었으므로 최대 1 MB의 램에만 직접 접근할 수 있었다. PC 아키텍처로 인해 최대 [[640 킬로바이트의 장벽|640 KB만 사용 가능]]하며([[기본 메모리]]) 그 중 상위 384KB가 예약된다.
=== OS/2, 윈도우 하의 도스 ===
{{본문|가상 도스 머신}}

== 사용자 인터페이스 ==
{{참고|도스 명령어 목록}}
도스 시스템들은 [[명령 줄 인터페이스]]를 이용한다. 프로그램들은 명령 프롬프트에서 파일 이름을 입력하여 시작할 수 있다. 도스 운영 체제들은 시스템 유틸리티와 같은 몇 가지 프로그램들을 포함하고 있으며, 이러한 프로그램들과 관련되지 않는 내부 명령어라 불리는 추가 프로그램들도 제공한다.<ref>{{서적 인용|title=DOS the Easy Way|last=Murdock|first=Everett|pages=7–12|publisher=EasyWay Downloadable Books|isbn=0-923178-02-3}}</ref>

사용자에 더욱 친숙한 환경을 제공하려는 시도 속에, 수많은 소프트웨어 제조업체들은 메뉴나 아이콘 기반 인터페이스를 제공하는 [[파일 관리자|파일 관리 프로그램]]들을 작성하였다. 마이크로소프트 윈도우가 잘 알려진 예인데, [[윈도우 9x|마이크로소프트 윈도우 9x]]가 프로그램 로더를 기본 내장하면서 가장 흔히 쓰이는 PC 호환 프로그램 로더로서 도스를 대체하였다. [[텍스트 사용자 인터페이스]] 프로그램들에는 [[Mdir]], [[노턴 커맨더]], [[도스 내비게이터]], [[볼코프 커맨더]], 쿼터데스크 [[DESQview]], [[볼랜드 사이드킥|사이드킥]]이 있다. [[그래픽 사용자 인터페이스]] 프로그램에는 디지털 리서치의 [[그래픽 인바이런먼트 매니저]](본래 CP/M용으로 작성됨)와 [[GEOS]]가 있다.

마침내, 주요 도스 시스템 제조업체들이 자신들만의 환경 관리자를 포함하기 시작하였다. MS-DOS/IBM DOS 4는 [[도스 셸]]을 포함하였다.<ref>{{서적 인용|title=DOS the Easy Way|last=Murdock|first=Everett|pages=71|publisher=EasyWay Downloadable Books|isbn=0-923178-02-3|url=http://books.google.com/books?id=vrsSflB2o5sC}}</ref> 이듬해에 출시된 DR DOS 5.0은 GEM 기반의 [[뷰맥스]]를 포함하였다.<ref>{{서적 인용|title=Dvorak's Guide to DOS and PC Performance|last=Dvorak|first=John|author2=Nick Anis|pages=442–444|publisher=Osborne McGraw-Hill|year=1991}}</ref>

=== 종료 후 상주 프로그램 ===
{{본문|종료 후 상주 프로그램}}
도스는 멀티태스킹 운영 체제가 아니다. 그러나 도스는 [[종료 후 상주 프로그램]](Terminate and Stay Resident, TSR)을 제공하여 여러 프로그램들이 메모리에 상주할 수 있게 도와준다.

이러한 프로그램들은 시스템 타이머나 키보드 인터럽트를 후킹하여 이들이 백그라운드에서 작업을 수행하게끔 하거나 현재 실행 중인 프로그램을 적시에 호출할 수 있게 한다. <code>PRINT</code> 명령어는 이를 수행하여 백그라운드 인쇄 스풀링을 구현하였다. [[볼랜드 사이드킥]]도 이 기법을 사용한다.

종료 후 상주 프로그램들은 기본적으로 이용할 수 없는 기능을 제공하는 데에도 사용되었다. CED와 [[도스키]]와 같은 프로그램들은 COMMAND.COM에서 사용할 수 있는 기능 이상으로 명령 줄 편집 기능을 제공하였다. 마이크로소프트 CD-ROM 확장 (MSCDEX)과 같은 프로그램들은 CD-ROM 디스크의 파일을 접근할 수 있게 하였다.

일부 TSR들은 초기 수준의 태스크 전환을 수행할 수 있었다. 이를테면, [[셰어웨어]] 프로그램 백 앤드 포스 (1990년)<ref>Versions 1.47 is archived at [http://archives.scovetta.com/pub/fehq/DOSUtils/b_f_147.zip] {{웨이백|url=http://archives.scovetta.com/pub/fehq/DOSUtils/b_f_147.zip|date=20131105062838}} and says "(C) 1990 by Progressive Solutions, Inc."</ref>은 단축키를 이용하여 현재 실행 중인 프로그램의 상태를 디스크로 저장하고, 다른 프로그램을 불러와 전환할 수 있었다.

== 소프트웨어 ==
{{본문|분류:도스 소프트웨어}}
[[파일:Arachne VESA Mode.png|섬네일|오른쪽|250px|아라크네 웹 브라우저]]

도스는 지배적인 PC 호환 플랫폼이었으며 수많은 유명한 프로그램들이 도스를 위해 작성되었다. 여기에는 다음을 포함한다:

* '''[[4DOS]]''': 더 개선된 [[셸]] 치환.
* '''[[아라크네 (웹 브라우저)|아라크네]]''': 16비트 그래픽 도스 [[웹 브라우저]].
* [[베이직]] 언어 인터프리터. [[BASICA]], [[GW-BASIC]]이 8비트 컴퓨터에서 흔히 볼 수 있는 베이직 인터프리터 환경을 따라하였다.
* '''[[dBase]]''': 초기 [[데이터베이스]] 프로그램들 가운데 하나이다.
* '''[[DJGPP]]''': 32비트 DPMI 도스 포팅 [[GNU 컴파일러 모음|gcc]]이다.
* '''[[하버드 그래픽스]]''': 초기 [[프레젠테이션]] 그래픽스 디자인 프로그램 가운데 하나이다.
* '''[[로터스 1-2-3]]''', 보호 모드 [[스프레드시트]] 프로그램으로, 기업에서 많이 이용되었고 IBM PC의 성공에 기여하였다.<ref>{{웹 인용|url=http://www.crn.com/it-channel/18818026|last=Darrow|first=Barbara|제목=Whatever Happened To Lotus 1-2-3?|date=1 February 2002|accessdate=2008-07-12|보존url=https://web.archive.org/web/20090109203535/http://www.crn.com/it-channel/18818026|보존날짜=2009-01-09|url-status=dead}}</ref>
* '''[[마이크로소프트 매크로 어셈블러]]''', '''[[마이크로소프트 비주얼 C++|마이크로소프트 C]]''', '''[[코드뷰]]''': 모두 마이크로소프트 개발 소프트웨어의 일부.
* '''[[노턴 커맨더]]''', '''[[XTree]]''': 파일 관리 유틸리티.
* '''[[노턴 유틸리티]]''': 디스크 및 시스템 유틸리티 모음.
* '''[[PC 툴스]]''': 디스크 및 시스템 유틸리티 모음.
* '''[[PKZIP]]''': 파일 압축을 빠르게 표준화한 압축 유틸리티.
* '''[[ProComm]]''', '''[[Qmodem]]''', '''[[Telix]]''': [[모뎀]] 통신 프로그램.
* '''[[QEMM]]''', '''[[386MAX]]''': 도스 메모리 관리 유틸리티.
* '''[[볼랜드 사이드킥|사이드킥]]''': 팝업 개인 정보 관리자.
* '''[[터보 파스칼]]''', '''[[터보 베이직]]''', '''[[터보 C]]''', '''[[터보 어셈블러]]''': 모두 [[볼랜드]]의 [[통합 개발 환경]]의 일부.
* LIST 유틸리티: ASCII나 HEX 형태로 파일을 볼 수 있다.
* '''[[워드퍼펙트]]''': [[워드 프로세서]]의 하나로, 현재는 [[마이크로소프트 윈도우|윈도우]] 플랫폼용으로 제작된다.
* '''[[우드스타]]''': 초기 워드 프로세서.

== 같이 보기 ==
* [[도스 명령어 목록]]
* [[도스 셸]]
* [[도스 API]]
* [[cmd.exe]]
* [[COMMAND.COM]]
* [[글라도스]]

== 각주 ==
{{각주}}

== 외부 링크 ==
* {{웹 인용|url=http://www.ii.pw.edu.pl/~borkowsm/dos.htm |title=DOS - where hardware is the only limit |access-date=2010-08-29 |url-status=dead |archive-url=https://web.archive.org/web/20100815001119/http://www.ii.pw.edu.pl/~borkowsm/dos.htm |archive-date=2010-08-15}}
* [https://archive.today/20121209035503/http://purl.oclc.org/net/Batfiles/ Batfiles: The DOS batch file programming handbook]
* {{웹 인용|url=https://www.pcmag.com/news/the-rise-of-dos-how-microsoft-got-the-ibm-pc-os-contract|title=The Rise of DOS: How Microsoft Got the IBM PC OS Contract|website=pcmag.com|access-date=2022-12-24}}
* {{웹 인용|url=https://www.jumpjet.info/Application-Software/DOS/sfn.htm|title=Application Software - DOS Short File Name Family|website=www.jumpjet.info|access-date=2020-02-07|archive-date=2020-02-17|archive-url=https://web.archive.org/web/20200217192920/http://www.jumpjet.info/Application-Software/DOS/sfn.htm|url-status=}} "(...) An archive of carefully hand selected FREE [and [[abandonware|abandoned]]] software for DOS."

{{운영 체제}}
{{전거 통제}}

[[분류:도스| ]]
[[분류:미국의 발명품]]
[[분류:디스크 운영체제]]