亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 操作系統 > 正文

讀核日記(四)

2024-07-26 00:31:37
字體:
來源:轉載
供稿:網友

這幾天身體不太好,進展不快.有時候突然發現在拼命的讀代碼的間隙里,停一會想一想,收獲會更大.特別是對于這種非常龐大的系統來說.把握整體的意義尤其重要.隨著對linux整體的拆解,我對于整個系統,已經不想開始是那么模糊.好像已經度過了那個極點.不過我也應做好準備,因為一但我對整個細節解讀時,肯定也會有同樣的經歷.

整個linux內核之所以這樣艱澀,難懂就在于它的整體性.想我們這樣很少寫萬行以上程序的人來說,它就好像一個龐大的肉球.讓你不知道如何下嘴.不過一但咬破.就非常香美了.畢竟,讀這么優秀的代碼也是一種享受.

我個人認為linux 的內核難在這幾點:1,系統龐大,太多的變量,結構, 以及typedef定義的東西不容易找到.2,作為操作系統,它的函數調用時動態的,讀不懂大量的makefile 你根本就不知道這50 M的東西是怎么組織起來的,況且,你絕對不可以像跟蹤程序一樣用debug走一下.3, 龐大的數據結構,可能是比較簡單的運算變得不容易讀.

因此在讀核的初級階段.我們應該善于想象,善于將不容易理解的部分用偽碼的理解方式走過,當我們對大局把握好了,將整個結構拆解清楚了,在讀不遲.況且,雖內核本身來說,它所涉及到的運算,結構. 本質上和課本上的沒有差別.(可惜我不是計算機系畢業的).只不過是內容多了一些罷了.

比如說進程調度這一部分,說白了,就是在調用fork()的時候,就產生一task_strut 類型的指針,它包含進程調度所用到的一切信息.然后將這個指針插到隊列中去就行了,然后cpu 一次總隊類中取出指針,分配給他們時間片.

而這個指針如何插入呢?說白了就是看它的weight,weight 的計算方法,有根據進程類型的不同由不同的算法(實時進程,內核進程,普通進程).好了,這樣我們想一下<<數據結構中>>關于隊列的操作,插入,刪除,插到隊頭,置于隊尾.再想一下,這些操作如何同操作系統的應用結合在一塊.例如;好隊進程正在運行,突然,由于一硬件中斷.產生一進程,它必須馬上處理.系統應把它插入到隊頭.

好了.你可以讀一下/usr./src/linux/kenrel/sched.c,不要過那么多全局變量,現在數據結構上走過去,如下面的代碼:

 

static inline void move_last_runqueue(struct task_struct * p)

{

struct task_struct *next = p->next_run;

struct task_struct *PRev = p->prev_run;

 

/* remove from list */

next->prev_run = prev;

prev->next_run = next;

/* add back to list */

p->next_run = &init_task;

prev = init_task.prev_run;

init_task.prev_run = p;

p->prev_run = prev;

prev->next_run = p;

}

 

static inline void move_first_runqueue(struct task_struct * p)

{

struct task_struct *next = p->next_run;

struct task_struct *prev = p->prev_run;

 

/* remove from list */

next->prev_run = prev;

prev->next_run = next;

/* add back to list */

p->prev_run = &init_task;

next = init_task.next_run;

init_task.next_run = p;

p->next_run = next;

next->prev_run = p;

}

如果你還不懂,你可能要先,在c語言和數據結構上下一點功夫.其他的模塊,我想也是大同小異, 不過,也修補會這么簡單.如內存管理中用到了好多平衡二叉樹的排序,遍歷等等.但總的結構時不變的.只要可以通欄全局,在不開定義的情況下,可以讀懂全局變量的意思(其實,猜個八九不成問題),看懂是不成問題的.起碼我是信心十足.

