32bit和64bit系统在硬件支持上有差别,整理一些看过的资料,备查。

32位系统和4G内存的关系

为什么32位操作系统最大只能支持4G内存呢?64位操作系统能支持最大多少内存?

32位操作系统,配合32位CPU,寻址空间位2^32次方,计算出来是4294967296字节,就是4G,32位系统最大支持4G空间,如果想要32位系统支持4G以上空间的话,就要用PAE的特殊内核,采用特殊方式访问,但是系统效率会比原生的64位系统低。

smp, bigmem, PAE 內核都可以在 32bit 系统使用多於 4G 內存,但是每一个独立进程只能使用3G 左右。

64位操作系统配合64位CPU,寻址空间是2^64次方,计算出来是
18446744073709551616字节,换算一下4G个G,太大了,反正是
N多G,一辈子也用不完。当然这是64位系统的理论最大内存支持,实际上谁也用不了这么大内存,

反正如果你的系统是64位的,CPU是64位的,那么随便插个8G,16G内存是肯定能支持的。

要完全识别4G内存,是不是必须使用64位系统?

即使32位系统显示出4G内存  也发挥不出4G内存的能量 2G和4G是差不多的  要想充分利用4G内存 还是64位的vista
64 位体系结构和 32 位体系结构的比较

  地址空间    64 位 Windows   32 位 Windows

  虚拟内存    16 TB       4 GB
  页面文件    512 TB      16 TB
  页面缓冲池   128 GB      470 MB
  非页面缓冲池  128 GB      256 MB
  系统缓存    1 TB       1 GB

32位Windows中的虚拟内存空间

  和其他所有32位Windows一样,Windows Vista也被限制于只能使用4 GB的虚拟内存寻址空间。这4 GB内存被分为两部分,其中2 GB用于用户进程,而另外2 GB则用于被操作系统的所有进程共享。在某些特殊的情况下,通过使用/3GB引导参数可以强制让所有系统进程只使用1 GB内存空间,而给用户进程使用3 GB内存,但是该方法也仅适用于设计于可以利用这些额外地址空间的应用程序,而且所有程序都会被操作系统可用的内存数量所限制。
Tags: ,
RAID是“Redundant Array of Independent Disk”的缩写,中文意思是独立冗余磁盘阵列。

冗余磁盘阵列技术诞生于1987年,由美国加州大学伯克利分校提出。最初的研制目的是为了组合小的廉价磁盘来代替大的昂贵磁盘,以降低大批量数据存储的费用,同时也希望采用冗余信息的方式,使得磁盘失效时不会使对数据的访问受损失,从而开发出一定水平的数据保护技术,并且能适当的提升数据传输速度。

过去RAID一直是高档服务器才有缘享用,一直作为高档SCSI硬盘配套技术作应用。近来随着技术的发展和产品成本的不断下降,IDE硬盘性能有了很大提升,加之RAID芯片的普及,使得RAID也逐渐在个人电脑上得到应用。

那么为何叫做冗余磁盘阵列呢?冗余的汉语意思即多余,重复。而磁盘阵列说明不仅仅是一个磁盘,而是一组磁盘。这时你应该明白了,它是利用重复的磁盘来处理数据,使得数据的稳定性得到提高。

RAID的工作原理

RAID如何实现数据存储的高稳定性呢?我们不妨来看一下它的工作原理。RAID按照实现原理的不同分为不同的级别,不同的级别之间工作模式是有区别的。整个的RAID结构是一些磁盘结构,通过对磁盘进行组合达到提高效率,减少错误的目的,不要因为这么多名词而被吓坏了,它们的原理实际上十分简单。问了便于说明,下面示意图中的每个方块代表一个磁盘,竖的叫块或磁盘阵列,横称之为带区。
Tags:
MFS的使用情况可以用mfscgiserv启动webserver查看,很详细的。
但是如果系统的python版本过低,启动是正常,可是受访后,就挂掉了。

这个可以让程序放置在前台运行:

[root@60 sbin]# /Data/apps/mfs/sbin/mfscgiserv -f
starting simple cgi server (host: any , port: 9425 , rootpath: /Data/apps/mfs/share/mfscgi)
Asynchronous HTTP server running on port 9425
Traceback (most recent call last):
  File "/Data/apps/mfs/sbin/mfscgiserv", line 419, in ?
    loop(server,HTTP)
  File "/Data/apps/mfs/sbin/mfscgiserv", line 153, in loop
    w = set(w) & set(client_handlers.keys()) # remove deleted sockets
NameError: global name 'set' is not defined


受访后挂掉,这个是2.3.4的python,会有 NameError: global name 'set' is not defined 的错误。
可以升级到新的python,安装到新的目录即可:

wget http://www.python.org/ftp/python/2.6.4/Python-2.6.4.tgz
tar xfz Python-2.6.4.tgz
cd Python-2.6.4
./configure --prefix=/Data/apps/python
make && make install
/Data/apps/python/bin/python /Data/apps/mfs/sbin/mfscgiserv


即可成功解决!
Tags:
x86的意思

x86或80x86是英特尔Intel首先开发制造的一种微处理器体系结构的泛称。该系列较早期的处理器名称是以数字来表示,并以“86”作为结尾,包括Intel 8086、80186、80286、80386以及80486,因此其架构被称为“x86”。由于数字并不能作为注册商标,因此Intel及其竞争者均在新一代处理器使用可注册的名称,如Pentium。现时Intel把x86-32称为IA-32,全名为“Intel Architecture, 32-bit”。

       x86是一个intel通用计算机系列的编号,也标识一套通用的计算机指令集合。

