当前位置: 技术问答>linux和unix
系统调用概念
来源: 互联网 发布时间:2017-01-26
本文导语: 请问一下,系统调用就是内核API或者内核接口吗 | 用汇编是可以的。 include "defines.h" .data hello: .string "hello worldn" .text .globl _start _start: movl $SYS_write,%eax movl $STDOUT,%ebx ...
请问一下,系统调用就是内核API或者内核接口吗
|
用汇编是可以的。
include "defines.h"
.data
hello:
.string "hello worldn"
.text
.globl _start
_start:
movl $SYS_write,%eax
movl $STDOUT,%ebx
movl $hello,%ecx
movl $12,%edx
int $0x80
movl $SYS_exit,%eax
xorl %ebx,%ebx
int $0x80
ret
|
恭喜你,你说的很正确。
|
系统调用是用户程序打开内核API的钥匙
|
其实,系统调用是一个软中断。比如,当你调用read函数时,会发生一个软中断(当然,发生中断后,就会切换到内核态),然后内核就会去调用相应的sys_read函数,而sys_read就是APP层read函数的真正实现。
|
就是提供在用户空间操作内核空间的一个接口
等同于XP系统下得API。
等同于XP系统下得API。