文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> 资讯>FreeBSD新特性预览

FreeBSD新特性预览

时间:2008-03-07  来源:linux论坛

The next major update of FreeBSD 7, due this December, is in therunning to be one of the most impressive FreeBSD releases to date. TheULE scheduler has now reached maturity, leading to significant gainsacross the board (particularly in server workloads). This new schedulerbrings notably impressive performance improvements to both MySQL andPostgreSQL.
In the first section of this article, I’m going to take a look atwhat’s new. In the second section, I will discuss what the future holdsfor FreeBSD beyond the upcoming FreeBSD 7.0 release, including screenshots of the revamped FreeBSD installer “finstall”.
Beastie, here and nowFreeBSD 7 sports several new improvements in its file-systems andstorage subsystems, including experimental support for ZFS andgvirstor, which can be used to create a large virtual disk image bysimply adding physical disks as data on disk requires. This givessystem administrators the ability to create volumes that far exceed thephysical disk capacity and only add hardware as usage increases.Gvirstor is authored by Ivan Voras, who is also responsible for theFreeBSD installer project “finstall”. I’ll take a quick look atfinstall, including screenshots, in the section “Going Forward withFreeBSD”.
The kernel scales admirably to eight processors, an essential stepas multi core chips have become ubiquitous, reaping the benefits of the“SMPng” project (Symmetric Multi-Processor, next generation) andmigrating away from the legacy BSD architecture. The ULE scheduler isnow considered the preferred scheduler for FreeBSD systems; however, itwill not be enabled by default until the 7.1 release, so a kernelrecompile is still required at this time. Kris Kennaway has a fantasticwrite up (available in the resources section) that graphs theperformance improvements and shows the eye-popping increase in serverwork-load scalability.

The ULE scheduler is now preferred, but won’t be enabled by default until 7.1

The networking subsystem has had its fair share of changes; it is“Giant Lock” free, WPA support is now stable and, more importantly, itis easier to configure (though I did not verify the wirelessimprovements for this review).
This release will include X.org 7.3, KDE 3.5.7, Gnome 2.18.3 and GCC4.2.1?but of course you can always stay on the bleeding edge viaFreeBSD ports. There are currently around 18000 ports and, as always,the number of ports is steadily increasing.
The over-arching theme of this release is “spit-and-polish” and thefinal stabilization of long term efforts such as SMPng to increasesystem performance. All the things you’ve come to love about FreeBSDare still there and there have not been any radical changes that willaffect the way you use your system. It should just work faster and havean updated set of tools. This evolutionary approach is similar toApples MAC OS X release cycle.
As I write this, FreeBSD 7.0 beta 3 has just been released and Iencourage everyone to start using it. It is already quite stable, andmany (if not all) of the bugs in the earlier betas have been fixed. Ifyou do encounter any bugs, make sure to report them!
Going forward with FreeBSDThe future is even more exciting because there are some newtechnologies lurking on the horizon that will make FreeBSD. The three Ifind the most interesting are:
  • The Finstall Project, which I’ll examine in a bit;
  • ZFS (ported from Sun Microsystem)3) DTrace (also ported from Sun Microsystems).
