日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

FreeBSD ULE調(diào)度器淺析

1 2 3 4 5 6 下一頁(yè)
FreeBSD 5-CURRENT剛剛引入了一個(gè)名為ULE調(diào)度器的內(nèi)核調(diào)度單元調(diào)度器 。這個(gè)調(diào)度器在SMP系統(tǒng)中的效率要遠(yuǎn)好于FreeBSD以前版本的調(diào)度器(目前,那個(gè)調(diào)度器被稱為4BSD調(diào)度器) 。新的ULE調(diào)度器的設(shè)計(jì)更像Solaris和Linux等操作系統(tǒng)的調(diào)度器 。Solaris的SMP性能非常好這一點(diǎn)是它的賣點(diǎn)之一,其調(diào)度器采用的優(yōu)秀算法就是一個(gè)很重要的原因 。BSD派生系統(tǒng),盡管由于系統(tǒng)整體設(shè)計(jì)的合理,以及操作系統(tǒng)其他部分的卓越性能彌補(bǔ)了它在SMP調(diào)度器上的不足,甚至盡管FreeBSD在絕大多數(shù)情況下的性能都超過
其他系統(tǒng),但它使用的4BSD調(diào)度器的SMP性能不高仍然為人詬病 。
令人高興的是,全新設(shè)計(jì)的ULE調(diào)度器引入了Solaris、Linux等系統(tǒng)在SMP調(diào)度方面的先進(jìn)算法,并且,它在單處理器系統(tǒng)中的性能也相當(dāng)不錯(cuò),與4BSD調(diào)度器的性能相當(dāng) 。
為什么新的ULE調(diào)度器能夠獲得更高的性能呢?最主要的原因在于,新的ULE調(diào)度器為每一個(gè)CPU單獨(dú)維護(hù)運(yùn)行隊(duì)列,并且,CPU之間能夠相互“竊取對(duì)方就緒隊(duì)列中的任務(wù),從而達(dá)到更好的平衡 ?;旧希琔LE調(diào)度器的設(shè)計(jì)符合下面的原則:盡可能利用更多的執(zhí)行資源,盡可能使用局部鎖,盡可能避免使用浪費(fèi)執(zhí)行資源的自旋鎖,盡可能采用高效的調(diào)度算法(目前ULE調(diào)度器采用的算法的復(fù)雜度是O(1)) 。
【FreeBSD ULE調(diào)度器淺析】在筆者撰寫這篇文章的時(shí)候,ULE調(diào)度器仍然處于進(jìn)一步完善的過程中 。一方面,它已經(jīng)能夠提供比4BSD調(diào)度器更好的調(diào)度性能——內(nèi)核態(tài)調(diào)度開銷減少大約25%,而用戶態(tài)的計(jì)算也有一定程度的縮減 。
本文所說的ULE調(diào)度器(src/sys/kern/sched_ule.c)的cvs tag是
$FreeBSD: src/sys/kern/sched_ule.c,v 1.8 2003/02/03 05:30:07 jeff Exp $未來版本的ULE調(diào)度器可能會(huì)和這個(gè)版本有一些出入,但不會(huì)太大 。
如果需要,您可以在這里下載所需的源代碼[當(dāng)然,我個(gè)人建議您還是checkout一份FreeBSD-CURRENT的源代碼] 。由于引用
了調(diào)度器中的代碼,根據(jù)源代碼的授權(quán)許可協(xié)議,以下首先重述它的版權(quán)聲明 。這份代碼使用的是典型的BSD風(fēng)格授權(quán) 。為了不至造成閱讀困難,這斷代馬沒有作語(yǔ)法點(diǎn)亮 。
/*-
* Copyright (c) 2003, Jeffrey Roberson
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice unmodifIEd, this list of conditions, and the following
* disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
* IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
中文大意如下,供參考;與英文不一致的地方以英文版本為準(zhǔn) 。
版權(quán)所有
?br />2003 Jeffrey Roberson ,保留所有權(quán)力 。

推薦閱讀