‘壹’ 怎样ubuntu环境下编译内核详解
步骤/方法
一、下载源代码漏中没和编译软件的准备
下载内核源代码:http://www.kernel.org/
注意,点击2.6.25内核的F版,即完整版。
如果你懒得去网站点联接,运行下列命令:
代码:$cd ~$ wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.25.10.tar.bz2
安装有关编译程序。安装make ,gcc, make-kpkg,运行menuconfig等等和编译内核相关的工具。安装不了,请检查/etc/apt/sources.list 文件。有关命令:代码:$sudo apt-get install build-essential kernel-package libncurses5-dev
二、解压源代码注意,网上很多教程上说应该解压到 /usr/src,纯属以讹传讹,linux掌门人linus说解压到任何目录上都可以。当然,linus的培姿说法是正确的。我放在自己的主目录下的src目录。如果你下载源代码是放到自己的主目录下或者运行上面的wget下载的,那么运行下列命令:代码:$ cd ~$ mkdir src && tar jfx linux-2.6.25.10.tar.bz2 -C src/现在,源代码就在 ~/src/linux-2.6.25.10进入源代码的目录,准备下一步的工作。后面都在这个目录里面进行。代码:$ cd ~/src/linux-2.6.25.10
三、开始编译前的准备工作。首先,清理以前编译时留下的临时文件。如果是刚刚解开的包,不需要执行这步。如果是第二次或者是第n次编译,那么一定要执行。相关命令如下:代码:$ sudo make mrproper网上很多教程上说把现在使用的内核的config拷贝过来参考,据实验,是不需要的,ubuntu还有debian会自动做这步。不过这条命令倒是可以学习一下。当然你可以将以前的配置拷贝过来。命令:代码:cp /boot/config-`uname -r` ./.config
四、开始配置内核选项。相关命令:代码:$sudo make menuconfig配置用到的键只有几个,esc退出菜单;空格改变选项状态;光标键上下左右移动,回车选定。选项意义:M是编译成可以随时加入的模块,*是编译进入内核,空就是不要。配置选项非常多,具体配置可以参考金步国先生翻译的资料:Linux 2.6.19.x 内核编译配置选项。参考网址:http://lamp.linux.gov.cn/Linux/kernel_options.html为了一次成功,请大家遵循一个原则,如果你自己使用的内核已经选用了某个选项,如果你没用充分的理由,不要随便改动。这样虽然内核不那么精简,但是不容易出现问题。我们可以精简的部分是硬件模块部分,对于自己没有的硬件要毫不犹豫的清除。如果你很执着,或者你有洁癖,你也可返纳以一项项对过去,按照金步国先生的资料描述去选择基本上没有问题。
五、必须强调的几个选项:1、
在“General setup”里面的“Prompt for development and/or incomplete
code/drivers”金步国认为是不需要。但是如果你的硬件比较新,那几乎是必须选的,这样,我们才可以找到4965无线网卡,alsa声音驱动等
等。Kernel log buffer size 我选15,双核。如果你用ia64,要选16。Control Group support 集群支持?可以不要Choose SLAB allocator (SLUB (Unqueued Allocator)) 内存管理模式slab和slub选择slub。
2、在“Block layer”里,假如没有2TB的硬盘,就去掉:Support for Large Block Devices 。Support for Large Single Files 也不需要,谁有2TB的文件?
3、Processor type and features中是关于cpu的,要认真选。Symmetric multi-processing support是打开多核的开关,我的cpu是双核的,选中。Processor family (Core 2/newer Xeon) 我的是Core 2/newer Xeon。找到自己的cpu后,把Generic x86 support选项取消。Subarchitecture Type 选(PC-compatible)Maximum number of CPUs 输入自己的核心数目,我输入2。SMT (Hyperthreading) scheler support说的是超线程技术,P4有支持的,我的t8100不支持,目前大部分市场上的家用cpu都不支持。High Memory Support (4GB) 1G以下选1G;我是3G,选4G;4G以上的选16G在“ Timer frequency ”里,默认是250Hz,较新的cpu都可以选择了1000Hz,性能更好。
4、Power management options中把APM (Advanced Power Management) BIOS support关闭。现在的电脑都用acpi了。CPU Frequency scaling 是笔记本cpu节电技术Default CPUFreq governor (conservative) cpu节电模式有四个,笔记本默认选conservative比较好。ACPI Processor P-States driver 必须选,不然CPU Frequency就不能用。后面的可选自己硬件相关的,我选的是Intel Enhanced SpeedStep和 Intel Speedstep on ICH-M chipsets,其他的统统消灭。
5、Bus options的选择:Bus options (PCI, PCMCIA, EISA, MCA, ISA)PCI support PCI Express support 现在新买的机器基本上都是PCI Express了ISA support 较新的新机器没有ISA设备,可以去掉MCA support 去掉NatSemi SCx200 support 去掉PCI Hotplug Support Support for PCI Hotplug (EXPERIMENTAL) 如果没有PCI热插拔设备,去掉这里的选项可以考虑全部编译进内核,而不是以模块形式存在。
6、Device Drivers是重点,由于linux不但面向个人工作站,更多的是面向服务器的应用,所以可以把自己机器上没有的硬件全部去掉,而不用面面俱到。但是通用型的选项要慎重。比如在网卡的部分,除了我的千兆网卡 Broadcom Tigon3 support和4965无线网卡Intel Wireless WiFi 4965AGN,其余的硬件支持统统去掉。再比如声卡部分,我的是hd声卡,我只是在PCI devices中,选intel hd 声卡,再选Build IDT/Sigmatel HD-audio codec support,除此之外的硬件支持全部去掉。
声卡还有一个细节,在ubuntu7.10里面, 需要在/etc/modprobe.d/alsa-base后面添加options
snd-hda-intel probe_mask=1
model=3stack,这样我的笔记本喇叭才可以发声,不然只有外接耳机或者音箱。这次编译以后,这个动作就不必了,但是两个耳机插口只有一个可以用
了。再比如我的电脑中没有agp,就可以直接把agp相关的选项全部取消。要注意的:ATA/ATAPI/MFM/RLL support Include IDE/ATA-2 DISK support 如果你的/boot是放在IDE硬盘上,那么这里一定要选*,选M都不行。否则启动时会出现“waiting for root file system”的提示而停滞不前。 SCSI emulation support 要用刻录机,必须选。SCSI device support 现在都是SATA硬盘,一定要选* SCSI disk support 如果你的/boot放在SATA硬盘上,一定要选*。
SCSI CDROM support 虽然康宝刻录机是ide接口的,但是必须把它当成scsi接口的,这是老问题了。用刻录机,必须选。
Graphics supportSupport for frame buffer devices 选中,进入选择 VESA VGA graphics support 选上,不然字符界面启动会有问题,后面的显卡选择:由于我的显卡是nvidia 8400gs,要自己安装nvidia公司的驱动,所以一个都没有选。这样导致ubuntu开机动画会出问题,我索性在grub中的splash字符全部删除,把开机动画关闭。字符界面很正常。 Console display driver support 有人开机后字符控制台错误,就是这部分选项没有选,出问题了。 Framebuffer Console support 需要打开。
Bootup logo 开机图标,会在自检的画面上加上个性图标。需要在grub上添加“vga=”的选项,可以参考http://dotimes.com/articles /t23-slackware-framebuffer.html7、File systemsFilesystem in Userspace support 简称fuse。是必选的,如果你要用windows分区。
CD-ROM/DVD Filesystems ISO 9660 CDROM file system support 一般选*DOS/FAT/NT Filesystems VFAT (Windows-95) fs support 有FAT32分区就选*吧 NTFS file system support 有NTFS分区就选*吧 NTFS write support 如果想对 NTFS分区进行写操作,选*必须将启动盘的文件系统编译进内核,默认是编译成模块,这样无法启动系统。ubuntu采用的文件系统是ext3,请把ext2,ext3相关的必要选项都编译进入内核。
8、Virtualization这个大类是我多花几百元买t8100的主要原因,因为t8100支持intel vt技术使linux上的虚拟机的性能大幅度提高。这里的选项我除了amd的,其他都编译成模块。
9、全部设置完成,最后一项是保存设置。按照我的习惯,先在上一层目录保存一个备份,文件名类似 ../config20080630然后再保存到当起目录,文件名 .config退出设置程序。
六、开始编译内核。ubuntu的工具是make-kpkg,和其他的发行版相比,步骤相对简单。相关命令:代码:$sudo make-kpkg clean 这条命令好像不要超级权限,很多资料上说要,不过这不是原则问题。
$ sudo make-kpkg -initrd --initrd --append-to-version=dell1400 kernel_image kernel-headers上述命令中的dell1400可以用自己喜欢的字符代替,最后的字符一定是数字.输完上述命令回车之前,建议大家把浏览器还有别的运用程序都关掉,机器开始的工作比较艰苦。
我的机器大概十几分钟。
七、安装内核编译完成就是安装工作。编译好的内核在上一层目录。包括linux-headers-...-_i386.deb和linux-image-...-i386.deb两个文件,如果你不搞开发的话,只要安装内核就可以,头文件以后要用的时候再说。安装相关命令:
代码:$ cd ..$ sudo dpkg -i linux-image-(按tab键)文件名很长,如果不用tab自动补足是不可能的,tab键万岁。安装完成后和老内核比较一下大小代码:
$ ls -l /boot/
八、重新启动验证新内核。代码:$ sudo reboot
九、显卡驱动如果你的显卡和我一样是nvidia显卡,启动之后往往无法正常进入x-window。即使能看到gdm登录界面,效果也是很差的。那么就要安装nvidia驱动。用ctrl+alt+f1 进入字符命令行,输入用户名,密码登录。命令:代码:下载驱动$ wget http://us.download.nvidia.com/XFree86/Linux-x86/173.14.12/NVIDIA-Linux-x86-173.14.12-pkg1.run$sudo -s输入密码取得超级权限。#ps ax看看和gdm相关的进程,把这些进程全部关闭;用sudo /etc/init.d/gdm stop有可能有一个进程没有关闭:#kill 进程号然后安装nvidia显卡驱动,当然驱动要先下好,到nvidia驱动所在的目录里,运行:# sh ./NVIDIA-Linux-x86-173.14.12-pkg1.run重新启动以后就ok。要用nvidia的驱动,每次升级内核都要这么做。
十、无线网卡相关的内核选项是Networking --->Wireless --->Generic IEEE 802.11 Networking Stack (mac80211)还有4965的驱动。4965
无线网卡驱动虽然已经编入内核,但没有firmware无法使用。需要把原来内核的firmware拷贝到新内核对应的目录,名字和内核一致,我的内核是
linux-image-2.6.25.10dell1400,那建的目录名就是2.6.25.10dell1400。代码:具体命令:$ cd /lib/firmware/$ sudo mkdir 2.6.25.10dell1400把你的老内核中的4965的firmware拷贝过来。$ sudo cp 2.6.24-16-generic/* 2.6.25.10dell1400/上面的命令和下面的命令是等价的:$ cd /lib/firmware/$ sudo cp -R 2.6.24-16-generic/ 2.6.25.10dell1400/
重新启动系统,无线网卡就正常了。
附编译使用的机器配置:dell vostro 1400,t8100,nvidia 8400cs显卡,内置SigmaTel STAC9228芯片的声卡,4965无线网卡,BCM5906M千兆网卡,3G内存,160G硬盘,combo刻录。
编译系统版本:ubuntu 8.04桌面版.
‘贰’ AMD鍜岃嫳鐗瑰皵鍙屾牳澶勭悊鍣ㄥ摢涓镟村ソ锛
涓銆佸勭悊鍣ˋMD4镙镐笌鑻辩壒灏2镙稿氨娴佽岀殑CPU姣旇缉锛屼竴鑸杩樻槸INTEL鍙屾牳绋嶅ソ銆
浜屻佸叾瀹炲傛灉娌℃湁鍏蜂綋镄勫瀷鍙凤纴杩樼湡涓嶅ソ璇淬侫MD 4镙稿簲璇ュ拰璧涙壃銆佺敋镊冲旇吘鍙屾牳宸涓嶅氾纴浣嗕笌閰风澘鍙屾牳娌℃硶姣旂殑銆
涓夈佸綋鍓嶆祦琛孋PU鍒嗙被姣旇缉锛
‘叁’ 编译成64位就万事大吉的.关于64位的cpu应该做成什么样子,intel和amd曾有各自的打
AMD和英特尔CPU的制造是两种完全不同的技术,所以不能由主频来看AMD的性能。AMD性价比是毫无质疑的。AMD是攒机的首选。以前因为采用的工艺不同,AMD的发热两会比较大一些,所以品牌机多选择p4作为配置。但是今年来,AMD的技术水平约来越高。AMD已逐渐取代intel的王者地位。选3000+AMD的比INTEL的好主要是技术好
第一,AMD有先进的K8架构,仅仅14级流水线,执行效率更高,而intel的prescott核心有31级。虽然有更高的频率,但这个频率是依靠高流水线。办同样一件事情,如果当中出错,就得从头开始,这样就慢了,可惜牺牲了更高的频率。Intel当然不能视而不见,只有提高频率,加大缓存解决。还有最决的一招:降价和品牌效应。
第二,AMDcpu中集成了内存控制器,这样可以大大减小延迟。
第三,由于核心的问题,AMD功耗更小。
第四,AMD有广泛的主板支持,不像以前那样。
第五,AMD的cpu价格便宜(虽然现在贵了)。
第六,就是人的“同情”心理,往往更喜欢“弱者”(尽管AMD不再“弱”,但是市场占有率仅有20%,不像Intel的80%)补充:好坏只有限于Athlon64和Semproncpu(775,940,939针)和P4prescott核心cpu以前的Athlonxp及northwood没有什么差距。最多就是intel多媒体应用更好,amd则在游戏方面更有优势。再有,AMD的cpu和intel的在同市场定位的情况下,差距不大,几乎可以忽略不计。不要忘记,频率不是一无是处。通过对比intel的cpu:P4和PM就知道大概了,频率不是一切。1.5G的PM相当于P42.8GCPU的处理性能不应该去看主频,而INTEL正是基于相当相当一部分人对CPU的不了解,采用了加长管线的做法来提高频率,从而误导了相当一部分的人盲目购买。CPU的处理能力简单地说可以看成:实际处理能力=主频*执行效率,就拿P4E来说他的主频快是建立在使用了更长的管线基础之上的,而主频只与每级管线的执行速度有关与执行效率无关,加长管线的好处在与每级管线的执行速度较快,但是管线越长(级数越多)执行效率越低下,AMD的PR值可能会搞得大家一头雾水,但是却客观划分了与其对手想对应的处理器的能力。为什么实际频率只有1.8G的AMD2500+处理器运行速度比实际频率2.4G的P4-2.4B还快?为什么采用0.13微米制程的Tulatin核心的处理器最高只能做到1.4G,反而采用0.18微米制程的Willamette核心的处理器却能轻松做到2G?下面就来分析一下到底是什么原因导致以上两种“怪圈”的存在。每块CPU中都有“执行管道流水线”的存在(以下简称“管线”),管线对于CPU的关系就类似汽车组装线与汽车之间的关系。CPU的管线并不是物理意义上供数据输入输出的的管路或通道,它是为了执行指令而归纳出的“下一步需要做的事情”。每一个指令的执行都必须经过相同的步骤,把这样的步骤称作“级”。管线中的“级”的任务包括分支下一步要执行的指令、分支数据的运算结果、分支结果的存储位置、执行运算等等……最基础的CPU管线可以被分为5级:
1、取指令
2、译解指令
3、演算出操作数
4、执行指令
5、存储到高速缓存可能会发现以上所说的5级的每一级的描述都非常的概括,同时如果增加一些特殊的级,管线将会有所延长:
1、取指令
12、取指令
23、译解指令
14、译解指令
25、演算出操作数
6、分派操作
7、确定时
8、执行指令
9、存储到高速缓存
110、存储到高速缓存2无论是最基本的管线还是延长后的管线都是必须完成同样的任务:接受指令,输出运算结果。两者之间的不同是:前者只有5级,其每一级要比后者10级中的每一级处理更多的工作。如果除此以外的其它细节都完全相同,那么一定希望采用第一种情况的“5级”管线,原因很简单:数据填充5级要比填充10级容易的多。而且如果处理器的管线不是始终充满数据,那么将会损失宝贵的执行效率——这将意味着CPU的执行效率会在某种程度上大打折扣。那么CPU管线的长短有什么不同?——其关键在于管线长度并不是简单的重复,可以说它把原来的每一级的工作细化,从而让每一级的工作更加简单,因此在“10级”模式下完成每一级工作的时间要明显的快于“5级”模式。最慢的(也是最复杂)的“级”结构决定了整个管线中的每个“级”的速度——请牢牢记住这一点。假设上述第一种管线模式每一级需要1个时钟周期来执行,最慢可以在1ns内完成,那么基于这种管线结构的处理器的主频可以达到1GHz(1/1ns=1GHz)。现在的情况是CPU内的管线级数越来越多,为此必须明显的缩短时钟周期来提供等于或者高于较短管线处理器的性能。好在,较长管线中每个时钟周期内所做的工作减少了,因此即使处理器频率提升了,但每个时钟周期缩短了,每个“级”所用的时间也就相应的减少了,从而可以让CPU运行在更高的频率上了。如果采用上述的第二种管线模式,可以把处理器主频提升到2GHz,那么应该可以得到相当于原来的处理器2倍的性能——如果管线一直保持满载。但事实并非如此,任何CPU内部的管线在预读取的时候总会有出错的情况存在,一旦出错了就必须把这条指令从第一级管线开始重新执行,稍微计算一下就可以得出结论:如果一块拥有5级管线的CPU在执行一条指令的时候,当执行到第4级时出错,那么从第一级管线开始重新执行这条指令的速度,要比一块拥有10级管线的CPU在第8级管线出错时重新执行要快的多,也就是说根本无法充分的利用CPU的全部资源,那么为什么还需要更高主频的CPU??回溯到几年以前,让看看当时1.4GHz和1.5GHz的奔腾四处理器刚刚问世之初的情况:当时Intel公司将原奔腾三处理器的10级管线增加到了奔腾四的20级,管线长度一下提升了100%。最初上市的1.5GHz奔腾四处理器曾经举步维艰,超长的管线带来的负面影响是由于预读取指令的出错从而造成的执行效率严重低下,甚至根本无法同1GHz主频的奔腾三处理器相对垒,但明显的优势就是大幅度的提升了主频,因为20级管线同10级管线相比,每级管线的执行时间缩短了,虽然执行效率降低了,但处理器的主频是根据每级管线的执行时间而定的,跟执行效率没有关系,这也就是为什么采用0.18微米制程的Willamette核心的奔腾四处理器能把主频轻松做到2G的奥秘。固然,更精湛的制造工艺也能对提升处理器的主频起到作用,当奔腾四换用0.13微米制造工艺的Northwood核心后,主频的优势才大幅度体现出来,一直冲到了3.4G,长管线的CPU只有在高主频的情况下才能充分发挥优势——用很高的频率、很短的时钟周期来弥补它在预读取指令出错时重新执行指令所浪费的时间。但是,拥有20级管线、采用0.13微米制程的Northwood核心的奔腾四处理器的理论频率极限是3.5G,那怎么办?Intel总是会采用“加长管线”这种屡试不爽的主频提升办法——新出来的采用Prescott核心的奔腾四处理器(俗称P4-E),居然采用了31级管线,通过上述介绍,很明显能得出Prescott核心的奔四处理器在一个时钟周期的处理效率上会比采用Northwood核心的奔四处理器慢上一大截,也就是说起初的P4-E并不比P4-C的快,虽然P4-E拥有了更大的二级缓存,但在同频率下,P4-E绝对不是P4-C的对手,只有当P4-E的主频提升到了5G以上,才有可能跟P4-3.4C认识Intel与AMD双核CPU处理器的区别随着近日英特尔、AMD推出各种双核CPU新品,“双核”概念在业内逐渐升温。有意思的是,虽然都是双核,英特尔和AMD确各谈各的。英特尔大谈双核到桌面,AMD则直取双核的服务器市场。这两个公司双核到底有什么不同?以下是关于双核技术的背景资料,供大家参考。双核技术背景双核处理器是指在一个处理器上集成两个运算核心,从而提高计算能力。“双核”的概念最早是由IBM、HP、Sun等支持RISC架构的高端服务器厂商提出的,不过由于RISC架构的服务器价格高、应用面窄,没有引起广泛的注意。不同的构架最近逐渐热起来的“双核”概念,主要是指基于X86开放架构的双核技术。在这方面,起领导地位的厂商主要有AMD和Intel两家。其中,两家的思路又有不同。AMD从一开始设计时就考虑到了对多核心的支持。所有组件都直接连接到CPU,消除系统架构方面的挑战和瓶颈。两个处理器核心直接连接到同一个内核上,核心之间以芯片速度通信,进一步降低了处理器之间的延迟。而Intel采用多个核心共享前端总线的方式。专家认为,AMD的架构对于更容易实现双核以至多核,Intel的架构会遇到多个内核争用总线资源的瓶颈问题。AMD和Intel不同的体系结构双核与双芯(DualCoreVs.DualCPU):AMD和Intel的双核技术在物理结构上也有很大不同之处。AMD将两个内核做在一个Die(内核)上,通过直连架构连接起来,集成度更高。Intel则是采用两个独立的内核封装在一起,因此有人将Intel的方案称为“双芯”,认为AMD的方案才是真正的“双核”。从用户端的角度来看,AMD的方案能够使双核CPU的管脚、功耗等指标跟单核CPU保持一致,从单核升级到双核,不需要更换电源、芯片组、散热系统和主板,只需要刷新BIOS软件即可,这对于主板厂商、计算机厂商和最终用户的投资保护是非常有利的。客户可以利用其现有的90纳米基础设施,通过BIOS更改移植到基于双核心的系统。计算机厂商可以轻松地提供同一硬件的单核心与双核心版本,使那些既想提高性能又想保持IT环境稳定性的客户能够在不中断业务的情况下升级到双核心。在一个机架密度较高的环境中,通过在保持电源与基础设施投资不变的情况下移植到双核心,客户的系统性能将得到巨大的提升。在同样的系统占地空间上,通过使用双核心处理器,客户将获得更高水平的计算能力和性能要想根据AthlonXP的实际主频换算出型号:型号=实际频率×3÷2-500而要想根据型号算出AthlonXP的实际运行频率:实际频率=型号×2÷3+333AMD改变了其CPU产品的命名规则,将其产品标称一个与对手产品主频相当的型号。例如AthlonXP2000+的实际主频为1.67GHz,而其2000+的标称就与Pentium4的2.0GHz相对应。因为AMD的处理器是以低主频,短流水线的设计而intel的处理器是以高主频,长流水线的设计…这个好比,要开车从石景山去通州。有两条路可以走,一条是走长安街直接就到,可是堵车,二是走五环。虽然远了点,可是不堵车。AMD走的是长安街,而intel走的是五环。AMDSempron3000+中的3000+AMD的PR值标称方式,意思是相当于INTER主频为3.0G的CPU,因为开发技术上的缺陷,AMD的CPU主频一直就上不去,但是他的这种标称方法,也不是信口开河的,CELERON3.0是跑不过SEMPRON3000+的,但是它的实际主频只有可怜的1.8G
‘肆’ 关于处理器Intel和AMD的区别
AMD Athlon64 2800+(盒) Socket 754/0.13um/L2 512K/1800MHz/前端总线 800MHz/盒装 945
AMD Athlon64 FX-53(Sledge Hammer) Socket 940/0.13um/2.4GHz/L2 1024K/前端总线 800MHz/盒装 6800
AMD Opteron 140 Socket 940/0.13um/1400MHz/L2 1024K/前端总线 800MHz/盒装 1980
AMD Opteron 146 Socket 940/0.09um/2000MHz/L2 1024K/前端总线 800MHz/盒装 2390
AMD Opteron 240 Socket 940/0.13um/1400MHz/L2 1024K/前端总线 800MHz/盒装 1990
AMD Opteron 242 Socket 940/0.13um/1600MHz/L2 1024K/前端总线 800MHz/盒装 1890
AMD Opteron 244 Socket 940/0.13um/1800MHz/L2 1024K/前端总线 800MHz/盒装 2190
AMD Opteron 246 Socket 940/0.13um/2000MHz/L2 1024K/前端总线 800MHz/盒装 2690
AMD Opteron 248 Socket 940/0.13um/2200MHz/L2 1024K/前端总线 800MHz/盒装 3990
AMD Opteron 250 Socket 940/0.13um/2400MHz/L2 1024K/前端总线 800MHz/盒装 5790
AMD Opteron 252 Socket 940/0.09um/2600MHz/L2 1024K/前端总线 1000MHz/盒装 7990
AMD Sempron 2200+(盒装) Socket 462(Socket A)/0.13um/1500MHz/L2 256K/前端总线 333MHz/盒装
AMD Sempron 2400+(盒) Socket 462(Socket A)/0.13um/1667MHz/L2 256K/前端总线 333MHz
AMD Sempron 2800+ 754针(盒) Socket 754/0.09um/1600MHz/L2 256K/前端总线 800MHz
AMD Athlon 64 X2 3800+ Socket 939/0.09um/2.0GHz/L2 1024K/前端总线 800MHz/盒装 3850
AMD Athlon 64 X2 4200+ Socket 939/0.09um/2.2GHz/L2 1024K/前端总线 800MHz/盒装
AMD Athlon 64 X2 4800+ Socket 939/0.09um/2.4GHz/L2 2048K/前端总线 1000MHz/盒装 9150
AMD Athlon XP 2600+(Thoroughbred/333) Socket 462(Socket A)/0.13um/L2 512K/2.08GHz/前端总线 333MHz/散装
AMD Athlon64 3000+ 939针(Venice) Socket 939/0.09um/1.8Ghz/L2 512K/前端总线 800MHz/盒装 1200
AMD Athlon64 3200+ 939针(Venice) Socket 939/0.09um/2.0Ghz/L2 512K/前端总线 800MHz/盒装
AMD Athlon64 3500+ 939针(Venice) Socket 939/0.09um/2.2Ghz/L2 512K/前端总线 800MHz/盒装
AMD Athlon64 3800+(Newcastle) Socket 939/0.13um/2000MHz/L2 512K/前端总线 800MHz/盒装
AMD Athlon64 4000+ Socket 939/0.13um/2400MHz/L2 1024K/前端总线 800MHz/盒装 3800
AMD Athlon64 FX-57 Socket 939/0.09um/2.8GHz/L2 1024K/前端总线 800MHz/盒装 11850
AMD Opteron 265 Socket 940/0.09um/1.8GHz/L2 2048K/前端总线 1066MHz/盒装 9990
AMD Opteron 270 Socket 940/0.09um/2.0GHz/L2 2048K/前端总线 1066MHz/盒装 12190
AMD Opteron 275 Socket 940/0.09um/2.2GHz/L2 2048K/前端总线 1066MHz/盒装 14990
AMD Sempron 2500+ 754针/64bit(盒) Socket 754/0.09um/1400MHz/L2 256K/前端总线 800MHz/盒装
AMD Sempron 2500+(盒) Socket 462(Socket A)/0.13um/L2 256K/1750MHz/前端总线 333MHz/盒装 485
AMD Sempron 2600+ 754针/64bit(盒) Socket 754/0.09um/1600MHz/L2 128K/前端总线 800MHz/盒装
AMD Sempron 2800+ 754针/64bit(盒) Socket 754/0.09um/1600MHz/L2 256K/前端总线 800MHz/盒装 680
第1页:AMD CPU的独门秘术 - HyperTransport总线
AMD,这个成立于1969年、总部位于美国加利福尼亚州桑尼维尔的处理器厂商,经过多年不懈地与英特尔的抗争,终于小有成就了—凭借此前的AthlonXP及目前K8处理器,AMD这个品牌旗下的处理器产品已经成为了不少消费者心中的“最爱”。
然而你对他目前的处理器产品线又了解多少呢?今天,我们在这里就对各系列的产品进行详细介绍,希望可以对大家有所帮助。
任何一家企业,如果没有自己的核心技术,那么要想在竞争激烈的市场中处于为败之地几乎是不可能的。AMD当然深谙此理,其产品正是不断技术创新中来获取我们的“心”……
● HyperTransport总线
HyperTransport是AMD为K8平台专门设计的高速串行总线。它的发展历史可回溯到1999年,原名为“LDT总线”(Lightning Data Transport,闪电数据传输)。2001年7月,这项技术正式推出,AMD同时将它更名为HyperTransport。随后,Broadcom、Cisco、Sun、NVIDIA、ALi、ATI、Apple、Transmeta等许多企业均决定采用这项新型总线技术,而AMD也借此组建HyperTransport开放联盟,从而将HyperTransport推向产业界。
在基础原理上,HyperTransport与目前的PCI Express非常相似,都是采用点对点的单双工传输线路,引入抗干扰能力强的LVDS信号技术,命令信号、地址信号和数据信号共享一个数据路径,支持DDR双沿触发技术等等,但两者在用途上截然不同—PCI Express作为计算机的系统总线,而HyperTransport则被设计为两枚芯片间的连接,连接对象可以是处理器与处理器、处理器与芯片组、芯片组的南北桥、路由器控制芯片等等,属于计算机系统的内部总线范畴。
第一代HyperTransport的工作频率在200MHz—800MHz范围,并允许以100MHz为幅度作步进调节。因采用DDR技术,HyperTransport的实际数据激发频率为400MHz—1.6GHz,最基本的2bit模式可提供100MB/s—400MB/s的传输带宽。不过,HyperTransport可支持2、4、8、16和32bit等五种通道模式,在400MHz下,双向4bit模式的总线带宽为0.8GB/sec,双向8bit模式的总线带宽为1.6GB/sec;800MHz下,双向8bit模式的总线带宽为3.2GB/sec,双向16bit模式的总线带宽为6.4GB/sec,双向32bit模式的总线带宽为12.8GB/sec,远远高于当时任何一种总线技术。
2004年2月,HyperTransport技术联盟(Hyper Transport Technology Consortium)又正式发布了HyperTransport 2.0规格,由于采用了Dual-data技术,使频率成功提升到了1.0GHz、1.2GHz和1.4GHz,双向16bit模式的总线带宽提升到了8.0GB/sec、9.6GB/sec和11.2GB/sec。Intel 915G架构前端总线在6.4GB/sec。
目前AMD的S939 Athlon64处理器都已经支持1Ghz Hyper-Transport总线,而最新的K8芯片组也对双工16Bit的1GHz Hyper-Transport提供了支持,令处理器与北桥芯片的传输率达到8GB/s。
第2页:AMD CPU的独门秘术 - 64位技术
● AMD 64技术
AMD公司于2003年4月22日推出了第一款AMD64 处理器—即用于服务器和工作站的AMD Opteron处理器。于2003年9月23日推出AMD速龙64处理器—这是用于基于Windows的台式电脑和移动PC机的第豢詈臀ㄒ灰豢?4位处理器。
AMD64技术采用类似于从80286升级在80386的平滑升级方式:一方面可以增加寻址位宽,另一方面又具备向下兼容,这样可以在让64bit处理器运行在32bit应用环境下,而且64位计算技术可使操作系统和软件处理更多数据并访问极大量的内存。
在AMD64架构中,AMD在x86架构基础上将通用寄存器和SIMD寄存器的数量增加了1倍:其中新增了8个通用寄存器以及8个SIMD寄存器作为原有x86处理器寄存器的扩充。这些通用寄存器都工作在64位模式下,经过64位编码的程序就可以使用到它们,在32位环境下并不完全使用到这些寄存器,同时AMD也将原有的EAX等寄存器扩展至64位的RAX,这样可以增强通用寄存器对字节的操作能力。
与此同时,为了同时支持32位和64位代码及寄存器,x86-64架构允许处理器工作在以下两种模式:Long Mode长模式和Legacy Mode传统模式,Long模式又分为两种子模式:64位模式和Compatibility Mode兼容模式。目前支持AMD 64的操作系统包括Linux、FreeBSD还有Windows XP 64Bit Edition。
Intel在经过一番变革之后,也推出了类似的x86-64扩展指令集EM64T,从技术架构上有抄袭AMD64之疑!
第3页:AMD CPU的独门秘术 - Cool‘n’Quiet技术
● Cool‘n’Quiet技术
Athlon64系列的另一个关键特性是AMD特有的Cool‘n’Quiet技术,这是一种智能温控技术,可以在CPU没有满负荷运行的时候降低处理器频率以及散热风扇的速度,以此来降低系统的功耗和风扇的噪音。
类似于移动版Athlon 64所采用的PowerNow!技术,它可自动调节处理器的工作频率,并搭配测温器件,自动调速散热器达到降温静音效果。可以这样认为,Athlon 64的CnQ技术几乎可以与Intel PentiumM中所使用的SpeedStep技术和Transmeta Crusoe中的LongRun技术相媲美。目前除了32位闪龙外,目前S754、S939的Athlon64、64位闪龙处理器都支持此功能。
当然Intel也在基于Prescott核心的处理器中入引入了Thermal Control Circuit温控技术,效果相对于Cool‘n’Quiet技术要更胜一筹。不同于Cool‘n’Quiet,Thermal Control Circuit热量控制电路拥有两套热敏二极管。
其中一套热敏二极管侦测CPU的温度值并传输给主板上的硬件监控系统,这套装置象传统的内部温控技术一样通过关闭系统来保护CPU,不过只是在紧急情况才会自动关闭。第二套热敏二极放置在CPU内核温度最高的部位,几乎触及ALU单元,也做为热量控制电路的一个组成部分,温控效果更具动态性。
第4页:AMD CPU的独门秘术 - 整合内存控制器
● 整合内存控制器
在K8的处理器架构中,将原本内建于北桥芯片的内存控制器部份,转移到处理器身上,这样一来内存的规格便建立在使用的处理器上,而不是决定在芯片组身上了!
我们都知道,P4平台是目前唯一支持双通道DDR2内存架构的桌面平台,拥有的内存带宽已经比此前的双通道DDR要高许多,而Athlon 64平台目前能停留在双通道DDR400的水准。
但由于Athlon 64平台的内存控制器在CPU内部,内存延迟要远低于、运作效率要远优于P4平台,而且由于内存控制器将与CPU速度相同,因此内存带宽是随着内核频率提升同步提升的,这使得Athlon 64内存架构是按需配置的。
换句话说玩家在选购K8处理器时,除了运作频率的考虑外,也得考虑该处理器是支持何种的内存架构。这样的好处是可以缩短内存传输的时间来增些许的效能,缺点是一旦想更换处理器可能连同主机板也要一并换掉。
第5页:AMD CPU的独门秘术 - CPU硬件防毒技术
● CPU硬件防毒技术
K8处理器还有一项绝技—NX bit防毒技术。相信很多用户还对冲击波病毒心有余悸,其实,像冲击波这种蠕虫病毒就都是靠缓冲区溢出问题兴风作浪的,而通过NX bit就可以有效地解决这个问题。
NX bit可以通过在转换物理地址和逻辑地址的页面编译台中添加NX位来实现NX。在CPU进行读指令操作时,将从实际地址读出数据,随后将使用页面编译台由逻辑地址转换为物理地址。如果这个时候NX位生效,会引发数据错误。一般情况下,缓冲区溢出攻击会使内存中的缓冲区溢出,修改数据在堆栈中的返回地址。
一旦改写了返回地址,则堆栈中的数据在被CPU读入时就可能运行保存在任意位置的命令。通常由于溢出的数据中包括程序,因此可能会运行非法程序。因此,操作系统在确保堆栈及缓冲区的数据时,只需将该区域的NX位设置为开启(ON)的状态即可防止运行堆栈及缓冲区内的程序,其原理就是通过把程序代码与数据完全分开来防止病毒的执行。
英特尔也在它的“J”系列处理器中加入了类似功能,但其与AMD硬件防毒技术的实现原理是一样的。
第6页:AMD CPU的独门秘术 - 3DNow!、SSE、SSE2一样不少!
● 3DNow!、SSE、SSE2一样不少!
3DNOW!是AMD推出的指令集,主要中通过单指令多数据(SIMD)技术来提高CPU的浮点运算性能;它们都支持在一个时钟周期内同时对多个浮点数据进行处理;都有支持如像MPEG解码之类专用运算的多媒体指令。与Intel公司的MMX技术侧重于整数运算有所不同,3DNow!指令集主要针对三维建模、坐标变换 和效果渲染等三维应用场合,在软件的配合下,可以大幅度提高3D处理性能。
不过,由于受到Intel在商业上以及Pentium 3/4成功的影响,软件在支持SSE、SSE2、SSE3上比起3DNow!更为普遍。因此,虽然Intel是自己的冤家,AMD仍继续推出了增强版Enhanced 3DNow!,引入了SSE、SSE2、SSE3指令集的支持。其中目前基于Venice核心上的新Athlon 64处理器也是目前支持最多SIMD指令集的处理器,包3DNow!,SSE2和SSE3一样不少。从技术上来看,SSE3对于SEE2的改进非常有限,我们不应该期望SSE3指令集能为新Athlon 64带来大幅度的性能提升,而且性能提升也需要有软件支持为前提。
第12页:AMD全系列桌面处理器点评 - Athlon64 X2
● Athlon64 X2
Athlon 64 X2是AMD的桌面双核心处理器,竞争对手是英特尔的Pentium D处理器。从架构上来看,Athlon 64 X2除了多个“芯”外与目前的Athlon 64并没有任何区别。Athlon 64 X2的大多数技术特征、功能与目前市售的Socket939 Athlon 64处理器是一样的,而且这些双核心处理器仍将使用1GHz HyperTransport总线与芯片组连接及支持双通道DDR内存技术。
目前Athlon 64 X2共有Toledo、于Manchester两个核心版本:其中Toledo核心就相当于是两个San Diego核心的Athlon 64处理器的集成,而Manchester自然就相当于两个Venice核心了,两者主要区别是L2缓存容量之一。AMD Athlon64 x2双核心处理器共推出五个型号,分别是3800+、4200+、4400+、4600+与4800+,这五款处理器除了在频率上有2.0Ghz与2.4Ghz的差异外,L2高速缓存也有1MB+1MB与2MB+2MB的差异。
AMD Athlon64 x2双核心处理器由AMD德国Feb 30晶圆厂生产,晶体管数目为154—233.2 million(视L2缓存容量而定),采用90纳米SOI制程设计,除了具备x86-64Bit架构外,并具备了3D NOW! Pro、SEE、SEE2、SEE3指令集,并整合防毒与Cool”Qulet节电技术。
结语:
可以说,AMD目前的产品划分做的很好,从Socket 754的Sempron、Athlon 64,Socket 939的Athlon 64、Athlon 64 FX,再到双核心Athlon 64 X2,几乎每一个价格范围都有产品,这一方面说明了AMD市场运作的渐渐成熟,我们也期望AMD未来一路走好……