操作系统-----系统的概念

计算机是由硬件和软件组成的,软件分为应用软件和系统软件,操作系统属于系统软件它的功能是管理系统资源(指硬件资源和部署在操作系统之上的软件资源)并为上层用户和软件提供服务。

操作系统管理系统资源体现在四个方面:处理机管理,储存器管理,设备管理,文件管理。

操作系统属于系统软件它由内核程序和非内核程序所构成,内核程序是操作系统的核心部分它实现了操作系统最基本的功能它运行在cpu的内核态,非内核程序属于非核心部分即使没有这一部分操作系统也能正常运行。操作系统这些程序对外提供了很多接口供用户和应用程序所使用(有一部分程序对外提供接口供外面使用也有一部分不对外提供接口由程序内部自己调用)。用户使用接口的方式有直接通过GUI(图像用户界面)使用或者通过命令接口进行使用,命令接口分为联机命令接口和脱机命令接口(也叫批处理命令接口)。联机命令接口就是输入cmd后出现的那个小黑框,它的特点就是你输入一句命令它就执行一句。而脱机命令接口就是.bat文件,其实就是把你想执行命令按顺序一个个写出来然后操作系统一次性执行去调用相对于的处理函数。而应用程序使用接口的方式就是通过系统调来进行的,应用程序通过陷入指令把cpu的使用权交还给操作系统同时指明想要调用的接口从而实现想要的功能。一般来说应用程序无法直接操作任何的硬件资源,因为这些指令基本都运行在内核态,如果应用程序想要操控硬件干某些事情只能通过系统调用的方式调用内核程序同时指明想要做的事情比如在屏幕上输出文本又或者操作扬声器播放声音,之后内核程序接收到这些参数后会调用相应的设备驱动程序(用来操作对应硬件的程序,一般由生产设备的厂家提供)去完成这些操作。所以应用程序无法直接操作硬件只能通过操作系统来进行间接的操作,虽然受到了操作系统的限制但是简化了操作硬件的复杂度使得程序员无需关注与硬件的通信过程,因为这些操作都被封装在了设备驱动程序中。cpu是一种特殊的硬件,应用程序可以直接操作cpu但是要受到操作系统的管理和分配。之所以能直接操作cpu是因为程序是由一堆的二进制指令所构成的,它的执行就是依靠cpu的读取而指令相当于cpu对外提供的接口。所以程序操作硬件本质上是cpu读取相应的指令根据要求去操作硬件。

213de48be2054eff886eb0760f917f2a.png

操作系统里的每一个程序都对应实现了一种功能,而这些功能体现出了操作系统的四大特性:并发,共享,虚拟,异步。并发是指多个进程交替上cpu运行宏观上看就是进程同时运行而微观上就是交替运行,而并行是在多核cpu的情况下每一个cpu执行一个进程在宏观上看是同时运行微观上看也是同时运行。共享是指在并发执行的过程中系统资源共享的给多个进程所使用,共享分为互斥共享和同时共享,互斥共享是指该资源同时只能被一个进程所使用其它进程只能等待该进程使用完后再使用,同时共享是指该资源可以同时被多个进程所使用。共享特性的产生是由于并发性,如果没有并发性就说明在一个进程运行的过程中不会有其它进程所运行也就没必要共享了。虚拟性是指把一个物理上的实体变为若干个逻辑上的对应物。物理实体(前者)是实际存在的,而逻辑上对应物(后者)是用户感受到的。虚拟技术分为两种 空分复用技术(如虚拟内存技术)和时分复用技术(如虚拟存储器即并发执行各个进程在逻辑上看就是有多个cpu在运行)。异步是指,在多道程序环境下,允许多个程序并发执行,但由于资源有限,进程的执行不是一贯到底的,而是走走停停,以不可预知的速度向前推进,这就是进程的异步性正是由于有并发性所以才导致了异步性的产生。

cpu有两种状态为内核态和用户态,在用户态下cpu只能执行普通指令而特权指令只能运行在内核态下。cpu能识别每一条指令它是否属于特权指令,如果cpu处于用户态却执行了特权指令那么就会产生一个中断信号,并转变为内核态同时去执行相应的中断处理程序(属于内核程序)所以说中断是操作系统夺回cpu使用权的唯一方式。49257953d76a47009914b3ac3faf0846.png

 当应用进程想调用操作系统的接口时需要通过系统调用的方式进行,只需要执行一条陷入指令产生中断即可把cpu的使用权归还给操作系统从而使用操作系统提供的服务。只要是操作系统提供的功能进程想要使用只能通过系统调用的方式。e2bd76d1d05447108f93c5d44f753c4a.png

原语:属于内核程序的一种,是一种特殊的程序它不可被中断,要么不运行如果运行则不可被中断。它的实现原理是在执行代码前会执行一条关中断的指令,这样在执行原语时即使有中断信号到来也不会被cpu处理,等到原语程序执行完毕后在执行开中断指令。

操作系统常用的有两种体系结构一种是大内核结构,另一种是微内核结构。大内核结构是把操作系统的核心功能都划分为内核程序运行在内核态,而微内核只把与硬件交互的部分(即设备驱动程序)划分为内核程序运行在内核态其余的如进程管理,存储管理,设备管理等功能划分为非内核程序运行在用户态。

91c7c0319b2647b694d9dfb62b5bd309.jpg

 内存有两种类型RAM和ROM,RAM叫随机访问存储器它可以被读写并且断电后数据会被清除,一般我们讨论的内存大小指的就是它。ROM叫只读存储器它只能被读取不能被写入,它的数据是在出厂时就被写入的。ROM里面存储着一个程序叫BIOS(基本输入输出系统)它的功能是引导操作系统的启动,在开机前还会执行硬件自检看硬件功能是否正常。

当你安装了操作系统后,操作系统会把你的硬盘划分为如下图所示的样子,其中的主引导记录区是用于引导cpu去执行操作系统的代码的。

 开机的过程

虚拟机:使用虚拟化技术,将一台物理机器虚拟化为多台虚拟机器(Virtual Machine,VM),每个虚拟机器都可以独立运行一个操作系统。虚拟机有两种类型第一种是直接运行在硬件上,此时的虚拟机程序直接管理硬件资源它运行在内核态,在虚拟机之上在运行操作系统而此时的操作系统是运行在用户态。第二种类型的虚拟机是运行在操作系统之上的相当于一个应用程序,由操作系统给虚拟机分配硬件资源之后在虚拟机之上安装操作系统。

 

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值