从0开始回顾操作系统---系列一

简介: 概述1、什么是操作系统● 操作系统简称OS,负责管理协调计算机硬件与软件资源工作的系统软件。● 屏蔽了硬件层的复杂性,为上层应用软件与用户提供易用的服务。2、操作系统主要有哪些功能?操作系统最主要的功能:● 处理器(CPU)管理:CPU的管理和分配,主要指的是进程管理。● 内存管理:内存的分配和管理,主要利用了虚拟内存的方式。● 外存管理:外存(磁盘等)的分配和管理,将外存以文件的形式提供出去。● I/O管理:对输入/输出设备的统一管理。除此之外,还有保证自身正常运行的健壮性管理,防止非法操作和入侵的安全性管理。3、什么是系统调用?有哪几类? 根据进程访问资源的特点,

概述

1、什么是操作系统

  • 操作系统简称OS,负责管理协调计算机硬件软件资源工作的系统软件
  • 屏蔽了硬件层的复杂性,为上层应用软件与用户提供易用的服务。

2、操作系统主要有哪些功能?

操作系统最主要的功能:

  • 处理器(CPU)管理:CPU的管理和分配,主要指的是进程管理。
  • 内存管理:内存的分配和管理,主要利用了虚拟内存的方式。
  • 外存管理:外存(磁盘等)的分配和管理,将外存以文件的形式提供出去。
  • I/O管理:对输入/输出设备的统一管理。

除此之外,还有保证自身正常运行的健壮性管理,防止非法操作和入侵的安全性管理

3、什么是系统调用?有哪几类?

根据进程访问资源的特点,可以将进程在系统上的运行分为两个级别:

  • 用户态:用户态下的进程可以直接读取用户程序的数据
  • 内核态:内核态下的进程几乎可以访问计算机的任何资源,不受限制

我们运行的程序基本都是运行在用户态,如果需要调用操作系统提供的内核态级别的功能的时候,就需要使用系统调用,通过系统调用方式向操作系统提出服务请求,并由操作系统代为完成 。

这些系统调用按功能大致可分为如下几类:

  • 设备管理。完成设备的请求或释放,以及设备启动等功能。
  • 文件管理。完成文件的读、写、创建及删除等功能。
  • 进程控制。完成进程的创建、撤销、阻塞及唤醒等功能。
  • 进程通信。完成进程之间的消息传递或信号传递等功能。
  • 内存管理。完成内存的分配、回收以及获取作业占用内存区大小及地址等功能。

4、用户态切换到内核态的几种方式

  1. 系统调用
  • 这是用户态进程主动要求切换到内核态的一种方式,用户态进程通过系统调用申请使用操作系统提供的服务程序完成工作  。
  1. 异常
  • 发生异常,切换到处理该异常的内核程序中。
  1. 硬件设备中断信号
  • 当硬件设备完成用户请求的操作后,会向CPU发出相应的中断信号,这时CPU会暂停执行下一条即将要执行的指令转而去执行与中断信号对应的处理程序,如果先前执行的指令是用户态下的程序,那么这个转换的过程自然也就发生了由用户态到内核态的切换。  

系统调用可以认为是用户进程主动发起的,异常和硬件设备中断则是被动的。

4、并发和并行有什么区别?

  • 并行:指两个或多个事件在同一时刻同时发生。
  • 并发:指两个或多个事件在同一时间间隔内发生。这些事件宏观上是同时发生的,但微观上是交替发生的。

5、同步与异步?

  • 同步就是指一个进程在执行某个请求的时候,若该请求需要一段时间才能返回信息,那么这个进程将会一直等待下去,直到收到返回信息才继续执行下去;
  • 异步是指进程不需要一直等下去,而是继续执行下面的操作,不管其他进程的状态。当有消息返回时系统会通知进程进行处理,这样可以提高执行的效率。


6、什么是中断?

