第1章 计算机系统概述
文章目录
1.1.1 操作系统的概念、功能和目标
举例
知识框架
概念
操作系统(Operating System OS)是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分配,以提供给用户和其他软件方便的接口和环境,它是计算机系统中最基本的系统软件。
功能和目标
作为资源的管理者
概念:管理软硬件资源、合理的组织、调度计算机的工作与资源的分配。
作为用户和计算机硬件之间的接口
概念:为了让用户方便、快捷、可靠的操作计算机硬件并执行自己的程序,操作系统提供了用户接口。
例子
联机命令接口
脱机命令接口
注:批处理:对某对象进行批量的处理,通常被认为是一种简化的脚本语言,应用于DOS和Windows系统中,其扩展名为bat。
程序接口
GUI
注:
易混概念:系统调用=系统调用命令=广义指令
总结
作为最接近硬件的层次
例子
假设:用户是雇主,操作系统是工人(用来操作机器),计算机是机器(由处理机(CPU)、存储器、设备、文件几个部件构成)
工人有熟练的技能去控制和协调各个部件的工作,这就是操作系统对资源的管理
同时,工人必须接受雇主的命令,这就是“接口”
有了工人,机器就能发挥更大的作用,因此工人就成了“扩充机器”
工人操作机器、机器有了更大的作用比如GUI界面,于是工人便成了扩充机器,去扩充GUI界面等功能
————————————————
版权声明:本文为CSDN博主「BitHachi」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_43914604/article/details/104408571"
小结
1.1.2 操作系统的特征
并发
概念:指两个或多个事件在同一时间间隔内发生。这些事件宏观上是同时发生的,但微观上是交替发生的。常考易混概念——并行:指两个或多个事件在同一时刻同时发生。
例子:
操作系统的并发性:指计算机系统中同时存在这多个运行着的程序。
-
一个单核处理器(CPU)同一时刻只能执行一个程序,因此操作系统会负责协调多个程序交替执行(这些程序微观上是交替执行的,但宏观上看起来就像在同时执行)
-
事实上,操作系统就是伴随着“多道程序技术”而出现的。因此,操作系统和程序并发是一起诞生的。
-
当今的计算机,一般都是多核CPU,比如Intel的第八代i3处理器就是4核CPU,这意味着同一时刻可以有4个程序并行执行,但是操作系统的并发性依然必不可少,当代人使用计算机绝对有4个以上的程序需要同时工作。
共享
概念:共享即资源共享,是指系统中的资源可供内存中多个并发执行的进程共同使用。
所谓的“同时”往往是宏观上的,而在微观上,这些进程可能是交替地对该资源进行访问的(即分时共享)
例子:
-
互斥共享方式:使用QQ和微信视频。同一时间段内摄像头只能分配给其中一个进程。
-
同时共享方式:使用QQ发送A,同时使用微信发送文件B。宏观上看,两边都在同时读取并发送文件,说明两个进程都在访问硬盘资源,从中读取数据。微观上看,两个进程是交替着访问硬盘的。 / 同时使用扬声器播放音乐和网课。
并发和共享的关系
-
并发性指计算机系统中同时存在着多个运行着的程序。
-
共享性是指系统中的资源可供内存中多个并发执行的进程共同使用。
通过上述例子来看并发与共享的关系:
使用QQ发送A,同时使用微信发送文件B。
-
两个进程正在并发执行(并发性)
-
需要共享地访问硬盘资源(共享性)
注:
(1)如果失去并发性,则系统中只有一个程序正在运行,则共享性失去存在的意义。
(2)如果失去共享性,则QQ和微信不能同时访问硬盘资源,就无法实现同时发送文件,也就无法并发。
因此,并发性和共享性互为存在条件
虚拟
概念:虚拟是指把一个物理上的实体变为若干个逻辑上的对应物。物理实体(前者)是实际存在的,而逻辑上对应物(后者)是用户感受到的。
例子1:
背景知识:一个程序需要放入内存并给它分配CPU才能执行
原神需要12G的内存,QQ需要256MB的内存,QQ音乐需要256MB的内存······
我的电脑:4GB内存
问题:这些程序同时运行需要的内存远大于4GB,那么为什么它们还可以在我的电脑上同时运行呢?
答:这是虚拟存储器技术。实际只有4GB的(运行)内存,在用户看来似乎远远大于4GB
(使用虚拟技术中的“空分复用技术”)。
例子2:
问题:既然一个程序需要被分配CPU才能正常执行,那么为什么单核CPU的电脑中能同时运行这么多个程序呢?
答:这是虚拟处理器技术。实际上只有一个单核CPU,在用户看来似乎有6个CPU在同时为自己服务(使用虚拟技术中的“时分复用技术”,微观上处理机在各个微小的时间段内交替着为各个进程服务)。
异步
概念:异步是指,在多道程序环境下,允许多个程序并发执行,但由于资源有限,进程的执行不是一贯到底的,而是走走停停,已不可预知的速度向前推进,这就是进程的异步性。
例子:
小结:
1.1.3 操作系统的发展与分类
手工操作阶段
批处理阶段
分时操作系统
实时操作系统
其他操作系统
小结
1.1.4 操作系统的运行机制与体系架构
预备知识
运行机制
操作系统内核
操作系统的体系结构
小结
1.1.5 中断和异常
中断机制的诞生
将程序放入机器中运行,当第一个程序在用户态下运行一段时间后,CPU收到计时部件发出的中断信号,操作系统介入,CPU切换为核心态
操作系统处理信号,发现信号告诉它,进程1的时间片已用完,换进程2运行
接着,进程2在用户态下执行,在执行一段时间后,发出内中断信号,然后操作系统接管
进程3开始运行
操作系统处理信号,发现信号是进程2恢复运行,并进行操作,执行进程2
完整演示:1.1_5_中断和异常_哔哩哔哩_bilibili
中断的概念和作用
中断的分类
外中断的处理过程
小结
1.1.6 系统调用
概念和作用
知识回顾
概念、作用
应用程序通过系统调用请求操作系统的服务。
系统中的各种共享资源都由操作系统统一掌管,因此在用户程序中,凡是与资源有关的操作(如存储分配、I/O操作、文件管理等),都必须通过系统调用的方式向操作系统提出服务请求,由操作系统代为完成。这样可以保证系统的稳定性和安全性,防止用户进行非法操作。