【Linux】深入了解冯诺依曼体系结构与操作系统

简介: 【Linux】深入了解冯诺依曼体系结构与操作系统

89008661539f0c22afecc90c843893fe_2efd65a0e6924863849b93f2e6b76992.gif

目录

导读

🌞专栏导读

🌞冯·诺依曼

🌞冯诺依曼体系结构

🌛木桶效应

🌞操作系统(Operator System)

🌛概念

🌛设计OS的目的

🌛系统调用和库函数概念


导读

祝愿我家宝🧡,愿你童心未泯,无忧无虑;童真相伴,快乐每天;童言无忌,不要束缚;童话生活,时刻甜蜜;童年依在,幸福永远。祝儿童节快乐!

45ce4c5d1ddd48ff135e9ac31cdc0f18_efde8d6e1d104761a505549a37169ece.jpeg

66e6c940c55b1f01c58101846339c184_750f19e8a2884b44b4d97af4984ee2f3.jpeg

eafd968fb800f1f49f0f254315852684_11ae0bc7b268446c87ab8723e71404d0.jpeg

🌞专栏导读

🌟作者简介:日出等日落,在读本科生一枚,致力于 C/C++、Linux 学习。

🌟本文收录于 Linux系列,本专栏主要内容为 C++ 初阶、C++ 进阶、STL 详解等,持续更新!

🌟相关专栏推荐:C语言系列 、Linux系列 、数据结构与算法

🌞冯·诺依曼

计算机的世界有两尊大神,一位是冯·诺依曼,另一位是阿兰·图灵

🔥冯·诺依曼


约翰·冯·诺依曼(John von Neumann)是一位著名的数学家、计算机科学家、物理学家,是20世纪最重要的数学家之一。他还是是现代计算机、博弈论、核武器和生化武器等领域内的科学全才之一,被后人称为“现代计算机之父”、“博弈论之父”。冯诺依曼体系结构便是它的经典理论,从我们经常所能见到的计算机到当前最先进的计算机都采用的是冯诺依曼体系结构。所以冯诺依曼是当之无愧的数字计算机之父。

🔥阿兰·图灵


艾伦·麦席森·图灵(Alan Mathison Turing),英国数学家、逻辑学家,被称为计算机科学之父,人工智能之父。图灵对于人工智能的发展有诸多贡献,提出了一种用于判定机器是否具有智能的试验方法,即著名的图灵试验,每年都有试验的比赛。此外,图灵提出的著名的图灵机模型为现代计算机的逻辑工作方式奠定了基础。

🌞冯诺依曼体系结构

我们常见的计算机,如笔记本。我们不常见的计算机,如服务器,大部分都遵守冯诺依曼体系。、

5a811c98385b69fe12436393fa6816b6_894d1394ff9942fe819048aea2e57c2b.png

  • 截至目前,我们所认识的计算机,都是有一个个的硬件组件组成
  • 输入设备:键盘、话筒、摄像头、网卡、磁盘
  • 输出设备:显示器、磁盘、网卡、声卡音响
  • 外设一般都会比较慢一些,以磁盘为例
  • 内存还不是最快的,CPU最快


注:

  1. 磁盘并不等同于内存
  2. 输入设备于输出设备都叫作外设
  3. 在数据层面,CPU不直接与外设沟通,而至于内存打交道
  4. 外设也只会与内存进行沟通


❓那我们为什么还需要内存呢?


因为外设较慢,CPU很快,但是整体的效率以外设的速度为准,这样就不太合适,为了解决这个问题,就出现内存。


💡内存的存在就可以大大缓解外设的效率低的问题,内存的存在可以对数据进行预加载,CPU以后在进行数据计算的时候,根本不需要访问外设,只要访问内存就可以了

🌛木桶效应

对于像【磁盘】这种外设来说虽然它有着大容量的内存,但是读写速度却非常慢,机械硬盘读写速度平均60---80M每秒;固态硬盘不同品牌型号之间,平均大约在150---300M每秒


但是对CPU来说,也就我们上面说到过的运算器 + 控制器,它的运算速度比磁盘不知道要快出多少倍了。一个写入很慢,一个读入很快,真的可以兼容吗?


大家应该都听过木桶效益

6bdf7f13b91e12747425a2ea42c18bc6_541041775fab4223a6fdc00d0e99ada8.png

什么是木桶效应呢?一桶水最多能装多少水,并不是看竹板中最长的那个,而是取决于最短的那块板。


同理,计算机一直追求的是极致的计算速度。我们知道CPU的计算速度是非常快的,但是计算机的速度并不能由CPU决定。


