文章目录
- 前言
- 一、操作系统是什么?
- 二、用户对资源的访问
- 三、操作系统是怎么做到管理的?
前言
任何计算机系统都包含一个基本的程序集合,称为操作系统(OS)。冯诺依曼体系结构中的硬件单元提供的功能,这些硬件由操作系统来控制与管理,操作系统对下是对软硬件资源进行管理,对上(用户)提供稳定良好的环境。
一、操作系统是什么?
操作系统是一款进行管理的软件,没错它也是一个软件,它管理一堆软硬件,但它自己也是一个软件它也可以软件可以管理软件就像是现实生活中人管理人一样(管理软件),还有人管理一些机械设备,如机房管理人员(管理硬件)。linux操作系统内核包括(进程管理,内存管理,文件管理,驱动管理)
在计算机层状结构中
操作系统处于中间核心位置,它对下层实现软硬件资源的管理,然后对上层(用户)提供良好稳定的运行环境。操作系统帮助用户管理好下面的软硬件资源,操作系统下一层是驱动程序层,驱动程序也是软件,最底层是硬件所以对下提供软硬件资源的管理。驱动程序层处于硬件层和操作系统之间它有直接与硬件匹配的驱动,例如鼠标,在电脑上匹配鼠标时,刚开始时需要我们等上几秒,会有提示鼠标对应的驱动就绪。每一个硬件都配有自己对应的驱动程序。
二、用户对资源的访问
对于计算机来说,用户分两种:普通用户和程序员用户,普通用户用程序员开发的软件,而程序员可以说是去和计算机进行互动的一类人员,程序员要去开发软件,那么程序员就会去底层去访问硬件资源吗?不是的,其实程序员也不知道计算机硬件是怎么搞得,他不明白,那么他对于硬件那些资源该如何办,而且操作系统还在呢,既然操纵系统是管理软硬件资源的,那么我通过操作系统就可以对数据资源进行访问了吧。虽然是这样但是操作系统内部有很多重要的数据,它不想暴露给用户看见,因为怕程序员员胡乱改变导致发生不好的效果万一更改之后让计算机用不了了怎么办,但是操作系统该怎么办,它既不相信用户但是又要给用户提供服务,怎么办,这时它可以开放一些接口让用户来调用,这样用户就可以得到自己想要的,然后操作系统也没有损失。操作系统为用户(上层)提供接口服务,供用户调用接口,接口的调用让用户得到了自己想要的数据,用户所有访问操作系统的行为都将是通过系统调用完成,那些接口封装为库,很多为系统调用接口。
三、操作系统是怎么做到管理的?
操作系统是如何做到对软硬件资源管理的?需要拿到被管理者的属性信息只需要对这些属性信息就可以实现对软硬件资源的管理。在日常生活中,管理者是谁?被管理者又是谁?学校,管理者是校长,公司中,管理者是老板,在生活中管理者可以说是一个集体中最大的一个。而学校学生是被管理者,公司中员工是被管理者,而可以说大多数时间学生和校长(老板和员工)是很少见面的,但是他们之间又要有管理与被管理的关系,这是如何做到的,也许在那种小的集体中,管理者天天和被管理者见面,这样实施管理,不过就算他们见面也只是关注这个人的信息和最近的工作状态或者学习状态达到管理,而不见面要实现管理也只是需要得到他的属性信息以及最近状态同样可以达到管理,然后将得到的数据状态信息管理起来就可以做到对人管理,所以这也是他们不见面却能对学生或者员工进行管理,但是不见面如何获取资源,这中间就需要一个中间人,也就是一个执行者,就像是大学的辅导员一样在计算机中就是驱动程序
但是吧,管理者拿到了这些信息怎么管理是一个问题若是信息较少,可以直接将资料一堆一堆放着就行了,但是若是信息很多,管理者忙不过来啊,他也就需要将这些信息组织起来管理,而又考虑到这些人都有共同的属性只是具体信息不同,管理者就想到了用一个人的模板来描述一个人的信息,然后将这份模板交给执行者执行者去照着这个模板收集对应的信息,但是这些一份份信息模板对应的数据还是很多啊,人太多了,要咋个管理
于是就想着人的属性既然都是一样的,管理者又恰好是一个技术程序员,那么它想着我有这么多属性的集合,把这些属性信息集合描述为一个结构体吧,而结构体对象就相当于一个人,要对这些结构体对象进行管理可以在结构体中再添加一个属性信息下一个结构体的指针字段信息,这样可以用链表方式对人的信息进行管理,而这样的管理方式叫做先描述,再组织先对被管理者的属性信息描述为一个个属性信息集,再将属性集用数据结构组织起来,就可以做到快速管理。这样当需要最高的人,只需要对身高字段数据结构进行遍历,找出最高的那个即可,对人的管理就转换为了对数据结构的增删查改了。
而操作系统对于软硬件资源的管理,同样是先对软硬件资源信息做描述,然后再以某种数据结构组织起来,最终对软硬件资源的管理就变成了对某种数据结构的增删查改了。同样是先描述,再组织。认识每一个事物都是要知道他们的属性信息,不是一开始就知道那是什么的,而是通过属性信息了解的,同样的对软硬件资源都是要将他们的信息描述为一个属性集合,然后以某种数据结构组织进行管理。先描述,再组织这是一个对事物进行建模的过程,在操作系统中,注定存在大量的数据结构要用来组织软硬件以达到管理。