Re: is it em64t ?

2006-01-27 Thread Marcin Dębicki
zzz haha kiedys napisal:

> If I have a HT cpu, should I use smp kernel image?
Yes, you should if you want two logical cpus

-- 
Registered Linux User 369908
[EMAIL PROTECTED]


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: is it em64t ?

2006-01-27 Thread zzz haha
If I have a HT cpu, should I use smp kernel image?

processor   : 0
vendor_id   : GenuineIntel
cpu family  : 15
model   : 4
model name  : Intel(R) Pentium(R) 4 CPU 2.66GHz
stepping: 1
cpu MHz : 2661.169
cache size  : 1024 KB
fdiv_bug: no
hlt_bug : no
f00f_bug: no
coma_bug: no
fpu : yes
fpu_exception   : yes
cpuid level : 5
wp  : yes
flags   : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge
mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe lm
pni monitor ds_cpl tm2 cid cx16 xtpr
bogomips: 5325.45

Thanks



Re: is it em64t ?

2006-01-27 Thread Andrew Sharp
On Thu, Jan 12, 2006 at 11:38:08PM -0400, Peter Cordes wrote:
>  I think that's all wrong.  The flags are more or less a decoding of the
> CPUID result codes.
> 
>  As for HT, my dad's old laptop 1.7GHz P4-mobile (Northwood) has the ht
> flag, but it sure as hell doesn't have two logical CPUs.  I looked at (but
> didn't really come close to understanding ;P) the relevant kernel code, and I

Nak.  Are you sure you are running an SMP kernel on it?  The ht flag means
that the processor is hyperthreading capable.  If your dad's lappy doesn't
show 2 cpus, it may be because HT is disabled in the BIOS.  If the BIOS
doesn't have an option for enabling HT, then check for a BIOS update!
Some manufacturers actually shipped machines with HT capable processors
in the early days that couldn't do HT.  Doesn't mean the processor wasn't
capable of it.

Cheers,

a


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: is it em64t ?

2006-01-12 Thread Peter Cordes
On Sat, Jan 07, 2006 at 12:45:04PM +0100, Ernest jw ter Kuile wrote:
> On Saturday 07 January 2006 11:46, Hamish Moffatt wrote:
> >
> > It does, but what if HyperThreading was present but disabled in the
> > BIOS? I don't know how you would tell in that case.
> 
> Most of these flags are not set simply because the kernel found a certain 
> type 
> of processor. They are the result of elaborate startup tests which detect 
> these capabilities. 
> 
> If a capability is disabled in the bios, two things can happen
> 
> 1) the kernel does not detect it at all; in which case the relevant flag is 
> not set;
> 
> 2) the kernel detects the capability but switched off; in which case the 
> kernel will attempt to switch it on (if it can of course). If this succeeds 
> the flag is set, if not you will often see an error and the flag is not 
> switched on.
> 
> I have been told, however, that a few processor capabilities are so bound to 
> the a certain type of cpu that their flag is simply set if that cpu is found.
> 
> I don't know under which category the hyperthreading flag falls, but knowing 
> that hyperthreading can be disabled in the bios, I would not expect the 
> kernel to simply set that flag blindly.

 I think that's all wrong.  The flags are more or less a decoding of the
CPUID result codes.

 As for HT, my dad's old laptop 1.7GHz P4-mobile (Northwood) has the ht
flag, but it sure as hell doesn't have two logical CPUs.  I looked at (but
didn't really come close to understanding ;P) the relevant kernel code, and I
think the ht flag indicates support for an API for asking how many logical
CPUs there are, and so on, not that there actually are multiple logical CPUs
on that physical CPU.

 The kernel log messages (look in /var/log/dmesg if other messages have
bumped them from the ring buffer) are more useful than the ht flag.

 I don't remember if x86info is useful for this or not, but it's generally
good at finding out about CPUs.

-- 
#define X(x,y) x##y
Peter Cordes ;  e-mail: X([EMAIL PROTECTED] , des.ca)

"The gods confound the man who first found out how to distinguish the hours!
 Confound him, too, who in this place set up a sundial, to cut and hack
 my day so wretchedly into small pieces!" -- Plautus, 200 BC


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: is it em64t ?

