通过下面这幅图,我们可以看到,操作系统是覆盖在硬件资源上的。没有装操作系统的机器就是裸机,也就是说,如果没有装操作系统,那么我们就得直接和硬件资源打交道了。然而硬件资源对普通用户是难以操纵的,比较复杂,而且对于程序猿来看,直接对硬件资源的操纵是效率比较低的。操作系统就是一个程序,但它不同于普通程序的是,它是对计算机软件资源和硬件资源进行管理和操纵的。
操作系统的应用也是非常广泛的。像小型的机器上也通常装备有操作系统,相比计算机,一个功能简单的单片机也同样装备操作系统。我们在操作单片机的时候,就把我们写好的程序导入单片机后,然后单片机就可以实现相应的功能,我们并没有直接对单片机这种硬件资源直接进行命令操作,我们只是编写了相应的编程语言程序,就可以了,这其中,操作系统起到了至关重要的作用。
下面此图是用51单片机制作的简单操作系统内核。
说了这么多,我们只要知道,操作系统是用户和底层软件沟通的桥梁。
1:方便性
如果没有配备操作系统,那么用户只能对裸机进行操作了,那你就必须编写机器语言。但是如果配备了操作系统,那么用户可以编写高级语言,然后操作系统可以采用编译命令将你编写的高级语言程序翻译成机器语言,那么这就方便多了。这样使计算机变得比较容易去使用。
2:有效性
有效,一方面在于提高资源的利用率,另一方面就是系统的吞吐量。关于这两方面在后面的学习中我们会了解原因。不再赘述。
3:可扩充性
简单的说就是os模块结构功能可以升级更新。
4:开放性
os遵循国际上的标准,实现了彼此互连,兼容。
1:os作为用户与计算机硬件系统之间的接口
2:os作为计算机系统资源的管理者
计算机有硬件资源和软件资源,归纳总共四类:处理机,存储器,I/O设备,文件。os也正是对这四类资源进行管理
3:os实现了对计算机资源的抽象
逻辑上覆盖的os实现了对计算机的简单操作,掩盖了具体复杂的细节。向上将I/O设备抽象为一组数据结构以及一组I/O操作命令。对比下图,显而易见。
1:不断提高计算机资源的利用率
在对计算机资源的利用率提高的实现上,人们一直正在最求,os引入本身就提高了资源的利用率。此外,改进os,对资源利用率的提高至关重要。
2:方便用户
目标方便用户,我们的目的是方便广大用户的使用,儿不只是程序猿。
3:器件的不断更新换代
像比如相关芯片的不断更新换代,相关显卡,内存条等等的改进,都推动了操作系统的发展。
4:计算机体系结构的不断发展
计算机体系结构的不断发展也同样推进了计算机操作系统的发展,由单处理机操作系统向多处理机操作系统,计算机网络出现后,又随之出现配置在网络上的网络操作系统。
本章第一小节总结到此,欢迎关注下期。 ------jgdabc