操作系统概念介绍

目录

前言

一、冯诺依曼体系结构

1、冯诺依曼体系组成

2、信号传递过程

二、操作系统

1、操作系统简介

2、管理的理解

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

总结


前言

哈喽,小伙伴们大家好。从今天起,我将和大家一起学习操作系统。操作系统是计算机知识体系中非常重要的一门课。在学习操作系统之前,我们对一个程序的理解仅仅停留在代码阶段,而学习操作系统后,我们可以从系统层面有更加深刻的认识。今天我就先来简单介绍以下操作系统的相关概念。


一、冯诺依曼体系结构

1、冯诺依曼体系组成

冯诺依曼体系结构是从硬件层面产生的结构,我们常见的计算机或者服务器都遵守冯诺依曼体系结构。冯诺依曼体系由输入设备,输出设备,存储器(内存),中央处理器(CPU)四部分组成。

操作系统概念介绍_第1张图片

输入设备:包括键盘,网卡,话筒,摄像头,硬盘。

输出设备:包括显示器,音响,网卡,硬盘。

内存:用来数据中转。

中央处理器:包含运算器和控制器两部分。运算器用来计算,主要包括算数运算和逻辑运算两部分。控制器控制着整个cpu的工作,用来协调计算机的各个部件。

2、信号传递过程

信号分为两种,分别是控制信号和数据信号。控制信号直接由输入设备传到CPU中,而数据信号需要先预存到内存中再进入CPU。这是为什么呢?

因为数据的量一般是很大的,而输入设备的传输速度是要远远小于CPU的,根据木桶原理,最终的传输速度取决于输入设备的速度,这不严重浪费了CPU的效率。为了解决这一问题,冯诺依曼体系中加入了一个中转器——内存。内存的传输效率处于输入设备和CPU之间,并且内存是有数据存储能力的,会进行预存储,当CPU需要数据时,内存不仅会从输入设备中把现在需要的数据拿过来,还会把附近的一大段数据都搬到内存里,以后CPU再想要数据直接从内存中拿就好了。

现在我们来根据冯诺依曼体系简单描述一下你从qq上给你朋友发了一条消息这一传输过程:首先你从键盘上输入了一条消息,存到了内存里,然后内存把数据传给CPU经过一系列操作后CPU再把处理好的数据传回到内存中,内存再把数据传到网卡中,然后数据通过网络传输(网络传输以后再说)到你朋友的电脑网卡中,数据再从你朋友电脑的网卡传到内存,再传到CPU,处理后再回到内存,最后传输到你朋友的输出设备也就是显示屏上。

二、操作系统

1、操作系统简介

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

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

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

2、管理的理解

上面提到,操作系统是一款搞管理的软件,那么如何理解管理这个词呢?我们不妨来举个例子。

以我们的学校为例,毫无疑问校长是这个学校的管理者,学生是被管理者。那么校长想要管理学生是直接与学生进行接触吗?大多数情况下并不是,大家可以回想一下自己的大学生活,基本除了开学典礼和运动会就很少见到校长了吧,一般校长的指令都通过辅导员来执行。那么校长发号指令的依据是什么呢?这就要设计到另一个概念——信息(数据)。辅导员不但是命令的执行者,同时还是信息的收集者,她把学生的各种数据反馈给校长,校长再根据得到的数据发出相应的指令。

那么校长又是怎样管理数据的呢?用一句话就能概括:先描述,再组织。校长先根据辅导员反馈过来的信息把每个学生都描述出来,比如把学生A的身高,体重,年龄,学习成绩等数据集合到一起,就是学生A的描述。同理,这样也可以描述学生B,C,D。然后校长再把每个学生的描述都录入到一个文档里组织到一起,以后想要根据数据做判断的时候查阅这个文档就ok了。所以管理者对被管理者的管理,本质上是对数据的管理。

对计算机来说,操作系统就好比学校的校长,管理数据的方法同样是先描述再组织。

  • 描述起来,使用struct结构体
  • 组织起来,用链表或其它搞笑的数据结构

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

操作系统概念介绍_第2张图片

计算机的组成可以理解成层状结构:

  • 最下方是硬件层 ,操作系统想直接控制硬件设备是比较困难的,因为每个硬件设备的结构都不一样,如果发生变化之后还要对操作系统的源码进行修改,成本非常高。所以在硬件层上面添加了驱动层,一般由驱动程序来控制硬件,驱动程序大部分都是是硬件厂商出场设备时写好的。
  • 驱动程序上面是操作系统,操作系统只需要控制驱动程序即可。
  • 操作系统对外表现为一个整体,只暴露部分接口,供上层开发使用,这部分暴露的接口叫做系统调用。
  • 系统调用在使用上要求比较高,所以有心的开发者们又把系统调用进行了适度封装,形成了库,供上层开发者或者用户使用。

总结

本章主要简单介绍了操作系统的一些相关概念。操作系统是一门非常抽象的学科,比较难理解,想要学好这门课需要一点一点的积累。希望小伙伴们能够耐下心来好好钻研,我也会努力学习,争取把更好的作品带给大家。感谢阅读,来日方长,我们下次再见。

你可能感兴趣的:(Linux系统与网络编程,服务器,linux,操作系统)