linux API,系统调用与libc的关系


  • 系统调用是操作系统提供给用户的操作接口
  • linux的系统调用一般是通过软中断实现从用户态到内核态的切换
  • linux 系统API一般是一个或者多个系统调用的组合实现,需要include
  • 某些C库函数不依赖任何系统调用,比如atoi, strcpy等,无需向内核请求任何资源
  • 某些C库函数强依赖系统调用,比如malloc,socket等
  • 某些linux API可以C库的形式调用,比如fopen  --> sys_open , fprintf(sys_open, sys_mmap, sys_write, sys_close)