Re: 請問一下
※ 引述《fevg.bbs@bbs.ournet.idv.tw (我是飛天法寶)》之銘言:
: 小弟我現在想研究bbs的原始碼
: 但是不知道怎麼去trace程式碼,不知道從何下手的意思
: 請各位先進給個意見 ,有沒有建議的順序還是方向呢?
: 先謝謝大家了
Maple 3 系列, 先從 src/lib 看一看, src/maple 是主程式, 可以先從 bbsd.c
的 main() 下手跑到 tn_login(), 然後對照 src/lib 的 function, 接著看一看
visio.c 了解 VIrtual Screen Input Output, 接著可以看 cache.c 了解
board/user cache 的機制, 當然這些都要對照 src/include 看一看相關的
structure & flag, 使用者/看板的 flag 在 struct.h, 有關於權限的在
perm.h, 一些 global variable 可以瞄一下 global.h
知道大概 bbs 怎麼跑之後, 可以先看一下 xover.c, 這是 M3 相當重要的主體結構,
包含 talk/post/board/mail 都是利用 xover() 統一介面. 所以 :
post.c : 發表/閱讀/管理文章.
mail.c : 使用者收/發 信件
board.c : 看板
gem.c : 精華區, 跟 post.c 理論上應該有點像 (太久沒摸了 :P)
talk.c : 使用者名單/好友名單/跟聊天有關的
如果這些東西覺得有點難度, 也可以先從簡單的下手 :
chat.c : 應該改成 .so 了 ? 這是聊天室的 client, server 請見 xchatd.c
acct.c : 管理看板 / 使用者的相關 function
menu.c : 就進來看的到的選單, 動態看板, 留言版
(movie 可以看 cache.c & util/camera.c & util/account.c)
more.c : show 檔案用的, 比如進站畫面, 進版畫面, blah blah
edit.c : 編輯器, 也可以看一看 ve
其實還有很多細部沒有提到, 不過這樣 trace 完, 其他 src 下的東西我想也可
以慢慢消化了 :)
Maple 系列的 source code 可以在 ftp://php.twbbs.org/pub/bbs/Maple/Maple3
下載, 或者可以參考一下分支, 有幾個比較重要的 :
WindTop : bbs.yzu.edu.tw 風之塔
itoc : http://home.pchome.com.tw/soho/itoc/
SNOW : 這個好像停止發展了, 是 Maple3 的 web 介面
這些可以在上面的 ftp 找的到, trace 有問題也可以去相關的站台詢問 :)
--
我的簽名檔只有十個字.
--
^..^ ★ < 豬 頭 紀 公 園 - php.twbbs.org (140.114.81.201) >
-w @@ w-- < 249.c30.ethome.net.tw >
討論串 (同標題文章)
Maple 近期熱門文章
PTT數位生活區 即時熱門文章