如果寫網路遊戲的外掛,通常需要反向工程,了解
底層的通訊協定。如果是一般的遊戲,則要了解跨
行程記憶體的讀寫。
請問什麼是反向工程 和 底層的通訊協定?
跨行程記憶體又是什麼 請分別解釋
謝謝
2007-05-28 09:06:59 · 2 個解答 · 發問者 織田信長 2 in 電腦與網際網路 ➔ 軟體
反向工程:也有人稱作逆向工程(Reverse Engineering)
簡單來說,你現在看到雅虎知識
工程師一開始從想像畫面,實際寫程式做出來這就叫正向工程
如果我們從現在看到的畫面去分析工程師的程式是怎麼寫的
這就叫反向工程,
當你是從已知的結果往回去思考它的緣由,這就是反向的概念
工程是只(前人發明的)有效率的方法、途徑(approach)
想要更了解細部內容請研讀有關軟體工程方面的書籍
底層的通訊協定,個人猜測是指網路的通訊協定
ISO公佈OSI七層,網路遊戲的話
我想可能是位居第三層的 IP protocol
和第四層的TCP protocol
細部內容,過於繁瑣
你可能要找相關資料去研讀,推薦RFC文件
或是網路概論等相關書籍
至於跨行程記憶體的讀寫:
這我就不是很了解
我只能建議你可以去找有關作業系統相關書籍找尋
應該可以找到你要的答案
基本上你的問題有點難(對小弟我而言)
所以我也只能建議您能從哪邊找到解答
加油啦
2007-05-30 18:45:49 · answer #1 · answered by Anonymous · 0⤊ 0⤋
跨行程記憶體讀寫,實際上就是你的對象正在執行,很像是個暗箱,你跑一支程式要如何去透過操作系統去分析這個暗箱輸入輸出的訊息,進而去修改輸入輸出的訊息。兩隻程式對作業系統來說都是行程,所以要怎麼樣抓到正確的行程,還有對象行程派生出來的子行程樹,避免被作業系統判定記憶體溢出 / 非法讀寫便是重點。
2007-06-03 07:59:10 補充:
一般操作系統會教的跨行程通訊方法有:共享記憶體 (share memory)、記憶體映射 (memory map)、磁碟檔案 (file)、訊號 (signal)、命名管道 (named pipe)、信號燈 (semaphore)、封包 (socket)、信息佇列 (message queue)、信息傳遞 (message passing)、郵箱 (mailbox)。
2007-06-03 03:58:27 · answer #2 · answered by mh 7 · 0⤊ 0⤋