Windows 7 musi odejść: oto powody utraty wsparcia

Windows 7 musi odejść: oto powody utraty wsparcia21.01.2023 10:00
Czego brak w Windows 7?
Źródło zdjęć: © dobreprogramy | Kamil Dudek

Coraz więcej programów porzuca obsługę Windows 7. Google Drive, iTunes, FileZilla, Chrome i dużo aplikacji wykorzystujących np. Electron wymaga dziś co najmniej Windows 10, najczęściej w jednej z ostatnich wersji. Dlaczego niektórzy tak się z tym spieszą?

Użytkownicy mają na ten temat cały arsenał teorii, z których niemała część jest kompletnie nonsensowna. Jedną z popularniejszych, acz zarazem najbardziej nonsensownych, jest… spisek. Microsoft miałby bowiem dopuszczać się przekupstwa względem dostawców oprogramowania, celem skłonienia ich do wprowadzenia blokad powstrzymujących programy przed działaniem na Windows 7. Ta fantastyczna teoria miewa zaskakująco wielu zwolenników, choć jest z dość oczywistych powodów sprzeczna wewnętrznie i niespójna.

Wielu twórców oprogramowania pracuje w bezpośredniej konkurencji względem Microsoftu i tajne bratanie się z wrogiem nie miałoby uzasadnienia. Zresztą, nikt nie chce z własnej woli redukować zbioru potencjalnych odbiorców produktu. Wreszcie, niekompatybilności wcale nie są blokadami, a rzeczywistymi funkcjami, które po prostu nie działają.

Leniwi programiści na kiepskich systemach

Innym często przytaczanym powodem jest lenistwo. Programistom miałoby bowiem sprawiać zbyt wiele zachodu testowanie aplikacji na większej liczbie platform, wskutek czego wybierają najmniej wymagającą ścieżkę - czyli test wyłącznie na najnowszej wersji. Niniejsza hipoteza zakłada, że software jest najwyraźniej pisany hobbystycznie lub bez żadnej strategii - podczas gdy w procesie wytwarzania oprogramowania robi się po prostu wyłącznie to, co zarabia pieniądze.

Dalsza część artykułu pod materiałem wideo

Czy warto kupić słuchawki Huawei Freebuds 5i?

Co jest więc powodem utraty kompatybilności z Siódemką, skoro - wedle popularnej opinii - nowsze Windowsy są gorsze, cięższe i pełne samych zbędnych rzeczy? Najlepszym sposobem na znalezienie odpowiedzi na to pytanie będzie porównanie zmian w kodzie między "wspieraną" a "niewspieraną" wersją jakiegoś dużego projektu o otwartych źródłach. Doskonałym przykładem jest Chromium. Z jego głównej gałęzi wypadają właśnie spore ilości kodu właśnie w związku z utratą obsługi Windows 7. Przyjrzyjmy się diffom załączonym do ticketa #1385856.

DirectX

W plikach obsługi wejścia audio usuwane są ify zapewniające działanie w przypadku braku obsługi dźwięku 5.1 w Media Foundation AAC, debiutującej dopiero w Windows 10. Podobnie sprawa się ma z obsługą filtrów dla efektów dźwiękowych oraz interfejsem menedżera urządzeń dla DirectX Graphics Infrastructure. Zmianom ulega także działanie kamer internetowych - od teraz możliwe jest wykorzystanie systemowego API do sprawdzania czy kamera jest wbudowana i czy jest skierowana w stronę twarzy użytkownika. Na starych Okienkach nie działa również kodek VP9.

Zmiany w plikach obsługi żądań URL dotyczą wykrywania proxy. Jego obsługa była wyłączona w kodzie dla Windows 7 ze względu na nigdy niepoprawiony przez Microsoft błąd, w którym rozwiązywanie żądań proxy blokowało je na 30 sekund i zawsze kończyło niepowodzeniem. Z kolei w plikach z kodem rysującym główne okno usunięto ograniczenia maksymalnej rozdzielczości - Vista i 7 obsługiwały maksymalnie 4096x2048.

Porządki nie ominęły także silnika Blink. Usunięto wszystkie wyjątki w rysowaniu znaków za pomocą DirectWrite. Od teraz Blink korzysta z pełni możliwości tego API, zamiast wykrywać które jego funkcje są dostępne i dynamicznie dostosowywać wywołania. Blink działa w Chrome we współpracy z usługami, wykorzystując wejście np. z detektora kształtów lub tekstu. Po porzuceniu wsparcia dla Windows 7, usługi te wykorzystują natywne systemowe API, np. do OCR lub sprawdzania pisowni.

DWM

Wyrzucane są też wszystkie alternatywne sposoby rysowania okna zakładające, że kompozytowy menedżer okien (DWM) nie istnieje lub może zostać wyłączony. Obsługa całkowitego braku DWM pamiętała czasy XP, a wykrywanie jego działania - Vistę. Od teraz w Chrome cały kod rysujący zakłada, że DwmIsCompositionEnabled() zawsze zwraca prawdę, co pozwoliło usunąć sporo kodu obsługującego inne przypadki, upraszczając implementację.

Dwa programy w jednym

Jedynie skromny zestaw wprowadzonych zmian dotyczy instalatora lub launchera, które zaopatrzono w sztywną weryfikację przeciw uruchomieniu na Windows 7. Zdecydowana większość niekompatybilności to porządki: usuwanie rzeczy zaimplementowanych podwójnie. Częściowo oraz kompletnie. Błędnie oraz poprawnie. W starym oraz nowym API. I tak dalej.