2006-01-08 Thread Lennart Sorensen
On Sun, Jan 08, 2006 at 03:08:21AM +0100, Markus Boas wrote:
> Just an example
> 
> powerrechner:/# cat /proc/cpuinfo
> processor   : 0
> vendor_id   : GenuineIntel
> cpu family  : 15
> model   : 4
> model name  :   Intel(R) Xeon(TM) CPU 3.00GHz
> stepping: 1
> cpu MHz : 3000.261
> cache size  : 1024 KB
> physical id : 0
> siblings: 2
> core id : 0
> cpu cores   : 1
> fpu : yes
> fpu_exception   : yes
> cpuid level : 5
> wp  : yes
> flags   : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca 
> cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm 
> constant_tsc pni monitor ds_cpl cid cx16 xtpr
> bogomips: 6007.19
> clflush size: 64
> cache_alignment : 128
> address sizes   : 36 bits physical, 48 bits virtual
> power management:
> 
> processor   : 1
> vendor_id   : GenuineIntel
> cpu family  : 15
> model   : 4
> model name  :   Intel(R) Xeon(TM) CPU 3.00GHz
> stepping: 1
> cpu MHz : 3000.261
> cache size  : 1024 KB
> physical id : 3
> siblings: 2
> core id : 0
> cpu cores   : 1
> fpu : yes
> fpu_exception   : yes
> cpuid level : 5
> wp  : yes
> flags   : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca 
> cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm 
> constant_tsc pni monitor ds_cpl cid cx16 xtpr
> bogomips: 6000.44
> clflush size: 64
> cache_alignment : 128
> address sizes   : 36 bits physical, 48 bits virtual
> power management:
> 
> processor   : 2
> vendor_id   : GenuineIntel
> cpu family  : 15
> model   : 4
> model name  :   Intel(R) Xeon(TM) CPU 3.00GHz
> stepping: 1
> cpu MHz : 3000.261
> cache size  : 1024 KB
> physical id : 0
> siblings: 2
> core id : 0
> cpu cores   : 1
> fpu : yes
> fpu_exception   : yes
> cpuid level : 5
> wp  : yes
> flags   : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca 
> cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm 
> constant_tsc pni monitor ds_cpl cid cx16 xtpr
> bogomips: 6000.42
> clflush size: 64
> cache_alignment : 128
> address sizes   : 36 bits physical, 48 bits virtual
> power management:
> 
> processor   : 3
> vendor_id   : GenuineIntel
> cpu family  : 15
> model   : 4
> model name  :   Intel(R) Xeon(TM) CPU 3.00GHz
> stepping: 1
> cpu MHz : 3000.261
> cache size  : 1024 KB
> physical id : 3
> siblings: 2
> core id : 0
> cpu cores   : 1
> fpu : yes
> fpu_exception   : yes
> cpuid level : 5
> wp  : yes
> flags   : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca 
> cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm 
> constant_tsc pni monitor ds_cpl cid cx16 xtpr
> bogomips: 6000.44
> clflush size: 64
> cache_alignment : 128
> address sizes   : 36 bits physical, 48 bits virtual
> power management:
> 
> This is a dual Xeon with ht.
> Also an em64t.

Dual single core hyperthreading xeons if I read the above correctly.

Certainly given the physical id is 0 on two of them, and 3 on two of
them, and there is 4 cpus listing 2 siblings, and all of them show core
id 0, that is how I would understand it.  If any showed core id other
than 0, I would assume dual core.

Len Sorensen


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: is it em64t ?

2006-01-07 Thread Markus Boas
Just an example

powerrechner:/# cat /proc/cpuinfo
processor   : 0
vendor_id   : GenuineIntel
cpu family  : 15
model   : 4
model name  :   Intel(R) Xeon(TM) CPU 3.00GHz
stepping: 1
cpu MHz : 3000.261
cache size  : 1024 KB
physical id : 0
siblings: 2
core id : 0
cpu cores   : 1
fpu : yes
fpu_exception   : yes
cpuid level : 5
wp  : yes
flags   : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca 
cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm 
constant_tsc pni monitor ds_cpl cid cx16 xtpr
bogomips: 6007.19
clflush size: 64
cache_alignment : 128
address sizes   : 36 bits physical, 48 bits virtual
power management:

