The Brief Anecdote
OK, so I was talking with the lead developer of Brainix and we hit a snag. Largely because it’s a microkernel, it’s indescribably difficult to program correctly. So, we said to each other “What should we do?”
Our conclusion was, well, nonexistent. That’s right, we didn’t come to a conclusion (we’re too cool to solve problems
). What I suspect will happen is we’ll end up making Brainix a hybrid kernel with the drivers running in the user-space so the Operating System won’t crash so much.
We’ll try making the operating system Unix-like…but in doing so we’ll try to resolve some problems like: the devices are supposed to be represented as files, but there is an ambiguity over the “block device” vs. “character device” dichotomy (e.g. the Network device is neither apparently). Perhaps we’ll make a more object oriented approach to solve this problem.
I suggested that we should start using the D programming language and using javadoc in-code documentation so that: 1) it’s easier to program, 2) it’s easier for “newbies” to learn the operating system concepts. We’ll see how things turn out I guess. A “problem” that arises is that either we can’t use classes (we can just as easily use structs) or we will have to hack together our own special compiler from the GNU D Compiler front-end (we may have to “slightly” change the Object class). This problem depends on whether we want to focus on embedded systems (or really old computer systems) or if we want to make operating systems for “recent” computers (i.e. with at least 512 megs of RAM, 1 GHz processor, etc. etc. etc.).
But I wish to present a conjecture:
AngryPhysicist’s Conjecture: It is impossible to have an efficient Microkernel that is also POSIX-compliant. It’s one or the other, but not both.
Remark: It is possible to have an efficient microkernel! It just can’t easily be Unix-like.
I’m actually a little sad that we are departing the microkernel approach, but we’re doing something that is easier to program. Perhaps first we should write a debugger for the operating system (supposing we want to make life easier for ourselves — real programmers don’t use debuggers though, they program in binary)? That would require us to figure out how to make a debugger though…
Now, on to the paper:
ABSTRACT: We propose a natural Fedosov type quantization of generalized Lagrange models and gravity theories with metrics lifted on tangent bundle, or extended to higher dimension, following some stated geometric/ physical conditions (for instance, nonholonomic and/or conformal transforms to some physically important metrics or mapping into a gauge model). Such generalized Lagrange transforms define canonical nonlinear connection, metric and linear connection structures and model almost Kahler geometries with induced canonical sympletic structure and compatible affine connection. The constructions are possible due to a synthesis of the nonlinear connection formalism developed in Finsler and Lagrange geometries and deformation quantization methods.
I thought this was an interesting paper, Carlip remarked he never saw an attempt at Deformation Quantization of Gravity. Well, there you have it.