There is a long shared history between BSD and Sun. The original SunOS was based on BSD, mostly due to Bill Joy’s involvement at UCBerkeley.
ZFS will be available in the 7.0 release as an experimental kernelmodule with some limitations. FreeBSD cannot boot off ZFS file systems,nor can it use ACLs; other more advanced features of ZFS (such asexporting volumes over iSCSI) will also be delayed until futurereleases. However, the ZFS port is mostly integrated into the standardFreeBSD stack including GEOM and UFS. This level of integration allows,for example, a UFS file-system to be created on top of a ZFS volume.
The state of DTrace is a little more precarious. The initialdevelopment of the port began in mid-2006 and was met with a warmwelcome. However, there is currently a licensing dispute that preventsthe DTrace headers from being merged into the main source tree for thisrelease.
And, last but not least, the new graphical FreeBSD installer“finstall”. Developed by Ivan Voras as a Google Summer of Code project,it is planned to be offered as a separate installer CD for the 7.0release and in future releases will be merged into the main install CD.The current implementation is a Python-GTK front-end that talks to aPython back-end via XML-RPC. The long term plan is to rewrite theback-end in the C programming language for better integration with thecore FreeBSD system.
Using finstall is pleasant. It comes as part of a Live-CD and goesthrough a familiar boot process. After the system is initialized, youare prompted with a message instructing you to either login with the“install” user to launch the graphical installer or the “root” user touse the CD as a recovery or exploration cd. Another very nice andpractical feature of the new graphical installer is the availability ofhelp sections for various installation tasks. Although the text in thealpha/preview release is just place-holder, this will eventually getfixed and become a useful resource for users uncertain of theimplications of the various options. This is an area somewhat lackingin the current installer.
screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onmouseover="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onclick="if(!this.resized) {return true;} else {window.open('http://images.lampchina.net/news/10/hOwSGgCRvND87KtjrxBl1aEmXWVQb630.jpg');}" onmousewheel="return imgzoom(this);" alt="" />The finstall live cd booting upAfter logging in as the “install” user the system will automaticallystart the XFCE window manager and you’ll be presented with a graphicalinstaller icon “FreeBSD Installer”. Double click it and you will bepresented with the installer splash screen below. It is important tonote that while the installer is under active development (in betastate), some options will be disabled.
screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onmouseover="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onclick="if(!this.resized) {return true;} else {window.open('http://images.lampchina.net/news/10/Wf8QyGszKV9Db3PHdrpU5lxi7gAuRMqO.jpg');}" onmousewheel="return imgzoom(this);" alt="" />The finstall installer splash screenThe installer will then present you with your file-system options,as seen in the figure below. It is important to note that ZFS cannot beused as the root, or boot file-system, the traditional FreeBSD UFSfile-system is required.
screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onmouseover="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onclick="if(!this.resized) {return true;} else {window.open('http://images.lampchina.net/news/10/DeN3QAMKhPRcil6pYOt52Wn1kVsJbgm0.jpg');}" onmousewheel="return imgzoom(this);" alt="" />The finstall file-system selectionAfter you have made all the selections you want for your system, youwill be presented with a fairly standard progress bar as the installerconfigures FreeBSD on your system
screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onmouseover="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onclick="if(!this.resized) {return true;} else {window.open('http://images.lampchina.net/news/10/Du5wJdn9HN3IjYeoXMLk0FvZBEQPKfAp.jpg');}" onmousewheel="return imgzoom(this);" alt="" />Installing the base system, progress barThe finstall project is also a platform for users to create theirown live CDs and customized installers. The Python implementation ofthe front-end makes it very easy to jump in and hack around. In theresources section, I have included a link to my blog where I documentmy own attempts at generating my own install live CD (for the braveonly, it is a work in progress). Keep in mind that officialdocumentation will appear on the finstall sourceforge project (also inthe resource section) and those will be the definitive, up-to-dateinstructions on how to hack the installer.
ConclusionFreeBSD has come a long way and has created great technicalsolutions to tough problems. The new scheduler will offer performancegains for years to come. New architectures are being added frequently,including Sun Microsystems Niagra processors, Apple Mac Books (andMac-mini), and even an initial port to the Xbox platform.
The future is bright for FreeBSD and I’m certainly looking forwardto the pending 7.0 release and beyond. The 7.1 release will see the ULEscheduler enabled by default and should also see the inclusion of thenew installer into the mainstream releases. The multi-processorscalability will continue with the next goal of linear scalability onsixteen cores. There are now more than seventeen thousand ports and,with the new and improved performance, FreeBSD makes a formidabledesktop and server operating system.
相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载