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


相关推荐
热爱Liunx的丘丘人19 小时前
Ansible的Playbook案例一
linux·运维·服务器·ansible
spring29979219 小时前
Spring Boot 实战篇(四):实现用户登录与注册功能
java·spring boot·后端
Minla19 小时前
kubectl常用命令别名设置(linux|windows)
linux·运维·服务器·k8s
程序猿编码19 小时前
给Linux程序穿“隐身衣”——ELF运行时加密器全解析(C/C++代码实现)
linux·c语言·c++·网络安全·elf·内存安全
cyber_两只龙宝20 小时前
【Oracle】Oracle之SQL的聚合函数和分组
linux·运维·数据库·sql·云原生·oracle
做运维的阿瑞20 小时前
Linux 系统启动过程解析
linux·运维·服务器
菜菜小狗的学习笔记20 小时前
八股(六)操作系统
linux·运维·服务器
zhou7577121720 小时前
linux搭建 Hermes Agent(爱马仕)
linux·运维·服务器
原来是猿20 小时前
Linux线程同步与互斥(三):POSIX信号量与环形队列生产者消费者模型
linux·运维·服务器·开发语言
Rust语言中文社区20 小时前
【Rust日报】Clone:像进程一样 fork 虚拟机的 Rust KVM VMM
开发语言·后端·rust