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内核之旅-电子杂志


相关推荐
美味小鱼1 分钟前
DupFinder:一个用 Rust 编写的高性能重复文件查找工具
开发语言·后端·rust
大聪明-PLUS2 分钟前
如何提高 FFmpeg 中的视频流解码速度
linux·嵌入式·arm·smarc
苦学编程的谢5 分钟前
RabbitMQ_2_RabbitMQ快速入门
linux·centos·rabbitmq
RisunJan6 分钟前
Linux命令-free命令(查看系统内存(RAM)和交换空间(Swap)使用情况)
linux·运维·服务器
Gauss松鼠会6 分钟前
【GaussDB】如何从GaussDB发布包中提取出内核二进制文件
linux·数据库·database·gaussdb
大聪明-PLUS6 分钟前
如何向 FFmpeg 添加编解码器
linux·嵌入式·arm·smarc
Victor3566 分钟前
Redis(160)Redis的安全问题如何解决?
后端
linux修理工7 分钟前
vagrant file 设置固定IP并允许密码登录
java·linux·服务器
·s.*8 分钟前
So-arm 101机械臂训练搭建全流程
linux·ubuntu·机器人
Victor3569 分钟前
Redis(161)如何使用Redis实现分布式锁?
后端