Issues
Mar - Oct 2005 Links |
November 2004 NewsletterSyllable is an in-development open source operating system for the home and small office user. The Syllable Development Newsletters are condensed reports on the past month's activity -- highlighting progress made and other project updates. For previous months, please see the links on the left of this page. Red text below denotes direct quotes from developers. There were 171 mailing-list posts in November. A quiet month in terms of discussion, but with plenty of development work in various areas nonetheless -- kernel updates, Glibc work and plans for a meetup. Read on for the summaries... Contents
1. Miscellaneous updatesEver-busy Arno Klenke announced a bundle of patches updating several areas of the OS, seeing if there were any objections before checking them into the source tree: ata driver: Syllable's new 'Kernel Dude', Jake Hamby, had a look at the kernel patches before checking them in. A few days later, Henrik Isaksson posted a quick message about his latest work: I've checked in a few small patches: He also updated the CatFish app translation tool. After some technical discussion, Jake fixed the Radeon driver to work a 1400x1050 resolution, and finally, in the last few days of November, Arno posted a screenshot and mini changelog of his recent ColdFish music player developments: here is a screenshot of the next coldfish version. The changes are: 2. Glibc progressThe C library is an essential component in most modern operating systems, and Syllable uses GNU libc for this purpose (found in just about every Linux distribution). Currently, Syllable's version is slightly dated, so project lead Kristian Van Der Vliet had spent several months updating it the latest release -- 2.3.3. After much graft he was pleased to announce: Fresh the Terminal not five minutes ago: Various developers cheered this news, while Jake Hamby offered to do some testing. Shortly after, Vanders posted a quick note that he'd coerced the 'make install' phase into working, before stumbling on a strange bug that had many coders baffled. It wasn't long before the problem was resolved; from here, Vanders posted more promising news and started uploading his work: [Insert ticker-tape and brass band here] With the files in place, Jake replied with some technical musings on executable formats: Excellent news, Vanders! My excursions into glibc and gcc and binutils have always left me feeling uneasy. Each one has so many dependencies on the others, not to mention kernel dependencies. Also, all of the information you need to customize for a particular platform is scattered among so many different config files, not to mention #ifdefs in the code. He continued with findings from his own research. Glibc may not be an exciting, cool, immediately noticeable component of the Syllable OS, but it's still crucially important -- this kind of foundation work is a great step forward. 3. 3D enginesBrent P Newhall asked the list: Has anyone ported any 3D game engines to Syllable? I don't mean things like Dan O'Neill's Quake 2 port; I mean actual 3D engines that could be used to create, oh say, a native Syllable 3D game. A quick response from Jamie Clarkson listed the possibilities: The Quake 2 engine is probably the best you'll get, it's highly optimized for software rendering. Most useable engines nowadays are completely hardware oriented. Brent replied that he wasn't looking for a port -- particularly of a FPS -- but a standalone engine. David Gentle suggested OGRE before the thread petered out. 4. Kernel patchesContinuing his work on the kernel, Jake Hamby detailed the fixes and updates he'd just checked in to the source tree: I've just checked in the kernel improvements I mentioned last week. The main feature is that SSE/SSE2 instructions are now enabled so if you have a Pentium 3 or higher, or Athlon with SSE support, you should now be able to compile programs such as mplayer with SSE support. Here's my note from ChangeLog.Kernel: 5. Messaging systemsJonas Jarvoll pointed out Muscle ('Multi User Server Client Linkage Environment') and considered how it could be used in Syllable: I found this announcement on Freshmeat: This sparked off an interesting and lively debate. Brent P Newhall tried to find a practical use for this system, while Matt Emson pointed out that Muscle used to compile under AtheOS, many moons ago. Meanwhile, Jonas responded with his thoughts on how the system could be useful: Some ideas, perhaps all not realistic: Matt wasn't convinced by all of these; he agreed that it had some use in databases, but wasn't always appropriate everywhere else. In response to Jonas' last two paragraphs, he also added: I think you have to be careful here. MUSCLE is a seperate API. It is not something to merge in to Syllable. MUSCLE existed before Syllable, and had an AtheOS port. Forking MUSCLE and merging it with Syllable will yield little benefits in the long term. MUSCLE is in continuous development; it is used in a commercial product from LCS. They use LINUX now, but LCS were early adopters of BeOS and the BeBox, and indeed, early versions of MUSCLE ran on customised BeBox hardware. This is why the whole MUSCLE API seems familiure - it originates from the same source, namely BeOS. Jonas replied that he didn't suggest merging MUSCLE into Syllable, Tom Marshall chipped in with some thoughts on remote desktops, and Matt claimed it was pointless to 'reinvent the wheel' -- particularly when MUSCLE already existed in various platforms. In response, Daniel Gryniewicz noted that 'Syllable has never been about "Cross Platform"', which prompted the final post in the thread, from Matt: Jonas mentioned MUSCLE with great enthusiasm. I pointed out that you may as well use MUSCLE as is - it will allow for cross platform messaging. I then mentioned that there were many advantages to using MUSCLE over writing an insular Syllable orientated protocol. After all - this is just another protocol over TCP/IP - lets not get precious about Syllable or draw ambiguous and irrelevant comparisons to GUI toolkits. This is not what I was talking about. MUSCLE is just another protocol for transfering packets of info over TCP. It's HTTP, not SMB or NFS etc. It's more high level than raw sockets, but less high level than, say FTP. 6. New LiveCD releaseBurningShadow's LiveCDs are useful for trying Syllable without the hassles of partitioning -- they run entirely off CD. This month, BS announced the latest release with various new goodies: It's time for a new LiveCD, and this one includes some extra drivers, and keymaps. Another package is also released today, and contains the same as the LiveCD, but this one is intended for use on already installed systems. The extra-pack can be found here: http://syllable.burningshadow.dk/download.php?view.17 The LiveCD can be found here: http://syllable.burningshadow.dk/download.php?view.18 7. C++ in the kernelA discussion on programming languages and ideal applications soon led to that never-ending debate, C++ code in the kernel -- it still flares up on the linux-kernel list periodically. William Rose was all in favour of high-level languages for kernel coding, as he posted: I am increasingly convinced that letting the kernel use certain useful language features such as objects, exceptions and possibly language-based threading constructs would make the kernel a whole lot simpler to write and possibly more reliable. C++ is a good mix of offering these features (especially with a toolkit like ACE or Concurrent C++) and having a large pool of available programmers. With a relatively standard ABI now available (though there are still some incompatibilities) and patches demonstrating the use of C++ in the Linux kernel, I think that there is a lot of potential for C++ to improve the readability and stability of the kernel. Jake agreed that C++ could enhance readability in some cases, citing Apple's I/O Kit work as an example, but wasn't overly thrilled with the other issues involved: I'm very skeptical that adding the runtime support for things like exceptions would be useful for Syllable at this point. Exceptions in particular introduce a whole new set of potential code paths through the kernel that are not explicitly specified like traditional error code handling. I think the majority of the benefits from C++ would come from taking advantage of the stricter type checking and object orientation, not from exceptions, global constructors, or RTTI. Here onwards, William and Jake debated the technical pros and cons of in-kernel C++ code, both putting forward solid arguments. 8. SYL-CON planningThe initial thoughts on SYL-CON, a meetup for Syllable developers and users, were covered in last month's SDN. Michael Saunders raised the issue again, suggesting various ideas and trying to gauge how many people were interested: A month or so back, there was a thread discussing SYL-CON -- a proposed meetup for developers and users. According to the website's survey, an impressive 44 people have said they'll come; another 80 are in the "maybe" camp. When Will_H and I were first chatting about this, we were thinking of, perhaps, 10 to 20 people -- these results are brilliant! Even if only half the definites turn up, it'll still be more than enough for a great little event IMO. Brent P Newhall replied with info on when he was free, along with suggestions for the event. He also noted that, despite the initial response to the survey, things didn't always turn out so well: I've been involved in organizing a few events similar to SYL-CON, and in my experiences, many grand plans were proposed, most of which collapsed. I'd prefer that we work out a simple, foolproof plan that will at least get us all together for a day or so. I'd be thrilled to go to a full-scale convention with reserved hotel space and sponsorship, and I hope that will happen, but I think it's most important that we hammer out something simple, which we can extend as much as feasible. Michael agreed that too much ambition could be a Bad Thing(tm). Meanwhile, several other developers joined in the discussion, offering their preferred dates and locations, and the ball started rolling -- February in or around London seemingly the most popular at this point. 9. AEdit 1.6 releasedJonas Jarvoll announced the stable release of his changes to AEdit, Syllable's default text editor: After a few weeks of testing I have decided to release 1.6. AEdit is the native texteditor for Syllable and is included in the distribution. The main difference between 1.5 (which is probably what you are using if you have just installed Syllable) and 1.6 is that 1.6 supports multiple documents using tabs. A screenshot of 1.6 can be found at http://www.nocrew.org/software/syllable/aedit-screenshot-1.6.png Edited by Michael Saunders. If you have any other Syllable-related news, just drop me a line. |