當我嘗試研究內核系統調用的返回值時,我找到描述它們的表以及我需要放入不同的寄存器以讓它們工作的表。然而,我沒有找到任何文件,它說什麼是我從系統調用返回的值。我只是在不同的地方發現,我收到的將會在EAX寄存器中。彙編中系統調用的返回值是什麼?
結果通常在EAX寄存器返回。
彙編語言步驟一步:由傑夫Duntemann的Linux書編程在他的計劃指出很多次:
看SYS_READ的返回值在EAX
複製sys_read的安全保存返回值
任何網站我有沒有這個返回值說明的。有沒有互聯網來源?或者有人可以向我解釋這個價值嗎?
嘗試使用Google搜索「sys_read」。這是我發現的東西。 http://asm.sourceforge.net/syscall.html –
@MarkLakata我試過但沒有幫助。正如我所說的,它只是說我需要在不同的寄存器中放入什麼,以便系統調用起作用。 (例如[here](http://docs.cs.up.ac.za/programming/asm/derick_tut/syscalls.html)和[here](http://blog.rchapman.org/post/36801038863/linux -system-call-table-for-x86-64)。) –
如果你的谷歌「sys_read」的第四個鏈接是這樣的:https://lwn.net/Articles/604287/,它有所有的血淋淋的細節。 –