processor   : 1
vendor_id   : GenuineIntel
cpu family  : 15
model   : 4
model name  :   Intel(R) Xeon(TM) CPU 3.00GHz
stepping: 1
cpu MHz : 3000.261
cache size  : 1024 KB
physical id : 3
siblings: 2
core id : 0
cpu cores   : 1
fpu : yes
fpu_exception   : yes
cpuid level : 5
wp  : yes
flags   : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca 
cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm 
constant_tsc pni monitor ds_cpl cid cx16 xtpr
bogomips: 6000.44
clflush size: 64
cache_alignment : 128
address sizes   : 36 bits physical, 48 bits virtual
power management:

processor   : 2
vendor_id   : GenuineIntel
cpu family  : 15
model   : 4
model name  :   Intel(R) Xeon(TM) CPU 3.00GHz
stepping: 1
cpu MHz : 3000.261
cache size  : 1024 KB
physical id : 0
siblings: 2
core id : 0
cpu cores   : 1
fpu : yes
fpu_exception   : yes
cpuid level : 5
wp  : yes
flags   : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca 
cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm 
constant_tsc pni monitor ds_cpl cid cx16 xtpr
bogomips: 6000.42
clflush size: 64
cache_alignment : 128
address sizes   : 36 bits physical, 48 bits virtual
power management:

processor   : 3
vendor_id   : GenuineIntel
cpu family  : 15
model   : 4
model name  :   Intel(R) Xeon(TM) CPU 3.00GHz
stepping: 1
cpu MHz : 3000.261
cache size  : 1024 KB
physical id : 3
siblings: 2
core id : 0
cpu cores   : 1
fpu : yes
fpu_exception   : yes
cpuid level : 5
wp  : yes
flags   : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca 
cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm 
constant_tsc pni monitor ds_cpl cid cx16 xtpr
bogomips: 6000.44
clflush size: 64
cache_alignment : 128
address sizes   : 36 bits physical, 48 bits virtual
power management:

This is a dual Xeon with ht.
Also an em64t.

Am Samstag 07 Januar 2006 20:43 schrieb Lennart Sorensen:
> On Sat, Jan 07, 2006 at 11:00:44AM +0100, Jerome Warnier wrote:
> > processor   : 0
>
> [snip]
>
> > physical id : 0
> > siblings: 2
>
> [snip]
>
> > processor   : 1
> > physical id : 0
> > siblings: 2
>
> [snip]
>
> Both CPUs are physical ID 0 and both say they are part of a set of 2
> siblings.  I am quite sure that means it is using hyperthreading, and is
> not dual core or dual cpu.  Just hyperthreading.
>
> Len Sorensen


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: is it em64t ?

2006-01-07 Thread Lennart Sorensen
On Sat, Jan 07, 2006 at 11:00:44AM +0100, Jerome Warnier wrote:
> processor   : 0
[snip]
> physical id : 0
> siblings: 2
[snip]
> processor   : 1
> physical id : 0
> siblings: 2
[snip]

Both CPUs are physical ID 0 and both say they are part of a set of 2
siblings.  I am quite sure that means it is using hyperthreading, and is
not dual core or dual cpu.  Just hyperthreading.

Len Sorensen


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: is it em64t ?

2006-01-07 Thread Ernest jw ter Kuile
On Saturday 07 January 2006 11:46, Hamish Moffatt wrote:
>
> It does, but what if HyperThreading was present but disabled in the
> BIOS? I don't know how you would tell in that case.

Most of these flags are not set simply because the kernel found a certain type 
of processor. They are the result of elaborate startup tests which detect 
these capabilities. 

If a capability is disabled in the bios, two things can happen

1) the kernel does not detect it at all; in which case the relevant flag is 
not set;

2) the kernel detects the capability but switched off; in which case the 
kernel will attempt to switch it on (if it can of course). If this succeeds 
the flag is set, if not you will often see an error and the flag is not 
switched on.

I have been told, however, that a few processor capabilities are so bound to 
the a certain type of cpu that their flag is simply set if that cpu is found.

I don't know under which category the hyperthreading flag falls, but knowing 
that hyperthreading can be disabled in the bios, I would not expect the 
kernel to simply set that flag blindly.

Ernest.


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: is it em64t ?

