#复习笔记基于哔哩哔哩的 操作系统的期末急救--------北大鸭鸭博主的视频
我们将考试内容分为十九考点来讲
考点一:操作系统的概念及特征
在我们学习操作系统的概念之前我们先来了解一下计算机系统的概念
在学习操作系统之前,我觉得了解计算机系统的概念对于建立对整个计算机运作方式的宏观理解至关重要。它帮助我们认识到操作系统在整个计算机架构中的角色,明确操作系统与其他硬件和软件组件的互动关系。这种先从整体入手的学习方式,不仅有助于我们更好地理解操作系统的设计初衷和功能定位,而且也为我们深入学习操作系统的具体概念、原理和应用提供了必要的背景知识。此外,它还有助于我们在遇到问题时,能够从系统的角度进行分析和解决。
下面我们来了解一下操作系统的概念和特征
注意: 操作系统其实是软件来的(可能考试可能会考到)
操作系统是处于硬件和软件之间的特殊软件
操作系统的基本特征!(-----重要考点----)
1.并发
下面我用例子来简单讲解一下并发和并行的区别
并发性(Concurrency)
想象你在家里做饭,你只有一口锅,但你同时要做几道菜。你先煮水,然后去切菜,切完菜后回来煮面,煮面的同时你可以准备调料。虽然你不能真正同时做所有事情,但你通过快速切换任务,让你的烹饪过程看起来像是同时进行的。
并行性(Parallelism)
现在想象你有两口锅,你可以同时煮面和炒菜。这两道菜可以同时在不同的锅里进行,这就是真正的同时做两件事情。
注意--! 单核中各个程序只能并发的执行不能并行,多核中各个程序可以并发和并行(这是他们的区别)
2.共享
简而言之,共享就是多个用户或程序能够按规则共同使用同一套资源,这样可以提高资源的利用效率并节省成本
简单来说,互斥共享方式确保一次只有一个进程可以访问某个资源,以避免冲突和错误;而同时共享方式允许多个进程同时访问资源,但通常限于读操作,写操作时需要额外的同步措施。这两种方式都是操作系统用来平衡效率和安全性的重要机制
3.虚拟
我用一个简单的例子来讲解一下虚拟这个概念
想象你有一个电子阅读器,它的存储空间有限,但你可以通过云服务访问成千上万本书。虽然你的设备上没有存储所有这些书,但你可以像它们都存储在设备上一样阅读它们。这就像操作系统的虚拟内存,它让你感觉好像有更多的内存空间,即使物理内存有限。
4.异步
我用一个简单的例子来进行讲解就比如说邮件回复:
想象你给朋友发了一封邮件,但不需要坐在电脑前等待回复。你可以继续做其他事情,比如工作或休息。当你的朋友回复了邮件,你会收到通知,然后你可以在方便的时候查看。这就像操作系统中的异步操作,程序发送了一个请求(比如输入/输出操作),然后继续执行其他任务,直到收到响应或完成通知。
重要的!并发和共享是操作系统两个最基本的特征,共享是并发执行的基础,因为并发执行的进程需要共享资源。同时,操作系统必须设计有效的机制来管理共享资源,以支持并发执行,同时确保系统的稳定性、性能和安全性。
下面是考点一的相关习题练习
答案是c
注意!考点一可能会考的内容,第一:可能会让我们默写操作系统的4个特点(并发,共享,虚拟,异步),
第二:难一点的话,可能会让我们对这四个特点进行解释
考点二:操作系统的功能和接口
1.操作系统作为计算机系统资源的管理者
简单来说,操作系统就像一个交通指挥员,它确保计算机上的所有部件和资源都协调工作,以满足用户的需求和应用程序的运行。它管理着计算机的每个方面,从硬件资源到用户界面,确保一切运行顺畅。
2.操作系统作为用户与计算机硬件系统之间的接口(可以分为联机命令接口和脱机命令接口)
我的理解是:
联机命令接口是实时的,用户输入命令后,系统会立即执行并通常在屏幕上显示结果。
脱机命令接口是非实时的,用户提交任务或命令后,不需要立即等待结果,系统会在后台处理并在适当的时候提供输出或结果。
联机接口强调的是即时性和交互性,适合需要快速反馈和控制的场景。
脱机接口强调的是自动化和批量处理,适合不需要即时反馈的长时间运行任务。
3.操作系统实现了对计算机资源的扩充
简单来说,操作系统通过各种技术和管理策略,使得计算机能够更有效地使用其资源,甚至在某些情况下,可以超越物理硬件的限制,提供更多的功能和容量。这种扩充不仅提高了计算机的性能,也为用户提供了更大的灵活性和便利性。
下面是考点二的练习习题
这个题的目的!是想强调一下操作系统有两种接口分为命令输入和系统调用,其中的命令输入又可以分为命令行和图形用户界面,这个题的终端命令就是命令行,图标菜单就是我们的图形用户界面,所以答案是b
考点三:操作系统的发展和分类(可能是选择题和填空题)
1.无操作系统的计算机系统
2.批处理系统
3.分时操作系统
4.实时操作系统(比较重要)
考点三的习题练习
答案时d
考点四:操作系统的运行环境(-----考试高频出现-----)
1.用户态和内核态
简单来说,用户态和内核态的区分是为了在提供给用户和应用程序足够的自由度的同时,保护操作系统的核心功能不受损害。这种区分确保了系统的安全性、稳定性和高效运行。
2.特权指令和非特权指令
简而言之,特权指令和非特权指令的区分是为了确保操作系统的安全性和稳定性,同时允许用户程序在受控的环境中执行它们需要完成的任务。(上面的例如都是考点,记得认真观看哇!)
3.状态转换
用户态和内核态的转换
4.中断和异常
我两个简单的例子帮助大家理解一下
中断(Interrupt):
例子:想象你在厨房做饭,你设定了闹钟提醒自己20分钟后去看锅里的食物。当闹钟响起时,即使你可能正在做其他事情(比如切菜),你也需要暂停手头的工作,去检查锅里的食物。这就像一个中断,外部信号(闹钟)触发了你的注意,让你中断当前任务去响应这个信号。
异常(Exception):
例子:继续在厨房做饭的比喻,假设你在切菜时不小心切到了手指。这个意外事件(异常)迫使你立即停止切菜,处理伤口。在计算机中,异常是指程序执行过程中出现的错误或特殊情况,如除以零、访问无效内存等,这需要立即处理以避免更大的问题。
通过这两个例子,我们可以看到中断和异常是操作系统处理不同类型事件的机制,它们帮助操作系统及时响应外部事件和内部错误,确保系统的高效和稳定运行。
转换
5.系统调用
我用简单的例子帮我们一起加深一下理解,就比如说图书馆借书
想象你去图书馆借书,你不能直接从书架上拿书,而是需要向图书管理员请求帮助。你告诉管理员你想要的书名,管理员会去书架上找到这本书,然后借给你。在这个例子中,你就是应用程序,图书馆的管理员就是操作系统,而借书的过程就是一个系统调用。
考点四的习题练习
答案是b