O powstawaniu Windows. Jak tworzono najpopularniejszy system na świecie: skok na kasę

Strona główna Aktualności
Skok na kasę (fot. Shardayyy Photography)
Skok na kasę (fot. Shardayyy Photography)

O autorze

Microsoft wszedł w lata dziewięćdziesiąte w sposób odważny i bez gwarancji sukcesu. Zasilany pieniędzmi z niesłabnącej sprzedaży przestarzałego MS-DOS, skonfliktowany z IBM w sprawie porzuconego OS/2 i nieposiadający systemu operacyjnego odpornego na przyszłość. Posiadany (jeszcze) Xenix nie nadawał się na domowe komputery osobiste, a NT wraz z Cairo stanowiły jedynie mglistą obietnicę i odległą przyszłość, w którą wierzyli nieliczni. W konsekwencji, Microsoft sprzedawał oprogramowanie serwerowe oparte o OS/2, a za środowisko graficzne oferował... Windows.

Ten sam Windows, który jeszcze niedawno miał umrzeć. I który wyrósł z przejściowej aplikacji dla MS-DOS, uznanej już wcześniej za ślepą uliczkę. Jednak wersja dla 386 oraz późniejsze wydanie 3.0 udowodniły, że starzejący się produkt można rozszerzyć o wielozadaniowość i tryb chroniony. Trzecia wersja Windows, pracując w trybie chronionym, zapewniała łatwiejszy dostęp do megabajtów pamięci (choć nie rozwiązało to problemu braku zasobów systemowych). Obecna w niej wielozadaniowość "grzecznych" aplikacji MS-DOS była w dodatku prawdziwą wielozadaniowością (preemptive, wywłaszczająca harmonogramowo), zapewniającą zasoby na podstawie decyzji planisty.

Jak sprzedać słaby produkt

Paradoksalnie, aplikacje Windows były... mniej wielozadaniowe, niż uruchomione w oknach programu MS-DOS. Oparcie API o kolejkę komunikatów oraz potężny bagaż naleciałości historycznych sprawiały, że programy same musiały informować środowisko, że akurat nic nie robią. Gdy któryś z nich się zawiesił, Windows dostawał czkawki. W najgorszym przypadku mógł się zamrozić, a nieco lepszym – poczęstować niebieskim ekranem, a często po prostu degradacją stabilności. Problem wielozadaniowości nigdy nie został rozwiązany w 16-bitowych Windowsach, ale mierność sprzętowa komputerów osobistych sprawiała wtedy, że nie była to paląca kwestia.

Istniały inne kwestie, których dodanie pozwoliłoby zmienić skuteczny produkt w niezaprzeczalny hit. Jedną z nich była konwencja wizualna. W ramach prac nad Windows 3.0 wprowadzono do środowiska graficznego bardzo wiele ikon oraz zmieniono nazwy programów tak, by ich obsługa nie wymagała czytania opasłych instrukcji. Choć (dostępny dziś jako open source) Menedżer Plików jest horrorem UX-owym, jest on czymś znacznie lepszym niż dawne "Środowisko Wykonawcze MS-DOS". Usprawnienia graficzne kontynuowano więc w wersji 3.1 Windows, czyniąc system jeszcze przyjaźniejszym. Testy wykazywały jednak, że środowisko mogłoby być lepsze. Minęło kilka lat, zanim sztab ekspertów doszedł do wniosku "aha, pasek zadań!".

Multimedia i DTP

