Historia Microsoft Windows zaczęła się w roku 1983, kiedy firma Microsoft ogłosiła, że pracuje nad produktem o nazwie Interface Manager, który był graficznym interfejsem użytkownika pracującym pod kontrolą innego produktu Microsoftu – systemu operacyjnego MS-DOS. System ten dostępny był dla komputerów IBM PC i kompatybilnych od roku 1981. Szybko jednak szef marketingu Microsoftu Rowland Hanson zaproponował nazwę Windows.

Geneza Firma Microsoft wbrew pozorom nie była na początku zainteresowana graficznymi systemami operacyjnymi. Ich tekstowy system DOS sprzedawał się dobrze, dzięki umowie z IBM. Bill Gates miał jednak na targach COMDEX zobaczyć graficzne systemy na x86 pokroju Visi On i przestraszyć się perspektywy utraty rynku na rzecz systemów łatwiejszych do użytkowania przez przeciętnego użytkownika. Zresztą na tym polegał sukces komputerów firmy Apple już w tym okresie.

Wersje 1.x

Pierwsza niezależna wersja Microsoft Windows o numerze wersji 1.0 została wydana w roku 1985. Nie była ona jednak wyposażona w bogaty wachlarz funkcjonalności, więc nie przyjęła się na rynku. Pierwotnie nazwą dla nakładki miał być Interface Manager, jednak Rowland Hanson, szef działu marketingu w firmie Microsoft przekonał resztę zespołu, że nazwa Windows zostanie lepiej przyjęta. Windows 1.1 nie był kompletnym systemem operacyjnym, a jedynie przedłużeniem systemu MS-DOS i jako taki dziedziczył wszystkie jego niedoskonałości i problemy. Dodatkowo programy dostarczane wraz z wczesnymi wersjami Windows były raczej „zabawkami” niezaspokajającymi oczekiwań klientów korporacyjnych. Pozycji pierwszych Okien nie wzmocniło przeniesienie nań mało znanego, choć mocnego wówczas programu CorelDRAW!. Windows 1.1 na większą skalę nigdy nie ujrzał światła dziennego. Wersją, którą zwykło nazywać się Windowsem 1.1 jest Windows 1.01. Windows 1.00 miał problemy z obsługą kart graficznych CGA – przy szybszym zegarze procesora technika przełączania palet kolorów desynchronizowała wyświetlanie uniemożliwiając pracę.

Kolejną przyczyną ograniczeń funkcjonalności nakładki stały się kwestie praw autorskich, w których posiadaniu była firma Apple. Dla przykładu, w produktach Microsoftu poszczególne okna mogły być ułożone wyłącznie sąsiadująco, nie mogąc na siebie nawzajem nachodzić. Pierwsza wersja Windows nie posiadała również kosza na śmieci – miejsca, gdzie można byłoby składować pliki przed ich ostatecznym skasowaniem. Firma Apple twierdziła, iż posiada prawa autorskie do wspomnianych rozwiązań. Microsoft usunął obydwa ograniczenia dopiero po podpisaniu z Apple umowy licencyjnej.

Wersje 2.x

Druga wersja środowiska Windows pojawiła się na rynku 9 grudnia 1987 i okazała się nieco większym sukcesem komercyjnym. Popularność Windows 2.0 po części wynikała z faktu dołączenia do środowiska nowych aplikacji działających w trybie graficznym – Excel i Word for Windows. Obydwa programy były w stanie po wywołaniu z linii poleceń DOS-u uruchomić środowisko Windows i zamknąć je po zakończeniu swojej pracy.

Popularność środowiska Windows zwiększyło również pojawienie się przeznaczonej dla niego wersji programu Aldus PageMaker, która do tej pory dostępna była tylko dla maszyn rodziny Macintosh. Niektórzy historycy świata komputerów uważają tę datę, kiedy to pojawił się pierwszy znaczący program przeznaczony dla Windows nie wydany przez Microsoft, za początek sukcesu środowiska.

Wersje 2.0x Windows nadal korzystały z rzeczywistego modelu pamięci, który ograniczał jej dostępną ilość do poziomu 1 megabajta (praktycznie do niecałych 640kb). W takiej konfiguracji środowisko mogło nawet pracować pod kontrolą innej aplikacji wielozadaniowej, na przykład DESQview, która pracowała w trybie chronionym procesorów 286.

