Montag, 3. März 2008

Haiku Activity Update #5

Simon Tyler gibt uns einen weiteren Überblick über Haikus Entwicklung vom 6.-25. Februar.

Die Highlights sind Fortschritte zum "Self-hosting" (Haiku unter Haiku kompilieren), ein neuer Kernel Allocator, der schneller und anpassungsfähiger ist, verbesserter VMWare Image Unterstützung im Buildsystem, automatische Syscall Restarts und wie immer eine Menge Bugfixe für höhere Stabilität und verbesserte Darstellung.
Michael Lotz vermeldet, dass er den gesamten Haiku Sourcecode per SVN herunterladen, kompilieren und das herauskommende Image in QEMU (mit kqemu) laufen lassen konnte. Und das alles unter Haiku! Das ist schon ganz nah am "Self-hosting". Unter anderem verhindern einige Bugs, die benutzten Speicher nicht mehr frei machen, dass alles in einer Sitzung ohne Reboot vonstatten gehen kann. Der Kompiler, flex und QEMU waren zudem noch BeOS R5 Versionen, die ebenfalls erst noch für Haiku kompiliert werden müssen.

Kernel
Im Kernel waren vor allem Axel Dörfler, Ingo Weinhold und Michael Lotz am werkeln. Dabei wurden u.a. Bugs beseitigt durch die Treiber und Bibliotheken doppelt eingeladen wurden, Anpassungen am Scheduler führten zu Geschwindigkeitssprüngen beim kompilieren von z.B. perl und ssh. Michael schuf einen schnelleren und anpassungsfähigen Kernel Allocator und stattete ihn mit zusätzlichen Debugging Funktionen aus. Axel begann mit einem Node Monitoring System für Treiber und devfs. Dadurch wird neue Hardware mal sehr schnell einsatzbereit sein, indem man einfach den entsprechenden Treiber in das zugehörige Verzeichnis kopiert.

Buildsystem
Dank Samuel Rodriguez Perez kann das Buildsystem jetzt von FreeBSD direkt auf eine Partition schreiben. Von Ingo stammt ein fast vollständiges Haiku Entwicklungs-Paket im Buildsystem. Zusammen mit Axel kam es zu Änderungen wodurch VMWare Images schneller erstellt werden können, indem nur die Änderungen beim Kompilieren berücksichtigt werden und die zusätzlichen Programme und Dateien nicht mehr angefasst werden.

Hardwareunterstützung
Multi-Track CDs können jetzt korrekt gemountet werden, z.B. auch die BeOS/Zeta Install-CDs. Oliver Ruiz Dorantes arbeitet im Rahmen einer Haikuware Bounty an einem Bluetooth Stack. Einige HW-Konfigurationen können jetzt erstmals booten, nachdem Marcus Overhagen den PCI Bus Manager entsprechend bearbeitet hat. Ein Intel ipro100 Netzwerk Treiber fand seinen Weg ins Repository.

Netzwerk
Durch Axels Arbeit können nun auch große Datenmengen über ein TCP Socket auf einmal gesendet werden. Außerdem wurde ein Bug beseitigt, der oft zu einem KDL ("Kernel Debugging Land") Absturz beim Beenden von Firefox führte. Die Network Stack Treiberfunktionen wurden um ein Syscall Restart erweitert.

Interface/app_server
Stephan Aßmus beschäftigte sich mit den Klassen BTextControl und BTextView. Im app_server aktivierte er Double-Buffering in 32bit VESA Modes, was einen erstaunlichen Geschwindigkeitsgewinn brachte. Zudem verbesserte er das Verstecken von Overlays wie den Mousecursor und beseitigte einige Bugs und doppelten Code. Rene Gollent ("Vision") entwickelte einen Patch für BListView der u.a. das Auslesen von Koordinaten einzelner Objekte beschleunigt. Durch Stefano Ceccherini kann nun ein TermView in andere Anwendungen eingebettet werden. Außerdem ist nun der Zeilenumbruch in BTextView schneller.

Translation Kit
PCX, EXR (ein offenes HDR Format) und RAW Translators kamen neu hinzu. Jerome packte gemeinsam benutzten Code in eine Shared Library und änderte alle vorhandenen Translators so ab, dass sie diese Bibliothek benutzen statt immer denselben Code zu vervielfachen.

Anderes
James Kim machte Christof Lutteroths Layout Model Haiku-kompatibel. Christof selbst hatte einige Änderungen an der Begrenzungs-Berechnung beizusteuern. Ithamar passte den print_server so an, dass z.B. USB Drucker automatisch erkannt werden können. Stefano spielte ein Update der Bash Shell zur Version 3.2 ein. Julun verbesserte die BString Implementation, die dadurch auch etwas schneller wurde. Alexandre Deckner patchte die Keymap Preferences, so dass sie nun weniger flackern.

News von der Mailing List
David McPaul hat es gemeinsam mit anderen geschafft nasm zu kompilieren. Im Rahmen eines freundlichen kleinen Flamewars zwischen emacs und vi Anhängern, hat man sich für Pe als Standard-Editor für Haiku entschieden.
Dann gab es da eine Diskussion welche Auswirkungen das Portieren von Widget Toolkits wie wxWidgets haben könnten. Auf der einen Seite bekommt man auf kurze Sicht schnell Portierungen vieler Programme. Die Kehrseite ist eine Verwässerung der Haiku Philosophie und Konsistenz. Auch könnte das Angebot an portierten Anwendungen die Entwicklung Haiku-spezifischer Software behindern.
Fredrik Holmqvist hat Firefox erfolgreich für ein mit gcc4-kompiliertes Haiku (im Gegensatz zum BeOS-kompatiblen gcc2.95) gebaut. Somit kommen nun auch alle mit dieser Konfiguration in den Genuss eines modernen Browsers; so wie schon länger alle anderen, die einfach einen BONE Firefox von BeBits benutzen.

News von der Entwickler Mailing List
Es wurde besprochen wie Portierung von Standard Tools wie perl und autoconf koordiniert werden könnten. Urias verwies dabei auf BePorts als passenden Ort dafür. Da Haiku eine bessere POSIX Kompatibilität als BeOS hat, sprach sich Axel dafür aus bereits existierende Ports durchzusehen, ob man auf etwaige numehr unnötige Behelfsmaßnahmen verzichten und so den Code vereinfachen kann.
Die Entwickler-Ecke der Webseite wurde aus Performance-Gründen auf einen anderen Server umgezogen. Dadurch kam ein Bug ans Tageslicht, der kurzzeitig das Kommentieren einzelner Tickets durch Normal-User verhinderte. Niels hat das schon repariert.
Gerald Zajac hat eine Treiber für S3 Grafikkarten der Trio und Virge Familie fertig gestellt.
Der Wunsch die Email Einstellungen direkt aus Mail heraus zu starten führte zu einer Diskussion wo generell der passende Ort für ein "Preferences..." Menü wäre. Ebenso für andere anwendungsbezogene Funktionen wie "About..." und "Quit". Ein eigenes "Application" Menü, evtl. repräsentiert durch ein Icon, wurde angedacht. Es fiel jedoch noch keine Entscheidung.

News von der Kernel Mailing List
Craig Magina hat sich auf der Liste vorgestellt. Er hat etwas freie Zeit und möchte dem Projekt helfen. Herzlich Willkommen!

Keine Kommentare:

Kommentar veröffentlichen