LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Newbie (https://www.linuxquestions.org/questions/linux-newbie-8/)
-   -   Do I have a PAE Kernel? (https://www.linuxquestions.org/questions/linux-newbie-8/do-i-have-a-pae-kernel-770703/)

action_owl 11-21-2009 07:34 PM

Do I have a PAE Kernel?
 
How can I check if I am using a PAE kernel or not?

~sHyLoCk~ 11-21-2009 08:00 PM

First post the output of:

Quote:

uname -a

action_owl 11-21-2009 08:10 PM

uname -a
Code:

Linux MYPC 2.6.31.5-127.fc12.x86_64 #1 SMP Sat Nov 7 21:11:14 EST 2009 x86_64 x86_64 x86_64 GNU/Linux

axet 11-21-2009 09:38 PM

yes, i has it.

PAE is ... check google

and you can check it by 'cat /proc/cpuinfo | grep -i PAE'

Smartpatrol 11-21-2009 10:18 PM

...

cola 11-21-2009 10:24 PM

http://en.wikipedia.org/wiki/Physical_Address_Extension

catkin 11-22-2009 12:24 AM

Quote:

Originally Posted by axet (Post 3765320)
yes, i has it.

PAE is ... check google

and you can check it by 'cat /proc/cpuinfo | grep -i PAE'

Doesn't that command check the CPU rather than the kernel?

action_owl 11-22-2009 01:44 AM

I didnt think that I had a PAE kernel because I have a 64bit processor but I kept seeing references to having more than 4GB of ram and no mention of processor arch so I was confused, thanks.

++nick++ 11-22-2009 06:23 AM

Hi,

To use 4GB RAM and over that , you need either PAE enabled kernels(PAE feature will be supported by 64-bit CPU's) in a 32-bit OS , else you can use a 64-bit OS which can detect and use your 4GB RAM efficiently. Issue with 64-bit OS is you cannot find all the device drivers and applications.

the trooper 11-22-2009 08:41 AM

Quote:

Issue with 64-bit OS is you cannot find all the device drivers and applications.
Like what?.

johnsfine 11-22-2009 08:46 AM

Quote:

Originally Posted by action_owl (Post 3765418)
I didnt think that I had a PAE kernel

You don't. You have a 64 bit kernel.

Quote:

because I have a 64bit processor
A 64 bit x86 processor can run a 32 bit non PAE kernel or a 32 bit PAE kernel or a 64 bit kernel. You have a 64 bit kernel.

Quote:

I kept seeing references to having more than 4GB of ram
A 32 bit non PAE kernel is limited to three and a fraction GB of ram.

A 64 bit kernel necessarily includes the extension to the address mapping system that is called "PAE" when used in a 32 bit system, and necessarily includes a further extension to the address mapping system beyond that. But a 64 bit kernel is never called "PAE" because (so far) there is just one possible address mapping design that can be used in 64 bit kernels (the one that is a step beyond 32 bit PAE).

Do you have 4GB or more of ram? Is it all working?

There are a number of possible motherboard and/or BIOS issues that limit a system to three and a fraction GB of ram even if they are 32 PAE or 64 bit. If the ram is limited that way by the BIOS or motherboard the choice between those three kinds of kernel does not affect the amount of usable ram.

If the limit is in the BIOS, it may be correctable by changing a BIOS setting or by installing a newer BIOS.

chrism01 11-22-2009 06:49 PM

Here's a good explanation http://kbase.redhat.com/faq/docs/DOC-6571

++nick++ 11-22-2009 08:04 PM

Quote:

Originally Posted by the trooper (Post 3765659)
Like what?.

I have seen people facing issues when trying to install drivers for consumer devices like a wifi card or a firewire card and so on..

Quakeboy02 11-22-2009 08:15 PM

Quote:

A 64 bit kernel necessarily includes the extension to the address mapping system that is called "PAE" when used in a 32 bit system, and necessarily includes a further extension to the address mapping system beyond that.
Are you sure? A 64 bit kernel doesn't need any remapping tricks to access the address space above 32 bits.

johnsfine 11-23-2009 08:42 AM

Quote:

Originally Posted by Quakeboy02 (Post 3766165)
Are you sure?

Very.

Quote:

A 64 bit kernel doesn't need any remapping tricks to access the address space above 32 bits.
x86 Linux always uses memory mapping. 32 bit non PAE, 32 bit PAE and 64 bit all use similar mapping designs.

The memory mapping translates a virtual address into a physical address. All three use a design that leaves the bottom 12 bits of the virtual address unchanged.

32 bit non PAE has 1024 entries per 4KB mapping table so each mapping level translates ten address bits. There are two mapping levels to translate the top 20 address bits. With the bottom 12 untranslated, a 32 bit virtual address becomes a 32 bit physical address.

There is nothing in the basic design that says a virtual address should be the same size as a physical address. The 32 bit x86 architecture limits the virtual address to 32 bits, but places no such limit on the physical address.

The 32 bit limit on physical address comes from having 1024 entries per 4KB mapping table. The major change from that to both PAE and 64 bit is having only 512 entries per 4KB mapping table.

With 512 entries, each level translates nine address bits. PAE needs three levels (two ordinary and one small) to translate the top 20 bits. 64 bit mode uses four levels to translate 36 bits, so including the 12 untranslated bits it has 48 bit virtual addresses.

I think 52 physical address bits would be possible with 512 x86 format entries per 4KB table. The spec for 32 bit PAE specifies 36 physical address bits. Various x86_64 chip models have various numbers of physical address bits from 36 up.


All times are GMT -5. The time now is 05:44 PM.