Re: Compiling C++ modules

linux-os (Dick Johnson)
2006-04-25T17:54:55Z

On Tue, 25 Apr 2006, Avi Kivity wrote:

> Dmitry Torokhov wrote:
>>>> TakeLock l(&lock);
>>>>
>>>> do_something();
>>>> do_something_else();
>>>>
>>>> First of all, that extra TakeLock object chews up stack, at least 4 or
>>>> 8 bytes of it, depending on your word size.
>>>>
>>> No, it's optimized out. gcc notices that &lock doesn't change and that
>>> 'l' never escapes the function.
>>>
>>
>> "l" that propects critical section gets thrown away???
> Calm down, the storage for 'l' is thrown away, but its effects remain.
>> What is the
>> name of the filesystem you ported? I mean, I need to know so I don't
>> use it by accident.
>>
> It's very expensive, you can't use it by accident.

Class Kernel
{
public:
virtual void starter(Scheduler *current) = 0x00;
};

Okay, I just started your new C++ kernel! Please send email when it
is done. I will help test it.

> --
> Do not meddle in the internals of kernels, for they are subtle and quick to panic.
>

Cheers,
Dick Johnson
Penguin : Linux version 2.6.16.4 on an i686 machine (5592.89 BogoMips).
Warning : 98.36% of all statistics are fiction, book release in April.
_
\x1a\x04

****************************************************************
The information transmitted in this message is confidential and may be privileged. Any review, retransmission, dissemination, or other use of this information by persons or entities other than the intended recipient is prohibited. If you are not the intended recipient, please notify Analogic Corporation immediately - by replying to this message or by sending an email to DeliveryErrors@analogic.com - and destroy all copies of this information, including any attachments, without reading or disclosing them.

Thank you.