Robert Triggs / Urząd Androida
TL;DR
- Nowy, potężny układ Qualcomm Snapdragon 8 Elite Gen 5 niestety nie obsługuje nowej funkcji terminala Linux w systemie Android.
- Dzieje się tak, ponieważ funkcja ta wymaga obsługi „niechronionych” maszyn wirtualnych, czego nie oferuje najnowszy, wysokiej klasy układ Qualcomm.
- W rezultacie użytkownicy chcący uruchamiać aplikacje komputerowe dla systemu Linux na Androidzie muszą obecnie korzystać z urządzenia z chipem Google, MediaTek lub Samsung.
Qualcomm zawsze wykonywał świetną robotę, budując potężne, a jednocześnie wydajne procesory mobilne, ale trudno znaleźć zadania w świecie rzeczywistym, które naprawdę wystawiłyby te procesory do granic możliwości. Dzieje się tak dlatego, że większość aplikacji na Androida opiera się na najniższym wspólnym mianowniku — tanich urządzeniach ze znacznie wolniejszymi procesorami niż telefony flagowe. Z drugiej strony wiele aplikacji dla systemu Linux jest przeznaczonych dla osób posiadających wydajne stacje robocze, ponieważ Linux jest popularny wśród zaawansowanych użytkowników i programistów.
Dzięki nowej funkcji terminala Linux można teraz uruchamiać wiele z tych aplikacji dla systemu Linux na urządzeniach z systemem Android. Jednak nie każde urządzenie z Androidem ma dostęp do terminala Linux, ponieważ ma dwa wymagania, których wiele urządzeń nie spełnia.
Po pierwsze, wymaga dostępności na urządzeniu Android Virtualization Framework (AVF), ponieważ wykorzystuje framework do tworzenia maszyny wirtualnej Debiana. AVF jest częścią projektu Android Open Source Project (AOSP), więc jest dostępny dla wszystkich producentów, ale to nie znaczy, że będzie działać od razu na wszystkich urządzeniach. Na szczęście Google współpracował z głównymi dostawcami krzemu, w tym z Qualcomm, aby dodać obsługę odpowiednich implementacji hypervisorów – oprogramowania tworzącego maszyny wirtualne i zarządzającego nimi – do AVF. Większość urządzeń uruchamianych z systemem Android 16 obsługuje funkcję AVF od razu po wyjęciu z pudełka, ale wiele urządzeń, które aktualizują się do tej wersji, również ją obsługuje.
Drugim wymaganiem jest obsługa „niechronionych” maszyn wirtualnych, tj. maszyn wirtualnych, których pamięć może być szeroko dostępna przez system operacyjny hosta. Aplikacja Linux Terminal nie działa obecnie na urządzeniach, które ją obsługują chroniony Maszyny wirtualne, tj. maszyny wirtualne, których pamięć nie mogę być szeroko dostępne dla systemu operacyjnego hosta. Paradoksalnie oznacza to, że urządzenia mogą obsługiwać bezpieczniejsze zastosowania AVF, takie jak wykrywanie zagrożeń na żywo przez Play Protect, ale nie mogą obsługiwać bardziej niepewnych zastosowań, takich jak terminal Linux. W praktyce właśnie dlatego Samsung Galaxy Z Flip 7 obsługuje terminal Linux, ale nie Galaxy Z Fold 7, ponieważ ten pierwszy jest zasilany przez układ Exynos 2500, który obsługuje niechronione maszyny wirtualne, a drugi jest zasilany przez Snapdragon 8 Elite, który tego nie robi.

Mishaal Rahman / Władze Androida
Po lewej: Terminal Linux działający na Galaxy Z Flip 7. Po prawej: Awaria Terminalu Linux na Galaxy Z Fold 7.
Obecnie istnieje krótka lista chipsetów obsługujących zarówno maszyny wirtualne AVF, jak i niechronione maszyny wirtualne, ale niestety lista ta nie obejmuje każdy Platformy Qualcomm Snapdragon. Mieliśmy nadzieję, że wszystko się zmieni wraz z premierą Snapdragona 8 Elite Gen 5, ale niestety tak nie jest. Użytkownik telegramu MlgmXyysd wspólny obraz pokazujący, że terminal Linux nie działa na Xiaomi 17 Pro z procesorem Snapdragon 8 Elite Gen 5. Komunikat o błędzie informuje, że „niechronione maszyny wirtualne nie są obsługiwane na tym urządzeniu”. Sprawdziliśmy, czy tak było, prosząc MlgmXyysd o sprawdzenie wartości parametru „ro.boot.hypervisor.vm.supported’I’ro.boot.hypervisor.protected_vm.supported’ właściwości systemu; pierwsza była pusta, druga miała wartość „true”, co oznacza, że chipset obsługuje tylko chronione maszyny wirtualne, tak jak jego poprzednik.

Biorąc pod uwagę, że terminal Linux działa na Xiaomi 15T Pro z procesorem MediaTek, jasne jest, że problemem jest tutaj chip Qualcomm. Skontaktowaliśmy się z Qualcomm, aby zapytać, dlaczego jego chipsety nie obsługują niechronionych maszyn wirtualnych i czy planuje dodać obsługę, a rzecznik firmy przesłał nam następujące oświadczenie:
„Naszym priorytetem jest dostarczanie technologii, która spełnia zmieniające się potrzeby naszych partnerów OEM i ich konsumentów końcowych, a w miarę jak ekosystem Androida stale poszerza zakres zastosowań wirtualizacji, jesteśmy gotowi wspierać pojawiające się wymagania, w tym niezabezpieczone przypadki użycia, takie jak terminal Linux, jeśli pojawi się zapotrzebowanie rynku”.
To stwierdzenie sugeruje, że Qualcomm nie uważa, że terminal linuksowy jest na tyle ważny, aby dodawać do niego obsługę, co jest niefortunne, ponieważ moim zdaniem terminal linuksowy jest jedną z najbardziej obiecujących nowych funkcji Androida od lat. Przy pewnej konfiguracji umożliwia uruchamianie pełnych aplikacji komputerowych dla systemu Linux, które nie są dostępne na Androidzie, takich jak GIMP i LibreOffice. Głównym celem Google w projekcie jest umożliwienie tworzenia aplikacji na Androida bezpośrednio na urządzeniach z Androidem, co z pewnością wymagałoby dużej mocy. Firma wskazuje również na inne ekscytujące możliwości, takie jak uruchamianie gier za pośrednictwem terminala.

Mishaal Rahman / Władze Androida
Przy obecnym stanie rzeczy, jeśli chcesz skorzystać z potężnych możliwości oferowanych przez terminal Linux, będziesz musiał unikać wszelkich urządzeń wyposażonych w chip Qualcomm Snapdragon. Obecnie tylko urządzenia z Tensorem G1 lub nowszym, Dimensity 9400+ lub nowszym lub Exynos 2500 obsługują terminal Linux. Miejmy nadzieję, że w przyszłości lista ta powiększy się o układ Snapdragon, ale Qualcomm będzie musiał podjąć działania — i nie będzie się tym przejmować, chyba że ludzie dadzą im znać, że chcą tej funkcji.
Nie chcę przegapić tego, co najlepsze Władze Androida?


Dziękujemy, że jesteś częścią naszej społeczności. Przed opublikowaniem przeczytaj nasze zasady dotyczące komentarzy.