对 linux 进行sys_read系统调用放入寄存器EAX是什么



在汇编器中进行系统调用sys_read(in80h,在eax中值为3)时,调用完成后寄存器EAX中将存储什么?是读取的字符串中的字符数吗?

检查read(2)文档:

返回值

成功后,将返回读取的字节数(零表示文件结束),并且文件位置将按此数字前进。是的 如果此数字小于字节数,则不是错误 要求;例如,可能会发生这种情况,因为更少的字节是 实际上现在可用(也许是因为我们接近 文件末尾,或者因为我们从管道或从 终端),或因为read()被信号打断。上 错误,返回 -1,并正确设置errno。在此 未指定文件位置(如果有)的情况下 变化。

提示:要查找sys_foo的文档,请键入 man 2 foo2表示系统调用。

最新更新