Linux内核分析与应用6-系统调用

本系列是对 陈莉君 老师 Linux 内核分析与应用 的学习与记录。讲的非常之好,推荐观看

留此记录,蜻蜓点水,可作抛砖引玉


6.1 Linux中的各种API

LSB (Linux Standards Base)

POSIX: 可移植操作系统接口(Portable Operating System Interface of UNIX)

Linux ABI:

(为了兼容)

内核API:

主要是内核中标记为"EXPORT_SYMBOL"的函数

思考:

保持一个稳定的ABI和保持一个稳定的API相比,谁更困难,为什么?


6.2 系统调用机制

系统调用---内核的出口

各种工具:

如 strace ls,就可以看到ls命令所调用的系统调用

中断是异步的,异常是同步的,系统调用既可以是同步,也可以是异步

系统调用号存放在eax寄存器中, 其实现所在的源文件也不在一起.

参数存放在寄存器中,一般参数不超过6个

参考:

系统调用

Linux内核之旅-电子杂志


相关推荐
程序员爱钓鱼9 小时前
Rust Option 详解:安全处理“可能存在,也可能不存在”的值
前端·后端·rust
程序员爱钓鱼9 小时前
Go Modules 包管理详解:go.mod、go.sum 与依赖管理
前端·后端·go
小满zs15 小时前
Go语言第三章(五谷轮回)
后端·go
liang_jy17 小时前
内存管理(二)—— 覆盖与交换
面试·操作系统
liang_jy18 小时前
内存管理(一)—— 内存管理的概念
面试·操作系统
FoldWinCard18 小时前
D5 Linux 网络及端口命令
linux·运维·服务器
霸道流氓气质19 小时前
SpringBoot中通用工具类库(Utils)封装与使用实践
spring boot·后端·python
零涂毕业设计19 小时前
毕业设计模块开发-OLED显示屏(IIC协议0.96寸)STM32 ESP32 FPGA Linux驱动免费分享
linux·stm32·单片机·嵌入式·esp32·fpga·oled
tedcloud12319 小时前
OmniRoute怎么部署?开源AI模型路由平台Linux部署教程
linux·服务器·人工智能·开源·音视频
霸道流氓气质19 小时前
KMS 密钥管理服务(Key Management Service)原理与实践
linux·服务器·数据库