Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

搜索
1 2 3 4
查看: 2446|回復: 1
打印 上一主題 下一主題

回顧Trace Linux Kernel Source的一些想法~

[複製鏈接]
跳轉到指定樓層
1#
發表於 2009-12-20 15:50:05 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
之前在這裡貼了一些自己trace linux kernel的一些筆記文,筆記式的
/ s8 G4 M( U, u文章難免寫得比較瑣碎,閱讀起來應該比較不容易,尤其逐行trace,
" P: Y/ Z" k4 C" k應該會有人很排斥或是不認同這樣的一種方式,之前曾經看到一些文章2 J1 w8 B0 Y8 k  e) t
甚至會明白地提醒讀者切記不要逐行研究程式碼,要將其觀念記住才是
  U6 w6 L, Z9 i: v/ K* x% S; R1 Z重點。3 ~' q# k2 n4 o6 w) `2 d- Z" D

" k' Q9 L0 {  B" C8 H這邊想針對這樣的論點提一些想法給大家參考,目的不是要訂出一個好3 S+ k8 t1 q; p6 w: l. y1 Q
與壞,其實我覺得兩種方法並不相衝突,而是大家在學習的階段,可以/ O2 W4 b9 a/ Z3 }% u& c/ A/ r
依照理解程度來做取捨。% X% U+ ]9 }" B: o+ }0 e$ i" `
% j8 Y* @( x. B* }5 r  V* Z" P
以自己的經驗來說,以前一開始囫圇吞棗,試圖去理解書上提到的觀念,
* _. ]0 ?& x* F) E' C似懂非懂的寄了許多東西,但是往往人家問我:, n0 k8 M& m! L% z' m
『你能夠自己寫出一個OS或是其中一部分功能嗎?』( o, j+ o3 s+ B( t, ]
似乎就變得很心虛,只能告訴對方『我知道它的實作原理』,但是說要
  u4 d8 N; y3 s6 ^) z3 w3 K自己要寫,好像就是少了點什麼? 好像懂,但是要怎麼真正的寫出來,+ t/ V5 P1 F: g( l& c
卻是不怎麼敢肯定。
! x, L/ s. y/ s% F7 T- Z5 C- R* u
面對這樣的狀況持續一段時間,讓人真正有自信能夠依樣畫葫蘆弄出個, O( \( n/ n! ^
什麼東西,卻是在花心思從很基本的instruction set開始K和逐行逐行
& r% A; c: j& M/ {5 S1 N# r9 U了解之後,才覺得似乎概念和實作有了那麼一點連接。也由於這樣的基: U1 o' t' N) E$ W  A
礎,有時候有助於資料不足的狀況下,還能夠經由看程式碼來補足資料* e- e  d8 r# `/ {4 N
不足的部份,甚至可以用來印證自己的想法。
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂 踩 分享分享
2#
 樓主| 發表於 2009-12-20 16:05:50 | 只看該作者
這樣的說起來多看程式的好處多多囉?
7 S# y9 C/ [8 Z5 e* T" @% @0 @/ h# D0 S* V% P
好像也不盡然,自己的經驗是,看上老半天,一大段雖然每個字都看得懂,
9 G% h1 Z1 e. S/ {7 }但是兜起來就是不曉得他要做啥用? (看英文的時候....恩...好像也是這樣   )* R  N5 v1 U* [7 r
有時回頭翻書,看看觀念,才會發現這一段天書似的程式碼所隱含的意
3 w* y8 [# N4 E7 ~義,自然就理解了。
% ]9 _8 {/ v4 V3 U& k; B. b( g
2 p) H1 z* W3 _所以後來想想要深入kernel source的方式,似乎得要雙管齊下,一邊看( R3 Y  D" B# e8 u) J) o) s2 U
觀念,一邊找出相對應的程式碼出來,最後觀念與觀念之間,必定有一些! X& Y) [, C$ n1 B& ?& H" ?4 u
很細節的部份沒有被提到,玩家就得自己想辦法將他們串起來,一旦書本- |0 a3 b2 a- ^2 k
上的觀念可以在實際程式上得到印證,那這樣改天要改寫,也就遊刃有餘。% U4 `. @* P! }% ]2 D* }6 T( `( I, n
. i1 q/ {% j' ?
這邊想特別提到的還是閱讀指令集的重要性,對指令的熟悉,不但對閱讀
* S1 O- z9 C/ F1 {9 @' r低階的程式碼有很大的幫助,還對於整個系統演進了解更為透徹。以前會
2 B7 G5 Z! \, P5 O- l- c覺得了解太低階的東西用處不大,後來才覺得這些部分有時卻影響很大。
/ L2 c$ Q/ {- p9 p6 Y* q0 G
8 V" B, |, U0 ~( u2 S, o以上無聊閒談,歡迎大家提出自己的經驗,交流一下~
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

首頁|手機版|Chip123 科技應用創新平台 |新契機國際商機整合股份有限公司

GMT+8, 2024-5-6 05:19 AM , Processed in 0.100006 second(s), 17 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表