基本概念:

  • 中断是指计算机在执行期间,系统内发生任何非寻常的或非预期的急需处理事件,使得 CPU 暂时中断当前正在执行的程序而转去执行相应的事件处理程序,待处理完毕后又返回原来被中断处继续执行或调度新的进程执行的过程。
  • 引起中断发生的事件被称为中断源
  • 中断源向 CPU 发出的请求中断处理信号称为中断请求,而 CPU 收到中断请求后转到相应的事件处理程序称为中断响应

类型:

根据中断源产生的条件,可把中断分为外中断内中断

  • 外中断: 指来自处理器和内存外部的中断,包括 IO 设备发出的 IO 中断、外部信号中断(例如用户键人 ESC 键)。各种定时器引起的时钟中断以及调试程序中设置的断点等引起的调试中断等。外中断在狭义上一般被称为中断。
  • 内中断:一般称为陷阱(trap)或异常。它包括程序运算引起的各种错误,如地址非法、校验错、页面失效、存取访问控制错、算术操作溢出、数据格式非法、除数为零、非法指令、用户程序执行特权指令、分时系统中的时间片中断以及从用户态到核心态的切换等都是陷阱的例子。


7、软中断和硬中断的区别?

硬中断:

  • 硬中断是由硬件产生的,比如,像磁盘,网卡,键盘,时钟等。
  • 处理中断的驱动是需要运行在 CPU 上的,因此,当中断产生的时候,CPU 会中断当前正在运行的任务,来处理中断。
  • 硬中断可以直接中断 CPU。它会引起内核中相关的代码被触发。对于那些需要花费一些时间去处理的进程,中断代码本身也可以被其他的硬中断中断。
  • 对于时钟中断,内核调度代码会将当前正在运行的进程挂起,从而让其他的进程来运行。它的存在是为了让调度代码(或称为调度器)可以调度多任务。

软中断

  • 软中断的处理非常像硬中断。然而,它们仅仅是由当前正在运行的进程所产生的
  • 通常,软中断是一些对 I/O 的请求。这些请求会调用内核中可以调度 I/O 发生的程序。对于某些设备,I/O 请求需要被立即处理,而磁盘 I/O 请求通常可以 排队并且可以稍后处理。
  • 软中断仅与内核相联系。而内核主要负责对需要运行的任何其他的进程进行调度。一些内核允许设备驱动的一些部分存在于用户空间,并且当需要的时候内核也会调度这个进程去运行。
  • 软中断并不会直接中断 CPU。也只有当前正在运行的代码(或进程)才会产生软中断。这种中断是一种需要内核为正在运行的进程去做一些事情(通常为 I/O)的请求。
