【2】操作系统接口

操作系统对硬件的管理以服务的形式(即接口)提供给用户

1、操作系统接口概述

1.1 操作系统接口标准
  • POSIX标准,可移植操作系统接口
1.2 接口类型

接口类型

  • 图形接口
  • 命令行接口
  • 编程接口
1.3 OS系统调用机制

系统调用机制 CPU状态转换:用户态陷入内核态(陷入指令) —> 内核执行系统调用服务例程 —> 处理结束返回用户态

2、Linux系统调用机制

2.1 Linux各种接口

Linux各种接口

2.2 系统调用与API

系统调用:操作系统提供给用户程序调用的一组特殊接口,内核与用户空间进行交互的接口,把用户进程的请求传达给内核,内核把请求处理完毕后将处理结果返回给用户空间
系统

  • 系统调用号:①唯一标识每个系统 ②作为系统调用表的下标
  • 系统调用表:用来把系统调用号和相应的服务例程关联起来

系统调用处理过程

2.3 系统调用机制优化

系统调用机制优化GNU C库是Linux系统调用接口的封装

2.4 系统调用实例——日志收集系统

系统调用实例

  • 打开系统调用表表项文件,增加系统调用表表项,添加335号系统调用
  • 添加系统调用函数
  • 修改Makefile文件,把myaudit.c添加到内核编译中去
  • 增加函数声明
  • 拦截相关系统调用
  • 编译内核 ->装内核 -> 修改内核引导 -> 重启系统
  • 添加实现钩子函数的内核模块 -> 编译内核模块
  • 编写用户态测试程序

系统调用日志收集程序_x86_64环境3.14版本内核(上)
系统调用日志收集程序_x86_64环境3.14版本内核(下)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值