Podwójna implementacja oznacza, że od początku planowano się pozbyć tej słabszej. No dobrze, ale dlaczego uzależniać wobec tego wsparcie od obsługi technicznej, a nie od udziału w rynku? Można zrozumieć porzucenie Visty, ale Siódemki wciąż używa całkiem sporo osób. W przypadku projektów tak wielkich, jak Chromium w grę wchodzi nieco inny rodzaj wsparcia: wolę naprawy błędów odnalezionych podczas prac nad programem.

Od teraz, gdy Google znajdzie naprawdę zawstydzającą fuszerkę w Siódemce - błąd uniemożliwiający dalszą pracę - Microsoft rozłoży ręce i powie, że niczego nie będzie poprawiać. Dlatego lepiej porzucić wsparcie dla takiego systemu. Problemy z działaniem zostałyby przypisane Chrome'owi. I zaszłaby konieczność ich naprawy właśnie po jego stronie.

Oczywiście, powodów jest więcej - jak na przykład kompilatory i uciekający runtime. Nie da się w nieskończoność pisać programów w starożytnym dialekcie C++, który w dodatku tylko rymuje się najwyżej z jakimś standardem. A następnie kompilować tego na Visual Studio 2010. Ale nie trzeba się sięgać tak daleko. Zmiany w Chromium pokazują całkiem jednoznacznie, jak jest koszt utrzymywania starych systemów, z wybrakowanymi API i nienaprawionymi bugami.

Kamil J. Dudek, współpracownik redakcji dobreprogramy.pl

Szanowna Użytkowniczko! Szanowny Użytkowniku!
×
Aby dalej móc dostarczać coraz lepsze materiały redakcyjne i udostępniać coraz lepsze usługi, potrzebujemy zgody na dopasowanie treści marketingowych do Twojego zachowania. Twoje dane są u nas bezpieczne, a zgodę możesz wycofać w każdej chwili na podstronie polityka prywatności.

Kliknij "PRZECHODZĘ DO SERWISU" lub na symbol "X" w górnym rogu tej planszy, jeżeli zgadzasz się na przetwarzanie przez Wirtualną Polskę i naszych Zaufanych Partnerów Twoich danych osobowych, zbieranych w ramach korzystania przez Ciebie z usług, portali i serwisów internetowych Wirtualnej Polski (w tym danych zapisywanych w plikach cookies) w celach marketingowych realizowanych na zlecenie naszych Zaufanych Partnerów. Jeśli nie zgadzasz się na przetwarzanie Twoich danych osobowych skorzystaj z ustawień w polityce prywatności. Zgoda jest dobrowolna i możesz ją w dowolnym momencie wycofać zmieniając ustawienia w polityce prywatności (w której znajdziesz odpowiedzi na wszystkie pytania związane z przetwarzaniem Twoich danych osobowych).

Od 25 maja 2018 roku obowiązuje Rozporządzenie Parlamentu Europejskiego i Rady (UE) 2016/679 (określane jako "RODO"). W związku z tym chcielibyśmy poinformować o przetwarzaniu Twoich danych oraz zasadach, na jakich odbywa się to po dniu 25 maja 2018 roku.

Kto będzie administratorem Twoich danych?

Administratorami Twoich danych będzie Wirtualna Polska Media Spółka Akcyjna z siedzibą w Warszawie, oraz pozostałe spółki z grupy Wirtualna Polska, jak również nasi Zaufani Partnerzy, z którymi stale współpracujemy. Szczegółowe informacje dotyczące administratorów znajdują się w polityce prywatności.

O jakich danych mówimy?

Chodzi o dane osobowe, które są zbierane w ramach korzystania przez Ciebie z naszych usług, portali i serwisów internetowych udostępnianych przez Wirtualną Polskę, w tym zapisywanych w plikach cookies, które są instalowane na naszych stronach przez Wirtualną Polskę oraz naszych Zaufanych Partnerów.

Dlaczego chcemy przetwarzać Twoje dane?

Przetwarzamy je dostarczać coraz lepsze materiały redakcyjne, dopasować ich tematykę do Twoich zainteresowań, tworzyć portale i serwisy internetowe, z których będziesz korzystać z przyjemnością, zapewniać większe bezpieczeństwo usług, udoskonalać nasze usługi i maksymalnie dopasować je do Twoich zainteresowań, pokazywać reklamy dopasowane do Twoich potrzeb. Szczegółowe informacje dotyczące celów przetwarzania Twoich danych znajdują się w polityce prywatności.

Komu możemy przekazać dane?

Twoje dane możemy przekazywać podmiotom przetwarzającym je na nasze zlecenie oraz podmiotom uprawnionym do uzyskania danych na podstawie obowiązującego prawa – oczywiście tylko, gdy wystąpią z żądaniem w oparciu o stosowną podstawę prawną.

Jakie masz prawa w stosunku do Twoich danych?

Masz prawo żądania dostępu, sprostowania, usunięcia lub ograniczenia przetwarzania danych. Możesz wycofać zgodę na przetwarzanie, zgłosić sprzeciw oraz skorzystać z innych praw wymienionych szczegółowo w polityce prywatności.

Jakie są podstawy prawne przetwarzania Twoich danych?

Podstawą prawną przetwarzania Twoich danych w celu świadczenia usług jest niezbędność do wykonania umów o ich świadczenie (tymi umowami są zazwyczaj regulaminy). Podstawą prawną przetwarzania danych w celu pomiarów statystycznych i marketingu własnego administratorów jest tzw. uzasadniony interes administratora. Przetwarzanie Twoich danych w celach marketingowych realizowanych przez Wirtualną Polskę na zlecenie Zaufanych Partnerów i bezpośrednio przez Zaufanych Partnerów będzie odbywać się na podstawie Twojej dobrowolnej zgody.