Adam Lackorzynski | 1 Jul 11:15
Picon
Favicon

Re: Problem with compiling Fiasco L4 on Suse


On Mon Jun 30, 2008 at 19:17:38 +0200, Stefan Kögel wrote:
> 
> > Can you build with "make V=1" and show the output where the error
> > happens including 20 or more lines above the error? Maybe I can see
> > something there.
> >
> >
> >
> > Adam
> make[5]: Entering directory `/home/stefan/Desktop/Fiasco/svn/tudos/dice/lib'
> Making all in debug
> make[6]: Entering directory 
> `/home/stefan/Desktop/Fiasco/svn/tudos/dice/lib/debug'
> /bin/bash ../../libtool --tag=CXX   --mode=link g++  -g -O2 -module 
> -version-number 0:3:0  -o libdice-debug.la -rpath /home/drops/lib/dice 
> init.lo BETrace.lo L4BETrace.lo L4V4BETrace.lo
> g++ -shared -nostdlib 
> /usr/lib/gcc/i486-linux-gnu/4.2.3/../../../../lib/crti.o 
> /usr/lib/gcc/i486-linux-gnu/4.2.3/crtbeginS.o  .libs/init.o 
> .libs/BETrace.o .libs/L4BETrace.o .libs/L4V4BETrace.o  
> -L/usr/lib/gcc/i486-linux-gnu/4.2.3 
> -L/usr/lib/gcc/i486-linux-gnu/4.2.3/../../../../lib -L/lib/../lib 
> -L/usr/lib/../lib -L/usr/lib/gcc/i486-linux-gnu/4.2.3/../../.. -lstdc++ 
> -lm -lc -lgcc_s /usr/lib/gcc/i486-linux-gnu/4.2.3/crtendS.o 
> /usr/lib/gcc/i486-linux-gnu/4.2.3/../../../../lib/crtn.o  -Wl,-soname 
> -Wl,libdice-debug.so.0 -o .libs/libdice-debug.so.0.3.0
> g++: /usr/lib/gcc/i486-linux-gnu/4.2.3/../../../../lib/crti.o: No such 
> file or directory
> g++: /usr/lib/gcc/i486-linux-gnu/4.2.3/crtbeginS.o: No such file or 
(Continue reading)

Stefan Kögel | 1 Jul 15:36
Picon
Picon

Problem with compiling Fiasco L4 on Suse


>>> Can you build with "make V=1" and show the output where the error
>>> happens including 20 or more lines above the error? Maybe I can see
>>> something there.
>>>
>>>
>>>
>>> Adam
>> make[5]: Entering directory `/home/stefan/Desktop/Fiasco/svn/tudos/dice/lib'
>> Making all in debug
>> make[6]: Entering directory 
>> `/home/stefan/Desktop/Fiasco/svn/tudos/dice/lib/debug'
>> /bin/bash ../../libtool --tag=CXX   --mode=link g++  -g -O2 -module 
>> -version-number 0:3:0  -o libdice-debug.la -rpath /home/drops/lib/dice 
>> init.lo BETrace.lo L4BETrace.lo L4V4BETrace.lo
>> g++ -shared -nostdlib 
>> /usr/lib/gcc/i486-linux-gnu/4.2.3/../../../../lib/crti.o 
>> /usr/lib/gcc/i486-linux-gnu/4.2.3/crtbeginS.o  .libs/init.o 
>> .libs/BETrace.o .libs/L4BETrace.o .libs/L4V4BETrace.o  
>> -L/usr/lib/gcc/i486-linux-gnu/4.2.3 
>> -L/usr/lib/gcc/i486-linux-gnu/4.2.3/../../../../lib -L/lib/../lib 
>> -L/usr/lib/../lib -L/usr/lib/gcc/i486-linux-gnu/4.2.3/../../.. -lstdc++ 
>> -lm -lc -lgcc_s /usr/lib/gcc/i486-linux-gnu/4.2.3/crtendS.o 
>> /usr/lib/gcc/i486-linux-gnu/4.2.3/../../../../lib/crtn.o  -Wl,-soname 
>> -Wl,libdice-debug.so.0 -o .libs/libdice-debug.so.0.3.0
>> g++: /usr/lib/gcc/i486-linux-gnu/4.2.3/../../../../lib/crti.o: No such 
>> file or directory
>> g++: /usr/lib/gcc/i486-linux-gnu/4.2.3/crtbeginS.o: No such file or 
>> directory
>> g++: /usr/lib/gcc/i486-linux-gnu/4.2.3/crtendS.o: No such file or directory
(Continue reading)

Zhang Yinfei | 2 Jul 18:05
Picon

