0


【Linux初阶】操作系统概念与定位 | 操作系统管理硬件方法、系统调用和库函数概念

🌟hello,各位读者大大们你们好呀🌟

🍭🍭系列专栏:【Linux初阶】

✒️✒️本篇内容:操作系统的基础概念、设计OS的目的,操作系统的定位,操作系统管理硬件方法,系统调用和库函数概念

🚢🚢作者简介:计算机海洋的新进船长一枚,请多多指教( •̀֊•́ ) ̖́-

📡📡同期Linux工具文章:【Linux初阶】认识冯诺依曼结构​​​​​​​


一、操作系统概念

任何计算机系统都包含一个基本的程序集合,称为操作系统(OS)。实际上,操作系统是一个对软硬件资源管理的软件。

笼统的理解,操作系统包括:

  • 内核(进程管理,内存管理,文件管理,驱动管理)
  • 其他程序(例如函数库,shell程序等等)

二、设计OS的目的

  • 与硬件交互,管理所有的软硬件资源 【向下】
  • 为用户程序(应用程序)提供一个良好的执行环境 【向上】

三、操作系统定位

在整个计算机软硬件架构中,操作系统的定位是:一款纯正的“搞管理”的软件

如何理解 "管理"?我们通过下面的例子来理解一下

在我们的生活中,一个正常的组织体系(学校等)包括:管理者 、被管理者(执行者)

我们可以把校长比作管理者,辅导员和学生比作被管理者,在学校我们与校长见面的机会少之又少,那么校长又是怎么完成学生管理工作的呢?答案是,他可以让辅导员将学生的信息和诉求整理成表格之后再上交,通过分析表格的信息来推进学生管理工作。实际上,校长在这个过程中并没有和学生交流,他只是通过学生对应的信息来对学校资源进行调度。

因此,我们可以的出结论:管理者和被管理者并不需要直接交互,依旧能对被管理者进行管理,管理的本质实际上是管理数据。

回到计算机中,这里的校长实际上就是操作系统,他通过接收用户(学生)的诉求,根据软硬件的情况(利用学校有限资源),调度软硬件资源实现目标(完成学生的培养工作)

下图为计算机组成示例


四、计算机管理硬件的方法

我们在上面说过,管理的本质实际上是管理数据,所有的“管理”,本质的内在逻辑是:先描述、在组织

  1. 描述起来,用struct结构体或类,将数据分类汇总起来
  2. 组织起来,用链表或其他高效的数据结构,将数据与数据联系起来

【注意】操作系统可通过驱动程序对硬件做管理(校长通过辅导员对学生进行管理) ,每个硬件必然有对应的操作接口


五、系统调用和库函数概念

在开发角度,操作系统对外会表现为一个整体,但是会暴露自己的部分接口,供上层开发使用,这部分由操作系统提供的接口,叫做系统调用接口。

在系统接口上方,有各种各样的软件层(用户操作接口),其中最重要的就是shell和lib(库)

  • shell帮助用户对基础指令进行输入输出。
  • 系统调用在使用上,功能比较基础,对用户的要求相对也比较高。因此有心的开发者可以对部分系统调用进行适度封装,从而形成了库。
  • 库的存在,有利于更上层用户或者开发者进行二次开发(我们熟知的库有C语言库、C++库等)

在用户操作接口之上,是普通用户或开发者的使用平台。通常我们所说的学习编程实际上就是学习用户层的知识。

【注意】我们个人的任何操作,不能越过操作系统对其他软硬件进行直接控制,我们在编程过程中的指令操作、编程操作(例如打印hello world),都是将数据交给操作系统,再由操作系统完成对硬件的调用。这样做的目的是为了保护计算机、减少用户或开发者的使用开发成本。举一个简单的例子,就像是我们去银行取钱,我们需要去银行柜台或者取款机办理业务,而不能越过它们直接去钱库中取钱。


🌹🌹操作系统概念与定位大概就讲到这里啦,博主后续会继续更新更多Linux操作系统的相关知识,干货满满,如果觉得博主写的还不错的话,希望各位小伙伴不要吝啬手中的三连哦!你们的支持是博主坚持创作的动力!💪💪

标签: linux java 运维

本文转载自: https://blog.csdn.net/Captain_ldx/article/details/127931904
版权归原作者 Captain-Lin 所有, 如有侵权,请联系我们删除。

“【Linux初阶】操作系统概念与定位 | 操作系统管理硬件方法、系统调用和库函数概念”的评论:

还没有评论