0
我試圖運行bzip並讓它從nasm編碼的彙編程序(linux下)返回到調用函數的控制。我顯然需要使用sys_fork和sys_execve系統調用的組合來實現這一點。經過多次搜索,我找到了一個如何使用sys_execve的例子,但是我找不到如何使用sys_fork的例子。任何幫助我的請求將不勝感激。在nasm中請求sys_fork的示例
我試圖運行bzip並讓它從nasm編碼的彙編程序(linux下)返回到調用函數的控制。我顯然需要使用sys_fork和sys_execve系統調用的組合來實現這一點。經過多次搜索,我找到了一個如何使用sys_execve的例子,但是我找不到如何使用sys_fork的例子。任何幫助我的請求將不勝感激。在nasm中請求sys_fork的示例
我的經驗是有限的,但正如我記得sys_fork
很容易。 「只要做到這一點」 - 無參數。此時,你「同時在兩個地方」。如果eax
爲零,那麼您就是孩子 - 在bzip上做sys_execve
。如果eax
不爲零(非負值!),則表示您是父項,eax
是您的PID。在該PID上執行sys_waitpid
。我記得,這返回退出狀態bzip左移8個字節 - sys_execve
本身永遠不會返回。
我有一個粗略的例子,它運行編輯器,nasm和ld(全部用硬編碼的「hello.asm」)。希望發佈,但如果您需要,我可以提供某種方式。據我所知,我發現獲得正確的參數是最難的部分。
「左移8位」,當然不是字節...... –
非常感謝您的意見;非常感謝。如果沒有太多的麻煩,我會帶你提供示例代碼。再次感謝! – user1808714