cpu: intel x86
系統程式員多少會接觸 fork; fork
調用呼叫一次, 卻會 return 兩次。傳回值一次是 0, 一次是非 0, 真是神奇, 這是怎麼做到的? 你可以寫一個類似 fork 行為的 function 嗎?
fork 出來的那個 process 從哪裡開始執行呢?
L3?
如果你對這些問題有興趣, 歡迎來聽聽看 "fork 的實作"這個主題。沒有簡報, 只有生硬的程式碼。這個實作版本是
Orange's 一個作業系統的實現這本書的版本, 以 micro kernel 的架構實作, 我做了一些簡化的動作。我將使用 gdb/qemu, 和大家一起來逐步追蹤 fork 的實作, 觀察被 fork 出來的 process 行為。讓我們穿梭在 process 之間, 體會 os 之美。
延伸閱讀:
共筆分享:
http://openetherpad.org/mosut20130126
沒有留言:
張貼留言
使用 google 的 reCAPTCHA 驗證碼, 總算可以輕鬆留言了。
我實在受不了 spam 了, 又不想讓大家的眼睛花掉, 只好放棄匿名留言。這是沒辦法中的辦法了。留言的朋友需要有 google 帳號。