Blogs

Running Haiku Release 1 Alpha 4.1 in VirtualBox 4.2

Blog post by agmsmith on Thu, 2012-12-20 00:15

I've had some time to play around with Haiku R1A4.1 and got it working nicely in VirtualBox, running under Windows, and also on real hardware. Along the way I made a few notes (InstallingHaikuR1A4.html) on how to get it going. I'll describe the significant things you need to know in the rest of this blog post.

Stack & Tile web questionnaire closes on Sun 23/11/12

Blog post by czeidler on Mon, 2012-12-10 23:06

Thanks to everybody who has participated in the Stack & Tile web questionnaire! We have got much more participants than we had expected! So far there were 140 complete responses. I think this is great number! From these 140 participants there were 75 who had already tried S&T. It also shows that the Haiku community is not that small at all. This should be quite motivating for all developers :).

The questionnaire closes on Sun 23/11/12. So if you haven't participated yet but you are willing to fill the questionnaire please do so before this date.

Stack & Tile web questionnaire

In case you have already participated but you have some more interesting screenshots of how you use Stack & Tile feel free to send them directly to me (czei002@aucklanduni.ac.nz). Thank you!

UPDATE: the database is up again and the survey is working now.

Videos of BeGeistert 026 are up

Blog post by humdinger on Thu, 2012-12-06 18:00

A bit late, but finally I managed to process my recordings of the talks at BeGeistert 026 "Marathon". The quality isn't terrific, looks like the picture was much better last time at BG 024, when we apparently didn't darken the room so much. Audio might be slightly better, as I have used compression and a bit of filtering following advice from Haikollegue Sean Collins.
I used Avidemux under Linux for de/muxing the audio track and encoding the final AVIs, and Audacity for processing the audio. The extensive video editing (j/k) was done with Clockwerk and WonderBrush under Haiku, which isn't at all bad, just very unpolished...

Anyway, if you haven't already, check out DaaT's sheepish report of BeGeistert 026 at IsComputerOn.

Now, on to the videos. All hosted on youtube, you can watch them with a few apps even under Haiku (shamefully plugging UberTuber)...

The ARM keeps moving...

Blog post by ithamar on Thu, 2012-11-22 20:58

The ARM keeps moving...

For people not watching the commit list closely, I've continued to find time to work on Haiku/ARM. So far, things look promising. No new screenshots of any kind though, but more investigation work done to get an idea of what I'm getting myself into. All in all, I'm actually quite pleased...

In my local repository (of which most is actually in the Haiku repository as well, bar some really nasty hacks that not even I dare to commit publicly) I've been able to get to the point where all content for a standard Haiku image is being built (the famous haiku-image target, for the devs reading this). Ofcourse, lots of architecture specific stuff is still stubbed out, but it means that at least there are no surprises lurking to get things to compile at least...

Since I've got a little more confidence in the amount of work needed to get Haiku/ARM up and running on at least a single target, I'll be writing up a proposal for a Haiku, Inc contract. This contract would enable me to focus more on Haiku/ARM for a longer stretch, reserve time in my schedule, with as a target getting some form of basic userland running on a single Haiku/ARM target. From start of next year I should be able to dedicate more time to Haiku/ARM if the contract proposal would get accepted.

Now, I'm not certain I'll commit to any specific target. For the moment, I'm considering to stick to QEMU/Verdex as my main target, but I might switch to some real hardware if needed. Also, some kind of userland could simply be a working "bash" shell, but ofcourse my real hope is to get far enough to see app_server up and running, with Tracker/Deskbar greeting us....

Anyway, short version is that I'm hoping to get Haiku/ARM far enough to make it very easy for other people to join in and port Haiku/ARM to their favorite device, with as little work as possible. It should become as easy as adding hardware support to Haiku/x86, if all goes well.

Time to get back to that source tree.... ;)

Update: Contracts for Package Management

Blog post by mmadia on Sun, 2012-11-11 14:31

