【Linux】-- 初识操作系统(一)

简介: 【Linux】-- 初识操作系统

一、冯诺依曼体系结构

       在了解操作系统之前,要先了解现代计算机系统。 现代计算机系统就不得不提到冯诺依曼体系结构。

        冯诺依曼体系结构是一种将程序指令存储器和数据存储器合并在一起的存储器结构。程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置。

冯诺依曼体系结构有3个基本原则:

(1)二进制逻辑

(2)程序存储执行

(3)计算机由5个部分组成:运算器、控制器、存储器、输入设备、输出设备

以下是现代计算机系统的存储架构 :

  • 输入设备:输入设备是给计算机获取外部信息的设备,主要包括键盘和鼠标、网卡
  • 输出设备:输出设备是给用户呈现根据输入设备获取的信息经过一系列的计算后得到显示的设备,主要包括显示器、打印机等
  • 存储器:存储器就是计算机的记忆设备,因此存储器可以保存信息。存储器分为两种,一种是主存,也就是内存,它是 CPU 主要交互对象,还有一种是外存,比如硬盘软盘等。
  • 运算器:运算器最主要的功能是对数据和信息进行加工和运算。它是计算机中执行算数和各种逻辑运算的部件。运算器的基本运算包括加、减、乘、除、移位等操作,这些是由 算术逻辑单元(Arithmetic&logical Unit) 实现的。而运算器主要由算数逻辑单元和寄存器构成。
  • 控制器:指按照指定顺序改变主电路或控制电路的部件,它主要起到了控制命令执行的作用,完成协调和指挥整个计算机系统的操作。控制器是由程序计数器、指令寄存器、解码译码器等构成。

其中,中央处理器CPU包括运算器和控制器。 这里存储器可以理解为内存,外设要输入或者输出数据,只能写入到内存或从内存中读取,输入和输出是站在存储器角度看的。

冯诺依曼体系结构工作原理:

       当输入设备接收到数据,数据将被存储到存储器,控制器发出取数据和运算的指令,数据被取出方去放入运算器中加以运算,运算结束后,控制器发出存入数据的指令并输出,数据被存储到存储器,再通过输出设备进行输出。(整个过程控制器的指令占领导地位) 。

这个过程类似于人类接收处理输出信息的过程:

       当眼睛看到某些信息,这些信息被存储到记忆装置,大脑从记忆装置取出信息,并加以思考运算,再放回记忆装置,大脑控制记忆装置将信息传输给嘴巴,将信息表达出来。(这个过程大脑的指令占领导地位)。

       对于使用qq聊天时的数据流动,站在纯硬件角度:

       qq软件在内存中,通过键盘输入消息到qq,就是输入消息到存储器,cpu要对消息进行加密计算,这就需要添加拷贝网络相关内容,CPU从存储器(内存)当中读取数据,再做计算,处理完后再写回到存储器,再经过网卡发送到网络,网络经过转发就到对方网卡了。

       到达对方网卡之后,数据进入输入设备,把数据从输入设备读入到内存,这样qq程序就把网卡内容读到了qq里面,进行解密,然后把包头信息去掉,再写入到内存,最后刷新到对方的显示器上。

外设和CPU在数据层面上,都直接和内存打交道。

二、操作系统

1.概念

操作系统是专门针对软硬件资源进行管理工作的软件。操作系统没启动之前在磁盘或外设,只有把操作系统加载到内存,操作系统才有意义。

2.为什么要有操作系统

操作系统存在的意义在于,对下管理好软硬件资源。 对上给用户提供稳定的、高效的、安全的运行环境。

三.操作系统

1.硬件层

冯诺依曼体系结构的组成部分都是计算机硬件,这些硬件都遵守冯诺依曼体系结构:

2.驱动层

程序员不可能直接跟这些硬件打交道,所以计算机的科学家们在这些硬件基础之上,安装了一层软件,能够根据用户输入的指令控制硬件,决定内存何时从输入设备读取多少数据,何时按照哪种刷新方式将缓冲区刷新到输出设备等,这层软件就是操作系统。操作系统为用户程序提供一个更好、更简单、更清晰的计算机模型。也就是说,操作系统相当于是一个中间层,为用户层和硬件提供各自的借口,屏蔽了不同应用和硬件之间的差异,达到统一标准的作用。

操作系统并不会直接和底层硬件打交道。所以在操作系统和底层硬件之间增加了一层驱动层,驱动层能够使操作系统控制底层硬件设备。它为操作系统提供外部设备的操作接口,并且实现设备的驱动程序。 操作系统可以不管操作的设备内部实现,只需要调用驱动的接口即可。

驱动程序是介于操作系统与硬件之间的媒介,实现双向的传达,即将硬件设备本身具有的功能传达给操作系统,同时也将操作系统的标准指令传达给硬件设备,从而实现两者的无缝连接。操作系统就只需关心何时读取数据,而不用关心数据是如何读取的了,也就是完成了操作系统与硬件之间的解耦。

那么驱动是如何成为这个媒介的呢?是通过安装硬件驱动来作为媒介,键盘、鼠标、硬盘、显示器、主板、显卡、声卡、网卡、打印机等硬件设备都有各自的驱动程序,驱动程序是硬件厂商根据操作系统编写的配置文件。

