来一发CentOS 32位&64位 最年夜撑持内存
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的小伙伴们!32位的Linux的内存最年夜撑持到4GB,64位的Linux的最年夜撑持内存在TB级别上。(实践上最年夜撑持多年夜的内容跟操纵体系的品种有关,而是跟操纵体系是几位的、另有CPU是几位的有关。)
DOS是16位的,以是DOS撑持的最年夜内存是64MB(2的16次方字节=64MB)。
32位的Linux和Windows撑持的最年夜内存是4GB(2的32次方字节=4GB)。
64位的Linux和Windows撑持的最年夜内存=16EB。
CentOS5.232位能辨认的最年夜内存?
RT,32位体系寻址为4G,可是我想就教一下CentOSrelease5.2(Final)最年夜能辨认多年夜的内存?
#uname-a
Linuxnfs2.6.18-92.el5#1SMPTueJun1018:49:47EDT2008i686i686i386GNU/Linux
-----
CPU可以寻址:2^n字节(n为CPU地点线数)
一样平常32位可寻址4G
-----
仿佛WIN2003也只能撑持到4G(没加/PAE选择),而且只显现出3.3G摆布的内存!
-----
有特别的内核,经由过程特别的机制会见多出来的4G,
仿佛是***-PAE后缀的内核暗示撑持年夜内存。
-----
不做任那边理只能辨认最年夜4G,实践上3.2G
装置PAE能够辨认到64G的内存
-----
如今的32位呆板都36位总线了,启用PAE机制能够辨认64GB
-----
假如内核有撑持更高内存的模块,那能够辨认(如今的体系一样平常会翻开谁人功效)
-----
翻开HIGHMEM选项,可撑持到64GB
这是我的一台双核*4的办事器,32bit
#free
totalusedfreesharedbufferscached
Mem:820510081752882981201114967713768
-/+buffers/cache:3500247855076
Swap:209637602096376
root@Linux1~
-----
我的也能撑持8G,没编译过内核,也没作甚么出格的设置,内核为2.6.9-42.ELsmp
totalusedfreesharedbufferscached
Mem:83098562165168614468801578481442192
-/+buffers/cache:5651287744728
Swap:209709602097096
-----
嗯,不开PAE也就辨认3.几个G,这是X86系统的缺点,bios另有主板上的一些存放器的编址也要占用地点空间的,并且是从4G的洼地址入手下手编址的,以是可用的地点也就3个多G
-----
实践上是用不了4G的内存的,3.xG以上的一局部被体系保存了(Google上说是被PCI装备占用甚么的)...
上述情形在局部呆板呈现,别的机子偶不分明
-----
任意搜了一下kernelPAE找到文章:
操纵体系在32bitx86平台上最年夜寻址空间只要4GB,假如要利用年夜于4GB的内存,就必需利用Intel的PAE(物理地点扩大)形式。在WindowsNT平台完成PAE只必要对boot.ini加上/pae便可。而关于RHEL5,缺省装置形式下是不同意检测凌驾4GB内存,以是我们必要在内核装置终了后再装置kernel-PAE套件。
x86平台的硬件撑持两级页表,IntelPentiumpro以上的型号均撑持PAE和***页表,使得体系最年夜寻址到达36位,就是64GB的内存。可是体系历程运转时利用的永久是假造地点,在32位字长的i386呆板上,一个历程永久没法会见超越4G的字节。kernel只能经由过程拼集的体例盘算出年夜于4G的内存地点。
在Linuxkernel设置项里有HighMemmorySupport,假如总内存小于即是1G的选"off",年夜于4G的选"64G"
Note:Linuxcanuseupto64Gigabytesofphysicalmemoryonx86systems.However,theaddressspaceof32-bitx86processorsisonly4Gigabyteslarge.Thusmeansthat,ifyouhavealargeamountofphysicalmemory,notallofitcanbe"permanentlymapped"bythekernel.Thephysicalmemorythatsnotpermanentlymappediscalled"highmemory".
另有一项Allocate3rd-levelpagetablesfromhighmem,利用这一项能够在内存良多(年夜于4G)的呆板大将用户空间的页表放到高位内存区,以勤俭可贵的低端内存。
========================================================
叨教在32位的SUSE9下装置Oracle10G后,Oracle最年夜所能利用的内存是不是为4G?
为办事器设置了16G内存,如今却仅仅用了一点点,忧郁啊
方才查了查,良多材料称32位操纵体系Oracle只撑持2G内存,不晓得是不是失实??
也实验在用64位的SUSE9上装置Oracle,统统很顺遂,可是不晓得为何在创立数据库的,总提醒pmon历程没法启动
因为体系急,只好改回32位的SUSE9。。。。。
-----
仍是用64位吧,32位OS上的Oracle,除非接纳特别的手艺,一样平常SGA只能到达1.7G
-----
倡议利用x86-64Linux,假如必需利用32位Linux,可参考:
Metalinknote260152.1SummaryAbouttheLargeSGA&AddressSpaceonRHLinux
我摘录重点局部给你:
Configuration5
*RedHatAdvancedServer(RHAS)2.1(shmfs/tmpfs)
*RedHatEnterpriseLinux(RHEL)3.0(shmfs/tmpfs,ramfs)
*Configuration:VLMmode+in-memoryfilesystem(shmfs/tmpfs,ramfs)
*SGAMAXSize62GB
*DetailsinNote211424.1,Note262004.1
Sinceshmfs/tmpfs,ramfsisamemoryfilesystem,itssizecanbeashighasthemaximumallowableVMsizewhichis64GB.SGAMAXSize62GBtheoretic(dependingonblocksize)OnlythebuffercachepartoftheSGAcantakeadvantageoftheadditionalmemory.ForRHEL3/4tousetheVLMoptiontocreateaverylargebuffercache,youhavetwooptions(detailsinNote262004.1):
*Useshmfs/tmpfsmuchasyouwouldinRHAS2.1:
mountNote262004.1):
*Useshmfs/tmpfsmuchasyouwouldinRHAS2.1:
mountashmfswithacertainsizeto/dev/shm,andsetthecorrectpermissions.KeepinmindthatinRHEL3,shmfsallocatememoryispageable.Bettertousetmpfssincethereisnoneedtospecifysize.
Mountshmfs:
#mount-t
shmshmfs-osize=20g/dev/shm
Edit/etc/fstab:
shmfs/dev/shmshmsize=20g00
----OR----
Mounttmpfs:
#mount–ttmpfstmpfs/dev/shm
Edit/etc/fstab:
none/dev/shmtmpfsdefaults00
*Useramfs(Ref.Note262004.1,Note259772.1)
ramfsissimilartoshmfs,exceptthatpagesarenotpageable/swappable.Thisapproachprovidesthecommonlydesiredeffect.Ramfsiscreatedby:
#mount-tramfsramfs/dev/shm(unmount/dev/shmfirst).
Theonlydifferencehereisthattheramfspagesarenotbackedbybigpages.
*Whentheshmfs/tmpfs,ramfsisavailable,Oracleservershouldknowwhethertouseitornot.Needtousetheparameteruse_indirect_data_buffers=trueremainsthesame;
IfanyoneofDB_CACHE_SIZE,DB_xK_CACHE_SIZEareset,convertthemtoDB_BLOCK_BUFFERS
*Howtousethememoryfilesystemshmfsinshort,fordetailsseeNote211424.1:
*Mounttheshmfsfilesystemasrootusingcommand:
#mount-tshmshmfs-onr_blocks=8388608/dev/shm
*SettheshmmaxparametertohalfofRAMsizeatmost4294967295
#echo4294967295>/proc/sys/kernel/shmmax
*Settheinit.oraparameteruse_indirect_data_buffers=true
*Startuporacle.
*Howtousethememoryfilesystemramfsinshort,fordetailsseeNote262004.1:
*Mounttheshmfsfilesystemasrootusingcommand:
%umount/dev/shm
%mount-tramfsramfs/dev/shm
%chownoracle:dba/dev/shm
*Increasethe"maxlockedmemory"ulimit(ulimit-l)
Addthefollowingto/etc/security/limits.conf:
oraclesoftmemlock3145728
oraclehardmemlock3145728
(incaseofsshseedetailsonNote262004.1)
*Settheinit.oraparameteruse_indirect_data_buffers=true
*Startuporacle.
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的好朋友们!
来一发CentOS 32位&64位 最年夜撑持内存
对Linux命令熟悉后,你可以开始搭建一个小的Linux网络,这是最好的实践方法。Linux是网络的代名词,Linux网络服务功能非常强大,不论是邮件服务器、Web服务器、DNS服务器等都非常完善。 熟读写基础知识,学得会不如学得牢。 让我树立了很大的信心学好这门课程,也学到了不少专业知识和技能。? 如果你有庞大而复杂的测试条件,尽量把它剪裁得越小越好。可能你会遇到这种情况,对于一个问题会出现不同内容回答,这时你需要通过实践来验证。 再次,Linux是用C语言编写的,我们有学习C语言的基础,读程序和编写代码方面存在的困难小一点,也是我们能较快掌握的原因之一。? 期间我阅读了不少关于Linux的相关资料,其中也不乏一些有趣的小故事,这既丰富了我的课余生活,也让我加深了对一些术语的理解,比玩游戏强多了。? 甚至目前许多应用软件都是基于它的。可是没有哪一个系统是十分完美的。 再次,Linux是用C语言编写的,我们有学习C语言的基础,读程序和编写代码方面存在的困难小一点,也是我们能较快掌握的原因之一。?
页:
[1]