早期intel的CPU编号都是如8086,80286,由于这整个系列的CPU都是指令兼容的,所以都用X86来标识所使用的指令集合。

      如今的奔腾,P2,P4,赛扬系列都是支持X86指令系统的,所以都属于X86家族。

x86 family 6 model 65意思是这个CPU属于x86家族的第6代产品,采用65ns的工艺制造。

      AT/AT COMPATIBLE 这个的意思应该是说兼容AT/AT指令。

引用
早期的cpu是用80X86 表示的~ 比如 80386 80486 80506
X86指令集是美国Intel公司为其第一块16位CPU(i8086)专门开发的,美国IBM公司1981年推出的世界第一台PC机中的CPU — i8088(i8086简化版)使用的也是X86指令,同时电脑中为提高浮点数据处理能力而增加的X87芯片系列数学协处理器则另外使用X87指令,以后就将X86指令集和X87指令集统称为X86指令集。
另外除Intel公司之外,AMD和Cyrix等厂家也相继生产出能使用X86指令集的CPU,由于这些CPU能运行所有的为Intel CPU所开发的各种软件,所以电脑业内人士就将这些CPU列为Intel的CPU兼容产品。由于Intel X86系列及其兼容CPU都使用X86指令集,所以就形成了今天庞大的X86系列及兼容CPU阵容。


i386是什么意思

      i386是指intel发布的通用处理器类型,适合386,486,586,686的CPU。有些rpm包,还区分了这些类型。

      前者是64位数码机器适用,后者是32位数码机器适用。前者机器可以兼用32位数码软件,后者机器只能用32位数码软件。这就是两者区别。

Intel 80386 ,是指所有与Intel 80386(就是我们说的386) CPU相兼容的CPU,比如80486(其实就是我们说的486),奔腾系列。
其实我们一般就用适合i386的程序就行了。一般都是下载适合i386的程序。

i386

  首先可以简化一个概念,i386=Intel 80386。其实i386通常被用来作为对Intel(英特尔)32位微处理器的统称。
  Windows NT类系统的安装盘上,通常i386是其根上的一个文件夹,里面包含了硬件所需的基本安装信息。
  Windows2000和Windows XP的安装文件夹都是i386,正常情况下在安装光盘下可以找到这个文件夹。为了加快安装速度,在安装前,安装程序会将i386拷贝到硬盘上。这个文件夹也可以在将来系统发生变化(增减新的硬件)时安装驱动程序,或者增加系统附带的服务组件、软件时使用。
  在其它牵涉到处理器说明的地方,通常也可以使用i386这个称谓,其实和ppc作为Power PC微处理器的缩写是类似的。

linux下i386,i486,i586,i686的区别

i386,i486,i586分别是针对80386,80486,80586编译的包,i686就比较广泛了,从p2开始x86处理器就进入了p6构架的时代,一直到现在都是p6架构。新架构的cpu向下兼容为旧架构编译的软件包.
Tags: ,
在虚拟机上对MFS进行测试了一下,方案值得考虑,不过速度可能有点限制。
此笔记记录一些碰到的问题:

1 速度的比较,小文件倒有很大优势的,大文件可能有速度问题
(虚拟机不可靠,仅参考一下,具体数据请看后面资料最后一条,里面有测试数据)

A 实际机器的读写速度

[root@gx tmp]# dd if=/dev/zero of=tmp bs=10M count=50
50+0 records in
50+0 records out
524288000 bytes (524 MB) copied, 3.36305 seconds, 156 MB/s


B 虚拟机(vmvare)的读写速度

[root@aslibra Data]# dd if=/dev/zero of=tmp bs=10M count=50
50+0 records in
50+0 records out
524288000 bytes (524 MB) copied, 9.32125 seconds, 56.2 MB/s


C 虚拟机组建的MFS

[root@aslibra mfs]# dd if=/dev/zero of=tmp bs=100M count=5
3+0 records in
3+0 records out
314572800 bytes (315 MB) copied, 57.9101 seconds, 5.4 MB/s


2 fuse的安装,建议用2.7版本的

2.8的在编译时没有fuse.ko内核文件,2.7版本的可以

wget http://sourceforge.net/projects/fuse/files/fuse-2.X/2.7.5/fuse-2.7.5.tar.gz/download
tar xfz fuse-2.7.5.tar.gz
cd fuse-2.7.5
./configure && make && make install


3 安装时默认支持mfsmount,但需要fuse支持

编译时如果看到这个,就没有办法作为client了

******************************** mfsmount disabled ********************************
* fuse library is too old or not installed - mfsmount needs version 2.6 or higher *
***********************************************************************************


不妨使用yum更新,yum install fuse*
安装前面的fuse也许有帮助?待确认。。

4 必须有1G以上的空余才能写入文件

这个问题挺让人纳闷的,开始的时候为了方便,建立了一个tmpfs作为存储空间,才256M
但一直都无法写入文件,但能够写入文件名称,让人郁闷的
Tags: ,
分页: 1/3 第一页 1 2 3 下页 最后页 [ 显示模式: 摘要 | 列表 ]

阅读推荐

服务器相关推荐

开发相关推荐

应用软件推荐