文章目录
操作系统引论
了解操作系统之前,我们先来看一看计算机的层次结构
(以下是一个相对比较粗糙简略的图,后面会有一个更详细的)
这个图有意思的点在于,用户和操作系统之间是直接联系的,用户与裸机之间依靠操作系统建立关系
首先我们要了解什么是操作系统?
操作系统是一个系统软件,控制和管理整个计算机硬件和软件资源,并合理地组织调度计算机的工作和资源的分配,以提供给用户和其他软件方便的接口和环境
这个定义非常重要,因为后面的展开就是围绕定义,如果不能很好理解这句话,就先强行背下来
操作系统的目标的功能
结合定义
- 操作系统作为系统资源的管理者(控制和管理计算机软硬件资源)
- 作为用户和计算机硬件之间的接口(这个怎么理解,看最上方的层次结构图)
- 实现对硬件机器的扩展
我们再来细细看这三个功能和目标
1. 资源管理者
(到底管理什么资源??)
处理机管理
存储器管理
文件管理
设备管理
我这么说还是特别抽象的,下面用一个上课老师讲的例子帮助理解:
用QQ跟朋友视频聊天的过程:
1:从我的电脑中的安装位置找到QQ -->文件管理
2:双击点开QQ.exe -->存储器管理
3:QQ程序正常运行 -->处理机管理
4:开始和朋友视频聊天 -->设备管理(要将摄像头分配给进程)
会不会有人问:咦?什么是进程?
进程是一个程序的执行过程,执行前需要将该程序放入内存中,才可以被CPU处理。
其实我们也可以从定义中看到,进程是动态的
2. 向用户提供服务 也就是操作系统作为接口
啊啊啊,还是好抽象有没有,一个个的专有名词,头都大了
下面还是尽量解释解释这些个牛马名词
1:啥是命令接口啊?
就是允许用户直接使用
那什么又是联机,脱机啊????
联机:用户说一句,系统就做一句,联机你可以想想成联网,可以一条信息一条信息的发的那种
脱机就是用户说一堆,系统做一堆,脱机就类比一下那个断网,你把要说的话一次性叙述好,然后突然有网就一下子全部发送
(可能类比的不好,但是相信大家dddd)
2:程序接口嘞?
允许用户通过程序间接使用 (程序接口=系统调用)
最致命的是系统调用,这是一个很重要的名词
官方说法:是操作系统提供给应用程序使用的接口,你也理解为是一种函数,一种可供应用程序调用的特殊函数,
总而言之,敲重点了,应用程序可以发出系统调用请求来获得操作系统的服务
凡是多问为什么?为什么需要系统调用?它能解决什么问题?
举个例子,当你在使用打印机打印文件的时候,有人也想打印,
它也操作同一部机器,到底你的文件打印出来是好好的,还是和后面那个人的文件内容杂糅在了一起?
答案是并没有发生杂糅?为什么?
因为有系统调用,用户进程需要共享打印机资源,只能通过系统调用向操作系统发出请求,
操作系统会对各个请求进行协调管理,所以才避免了悲剧的发生
所以系统调用是非常重要的!!!!!,后面还会详细讲系统调用
3:GUI?
现代操作系统中最流行的图形用户接口
用户可以形象的是使用图形界面进行操作,不需要记忆复杂的命令、参数。
例如:Windows操作系统删除文件,只需拖动到回收站即可
(不做过多解释,非重点,了解即可)
3. 对硬件机器的扩展
最上面的图中最底层是裸机,那裸机是啥?没穿衣服的机器?机器有衣服?裸,啥也没有的意思吗?
裸机就是没有任何软件支持的计算机,是纯硬件
又又插播小知识:总听别人说虚拟机,虚拟机,那是什么玩意?
欸,今天就来解释解释,
所谓虚拟机,无非是覆盖了软件的机器的扩充机器
好家伙,先说到这,下面的后面再说