Ponieważ Microsoft nie dysponował jeszcze żadnym systemem, którym mógłby zawojować cały rynek komputerów (małych i dużych), postanowiono podgryźć chociaż Macintosha. W owym czasie kwestiami wyróżniającymi Maka była obsługa multimediów (zwłaszcza w modelu IIGS) oraz narzędzia DTP. Dlatego do Windows 3.1 dodano obsługę multimediów: model sterownika MCI, umożliwiający komunikację z kartami dźwiękowymi oraz kamerami. Aby używać dźwięku, nie trzeba było ładować sterownika MS-DOS. Zamiast tego wystarczył sterownik Windows. Była to kolejna rzecz do obsługi odebrana DOS-owi. Aby zachęcić ludzi nie tylko do multimediów, ale i do DTP, Windows 3.1 wprowadził obsługę czcionki TrueType. Sam interfejs środowiska korzystał z czcionek rastrowych, ale nowy Word umiał wykorzystywać skalowalne czcionki, a pozostałe programy nie potrzebowały już narzędzi od Adobe.

Mimo stosowania jednobajtowego kodowania, Windows 3.1 został wydany w wielu nowych wariantach językowych, między innymi po polsku. Pozwoliło to jeszcze mocniej rozszerzyć popularność Windows, także na państwa gdzie nie wychowywano się na pecetach, bo były za drogie. Rozpoczęcie pracy na komputerze od razu ze środowiskiem graficznym wymagało zatem mniej wiedzy wstępnej niż poprzednio. W czasach, gdy obsługa komputera nie była umiejętnością oczywistą, takie zalety są bardzo ważne.

Sieć

Przygotowano także wersję dla grup roboczych, obsługującą sieć. Wydanie to miało kilka zalet. Po pierwsze, likwidowało konieczność konfigurowania sterowników do kart sieciowych oraz dostawców protokołów z poziomu MS-DOS. Po drugie, stanowiło konkurencję dla stosu sieciowego Novell (o wiele lepszego, choć drogiego), zmniejszając zależność już nie tylko od Adobe, ale i od Novella. Wreszcie, infrastruktura sieci Windows umożliwiała łatwe dodawanie kolejnych protokołów, potencjalnie otwierając Windows do internetu.

Dzięki temu, komputer ze środowiskiem Windows, korzystając pod spodem z archaicznego MS-DOS, mógł pracować w trybie chronionym z obsługą megabajtów pamięci, stosować ochronę przed kolizją zapisu, używać multimediów, napędu CD-ROM i sieci, a także stosować 32-bitowy dostęp do dysków oraz dyskową pamięć podręczną. Wszystko to bez ładowania żadnych narzędzi MS-DOS poza sterownikiem pamięci wysokiej (HIMEM).

W drodze do Chicago

A to jeszcze nie wszystko. Microsoft pracował nad dodawaniem kolejnych 32-bitowych składników do Windows. Kilkaset kilobajtów asemblera planisty trybu chronionego w Windows/386 było początkiem przejścia archaicznego Windows do pełnej obsługi procesora 386, bez konieczności pisania nowego systemu. Dodany do Windows 3.11 w 1994 roku stos TCP/IP był wewnętrznie 32-bitowy. Opracowywany na potrzeby Windows NT podsystem Win32 doczekał się swoich podzbiorów: wydania Win32c (nad którym pracowano w projekcie Chicago) oraz Win32s, dodającego obsługę aplikacji 32-bitowych do Windows 3.11. Aby nie sabotować sprzedaży nowszych wersji Windows, Win32s był dość ograniczony i stanowił bardziej próbkę dla programistów, celem przyzwyczajenia do pisania nowych aplikacji.

Dzięki powyższym usprawnieniom, Windows 3.11 stał się maszyną do zarabiania pieniędzy. Jeszcze niedawno skazywana na zapomnienie platforma okazała się być na tyle nośna, że pozwalała wykorzystać część możliwości układu 386. Paradoksalnie jednak, próby skłonienia Windows do użycia 386, choć skuteczne, pokazywały konieczność stworzenia systemu ogólnego przeznaczenia, zaprojektowanego dla 32-bitowej platformy. Ponieważ jednak Windows NT wciąż był zbyt ciężki, potrzebne było kolejne rozwiązanie przejściowe. Wraz z Windows NT, Microsoft zaoferował więc Windows 95. O relacji między nimi, parę słów w przyszłym tygodniu.

© dobreprogramy
s