2006-01-07 Thread Jerome Warnier
Le samedi 07 janvier 2006 à 11:56 +0100, Michal Schmidt a écrit :
> Jerome Warnier wrote:
> > By the way: I need to work on a Xeon machine remotely, and I wondered if
> > it had multiple processors (it is not a dual-core) or simply
> > HyperThreading. How can I distinguish? Here is /proc/cpuinfo:
> > processor   : 0
> > ...
> > physical id : 0
> > siblings: 2
> > ...
> > 
> > processor   : 1
> > ...
> > physical id : 0
> > siblings: 2
> 
> You can see two logical processors (numbered 0 and 1), which are both 
> parts of a single physical processor (with physical id 0). Each 
> processor is one of 2 siblings.
> => this is a single hyperthreaded processor
Thanks, this is all I wanted to know, exactly the way I wanted it.

> Michal
-- 
Jérôme Warnier
FLOSS Consultant
http://beeznest.net



Re: is it em64t ?

2006-01-07 Thread Jerome Warnier
Le samedi 07 janvier 2006 à 21:46 +1100, Hamish Moffatt a écrit :
> On Sat, Jan 07, 2006 at 08:34:31AM -0200, Eduardo M KALINOWSKI wrote:
> > Jerome Warnier wrote:
> > 
> > >By the way: I need to work on a Xeon machine remotely, and I wondered if
> > >it had multiple processors (it is not a dual-core) or simply
> > >HyperThreading. How can I distinguish? Here is /proc/cpuinfo:
> > >
> > >flags   : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge
> > >mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe lm
> > >pni monitor ds_cpl cid
> > >
> > I'm no expert in processors, but I'd guess that "ht" there in the flags
> > means it has HyperThreading support.
> 
> It does, but what if HyperThreading was present but disabled in the
> BIOS? I don't know how you would tell in that case.
Or SMP support disabled in the kernel.


> Hamish
> -- 
> Hamish Moffatt VK3SB <[EMAIL PROTECTED]> <[EMAIL PROTECTED]>
> 
> 
-- 
Jérôme Warnier
FLOSS Consultant
http://beeznest.net



Re: is it em64t ?

2006-01-07 Thread Michal Schmidt

Jerome Warnier wrote:

By the way: I need to work on a Xeon machine remotely, and I wondered if
it had multiple processors (it is not a dual-core) or simply
HyperThreading. How can I distinguish? Here is /proc/cpuinfo:
processor   : 0
...
physical id : 0
siblings: 2
...

processor   : 1
...
physical id : 0
siblings: 2


You can see two logical processors (numbered 0 and 1), which are both 
parts of a single physical processor (with physical id 0). Each 
processor is one of 2 siblings.

=> this is a single hyperthreaded processor

Michal


--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: is it em64t ?

2006-01-07 Thread Hamish Moffatt
On Sat, Jan 07, 2006 at 08:34:31AM -0200, Eduardo M KALINOWSKI wrote:
> Jerome Warnier wrote:
> 
> >By the way: I need to work on a Xeon machine remotely, and I wondered if
> >it had multiple processors (it is not a dual-core) or simply
> >HyperThreading. How can I distinguish? Here is /proc/cpuinfo:
> >
> >flags   : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge
> >mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe lm
> >pni monitor ds_cpl cid
> >
> I'm no expert in processors, but I'd guess that "ht" there in the flags
> means it has HyperThreading support.

It does, but what if HyperThreading was present but disabled in the
BIOS? I don't know how you would tell in that case.


Hamish
-- 
Hamish Moffatt VK3SB <[EMAIL PROTECTED]> <[EMAIL PROTECTED]>


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: is it em64t ?

2006-01-07 Thread Eduardo M KALINOWSKI
Jerome Warnier wrote:

>By the way: I need to work on a Xeon machine remotely, and I wondered if
>it had multiple processors (it is not a dual-core) or simply
>HyperThreading. How can I distinguish? Here is /proc/cpuinfo:
>
>flags   : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge
>mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe lm
>pni monitor ds_cpl cid
>  
>
>
I'm no expert in processors, but I'd guess that "ht" there in the flags
means it has HyperThreading support.


-- 
Please recycle.

Eduardo M KALINOWSKI
[EMAIL PROTECTED]
http://move.to/hpkb


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: is it em64t ?

