【操作系统(Operator System)】

本文介绍了操作系统的基本概念,阐述了其在硬件管理和用户接口中的角色,强调了系统调用和库函数的概念,以及进程的描述和组织。通过比喻,帮助读者理解操作系统如何作为中间层管理硬件资源,保护用户安全并提供开发接口。
摘要由CSDN通过智能技术生成

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录


前言

世上有两种耀眼的光芒,一种是正在升起的太阳,一种是正在努力学习编程的你!一个爱学编程的人。各位看官,我衷心的希望这篇博客能对你们有所帮助,同时也希望各位看官能对我的文章给与点评,希望我们能够携手共同促进进步,在编程的道路上越走越远!


提示:以下是本篇文章正文内容,下面案例可供参考

一、概念

任何计算机系统都包含一个基本的程序集合,称为操作系统(OS)。

操作系统是进行软硬件资源管理的软件。

广义的认识:操作系统的内核(进程管理,内存管理,文件管理,驱动管理) + 操作系统的外壳周边程序(给用户提供使用操作系统的方式,比如:图形化界面)

狭义:只是操作系统的内核

二、结构示意图

如果操作系统直接去管理硬件的话,比如:操作系统直接管理磁盘,那么当磁盘更换或更新时,操作系统不一定还能管理磁盘,此时只能修改操作系统了,好让操作系统能继续管理磁盘,这是非常不好的。

所以有了驱动层的出现,驱动程序大部分是由厂商来提供的,也就是说每一个硬件都有属于自己的驱动程序,驱动层给操作系统提供一个接口,操作系统就通过接口来管理硬件了。那么当硬件变更的时候,只需要接上硬件匹配的驱动程序就可以了,不用在对操作系统做修改了。

操作系统对下:对软硬件进行资源的管理(手段)。

操作系统对上:为用户提供一个良好的、稳定的、安全的、高效的运行环境(目的)。

三、尝试理解操作系统

校长 -----> 辅导员 -------> 学生

校长管理好学生,不需要管理者和被管理者直接接触。

如何管理的呢?拿到你的数据才是目的!管理学生,本质是对学生数据做管理。

任何管理:

先描述  -------> 再组织

比如:校长要管理好10000名学生,校长可以用C语言中的结构体,先对学生进行描述,学生的类别都是一样的,都是人,但是人们的属性不一样,有男有女,有高有低,有年纪的区别,学习成绩的好坏等等;所以用结构体来描述学生,结构体的成员有性别、年龄、身高、成绩、年级等等,描述完成之后;可以把每一个学生的结构体当作一个节点对象,用链表来将他们组织起来【这里的链表起容器(数据结构)的作用】,然后可以对链表进行增删查改的运算操作,就能对链表管理起来了。

这里我们做个比喻:

操作系统:校长      驱动程序:辅导员     底层硬件:学生     用户:其他学校的校长

用户可以直接访问底层硬件吗?

不能,这就好比其他学校的校长可以直接在自己本学校随意指挥学生吗?其他学校的校长要想要使用本学校的学生,只能找本地学校的校长来进行沟通。

所以,我们的用户想要访问底层硬件,只能通过操作系统来访问。

操作系统是来进行软硬件资源管理的,所以操作系统内部有所有软硬件的数据。

那用户能直接使用操作系统内的数据吗?

不能,这就好比,你在银行里存钱、取钱的操作,能让你一个人来完成吗?很显然,银行不会相信任何人,他们会设一个窗口,来进行业务的完成。

所以,出现了系统调用接口,就相当于系统调用接口是函数声明,而操作系统是函数的实现,用户要通过调用函数(系统调用接口)来访问函数的实现(操作系统)。

系统调用和库函数概念

  • 在开发角度,操作系统对外会表现为一个整体,但是会暴露自己的部分接口,供上层开发使用,这部分由操作系统提供的接口,叫做系统调用。
  • 系统调用在使用上,功能比较基础,对用户的要求相对也比较高,所以,有心的开发者可以对部分系统调用进行适度封装,从而形成库,有了库,就很有利于更上层用户或者开发者进行二次开发。

承上启下

那在还没有学习进程之前,就问大家,操作系统是怎么管理进行进程管理的呢?很简单,先把进程描述起来,再把 进程组织起来!


总结

好了,本篇博客到这里就结束了,如果有更好的观点,请及时留言,我会认真观看并学习。
不积硅步,无以至千里;不积小流,无以成江海。

  • 48
    点赞
  • 44
    收藏
    觉得还不错? 一键收藏
  • 34
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 34
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值