Kolejne wydane wersje to Windows/286 2.1 i Windows/386 2.1. Podobnie do poprzedników, wersja 286 2.1 nadal używała rzeczywistego modelu pamięci, lecz potrafiła również zrobić użytek z obszarów pamięci wyższej (HMA). Windows/386 2.1 był już wyposażony w jądro działające w trybie chronionym z emulacją pamięci EMS standardu LIM. EMS był poprzednikiem XMS, który dopiero był w stanie zmienić topologię pamięci stosowanych w komputerach PC. Wszystkie aplikacje DOS i Windows pisane dla Windows/386 były aplikacjami rzeczywistymi, działającymi w trybie chronionym jądra, w którym otrzymywały własne maszyny wirtualne typu 8086, co było nowością wprowadzoną w procesorach 386.

Wersje 2.03 oraz 3.0 stały się celem ataków prawnych ze strony firmy Apple, twierdzącej, że nachodzące na siebie okna oraz inne cechy wyglądu i zachowania się środowiska operacyjnego były kopią opracowanego przez nią systemu operacyjnego dla komputerów Macintosh. Sędzia William Schwarzer z przedstawionych przez Apple przeciwko Microsoftowi 5 stycznia 1989 189 zarzutów oddalił wszystkie z wyjątkiem 10.

Wersja 3.x

Nakładka Microsoft Windows przeżyła swój pierwszy wielki sukces po wprowadzeniu na rynek wersji 3.0, co nastąpiło w roku 1990. Oprócz zwiększonych możliwości aplikacji natywnych (przeznaczonych bezpośrednio dla Windows) nowa wersja środowiska umożliwiała użytkownikowi znacznie lepsze niż w przypadku Windows/386 wielozadaniowe uruchamianie aplikacji MS-DOS, dzięki wprowadzeniu mechanizmu pamięci wirtualnej. Mechanizm ten znacznie zwiększył konkurencyjność klonów PC w stosunku do komputerów Macintosh. Znacznej poprawie uległa graficzna strona środowiska, dzięki nowym możliwościom oferowanym w owych czasach przez karty graficzne standardu VGA, a praca w trybie rzeczywistym i rozszerzonym procesorów 386 zezwalała na udostępnianie aplikacjom znacznie większych ilości pamięci RAM, niż było to możliwe w przypadku ich DOSowych odpowiedników, całość zaś była zarządzana o wiele bardziej efektywnie. Nakładka Windows 3.0 mogła działać w jednym z trzech trybów – rzeczywistym (), standardowym () i rozszerzonym trybie procesorów 386 (), zaś na liście procesorów kompatybilnych z nowym produktem Microsoftu znaleźć można było układy Intela od najstarszych modeli 8086/8088 poprzez 80286 do 80386. Windows podczas inicjalizacji próbował „zgadywać”, w jakim trybie ma się uruchomić, choć można to było wymusić odpowiednimi przełącznikami wpisywanymi ręcznie podczas ładowania: /r dla trybu rzeczywistego, /s dla standardowego i /3 dla trybu rozszerzonego 386. Wersja 3.0 była pierwszą wersją Windows umożliwiającą uruchamianie własnych programów w trybie chronionym, mimo że jądro trybu rozszerzonego 386 było zaledwie zmodyfikowanym jądrem trybu chronionego pochodzącym z wcześniejszej wersji Windows/386.

Ze względu na konieczność zachowania kompatybilności wstecznej, wszystkie aplikacje dla Windows 3.0 były kompilowane w trybie 16-bitowym, nie wykorzystując w pełni możliwości oferowanych przez 32-bitowe procesory linii 386.

Kilkanaście miesięcy po premierze wersji 3.0 na rynku pojawił się produkt rozszerzony o pewne możliwości multimedialne o nazwie Windows 3.0 with Multimedia Extensions 1.0. Środowisko było częścią pierwszych pakietów multimedialnych (zawierających napęd CD-ROM oraz kartę dźwiękową, najczęściej standardu Sound Blaster Pro oraz tytuły takie, jak MS Bookshelf). Zastosowane w rozszerzeniu cechy stały się podstawą funkcji multimedialnych zaimplementowanych w Windows 3.1.

Wymienione wyżej cechy Windows 3.0 oraz rosnące poparcie rynkowe dla produktu pozwoliły na sprzedanie w ciągu dwóch lat poprzedzających pojawienie się wersji 3.1 około 10 milionów kopii. Środowisko Windows 3.0 stało się ważnym źródłem dochodów dla Microsoftu i zmusiło firmę do przeanalizowania niektórych swoich wcześniejszych planów rynkowych.