我應該在熟悉一下,計算機專業的軟件基礎課!!


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
福利一区视频在线观看| 欧美精品成人在线| 日韩美女福利视频| 亚洲免费视频一区二区| 日韩电视剧在线观看免费网站| 亚洲网址你懂得| 亚洲成人精品在线| www.欧美精品一二三区| 1769国内精品视频在线播放| 欧美一区二区三区艳史| 亚洲一区制服诱惑| 国产精品成人免费视频| 韩国国内大量揄拍精品视频| 亚洲精品一区久久久久久| 91久久精品久久国产性色也91| 88国产精品欧美一区二区三区| 成人精品视频99在线观看免费| 中文字幕自拍vr一区二区三区| 在线看日韩欧美| 欧美精品在线观看| 久久亚洲国产精品| 欧美性极品少妇精品网站| 国产在线999| 欧美老少做受xxxx高潮| 欧美资源在线观看| 久久久久亚洲精品| 久久精品99久久香蕉国产色戒| 狠狠躁夜夜躁人人躁婷婷91| 亚洲大胆人体视频| 国产自产女人91一区在线观看| 91久久在线视频| 国产美女久久久| 日韩美女视频在线观看| 久久久精品2019中文字幕神马| 国产精品久久久久久一区二区| 91免费版网站入口| 91精品国产综合久久久久久蜜臀| 一区国产精品视频| 日韩av大片免费看| 久久躁日日躁aaaaxxxx| 色噜噜狠狠色综合网图区| 欧美重口另类videos人妖| 亚洲欧洲视频在线| 伊人成人开心激情综合网| 草民午夜欧美限制a级福利片| 亚洲精品免费网站| 成人性生交xxxxx网站| 亚洲精品一区中文字幕乱码| 亚洲免费电影一区| 国产91精品不卡视频| 国产成人精彩在线视频九色| 国产精品国语对白| 日本a级片电影一区二区| 国产性猛交xxxx免费看久久| 亚洲精品之草原avav久久| 国产亚洲a∨片在线观看| 午夜精品久久久久久99热软件| 欧美丝袜一区二区| 国产精品久久久久久久久粉嫩av| 国产精品一区二区3区| 亚洲第一级黄色片| 亚洲另类欧美自拍| 欧美综合激情网| 国产69精品久久久| 国产一区私人高清影院| 亚洲字幕在线观看| 中文字幕在线亚洲| 欧美专区福利在线| 久久91精品国产91久久跳| 欧美视频专区一二在线观看| 国产成人一区二区三区电影| 久久国产精品影视| 午夜精品蜜臀一区二区三区免费| 亚洲成年人在线| 911国产网站尤物在线观看| 日韩有码在线播放| 成人av资源在线播放| 日韩欧美视频一区二区三区| 国产精品久久久久久久久久久新郎| 欧美怡红院视频一区二区三区| 亚洲午夜女主播在线直播| 精品久久久久久亚洲国产300| 亚洲国产美女久久久久| 亚洲国产精品资源| 国产做受高潮69| 日韩中文视频免费在线观看| 国产精品6699| 欧美视频在线视频| 亚洲精品资源在线| 国产一区二区三区久久精品| 91九色综合久久| 欧美在线观看网址综合| 国产99久久精品一区二区永久免费| 亚洲自拍偷拍福利| 欧美成人午夜激情在线| 午夜精品久久久久久久男人的天堂| 九九热r在线视频精品| 97国产一区二区精品久久呦| 欧美在线视频导航| 伊人av综合网| 国自在线精品视频| 日本韩国欧美精品大片卡二| 国产精品自产拍在线观| 97国产真实伦对白精彩视频8| 欧美日韩国产成人| 亚洲国产精品久久| 亚洲久久久久久久久久| 久久久久久久一区二区| 亚洲第一网站男人都懂| 亚洲精品美女在线观看| 国内偷自视频区视频综合| 91免费版网站入口| 国产精品久久久久91| 这里只有精品丝袜| 国产成人一区二区在线| 色樱桃影院亚洲精品影院| 亚洲香蕉伊综合在人在线视看| 亚洲欧洲日本专区| 国产精品99蜜臀久久不卡二区| 97免费在线视频| 国产日韩精品入口| 57pao国产成人免费| 亚洲午夜精品久久久久久性色| 日韩美女在线播放| 久久亚洲影音av资源网| 亚洲最大的网站| 成人午夜两性视频| 国产一区二区三区丝袜| 国产精品久在线观看| 亚洲级视频在线观看免费1级| 精品国内自产拍在线观看| 久久亚洲国产精品| 成人h猎奇视频网站| 中文字幕精品影院| 午夜剧场成人观在线视频免费观看| 91精品国产91久久久久福利| 最近中文字幕2019免费| 社区色欧美激情 | 97热在线精品视频在线观看| 一区二区三区回区在观看免费视频| 国产精品www网站| 国产欧美一区二区三区久久人妖| 91欧美视频网站| 欧美韩国理论所午夜片917电影| 国产99视频精品免视看7| 欧美性少妇18aaaa视频| 国产亚洲xxx| 欧美另类69精品久久久久9999| 啊v视频在线一区二区三区| 色先锋资源久久综合5566| 久久在精品线影院精品国产| 日韩精品在线视频| 欧美成人h版在线观看| 欧美大片在线看免费观看| 26uuu日韩精品一区二区| 97在线视频免费播放| 久久免费国产精品1| 日韩亚洲欧美中文高清在线| 久久99国产精品自在自在app| 91中文在线视频| 性欧美视频videos6一9| 国产乱肥老妇国产一区二| 97人人爽人人喊人人模波多| 精品无码久久久久久国产|