CPU的计算速度飞快,但是如果数据的供应跟不上,那么CPU只能说是徒有一身本领却无处施展。我们要知道,外设(以磁盘为例)的访问速度是非常慢的,因而,尽管磁盘的容量非常大,例如几G或几百G的硬盘也就几十块钱。如果CPU直接从磁盘读取数据,那么它们整体的速度就会很慢。


CPU —— 纳秒(ns) 内存 —— 微秒(us) 外设 —— 毫秒(ms)


我们可以知道CPU和外设差距是非常大的,因此我们需要内存这个东西来进行过渡


我们可能听说过一个概念——一个程序在运行前都会先加载到内存中,为什么呢?内存相对于磁盘来说读取速度非常的快,所以有了内存的存在,我们可以将要读与的程序预加载到内存中,因为内存的读取速度非常快,所以CPU直接从内存中拿数据就好了。


因为内存的读取速度很快,所以价格较为昂贵。尽管它能存储的数据很少,但却非常的重要。

  • 在数据层面,CPU不直接与外设沟通,而至于内存打交道。

🌞操作系统(Operator System)

🌛概念

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

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

他是一款进行软硬件资源管理的软件

🌛设计OS的目的

与硬件交互,管理所有的软硬件资源

为用户程序(应用程序)提供一个良好的执行环境

⭐如何理解 "管理"


就像校长管理学生,先对每个学生对象都先作描述,在意某种数据结构将学生对象的信息保存起来。


例如:


当校长想要开除某个学生时,他并不会直接找到学生本人说“你现在被开除啦,赶紧回家去吧!”,而是删除了该学生信息所对应的结点,然后将通知该学生的任务下达给辅导员。


辅导员也不会问为什么,你给我任务,我就执行。于是辅导员便找到学生并通知他,你被开除了。


操作系统扮演的角色就如同校长,它只负责作决策。而决策由谁来执行呢?


答案是硬件驱动,如同辅导员,所以硬件驱动的角色是一位决策执行者。而软硬件资源就如同学生,是被管理者。

49b4dbeab6f5b65765720e094e7a1b0c_14b4f9becf4444dab165c4bf44c447c9.png

管理者和被管理者,是不需要直接沟通的!

0a51567875ee5b3c487357817c2366d3_4844605a1b54437e98cededdf642a298.png

❓管理者和被管理者都没有直接沟通,他如何管理我呢?

💡管理的本质:对被管理对象的数据做管理!!!

那么管理者是如何拿到被管理者的数据呢?

管理的本质:先描述,再组织

我们可以把学生理解为硬件(软件也可以),校长就是操作系统,辅导员就为硬件驱动

a530cd4e78d3460084c2d61876df1767_839136b53b1649a7aae479349c2f62db.png

⭐总结

计算机管理硬件

  • 先描述
  • 再组织


7239185910abdbeb7022dda34445bec2_b5289bf9dc2e458bbaf10f0b83a8e13e.png

🌛系统调用和库函数概念

⭐系统调用

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

那么我们之前有没有使用过系统调用呢?答案是肯定是有的。当我们写下printf("hello world")这样的代码,运行起来之后就会在屏幕上显示hello world的字符。其实你以为你写下这句代码,计算机就会在屏幕上打印内容是你的功劳,但其实,这是编译器在底层做了系统调用,你确实没有直接使用系统调用,因为这是编译器帮你完成的。

⭐库函数


系统调用在使用上,功能比较基础,对用户的要求相对也比较高,所以,有心的开发者可以对部分系统调用进行适度封装,从而形成库,有了库,就很有利于更上层用户或者开发者进行二次开发。


我们对库已经不是第一次认识了,C语言、C++等语言都有自己的库。库就是对具有某些相似功能的函数作封装方便用户直接调用,从而提高开发的效率。

————————————————

版权声明:本文为CSDN博主「日出等日落」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/fcawyxb/article/details/130936179