OS/2

W drugiej połowie lat 80. Microsoft wraz z IBM opracowywał system operacyjny OS/2, który miał być następcą MS-DOSa. System miał w pełni wykorzystać wspomniane wyżej możliwości oferowane przez tryb chroniony procesorów Intel 80286, udostępniając między innymi 16 megabajtów pamięci operacyjnej. OS/2 w wersji 1.0, który na rynku debiutował w roku 1987, pozwalał na wymianę danych oraz wielozadaniowość, był też w stanie uruchamiać programy DOSowe.

Graficzny interfejs użytkownika o nazwie Presentation Manager (PM) pojawił się w systemie OS/2 dopiero w wersji 1.1, wydanej w roku 1988. Mimo że pojawiły się głosy o wyższości PM nad rozwiązaniami przyjętymi w Windows, zastosowany API był niekompatybilny z Windows (jednym z przykładów niezgodności było to, że Presentation Manager umieszczał punkty ekranu o współrzędnych „0,0” w lewym dolnym rogu ekranu, zgodnie z kartezjańskim układem współrzędnych, podczas gdy w systemach Windows punkt początkowy leżał w lewym górnym rogu ekranu, podobnie, jak czyniła to większość komputerowych systemów okien). Wersja 1.2, która debiutowała w roku 1989 wprowadziła nowy system plików o nazwie HPFS, zarzucając system FAT wykorzystywany w Windows.

W początkach lat 90. na linii IBM-Microsoft pojawiły się tarcia. Do tej pory obydwie firmy współpracowały w dziedzinie tworzenia systemów operacyjnych i miały wgląd w kod tworzony przez partnera. Microsoft zamierzał rozwijać nadal Windows, zaś IBM wyraził nadzieje, ze dalsza współpraca będzie polegała na rozwoju OS/2. W celu złagodzenia napięć obie firmy ustaliły, ze IBM zajmie się pracami nad OS/2 w wersji 2.0 (następcy wersji 1.3 oraz Windows 3.0), zaś Microsoft stworzy nowy system operacyjny, OS/2 3.0, który stanie się następcą wersji 2.0.

Porozumienie niedługo później upadło, kończąc współpracę IBM i Microsoftu. IBM nadal rozwijał OS/2, zaś Microsoft zmienił nazwę (nadal wtedy nieukończonego) systemu OS/2 3.0 na Windows NT. Obydwie firmy utrzymały prawa do technologii OS/2 i Windows stworzonych w trakcie współpracy. Windows NT powstał jednak zupełnie od nowa (patrz poniżej).

Po opublikowaniu przejściowej wersji 1.3 systemu OS/2 (która miała naprawić niedociągnięcia serii 1.x), IBM wydał OS/2 2.0 w roku 1992. Wersja ta była dalece usprawniona: zawierała między innymi ulepszony, obiektowy graficzny interfejs użytkownika pod nazwą Workplace Shell (WPS), udostępniający użytkownikowi pulpit, co w opinii wielu osób było najlepszą cechą OS/2. Wiele cech pulpitu opracowanego przez IBM zostało skopiowanych przez Microsoft w systemie operacyjnym Windows 95. OS/2 w wersji 2.0 cechował się również w pełni 32-bitowym API, pozwalał na gładko realizowaną wielozadaniowość, umożliwiał przejęcie kontroli nad całością 4 megabajtów adresowalnej przez procesory 386 pamięci operacyjnej. Niestety pewne porcje kodu systemu nadal były 16-bitowe, co wymuszało między innymi konieczność stosowania 16-bitowych sterowników urządzeń. Było to przyczyną ciągłego braku sterowników dla nowszych urządzeń. Wersja 2.0 była również w stanie uruchamiać programy napisane dla MS-DOSu i Windows 3.0, gdyż IBM w wyniku rozwiązania umowy z Microsoftem zachował prawa do kodu zarówno systemu DOS, jak i środowiska Windows.

W trakcie rywalizacji obydwu rozwiązań kwestia zwycięzcy tak zwanych „wojen pulpitowych” była nierozstrzygnięta. Jednak w końcowym rozrachunku OS/2 nie uzyskał wystarczającej popularności rynkowej, mimo że IBM wydawał późniejsze, usprawnione wersje swojego systemu (patrz niżej).

Windows 3.1 i NT