• 初识操作系统


    目录

    一.操作系统的概念

    二.正确理解“管理”

    三.操作系统对硬件进行管理

    四.系统调用接口

    五.用户操作接口


    一.操作系统的概念

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

    现在我们知道了操作系统的概念了,那么为什么要有操作系统呢?

    操作系统将软硬件资源管理好,给用户提供良好(稳定,安全,易用,高效)的使用环境

    二.正确理解“管理”

    如何理解”管理“这个词呢?一个学校的管理者是校长,他管理着众多的学生,但身为被管理者的学生,平时基本都见不到校长,可能和我们打交道最多的就是辅导员,校长只负责在某些事物上拍板决策,下达命令。

    由此可见,一个管理者只负责决策,并不直接和被管理的对象打交道,管理者只需知道被管理对象的相关数据,然后分析信息,做出决策即可。

    我们得到一个重要结论,管理的本质不是管对象本身,而是管理对象的数据

    如何管理数据呢?例如校长手上有所有学生的相关信息,姓名,性别,年龄,班级等等,我们发现所有的学生都有各自对应的信息,把每个人的信息放在一起,不就可以描述一个学生了吗?

    为了方便管理所有学生信息,于是将它们按表格形式,一人对应一行,罗列出来。

    所以管理数据要先描述,再组织

    而C语言中的结构体,C++中的类,就是为了描述一个对象的所有属性,数据结构中的顺序表,链表等,就是为了将这些离散的数据组织在一起。

    所以操作系统对软硬件进行管理,实质上就是通过结构体将所有软件或硬件的相关属性描述出来,然后通过链表,队列等数据结构将所有数据组织起来

    总结起来就两句话:管理的本质管理数据,要想管理数据就要先描述,再组织

    三.操作系统对硬件进行管理

    操作系统和底层硬件之间还有一层驱动,什么是驱动呢?驱动通俗来说就是替操作系统跑腿的。

    操作系统想要收集硬件的信息,于是它就安排对应的驱动程序去和硬件打交道,把信息收集回来。

    操作系统想要对硬件进行操作,也是安排驱动去跑腿办事。

    所以说,当你将一个u盘插进USB接口,能说u盘就是计算机的一部分吗?不能,只有u盘驱动程序访问到了u盘的信息,u盘这个硬件被操作系统纳入了管理,才能说u盘成为计算机的一部分。

    四.系统调用接口

    作为用户,我们对硬件进行操作,实际上是去访问操作系统,因为操作系统管理着所有硬件,有对应硬件的相关信息。那我们怎么访问操作系统呢?我们是要系统调用接口去访问的。系统调用接口相当于操作系统开的一个个小窗口,这样做的目的是防止用户“为所欲为”。

    操作系统实际上是不信任用户的,如果让用户随意地直接访问操作系统里的数据,可能遭到破坏,所以才开了一个个的系统调用接口来限制用户的可操作空间,以达到保护操作系统的目的。系统调用接口也就是一个个函数,要想访问我操作系统,必须通过系统调用,按照规定传相应的参数,如果不按规矩来就将你拒之门外。

    五.用户操作接口

    让用户直接去使用系统调用接口难度还是不小,为此又设计了一层外壳程序,Windows系统的外壳程序就是我们熟悉的GUI图形化界面,例如双击鼠标左键,就可以打开一个程序。LInux系统中的外壳程序是Shell(命令行解释器),例如我输入一个ls指令,Shell就能对它进行解释,调用相应的系统调用接口。

    故狭义上的操作系统指的是操作系统和系统调用接口,我们称之为操作系统内核

     而广义上的操作系统就是操作系统内核加上Shell外壳

    还有我们经常会使用C语言的printf函数,向显示器上打印字符,显示器也是硬件呀,我们向硬件写入内容,肯定是要访问操作系统的,要使用系统调用接口的。但printf函数是C语言标准库里的函数呀,哪来的什么系统调用呀。实际上,printf函数内部封装了对应的系统调用。

    将系统调用接口,封装成各种各样好用的函数,打包形成库(lib),这样一来开发人员直接调用库函数就好了,从而提高开发效率。

  • 相关阅读:
    二分查找,求方程多解
    node.js+elementUI+echarts前后端分离全栈项目
    springboot网络招聘服务系统毕业设计源码121727
    OSI模型与数据的封装
    【Java基础知识】
    水电站生态流量下泄监测解决方案
    CSS3新增选择器:兄弟选择器:+和~​​​​​​ |属性选择器:^$ *| 伪类选择器
    常微分方程算法之编程示例四(龙格-库塔法)
    HTTP(二)HTTP消息结构
    180.Hive(二):数据类型,数据库的crud,数据库表的crud,数据的导入导出,分区表,分桶表
  • 原文地址:https://blog.csdn.net/weixin_74113106/article/details/133213189