Google
 

Sunday, April 30, 2006

Morfik on ZDNet

ZDNet blog brings article about Morfik WebOS, wich uses Firebird 2.0 as its official database. WebOS is the the next big thing in web app development, raising the level of abstraction above the level that PHP and AJAX have achieved. With WebOS you can write very advanced web applications, very easy, very fast and very robust. No wonder it picks FB as its default database choice. Read more

Friday, April 28, 2006

David Intersimone on Borland spin-out "DevCo"

The leadership team of DevCo includes: Nigel Brown, Michael Swindell, Steve Todd, Alan Bauer, Ben Netick, and David Intersimone. They have 3-year roadmaps for Delphi, JBuilder, and Interbase. The size of DevCo will be ~250-300 at the start, i.e. about 20% of Borland's workforce. "Develop" has $100 mln in sales, about 30% of the total. Sounds like "DevCo" will be quite profitable from the start.

Read more

Common Firebird Errors and Firebird .NET Provider Exceptions

Common Firebird Errors and Firebird .NET Provider Exceptions

Jim outlines Falcon

Jim outlined Falcon at the MySQL user conference. All the Firebird concepts are in place: single file paged storage, indexes hold no data, self-tuning, multi-versioning, careful write, etc. The main design difference with Firebird is that record versions are kept in memory, with overflow to disk, i.e. the 'sweeper' thread is replaced by a 'writer' thread. Falcon is due to appear in Q3, which makes it a 90-day project .. just like Vulcan.

Read more

The Open Source Venture Capital Universe

Sys-Con discusses how VC investments in Open Source have worked and are working. Says one VC: "What I find most compelling in the OSS business models is the recent shift from the support- and services-based revenue models to the commercial open source. In the commercial open source model, about 80 percent of the product functionality is released as OSS, which guarantees a great product for most customers. The remaining 20 percent of functionality, which is useful to only large customers, is released as a low cost commercial product." Like Fyracle, you mean?

Read more

LinuxDevices on Firebird

Although most Firebird users deploy on Windows, the Linux community is increasingly discovering the benefits of this database system: easy, compact, powerful. LinuxDevices reports.

Read more

Mickos critical of 'crippled' closed-source databases

MySQL CEO Mickos told conference delegates: "There's no freedom in crippleware... I learned when I moved to the US there's no such thing as a free lunch. If a company that gives you a free version is closed source, they gain nothing unless you upgrade to the expensive version." At the same time MySQL are partnering with Microsoft, IBM's DB2 division and Oracle. Who's paying for that lunch?

Read more

Jim Starkey: Introducing Falcon (Storage Engine for MySQL)

Last session of the MySQL UC is Jim Starkey giving an introduction to the new Falcon storage engine. Jim is an icon in the database field, was the creator of MVCC and the BLOB data type. There’s a can of Falcon beer for anyone who asks a good question.

Read the Falcon intro

[Ed :When i read the word Falcon i always associate it with Millennium Falcon, Yes Jim is fighting a good cause against evil empire ;) ]

Firebird used at siemens.com

Firebird seems to be used in embedded area at siemens (amd mips processors) .
You can follow the mips porting thread on sf.net

falcon will rock on fulltext searches (mysql)

via Jeremy's blog

The good news is that the recently announced falcon storage engine should have a FULLTEXT engine that rocks. After explaining the situation a bit more, we decided that in the mean time a 64-bit MySQL with a ton of RAM is probably the only viable solution.

Xul for thought: Strange Blog behaviour and Firebird Embedded Database on Linux

