Hi,
I got the latest fiasco sources, tried to compile on a macbook pro (intel core 2 duo) but i get the above message.
I did try to set it to amd64 with intel duo option. This is not my final target, i just wanted to play a bit (possibly on an emulator). Do i need a cross compiler or something , because i only have gcc 4.2.1.
Something simple i'm missing ?
Torsten
hopea:build raisantorsten$ make
test -e source || ln -sf /Users/raisantorsten/Desktop/fiasco-2012111623/src/kernel/fiasco/src …
[View More]source
Cleaning up build directory
Creating .Modules.deps
make srcdir=/Users/raisantorsten/Desktop/fiasco-2012111623/src/kernel/fiasco/src objbase=/Users/raisantorsten/Desktop/fiasco-2012111623/src/kernel/build -f /Users/raisantorsten/Desktop/fiasco-2012111623/src/kernel/fiasco/src/Makefile.sub1
rm -f \
touch .Clean-auto
-n Checking compiler config...
CHANGED. Recompiling.
No known ld emulation found
make[1]: *** [.Host-config] Error 1
make: *** [create-sources] Error 2
[View Less]
Hi,
sorry I'm not really a os "hacker" and I haven't even got the code yet, but was wondering if someone could help me with my issue:
Is there any activity of L4 on raspberry pi (a pocket size computer) ? Or is there elsewhere I can ask.
Specifically the plan would be to build a ruby-machine on it. Single user but multi-process. If would only need to be able to access usb,ethernet and gpios. And run and start several ruby processes.
I know ruby vm well enough to cut that down to size.
…
[View More]But I have no idea of how difficult it would be to remove linux and replace it with those 3 device drivers. Or even where to get those, how to integrate them.
So i was hoping somebody here could say how crazy this is, or if I can stamp down some trodden path ?
Thanks
Torsten
[View Less]
When running the test case from
https://github.com/genodelabs/genode/issues/559 on 64-bit Fiasco.OC, the
kernel runs out of memory after the sequential construction and
destruction of tasks. I've added some debug output to the kernel which
tracks the kernel memory allocations and deallocations. The attached log
files cover the creation and destruction of one task on 64-bit and
32-bit Fiasco.OC.
In the 64-bit case the allocations reported in lines (05/06), (07/08),
(12/13), (14/15), (20/21) and …
[View More](24/25) don't have matching calls of
'free()'. These allocations belong to the 'Ptab::Walk::sync()' and
'Ptab::Walk::walk()' functions. It looks like only a part of the page
table gets destroyed during 'Mem_space::dir_shutdown()'.
In the 32-bit case the amout of memory available after the destruction
of the task is the same as before the construction, but what I found odd
about the log output is that the allocations reported in lines (10/11)
and (14/15) don't have matching calls of 'free()', whereas the
allocations reported in lines (09) and (12/13) each have two calls of
'free()' (in lines (22/25) and (28/32)), which makes the amount of
memory available balanced again.
Christian
[View Less]
Hi,
I have built L4linux(l4linux-mag-x86.iso) and made it run on qemu successfully.
But when I try to run it on virtual box, it stops, please see the following picture:
I have put the iso file in Attachment, could you please have a try and give me some advise?
------------------
Best Regard,
Long Fu
从QQ邮箱发来的超大附件
l4linux-mag-x86.iso (42.18M, 2013年01月06日 17:05 到期)进入下载页面:http://mail.qq.com/cgi-bin/ftnExs_download?t=exs_ftn_download&k=7…
Hello Alexander,
I wrote a simple example to test the NOVA+NUL.
In my example, I created two Execution Contexts.
When the the first Execution Context starts, it obtains a portal capability
to
the second Execution Context, and run a while(true) loop as follow :
...
while(1)
{
Logging::printf("#tsc=%llu\n", now);
nova_call(pt);
}
...
The second Execution Context run also a while(true) loop as follow:
...
while(1) {
count++;
Logging::printf("WorkerThread is working... count= %u\n", count);
}
…
[View More]...
The first Execution Context call the second Execution Context. When the
second Execution Context
receive the call in its portal function, it calls the msleep( ) function on
a TimerHelper instance
that it has already created:
unsigned portal_func(Utcb &utcb, Utcb::Frame &input, bool &free_cap,
cap_sel pid)
{
Logging::printf("Thread will sleep... count=%u\n", count);
timer->msleep(1000);
return ENONE;
}
The problem is that, it is the first Execution Context who is blocked and
not the
second Execution Context.
Could anyone please give me an example of how can I achieve the inverse
case, where the first EC continue running
and suspends the second EC.
this is my code to obtain the portal:
cap_sel pseudonym = alloc_cap();
res = ParentProtocol::get_pseudonym(*utcb, "s0/ec2", 0, pseudonym);
cap_sel pt = alloc_cap();
res = ParentProtocol::get_portal(*utcb, pseudonym, pt, true,
"s0/worker_thread");
Thank you in advance.
Mehdi
[View Less]
Hi,
try to add "name::/s0/timer" to the hello config.
Cheers,
Alexander Böttcher.
Mehdi AICHOUCH <foxmehdi(a)gmail.com> schrieb:
>_______________________________________________
>l4-hackers mailing list
>l4-hackers(a)os.inf.tu-dresden.de
>http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers
Hello everyone,
I am trying to test the NOVA+NUL microhypervisor.
I played with the test application "nul/michal/apps/tests/startstop".
So, I modified this test to try a new a new test case, by modifying the
"hello" program that is
started by the "startstop" program.
I added to the Hello program the following code :
...
TimerHelper * timer;
timer = new TimerHelper(this);
while(1) {
Logging::printf("Hello ... \n", now);
timer->msleep(1000);
}
...
This simple code will print a message …
[View More]and suspend the Hello program for 1
second.
The problem is that when I tested this program alone, it worked perfectly
but when this same program is started by the "startstop" program using
start_config(), it does not suspend
on the msleep(1000).
Is my test correct or allowed by the NOVA-NUL microhypervisor?
If it is the case, could anyone please help to debug this issue.
Many thanks in advance.
Mehdi
PS: this is my configuration script.
#!/usr/bin/env novaboot
# -*-sh-*-
HYPERVISOR_PARAMS=serial
QEMU_FLAGS=-cpu phenom -smp 1 -serial stdio
bin/apps/sigma0.nul tracebuffer_verbose S0_DEFAULT hostserial hostvga
hostkeyb:0,0x60,1,12,2 \
script_start:1 script_waitchild service_config
bin/apps/startstop.nul
bin/apps/startstop.nulconfig <<EOF
sigma0::cpu:1 sigma0::mem:16 name::/s0/log name::/s0/config name::/s0/timer
name::/s0/fs/rom name::/s0/admission ||
rom://bin/apps/startstop.nul rom://test.nulconfig
EOF
bin/apps/hello.nul
test.nulconfig <<EOF
sigma0::cpu:1 sigma0::mem:16 name::/s0/log name::/s0/admission ||
rom://bin/apps/hello.nul
EOF
[View Less]
How do I use an initramfs with l4linux? I tried using
"l4x_rd=rom/initrd.cpio.gz" but it doesn't work. I see linux trying to use
it:
INITRD: 15000000 - 15114e00
...
Unpacking initramfs...
INITRD: Freeing memory.
...
But then I get
Failed to execute /init
Kernel panic - not syncing: No init found. Try passing init= option to
kernel. See Linux Documentation/init.txt for guidance.
I'm able to use the same initramfs file to boot normal linux kernel. I
tried various combinations of cpio formats …
[View More]and compression but it doesn't
seem to help. The only thing that works is compiling the initramfs into the
kernel which I want to avoid.
[View Less]