multi-core support for fiasco? v.s. multi-processor?

Hi all,
 
I've listened to a lecture by Prof. Hermann Haertig about L4 in my university and I'm quite interested in doing some research on L4/Fiasco. I've reviewed some source code of Fiasco recently and one thing I can think of is to add multi-core support for L4/Fiasco. In my investigation, there are some people wrote papers about adding multi-processor (SMP) support for L4 but no one is talking about multi-core support. Is there a big difference between these two in the aspect of fiasco kernel? I'd be very appreciated if you guys can give me some opinions on this. Thanks.
 
 
 
Thanks & Best Regards,
Zhang Yinfei
_______________________________________________
l4-hackers mailing list
l4-hackers <at> os.inf.tu-dresden.de
http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers
Adam Lackorzynski | 3 Jul 23:19
Picon
Favicon

Re: multi-core support for fiasco? v.s. multi-processor?

Hi,

On Thu Jul 03, 2008 at 00:05:42 +0800, Zhang Yinfei wrote:
> I've listened to a lecture by Prof. Hermann Haertig about L4 in my
> university and I'm quite interested in doing some research on L4/Fiasco.
> I've reviewed some source code of Fiasco recently and one thing I can think
> of is to add multi-core support for L4/Fiasco. In my investigation, there
> are some people wrote papers about adding multi-processor (SMP) support for
> L4 but no one is talking about multi-core support. Is there a big difference
> between these two in the aspect of fiasco kernel? I'd be very appreciated if
> you guys can give me some opinions on this. Thanks.

There is basically no difference in the context we're talking about. SMP
generally denotes _symmetric_ multi-processing, i.e. processors are part
of the same memory coherency domain. Multi-core mostly denote multiple
CPUs in one package (e.g. recent dual-core, quad-core offerings). For
OSs it's mostly transparent if CPUs are sitting on the same socket in
the same package or on e.g. two separate sockets. Those difference are
getting bigger when the number of cores increase but that's not
commodity yet.

Adam
--

-- 
Adam                 adam <at> os.inf.tu-dresden.de
  Lackorzynski         http://os.inf.tu-dresden.de/~adam/
René Rebe | 4 Jul 10:14
Picon
Favicon

Re: multi-core support for fiasco? v.s. multi-processor?

Hi,

Adam Lackorzynski wrote:
> Hi,
>
> On Thu Jul 03, 2008 at 00:05:42 +0800, Zhang Yinfei wrote:
>   
>> I've listened to a lecture by Prof. Hermann Haertig about L4 in my
>> university and I'm quite interested in doing some research on L4/Fiasco.
>> I've reviewed some source code of Fiasco recently and one thing I can think
>> of is to add multi-core support for L4/Fiasco. In my investigation, there
>> are some people wrote papers about adding multi-processor (SMP) support for
>> L4 but no one is talking about multi-core support. Is there a big difference
>> between these two in the aspect of fiasco kernel? I'd be very appreciated if
>> you guys can give me some opinions on this. Thanks.
>>     
>
> There is basically no difference in the context we're talking about. SMP
> generally denotes _symmetric_ multi-processing, i.e. processors are part
> of the same memory coherency domain. Multi-core mostly denote multiple
> CPUs in one package (e.g. recent dual-core, quad-core offerings). For
> OSs it's mostly transparent if CPUs are sitting on the same socket in
> the same package or on e.g. two separate sockets. Those difference are
> getting bigger when the number of cores increase but that's not
> commodity yet.
>   
A place for optimization (that the last time I looked was not yet 
implemented) is
awareness of NUMA - Non Uniform Memory Architecture, e.g. with core-local
memory in AMD HyperTransport setups.

--

-- 
  René Rebe - ExactCODE GmbH - Europe, Germany, Berlin
  http://exactcode.de | http://t2-project.org | http://rene.rebe.name
Zhang Yinfei | 6 Jul 15:49
Picon

about Conventional Memory Region

Hi all,
 
I've got a question about Fiasco source.
 
As in Mem_region Kip::last_free() const, the function try to find the highest Conventional memory region's physical address. (I guess it gets physical memory bottom in the first time?).  However in void Kip_init::init(), I only see one Conventional memory region which stores virtual address. Where does last_free() get the physical address??
 
And in bootstrap, I see it manipulate KIP. I thought at that time, KIP is not initialize, because bootstrap runs before Fiasco Startup, where Kip_init::init() is called.
 
 
Thanks & Best Regards,
Zhang Yinfei
_______________________________________________
l4-hackers mailing list
l4-hackers <at> os.inf.tu-dresden.de
http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers
Adam Lackorzynski | 6 Jul 23:51
Picon
Favicon

