2009年10月30日 星期五

GNU C Expand

1. __attribute__ ((variable attributes))

variable attributes:

• aligned
• deprecated
• mode
• nocommon
• packed
• section
• transparent_union
• unused
• vector_size
• weak

section ("section-name")'
extern void foobar (void) __attribute__ ((section ("bar")));
puts the function 『foobar' in the 『bar' section.


example:


#define subsys_initcall(fn) __define_initcall("4",fn,4)
//用來將指定的函數pointer fn放到initcall.init section
//是把fn放到.initcall.init的section.initcall4.init


initcall4.init defined in arch/i386/kernel/vmlinux.lds.S

.initcall.init : AT(ADDR(.initcall.init) - LOAD_OFFSET)
{
*(.initcall1.init)
*(.initcall2.init)
*(.initcall3.init)
*(.initcall4.init)
*(.initcall5.init)
*(.initcall6.init)
*(.initcall7.init)
}


2. likely and unlikely

in include/linux/compiler.h

#define __builtin_expect(x, expected_value) (x)

#define likely(x) __builtin_expect(!!(x), 1)
#define unlikely(x) __builtin_expect(!!(x), 0)


example:

if(likely(value))
{
}
else
{
}


//看起來likely和unlikely是一樣的, 但事實上是有差異的
//likely表示value的值為true的可能性更大一些,那麼執行if的機會大;
//unlikely表示value的值為false的可能性大一些,執行else機會大一些。
//有了這種修飾,gcc編成組語後,
//會將likely使得if後面的執行語句緊跟著前面的;
//unlikely使得else後面的語句緊跟著前面的程序
//這樣就會可以讓cache預先讀取,
//目的是增加程序的執行速度

9 則留言:

匿名 提到...

一葉晴貼圖區,影音視訊聊天室,玩美女人,免費視訊,ut 聊天室,美女寫真,微風成人,玩美女人,同志交友,成人卡通,援交友留言,免費視訊,美女影片,情色視訊,伊莉成人,成人光碟,tt1069同志交友網,85cc成人片,新人淚成人色網,日本美女寫真集,免費聊天,聊天室080,999成人性站,av成人網,情色貼圖區,情色論壇,成人聊天室,視訊美女,同志貼圖,成人視訊,視訊交友90739,視訊聊天室,比基尼泳裝美女,杜雷斯成人,色情影片,免費視訊,交友戀愛進行室,玩美女人,美女交友,正妹時鐘,

匿名 提到...

無碼影片,情人視訊,正妹牆,聊天室,ut聊天室,視訊聊天室,情色,微風成人,豆豆聊天室,視訊美女,85cc成人片,85cc成人片觀看,交友戀愛進行室,嘟嘟成人網,成人,色情,美女,色情小說,情色貼圖,情色小說,交友覓戀會館,情色文學,交友104速配網,視訊交友,成人韭南籽,18成人,ut男同志聊天室,成人圖片區,交友104相親網,0951成人頻道下載,男同志聊天室,成人貼圖,成人影片,tt1069同志交友網,成人視訊,aio交友愛情館,情色視訊,情色視訊,色情遊戲,交友戀愛小站,

匿名 提到...

улетное порно опкончался!!
http://gogokol.8k.com
фото голых толстых женщин http://lopdogu.s5.com

а вы?

匿名 提到...

крупные предметы во влагалище опкончался!!
http://glavkom.htmlplanet.com/koni
порно кавказ http://glazenki.htmlplanet.com/koni

а вы?

匿名 提到...

thanks..................................................

匿名 提到...

трахнули девочку опкончался!!
http://gribochek.pp.ua
поиск порномир http://gribnik.pp.ua

а вы?

匿名 提到...

Govern your thoughts when alone, and your tongue when in company...................................................

hdtfrcls 提到...

Very good share ~ message support
...................................

af156gfg 提到...

The good article supports you ~
...................................................