冯诺依曼体系结构+操作系统

news2024/9/23 23:24:18

目录

冯诺依曼体系结构

基本概念

基本原理 

操作系统 

 基本概念

设计OS的目的 

管理的本质

管理的方法

系统调用和库函数 


 

冯诺依曼体系结构

基本概念

冯·诺依曼结构也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。 ... 数学家冯·诺依曼提出了计算机制造的三个基本原则,即采用二进制逻辑、程序存储执行以及计算机由五个部分组成(运算器、控制器、存储器、输入设备、输出设备),这套理论被称为冯·诺依曼体系结构。

我们所认识的计算机,大部分都遵循着冯诺依曼体系结构。 

  • 输入设备:输入数据,常见的有键盘,磁盘
  • 输出设备:输出数据,常见的有显示屏,打印机
  • 存储器:记忆程序和数据,例如内存
  • 运算器: 数据加工处理
  • 控制器:控制程序执行

其中运算器和控制器又称为中央处理器,简称cpu。

基本原理 

冯诺伊曼体系如何进行工作的呢?

由输入设备输入数据,然后加载到内存中,cpu对数据进行加工处理,处理完毕后加载到内存,再由内存传递给输出设备。 

我们可以发现,在数据层面,cpu只和内存直接关联,从内存中读取数据。

而输入设备和输出设备也是直接写入内存和从内存中读取数据。

总而言之:在数据层面,一切设备只和内存打交道。

下面以qq发送消息实例演示:

 

 

操作系统 

 基本概念

操作系统是一个基本的程序集合,简称OS。

主要包含:内核(进程管理,内存管理,文件管理,驱动管理)

                  其他程序(函数库,shell程序等)

 

设计OS的目的 

对下:管理软硬件资源

对上:为用户提供良好,稳定的运行环境。

概括来说就是OS通过管理好软硬件资源来为用户提供良好的运行环境。

那么,操作系统是如何对软硬件资源进行管理的呢?

管理的本质

 我们以学校管理举例:

学校管理者为校长,校长要了解某些同学的成绩,他会通过你的辅导员获得你的信息,然后通过这些信息去对你进行嘉奖或惩罚决策,传递给辅导员,由辅导员执行。

在这个管理过程中,校长并没有与被管理的学生直接打交道,而是通过辅导员获得学生信息,再由信息进行进行决策管理。

与校长直接关联的是学生的信息,也就是数据。

所以,以此我们可以得出结论:管理的本质是对”数据“做管理。

管理的方法

 现在校长手里有了一大堆数据,如果他要选出成绩前10名发放奖学金,他怎么做到呢?

 难道是从一大堆学生信息一个一个看吗?这样效率极低。

 我们知道,每个学生的属性是一样的,都有成绩,姓名,班级,学号等等。

 因此校长可以将每个数据描述成一个结构体,每个结构体内部存储着学生的成绩和相关信息,然后利用双链表形式将数据组织起来。

这样对于学生的操作,就变成了对链表的增删查改,极大提高了效率。

总结:操作系统如何对数据管理呢?

先描述,再组织。 

操作系统先将数据用结构体描述起来,结构体内存储着数据的属性信息,然后用相关数据结构将结构体组织起来,化对数据的管理操作为对相关数据结构的增删查改。

 

系统调用和库函数 

 操作系统为了保持良好运行环境,它是不信任任何用户的。

 但是,它又必须为用户提供服务,因此,它会暴露部分接口,也就是系统调用接口,用户可   以通过系统调用接口完成开发等工作,这就是系统调用。

 但是系统调用功能比较基础,对用户要求也很高,因此,大佬将部分系统调用进行封装,形

 库函数,有了库,用户就不必跟系统调用直接打交道了,使用库函数即可,极大提高了效   率,又降低了学习成本。

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/431130.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

GDOUCTD NSSCTF2023广东海洋大学比赛WP RE(上) Tea Check_Your_Luck