2006-01-07 Thread Jerome Warnier
Le jeudi 05 janvier 2006 à 11:09 +0100, Erik Mouw a écrit :
> On Thu, Jan 05, 2006 at 10:22:51AM +0100, Koen Vermeer wrote:
> > On Thu, 2006-01-05 at 17:04 +0800, zzz haha wrote:
> > > i have a p4 machine. how can i know if it has em64t?
> > 
> > A somewhat stupid but nevertheless possibly useful suggestion: Try to
> > boot the Debian x86-64 installation CD. If it works, you either have an
> > em64t or an amd64 processor. Since you state your machine is a p4, you
> > may safely rule out the latter possibility.
> > 
> > Alternatively, try to find out what processor is in there, and check the
> > Intel website. Maybe there's also a flag in /proc/cpuinfo that indicates
> > em64t capabilities.
> 
> The "lm" flag in /proc/cpuinfo tells the CPU can do "long mode", which
> means it has the 64 bit extensions.
By the way: I need to work on a Xeon machine remotely, and I wondered if
it had multiple processors (it is not a dual-core) or simply
HyperThreading. How can I distinguish? Here is /proc/cpuinfo:
processor   : 0
vendor_id   : GenuineIntel
cpu family  : 15
model   : 4
model name  : Intel(R) Xeon(TM) CPU 3.00GHz
stepping: 1
cpu MHz : 3001.253
cache size  : 1024 KB
physical id : 0
siblings: 2
fdiv_bug: no
hlt_bug : no
f00f_bug: no
coma_bug: no
fpu : yes
fpu_exception   : yes
cpuid level : 5
wp  : yes
flags   : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge
mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe lm
pni monitor ds_cpl cid
bogomips: 5947.39

processor   : 1
vendor_id   : GenuineIntel
cpu family  : 15
model   : 4
model name  : Intel(R) Xeon(TM) CPU 3.00GHz
stepping: 1
cpu MHz : 3001.253
cache size  : 1024 KB
physical id : 0
siblings: 2
fdiv_bug: no
hlt_bug : no
f00f_bug: no
coma_bug: no
fpu : yes
fpu_exception   : yes
cpuid level : 5
wp  : yes
flags   : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge
mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe lm
pni monitor ds_cpl cid
bogomips: 5996.54

Thanks

> Erik

-- 
Jérôme Warnier
FLOSS Consultant
http://beeznest.neteb



Re: is it em64t ?

2006-01-05 Thread zzz haha
>
> The "lm" flag in /proc/cpuinfo tells the CPU can do "long mode", which
> means it has the 64 bit extensions.

thank you!



Re: is it em64t ?

2006-01-05 Thread Erik Mouw
On Thu, Jan 05, 2006 at 10:22:51AM +0100, Koen Vermeer wrote:
> On Thu, 2006-01-05 at 17:04 +0800, zzz haha wrote:
> > i have a p4 machine. how can i know if it has em64t?
> 
> A somewhat stupid but nevertheless possibly useful suggestion: Try to
> boot the Debian x86-64 installation CD. If it works, you either have an
> em64t or an amd64 processor. Since you state your machine is a p4, you
> may safely rule out the latter possibility.
> 
> Alternatively, try to find out what processor is in there, and check the
> Intel website. Maybe there's also a flag in /proc/cpuinfo that indicates
> em64t capabilities.

The "lm" flag in /proc/cpuinfo tells the CPU can do "long mode", which
means it has the 64 bit extensions.


Erik

-- 
+-- Erik Mouw -- www.harddisk-recovery.com -- +31 70 370 12 90 --
| Lab address: Delftechpark 26, 2628 XH, Delft, The Netherlands


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: is it em64t ?

2006-01-05 Thread Koen Vermeer
On Thu, 2006-01-05 at 17:04 +0800, zzz haha wrote:
> i have a p4 machine. how can i know if it has em64t?

A somewhat stupid but nevertheless possibly useful suggestion: Try to
boot the Debian x86-64 installation CD. If it works, you either have an
em64t or an amd64 processor. Since you state your machine is a p4, you
may safely rule out the latter possibility.

Alternatively, try to find out what processor is in there, and check the
Intel website. Maybe there's also a flag in /proc/cpuinfo that indicates
em64t capabilities.

Koen


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]