1. 개요
윈도우 설치 및 복구를 위한 경량판 윈도우로, 윈도우 설치 이전에 설치 동작을 위한 간이형 운영체제이다.리눅스의 Live CD에 비유되는데 설치 전 환경을 위한 거라 용량을 줄이기 위해 핵심 부분 외의 나머지 기능들은 빠져있다. 일반적으로 보조 기억 장치 대신 RAM를 이용한 램디스크를 적극적으로 사용하여 동작하며 Windows Vista부터 완전히 램디스크로 부팅하여 동작하도록 바뀌었다. 일부러 이것을 담은 저장 매체로 부팅하지 않는 한, 일반적인 사용자가 Windows PE를 보는 건 복구 모드인 Windows RE밖에 없다.
윈도우 설치 CD나 USB로 부팅할 때 여기에 들어있는 부트로더가 램디스크를 구성하고 PE 파일들이 압축된 Boot.wim를 램디스크에 푸는 과정을 거쳐서 PE를 실행하여 윈도우 환경에 진입한다. 이 때부터 EXE 파일 실행이 가능해지며 기본적으로 PE 부팅 후 SETUP.EXE를 실행한다.
윈도우를 설치하기 위한 환경을 구성하는 용도로 사용되지만 몇몇 사용자는 PE를 개조하여 데스크톱 환경을 구성하는 경우가 있다. 다만 MS 측도 이 사실을 알고 있기에 PE는 부팅 후 72시간이 지나면 자동으로 재부팅하도록 되어 있다.[A] Windows PE의 본래 목적(Windows 설치 또는 복구용)으로 쓰든 것이든 불법 복제본으로 쓰는 것이든, 바이러스 백신 제조사에서 부팅용 백신을 위한 베이스로 쓰든 이 72시간 제한은 우회할 수 없다. 그래도 재부팅하면 다시 72시간을 측정하므로 사실상 무한정 쓸 수 있다.
2. 역사
전신은 Windows 95 설치 시에 깔리던 Windows 3.1이지만, MS-DOS에서 16비트 설치 프로그램을 구동하기 위해서였던 데다가 이떄는 따로 PE라고 불리진 않았다.서비스팩에 따라 마이너 버전이 소폭 달라진다.
2.1. PE 1.0 ~ 1.2
Windows XP의 기업용 스타터 버전이라고 할 수 있는 Windows Fundamentals for Legacy PCs에서 먼저 도입되었다. FLP는 설치 과정이 비스타랑 거의 동일한데, 정확히 말하면 바탕 화면 변경 기능은 있으나, 정작 기본으로 제공되는 바탕 화면이 아예 없어서 따로 이미지를 받아 써야 한다. 이후 나온 임베디드 포스레디 2009를 제외한 XP 계열[2]에서는 블루스크린[3] 같은 배경에서 디스크 파티션을 정한 뒤 일부 파일 복사 과정을 끝내고 재부팅하여 본격적인 설치 과정이 되어서야 GUI가 나왔으며 Windows Vista부터 부팅할 때부터 GUI가 나오게 바뀌었다.2.2. PE 2.0 ~ 3.0
Windows Vista부터 완전히 램디스크를 이용할 수 있게 되었으며 32MB 짜리 페이지 파일 등의 새로운 기능을 얻었다. 이후 7에서 3.0으로 업그레이드되지만 기반은 똑같이 Windows Vista이다.Windows 8부터는 Windows To Go라는 신기능이 생긴 관계로 리눅스의 LiveCD처럼 사용하려는 사람들에겐 굳이 필요가 없게 되었다. 복잡한 제작 과정도, 인터넷에서 iso 파일을 구해서 USB 등에 이식할 필요도 없이 클릭 한 번이면 되기 때문이다. 다만 Windows To Go는 사실상 USB에 풀 Windows를 설치하는 개념으로 봐야 하기 때문에 Windows To Go의 최소 설치사양인 '32GB 이상의 USB'를 충족시키지 못하는 환경이거나(즉 32GB 미만의 USB에 설치해야 하거나)[4] 특수 목적(예 - 리커버리용 디스크, 휴대용 미니 웹서핑 머신 등)을 위한 Windows가 필요한 경우에는 아직도 Windows PE 쪽이 유용하다.
3. 용도
개요에 나온 대로, 원래는 윈도우의 설치를 위한 환경이며 복구 모드도 PE 위에서 동작한다. Windows Defender Offline도 PE 위에서 실행된다. 몇몇 백신의 복구 디스크도 PE 기반으로 실행된다.평소에 Win PE USB를 만들어 두면 유용하다. 비밀번호를 잊어버렸거나, 컴이 바이러스에 걸렸는데 파일을 옮겨야 한다거나, 엑스키퍼나 맘아이 같은 프로그램을 삭제하거나 등등 여러 군데에 쓸 수 있다.
4. 제작 방법
전반을 직접 뜯어내어 제작한다면 방대한 작업을 해야 한다.필요 구성
- 부트로더
- Bootice를 사용한 부팅 파티션 생성, 대용량 USB가 출시됨에 따라 부팅에 쓸 파티션은 이 프로그램의 파티션 관리 프로그램에서 파티션을 나눌 수 있다.
- 운영 체제
- 기초 하드웨어 지원
- 추가 제작법은 수도 없이 많다. 대표적인 방법으로는 Winbuilder를 이용한 구축과 Windows ADK(MS 공식 홈의 다운로드 센터에서 구할 수 있다)를 설치할 때 구성 요소 선택 창에서 사전 설치 환경(Windows Preinstallation Environment)을 포함하는 것이다.
4.1. 부트로더
윈도우 설치본 CD, Windows ADK, 현재 설치한 C드라이브의 코어 파일 등 널리고 널렸다. 바이오스에서 EFI, MBR 등 레거시 부팅을 지원하는 경우 멀쩡하게 부팅이 되며 부팅이 안 되거나 문제가 있으면 이 부분을 대부분 제대로 만들지 않은 것이다. 참고로 인지도 없는 제품이나, 메이커를 불문하고 노트북 제품군에서 흔하게 발생한다.- Boot/ - MBR 부팅 방식에 쓰이며 멀티 부팅 리스트 등 각종 중요 파일을 담고 있다.
- efi/ - EFI 부팅에 쓰이며 멀티 부팅 리스트 등 각종 중요 파일을 담고 있다.
- bootmgr - MBR 부트로더
- bootmgr.efi - EFI 부트로더
- 별도 부팅 패키지 wim, esd, vhd
- 흔한 iso가 없는 이유는 iso들도 부트로더를 자체적으로 가지기 때문이다. 즉 용량 낭비가 발생한다.
BCD 설정을 MBR(/Boot/bcd), EFI(/efi/microsoft/bcd) 두 개 있으므로 파티션, 램 디스크, VHD를 설정하여 부팅하도록 한다.
4.2. 부팅용 패키지 파일
BCD를 수정하여 지정할 수 있다.- wim, esp - 주로 램 부팅에 복사되므로 원본에서 쓰기가 발생하지 않는 용도
- vhd - 별도의 파일 패키지 드라이브를 써야 하는데 기록이 유지되어야 하는 경우처럼 특수 용도
4.3. 개조판
공식 버전에는 제한이 많으므로 잘 쓰지 않는다. 하지만 설치된 운영 체제에서 필요한 파일들을 추출하여 제작한다면 정품과 다른 건 부족한 기능과 오류 정도이면서 무료 사용이 가능하다. 기능이 부족하더라도 보통 홈 버전 정도면 꽤 유용하기 때문이다. 엔터프라이즈급은 오히려 홈에서 쓰지 않는 불필요한 자원을 소비해 버린다.가장 쉽게 접근하는 방법은 이곳을 참조.
5. 제한 사항
ADK를 사용해서 제작하면 제한 사항이 따른다. x86, IA64 중에 선택하여야 하며 공식 스펙 상 최장 72시간 작동하면 꺼진다. 이유야 당연히 PE의 상업적 사용을 막기 위함으로 들어 있다. 웬만한 전문가가 아니면 제작 프로그램을 쓰는 편이 낫다. 부팅용으로는 x86을 쓰지만 다른 용도라면 AMD64, x86-64가 필수적이다(x86 시스템의 램 디스크 내용의 관련된 제약 사항 참고 바람).일반적인 설치형 Windows와는 여러 가지로 차이점이 있다. 이것은 CD/DVD/USB 등의 매체에 저장이 되는 특성이기도 하지만, Windows PE의 특성을 악용하여 서버 OS 등으로 부정 사용하려는 것을 방지하기 위한 부분도 있다.[A]
- 최소 부팅이므로 Windows API 중 많은 부분이 빠져있다.
- 명령 프롬프트는 부팅 후 72시간이 지나면 자동 종료되며 재부팅된다.
- RPC(원격 프로시저 호출), 원격 터미널, 원격 데스크톱도 지원하지 않는다.
- DFS(분산 파일 시스템) 이름 확인은 독립 실행형 루트에서만 지원되고 도메인 루트는 지원되지 않는다.
- TCP/IP, NetBIOS over TCP/IP를 통해서만 파일 서버에 연결할 수 있으며 IPX/SPX 프로토콜과 같은 다른 방법들은 지원되지 않는다.
- PE 환경에서 변경된 레지스트리나 파일 등은 재부팅하면 전혀 저장되지 않는다. 앞서 말한듯 램디스크로 동작하기 때문이다. 그런데 Windows 10에서는 HKEY_LOCAL_MACHINE 내용을 삭제해버리면 부팅이 안된다.
- 드라이브 문자는 Windows PE에서 파티션을 만들 때 연속적으로 할당되지만, Windows PE를 다시 시작하면 기본 순서로 다시 설정된다. 예를 들어 16G짜리 USB를 연결해서 Y라는 드라이브 문자를 할당해도, 재부팅하면 Y드라이브가 아닌 연속적으로 할당된 다른 드라이브로 초기화된다. 그러나 어떤 이유인지 윈도우가 설치된 C드라이브와 D드라이브가 확률적으로 바뀌기도 한다.
- Microsoft .NET(.NET Framework, .NET Core 등) 프로그램의 실행을 지원하지 않지만 윈도우 10의 ADK로 지원하게 해줄 수 있다.
- Windows PE에는 WOW(Windows on Windows), WOW64(Windows 32-Bit on Windows 64-Bit, 즉 64비트 Windows PE에서는 32비트 프로그램 실행 자체가 불가능), VDM(가상 DOS 시스템),
OS/2 또는 POSIX 하위 시스템[6]을 지원하지 않는다. - Windows 설치 프로그램을 시작하기 전에 Windows PE를 사용하여 컴퓨터의 디스크를 구성하고 분할할 수 있다.
- Windows PE는 Windows® Installer(.msi) 패키지에 포함되어 있는 응용 프로그램을 지원하지 않는다.
- Windows PE는 근거리 통신망 표준인 802.1x를 지원하지 않는다.
- Windows PE는 영어가 아닌 문자를 포함하는 대상 경로에서의 부팅을 지원하지 않는다.
6. 편법
Winbuilder로 PE를 구축하는 경우에는 스크립트로 우회가 가능하기도 하니 참고 바란다.- 포터블 앱: #1
- 인터넷을 연결하여 필요한 프로그램을 설치하여 사용하는 방법
7. 참고
버전 일람 | ||||||||||
{{{#!wiki style="margin:0 -10px -5px; min-height: 26px" {{{#!folding [ 펼치기 · 접기 ] {{{#!wiki style="margin:-6px -1px -11px" | DOS 커널 | 클라이언트 | 워크스테이션 | 서버 | {{{#!wiki style="margin:0 -10px -5px; min-height: 26px" {{{#!folding [ 임베디드/모바일 ] {{{#!wiki style="margin:-6px -1px -11px" | SKU 임베디드 에디션 | CE 커널 1996 CE 1.0 1997 CE 2.x Poket PC 2000/2002 (CE 3.0) 2002 Mobile 2003/SE (CE 4.x) 2004 Mobile 5.0/SE/6.x (CE 5.x) 2006 CE 6.0 2011 Embedded Compact 7 Embedded Compact 2013 (CE 8.0) | |||
1999 NT 4.0 Embedded 2000 Powered | ||||||||||
2002 XP Embedded(FLP 2006) 2005 Embedded for POS 2009 Embedded Standard/POSReady 2010/2011 Embedded Standard 7/POSReady 7(Thin PC) 2012/2013 Windows Embedded 8/Standard 8(Industry) 2013 Embedded 8.1 Industry | Silverlight 프레임워크 2010 Phone 7 | |||||||||
NT 커널 2012 Phone 8 2014 Phone 8.1 | ||||||||||
One 코어 | ||||||||||
<rowcolor=#212529,#e0e0e0> 2015 10 IoT 2021 11 IoT | 2015 10 Mobile | }}}}}}}}} | ||||||||
1985 1.x 1987 2.x 1990 3.x | ||||||||||
9x 기반 | 1995 (4.0) 1996 1998(SE 1999) (4.1) 2000 Me (4.9) | NT 커널 | 1993 NT 3.1 1994 NT 3.5 1995 NT 3.51 1996 1996 NT 4.0 | |||||||
NT 커널 | 2000 | 1999 2000 (NT 5.0) | ||||||||
2001 XP (NT 5.1) 2005 (x64) (NT 5.2) 2006 Vista (NT 6.0) 2009 7 (NT 6.1) 2012 8(RT) (NT 6.2) 2013 8.1(RT) (NT 6.3) | Server 2003(R2 2005) (NT 5.2) 2007 Home Server (NT 6.0) Server 2008 (NT 6.0) 2009 (R2) (NT 6.1) Home Server 2011 (NT 6.1) Server 2012 (NT 6.2) 2013 (R2) (NT 6.3) | |||||||||
One 코어 (NT 10.0) | 2015 10(버전, 2018 ( 2021 11(버전) (Factory OS) | Server 2016(Hyper-V) 2017 (반기 채널) 2018 Server 2019(Hyper-V) 2021 Server 2022 2023 (연간 채널) Server 2025 | ||||||||
개발 중 shhh... | 2025? vNext | 2028? Server vNext | ||||||||
Windows 365 | Windows Insider Program |
[A] #[2] IA64 제외. 이쪽은 Windows Server 2003 기반이라 PE가 존재한다.[3]
한글판 기준이다. 가상머신에서 설치할때는 해상도가 다르게 나오지만, 실제 컴퓨터에 설치할때는 같은 해상도이다.[4] 사실 Windows To Go는 16GB USB 메모리에도 64비트 버전으로 설치할 수는 있지만, 사용 가능한 공간이 거의 남지 않는다.[A] [6] Windows NT에만 존재하며 Windows XP부터 모두 제거된 상태다.
한글판 기준이다. 가상머신에서 설치할때는 해상도가 다르게 나오지만, 실제 컴퓨터에 설치할때는 같은 해상도이다.[4] 사실 Windows To Go는 16GB USB 메모리에도 64비트 버전으로 설치할 수는 있지만, 사용 가능한 공간이 거의 남지 않는다.[A] [6] Windows NT에만 존재하며 Windows XP부터 모두 제거된 상태다.