Hello...
I'm now trying to boot my own server with the L4Linux 2.4.
i'm using this servers:
title Tests root (hd0,0) kernel /home/tiago/fiasco_builddir/rmgr -sigma0 modaddr 0x02000000 module /home/tiago/fiasco_builddir/main -nokdb -nowait -serial_esc -comspeed 115200 -comport 1 module /home/tiago/fiasco_builddir/sigma0 module /home/tiago/fiasco_builddir/names module /home/tiago/fiasco_builddir/dm_phys module /home/tiago/fiasco_builddir/l4io module /home/tiago/fiasco_builddir/rtc module /home/tiago/fiasco_builddir/name_server module /home/tiago/fiasco_builddir/flips-lxdrv module /home/tiago/fiasco_builddir/mini_ifconfig eth0 10.10.5.197 255.255.0.0 10.10.255.255 module /home/tiago/fiasco_builddir/WOO 10.10.5.197 eth0 module /home/tiago/fiasco_builddir/vmlinuz.V2 no-scroll no-hlt l4irqack=linux root=/dev/hda1
but as i expected there are many pagefaults and resources allocated.
How can i configure this servers (not my own of course :) ) so that they don't interfere with the l4linux work but still do their work(mainly networking with FLIPS)?
for example, when put only this servers...
kernel /home/tiago/fiasco_builddir/rmgr -sigma0 modaddr 0x02000000 module /home/tiago/fiasco_builddir/main -nokdb -nowait -serial_esc -comspeed 115200 -comport 1 module /home/tiago/fiasco_builddir/sigma0 module /home/tiago/fiasco_builddir/names module /home/tiago/fiasco_builddir/dm_phys
the module dm_phys and l4linux start to page fault.
thanks for the help
Tiago
On Fri May 13, 2005 at 14:52:55 +0100, Tiago Jorge wrote:
i'm using this servers:
title Tests root (hd0,0) kernel /home/tiago/fiasco_builddir/rmgr -sigma0 modaddr 0x02000000 module /home/tiago/fiasco_builddir/main -nokdb -nowait -serial_esc -comspeed 115200 -comport 1 module /home/tiago/fiasco_builddir/sigma0 module /home/tiago/fiasco_builddir/names module /home/tiago/fiasco_builddir/dm_phys module /home/tiago/fiasco_builddir/l4io module /home/tiago/fiasco_builddir/rtc module /home/tiago/fiasco_builddir/name_server module /home/tiago/fiasco_builddir/flips-lxdrv module /home/tiago/fiasco_builddir/mini_ifconfig eth0 10.10.5.197 255.255.0.0 10.10.255.255 module /home/tiago/fiasco_builddir/WOO 10.10.5.197 eth0 module /home/tiago/fiasco_builddir/vmlinuz.V2 no-scroll no-hlt l4irqack=linux root=/dev/hda1
but as i expected there are many pagefaults and resources allocated.
How can i configure this servers (not my own of course :) ) so that they don't interfere with the l4linux work but still do their work(mainly networking with FLIPS)?
for example, when put only this servers...
kernel /home/tiago/fiasco_builddir/rmgr -sigma0 modaddr 0x02000000 module /home/tiago/fiasco_builddir/main -nokdb -nowait -serial_esc -comspeed 115200 -comport 1 module /home/tiago/fiasco_builddir/sigma0 module /home/tiago/fiasco_builddir/names module /home/tiago/fiasco_builddir/dm_phys
the module dm_phys and l4linux start to page fault.
Configuring the system in a way that this works together is possible but tricky.
But there's a better way, just use the L4Env version of L4Linux, then L4Linux uses dm_phys to get its memory so that they're not conflicting. Those types of problems should go away then.
Adam
Configuring the system in a way that this works together is possible but tricky.
But there's a better way, just use the L4Env version of L4Linux, then L4Linux uses dm_phys to get its memory so that they're not conflicting. Those types of problems should go away then.
ok...thanks for the prompt answer.
So i have two more little questions:
One thing that i don't remember... what is the package that provides a physical file provider? i don't want to use tftp And that interference will cease to exist with the rest of the server mainly io and stuff?
Tiago
On Fri May 13, 2005 at 17:07:45 +0100, Tiago Jorge wrote:
but tricky.
But there's a better way, just use the L4Env version of L4Linux, then L4Linux uses dm_phys to get its memory so that they're not conflicting. Those types of problems should go away then.
ok...thanks for the prompt answer.
So i have two more little questions:
One thing that i don't remember... what is the package that provides a physical file provider? i don't want to use tftp
You can use bmodfs. That's a file provider that only uses memory (l4/pkg/generic_fprov/examles/bmodfs). An usage example is on the webpage (http://os.inf.tu-dresden.de/L4/LinuxOnL4/use-2.6.shtml).
And that interference will cease to exist with the rest of the server mainly io and stuff?
tftp will only interfere with the network card, so if you do not use tftp, this will go away, yes. Note, start l4io with --noirq so that l4io doesn't take the irqs.
Adam
You can use bmodfs. That's a file provider that only uses memory (l4/pkg/generic_fprov/examles/bmodfs). An usage example is on the webpage (http://os.inf.tu-dresden.de/L4/LinuxOnL4/use-2.6.shtml).
thanks for the example. but maybe because it's monday morning ;) i didn't understand well the way to use the bmodfs server. i've been able to boot with tftp but where i'm going to place this in use i don't have tftp availability. i've done the following menu.lst entry
title Fiasco Linux L4Env root (hd0,0) kernel /home/tiago/fiasco_builddir/rmgr -sigma0 task modname "bmodfs" modaddr 0x02000000 module /home/tiago/fiasco_builddir/main -nokdb -nowait -serial_esc -comspeed 115200 -comport 1 module /home/tiago/fiasco_builddir/sigma0 module /home/tiago/fiasco_builddir/names module /home/tiago/fiasco_builddir/log module /home/tiago/fiasco_builddir/dm_phys module /home/tiago/fiasco_builddir/simple_ts -t 300 module /home/tiago/fiasco_builddir/rtc module /home/tiago/fiasco_builddir/l4io --noirq module /home/tiago/fiasco_builddir/bmodfs module /home/tiago/fiasco_builddir/libloader.s.so module /home/tiago/fiasco_builddir/loadercfg module /home/tiago/fiasco_builddir/vmlinuz.l4env module /home/tiago/fiasco_builddir/l4exec module /home/tiago/fiasco_builddir/loader --fprov=BMODFS /home/tiago/fiasco_builddir/loadercfg
what am i doing wrong? btw, the libloader.s.so it's giving the error that it's accessing the position 0x0000000 of memory. am i loading it correctly?
tftp will only interfere with the network card, so if you do not use tftp, this will go away, yes. Note, start l4io with --noirq so that l4io doesn't take the irqs.
now it's more a technical question. if i use l4io with that option, who will manage the irqs? will it be l4linux with l4irqack=linux option on? how the information will reach the l4io server so it can go into other server that use l4io?
thanks
Tiago
On Mon May 16, 2005 at 11:56:45 +0100, Tiago Jorge wrote:
You can use bmodfs. That's a file provider that only uses memory (l4/pkg/generic_fprov/examles/bmodfs). An usage example is on the webpage (http://os.inf.tu-dresden.de/L4/LinuxOnL4/use-2.6.shtml).
thanks for the example. but maybe because it's monday morning ;) i didn't understand well the way to use the bmodfs server. i've been able to boot with tftp but where i'm going to place this in use i don't have tftp availability. i've done the following menu.lst entry
title Fiasco Linux L4Env root (hd0,0) kernel /home/tiago/fiasco_builddir/rmgr -sigma0 task modname "bmodfs"
module module module
modaddr 0x02000000 module /home/tiago/fiasco_builddir/main -nokdb -nowait -serial_esc -comspeed 115200 -comport 1 module /home/tiago/fiasco_builddir/sigma0 module /home/tiago/fiasco_builddir/names module /home/tiago/fiasco_builddir/log module /home/tiago/fiasco_builddir/dm_phys module /home/tiago/fiasco_builddir/simple_ts -t 300 module /home/tiago/fiasco_builddir/rtc module /home/tiago/fiasco_builddir/l4io --noirq module /home/tiago/fiasco_builddir/bmodfs module /home/tiago/fiasco_builddir/libloader.s.so module /home/tiago/fiasco_builddir/loadercfg module /home/tiago/fiasco_builddir/vmlinuz.l4env module /home/tiago/fiasco_builddir/l4exec module /home/tiago/fiasco_builddir/loader --fprov=BMODFS /home/tiago/fiasco_builddir/loadercfg
what am i doing wrong? btw, the libloader.s.so it's giving the error that it's accessing the position 0x0000000 of memory. am i loading it correctly?
Rmgr is trying to start a shared lib which isn't supposed to work, so this is ok.
You need to add as many module statements to the rmgr command line as modules you are adding to bmodfs, so 3 for the above case. This way the following 3 modules are added as modules to bmodfs and are not started by rmgr.
tftp will only interfere with the network card, so if you do not use tftp, this will go away, yes. Note, start l4io with --noirq so that l4io doesn't take the irqs.
now it's more a technical question. if i use l4io with that option, who will manage the irqs? will it be l4linux with l4irqack=linux option on? how the information will reach the l4io server so it can go into other server that use l4io?
l4io --noirq makes l4io not touch the IRQs so that they are still kept by RMGR. An application can then do rmgr_get_irq to get a specific IRQ and then use the normal l4_ipc calls for interrupts. Withtout the --noirq option, l4io gets all the interrupts and offers them to clients via the omega0 interface. All applications now need to use the omega0 interface. L4Linux can use both interfaces and I guess they even both work right now. BTW, the l4irqack=linux option has no affect for 2.6.
Adam
You need to add as many module statements to the rmgr command line as modules you are adding to bmodfs, so 3 for the above case. This way the following 3 modules are added as modules to bmodfs and are not started by rmgr.
ok... it's really monday... and i didn't understood that i must literaly write "module module module" :).
but now the error is another one. i've past that phase and i'm trying now to boot it properly using the cfg file. with this menu.lst:
title Fiasco Linux L4Env root (hd0,0) kernel /home/tiago/fiasco_builddir/rmgr -sigma0 task modname "bmodfs" module module module modaddr 0x02000000 module /home/tiago/fiasco_builddir/main -nokdb -nowait -serial_esc -comspeed 115200 -comport 1 module /home/tiago/fiasco_builddir/sigma0 module /home/tiago/fiasco_builddir/names module /home/tiago/fiasco_builddir/log module /home/tiago/fiasco_builddir/dm_phys module /home/tiago/fiasco_builddir/simple_ts -t 300 module /home/tiago/fiasco_builddir/rtc module /home/tiago/fiasco_builddir/l4io --noirq module /home/tiago/fiasco_builddir/bmodfs module /home/tiago/fiasco_builddir/libloader.s.so module /home/tiago/fiasco_builddir/loadercfg module /home/tiago/fiasco_builddir/vmlinuz.l4env module /home/tiago/fiasco_builddir/l4exec module /home/tiago/fiasco_builddir/loader --fprov=BMODFS /home/tiago/fiasco_builddir/loadercfg
and here is the output. the error is in the last line:
###################################################################
Welcome to Fiasco(ia32)! DD-L4(v2)/x86 microkernel (C) 1998-2005 TU Dresden Rev: Wed Feb 2 12:05:33 2005 compiled with gcc 2.95 for Intel Pentium 4 Performance-critical config option(s) detected: CONFIG_NDEBUG is off CONFIG_NO_FRAME_PTR is off
Enabling special fully nested mode for PIC Using the PIT (i8254) on IRQ 0 for scheduling Absolute KIP Syscalls using: Sysenter CPU: GenuineIntel (F:2:9:9) Model: Pentium 4 (Northwood/Prestonia) at 2792 MHz
128 Entry I TLB (4K or 4M pages) 64 Entry D TLB (4k or 4M pages) 12K ยต-ops T Cache (8-way associative) 8 KB L1 D Cache (4-way associative, 64 bytes per line) 512 KB L2 U Cache (8-way associative, 64 byte
Freeing init code/data: 20480 bytes (5 pages)
SIGMA0: Hello! Found Fiasco: KIP syscalls: yes. Allocated 124kB for maintenance structures.
RMGR: Stage2 running on Fiasco bootloader loaded 12 modules at 02073000-02870175 total RAM size = 227902 KB (reported by bootloader) received 208248 KB RAM from sigma0 816 KB reserved for RMGR received no I/O ports attached irqs = [ <!0> 1 <!2> 3 <!4> 5 6 7 8 9 a b c d e f ]
RMGR: Parsing config. configured task 0x0b: [ m:0,ffffffff,ffffffff hm:0,ffffffff,ffffffff
t:0,ffff,ffff i:ffff lmcp:ffff s:0,ff,ff mcp:ff prio:10 small:ff ] log_mask: 00000000, log_types: 00000000
RMGR: Starting tasks. #05: loading "/home/tiago/fiasco_builddir/names"
from 02073000-0207c174 to [ 00200000-00206de0 00207000-00210000 ] starting at entry 00200000 via trampoline page code 0006d168 #06: loading "/home/tiago/fiasco_builddir/log"
from 0207d000-02087174 to [ 00400000-004070a0 00408000-0043d000 ] starting at entry 00400000 via trampoline page code 0006e164 #07: loading "/home/tiago/fiasco_builddir/dm_phys"
from 02088000-0209d174 to [ 01500000-015128a0 01513000-0151d000 ] starting at entry 01500000 via trampoline page code 0006f168 #08: loading "/home/tiago/fiasco_builddir/simple_ts -t 300" from 0209e000-020a9174 to [ 01400000-014086c0 01409000-01417000 ] starting at entry 01400000 via trampoline page code 00070174 #09: loading "/home/tiago/fiasco_builddir/rtc"
from 020aa000-020b1174 to [ 01080000-01084aa0 01085000-0108a000 ] starting at entry 01080000 via trampoline page code 00071164 #0a: loading "/home/tiago/fiasco_builddir/l4io --noirq" from 020b2000-02101174 to [ 00b70000-00b92cf6 00b93000-00bc6000 ] starting at entry 00b70000 via trampoline page code 00072170 #0b: loading "/home/tiago/fiasco_builddir/bmodfs"
from 02102000-0211c174 to [ 01220000-012375d8 01238000-01240000 ] passing module /home/tiago/fiasco_builddir/libloader [ 0211d passing module /home/tiago/fiasco_builddir/loadercfg [ 021a9000-021a9087 ]
passing module /home/tiago/fiasco_builddir/vmlinuz.l [ 021aa000-02818e88 ]
starting at entry 01220000 via trampoline page code 00073168 #0f: loading "/home/tiago/fiasco_builddir/l4exec"
from 02819000-02845174 to [ 01100000-01129ad6 0112a000-01134000 ] starting at entry 01100000 via trampoline page code 00074168 #10: loading "/home/tiago/fiasco_builddir/loader --fprov=BMODFS /home/tiago/fias
co_builddir/loadercfg" from 02846000-02870174 to [ 01300000-01326156 01327000-01339000 ] starting at entry 01300000 via trampoline page code 0007519c
names | Fiasco detected, registering thread names at kernel rtc | Date:16.05.2005 Time:15:04:44 io | OSKit support: using 1024KB at 0x00180000 as heap io | do_args(): Disabling internal IRQ handling. bmodfs | Passed the following modules: bmodfs | module "/home/tiago/fiasco_builddir/libloader.s.so " bmodfs | module "/home/tiago/fiasco_builddir/loadercfg
bmodfs | module "/home/tiago/fiasco_builddir/vmlinuz.l4env"
exec | OSKit support: using 4096KB at 0x00400000 as heap (growing)
io | PCI: Using configuration type 1 io | PCI: Probing PCI hardware io | PCI: Probing PCI hardware (bus 00) io | 00000000-ffffffff : PCI mem io | e0000000-e7ffffff : PCI device 1039:0661 (Silicon Integrated System
io : s [SiS]) io | e8000000-e8000fff : Silicon Integrated Systems [SiS] USB 1.0 Contro
io : ller io | e8001000-e8001fff : Silicon Integrated Systems [SiS] USB 1.0 Contro
io : ller (#2) io | e8002000-e8002fff : Silicon Integrated Systems [SiS] USB 1.0 Contro
io : ller (#3) io | e8003000-e8003fff : Silicon Integrated Systems [SiS] USB 2.0 Contro io : ller io | e8004000-e80043ff : Linksys Network Everywhere Fast Ethernet 10/100 io : model NC100 io | e8100000-e81fffff : PCI Bus #01 io | e8100000-e811ffff : PCI device 1039:6330 (Silicon Integrated Syst io : ems [SiS]) io | f0000000-f7ffffff : PCI Bus #01 io | f0000000-f7ffffff : PCI device 1039:6330 (Silicon Integrated Syst io : ems [SiS]) io | 0000-ffff : PCI IO io | 0cf8-0cff : PCI conf1 io | 1000-107f : Silicon Integrated Systems [SiS] Sound Controller io | 1400-14ff : Silicon Integrated Systems [SiS] Sound Controller io | 1800-18ff : Linksys Network Everywhere Fast Ethernet 10/100 model N io : C100 io | 1c00-1c0f : Silicon Integrated Systems [SiS] 5513 [IDE] io | 2000-2fff : PCI Bus #01 io | 2000-207f : PCI device 1039:6330 (Silicon Integrated Systems [SiS io : ]) loader | OSKit support: using 128KB at 0x00002000 as heap bmodfs | [B.2] generic_fprov/examples/bmodfs/dm.c:135:dm_open(): bmodfs | Error: Object '/home/tiago/fiasco_builddir/loadercfg' not found! loader | Error -8 opening file "/home/tiago/fiasco_builddir/loadercfg"
###################################################################
but the file its on that path. the file its the loader script file to load the l4linux and contains this:
modpath "/home/tiago/fiasco_builddir"
sleep 2 task "vmlinuz.l4env" "no-scroll no-hlt l4irqack=linux root=/dev/hda1" priority 0xA0
and has this features:
-rwxr-xr-x 1 root root 135 2005-05-16 11:01 loadercfg
so what can be wrong here?
thanks
Tiago
On Mon May 16, 2005 at 16:11:45 +0100, Tiago Jorge wrote:
but now the error is another one. i've past that phase and i'm trying now to boot it properly using the cfg file. with this menu.lst:
title Fiasco Linux L4Env root (hd0,0) kernel /home/tiago/fiasco_builddir/rmgr -sigma0 task modname "bmodfs" module module module modaddr 0x02000000 module /home/tiago/fiasco_builddir/main -nokdb -nowait -serial_esc -comspeed 115200 -comport 1 module /home/tiago/fiasco_builddir/sigma0 module /home/tiago/fiasco_builddir/names module /home/tiago/fiasco_builddir/log module /home/tiago/fiasco_builddir/dm_phys module /home/tiago/fiasco_builddir/simple_ts -t 300 module /home/tiago/fiasco_builddir/rtc module /home/tiago/fiasco_builddir/l4io --noirq module /home/tiago/fiasco_builddir/bmodfs module /home/tiago/fiasco_builddir/libloader.s.so module /home/tiago/fiasco_builddir/loadercfg module /home/tiago/fiasco_builddir/vmlinuz.l4env module /home/tiago/fiasco_builddir/l4exec module /home/tiago/fiasco_builddir/loader --fprov=BMODFS /home/tiago/fiasco_builddir/loadercfg
and here is the output. the error is in the last line:
###################################################################
loader | OSKit support: using 128KB at 0x00002000 as heap bmodfs | [B.2] generic_fprov/examples/bmodfs/dm.c:135:dm_open(): bmodfs | Error: Object '/home/tiago/fiasco_builddir/loadercfg' not found! loader | Error -8 opening file "/home/tiago/fiasco_builddir/loadercfg"
###################################################################
but the file its on that path. the file its the loader script file to load the l4linux and contains this:
Just write loadercfg, leaving out the path. bmodfs just works on filenames without paths.
Adam
Just write loadercfg, leaving out the path. bmodfs just works on filenames without paths.
hello... thanks for your help.
i've been able to boot the kernel, but when he reaches the login part of linux he begins giving this error. What might be causing this?
KERNEL: no pgtab entry in sender: from [c]: 000c1000 size: 000c to [29]
thanks
Tiago
On Tue May 17, 2005 at 10:57:51 +0100, Tiago Jorge wrote:
i've been able to boot the kernel, but when he reaches the login part of linux he begins giving this error. What might be causing this?
KERNEL: no pgtab entry in sender: from [c]: 000c1000 size: 000c to [29]
I guess task 29 is your X server which tries to map some (BIOS) memory. Unfortunately this is not handled as good as it could be in 2.4, so just do not let X come up.
Adam
Adam Lackorzynski wrote:
On Tue May 17, 2005 at 10:57:51 +0100, Tiago Jorge wrote:
i've been able to boot the kernel, but when he reaches the login part of linux he begins giving this error. What might be causing this?
KERNEL: no pgtab entry in sender: from [c]: 000c1000 size: 000c to [29]
I guess task 29 is your X server which tries to map some (BIOS) memory. Unfortunately this is not handled as good as it could be in 2.4, so just do not let X come up.
Adam
ok... i had thought that could be the problem... i'm shuting it down now
but thanks anyway
Tiago
Hi everyone, I compiled L4:pistachio under debian and run it successfully. Now I want to trace how the kernel be excuted by browsing its sourcecode. We konow that the first program after grub booting the ssytem is kickstart and I browsed the sourcecode in directory "user\util\kickstart". But I cant not find where is the main function. Can anyone help me and describe the execute process of L4:pistachio mainly? Thanks.
Yours Sincerely, Zhou Ya Jin
My Person Website: http://mail.ustc.edu.cn/~ncs
l4-hackers@os.inf.tu-dresden.de