Kończy się listopad, a wraz z nim do końca zbliża się również nieubłaganie rok 2007. W tej sytuacji powstaje pytanie: czy istnieje szansa na wydanie, przez zespół związany z Haiku, pierwszej wersji alpha systemu jeszcze w tym roku? Zobaczmy zatem w jakim stanie system jest już dzisiaj i czego mu ewentualnie brakuje do, tak przecież wyczekiwanej, wersji alpha.
W tym miesiącu skorzystałem z okazji i przeprowadziłem w dniach 9-12 listopada testy Haiku na nieco starszej maszynie (AMD Duron 1000 MHz, 256 MB RAM-u, karta graficzna GeForce 2MX) - chciałem dzięki temu wprowadzić nieco różnorodności do cyklu artykułów związanych z ewolucją Haiku, a także przeprowadzić testy na możliwie najbardziej obsługiwanym sprzęcie.
Sprawdzenie Haiku na podzespołach, do których dostępne są sterowniki pozwoliło mi na lepszą ocenę aktualnych możliwości Haiku. Nie mogłem też nie skorzystać z okazji do dokonania kilku porównań możliwości Haiku z BeOSem R5 (na moim nowym sprzęcie są pewne komplikacje z uruchomieniem BeOSa ze względu na fakt, że nie obsługuje on większych ilości RAM-u). Przeprowadzając testy miałem jednak świadomość faktu, że Haiku nie zostało poddane kilku koniecznym optymalizacjom, które z pewnością muszą mieć miejsce przed premierą jakiejkolwiek wersji testowej systemu. Wyniki tych testów można traktować więc jedynie w kategoriach ciekawostki. Przejdźmy więc do konkretów.
Uruchomienie Haiku trwało na testowanym komputerze około 22 s. BeOS potrzebuje na start na tej samej maszynie tylko 15 s. (oczywiście po zainstalowaniu sterowników Ide_replacement). Natychmiast po starcie systemu mojej karcie sieciowej zostały przydzielone odpowiednie adresy IP (stary dobry RealTek i sieć oferująca DHCP) - bez żadnego ustawiania uzyskałem więc dostęp do internetu. Karta graficzna również została poprawnie wykryta i mogłem w odpowiednim panelu bez problemu wybrać odpowiednią rozdzielczość i odświeżanie ekranu. Niestety do pełni szczęścia zabrakło mi obsługi karty dźwiękowej - Haiku nie posiada sterowników do starego SoundBlaster'a64. Wykonałem wiele prób, by uzyskać dźwięk w Haiku (w BeOS'ie nie ma z nim żadnych problemów) - niestety wszystkie próby, łącznie z włączeniem wbudowanego w płytę główna kodeka AC97, nie dały spodziewanego rezultatu (nie wyciągnąłem fizycznie SoundBlastera z obudowy komputera i być może zaistniał konflikt dostępu do zasobów, w wyniku którego ani BeOS ani Haiku nie dały głosu na AC97).
Po sprawdzeniu działania sprzętu, przyszła pora na sprawdzenie co nowego w zakresie związanym z siecią potrafi już Haiku - powszechnie wiadomo przecież, że nowoczesny system operacyjny nie może istnieć bez internetu. Próba wysłania e-maila z poziomu wbudowanej w system aplikacji Mail skończyła się niepowodzeniem, podobnież jak analogiczna próba wykonana przy pomocy wszystkich dostępnych wersji (net_server i BONE) programu pocztowego Beam (ta aplikacja działała bez żadnego problemu na BeOS'ie R5). Test przeglądarek internetowych również wypadł nienajlepiej - najnowsze wersje SeaMonkey i Firefox (2.0.0.9) zawieszały się w trakcie uruchamiania, bądź też przy wyświetlaniu strony powitalnej. W miarę bezproblemowo działały Net+ i Opera. Natomiast miłym zaskoczeniem była z pewnością możliwość skorzystania pod Haiku z aplikacji BeGG - udało mi się nawet przeprowadzić kilka rozmów przy pomocy tego komunikatora z Haiku. Niestety stabilność sieci w Haiku nie jest zbyt wysoka, przez co aplikacje korzystające z niej zawieszają się lub zwalniają.
Trwają prace nad pamięcią wirtualną w Haiku - wciąż jednak nie ma możliwości jej włączenia z poziomu dostępnej aplikacji do tego przeznaczonej - kilkukrotne uruchomienie zawieszających się procesów (np. przeglądarek internetowych) powoduje szybkie zwolnienie działania systemu, związane z wyczerpaniem dostępnej pamięci operacyjnej. By nie zostać oskarżonym o malkontenctwo podkreślę w tym miejscu, że jedna rzecz zaskoczyła mnie w działaniu Haiku na plus - dzięki dołączanej już do obrazu systemu aplikacji packageinstaller można już bez większego problemu zainstalować w Haiku programy udostępniane w postaci plików *.pkg.
Na deser zostawiłem opis dwóch wykonanych przeze mnie testów. Pierwszy z nich dotyczył szybkości grafiki wyświetlanej przez oba systemy w programie GLTeapot. Po zainstalowaniu najnowszych sterowników grafiki (ściślej karty GeForce 2MX) autorstwa Rudolfa Cornelissena BeOS R5 osiągał wynik oscylujący w granicach 43-50 klatek. Dla wyrównania szans zainstalowałem w R5 pakiet Mesa 6.2.1 (dostępny na BeBits) - w tym momencie stary BeOS osiągnął wynik oscylujący pomiędzy 68-85 klatek. Ten sam test w Haiku (z preinstalowanym Mesa 7.0.1) dał taki sam wynik - wydajność w tej dziedzinie w obu systemach wydaje się więc bardzo zbliżona. Ponowne przeprowadzenie testów dało bardzo podobne rezultaty - tutaj więc ogłosiłbym remis - no może z minimalnym wskazaniem na R5 - średnia wartość wyświetlanych przez niego klatek była na oko minimalnie wyższa, ale może to było złudzenie :). Dalszy ciąg testów grafiki zaplanowałem na chwilę zmiany karty graficznej w testowanym komputerze - jakież zdziwienie mnie ogarnęło, kiedy okazało się, że po zmianie karty graficznej w testowanym komputerze na o kilka generacji młodszą GeForce6200 wyniki testów zarówno na BeOSie jak i Haiku były nadal takie same (w granicach 68-85 klatek) - wygląda na to, że sterownik dostępny dla naszej platformy wykorzystuje tylko mały ułamek możliwości kart graficznych i wzrastające możliwości tych układów mają dla niego małe znaczenie.
Drugi test dotyczył z kolei szybkości kompresji pliku wav do popularnego formatu mp3. Korzystałem ze znanego enkodera lame. Na testowanym sprzęcie BeOS poradził sobie z kompresją w 71 s., Haiku natomiast ta sztuka udała się w 67 s. Zwycięzcą tego testu jest więc wyraźnie Haiku, choć sięgająca 6% przewaga w tym teście z pewnością nie jest kolosalna.
Odpowiadając na pytanie zadane na wstępie, dotyczące szans na wydanie wersji testowej Haiku jeszcze w tym roku, muszę powiedzieć, że w mojej opinii szanse na to są minimalne. Chciałbym się w tym zakresie mylić, tym bardziej w kontekście tego, że Haiku ma naprawdę duży potencjał, o czym świadczyć mogą chociażby testy przedstawione powyżej, w których Haiku zostało poddane próbom bez większych optymalizacji w samym systemie. Zbyt dużo jednak zostało do zrobienia, by zakończyć niezbędne prace w ciągu jednego miesiąca, dzielącego nas od końca roku.
Poniżej lista najważniejszych zmian, dokonanych w ciągu ostatniego miesiąca w kodzie Haiku:
- dokonano usprawnień w kodzie związanym z obsługą sieci (poprawki dotyczące obsługi protokołu TCP i sterowników do kart sieciowych);
- poprawiono sterowniki do kart graficznych S3 i NVidii;
- w dalszym ciągu trwają prace nad portowaniem Haiku dla platform opartych o procesory m68k;
- dokonano kolejnych postępów w pracach nad sterownikami do obsługi Bluetooth;
- poprawiono kilka błędów w serwerze aplikacji;
- nadal trwają prace nad pamięcią wirtualną w systemie;
- kontynuowano prace nad aplikacją będącą odpowiednikiem DriveSetup;
- kolejny raz wzrosła kompatybilność Haiku z POSIX (dodano m.in. funkcje sighold i siginore);
- usprawnień doczekały się również sterowniki SATA;
- ważne zmiany zaszły także w kwestii montowania w Haiku płyt CD, które teraz można zamontować już z poziomu Trackera;
- do obrazu systemu dodano pewne elementy portu OpenSound (niestety nie miałem okazji sprawdzić, czy wbudowana karta dźwiękowa HDAudio wydaje z siebie dźwięk pod Haiku - system ma problemy z wystartowaniem na komputerze z dyskiem SATA na jednej z testowanych przeze mnie konfiguracji).
Opisane powyżej zmiany wprowadzili (kolejność alfabetyczna, najpierw stała załoga Haiku/SVN): Axel Dörfler (axeld), Bruno G. Albuquerque (bga), Ingo Weinhold (bonefish), Hugo Santos (Hugo Santos), Stefano Ceccherini (jackburton), Jérôme Duval (korli), Michael Pfeiffer (laplace), Ryan Leavengood (leavengood), Marcus Overhagen (marcusoverhagen), Michael Lotz (mmlr), François Revol (mmu_man), Oliver Ruiz Dorantes (oruizdorantes), Rudolf Cornelissen (rudlofc), Salvatore Benedetto (sbenedetto), Stephan Aßmus (stippi), oraz Varadi Zsolt Gyula, Vasilis Kaoutsis, Fredrik Modéen, tombhadac, Gerald Zając, Łukasz Zemczak.
2 komentarze
Tak… pamięć wirtualna… jej zaimplementowanie mogłoby naprawdę "ustabilizować" pracę Haiku.
Uprzedzę trochę borga (wybacz :) i grudniowy przegląd, ale bonefish ostatnio sporo pracował nad optymalizacją kernela i Haiku powinno być niedługo znacznie szybsze (np. start systemu :). Na razie jednak te zmiany są w osobnej gałęzi SVN, czyli trzeba poczekać z testowaniem (może dostaniemy prezent pod choinkę? :).
Axel poprawił kilka błędów, więc i stabilność powinna się poprawić.