天天看點

Linux程序切換以及核心線程的傳回值

linux中的程序是個最基本的概念,程序從運作隊列到開始運作有兩個開始的地方,一個就是switch_to宏中的标号1:"1:/t",另 一個就是ret_form_fork,隻要不是新建立的程序,幾乎都是從上面的那個标号1開始的,而switch_to宏則是除了核心本身,所有的程序要 想運作都要經過的地方,這樣看來,雖然linux的程序體系以及程序排程非常複雜,但是總體看來就是一個沙漏狀,而switch_to宏就是沙漏中間那個 最細的地方,想從一端到另一端,必然要經過那個地方,在非新建立的程序的情況下,所有程序都是從标号1開始,讓我們先看一下這是怎麼回事: 

#define switch_to(prev,next,last) do {

 本文轉自 dog250 51CTO部落格,原文連結:http://blog.51cto.com/dog250/1273510

繼續閱讀