Hi,
How do we define printf in ia32-v4 ? I see there is a print.cc implementation but it won't be used(?) for the linking stage even with "#define CONFIG_KDB y" and or "#define CONFIG_VERSION_X0 1" in $(OBJ)/config.h...
Besides, kickstarting from grub (output to screen) does work until the "Launching kernel stage" ; then it freezes without warnings :-)
my menu.lst looks like this : root (hd0,1,a) kernel= /boot/ia32-kernel module=/libexec/l4/kickstart module= /libexec/l4/sigma0 module= /libexec/l4/pingpong
cya etienne
===== iD
______________________________________________________________________ Post your free ad now! http://personals.yahoo.ca
Etienne Robillard granted14@yahoo.com writes:
Besides, kickstarting from grub (output to screen) does work until the "Launching kernel stage" ; then it freezes without warnings :-)
my menu.lst looks like this : root (hd0,1,a) kernel= /boot/ia32-kernel module=/libexec/l4/kickstart module= /libexec/l4/sigma0 module= /libexec/l4/pingpong
I did some experiments today, following Marcus' instructions. I think you should use switch the first two files, like
kernel = .../kickstart module = .../ia32-kernel module = .../sigma0 module = .../pingpong
I'm not sure how this works, I just guess kickstart is more multiboot compliant than ia32-kernel.
I've been able to load Marcus' root servers. For pingpong, however, I don't know what to expect. Nothing interesting happened when I tried that, so I can't say if it worked.
/Niels
I've been able to load Marcus' root servers. For pingpong, however, I don't know what to expect. Nothing interesting happened when I tried that, so I can't say if it worked.
pingpong does some ipc benchmarks, that's all.
You can see them on the console, if you compile the userland apps with:
$(SRCDIR)/user/configure --without-comport
If you forget this, the output goes to the serial port. It's a common gotcha... ;)
pingpong works pretty well.
/Niels
nisse@lysator.liu.se (Niels Möller) writes:
I've been able to load Marcus' root servers. For pingpong, however, I don't know what to expect. Nothing interesting happened when I tried that, so I can't say if it worked.
You should have been asked some questions. Maybe you forgot the --without-comport switch to configure and therefore Pistachio was trying to communicate with your serial port?
moritz
[Niels Möller]
Etienne Robillard granted14@yahoo.com writes:
Besides, kickstarting from grub (output to screen) does work until the "Launching kernel stage" ; then it freezes without warnings :-)
my menu.lst looks like this : root (hd0,1,a) kernel= /boot/ia32-kernel module=/libexec/l4/kickstart module= /libexec/l4/sigma0 module= /libexec/l4/pingpong
I did some experiments today, following Marcus' instructions. I think you should use switch the first two files, like
kernel = .../kickstart module = .../ia32-kernel module = .../sigma0 module = .../pingpong
I'm not sure how this works, I just guess kickstart is more multiboot compliant than ia32-kernel.
Kickstart decodes and loads the modules (elf files) into memory. It then sets up some memory descriptors in the KIP, registers the initial servers in the KIP, and starts the kernel.
One could potentially load the kernel directly from Grub, but this would mean that there would be no other user-level servers to start up after the kernel is initialized---i.e., not very useful.
eSk
On Wed, May 21, 2003 at 10:51:47PM +0200, Niels Möller wrote:
I did some experiments today, following Marcus' instructions. I think you should use switch the first two files, like
kernel = .../kickstart module = .../ia32-kernel module = .../sigma0 module = .../pingpong
I'm not sure how this works, I just guess kickstart is more multiboot compliant than ia32-kernel.
Right, kickstart fixes up the grub boot information and makes them accesible to everyone by binary patching the kernel image :) It puts a pointer to the structure in the bootinfo field of the kernel interface page (kip).
Also information about sigma0 and the rootserver (entry point, stack pointer, image size) is (or is not, in case of the sp) set in the kip so the kernel can start up the initial servers.
So the whole booting support is in kickstart, while the kernel only is a receiver of the information it needs. The rootserver can use the bootinfo field to get at the grub boot info (argument lines etc).
I've been able to load Marcus' root servers. For pingpong, however, I don't know what to expect. Nothing interesting happened when I tried that, so I can't say if it worked.
See farid's mail about comport option :) IN pingpong press escape to get at the kernel debugger.
Marcus
l4-hackers@os.inf.tu-dresden.de