1.1.5操作系统(中断和异常,系统调用)

本文概述了中断在计算机系统中的关键作用,包括其在进程管理和内核介入中的角色,以及外中断处理流程。同时,深入讲解了系统调用的概念、与库函数的区别,以及调用过程。涵盖了操作系统如何通过系统调用来提供服务给应用程序,确保系统稳定和安全。

目录

中断

1.中断的作用

2.中断的分类

 3.外中断的处理过程

系统调用

1.什么是系统调用,有何作用?

2.系统调用与库函数的区别

3.系统调用过程


中断

1.中断的作用

1.当中断发生时,CPU立即进入核心态

2.当中断发生后,当前运行的进程暂停运行,并由操作系统内核对中断进行处理

3.对于不同的中断信号,会进行不同的处理

发生了中断,就意味着需要操作系统介入,开展管理工作。由于操作系统的管理工作(比如进程切换、分配I/0设备等)需要使用特权指令,因此CPU要从用户态转为核心态。中断可以使CPU从用户态切换为核心态,使操作系统获得计算机的控制权。有了中断,才能实现多道程序并发执行。

2.中断的分类:外中断 内中断

 3.外中断的处理过程

系统调用

1.什么是系统调用,有何作用?

知识点回顾:
操作系统作为用户和计算机硬件之间的接口,需要向上提供一些简单易用的服务。主要包括命令接
口和程序接口。其中,程序接口由一组 系统调用 组成。

“系统调用”是操作系统提供给应用程序(程序员/编程人员)使用的接口,可以理解为一种可供应用

程序调用的特殊函数, 应用程序可以通过系统调用来请求获得操作系统内核的服务

应用程序通过 系统调用 请求操作系统的服务。而系统中的各种共享资源都由操作系统内核统一掌管,因此 凡是
与共享资源有关的操作(如存储分配、 I/O 操作、文件管理等),都必须通过系统调用的方式向操作系统内核提
出服务请求 ,由操作系统内核代为完成。这样 可以保证系统的稳定性和安全性 ,防止用户进行非法操作。

拓展:感兴趣的同学可以搜索“ Linux 系统调用”,了解 Linux 操作系统提供了哪些系统

2.系统调用与库函数的区别

 

3.系统调用过程

 

传递系统调用参数 →    执行陷入指令( 用户态 )→   执行相应的内请求核程序处理系统调用( 核心态 ) →  返回 →   应用程序
注意:
1. 陷入指令 是在 用户态 执行的,执行陷入指令之后立即引发一个 内中断 ,使 CPU 进入核心态
2. 发出系统调用请求 是在 用户态 ,而 对系统调用的相应处理 核心态 下进行

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

热爱编程的小白白

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值