Re: about Conventional Memory Region

Hi,

On Sun Jul 06, 2008 at 21:49:03 +0800, Zhang Yinfei wrote:
> As in *Mem_region Kip::last_free() const*, the function try to find the
> highest *Conventional* memory region's physical address. (I guess it gets
> physical memory bottom in the first time?).  However in *void
> Kip_init::init(),* I only see one Conventional memory region which stores
> virtual address. Where does last_free() get the physical address??
> 
> And in bootstrap, I see it manipulate KIP. I thought at that time, KIP is
> not initialize, because bootstrap runs before Fiasco Startup, where
> Kip_init::init() is called.

The KIP data structure is indeed in the kernel binary but it is filled
with memory descriptors by bootstrap. I.e. look for find_kip in
bootstrap which looks for the KIP in the kernel. Kip_init::init() does
setup a few things in the KIP but it does not start from scratch with
the memory descriptors.

Adam
--

-- 
Adam                 adam <at> os.inf.tu-dresden.de
  Lackorzynski         http://os.inf.tu-dresden.de/~adam/
Zhang Yinfei | 7 Jul 16:10
Picon

Re: about Conventional Memory Region

Hi Adam,
 
Thanks for the reply. But I cannot find any symbol called find_kip in the fiasco source code. For bootstrap, do you mean those source files in kernel/fiasco/src/boot/ia32/ ?I just want to know where is the source code which start the KIP from scratch . Thanks.
 
Best Regards,
Zhang Yinfei
 


 
On 7/7/08, l4-hackers-request <at> os.inf.tu-dresden.de <l4-hackers-request <at> os.inf.tu-dresden.de> wrote:

Date: Sun, 6 Jul 2008 23:51:46 +0200
From: Adam Lackorzynski <adam <at> os.inf.tu-dresden.de>
Subject: Re: about Conventional Memory Region
To: l4-hackers <at> os.inf.tu-dresden.de
Message-ID: <20080706215146.GJ7899 <at> os.inf.tu-dresden.de>
Content-Type: text/plain; charset=iso-8859-1

Hi,

On Sun Jul 06, 2008 at 21:49:03 +0800, Zhang Yinfei wrote:
> As in *Mem_region Kip::last_free() const*, the function try to find the
> highest *Conventional* memory region's physical address. (I guess it gets
> physical memory bottom in the first time?).  However in *void
> Kip_init::init(),* I only see one Conventional memory region which stores
> virtual address. Where does last_free() get the physical address??
>
> And in bootstrap, I see it manipulate KIP. I thought at that time, KIP is
> not initialize, because bootstrap runs before Fiasco Startup, where
> Kip_init::init() is called.

The KIP data structure is indeed in the kernel binary but it is filled
with memory descriptors by bootstrap. I.e. look for find_kip in
bootstrap which looks for the KIP in the kernel. Kip_init::init() does
setup a few things in the KIP but it does not start from scratch with
the memory descriptors.



Adam
--
Adam                 adam <at> os.inf.tu-dresden.de
Lackorzynski         http://os.inf.tu-dresden.de/~adam/



------------------------------

_______________________________________________
l4-hackers mailing list
l4-hackers <at> os.inf.tu-dresden.de
http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers


End of l4-hackers Digest, Vol 63, Issue 5
*****************************************

_______________________________________________
l4-hackers mailing list
l4-hackers <at> os.inf.tu-dresden.de
http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers
Adam Lackorzynski | 8 Jul 00:21
Picon
Favicon

Re: about Conventional Memory Region

Hi,

On Mon Jul 07, 2008 at 22:10:28 +0800, Zhang Yinfei wrote:
> Thanks for the reply. But I cannot find any symbol called find_kip in the
> fiasco source code. For bootstrap, do you mean those source files in
> kernel/fiasco/src/boot/ia32/ $B!)(BI just want to know where is the source code
> which start the KIP from scratch . Thanks.

No, sorry. I meant the code in l4/pkg/bootstrap. The find_kip is there.

Adam
--

-- 
Adam                 adam <at> os.inf.tu-dresden.de
  Lackorzynski         http://os.inf.tu-dresden.de/~adam/
Picon

DDE library

Hi,all
Recently, i wrote a simple sound server that only contains DDE
initialization routines and tried to compile it with DDE libraries.
After checking the Makefile in dde/linux26/lib/src, I guess i need the
library 'libdde_linux26_sound.a' to link with, but it seems that i
need to write the source code 'sound.c' to map linux functions to
DDEKit. How can i implement this? any suggestion or hint?

Thank you in advance

Saya

Gmane