系统调用
背景:
- 为了避免有限的系统资源被多个不同的应用程序同时访问,需要加以保护,避免冲突;
- 提供一套统一的接口,是应用程序能做一些由操作系统支持的行为;
- 接口通过中断的方式实现,Linux使用0x80作为系统调用的入口,通用寄存器用于传递参数。
弊端:
- 使用不方便,程序员需要了解与操作系统的相关细节;
- 操作系统之间的系统调用不兼容;
通过增加抽象层(标准库)来解决该问题,如,C语言中被定义在 /usr/include/unistd.h
背景:
弊端:
通过增加抽象层(标准库)来解决该问题,如,C语言中被定义在 /usr/include/unistd.h