操作系统相当于计算机体系结构的大脑,驱动程序相当于四肢,来操控各种硬件。

3.操作系统层

操作系统既然用来管理软硬件资源,但是软硬件资源又那么多,怎么进行管理呢?根据资源可将管理分为以下4种:

  • 内存管理:内存空间的分配与回收、地址转换、内存空间的扩充、内存共享、存储保护
  • 驱动管理:设备驱动程序的分类、更新、删除等
  • 文件管理:文件存储空间的管理、目录管理、文件操作管理以及文件保护
  • 进程管理:进程的调度


相关实践学习
CentOS 7迁移Anolis OS 7
龙蜥操作系统Anolis OS的体验。Anolis OS 7生态上和依赖管理上保持跟CentOS 7.x兼容,一键式迁移脚本centos2anolis.py。本文为您介绍如何通过AOMS迁移工具实现CentOS 7.x到Anolis OS 7的迁移。
相关文章
|
7天前
|
编解码 安全 Linux
基于arm64架构国产操作系统|Linux下的RTMP|RTSP低延时直播播放器开发探究
这段内容讲述了国产操作系统背景下,大牛直播SDK针对国产操作系统与Linux平台发布的RTMP/RTSP直播播放SDK。此SDK支持arm64架构,基于X协议输出视频,采用PulseAudio和Alsa Lib处理音频,具备实时静音、快照、缓冲时间设定等功能,并支持H.265编码格式。此外,提供了示例代码展示如何实现多实例播放器的创建与管理,包括窗口布局调整、事件监听、视频分辨率变化和实时快照回调等关键功能。这一技术实现有助于提高直播服务的稳定性和响应速度,适应国产操作系统在各行业中的应用需求。
|
16天前
|
监控 Shell Linux
探索Linux操作系统下的Shell编程之魅力
【8月更文挑战第4天】本文旨在通过一系列精心设计的示例和分析,揭示在Linux环境下进行Shell编程的独特之处及其强大功能。我们将从基础语法入手,逐步深入到脚本的编写与执行,最终通过实际代码案例展现Shell编程在日常系统管理和自动化任务中的应用价值。文章不仅适合初学者构建扎实的基础,同时也为有一定经验的开发者提供进阶技巧。
28 11
|
1月前
|
Linux 测试技术 数据安全/隐私保护
阿里云Linux os copilot 运维助手初体验
阿里云Linux os copilot 初体验
356 1
阿里云Linux os copilot 运维助手初体验
|
6天前
|
安全 Linux Windows
【Linux】Linux操作系统
【Linux】Linux操作系统
|
1月前
|
弹性计算 运维 自然语言处理
阿里云OS Copilot测评:重塑Linux运维与开发体验的智能革命
阿里云OS Copilot巧妙地将大语言模型的自然语言处理能力与操作系统团队的深厚经验相结合,支持自然语言问答、辅助命令执行等功能,为Linux用户带来了前所未有的智能运维与开发体验。
|
16天前
|
监控 Linux Shell
探索Linux操作系统下的进程管理
【8月更文挑战第4天】本文深入探讨了在Linux操作系统下进行进程管理的方法与技巧,通过实例分析展示了如何利用系统命令和脚本来监控、控制进程。文中不仅介绍了基础的进程查看、启动、终止操作,还详细解释了如何通过信号机制处理进程间的通信,以及如何编写自动化脚本以优化日常管理任务。文章旨在为系统管理员和开发人员提供实用的进程管理知识,帮助他们更高效地维护Linux系统。
|
1月前
|
存储 缓存 安全
【Linux】冯诺依曼体系结构与操作系统及其进程
【Linux】冯诺依曼体系结构与操作系统及其进程
132 1
|
1月前
|
缓存 监控 关系型数据库
深入理解Linux操作系统的内存管理机制
【7月更文挑战第11天】在数字时代的浪潮中,Linux操作系统凭借其强大的功能和灵活性,成为了服务器、云计算以及嵌入式系统等领域的首选平台。内存管理作为操作系统的核心组成部分,对于系统的性能和稳定性有着至关重要的影响。本文将深入探讨Linux内存管理的基本原理、关键技术以及性能优化策略,旨在为读者提供一个全面而深入的理解视角,帮助开发者和系统管理员更好地优化和管理Linux系统。
|
1月前
|
弹性计算 运维 Linux
基于在Alibaba Cloud Linux 3 的OS Copilot 产品评测
作为一名技术运维的工作者,每天做的最多一件事就是在Linux下敲各种各样的命令,或完成功能性的部署,或检查系统的稳定性。如果 OS Copilot 作为我的日常工具,我使用场景会更集中于快捷命令或脚本的实现,智能帮我生成各类功能脚本,为我提高运维效率。
基于在Alibaba Cloud Linux 3 的OS Copilot 产品评测
|
1月前
|
人工智能 运维 自然语言处理
当Linux遇上AI:探索操作系统中的智能新纪元
阿里云的OS Copilot是专为Linux打造的智能助手,利用大模型提供自然语言交互、命令辅助及运维优化。它简化编程任务,生成脚本框架,提供代码审查建议,适合开发者和运维人员。
264 0
当Linux遇上AI:探索操作系统中的智能新纪元

热门文章

最新文章