Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

[複製鏈接]
跳轉到指定樓層
1#
發表於 2009-12-20 15:50:05 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
之前在這裡貼了一些自己trace linux kernel的一些筆記文,筆記式的
/ U# q2 v  v. y" }文章難免寫得比較瑣碎,閱讀起來應該比較不容易,尤其逐行trace,
; d9 K5 J1 D( ]& T( u應該會有人很排斥或是不認同這樣的一種方式,之前曾經看到一些文章2 U- l6 Y) h  y1 i
甚至會明白地提醒讀者切記不要逐行研究程式碼,要將其觀念記住才是- l, X: O; T% o8 [
重點。0 s$ m! o" V/ v9 x" v3 K  C9 D

: S1 W, {) K% ]3 b" W+ ]4 r; o) d) K& R這邊想針對這樣的論點提一些想法給大家參考,目的不是要訂出一個好3 y/ `' b5 M- B8 t/ Y3 d0 h0 a6 B
與壞,其實我覺得兩種方法並不相衝突,而是大家在學習的階段,可以
- v; h- H6 U0 K4 E依照理解程度來做取捨。+ U+ D8 H- o4 U$ F+ I5 y; Y
/ m/ O9 Z# w& ]
以自己的經驗來說,以前一開始囫圇吞棗,試圖去理解書上提到的觀念,
8 j& u+ v) c0 o- |$ P1 q1 M似懂非懂的寄了許多東西,但是往往人家問我:+ U/ S( a: R) T3 m- K! v  X1 P8 q
『你能夠自己寫出一個OS或是其中一部分功能嗎?』: F. P4 N6 C( c' K3 a2 f
似乎就變得很心虛,只能告訴對方『我知道它的實作原理』,但是說要+ [8 R+ x, S! @" n8 b& u( m( W9 [
自己要寫,好像就是少了點什麼? 好像懂,但是要怎麼真正的寫出來,
* ~% e: r$ [7 C  C卻是不怎麼敢肯定。& C' T6 p  b# E3 l+ d3 y" }

7 G$ ~- q% T/ [. D面對這樣的狀況持續一段時間,讓人真正有自信能夠依樣畫葫蘆弄出個
8 c0 n% r- P: X8 F+ C1 A8 K什麼東西,卻是在花心思從很基本的instruction set開始K和逐行逐行
( a& k. B9 N* W' \; l+ e' f了解之後,才覺得似乎概念和實作有了那麼一點連接。也由於這樣的基- x- d( N# \" l9 C3 z/ O; u
礎,有時候有助於資料不足的狀況下,還能夠經由看程式碼來補足資料+ M/ U6 d: z: i3 d+ `( \% |5 w
不足的部份,甚至可以用來印證自己的想法。
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂 踩 分享分享
2#
 樓主| 發表於 2009-12-20 16:05:50 | 只看該作者
這樣的說起來多看程式的好處多多囉?
/ d9 U0 H- t7 r9 ]8 I2 [9 B" a
' \' r, L5 v1 Y% G& `0 f好像也不盡然,自己的經驗是,看上老半天,一大段雖然每個字都看得懂,0 X$ @+ D4 g8 y- ?+ g" e( }! E
但是兜起來就是不曉得他要做啥用? (看英文的時候....恩...好像也是這樣   )
! q1 P! T+ w9 i7 z有時回頭翻書,看看觀念,才會發現這一段天書似的程式碼所隱含的意7 o: N' ?! M- t
義,自然就理解了。
8 M# |% x! h( \! U; d$ y  |) y, m) s3 ^" d# ?0 y5 p; C
所以後來想想要深入kernel source的方式,似乎得要雙管齊下,一邊看; `' g, @; o, B
觀念,一邊找出相對應的程式碼出來,最後觀念與觀念之間,必定有一些& P5 P! }/ ^6 A0 k7 _# t& I# {
很細節的部份沒有被提到,玩家就得自己想辦法將他們串起來,一旦書本
# P2 U- X  ?+ f, ^. I上的觀念可以在實際程式上得到印證,那這樣改天要改寫,也就遊刃有餘。
2 [  |: p5 y0 `* q5 n+ g, X9 h# v( T
這邊想特別提到的還是閱讀指令集的重要性,對指令的熟悉,不但對閱讀
, b8 Z8 e. h4 r- B  V低階的程式碼有很大的幫助,還對於整個系統演進了解更為透徹。以前會
1 h& H0 V  X, D; |5 M覺得了解太低階的東西用處不大,後來才覺得這些部分有時卻影響很大。
6 ^0 q9 z/ M' V, l  i1 P6 G+ v+ }) X) U3 Y4 f: D
以上無聊閒談,歡迎大家提出自己的經驗,交流一下~
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-11-16 10:19 AM , Processed in 0.146009 second(s), 17 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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