Check_Your_Luck 下载文件是cpp 是个解方程的题,用python的z3 from z3 import * v,w,x,y,zBitVecs(v w x y z,16)lSolver() l.add(v * 23 w * -32 x * 98 y * 55 z * 90 333322) l.add(v * 123 w * -322 x * 68 y * 67 z * 32 707724) l.add(v * 266 …

openEuler RISC-V 23.03 创新版本亮相:全面提升硬件兼容性和桌面体验

近日,openEuler RISC-V 23.03 创新版本正式发布。openEuler RISC-V SIG 作为 openEuler 系统在 RISC-V 架构上的维护组织,主要致力于 openEuler 在 RISC-V 软硬件方面的适配,一直跟随 openEuler 版本节奏提供 openEuler 的 RISC-V 镜像版本。…

Redis源码之SDS简单动态字符串

Redis 是内存数据库,高效使用内存对 Redis 的实现来说非常重要。 看一下,Redis 中针对字符串结构针对内存使用效率做的设计优化。 一、SDS的结构 c语言没有string类型,本质是char[]数组;而且c语言数组创建时必须初始化大小&#…

图片转PDF怎么转换?快学习这三种免费转换方法!

图像转PDF功能是指将图像文件转换为PDF文件的过程。PDF(PortableDocumentFormat)它是一种文件类型,可以存储许多元素,如文本、图像和报告。PDF文档具有跨平台、可打印、可搜索等优点,因此广泛应用于文档共享、文档存储…

Qt扫盲-QAbstractSeries理论总结

QAbstractSeries理论总结 一、概述二、常用函数1. 属性2. 设置功能3. 显示隐藏4. 与 绘图的交互 三、信号 一、概述 QAbstractSeries类是所有Qt图表线的基类。通常,特定于序列类型的继承类会被使用,而不是这个基类。这个基类只是提供了一些管理和控制这…

多功能科学计算器:Magic Number 2 Mac中文

Magic Number Mac - 让数学更简单。当你能正确地看待数学,能够输入你的想法,并凭直觉做每件事时,数学就会变得轻而易举。从日常数学到高级科学,Magic Number 让您事半功倍——无论您的水平如何。欢迎需要的朋友下载使用&#xff0…

IDEA中使用Git提交代码

在IDEA中使用git提交代码到远程仓库,整体可分为如下几个步骤: 前提:注册有GitHub或者gitee账号;本地安装有git。 1.创建远程仓库(github或者gitee); 2.创建本地仓库并提交代码到本地仓库&#x…

2023年如何成为一名优秀的大前端Leader?

目录 一、0-1开发vs低代码 二、优点与缺点 先以JNPF为例,展开说说优点: 1、开发周期短(这点我愿称之为神): 2、开发成本低 3、助力企业适用市场 再来说说缺点: 1、平台越成熟,费用越高 …

【动态规划】经典问题第三组---背包问题基础

前言 小亭子正在努力的学习编程,接下来将开启算法的学习~~ 分享的文章都是学习的笔记和感悟,如有不妥之处希望大佬们批评指正~~ 同时如果本文对你有帮助的话,烦请收藏点赞关注支持一波, 感激不尽~~ 刷题专栏在这里~~ 简单介绍一下什么是背包问…

再学C语言50:C库中的字符串函数(2)

一、strcmp()函数 功能&#xff1a;对字符串内容进行比较&#xff0c;如果两个字符串参数相同&#xff0c;函数返回0 示例代码&#xff1a; /* test of strcmp() function */ #include <stdio.h> #include <string.h>#define NAME "Forster"int main(…

rem实现移动端自适应

rem实现自适应的原理&#xff1a;就是屏幕的宽度/任意数&#xff08;推荐设计稿除下来是整数&#xff0c;方便计算&#xff09;&#xff0c;接着设置根html的font-size为这个数&#xff0c;比如设计师给我们的设计稿宽度为750px&#xff0c;我们可以用750/7.5得到100再赋值给ht…

rnn、lstm、cnn、transformer

rnn不能并行的原因&#xff1a;不同时间步的隐藏层之间有关联。 rnn中batch的含义 如何理解RNN中的Batch_size&#xff1f;_batch rnn_Forizon的博客-CSDN博客 rnn解决的问题 不定长输入带有顺序的序列输入1 rnn前向传播 2 rnn中的反向传播 还有loss对其他参数的求导&#…

Flutter渲染原理

一 Widget Element RenderObject 之间的关系 1 Widget 在Flutter 中&#xff0c;万物皆是Widget,无论是可见的还是功能型的。一切都是Widget. 官方文档中说的Widget 使用配置和状态来描述View 界面应该长什么样子。 它不仅可以表示UI元素&#xff0c;也可以表示一些功能性的…

前端学习:HTML JavaScript

目录 一、JavaScript 使HTML页面更具有动态性和交互性 浏览器中的 JavaScript 能做什么&#xff1f; 二、 HTML三、HTML标签 ​编辑四、JavaScript 的功能示例 1. JavaScript 能够更改内容&#xff1a; 2. JavaScript能够更改样式&#xff1a;3.JavaScript能够更改属性 五、…

拼多多运营中需要采集淘宝天猫京东平台商品详情页面数据上架拼多多店铺,如何使用技术封装接口实现

业务背景&#xff1a;电商平台趋势&#xff0c;平台化。大家可以看到大的电商都开始有自己的平台&#xff0c;其实这个道理很清楚&#xff0c;就是因为这是充分利用自己的流量、自己的商品和服务大效益化的一个过程&#xff0c;因为有平台&#xff0c;可以利用全社会的资源弥补…

FT2000+ openEuler 20.03 virsh创建qemu kvm虚拟机 启动qemu kvm

安装qemu、libvirt yum install libvirt libvirt-client -y yum install qemu -y 安装固件包 yum install edk2-aarch64 固件文件 配置/etc/libvirt/libvirtd.conf auth_tcp "sasl" listen_tcp 1 listen_tls 0 tcp_port "16509" unix_sock_dir …

RK3588_X703 音频调试笔记

x703项目扩接板有接喇叭音频&#xff0c;硬件如下&#xff1a; 喇叭SPK播放无声的时候&#xff0c;首先要测R43贴片电压正常。 需要dts中正确配置SPK_CTL_H的GPIO脚&#xff1a; es8316_sound: es8316-sound {status "okay";compatible "rockchip,multicodec…

javaScript---js如何实现继承

目录 1、构造函数继承 2、原型链继承 3、组合继承 4、class继承 5、寄生组合继承 JavaScript 是以对象为基础&#xff0c;以函数为模型&#xff0c;以原型为继承的面向对象开发模式。 javascript继承的作用&#xff1a; 可以不调用“父类”的构造方法就创造新的实例&…

JavaScript 基础入门速成上篇

JavaScript 嵌入页面的方式 1. 行间事件 <button onclick"alert(点击按钮)">按钮</button> 2. script标签 <script type"text/javascript">console.log(Hello javascript !) </script> 3. 外部引入 <script type"t…

并发编程三要素:可见性、原子性、有序性

一、介绍 1、什么是可见性、原子性、有序性&#xff1f; 可见性&#xff08;visibility&#xff09;&#xff1a;指一个线程对共享变量的修改能够被其他线程立即看到的特性。在多线程环境下&#xff0c;如果一个线程修改了一个共享变量的值&#xff0c;那么其他线程可能无法立…