Zbliża się koniec października, więc czas na małe podsumowanie postępów prac nad Haiku. Oczywiście tylko podsumowanie jest małe, bo praca wre i postęp jest całkiem spory.

Zgodnie z tradycją usunięto mnóstwo błędów i dokonano wielu usprawnień. Najwięcej tego typu zmian nastąpiło w obsłudze pamięci wirtualnej (VM) i systemów plików (VFS) co, wraz ze sporą ilością poprawek dotyczących blokujących się nawzajem wątków oraz sterowników, powinno znacząco poprawić stabilność systemu.

Do sterowników kart graficznych dodano odczytywanie informacji o monitorze, dzięki czemu lepsze będą domyślne ustawienia w przyszłości, a już teraz ustawienie np. rozdzielczości są zapisywane dla danego monitora. To powinno ułatwić życie osobom korzystającym z różnych monitorów, na przykład posiadaczom laptopa podłączającym się do różnych monitorów, w zależności od miejsca pobytu. Komputerów przenośnych dotyczy także jedna z mniejszych zmian, która jednak daje spory efekt, a jest nią domyślne wyłączenie numlock w aplikacji DeskCalc uruchamianej na laptopach - koniec z denerwującymi cyframi zamiast liter! :D

Z nowych rzeczy warto chyba wymienić sterownik do kart dźwiękowych opartych o chipset ice1712 (choć podejrzewam że nie są one u nas zbyt popularne) oraz aplikację Łukasza Zemczaka - PackageInstaller, dzięki której można będzie instalować oprogramowanie udostępniane w plikach .pkg.

Poniżej dokładniejsza lista zmian, pod koniec której znajduje się mini-niespodzianka :)

  • poprawiono sterowniki sieciowe do kart opartych o chipset bcm440x i bcm570x;
  • kontynuowano prace nad dokumentacją;
  • wprowadzono zmiany w obsłudze kart graficznych i uaktualniono sterowniki w celu wykorzystania przez nie informacji uzyskanych od monitora;
  • poprawiono i usprawniono aplikacje: Icon-o-matic, DeskCalc, Clock, StyledEdit i MediaPlayer;
  • rozbudowano pthreads o zmienne warunkowe (ang. condition variables);
  • importowano część aplikacji atftp - serwer TFTP;
  • poprawiono obsługę SATA (w wersji AHCI) i USB (OHCI i UHCI);
  • uaktualniono dane o strefach czasowych;
  • poprawiono sterowniki do kart dźwiękowych zgodnych z AC97 oraz dodano nowy sterownik dla kart opartych o chipset ice1712;
  • poprawiono sterowniki do kart graficznych Intela, nVidii i ATI (Radeon);
  • poprawiono mechanizm otwierania wielu dokumentów na raz przy pomocy tej samej aplikacji;
  • dodano "domyślny" sterownik dźwięku, który właściwie tylko udaje że jest :);
  • dodano obsługę dwu-kliku w sterowniku USB;
  • poprawiono stare i dodano nowe testy służące programistom do sprawdzania działania różnych części systemu;
  • usprawniono obsługę okien (m.in. dodano skróty klawiaturowe (mini/maksy)malizujące oraz chowające okno :);
  • poprawiono obsługę pamięci wirtualnej (VM), systemów plików (VFS) i sieci;
  • uaktualniono aplikacje ctags i unrar;
  • dodano przydatne funkcje nanosleep(), gethostname(), sethostname() i lockf() - dzięki czemu zgodność z POSIX wzrosła jeszcze bardziej ;);
  • zmieniono nazwę systemu plików z "DOS" na "FAT";
  • poprawiono sterowniki do systemów plików FAT, BFS, i NFS;
  • poprawiono obsługę zakładek, menu, paska statusu w oknach, list i pól tekstowych;
  • usunięto starą i dodano nową klasę ComplexLayouter, dzięki której programistom łatwiej jest układać elementy interfejsu w oknach aplikacji;
  • poprawiono okna ustawień sieci, układu klawiatury i czasu oraz okno gry sudoku;
  • poprawiono mechanizm potoków (ang. pipes - pozwalający aplikacjom na czytanie i zapisywanie danych od/do innych aplikacji tak jakby to były dane z pliku);
  • dodano ikonki w formacie plików używanym przez aplikację Icon-o-matic;
  • poprawiono obsługę overlay w klasie BBitmap;
  • usunięto sporo błędów powodujących blokowanie się wątków, okien i całych aplikacji;
  • poprawiono mechanizmy zarządzające dyskami i partycjami;
  • dodano aplikację PackageInstaller obsługującą instalację oprogramowania w plików .pkg;
  • poprawiono registrar, który zarządza uruchomionymi aplikacjami;
  • zoptymalizowano algorytmy do obliczania czasu;
  • rozpoczęto prace nad implementacją obsługi Bluetooth;
  • dodano obsługę architektury PPC m68k (ale jeszcze nie dokończoną :).

Rozpoczęcie prac nad implementacją Bluetooth z pewnością ucieszy m.in. posiadaczy telefonów komórkowych korzystających z tego protokołu.

Za to ostatnia z wymienionych zmian powinna zainteresować nielicznych (w naszym kraju :) posiadaczy komputerów klasy PPC z procesorem m68k. Jesteśmy ciekawi czy ktoś z czytelników ma taki komputer i czy może próbował już uruchomić na nim Haiku?

Tekst przeglądu został poprawiony dnia 25 października 2007 dzięki komentarzom uważnych czytelników :)


Opisane powyżej zmiany wprowadzili (kolejność alfabetyczna, najpierw stała załoga Haiku/SVN): Axel Dörfler (axeld), Ingo Weinhold (bonefish), Stefano Ceccherini (jackburton), julun, Jérôme Duval (korli), Ryan Leavengood (leavengood), Marcus Overhagen (marcusoverhagen), Michael Lotz (mmlr), François Revol (mmu_man), Niels Sascha Reedijk (nielx), Oliver Ruiz Dorantes (oruizdorantes), Philippe Houdoin (phoudoin), Rudolf Cornelissen (rudlofc), Salvatore Benedetto (sbenedetto), Stephan Aßmus (stippi), oraz Bek (HOST team), DeadYak, Hüseyin Erdemir, Pier Luigi Fiorini, Rene Gollent, Vasilis Kaoutsis, Jérôme Leveque, mjw, Fredrik Modéen, Ioan Molnar, Peter Moulder, pieterpan, Łukasz Zemczak.