相关文章
|
弹性计算 调度 容器
在Kubernetes集群中通过LocalVolume Provisioner使用本地盘
介绍 阿里云在部分ECS类型中提供了本地盘配置,本地盘具有低时延、高随机IOPS、高吞吐量和高性价比的优势,在一些对性能要求很高的应用中有很大优势。 在Kubernetes系统中使用本地盘可以通过HostPath、LocalVolume等类型的PV使用: HostPath: 卷本身不带有调度信息,如果想对每个pod固定在某个节点上,就需要对pod配置nodeSelector等调度信息; LocalVolume: 卷本身包含了调度信息,使用这个卷的pod会被固定在特定的节点上,这样可以很好的保证数据的连续性。
6481 0
|
2月前
|
存储 人工智能 自然语言处理
2026年阿里云新老用户最新优惠活动:云服务器活动、免费试用活动、AI产品活动参考
阿里云2026新老用户优惠活动涵盖三大板块。云服务器方面,轻量应用服务器低至38元/年,经济型e实例99元/年,u1实例199元/年,限时限量抢购。免费试用方面,新老用户可领最高200元试用点,AI产品免费提供7000万+大模型tokens及30+款产品体验,140+云产品最长12个月免费试用。AI产品方面,百炼Token Plan支持多模型切换、多档套餐;HappyHorse视频生成模型限时8折;OpenClaw一键部署低至9.9元起。此外还提供折扣券、学生无门槛券、算力补贴等多类优惠券,整体以"普惠基础设施+零成本体验+智能化赋能"策略,全面降低上云与用AI门槛。
2026年阿里云新老用户最新优惠活动:云服务器活动、免费试用活动、AI产品活动参考
|
5月前
|
数据采集 人工智能 监控
2026年企业数据系统建设方案指南
《2020–2026企业数据系统建设指南》聚焦数据资产化、AI原生架构与隐私合规三大趋势,以瓴羊Dataphin为智能治理核心,提供覆盖标准定义、建模规范、质量监控到AI就绪输出的全链路方案,助力企业实现从“数据资源”到“数据资产”的战略跃迁。(239字)
|
6月前
CCleaner Pro 怎么安装?附最新版安装包下载
CCleaner是一款经典老牌的电脑清理工具,可有效清理垃圾文件、优化系统性能。下载时认准Pro版(约30MB),安装时注意取消捆绑软件勾选,建议自定义安装路径以节省C盘空间,完成安装后即可为电脑“瘦身”加速。
|
人工智能 开发框架 安全
全球领头CRM,如何在中国跑出新模式?
企业韧性在于稳住基本盘并寻找增量机会,客户经营是关键。CRM从早期的信息记录工具,发展为驱动业务增长的核心引擎。Salesforce与阿里云合作,将全球领先的CRM能力引入中国,推出适配本地需求的解决方案。双方在功能对等、数据安全、销售服务、全球化支持和定制化开发等方面深度协作,助力企业实现智能化客户经营。通过融合AI技术,如通义千问,进一步提升用户体验。这一战略合作不仅满足合规要求,还推动中国企业数字化转型,构建面向未来的经营基座。
|
机器学习/深度学习 人工智能 计算机视觉
智慧城管:违章行为智能识别系统功能解析
AI视频智能分析系统运用机器学习、图像识别等技术,自动识别占道经营、违停乱放等常见城市管理违规行为,实现智能抓拍、实时预警与高效取证。系统支持案件自动派发、处理审核及统计分析,并可联动视频复核,提升城管执法的及时性与精细化管理水平,助力智慧城市建设。
696 0
|
存储 Java 开发者
【编程基础知识】 计算机中的数学魔法:二进制加减运算全解析
本文深入解析了计算机中二进制加减运算的原理,涵盖原码、反码和补码的概念及应用,结合具体示例,帮助读者理解计算机底层数学运算机制,适合Java开发者学习。
659 0
|
人工智能 运维 双11
2024阿里云双十一云资源购买指南(纯客观,无广)
2024年双十一,阿里云推出多项重磅优惠,特别针对新迁入云的企业和初创公司提供丰厚补贴。其中,36元一年的轻量应用服务器、1.95元/小时的16核60GB A10卡以及1元购域名等产品尤为值得关注。这些产品不仅价格亲民,还提供了丰富的功能和服务,非常适合个人开发者、学生及中小企业快速上手和部署应用。
|
JSON API 定位技术
AppFlow:让通义千问大模型调用你的任意API
在阿里云AppFlow中,通过自定义插件连接器可使通义千问获取特定功能,如旅游规划或投资辅助。登录AppFlow控制台,选择“自定义连接器”,上传图标,设定基本信息,选“插件连接器”。支持Basic、Bearer Token、AppCode等鉴权。精确配置API名称、描述及请求参数,确保模型调用准确。参考示例curl命令调整参数结构,填写响应体帮助模型解析。发布后,在模型Agent搭建中选用自定义连接器增强功能。
14276 7
|
前端开发 Java API
每天一个摆脱if-else工程师的技巧——优雅的参数校验
在日常的开发工作中,为了程序的健壮性,大部分方法都需要进行入参数据校验。本文围绕作者如何优雅的进行参数校验展开讨论。