As you may recall during August, Ingo Weinhold and Oliver Tappe were each accepted for two-month development contracts relating to package management[1]. Originally, their start dates were slated for sometime around November or December. Due to their current contractual obligations with other employers, they will not be able to begin as early as planned. The revised start date is now around February or March.

Code Sprint 2012: Debugger

Blog post by anevilyak on Sat, 2012-11-10 14:44
As seen in Ingo's excellent presentation on Haiku's built-in debugging tools, our graphical debugger, while getting quite capable, is still missing a number of important features. As such, I made it my goal this week to try and resolve as many of those as I was able to.

ARM progress!

Blog post by ithamar on Fri, 2012-11-09 19:04

The ARM is moving

After porting the basic VM code from X86 to our ARM port, it has been pretty much 2 years since I worked on it. Last weekend, BeGeistert 026, gave me a chance to work on it again, for a couple of days (nights?) in a row, and I tried to make the most of it.

Besides working on Haiku/ARM it was great to meet up with many of the people I already knew but had not seen for a long time, as well as finally meet the new people behind the names and posts I had followed over recent times.

Anyway, with much help from the people around me I was able to bring Haiku/ARM to the point where it now boots, lights up a couple of icons, and then fails to boot as the boot disk is not found. This means that scheduling, interrupts, and basic vm operations all work!

However, in the process of getting it that far in fairly limited time I had to make a couple of shortcuts that really need to be cleaned up before trying to bring up userland, and see Tracker/Deskbar appear ;)

Hardware Variation

One of the obvious ones is the problem that currently, the kernel will only run so far on the Verdex (Gumstick) target. This is due to the fact that things like timers and interrupts are handled differently between different System-On-Chips. This means that even at this very low level, we'll need to introduce some type of abstraction to be able to run on more then just the Verdex/PXA270 SoC.

As people reading the commit list might have noticed, Francois has commited basic code to support Flattened Device Tree (FDT). This is a way of describing full hardware layout, in a standardized format. This format has been used by OpenFirmware implementations, like the PowerPC machines from Apple, the DEC Alpha machines, and many more.

FDT is becoming mandatory for Linux support on ARM as well, which means there are more and more of these board description files available for hardware we want to run on. The intent therefore is to implement FDT support, making it (theoratically) possible to support newer hardware with only a new FDT file, but also being able to build a single kernel that can run on any ARM device, assuming the necessary drivers are available ofcourse.

If I can find the time, I'll write up a post about FDT, if Francois does not beat me to it ;) In docs/develop/ports/arm/urls.txt Francois was so kind to store an extensive list of URLs about FDT, so feel free to browse if you are interested in helping out.

Where's that page?

Another thing that needs work is the ARM VM implementation. Currently, all it really does, is the page table bookkeeping, but permissions are not handled, memory/caching types are not handled, not to mention that ARMv6 and ARMv7 support will need more work as well. My idea is to finish the VM for ARMv5 first, and then implement v6 and v7 support in a proper OO manner, by making subclasses of the base ARM VM classes.

ARMv5 has no builtin support of tracking page status bits that our VM expects (dirty/accessed), so we'll have to work around that. However, ARMv7 (and some ARMv6) do have that, so there's a fair amount of work to do.

Drivers and Busses

No I'm not talking of public transport here :P For a properly usable embedded ARM target, there's a lot of things besides the kernel proper that will need implementing. There's SPI and I2C controllers to support, there's storage like raw NAND, or MMC/SD to support, many things that aren't support as of yet in Haiku for other architectures.

Some of these will present new features for our non-ARM targets too (SD/MMC support will make Laptop users happy, I imagine), but quite few will not but will be critical to get a seriously usable system on ARM devices...

Where to go from here?

As the current target is a QEMU supported platform, anyone who wants to can join in and help out. I invite anyone interested in helping out with Haiku/ARM to follow the guide for compiling for ARM and start poking at the code. I tend to have very little time in general, payed work taking up the most of my time, so don't just wait for me to complete the port!

However, feel free to contact me with questions/flames/anything if you want, as I'll try and help out as much as I can, there's nothing I want more then for this port to reach completion!

Syndicate content