Rozwiązywania tajemnic systemu Windows 95 ciąg dalszy. W ostatnim, listopadowym wpisie na ten temat, wyjaśnialiśmy Wam, dlaczego Windows 95 korzystał z trzech systemów podczas instalacji. Teraz Raymond Chen, wieloletni deweloper Microsoftu, wrócił do tego tematu, by rozwikłać kolejny sekret, wokół którego narosły wątpliwości po wcześniejszej publikacji. Pamiętacie instalator Windows 95? Być może do dziś zastanawiacie się, dlaczego wyglądał dość osobliwie.
Instalator Windows 95 był tekstowy nie bez powodu
Nasz wpis dotyczący wypowiedzi Raymonda Chena związanej z procesem instalacji Windows 95 wzbudził Wasze uzasadnione zainteresowanie. Gorąco zachęcamy do jego lektury, by lepiej zrozumieć ten dzisiejszy. W sieci pojawiły się liczne komentarze związane z kwestią wykorzystania w opisywanym wcześniej procesie MS-DOS. Internauci zachodzili w głowę, dlaczego instalator Windows 95 bazujący na MS-DOS był tekstowy, skoro oprogramowanie to obsługuje wyświetlanie grafiki. Chen odniósł się do tego interesującego aspektu.
Mówiąc delikatnie, MS-DOS był dość prymitywny w kwestiach graficznych i pamięta to chyba każdy programista starej daty. To właśnie po stronie programistów była cała brudna robota – wywołanie BIOS-u do narysowania pojedynczego piksela działało bardzo ospale. jeżeli chciano osiągnąć wydajność na odpowiednim poziomie, trzeba było uzyskać bezpośredni dostęp do bufora ramki.
Po pierwsze, trzeba było stworzyć bibliotekę graficzną do stworzenia czegoś efektowniejszego niż pojedynczy piksel. W porządku, Windows 95 wymagał karty VGA, więc programista odpowiedzialny za instalator nie musiałby przejmować się CGA lub EGA. Do ogarnięcia! Instalator to jednak coś więcej niż piksele składające się na większe elementy graficzne. To także okna dialogowe. Trzeba by było tutaj zatem napisać menedżera okien działającego ponad biblioteką graficzną. Przydałaby się także obsługa klawiatury, prawda? No i obsługa znaków z języków pokroju japońskiego… Za to odpowiadałby kolejny zespół ekspertów. Do zrobienia! Animacje… przydałyby się też chociażby proste animacje, a do tego potrzebny jest scheduler, potrafiący wywoływać określone zdarzenia na podstawie sprzętowego zegara, prawda? Wszystko to da się zrobić, ale tylko w teorii.
To by była para w gwizdek!
Cały ten wysiłek byłby poświęcony dla programu instalacyjnego, który, przypominam: nie ma w rzeczywistości nic wspólnego z instalacją Windows 95! Stanowił on przecież jedynie infrastrukturę potrzebną do uruchomienia adekwatnego instalatora. Wszystko to nie zmieściłoby się zresztą w 640 KB pamięci… Aby w pełni zrozumieć tę pokrętną logikę, przeczytajcie poprzedni wpis na ten temat – warto!
Widzicie już, do czego zmierzałby cały ten wysiłek? Programiści musieliby napisać tak naprawdę cały niewielki system operacyjny, mający tylko jedno zastosowanie… pozwolenie na uruchomienie w jego obrębie instalatora Windows 95. Serio, trik z uproszczoną wersją Windows 3.1 był o wiele lepszym rozwiązaniem, nie sądzicie?
Źródło: Raymond Chen @devblogs.microsoft.com