Windows 11 może nie przyspieszyć po obiecanych poprawkach [OPINIA]

Microsoft składa obietnice zwiększenia wydajności Windows 11, koncentrując się na podstawach, jak Pasek Zadań, Start i eksplorator plików. Choć wieści te same w sobie są pozytywnym zaskoczeniem, to konieczność składania takich deklaracji jest nieco przerażająca.

Windows 11Windows 11
Źródło zdjęć: © dobreprogramy | Kamil Dudek
Kamil J. Dudek

Co się stało z tak podstawowym komponentem, jak systemowy menedżer plików? Co doprowadziło to takiej redukcji responsywności? Można oczywiście obwiniać spadającą jakość programistów i przenoszenie pracy do Indii, ale to raczej skutek niż przyczyna.

Stare pomysły

Powodów jest wiele i część z nich to paradoksalnie próba realizacji założeń projektowych systemowej powłoki, opracowanych jeszcze w ramach prototypu Chicago. Eksplorator uległ następnie poważnemu przeobrażeniu wraz z systemem Windows Vista. Jego dzisiejsza postać to w większości właśnie wersja z Visty, z bardzo wieloma przyległościami. Ale żeby najlepiej to wyjaśnić, jak zwykle, trzeba się cofnąć o mniej więcej trzydzieści lat.

Gdy Microsoft dodał Internet Explorera do systemu, jego "integracja" nie polegała wyłącznie na tym, że postawiono na pulpicie ikonę, której nie dało się sensownie usunąć. Przede wszystkim chodziło o wyodrębnienie silnika HTML do oddzielnej biblioteki, którą dało się osadzać. Następnie umieszczono taki komponent ("Shell Document View") jako główny element okna menedżera plików.

Rozszerzenia powłoki

Aby to osiągnąć, zastosowano mechanizm rozszerzeń powłoki. Jest to technologia pozwalająca eksploratorowi ładować "wtyczki" dodające nowe funkcje, rozszerzające funkcje eksploratora o obsługę dodatkowych formatów plików (jak certyfikaty), protokołów komunikacyjnych (jak WebDAV, FTP) i innych, jak np. podgląd obrazów.

Przez pierwsze kilka lat, rozszerzenia powłoki miały całkowitą swobodę dodawania nowych funkcji. Prędko doprowadziło to bardzo poważnych problemów z bezpieczeństwem. Możliwe było zarówno nadużywanie domyślnych rozszerzeń (malware korzystający z desktop.ini, autorun.inffolder.htt) oraz nieco zbyt łatwe rejestrowanie własnych, złośliwych.

Vista rozpoczęła proces redukowania rzeczy, które wolno podmieniać i rozszerzać. Proces ten postępował przez lata, gubiąc kompatybilność z nieco zbyt pobłażliwą platformą rozszerzeń. W Windows 11 usunięto na przykład już całkowicie możliwość dodawania rozszerzeń do paska zadań.

Niemniej, większość nowych funkcji eksploratora jest implementowana jako rozszerzenia. Część korzysta z udokumentowanych mechanizmów, a część nie. Pobieżny przegląd rozszerzeń ukaże nam skalę obfitości dodatków. Zaczynając od tych obecnych od wielu lat (Windows 7), będą to regulacja głośności, Windows To Go, Device Stage, Bluetooth, Sync Center, wypalanie DVD, HomeGroup (!), udostępnianie, kryptografia i DFS. Ale rozszerzeń jest znacznie więcej. Na przykład OneDrive (ładowany po kilka razy), "nowoczesne udostępnianie", chmurowe SSO, obsługa chmurowych plików zalążkowych, nowe formaty plików skompresowanych i centrum akcji.

XAML i UWP

Istnieją jednak rozszerzenia wbudowane znacznie głębiej, a nie jako wtyczki. Głównym winowajcą jest nowy interfejs zaimplementowany jako "Windows.UI.FileExplorer" pod nazwą "File Explorer Xaml Island View Adapter". Ten nieszczęsny "XAML Island" to zasługa Windows 10. UWP nie przyjęło się do takiego stopnia, że Microsoft zdecydował się opracować rozwiązanie umożliwiające mieszanie nowych i starych elementów interfejsu użytkownika w jednej aplikacji.

Problem w tym – co przyznali sami programiści Microsoftu zmuszeni do zaimplementowania w tym przeglądarki zdjęćUWP w takiej postaci jest co prawda łatwe w programowaniu, ale rezultaty są olbrzymie, ciężkie i powolne. UWP wykonuje mnóstwo weryfikacji dotyczących działania na odpowiedniej platformie (telefon, gogle, stół, tablet) oraz tworzy setki pomocniczych abstrakcji, przez które aplikacja staje się bardzo ciężka.

Między innymi dlatego zdecydowano się na inny podział w kolejnych wersjach WinUI. XAML Islands, choć "tymczasowe", okazało się głównym sposobem na zmodernizowanie interfejsu eksploratora plików. Choć jest to nieco nadmierne uproszczenie, XAML Island w eksploratorze to olbrzymia kontrolka narysowana "nad" klasycznym, Vistowym eksploratorem, dźwigającym jednocześnie dziesiątki innych rozszerzeń.

Alternatywą byłoby po prostu przepisać aplikację od zera i rozmawiać z nowymi bibliotekami "bardziej bezpośrednio". Ale nikt nie chce się tego podjąć. Przepisywanie systemowej powłoki to niewdzięczne zadanie, zwłaszcza że wiele rzeczy niżej w stosie technologicznym polega na starej implementacji. A jako, że nie da się jej zmodernizować, jedynym rozwiązaniem jest nakleić nowe UI nad stare. Uznano to za warte zachodu. Efekty są komiczne.

Trudne poprawki

Posiadacze wprawnego zmysłu obserwacji (lub powolnego komputera) dostrzegą, że każde nowe okno eksploratora najpierw rysuje się jako biały prostokąt (nawet w trybie ciemnym), następnie rysuje olbrzymi górny pasek menu (pusty), który po chwili maleje i jest przykrywany nowym, innym, z zakładkami. Wynika to z tego, że Windows wciąż najpierw rysuje okno z Windows 8, korzystając z UI Windows 7 (COM+XAML). Robi tak, bo tak jest zrobiona aplikacja. Aby jej nie dotykać (i nie zepsuć), nad niedorysowanym do końca oknem malowana jest wyspa XAML z interfejsem Windows 11.

Trudno powiedzieć, jak nadchodzące usprawnienia wydajnościowe w WinUI mogą poprawić ten stan. Powłoka Windows przechodzi przez zbyt wiele warstw rysując samą siebie i dotychczas jedynym rozwiązaniem okazywało się wracać do starych rozwiązań (co zaczęło się już pod koniec cyklu życia Windows 10). Wydawałoby się, że konieczne jest po prostu przepisanie eksploratora, ale tego raczej nikt się nie podejmie. Zresztą, efekty mogłyby być mało satysfakcjonujące…

Wybrane dla Ciebie
ZACZEKAJ! ZOBACZ, CO TERAZ JEST NA TOPIE