Windows 95를 처음 설치하려고 하면 PC 사용자는 그래픽이 없는 지루한 텍스트 인터페이스를 보게 됩니다. DOS가 문자로 "그래픽을 시뮬레이션"할 수 있다는 것은 사실이지만 Windows 팀은 이전에 사용 가능한 코드를 활용하여 더 현명한 접근 방식을 취하기로 결정했습니다.
30년 넘게 윈도우 개발에 참여한 마이크로소프트 직원 레이먼드 첸(Raymond Chen)이 자신의 유명한 'OldNewThing' 블로그에 새로운 글을 게재했다. 소프트웨어 프로그래머는 최근 고객 PC의 다양한 사용 시나리오를 수용하기 위해 세 가지 다른 운영 체제 환경을 사용하는 매우 복잡한 프로젝트인 Windows 95 설치 및 설정 경험에 대해 다시 논의했습니다.
Chen은 MS-DOS가 그래픽을 잘 관리했기 때문에 Microsoft 엔지니어가 이론적으로 그래픽 설정 응용 프로그램을 개발할 수 있었다고 말했습니다. 그러나 DOS의 그래픽 처리 방법은 매우 원시적이고 시간이 많이 걸렸습니다. 프롬프트 기반 운영 체제는 이미지가 화면에 표시되는 것을 적극적으로 방지하지 않지만 프로그래머는 모든 그래픽 기능을 수동으로 구현해야 합니다.
Chen은 MS-DOS가 개별 픽셀을 그리기 위해 BIOS를 호출하는 것 외에는 어떤 그래픽 기본 요소도 제공하지 않는다고 설명했습니다. 어떤 경우든 BIOS 기반 접근 방식은 이상적이지 않습니다. 프레임 버퍼(그래픽 카드 메모리)에 직접 액세스하는 것만으로 그래픽 작업 성능이 최소한으로 향상되기 때문입니다. 요약하자면, Windows95 설치 팀은 이론적으로 처음부터 자체 그래픽 라이브러리를 작성해야 했습니다.
그리고 이것은 시작에 불과합니다. Windows 95의 최소 요구 사항에는 VGA 그래픽 카드가 포함되어 있으므로 팀에서는 CGA나 EGA와 같은 이전 세대의 그래픽 카드를 고려할 필요가 없었습니다. 설치 프로그램은 일부 대화 상자를 표시해야 했기 때문에 프로그래머는 빠른 단축키로 창과 단축키 사이의 키보드 "탭"을 지원하는 새로운 창 관리자를 작성해야 했습니다.
또한 설정은 일본어, 중국어와 같은 표의 문자 기반 알파벳을 지원하는 동시에 간단한 애니메이션도 관리해야 합니다. Chen은 이 모든 추가 작업이 자체 보호 모드 관리자를 통해 메모리 확장/확장을 완벽하게 지원하면서 Windows 95 환경을 부팅하는 데 필요한 "기본" 인프라에 통합되어야 한다고 말했습니다.
이로 인해 개발자는 Windows 95 설정으로 부팅하기 위해 새 운영 체제를 작성해야 하는데, 이는 Microsoft가 이미 해당 작업에 가장 적합한 제품을 판매하고 있기 때문에 시간 낭비입니다. Chen씨는 Windows 95 설정의 최종 버전에 사용된 Windows 3.1 런타임에는 MS-DOS에서 "그래픽을 시뮬레이션"하는 데 필요한 모든 것이 포함되어 있으며 자체 비디오 드라이버, 그래픽 라이브러리, 대화 상자 관리자 등을 사용하여 완전히 디버깅되었다고 설명했습니다.
오늘날까지 Microsoft는 여전히 동일한 코드 루프를 사용합니다. 최신 버전의 Windows에서는 설정 프로세스를 시작하려면 여전히 "작은" 운영 체제를 설치해야 합니다. 이 최소 운영 체제 환경은 이제 Windows PE(Windows 사전 설치 환경)이며, 운영 체제 자체에 문제가 있는 경우 Windows를 복구하는 데에도 사용됩니다.