[ED:Don't know what was the solution to his problems , at least firebird embedded is used by someone ;)]

Read more at xullicious.blogspot.com...

Thursday, April 27, 2006

Nigel Brown talks about IDEs future

Nigel Brown, "DevCo" general manager discusses some of the plans for Delphi and the JBuilder. Very interesting.

You can find the full interview on The Register. You can also find comments from Allen Bauer, Nick Hodges (hey, Nick, you forgot the title!), and people in the newsgroups (using Marco Cantu's AJAX frontend).

What's my take? I find it very interesting and it sheds a new light on the way DevCo could sell Delphi. They want to take again the lead over Microsoft ("Our goal is to get back to that scenario where we are leading"), invest more moeny in the IDE tools, rehire "engineers and architects who were at the forefront of developing languages", mentions an "installed base of three million developers", wants to start "making money from support and added services".

Tuesday, April 25, 2006

New SQL functions

Dmitry Yemanov writes:

Implementation of a new aggregate function LIST has been committed into the HEAD branch. It's one of the remaining changes that weren't ported from the Yaffil codebase yet. There are other built-in functions to port, they will be discussed in firebird-devel later this week.

Syntax: LIST ( [DISTINCT] value [ , delimiter ] )

Semantics is similar to the LIST function in Sybase SQL Anywhere and GROUP_CONCAT function in MySQL, with the exception of the ORDER BY clause which is not supported yet.

Also, Adriano dos Santos Fernandes has implemented the new REPLACE function (also about to be committed into HEAD). It can be considered a simplified version of the standard MERGE statement, which allows conditional INSERT or UPDATE operation based on a primary key match.

Syntax: REPLACE INTO table [ ( column_list ) ] VALUES ( value_list )
[ RETURNING column_list [ INTO variable_list ] ]
The SQL99-compliant MERGE statement is also planned for implementation in the future.

Read more

Saturday, April 22, 2006

More info about Falcon

Here you can find more information about the new MySQL engine. Falcon is the new “toy” from Jim Starkey

Firebird Foundation blog

FF just started its own blog. You can check the first posts here.

Friday, April 21, 2006

if you can’t connect to localhost with firebird2 rc1

Problem is the installer for firebird 2.0 rc1 currently changes permissions on /etc/services file to 600 and permisions need to be 644.

This has been posted on Firebird Devel List and is patched.
I will repost it here so others have less problems finding it.

REPOST FROM Firebird Devel List

The FB-2-beta2 still changes the access rights to
/etc/services.

I finally figured out why my java (after
fb-installation) failed to work with a network. This
failure had nothing to with fb, even a simple
InetAddress.getByName(”localhost”);
failed.

The reason is, that the install process sets the access
rights to /etc/services from 0644 to 0600!

This prevented Java to access the network (except for
user root).

Using Firebird with SME Server 7.O (an modified version of Red Hat Enterprise Linux)

Here are the instructions to run firebird on SME Server

Firebird bigger than MySQL on Windows

Marten Mikos says that 40% of MySQL is on Windows. Taking an installed base of 5 mln, this means about 2 mln on Windows. Firebird is 70..80% on Windows, so >2 mln. Marten further wants to be partners with Microsoft. "Hi Bill, I've just hired Firebird's Jim Starkey to write Falcon and compete with SQLServer head-on. Want to be friends?"

Read more here

Birds, Dolphins and now… Falcons (isn’t Falcon a bird?)

At the MySQL’s fourth annual users conference, Jim Starkey, a database trailblazer with InterBase and currently a MySQL senior software architect, will discuss MySQL’s developing storage engine, code-named Falcon, said Zack Urlocker, executive vice president of marketing Cupertino, Calif.-based MySQL. The conference kicks off Monday in Santa Clara, Calif.” - Read more here.

Linux SS new install package - mainly for slackware

Alex Peshkov writes:


I’ve done some changes regarding SS installation. This mainly deals with
Slackware support, but some changes concerning another things are also
done. Who interested, may try Snapshot builds from
http://www.insi.yaroslavl.ru/fb/.


Creating Firebird database programatically in delphi

Today my colleague asked me the question, “How to create FB database programatically from Delphi?”. Well, the solution is very easy, just use the following code:

IBDatabase1.DatabaseName := ChangeFileExt(Application.ExeName, '.fdb');
IBDatabase1.Params.Add('USER ''SYSDBA''');
IBDatabase1.Params.Add('PASSWORD ''masterkey''');
IBDatabase1.Params.Add('PAGE_SIZE 4096');
IBDatabase1.Params.Add('DEFAULT CHARACTER SET WIN1250');
IBDatabase1.CreateDatabase;

Jiří Činčura - http://blog.vyvojar.cz/jirka/

Thursday, April 20, 2006

Are you ready?!

Are you ready for TPC-C based test results? Are you looking forward to know who is the winner?! Be prepared - 4th issue of IBDeveloper is coming soon!

Screen shot of one of TPC-C based test results


Want to know who is who? Read IBDeveloper magazine!

JDBStudio - with Firebird and Fyracle support

New Java database administration tool - JDBStudio, that has plugins to support both Firebird and Fyracle functionality. More details, and free download.

Indiana Jones of the Balkans and the mystery of a hidden pyramid

“We’re talking about a huge construction effort here. The size of this pyramid will shock the archaeological world. It’s substantially higher than the Great Pyramid of Egypt,” said Mr Osmanagic, who has spent 15 years researching the pyramids of Central and South America. “We have discovered tunnels linking the pyramid with other hilltops. We have also found a huge entrance plateau, paved with thousands of handmade sandstone plates. Once the world accepts that we have this huge pyramid we will start trying to answer the questions: who? when? how? and why?”

Source

Wednesday, April 19, 2006

BDS2006 Update #2 - English

Now available for all registered users of BDS 2006. This is a patch that will install on either the initial released version or the C++Builder update version.

Read more

INFORMATION_SCHEMA for Firebird

Lorenzo Alberton writes:

"The SQL 2003 Standard introduced a new schema called INFORMATION_SCHEMA. PostgreSQL, SQL Server and now MySQL have it. ORACLE, DB2, Sybase, Ingres, Informix and other DBMS have something similar, usually called System Tables. The INFORMATION_SCHEMA is meant to be a set of views you can query using regular SELECT statements, for instance if you need to know something about the defined triggers, or the structure of a table to which you have access. Firebird doesn't have it, but you can retrieve pretty much everything you need from the system tables. These are metadata tables, their names start with "RDB$". Let's see how we can retrieve some useful informations from them."

Sunday, April 16, 2006

Avalon3D vs Delphi

From Mabster's blog:

"

Something quite funny:

I forwarded a link to Channel9's latest demo of Avalon3D to a co-worker of mine who does a lot of OpenGL/Direct3D stuff in Delphi.

As part of my email, I commented on how impressive it was that they knocked up a 3D scene with an animated camera in only 30-or-so lines of code.

Within a few minutes, Pete sent me back an exe he'd written in Delphi using about 30 lines of code, that did exactly what the demo's application did.

I keep forgetting just how advanced the old dog is, even compared to Microsoft's "next big thing"! :)

"

Friday, April 14, 2006

More eyes on the code = better quality

From Dmitry Yemanov

Adriano dos Santos Fernandes has joined the Firebird code reviewing team (we can now call it a team, since there are now two people involved in this task - Claudio and Adriano). Adriano will be assisted by a grant from the Firebird Foundation.

Warning! Serious GBAK issue!

From Dmitry Yemanov


Running GBAK -C by a non-privileged user (i.e. neither SYSDBA nor database owner) causes an original database to be overwritten instead of the expected “database already exists” message.

This bug seems to be inherited from IB 6.0 and it exists in all FB versions. However, FB 2.0 is not affected due to different default restore rules.

Wednesday, April 12, 2006

"Oracle Accord Means Business-as-Usual"

from OpenEnterpriseTrends:

"Not taking any chances, however, MySQL is also developing its own transactional storage engine and will extend its transaction support by adding technologies developed by one of the creators of InterBase (which later became core technology for the Open Source Firebird project)."

SQL/e - Microsoft answer to FB Embedded?

From Steve Lasker’s Web Log - “I’m not familiar with the details of Firebird Embedded, so I can’t make a comparison. To capture the essence: SQL/e is a lightweight, in-proc relational database that offers a subset of the data types and TSQL syntax to provide queries over relational stored data with transactional support. The SQL/e data format can be password protected with encryption. SQL/e is based on the proven history of the Microsoft SQL Server Mobile Edition technology.”
Read more here.

To quote the FAQ on website:

Q: Does SQL/e support stored procedures, or views?
A: No. Because SQL/e is targeted at lightweight, in-proc scenarios these features aren’t available. However, these features are typically used to provide multi-user abstraction from the underlying database schema. Because SQL/e runs in-proc with your application these features would typically provide more overhead than value. Because SQL/e runs in-proc with your application, why limit yourself to T-SQL within a stored procedure? By creating a data access layer to your SQL/e database you can use the full power of the .NET Framework.

Q: How big is the SQL/e runtime?
A: For all 7 dlls, the entire runtime is 1.4mb. This is less than a SQL Express .mdf file.

Q: What is the data file size limitation of SQL/e?
A: Both SQL/e and SQL/x share the same 4gig size limitation.

‘Nuff said!

Tuesday, April 11, 2006

Delphi 2006 and WinForms in .NET 2.0

via Marco Cantu

"

Delphi 2006 can be used to write .NET 2.0 applications... by using the command line compiler.

In a recent blog post, Daniel Wischnewski shows how to compile a Delphi application for .NET 2.0. The trick is to use (from the command line compiler, not from the IDE) the --clrversion flag. He shows that you can compile a .NET 2.0 console application (using a specific 2.0 feature, the console background color) with this command:

dccil -CC
-NSC:\WINDOWS\Microsoft.NET\Framework\v2.0.50727
--clrversion:v2.0.50727
--no-config
SimpleSampleNET2.dpr

The only extra operation you have to do the first time is to copy to the project folder the source code file Borland.Delphi.System.pas and compile it with the following command:

dccil -CC
-NSC:\WINDOWS\Microsoft.NET\Framework\v2.0.50727
--clrversion:v2.0.50727
--no-config
-Q -M -y -Z -$D-
Borland.Delphi.System.pas

Now, before you think I'm only quoting his work in my blog post, I've easily replicated Daniel's steps, but gone one step forward. I've used Delphi 2006 to create a new Delphi for .NET WinForms application, added to it code specific to version 2.0 of WInForms, and compiled it with a similar command line call.

In my extra code I've added the flat style to a button and used a new .NET 2.0 control to play a sound. This is my code:

procedure TWinForm3.ButtonClick(sender: TObject; e: System.EventArgs);
var
sndPlayer: SoundPlayer;
begin
Button1.FlatStyle := FlatStyle.Flat;

sndPlayer := SoundPlayer.Create;
sndPlayer.SoundLocation := 'C:\Program Files\Messenger\type.Wav';
sndPlayer.LoadAsync;
if sndPlayer.IsLoadCompleted then
sndPlayer.Play;
end;

Now you cannot compile this code with the Delphi 2006 IDE, as some of the features are specific to .NET 2.0. But you can compile it with the following command line, similar to the previous ones but with references to the assemblies used:


dccil -CC
-NSC:\WINDOWS\Microsoft.NET\Framework\v2.0.50727
--clrversion:v2.0.50727
--no-config
projform20.dpr
-luC:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Data.dll
-luC:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Windows.Forms.dll
Of course, with no help from the designer, no IDE-based compilation, and no proper Code Insight (although it might be possible to turn these on), building WinForms 2.0 applications in Delphi 2006 is far from a great experience. However, if you want to experiment with some of the new components and properties, while you wait for Highlander (next version of Delphi), and don't care to install Visual Studio, this might be an interesting option. This also speaks in favor of the flexibility of the BDS IDE."

InstantObjects 2.0 Beta 3

via Marco Cantu

"A new beta of InstantObjects was released a few days ago... a very interesting O/R mapping solution for Delphi Win32.

InstantObjects is a powerful object persistence layer based on an object/relational mapping approach for Delphi Win32 VCL applications. In other words, your application code deals with objects in memory and the corresponding data is saved in a standard relational database. InstantObjects was based on the classic approach of Scott Ambler . It has recently been extended to work better in a SQL server world and supports a large set of databases. The architecture of InstantObjects is really very neat, and I find it nicer than many other more popular O/R mapping libraries.

At first, InstantObjects was a commercial product. When it was abandoned by the original developers and released as an open source project, a group of users set up a real and active open source project. Development has been steady and both bug fixing and new features are countless. There is an energetic community of developers and end users that is not only keeping the product alive but really improving it. Sadly this is not true for other Delphi open source projects, like those originating from TurboPower.

By combining this two features (a solid technical foundation, an active community) InstantObjects is a very interesting option as a framework for many different types of development projects. Learning the core features of InstantObjects is relatively easy, as you can find out looking at the classic (even if quite out-of date) presentation video. Its IDE integration helps a lot in defining new classes and their attributes. Its integration with Delphi's TDataSet architectrure lets you work on the user interface as with any other dataset.

I have no space for a full presentation, but I really suggest you evaluate it (the previous beta was also in the Delphi 2006 Companion CD) if you are interested in this kind of architecture. Certainly I'm biased towards it because part of the core group of developers are some Italian friends of mine (which is why the IO home page is hosted on my office server, like this blog) but I woudn't be pushing it if I wasn't sure of its technical merit."

Chess game in ajax - done by morfik team

via Mauricio Longo’s blog

Much had been said about the browser as a platform. It was an idea strongly promoted by, the now gone, Netscape at the start of the Web revolution, but we never got there. Did we? Yes, we did! We just did not notice it!
If you take your browsers to this chess game, you might start to understand what I mean.

< This game has a great interface and is played against you by your own computer. Your moves do not get sent off to a server which comes up with a response and sends a move order back to your browser. The analisys of the play and the decision of the move is entierly done in Javascript, in your own machine, by the browser.

Monday, April 10, 2006

JStar will be MySQL's own egine

Apparently MySQL will use JStar as an alternative to InnoDB. “What we didn’t tell people when we bought Netfrastructure is that we were getting more than just people. We were also getting software,” Mickos said. What else has he left out of his story, to reveal later??

Read more

MS vaguely outlines plans with SQLServer

Paul Flessner says that MS will release a light version of SQLServer called SQLServer Everywhere. Probably similar to Firebird embedded dynamic library, but with fewer features. He also says: "Today the cost of storage continues to be on an amazing trajectory; one could reasonably expect that the cost of a terabyte will be reduced from about $1000 today to $100 in 2007."

Read more

MySQL fills Oracle-consumed hole in database

MySQL fills Oracle-consumed hole in database by Martin LaMonica on ZDNet.

" The storage engine MySQL is working on will be available this year. The engine derives from MySQL's acquisition of Netfrastructure, which employed database luminary Jim Starkey and other engineers.

"What we didn't tell people when we bought Netfrastructure is that we were getting more than just people. We were also getting software," Mickos said.

At the company's customer conference later this month, MySQL executives will further detail its strategy for storage engines.

The company will disclose partners that are writing their own storage engines for MySQL and further detail its "plug-in" architecture for storage engines, said Zack Urlocker, MySQL vice president of marketing."

MySQL to unveil new transaction engine

MySQL to unveil new transaction engine by China Martens on LinuxWorld.

"MySQL is due to unveil a new transaction database engine at its upcoming user conference later this month, according to a company executive. The open-source database vendor will also be showcasing database engines from third parties, Zach Urlocker, vice president of marketing at MySQL, said Thursday.

The new transaction database was developed by Jim Starkey, a noted database software architect who joined MySQL when it acquired his Web application technology company in February, Urlocker said in an interview at the LinuxWorld conference in Boston. When Starkey joined MySQL from Netfrastructure, rumors immediately circulated that he had been hired to develop a new transactional engine for the company."

RedHat acquired JBoss

As predicted by many, JBoss has entered into an agreement to be acquired - by Red Hat, which anticipates accellerating the shift to SOA. According to the press release by Red Hat, they are acquiring JBoss for approximately $350 million in initial consideration, plus approximately $70 million subject to the achievement of certain future performance metrics.

Read more

SourceForge community loves the blue frog

"Of note was Firebird's second place in the database category. This relational database is quietly picking up both in community interest and market share, and could rival PostgreSql and MySql in time. "
Read here

Wednesday, April 05, 2006

I’m an Open Source project - buy me

via silentpenguin

With an - umm - “interesting” choice in wording, Pentaho announce the acquisition of the Kettle project. Kettle is an Open Source project centered around data integration. Matt Casters’ announcement on the same subject is more along the lines of the project “joining” Pentaho. Pentaho have hired Matt to be a data integrations architect there.

Win32 Classic and keepalive packets

From Dmitry Yemanov:

It has been discovered recently (thanks to Eugene Kilin) that Win32 builds of Classic Server did not set up some socket options properly, including SO_KEEPALIVE. So if you have troubles with “zombie” processes not terminating after the keepalive internal, this is the reason. The patch has been committed into HEAD today and it will be available in the v2.0 RC2 release.

Also, Windows builds (both SuperServer and Classic) are now in sync with the POSIX ones and also have the Nagle algorithm disabled by default. If you want to change this behaviour, set the config option TcpNoNagle to zero.

Linux kernel gets Oracle cluster support

Oracle's Cluster File System is to become part of Linux kernel 2.6.16 The Cluster File System is designed to let multiple Linux servers use the same file system and ease management of Linux servers. Time to start dusting of Firebird's cluster code.
Read more

Evans Data IDE Study Shows Borland Toolset Still a Powerhouse

"Evans Data today announced the results of Developers' Choice - IDEs, a study in which over 700 developers ranked the features and capabilities of nine top IDEs that they currently use. IBM's Rational Application Developer edged past Borland's JBuilder to receive the highest overall relative scores against top IDEs including Eclipse, Macromedia Studio MX, and Oracle Developer Suite. IDEs were ranked in 13 distinct categories including compiler/interpreter, debugger, editor, compiler performance, performance of resulting apps, ease of use, sample apps, and libraries/frameworks."

SAS Launches Enhanced Vertical BI Line

SAS Institute at its annual user conference introduced on March 27 three new and seven enhanced business intelligence applications designed to give customers tools for performing data analysis that predict trends and uncover potential problems. SAS is a prominent user of Firebird, as they explained at the last conference (zip with two pdf's hosted at IBPhoenix).

Gracco uses Firebird

Gracco - a new software developed by Zats & Loib - offers a complete and integrated solution for management business-oriented pertaining to legal profession for the Brazilian market. A free version of the tool can be download here. Gracco uses Firebird SuperServer as database.

Tuesday, April 04, 2006

Getting VCL/.NET ready for .NET 2.0 and 64bit CLR

by Allen Bauer

Changes, my friends, are afoot. While waiting for the Delphi/.NET compiler (dccil) to embrace all the latest goodies in the CLR world (partial types, generics, nullable types, anonymous methods, etc...) other engineers have been working on a lot of things that are independent of all the new compiler goodness. The biggest change that is going to happen to VCL/.NET is the change from using Integer for handles (ie. THandle = Integer;), it must now be changes to IntPtr. One common misconception (and one I admit to having fallen prey to as well) is that somehow IntPtr is some kind of “Pointer” type represented as an Integer. Well, call me foolish and gullible, but I'm going to go out on a limb here and say that “IntPtr” is not what I'd call a very good name. OK, OK... it basically sucks as a name. I can see why at first glance one would be led to the misconception that “IntPtr” is a “Pointer.” So what is this odd bit of identifier madness? In actual fact (and to the more intelligent and astute among you, this is all mindless drivel), it really means this “Integer whose physical size and precision matches the physical size of a Pointer on the currently running underlying platform for which the “Just-In-Time” compiler is actually generating code” (pay no attention to the nested quotes in that statement).

Read more here

DRoster Employee Scheduler

Kappix Releases DRoster Employee Scheduler 2.2.1 - Uses "a standard Software industry database (Firebird)".

MediaWiki roadmap - Firebird support in version 2.0

Major plans for 2.0 - Firebird support will be added

Saturday, April 01, 2006

MySQL AB Acquires Firebird Foundation and Flamerobin

Milan Babuskov, one of original creators of fbManager which became Flamerobin, just made it publicly known that he now works for MySQL AB.

My project, Flamerobin and Firebird Foundation , have been acquired by MySQL, AB. As part of the agreement, I will be working full time for MySQL. I expect to lurk on the flamerobin-devel list from time to time and may contribute the occasional wolf-o-gram, but I will not be taking an active part in Flamerobin development. Although Mariuz will work for MySQL, part time, translating from wolf to English, He will continue to be active in the Firebird/Flamerobin projects.

Ann Harrison gave the idea to buy all the firebird developers with this post
on firebird-support


Update 4/4/2006: Till next year, happy April Fools.

MyPostBirdSQL 2.0 RC1 released

Today first RC1 release is announced that many oss developers had been awaiting

MyFireGreSql 2.0 is based on code from mysql 6.0 ,firebird 3.0,postgresql 9.0
We needed a big shake up in open source database world and working on the common code base have it’s
advantages:Firebird and Postgresql borrowed from mysql’s speed , mysql used MVCC for it’s transactional engine (is based on firebird) .


SQL2003 is implemented in all three engines now that is published as standard .So why working on a three SQL200X implementations when we could work only on one? , The project’s model is linux kernel where vendors are using only one source code for their distributions (patched properly) but there is only one organization for working on the kernel osdl.