相关实践学习
CentOS 8迁移Anolis OS 8
Anolis OS 8在做出差异性开发同时,在生态上和依赖管理上保持跟CentOS 8.x兼容,本文为您介绍如何通过AOMS迁移工具实现CentOS 8.x到Anolis OS 8的迁移。
相关文章
|
18天前
|
运维 自然语言处理 Ubuntu
OS Copilot-操作系统智能助手-Linux新手小白的福音
OS Copilot 是阿里云推出的一款操作系统智能助手,专为Linux新手设计,支持自然语言问答、辅助命令执行和系统运维调优等功能。通过简单的命令行操作,用户可以快速获取所需信息并执行任务,极大提升了Linux系统的使用效率。安装步骤简单,只需在阿里云服务器上运行几条命令即可完成部署。使用过程中,OS Copilot不仅能帮助查找命令,还能处理文件和复杂场景,显著节省了查找资料的时间。体验中发现,部分输出格式和偶尔出现的英文提示有待优化,但整体非常实用,特别适合Linux初学者。
78 10
|
5天前
|
存储 Linux API
【Linux进程概念】—— 操作系统中的“生命体”,计算机里的“多线程”
在计算机系统的底层架构中,操作系统肩负着资源管理与任务调度的重任。当我们启动各类应用程序时,其背后复杂的运作机制便悄然展开。程序,作为静态的指令集合,如何在系统中实现动态执行?本文带你一探究竟!
【Linux进程概念】—— 操作系统中的“生命体”,计算机里的“多线程”
|
18天前
|
Linux
Linux 操作系统
在 Linux 中,UID(用户 ID)是标识用户身份的重要概念。UID 唯一标识每个用户,通过 UID 可区分不同用户类别:UID 0 为超级用户,1-999 为系统用户,1000 及以上为普通用户。因此,正确选项为:UID 标识用户、可区分用户类别、普通用户 UID 大于 1000。
|
12天前
|
NoSQL Unix Linux
Linux 操作系统的诞生与发展历程
步探索与准备: 1991年初,林纳斯·托瓦兹开始在一台386sx兼容微机上学习minix操作系统。通过学习,他逐渐不能满足于minix系统的现有性能,并开始酝酿开发一个新的免费操作系统。
38 8
Linux 操作系统的诞生与发展历程
|
2月前
|
弹性计算 运维 Ubuntu
os-copilot在Alibaba Cloud Linux镜像下的安装与功能测试
我顺利使用了OS Copilot的 -t -f 功能,我的疑惑是在换行的时候就直接进行提问了,每次只能写一个问题,没法连续换行更有逻辑的输入问题。 我认为 -t 管道 功能有用 ,能解决环境问题的连续性操作。 我认为 -f 管道 功能有用 ,可以单独创建可连续性提问的task问题。 我认为 | 对文件直接理解在新的服务器理解有很大的帮助。 此外,我还有建议 可以在非 co 的环境下也能进行连续性的提问。
80 7
|
2月前
|
存储 运维 安全
深入解析操作系统控制台:阿里云Alibaba Cloud Linux(Alinux)的运维利器
本文将详细介绍阿里云的Alibaba Cloud Linux操作系统控制台的功能和优势。
91 6
|
2月前
|
安全 大数据 Linux
云上体验最佳的服务器操作系统 - Alibaba Cloud Linux | 飞天技术沙龙-CentOS 迁移替换专场
本次方案的主题是云上体验最佳的服务器操作系统 - Alibaba Cloud Linux ,从 Alibaba Cloud Linux 的产生背景、产品优势以及云上用户使用它享受的技术红利等方面详细进行了介绍。同时,通过国内某社交平台、某快递企业、某手机客户大数据业务 3 大案例,成功助力客户实现弹性扩容能力提升、性能提升、降本增效。 1. 背景介绍 2. 产品介绍 3. 案例分享
|
4月前
|
安全 Linux 数据安全/隐私保护
Vanilla OS:下一代安全 Linux 发行版
【10月更文挑战第30天】
133 0
Vanilla OS:下一代安全 Linux 发行版
|
2月前
|
弹性计算 自然语言处理 Ubuntu
OS Copilot-操作系统智能助手-Linux新手小白的福音
OS Copilot是由阿里云推出的操作系统智能助手,专为Linux新手设计,支持自然语言问答、辅助命令执行等功能,极大提升了Linux系统的使用效率。用户只需通过简单的命令或自然语言描述问题,OS Copilot即可快速提供解决方案并执行相应操作。例如,查询磁盘使用量等常见任务变得轻松快捷。此外,它还支持从文件读取复杂任务定义,进一步简化了操作流程。虽然在某些模式下可能存在小问题,但总体上大大节省了学习和操作时间,提高了工作效率。
139 2
OS Copilot-操作系统智能助手-Linux新手小白的福音
|
4月前
|
NoSQL Linux PHP
如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤
本文介绍了如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤。接着,对比了两种常用的 PHP Redis 客户端扩展:PhpRedis 和 Predis,详细说明了它们的安装方法及优缺点。最后,提供了使用 PhpRedis 和 Predis 在 PHP 中连接 Redis 服务器及进行字符串、列表、集合和哈希等数据类型的基本操作示例。
173 4